Skip to main content
Pre-release

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

ashka

CI Publish

ashka extends reagento/dishka with async/sync application lifecycle support.

The a prefix lets ashka sort before dishka, helping ensure the correct import order. The name also means async application lifecycle support, which can speed up startup compared with serially initializing components in a lifespan function.

Documentation

Current Features

  • Pass AshkaScope.BOOTSTRAP to the scope parameter of ashka.provide, for example @ashka.provide(scope=ashka.AshkaScope.BOOTSTRAP), to register a dependency in the APP scope and create it when the container is initialized. Both synchronous and asynchronous containers can be initialized explicitly with container.init() or automatically by entering the container context manager.
  • Each ashka integration provides a consistent get_container function. It retrieves the container passed to setup_dishka from the integrated framework application, router, broker, context, or other supported object.
  • The central ashka.integrations.setup_dishka and ashka.integrations.get_container functions automatically dispatch to the corresponding integration based on the type of the object passed to them.
  • Integrations are available for Aiogram, Aiohttp, ARQ, Celery, Click, FastAPI, Flask, Litestar, Sanic, Starlette, Taskiq, and Telebot. FastStream is available as a manual opt-in integration.

Patched Implementations

  • dishka.**.make_container -> ashka.**.make_container
  • dishka.**.make_async_container -> ashka.**.make_async_container
  • dishka.integrations.*.setup_dishka -> ashka.integrations.*.setup_dishka

These monkey patches keep the API paths consistent with upstream dishka and reduce the cognitive load during migration. Import ashka before importing these dishka APIs so existing projects can keep their current imports without immediate code changes. This is a migration aid rather than a stable usage pattern; migrate imports from dishka to ashka incrementally when convenient instead of relying on the monkey patches indefinitely.

See FastStream support for its support status and manual opt-in.

Download files

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

Source Distribution

ashka_lifecycle-0.1.0b3.tar.gz (4.0 kB view details)

Uploaded Source

Built Distribution

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

ashka_lifecycle-0.1.0b3-py3-none-any.whl (9.0 kB view details)

Uploaded Python 3

File details

Details for the file ashka_lifecycle-0.1.0b3.tar.gz.

File metadata

  • Download URL: ashka_lifecycle-0.1.0b3.tar.gz
  • Upload date:
  • Size: 4.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for ashka_lifecycle-0.1.0b3.tar.gz
Algorithm Hash digest
SHA256 cbebd459069a3f1317164efbe3999cda10d007b3c962e7ba58d0d8039e0c3530
MD5 f56b4b96816424476a5d7b2708af3962
BLAKE2b-256 bf5acff38b167cb9824893dddc46c055731bf491ca3282d66b9ea52510176091

See more details on using hashes here.

Provenance

The following attestation bundles were made for ashka_lifecycle-0.1.0b3.tar.gz:

Publisher: publish.yml on handsome-Druid/ashka

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ashka_lifecycle-0.1.0b3-py3-none-any.whl.

File metadata

File hashes

Hashes for ashka_lifecycle-0.1.0b3-py3-none-any.whl
Algorithm Hash digest
SHA256 59a51aa0dce99e8ce8b3e1cc3daf8683a83256012785fb1daa9278d3544f2b7d
MD5 03410e58d5bec39c5bbae37867892398
BLAKE2b-256 4e61a064e64bd6db08858a53662ad1bf130e00ae8f78ea0195fd3002f22a620c

See more details on using hashes here.

Provenance

The following attestation bundles were made for ashka_lifecycle-0.1.0b3-py3-none-any.whl:

Publisher: publish.yml on handsome-Druid/ashka

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.3.1

2 files

0.3.0

2 files

0.2.3

2 files

0.2.2

2 files

0.2.1

2 files

0.2.0

2 files

0.1.10

2 files

0.1.9

2 files

0.1.8

2 files

0.1.7

2 files

0.1.6

2 files

0.1.5

2 files

0.1.4

2 files

0.1.3

2 files

0.1.2

2 files

0.1.1

2 files

0.1.0

2 files

This release

0.1.0b3 This release

2 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