Skip to main content

East.py

License: BSL 1.1

Python runtime for the East programming language.

Overview

East.py is a Python backend that enables East IR to be compiled and executed in Python environments. It is a Cython bridge to the native east-c runtime — IR compilation, the builtin library, execution, and serialization all run in east-c. It provides:

  • Complete type system - Full representation of all East types (primitives, containers, structs, variants, functions)
  • East values as Python data - Use East values as ordinary Python objects with eager methods that delegate to the east-c builtins, plus runtime validation/coercion at the Python↔East boundary
  • Full builtin library - Array, Set, Dict, String, DateTime, Blob, Integer, Float operations, exposed eagerly
  • Serialization - East text format, JSON, and BEAST (Binary East) support
  • DateTime formatting - Custom datetime parsing and printing with format strings
  • Platform integration - Expose Python functions to East with the @platform_function decorator

Using East values from Python

East runtime values are usable as ordinary Python data. Containers carry their East element types and expose eager methods that run immediately by delegating to the east-c builtins (no IR, no rewrite); chained collection results stay backed by east-c.

from east import (EastArray, StringType, FloatType, StructType, VectorType,
                  East, array, coerce_to)

# Construct + validate from native Python (dicts are coerced to the struct type)
LineItem = StructType([("name", StringType), ("price", FloatType)])
items = array(LineItem, [{"name": "a", "price": 1}, {"name": "b", "price": 2.0}])

# Eager methods execute now and chain
cheap = items.filter(lambda r: r["price"] < 2.0).sorted(key=lambda r: r["price"])

# Primitive builtins live on the East.<Type> namespaces (you can't add methods
# to Python's float/str/int) — they delegate to east-c too
East.Float.sqrt(2.0)
East.String.upper_case("hi")
East.less(StringType, "a", "b")

# Validate / coerce at a boundary; a mismatch raises a path-pinpointed EastTypeError
coerce_to([1, 2, 3], VectorType(FloatType))   # -> Vector<Float>

Platform functions

Expose a Python function to East with the @platform_function decorator. It infers sync/async, validates the result against the declared output (a named EastTypeError instead of silent corruption), and auto-collects the function:

from east import platform_function, platform_functions, struct, FloatType, ArrayType

@platform_function(inputs=[FloatType, ArrayType(LineItem)], output=ArrayType(LineItem))
def convert_prices(fx_rate, items):
    return items.map(lambda r: struct({"name": r["name"], "price": r["price"] * fx_rate}, LineItem))

platform = platform_functions(__name__)   # pass to compile() to register

For NumPy/torch interop, EastVector.data / EastMatrix.data are the contiguous NumPy buffers — torch.from_numpy(m.data) and EastMatrix(FloatType, tensor.numpy()) need no manual dtype juggling (the bridge canonicalizes at the east-c boundary).

Current Status

Fully implemented: the East type system, the full builtin library (exposed both through IR compilation and the eager value methods), serialization (East text, JSON, BEAST2, CSV), DateTime formatting, runtime validation/coercion, and the platform-function integration API. The compliance suite (shared across the TypeScript, C, and Python runtimes) passes in full.

Installation

# Install from source
git clone https://github.com/elaraai/east-workspace/tree/main/libs/east-py
cd east-py
pip install -e .

Quick Start

Here's a complete example showing how to load, compile, and execute East IR with platform functions:

import asyncio
from east.runtime.compiler import compile_from_json
from east.runtime.platform import PlatformFunction
from east.types.types import IntegerType, NullType, StringType

# Load IR JSON exported by the East TypeScript compiler (raw bytes).
# In this example the IR is a function that logs a message, fetches an HTTP
# status (async), and logs the response.
with open("fetch_status.ir.json", "rb") as f:
    ir_json = f.read()

# Define platform function implementations
def log_impl(message: str) -> None:
    """Sync platform function: log a message."""
    print(message)

async def fetch_status_impl(url: str) -> str:
    """Async platform function: fetch HTTP status from URL."""
    import urllib.request
    loop = asyncio.get_event_loop()
    response = await loop.run_in_executor(None, urllib.request.urlopen, url)
    return f"{response.status} ({response.msg})"

def time_ns_impl() -> int:
    """Sync platform function: get current time in nanoseconds."""
    import time
    return time.time_ns()

# Register platform functions with type signatures
platform = [
    PlatformFunction(
        name="log",
        inputs=[StringType],
        output=NullType,
        type="sync",
        fn=log_impl
    ),
    PlatformFunction(
        name="fetch_status",
        inputs=[StringType],
        output=StringType,
        type="async",
        fn=fetch_status_impl
    ),
    PlatformFunction(
        name="time_ns",
        inputs=[],
        output=IntegerType,
        type="sync",
        fn=time_ns_impl
    ),
]

# Compile the IR to a Python callable (is_async=True: a platform fn is async)
fetch_status = compile_from_json(ir_json, platform, is_async=True)

# Execute the compiled function
async def main():
    await fetch_status("https://www.google.com")
    # Output:
    # Fetching URL: https://www.google.com
    # Response status: 200 (OK) - fetched in 123.45 ms

if __name__ == "__main__":
    asyncio.run(main())

Development

# First-time setup (installs dependencies and pre-commit hooks)
make install

# Development workflow
make test          # Run test suite
make lint          # Run linter (ruff)
make format        # Format code
make typecheck     # Type check with mypy
make check         # Run all checks (lint + typecheck + test)

# Other useful commands
make repl          # Start Python REPL with east loaded
make coverage      # Generate HTML coverage report
make lint-fix      # Auto-fix linting issues
make clean         # Clean build artifacts

# Run the compliance suite directly (executes the IR corpus through the bridge)
uv run pytest tests/test_compliance.py -v

The native extensions (the east-c bridge and the Cython hot paths) are compiled at install time. After editing a .pyx/.pxd or the linked east-c sources, rebuild with make install (from the libs/east-py lib root) to recompile them.

Native build

The package compiles the native east-c runtime into a Cython extension (the _eastc bridge) at install time — this is required: IR compilation, execution, the builtin library, and the eager value methods all run through it. A few hot paths (struct/variant construction, BEAST2/CSV decoding, ordering) have additional Cython acceleration with a pure-Python fallback, but the core bridge is not optional.

Building requires a C compiler and python3-dev (Linux) or Xcode CLI tools (macOS); extensions compile automatically during pip install / uv sync / make install.

Architecture

The builtin library, IR compiler, execution, and serialization live in the native east-c runtime; this package is the Python type system plus a Cython bridge to it.

Module Structure

  • east/types/ - Type system + value representation

    • types.py - Type constructors, guards, comparison/unification
    • values.py - Value classes (EastArray/Set/Dict/Vector/Matrix/Struct/Variant/Ref/Blob), their eager methods, is_value_of/type_of
    • coercion.py - coerce_to / assert_value_of / explain_value_of / EastTypeError
    • construct.py - Ergonomic constructors (variant/some/none/match/struct/array)
    • type_of_type.py - Homoiconic type encoding (types are East values)
  • east/namespace.py - The East.<Type> scalar builtin namespaces (Float/Integer/String/DateTime/Boolean + compare/equal/less)

  • east/datetime_format.py - Format-string tokenizer for the DateTime print/parse builtins

  • east/runtime/ - Execution engine

    • compiler.py / _compiler_eastc.pyx - Bridge to east-c: compile IR, east_call, the eager call_builtin shim, and the Python-callback invoke hook
    • platform.py - PlatformFunction + the @platform_function on-ramp
    • errors.py - EastError
  • east/serialization/ - East text, JSON, BEAST2, CSV (thin wrappers over the east-c encoders/decoders)

  • east/utils/ordering.py - East total order (compare_for/equal_for/less_for/make_east_key)

  • east/_eastc_bridge.pyx, east/_eastc.pxd - The Cython ↔ east-c value/type marshalling layer

Claude Code plugin

The East ecosystem also ships a Claude Code plugin — East language skills, example search, and preemptive diagnostics for East code — installed separately from the elaraai marketplace:

# Inside Claude Code
/plugin marketplace add elaraai/east-workspace
/plugin install east@elaraai
# From a terminal
claude plugin marketplace add elaraai/east-workspace
claude plugin install east@elaraai

License

BSL 1.1 (Business Source License):

  • Non-production use (evaluation, testing, development) is free
  • Production use by or on behalf of for-profit entities requires a commercial license
  • Code becomes AGPL-3.0 four years after each release

See LICENSE.md for full details.

Commercial licensing: support@elara.ai

Ecosystem

  • East: Statically typed, expression-based language with serializable IR. Run portable logic across TypeScript, Python, C, and other runtimes.

    • @elaraai/east: Core language SDK with type system, expressions, and reference JS compiler
  • East Node: Node.js platform functions for I/O, databases, and system operations.

  • East C: C11 native runtime for executing East IR. Distributed via npm (launcher + per-platform optional dependencies) and as tarballs on each GitHub Release.

    • @elaraai/east-c-cli: npm launcher — installs the matching native binary as an optional dependency
    • east-c: Core runtime — type system, IR interpreter, builtins, serialization (Beast2, JSON, CSV, East text)
    • east-c-std: Console, FileSystem, Fetch, Crypto, Time, Path, Random
    • east-c-cli: CLI for running East IR programs natively
  • East Python: Python runtime, standard platform, I/O, and data-science platform functions. Published to PyPI.

    • east-py: Core Python runtime — type system, Cython bridge to the east-c runtime (compiler, builtins, serialization), eager value methods
    • east-py-std: Console, FileSystem, Fetch, Crypto, Time, Path, Random
    • east-py-io: SQLite, PostgreSQL, MySQL, MongoDB, Redis, S3, FTP, SFTP, XLSX, XML, compression
    • east-py-cli: CLI for running East IR programs in Python
    • east-py-datascience (PyPI) + @elaraai/east-py-datascience (npm): Optimization (MADS, Optuna, ALNS, GoogleOR), ML (XGBoost, LightGBM, NGBoost, PyTorch, Lightning, GP), Bayesian inference (PyMC), explainability (SHAP), conformal prediction (MAPIE)
  • East UI: Typed UI component definitions and React renderer, plus VS Code preview.

  • e3 — East Execution Engine: Durable execution engine for running East pipelines at scale. Git-like content-addressable storage, automatic memoization, reactive dataflow, real-time monitoring.

Links

About Elara

East is developed by Elara AI Pty Ltd, an AI-powered platform that creates economic digital twins of businesses that optimize performance. Elara combines business objectives, decisions and data to help organizations make data-driven decisions across operations, purchasing, sales and customer engagement, and project and investment planning. East powers the computational layer of Elara solutions, enabling the expression of complex business logic and data in a simple, type-safe and portable language.


Developed by Elara AI Pty Ltd.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

elaraai_east_py-1.0.43.tar.gz (505.6 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

elaraai_east_py-1.0.43-cp313-cp313-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.13Windows x86-64

elaraai_east_py-1.0.43-cp313-cp313-win32.whl (889.7 kB view details)

Uploaded CPython 3.13Windows x86

elaraai_east_py-1.0.43-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

elaraai_east_py-1.0.43-cp313-cp313-macosx_11_0_arm64.whl (965.5 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

elaraai_east_py-1.0.43-cp313-cp313-macosx_10_13_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

elaraai_east_py-1.0.43-cp312-cp312-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.12Windows x86-64

elaraai_east_py-1.0.43-cp312-cp312-win32.whl (891.9 kB view details)

Uploaded CPython 3.12Windows x86

elaraai_east_py-1.0.43-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

elaraai_east_py-1.0.43-cp312-cp312-macosx_11_0_arm64.whl (969.8 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

elaraai_east_py-1.0.43-cp312-cp312-macosx_10_13_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

elaraai_east_py-1.0.43-cp311-cp311-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.11Windows x86-64

elaraai_east_py-1.0.43-cp311-cp311-win32.whl (893.1 kB view details)

Uploaded CPython 3.11Windows x86

elaraai_east_py-1.0.43-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

elaraai_east_py-1.0.43-cp311-cp311-macosx_11_0_arm64.whl (979.9 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

elaraai_east_py-1.0.43-cp311-cp311-macosx_10_9_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

File details

Details for the file elaraai_east_py-1.0.43.tar.gz.

File metadata

  • Download URL: elaraai_east_py-1.0.43.tar.gz
  • Upload date:
  • Size: 505.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for elaraai_east_py-1.0.43.tar.gz
Algorithm Hash digest
SHA256 d564732e549d06bebf41af19f6721313f501ecfea96936cdbf248a6ac8f4aab9
MD5 d6d3d2dd1d447f8d64573396a35e5f59
BLAKE2b-256 717d251d90c7800cbc5367032303e68868998b0a55f0bdc219b9ef9490fc98a2

See more details on using hashes here.

File details

Details for the file elaraai_east_py-1.0.43-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for elaraai_east_py-1.0.43-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 e0d3b2fec7a160ac4ed7760906a3d0a97b0bae5415e610413041409e0f15af5f
MD5 0af62eca57720cf63887475017b31cbc
BLAKE2b-256 89598bcd3fcce6e3b7f67623438eb33ffe3a7165d38678981743f7b5b6ba9405

See more details on using hashes here.

File details

Details for the file elaraai_east_py-1.0.43-cp313-cp313-win32.whl.

File metadata

File hashes

Hashes for elaraai_east_py-1.0.43-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 686fba1cd68d2aca5f4c2b93929ab7629be14c0cd154a96578fbeaed5f4308fa
MD5 09276387fbae650b77b302552737f1a2
BLAKE2b-256 f130a0dc749b1617f548c84e11125dfd60a0774002184071f56958f99031fe52

See more details on using hashes here.

File details

Details for the file elaraai_east_py-1.0.43-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for elaraai_east_py-1.0.43-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 fd89b0f446fd3bc7659cab3096357279c8a3b4242209754b7fcb2446fe344e87
MD5 06278a458789e1bce36913840f6c1dc6
BLAKE2b-256 1975e60011862910806ef79dec7de95d37360660a6ac0068d5bf9d77e4597398

See more details on using hashes here.

File details

Details for the file elaraai_east_py-1.0.43-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for elaraai_east_py-1.0.43-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 98995ec344c58a314f27846829161cc2f0bd1a6e13ddd82af830ce6b917e0cf9
MD5 2d806995ba03b0e9d9750f274eb9e89e
BLAKE2b-256 2039e985983e8ac303b9cd0dceab70c9113bdb4be47bd9787ddfa880cf933b6e

See more details on using hashes here.

File details

Details for the file elaraai_east_py-1.0.43-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for elaraai_east_py-1.0.43-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 1b74a05ba21117f12ea25781395d18d6ba64474d4a1aa737122ebb037b06cb64
MD5 7a1b137049c3f88038b6804dacdaa1c6
BLAKE2b-256 da0a58961b55c3fe24d1a07aac50012b54e5832052b40e9840e0feb822c3f5d3

See more details on using hashes here.

File details

Details for the file elaraai_east_py-1.0.43-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for elaraai_east_py-1.0.43-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 e763b7d73b7aa929a0cc957a47c99cc65be334712824e49b148b4ddca16dcbba
MD5 9f7293119c1e08f6392a6808e4662022
BLAKE2b-256 f3e7d90be54bf6e9f67e61b934c6bb5c43e186cbe548fa8adf136d4c0ed759ce

See more details on using hashes here.

File details

Details for the file elaraai_east_py-1.0.43-cp312-cp312-win32.whl.

File metadata

File hashes

Hashes for elaraai_east_py-1.0.43-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 a6e12addffa8e93b46a6569fa3919ab3e2d232aeabc6d34562c35b4081e925fe
MD5 cebda4b1b6aec82635542c8d757f8061
BLAKE2b-256 3511e08d3514a4c02a9d0c95d340719f67773d23461c219029da86d862d89d0b

See more details on using hashes here.

File details

Details for the file elaraai_east_py-1.0.43-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for elaraai_east_py-1.0.43-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 55def7f9673f17b2b80fc979243478cd8c4efdf087a7c9a5ae2a466a587d682f
MD5 e2f081d6c5fad1b7575496cc176d5ff8
BLAKE2b-256 dace8febfbbc98fc7a7561f369a97eb51c56fce6db245bb058261a764fc159b8

See more details on using hashes here.

File details

Details for the file elaraai_east_py-1.0.43-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for elaraai_east_py-1.0.43-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 eebcde8fcaa452bafeba634f15193d7a6316de48d8100543d80cf1d458209c00
MD5 a772ee967f86018f7258101939ae9605
BLAKE2b-256 d162ca9aa5de9d8f4104d1573f1fcace016fa34c58a8a039c90de10ef07c59a4

See more details on using hashes here.

File details

Details for the file elaraai_east_py-1.0.43-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for elaraai_east_py-1.0.43-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 6f47fbdeb25f27ab0061c5235a466361d69f1159c194f8dedec0afb5aa080c85
MD5 a2d43ed3d1f58cda10df7bc701d84c48
BLAKE2b-256 3c446dd48613848260c309bf4276adb70400a8cc7b24a0efe7d7d6779853a39b

See more details on using hashes here.

File details

Details for the file elaraai_east_py-1.0.43-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for elaraai_east_py-1.0.43-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 068fd68bcabadfef8c8f259c1fcaaa384e0ee97bf1e1282a9298ad9f8cae0827
MD5 433369a1dbc53d30407eeef23f3f1319
BLAKE2b-256 1b4a697d298c2954ebb65139510c728e6f0786c00f8c24a020268a7673f33237

See more details on using hashes here.

File details

Details for the file elaraai_east_py-1.0.43-cp311-cp311-win32.whl.

File metadata

File hashes

Hashes for elaraai_east_py-1.0.43-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 eb0fc31ca8376c1474d559ab208d104524403e2abc639ca697cdbc31ac16cc85
MD5 71cd4296efb770f5dea2a03550a59487
BLAKE2b-256 2ab08ee8012f8829e6160e677f7433277f7316c6f88ac5d90d31a4ffecb9b1af

See more details on using hashes here.

File details

Details for the file elaraai_east_py-1.0.43-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for elaraai_east_py-1.0.43-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4c35073b5badeff15d7c9820c46c68277228efd32438b0dd7987774761749646
MD5 c695888b609aff69a5aa130f9d010212
BLAKE2b-256 1357dae8540e9a64a1277c2bf252c98c88ee430b32f11ff8aad76c48de7de60e

See more details on using hashes here.

File details

Details for the file elaraai_east_py-1.0.43-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for elaraai_east_py-1.0.43-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3c7b3c6ecc9a88d1611d48f54abd490203183f35d5017d7157c5045418b0c0e9
MD5 04525c4508a793177f3984f0dd3bd55d
BLAKE2b-256 e155f5c78c8544c38b5db7dbd5152e688dbbd91ea22a5d802ac1c4a15da1bdb1

See more details on using hashes here.

File details

Details for the file elaraai_east_py-1.0.43-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for elaraai_east_py-1.0.43-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 fa78f2602f69693a49bbd1bde40a8e876706f1216e24305a951104829d5bb3af
MD5 9ef9067f9dcff62c7d456cbc5208a70f
BLAKE2b-256 40fe49bfbc15466a7b705fb843f4aeabb6f111aeec0417d0db0ca9b5bddaa83b

See more details on using hashes here.

Release history Release notifications | RSS feed

1.0.70

16 files

1.0.69

16 files

1.0.68

16 files

1.0.67

16 files

1.0.66

16 files

1.0.65

16 files

1.0.64

16 files

1.0.63

16 files

1.0.62

16 files

1.0.61

16 files

1.0.60

16 files

1.0.59

16 files

1.0.58

16 files

1.0.57

16 files

1.0.56

16 files

1.0.55

16 files

1.0.54

16 files

1.0.53

16 files

1.0.52

16 files

1.0.51

16 files

1.0.50

16 files

1.0.49

16 files

1.0.48

16 files

1.0.47

16 files

1.0.46

16 files

1.0.45

16 files

1.0.44

16 files

This release

1.0.43 This release

16 files

1.0.42

16 files

1.0.41

16 files

1.0.40

16 files

1.0.39

16 files

1.0.38

16 files

1.0.37

16 files

1.0.36

16 files

1.0.35

16 files

1.0.34

16 files

1.0.33

16 files

1.0.32

16 files

1.0.31

16 files

1.0.30

16 files

1.0.29

16 files

1.0.28

16 files

1.0.27

16 files

1.0.26

16 files

1.0.25

16 files

1.0.24

16 files

1.0.23

16 files

1.0.22

16 files

1.0.21

16 files

1.0.20

16 files

1.0.19

16 files

1.0.18

16 files

1.0.17

16 files

1.0.16

16 files

1.0.15

16 files

1.0.14

16 files

1.0.13

16 files

1.0.12

16 files

1.0.11

16 files

1.0.10

16 files

1.0.9

16 files

1.0.8

16 files

1.0.7

16 files

1.0.6

16 files

1.0.5

16 files

1.0.4

10 files

1.0.3

10 files

1.0.2

10 files

1.0.1

10 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page