Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Aquilia Logo

Aquilia

The Python framework for teams building production APIs. Write controllers and services. Aquilia discovers everything, manages its own architecture, and deploys itself.

Version License Python Tests


Introduction

Aquilia is the Python framework for teams building production APIs. Write controllers and services. Aquilia discovers everything, manages its own architecture, and deploys itself.

You do not touch most framework-managed files. Write your controllers and services. Run aq serve. Aquilia handles routing, discovery, dependency injection, manifests, runtime orchestration, Docker integration, deployment tooling, and application wiring automatically.


Architecture

Decouple your application code from runtime orchestration. The system is split into three main components: developer space, framework engine, and infrastructure templates.

Aquilia High-Level System Architecture


Who is it for?

Aquilia is built for backend engineers and product teams who have outgrown the ad-hoc patterns of small web libraries. If you are tired of writing routing boilerplate, manually stitching dependency trees, wrestling with ASGI lifespans, or maintaining custom Dockerfiles, Aquilia provides a clean, self-organizing architecture.

Why does it exist?

Most Python web frameworks follow a microframework design. While this is great for small scripts, it falls apart in large codebases. Teams end up creating their own framework layers for database transactions, configuration loading, caching, versioning, and dependency injection. These layers are rarely documented, hard to test, and lead to maintenance debt. Aquilia replaces this custom glue code with standard, convention-driven structures.

Comparison Against Flask and FastAPI

Flask and FastAPI are microframeworks. They require you to manually import and wire every router, database connection pool, and service instantiation. As your codebase grows, this leads to large, fragile import loops. Aquilia is different. You declare your controllers and services, and Aquilia discovers and wires them automatically.

Comparison Against NestJS

Aquilia is closer to NestJS for Python. It uses a structured, modular design where folders represent logical boundaries (modules). Modules declare their components (controllers and services) inside a manifest file, and the framework orchestrates dependency injection, middleware ordering, and lifecycle hooks automatically.


Philosophy

Convention over Configuration

We believe developers should focus on business logic rather than wiring code. Aquilia sets logical defaults for directory structures, routing, configuration caching, and environment variables. If you follow the folder structure, everything works out of the box.

Automatic Discovery

Manual route registration is a common source of bugs and circular imports. Aquilia uses a Package Scanner to inspect your workspace, identify manifests, import modules, and register endpoints.

Self-Managing Architecture

The framework builds a topological dependency graph at startup. It detects circular references before your application starts, manages request-scoped lifecycles, and automatically compiles your code into optimized deployment manifests.

Production-First Design

Aquilia comes with production essentials built in:

  • Scoped dependency injection with singleton, app, and request scopes.
  • A structured fault handling system that replaces unhandled tracebacks with typed error domains.
  • Declarative multi-dimensional security clearances.
  • API versioning with RFC-compliant sunset warning headers.

Quick Start

1. Install the Core and Server Adapters

Install the base framework along with the production server package:

pip install "aquilia[full]"

2. Scaffold a Workspace

Create a new workspace using the CLI:

aq init workspace my-api
cd my-api

This generates your workspace root containing workspace.py, a config/ folder, and a default module.

3. Add a Module

Add a user management module:

aq add module users

This creates the following structure:

modules/
└── users/
    ├── __init__.py
    ├── controllers.py
    ├── manifest.py
    ├── models.py
    └── services.py

4. Run the Development Server

Start the server with hot reloading enabled:

aq serve

Your API is now running on http://127.0.0.1:8000.


Developer Workflow

What Files You Write

As a developer, you only write code inside your modules:

  • Controllers (controllers.py): Define your HTTP and WebSocket endpoints using route decorators.
  • Services (services.py): Implement business logic, database operations, and external API calls.
  • Models (models.py): Declare your database schema using the pure Python ORM.
  • Contracts (contracts.py or inline): Define input and output contracts using typed validation facets.

What Files Aquilia Manages

You do not touch configuration orchestrators, route tables, or deployment templates:

  • Workspace Config (workspace.py): Scaffolds integrations once, then left alone.
  • Module Manifests (manifest.py): Updated automatically by the CLI when you add components.
  • Infrastructure Dockerfiles (Dockerfile, docker-compose.yml): Generated automatically by the compiler.
  • ASGI Lifespan Adapters: Managed completely behind the scenes by the runtime.

Why Aquilia Exists

The Boilerplate Exhaustion

In standard Python frameworks, introducing a new service requires:

  1. Importing the service class.
  2. Initializing it with database connection handles.
  3. Importing it into a router file.
  4. Mounting the router onto the main app application. In Aquilia, you decorate the service with @service, add it to the manifest, and inject it into your controller constructor. The framework handles the rest.

Deployment Drift

Writing custom Dockerfiles and Kubernetes manifests leads to configuration drift. Developers often write configurations for local development that do not match production settings. Aquilia solves this by compiling your code directly into production-grade infrastructure configurations.


Feature Overview

Controllers

Controllers handle incoming HTTP and WebSocket requests. They are declared as classes inheriting from Controller and define routes with decorators like @GET or @POST.

from aquilia import Controller, GET, RequestCtx, Response

class UsersController(Controller):
    prefix = "/users"
    
    @GET("/")
    async def get_all(self, ctx: RequestCtx):
        return Response.json({"users": []})

Services

Services hold your business logic. They are decorated with @service and are automatically registered in the dependency injection container.

from aquilia import service

@service
class UserService:
    def get_users(self):
        return []

Dependency Injection

Aquilia supports nested dependency injection. You can inject services into controllers or other services by specifying them in the class constructor. The DI container resolves dependencies at startup.

class UsersController(Controller):
    def __init__(self, user_service: UserService):
        self.user_service = user_service

Contracts

Contracts define request validation schemas. They use facets to enforce constraints on incoming bodies, query parameters, and headers.

from aquilia.contracts import Contract, TextFacet, EmailFacet

class CreateUserContract(Contract):
    username = TextFacet(min_length=3, max_length=50)
    email = EmailFacet()

ORM

The built-in ORM provides an async database mapper with a chainable query builder, migrations, and transaction controls.

from aquilia.models import Model, CharField, EmailField

class UserModel(Model):
    username = CharField(max_length=50)
    email = EmailField()

Effects

Effects represent external side effects like database writes, caches, or task queues. Handlers declare these requirements using the @requires decorator, prompting the runtime to allocate resources automatically.

from aquilia.effects import DBTx, CacheEffect
from aquilia.flow import requires

@requires(DBTx("write"), CacheEffect("users"))
async def update_profile(ctx):
    db = ctx.get_effect("DBTx")
    cache = ctx.get_effect("Cache")

Flow

Flow is a pipeline system inspired by functional effect architectures. It lets you compose guards, transforms, handlers, and cleanup hooks into structured pipelines.

from aquilia.flow import FlowPipeline, guard, handler

pipeline = (
    FlowPipeline()
    .use(guard(check_permissions))
    .use(handler(process_request))
)

Faults

The fault system replaces raw exceptions with structured, typed errors. Every fault carries an error domain, a severity level, and a recovery strategy.

from aquilia.faults import Fault
from aquilia.faults.domains import FaultDomain

class PaymentRequiredFault(Fault):
    def __init__(self):
        super().__init__(
            code="PAYMENT_REQUIRED",
            message="Upgrade your plan to access this feature.",
            domain=FaultDomain.SECURITY,
        )

Middleware

Middleware executes before and after your request handlers. Aquilia uses priority bands to orchestrate middleware execution, including CORS, security headers, sessions, and telemetry.

Runtime

The AquiliaRuntime manages the ASGI server boot sequence. It guides the application through configuration, discovery, bootstrapping, and ready phases.

Versioning

Aquilia supports epoch-based versioning. You can define versions on controllers and set sunset policies that add deprecation warning headers to responses.

from aquilia.versioning import version, SunsetPolicy

@version("2.0")
class UsersV2Controller(Controller):
    pass

Discovery

The discovery engine uses static analysis and import checks to locate module manifests and wire components together without import statements.

CLI

The aq command-line utility provides commands to scaffold projects, generate controllers, run migrations, compile manifests, and validate dependency graphs.

Deployment

Aquilia generates deployment configurations for Docker, Docker Compose, and Kubernetes. It also includes render cloud integration.

Manifests

The manifest file (manifest.py) acts as the module contract. It lists the controllers, services, socket connections, and task configurations within the module.

Aquiliary

Aquiliary is the central app registry. It maps endpoints, validates route overlaps, and manages the dependency injection container.

Lifecycle System

The lifecycle manager runs hooks during application startup, runtime requests, and application shutdown, ensuring database pools and cache clients are properly closed.


Internal Runtime

The internal runtime translates ASGI connection events into structured context calls, routes requests to the correct versioned controller, and manages request-specific dependency containers.

Aquilia Complete System Architecture


Subsystem Lifecycles

Request Lifecycle

Every incoming ASGI connection passes through the middleware stack, matches a versioned controller, runs a flow pipeline with required side effects, and returns a structured response.

Aquilia Middleware Architecture

Dependency Injection Lifecycle

The DI container discovers providers at boot, registers them into container scopes, validates dependencies for circular references, and creates request-scoped DAGs.

Aquilia Dependency Injection Architecture

Middleware Lifecycle

Middleware components execute sequentially based on their priority bands. Post-processing wraps the response in reverse order.

Aquilia Middleware Architecture

Fault Handling Lifecycle

When an exception occurs, the interceptor catches it, maps it to a structured fault domain, evaluates its severity, and generates a formatted JSON response or HTML debug page.

Aquilia Fault Architecture

Contract Lifecycle

Contracts intercept incoming payloads, validate data types using facets, cast raw inputs into typed models, and project outgoing responses while excluding restricted fields.

Aquilia Contract Architecture

Runtime Lifecycle

The runtime orchestrator boots your application through linear gates, verifying configuration health before starting the ASGI server.

Aquilia Runtime Architecture

Deployment Lifecycle

The compiler processes workspace integrations, builds dependency manifests, freezes the active configuration, and generates production Docker or Kubernetes templates.

Aquilia High-Level System Architecture

Manifest Architecture

The manifest lifecycle reads code declarations, analyzes file locations, compiles dependencies, and outputs a frozen runtime registry artifact.

Aquilia Manifest Architecture

Versioning Architecture

The versioning router evaluates incoming headers, queries, or paths to resolve the client's requested version, routes requests to the matching controller, and appends sunset warnings.

Aquilia Versioning Architecture

Flow and Effect Architecture

Flow pipelines acquire required side effects (like database transactions) from providers, bind them to the request context, execute the handler, and commit or rollback changes on completion.

Aquilia Flow and Effect Architecture

ORM Architecture

The ORM maps declarative models to SQL statements, processes queries through connection adapters, and applies schema updates through migration scripts.

Aquilia ORM Architecture

Lifecycle Architecture

Startup and shutdown hooks run in sequence during ASGI lifecycle transitions, initializing and cleaning up shared resources like database pools.

Aquilia Lifecycle Architecture


Examples

1. Controller with Dependency Injection

# modules/products/controllers.py
from aquilia import Controller, GET, RequestCtx, Response
from .services import ProductService

class ProductController(Controller):
    prefix = "/products"

    def __init__(self, product_service: ProductService):
        self.product_service = product_service

    @GET("/")
    async def list_products(self, ctx: RequestCtx):
        products = self.product_service.get_available_products()
        return Response.json({"products": products})
# modules/products/services.py
from aquilia import service
from aquilia.effects import DBTx

@service
class ProductService:
    def get_available_products(self) -> list[dict]:
        return [
            {"id": 1, "name": "Cloud database service", "price": 49.00},
            {"id": 2, "name": "Telemetry collector", "price": 19.00}
        ]

2. Composed Flow Pipeline with Side Effects

# modules/billing/controllers.py
from aquilia import Controller, POST, RequestCtx, Response
from aquilia.effects import DBTx, CacheEffect
from aquilia.flow import requires
from aquilia.contracts import validate_body
from .contracts import InvoicePaymentContract

class BillingController(Controller):
    prefix = "/billing"

    @POST("/pay")
    @validate_body(InvoicePaymentContract)
    @requires(DBTx("write"), CacheEffect("invoices"))
    async def process_payment(self, ctx: RequestCtx, body: dict):
        # Database and cache effects are acquired automatically before execution
        db = ctx.get_effect("DBTx")
        cache = ctx.get_effect("Cache")
        
        # Perform payment logic
        invoice_id = body["invoice_id"]
        await db.execute("UPDATE invoices SET status = 'paid' WHERE id = ?", [invoice_id])
        await cache.set(f"invoice:{invoice_id}", "paid")
        
        return Response.json({"status": "payment_processed", "invoice_id": invoice_id})

3. API Versioning with Sunset Warning

# modules/users/controllers_v1.py
from aquilia import Controller, GET, Response
from aquilia.versioning import SunsetPolicy

class LegacyUserController(Controller):
    prefix = "/users"
    version = "1.0"
    sunset = SunsetPolicy(
        grace_period="90d",
        warn_header=True,
        sunset_date="2026-12-31"
    )

    @GET("/")
    async def get_users_old(self, ctx):
        # Clients will receive a 'Warning: 299 - Deprecated API' header
        return Response.json({"legacy_data": []})

Benchmarks

The benchmark suite compares Aquilia against 8 major Python web frameworks (Falcon, Starlette, Litestar, Sanic, Quart, FastAPI, Django, Flask). Tests were executed on macOS via oha load testing tool (concurrency 50, duration 5s per endpoint) with single-worker ASGI configurations under identical transport loads. Full detailed report is available in benchmarks/report.md.

Application Cold Startup Time

How long the framework takes to initialize routes, build internal engines, and open the HTTP port (milliseconds). Lower is better.

Application Startup Time

Mean Throughput

The average requests per second processed across all 17 HTTP workload scenarios. Higher is better.

Mean Throughput

Mean P95 Tail Latency

Average P95 tail latency (milliseconds) under high concurrency across key endpoints. Lower is better.

Mean P95 Tail Latency

Middleware Scaling Degradation

Percentage throughput drop when stacking 10 custom middleware layers vs 0 layers. Lower is better.

Middleware Degradation

Average Peak Memory Usage

Memory footprint (Peak RSS in Megabytes) under load. Lower is better.

Average Peak Memory Usage

WebSocket Message Throughput

WebSocket roundtrip message throughput (messages per second). Higher is better.

WebSocket Throughput


Comparison Tables

Feature Aquilia FastAPI Flask Django NestJS
Programming Model Controllers / Services Routers / Functions Contract Functions Class / Function Views Controllers / Services
Component Wiring Auto-discovers everything Manual imports / mounts Manual register calls Manual URL patterns list Modules imports array
Dependency Injection Scoped container built-in Function parameter DI None (needs extensions) None (needs extensions) Class injection built-in
Data Contracts Contracts & Lenses Pydantic Models None (needs extensions) Django Forms TypeScript DTOs
Out-of-box DB/Cache Async ORM & Cache built-in None (needs third party) None (needs third party) Synchronous Django ORM TypeORM / Prisma (Node)
Structured Faults Error domains built-in Raw HTTPExceptions Error handler mapping Middlewares / Exceptions Exception filters built-in
Realtime WebSockets Controller events built-in Raw ASGI adapters Needs SocketIO extension Channels extension Gateways built-in
Infrastructure Gen Auto-builds Dockerfiles Manual configuration Manual configuration Manual configuration Manual configuration

Roadmap

  • v1.2.0: Out-of-the-box PostgreSQL connection pooling improvements.
  • v1.3.0: Visual flow pipeline inspector dashboard in CLI.
  • v2.0.0: Dynamic auto-scaling Kubernetes operator integration.

Ecosystem

  • aq-admin: Visual admin panel client.
  • aq-otel: Expanded tracing integrations.
  • aq-mlops: Real-time machine learning model packaging extensions.

Contributing

We welcome contributions. Please read CONTRIBUTING.md to understand our coding standards and pull request workflows.


License

Aquilia is licensed under the MIT License. See LICENSE for details.

Release files for aquilia 1.4.0b5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for aquilia 1.4.0b5
File Size Uploaded
aquilia-1.4.0b5.tar.gz 21.1 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for aquilia 1.4.0b5
File
aquilia-1.4.0b5-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
aquilia-1.4.0b5-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
aquilia-1.4.0b5-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.26+ ARM64, Linux glibc 2.28+ ARM64 Details
aquilia-1.4.0b5-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details
aquilia-1.4.0b5-cp314-cp314-macosx_10_15_x86_64.whl CPython 3.14 CPython 3.14 macOS 10.15+ x86-64 Details
aquilia-1.4.0b5-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
aquilia-1.4.0b5-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
aquilia-1.4.0b5-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.26+ ARM64, Linux glibc 2.28+ ARM64 Details
aquilia-1.4.0b5-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
aquilia-1.4.0b5-cp313-cp313-macosx_10_15_x86_64.whl CPython 3.13 CPython 3.13 macOS 10.15+ x86-64 Details
aquilia-1.4.0b5-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
aquilia-1.4.0b5-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
aquilia-1.4.0b5-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.26+ ARM64, Linux glibc 2.28+ ARM64 Details
aquilia-1.4.0b5-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
aquilia-1.4.0b5-cp312-cp312-macosx_10_15_x86_64.whl CPython 3.12 CPython 3.12 macOS 10.15+ x86-64 Details
aquilia-1.4.0b5-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
aquilia-1.4.0b5-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
aquilia-1.4.0b5-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.26+ ARM64, Linux glibc 2.28+ ARM64 Details
aquilia-1.4.0b5-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
aquilia-1.4.0b5-cp311-cp311-macosx_10_15_x86_64.whl CPython 3.11 CPython 3.11 macOS 10.15+ x86-64 Details
aquilia-1.4.0b5-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
aquilia-1.4.0b5-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details
aquilia-1.4.0b5-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.26+ ARM64, Linux glibc 2.28+ ARM64 Details
aquilia-1.4.0b5-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details
aquilia-1.4.0b5-cp310-cp310-macosx_10_15_x86_64.whl CPython 3.10 CPython 3.10 macOS 10.15+ x86-64 Details

Total release size: 108.6 MB

Release files / aquilia-1.4.0b5.tar.gz

Download URL aquilia-1.4.0b5.tar.gz
Size 21.1 MB
Tags Source
SHA-256 checksum
How to use checksums
47212bdf756493d72cdd6bf42f2ce01f038f66363b51f89590706d37e042b5a2
BLAKE2b-256 checksum
How to use checksums
6ad5be8cf6890492d9a553ca3e491fc7a1f0c79c4e50865944432564a707ac95
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 13, 2026.

Transparency log

Release files / aquilia-1.4.0b5-cp314-cp314-win_amd64.whl

Download URL aquilia-1.4.0b5-cp314-cp314-win_amd64.whl
Size 3.7 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
81e3fcdd659c4c42cc0a154dbccd60f9d551ccee35689e34be072586023d6750
BLAKE2b-256 checksum
How to use checksums
4cf5a0ec5e423dfe90b1e0f6e1b1cd78e891be2fb36d5a731860d1747f2af287
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 13, 2026.

Transparency log

Release files / aquilia-1.4.0b5-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL aquilia-1.4.0b5-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 3.5 MB
Tags CPython 3.14 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
d886c617d588632dfee401e719428d4b019b60d5107d2e13b17cc9d483a727cc
BLAKE2b-256 checksum
How to use checksums
a4bf9bd1d3872df636a008257e1b412d4d7def174f66944d7068ac4c2217dd39
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 13, 2026.

Transparency log

Release files / aquilia-1.4.0b5-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL aquilia-1.4.0b5-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 3.5 MB
Tags CPython 3.14 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
c006e60f6899be113beb41d605b235d98b54890c839fbf3d3a29128e2273ab6e
BLAKE2b-256 checksum
How to use checksums
c2b1a4f1c4ccc0c3f77eac59e7883f7134be65f30e1ab04683f83c8989196673
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 13, 2026.

Transparency log

Release files / aquilia-1.4.0b5-cp314-cp314-macosx_11_0_arm64.whl

Download URL aquilia-1.4.0b5-cp314-cp314-macosx_11_0_arm64.whl
Size 3.4 MB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
3b3383334d7723ff6db8972fd2e9f3501f85c41176449adba05cf277e1fe9853
BLAKE2b-256 checksum
How to use checksums
c467f8c494e55a36dfe244397e9e7e6e2e9887923a3a781df227006bb712bee1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 13, 2026.

Transparency log

Release files / aquilia-1.4.0b5-cp314-cp314-macosx_10_15_x86_64.whl

Download URL aquilia-1.4.0b5-cp314-cp314-macosx_10_15_x86_64.whl
Size 3.4 MB
Tags CPython 3.14 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
c6fc1313d4a705e7165301027f11a1535558f7d32d6e9e5be0e4bbd8d1bb3d8b
BLAKE2b-256 checksum
How to use checksums
c1738a8d252feed86a9ef81a77f70a7e3239e82f18365df0808e1c362d0058d9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 13, 2026.

Transparency log

Release files / aquilia-1.4.0b5-cp313-cp313-win_amd64.whl

Download URL aquilia-1.4.0b5-cp313-cp313-win_amd64.whl
Size 3.7 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
a50ec2b7c31bdb6858b8f0da5b4b48b305ffb7a8b92c4ee2033f025560df78b5
BLAKE2b-256 checksum
How to use checksums
22cd69db14ecb1b1e99aa367daafa3f373e5e8db4644b617434b98d1eca9e7cb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 13, 2026.

Transparency log

Release files / aquilia-1.4.0b5-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL aquilia-1.4.0b5-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 3.5 MB
Tags CPython 3.13 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
f076825141df4322dce28b0965e6bd48247cc2ec904313534c24d84463c40765
BLAKE2b-256 checksum
How to use checksums
85ac89c7a0c8aba93546f9d5b6483ec94e261d3c373ccc44f383bd49166575d6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 13, 2026.

Transparency log

Release files / aquilia-1.4.0b5-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL aquilia-1.4.0b5-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 3.5 MB
Tags CPython 3.13 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
d291d35b838e65fde9917603b381cd6168347ae3ac3e1c19539a06e618ab5f32
BLAKE2b-256 checksum
How to use checksums
90405d00cf78f47c26cb4e72dc471da7d7afa27d8f16d61b45a6567a4da60e66
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 13, 2026.

Transparency log

Release files / aquilia-1.4.0b5-cp313-cp313-macosx_11_0_arm64.whl

Download URL aquilia-1.4.0b5-cp313-cp313-macosx_11_0_arm64.whl
Size 3.4 MB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
1fb0e5fa6cd3002931c280f8a2f982ff6f8dbf87af42479bf493513959f97ab9
BLAKE2b-256 checksum
How to use checksums
c73bc43e063a9d104ef0202a7f4d2e04504743d7236052436b8e429b6318abf2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 13, 2026.

Transparency log

Release files / aquilia-1.4.0b5-cp313-cp313-macosx_10_15_x86_64.whl

Download URL aquilia-1.4.0b5-cp313-cp313-macosx_10_15_x86_64.whl
Size 3.4 MB
Tags CPython 3.13 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
f7360f8b093169116e0ceff5abb25d57aa4b90870aa0e1542c232e5355ea19f8
BLAKE2b-256 checksum
How to use checksums
cb688a6296fb824050ef68ed2a8313d3701dddfaca28207e0b2bafbe1cddf646
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 13, 2026.

Transparency log

Release files / aquilia-1.4.0b5-cp312-cp312-win_amd64.whl

Download URL aquilia-1.4.0b5-cp312-cp312-win_amd64.whl
Size 3.7 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
c36a3b4cdb5a7201e6d0421c0b934cf6394a9bbd55117d372c23551f8e68ea7e
BLAKE2b-256 checksum
How to use checksums
c1824768f42cee33bec17f315e1068e93c19034a3ade6c2ff19f614ec62a43f2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 13, 2026.

Transparency log

Release files / aquilia-1.4.0b5-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL aquilia-1.4.0b5-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 3.5 MB
Tags CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
8b0f171902c0f9d4766c9c8f5186670439e768f59ef92a740ed00b3d9c1a0152
BLAKE2b-256 checksum
How to use checksums
91a4c0403076e07f2152dc2a3fbce87acd4e9d2b424de93ab428b2672c1f4267
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 13, 2026.

Transparency log

Release files / aquilia-1.4.0b5-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL aquilia-1.4.0b5-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 3.5 MB
Tags CPython 3.12 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
2375f1219e5e96374d269355301fa921a1d901d844aae792a57ba0ea3d96731e
BLAKE2b-256 checksum
How to use checksums
da75be25a637e006e84d81725cff1c9b67ff03556bf31fde0795cd1a40e8a450
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 13, 2026.

Transparency log

Release files / aquilia-1.4.0b5-cp312-cp312-macosx_11_0_arm64.whl

Download URL aquilia-1.4.0b5-cp312-cp312-macosx_11_0_arm64.whl
Size 3.4 MB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
10238dc3798bc9bc57a675e9e91d19881f3405e129b3b8e748a7b9983096c8f8
BLAKE2b-256 checksum
How to use checksums
38c7a6ad193939fe1e48972b4b49551779de800ca539a06b72f40eb1cdc35804
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 13, 2026.

Transparency log

Release files / aquilia-1.4.0b5-cp312-cp312-macosx_10_15_x86_64.whl

Download URL aquilia-1.4.0b5-cp312-cp312-macosx_10_15_x86_64.whl
Size 3.4 MB
Tags CPython 3.12 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
d66958d9362d00785c3d911a09c8d3233ba7ddf055629608caaf1269280c18b9
BLAKE2b-256 checksum
How to use checksums
66eb19da61c89ad2b35dba41c3b3186404b9203b7ec37ca62abae07bd689bf3f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 13, 2026.

Transparency log

Release files / aquilia-1.4.0b5-cp311-cp311-win_amd64.whl

Download URL aquilia-1.4.0b5-cp311-cp311-win_amd64.whl
Size 3.7 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
b18bed51ea60b8422151c948de1bb13ef3e5d09330a30c6525ad6d15e476a04d
BLAKE2b-256 checksum
How to use checksums
f6e2815b35406facd8ba8fea1f9f8792b8bd00c1ebf3138b3700918a4eb176cc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 13, 2026.

Transparency log

Release files / aquilia-1.4.0b5-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL aquilia-1.4.0b5-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 3.5 MB
Tags CPython 3.11 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
3f93c4bfbbbcd3501546f405a25babe30232e82376fdc6d6cabe50e2bdb6c8d9
BLAKE2b-256 checksum
How to use checksums
7881a30d6758d3da6c559f92758139549944b5a75d9a774e9470217db5038d8a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 13, 2026.

Transparency log

Release files / aquilia-1.4.0b5-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL aquilia-1.4.0b5-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 3.5 MB
Tags CPython 3.11 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
841b886c2fc0f30e70fdaafc15ef54e4580bb8314a32e4705edb37f7a4d1b0fb
BLAKE2b-256 checksum
How to use checksums
08fcdfce18fbf1adf1b4ee4641530ba65cc25393ed9134b8b1e0bda04ec91ad5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 13, 2026.

Transparency log

Release files / aquilia-1.4.0b5-cp311-cp311-macosx_11_0_arm64.whl

Download URL aquilia-1.4.0b5-cp311-cp311-macosx_11_0_arm64.whl
Size 3.4 MB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
765cc8f81ba8841abe6df9e87c185dffe1266a1b719f1ebe9324ffff38e296fa
BLAKE2b-256 checksum
How to use checksums
dc712d4b032cd46b06812440759d0ca7b737a44f5ffb731d67b420db6f30f331
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 13, 2026.

Transparency log

Release files / aquilia-1.4.0b5-cp311-cp311-macosx_10_15_x86_64.whl

Download URL aquilia-1.4.0b5-cp311-cp311-macosx_10_15_x86_64.whl
Size 3.4 MB
Tags CPython 3.11 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
7fcd8058987b34ef8103c30a08d3ce90f46505903fe76df527745a29349d4e4f
BLAKE2b-256 checksum
How to use checksums
1ae8da3be2d8ab9245e010460b65d658c2b794d95ff4d8f26443f25e321803a5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 13, 2026.

Transparency log

Release files / aquilia-1.4.0b5-cp310-cp310-win_amd64.whl

Download URL aquilia-1.4.0b5-cp310-cp310-win_amd64.whl
Size 3.7 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
9f6928e126c956aeefcaa5baf0a85edca2481abe1f87b7eca7ba7c54bfae8c07
BLAKE2b-256 checksum
How to use checksums
5d39cfff3ef3ef76c078b28d49b4084a2fb8ee6938ff9a158a894f8026046c7d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 13, 2026.

Transparency log

Release files / aquilia-1.4.0b5-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL aquilia-1.4.0b5-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 3.5 MB
Tags CPython 3.10 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
186ea2f43899ff878244bda1e80b4e45bb1b48312d679354d5e56a7f13f885b9
BLAKE2b-256 checksum
How to use checksums
2b8c6a62c7cea519b61144364dcbb77688077945d8066e8336550fc6e21e24af
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 13, 2026.

Transparency log

Release files / aquilia-1.4.0b5-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL aquilia-1.4.0b5-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 3.5 MB
Tags CPython 3.10 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
825ecccd103a9606c855b167be44b0fa2200f187492b7dd770775dfd98ea90c9
BLAKE2b-256 checksum
How to use checksums
11f967f923a46d761e64e8daaa52d28314005dd0006dfceb552f14e0424681c9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 13, 2026.

Transparency log

Release files / aquilia-1.4.0b5-cp310-cp310-macosx_11_0_arm64.whl

Download URL aquilia-1.4.0b5-cp310-cp310-macosx_11_0_arm64.whl
Size 3.4 MB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
aff2464457114ed3ff290353970f83fe75de4fdd83e2551441545d61442962fd
BLAKE2b-256 checksum
How to use checksums
e9885ca3d0df64ce11fd136bad53d303b0338204985b452aa59c885f8be3ef80
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 13, 2026.

Transparency log

Release files / aquilia-1.4.0b5-cp310-cp310-macosx_10_15_x86_64.whl

Download URL aquilia-1.4.0b5-cp310-cp310-macosx_10_15_x86_64.whl
Size 3.4 MB
Tags CPython 3.10 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
4bb282379e8862f46f531d9c6a43af5c84987b112043009c677172fa44d39ee4
BLAKE2b-256 checksum
How to use checksums
b9ec99e42e55113da46fe2535b2fd8238d088699222f00322064b8e37184924f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 13, 2026.

Transparency log

Release history Release notifications | RSS feed

1.4.2

26 release files

1.4.1

26 release files

1.4.0

26 release files

This release

1.4.0b5 This release

26 release files

1.3.10

2 release files

1.3.9

2 release files

1.3.8

2 release files

1.3.7

2 release files

1.3.6

2 release files

1.3.5

2 release files

1.3.4

2 release files

1.3.3

2 release files

1.3.2

2 release files

1.3.1

2 release files

1.3.0

2 release files

1.2.5

2 release files

1.2.4

2 release files

1.2.3

2 release files

1.2.2

2 release files

1.2.1

2 release files

1.2.0

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release 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