Skip to main content
Pre-release

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

benzene-azure

Host Benzene Python handlers on Azure Functions — HTTP, Service Bus, Event Hub, Queue Storage, Blob Storage, Cosmos DB change feed, Timer, and Event Grid triggers — plus Service Bus, Queue Storage, and Event Grid outbound clients. The same handlers, no rewrite. Depends on benzene-core and benzene-http.

pip install benzene-azure          # add [servicebus,storage,eventgrid] for the real outbound clients
from benzene.azure import AzureFunctionsApp

app = AzureFunctionsApp(http_router=router, registry=registry)
# main.py adapts azure.functions request/response types to app.handle_http(...),
# app.handle_service_bus(msg), app.handle_event_hub(events), app.handle_queue_storage(msg),
# app.handle_blob(blob), app.handle_cosmos(docs), app.handle_timer(t), app.handle_event_grid(ev).
  • HTTP — via the benzene.http binding (route → topic, status mapping).
  • Service Bus — one scope per message; topic from application_properties; failure raises so the message is retried / dead-lettered.
  • Event Hub — a batch of events; one scope per event, in order; failure raises.
  • Queue Storage — one scope per message; a Storage Queue has no attribute channel, so the topic is lifted from a Benzene envelope embedded in the payload, or falls back to a configurable default_topic (the "one queue → one topic" convention). Base64 payloads are auto-detected.
  • Blob Storage — a blob-created notification; default_topic (blob:created) + the blob descriptor (name / uri / metadata) as the body.
  • Cosmos DB change feed — a batch of changed documents; one scope per document, in order (Event Hub semantics); default_topic is cosmos:change, the document is the body.
  • Timer — one tick, one invocation; default_topic is timer:tick, the schedule info is the body.
  • Event Grid — a single event or a batch; one scope per event; native schema and CloudEvents 1.0 are both accepted (told apart by specversion), topic from eventType / type.
  • Outbound — ServiceBusMessageSender, QueueStorageMessageSender (embeds topic + headers as a Benzene envelope), and EventGridMessageSender (native schema or CloudEvents 1.0, topic in eventType / type) all implement benzene.core.MessageSender over the optional Azure SDKs.

Test every trigger in memory with benzene.azure.testing (no Azure SDK) — see the runnable examples/azure_orders. Mirrors .NET's Benzene.Azure.Function.* and Benzene.Clients.Azure.*, and contributes the benzene.azure subpackage to the shared benzene namespace.

Metadata

Release files for benzene-azure 0.1.0b2

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

Source distribution (sdist)

Source distribution for benzene-azure 0.1.0b2
File Size Uploaded Provenance Actions
benzene_azure-0.1.0b2.tar.gz 15.7 kB With provenance Details for benzene_azure-0.1.0b2.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for benzene-azure 0.1.0b2
File Interpreter ABI Platform Actions
benzene_azure-0.1.0b2-py3-none-any.whl Python 3 none any Details for benzene_azure-0.1.0b2-py3-none-any.whl

Total release size: 34.9 kB

Release files / benzene_azure-0.1.0b2.tar.gz

Download URL benzene_azure-0.1.0b2.tar.gz
Size 15.7 kB
Tags Source
SHA-256 checksum
How to use checksums
d4c363aa7558b8375ec58b0c1676ca16c480368b9483b73ec25ba12fef51122c
BLAKE2b-256 checksum
How to use checksums
219355ba57b1a133dec7a0dfa95807f08b732e6974f9ccdc63933b5430578d44
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 16, 2026.

Transparency log

Release files / benzene_azure-0.1.0b2-py3-none-any.whl

Download URL benzene_azure-0.1.0b2-py3-none-any.whl
Size 19.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7fffbc1a32ab00e27088d9a5b1dc76f18450c58bfba6643045dc7a404124e2ec
BLAKE2b-256 checksum
How to use checksums
91f943867b597349f93e427dec669e2b39c5a17b2693710ed143ff7440127669
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 16, 2026.

Transparency log

Security for benzene-azure 0.1.0b2

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.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for benzene_azure-0.1.0b2.tar.gz

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 Oct 16, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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