Skip to main content

Python bindings for the Blazen workflow engine

Project description

Blazen

Event-driven AI workflow engine, powered by Rust.

PyPI Python License: MPL-2.0

Blazen lets you build multi-step AI workflows as composable, event-driven graphs. Define steps with a decorator, wire them together with typed events, and run everything on a native Rust engine with async Python bindings.

Installation

# Recommended
uv add blazen

# Or with pip
pip install blazen

Requires Python 3.10+.

Quick Start

import asyncio
from blazen import Workflow, step, Event, StartEvent, StopEvent, Context

class GreetEvent(Event):
    name: str

@step
async def parse(ctx: Context, ev: Event):
    return GreetEvent(name=ev.name)

@step
async def greet(ctx: Context, ev: GreetEvent):
    return StopEvent(result={"greeting": f"Hello, {ev.name}!"})

async def main():
    wf = Workflow("hello", [parse, greet])
    handler = await wf.run(name="Blazen")
    result = await handler.result()
    print(result.result)  # {"greeting": "Hello, Blazen!"}

asyncio.run(main())

How it works

  • class GreetEvent(Event) -- Subclassing Event auto-sets event_type to the class name ("GreetEvent"). Annotations like name: str are for documentation only; at runtime all keyword arguments are stored as JSON.
  • @step reads type annotations -- ev: GreetEvent on a step function automatically sets accepts=["GreetEvent"]. The step will only receive events of that type.
  • @step with no type hint or ev: Event -- defaults to accepting StartEvent (the event emitted by wf.run()).
  • ev.name -- Direct attribute access on events. No need for ev.to_dict()["name"].
  • wf.run(name="Blazen") -- Keyword arguments become the StartEvent payload. Steps that accept StartEvent receive an event where ev.name == "Blazen".
  • result.result -- preserves is-identity for non-JSON Python objects. You can pass class instances, Pydantic models, and even live DB connections through StopEvent.result and get the same object back on the other side.

Multi-Step Workflows

Chain steps together using custom event subclasses. Each step declares which events it accepts via its type annotation.

import asyncio
from blazen import Workflow, step, Event, StopEvent, Context

class FetchedEvent(Event):
    text: str
    source: str

class AnalyzedEvent(Event):
    summary: str

@step
async def fetch(ctx: Context, ev: Event):
    # ev is a StartEvent with url=...
    text = f"Content from {ev.url}"
    return FetchedEvent(text=text, source=ev.url)

@step
async def analyze(ctx: Context, ev: FetchedEvent):
    summary = f"Analysis of: {ev.text}"
    return AnalyzedEvent(summary=summary)

@step
async def report(ctx: Context, ev: AnalyzedEvent):
    return StopEvent(result={"summary": ev.summary})

async def main():
    wf = Workflow("pipeline", [fetch, analyze, report])
    handler = await wf.run(url="https://example.com")
    result = await handler.result()
    print(result.result)  # {"summary": "Analysis of: Content from https://example.com"}

asyncio.run(main())

Event Streaming

Stream intermediate events from a running workflow in real time using ctx.write_event_to_stream().

import asyncio
from blazen import Workflow, step, Event, StopEvent, Context

class ProgressEvent(Event):
    step_num: int
    message: str

@step
async def work(ctx: Context, ev: Event):
    for i in range(3):
        ctx.write_event_to_stream(ProgressEvent(step_num=i, message=f"Processing {i}"))
    return StopEvent(result="done")

async def main():
    wf = Workflow("streamer", [work])
    handler = await wf.run()

    async for event in handler.stream_events():
        print(event.event_type, event.step_num, event.message)

    result = await handler.result()
    print(result.result)  # "done"

asyncio.run(main())

write_event_to_stream() publishes to an external broadcast stream. Consumers read it with async for event in handler.stream_events(). These events are not routed through the step graph -- they are for external observation only.

LLM Integration

Blazen includes a built-in multi-provider LLM client. All providers share the same CompletionModel / ChatMessage interface. Responses are returned as typed CompletionResponse objects.

ChatMessage, Role, and CompletionResponse

import os
from blazen import CompletionModel, ChatMessage, Role, CompletionResponse, ProviderOptions

model = CompletionModel.openrouter(options=ProviderOptions(api_key=os.environ["OPENROUTER_API_KEY"], model="openai/gpt-4o"))
response: CompletionResponse = await model.complete([
    ChatMessage.system("You are helpful."),
    ChatMessage.user("What is 2+2?"),
], temperature=0.7, max_tokens=256)

# Typed attribute access
print(response.content)        # "4"
print(response.model)          # model name used
print(response.finish_reason)  # "stop", "tool_calls", etc.
print(response.tool_calls)     # list[ToolCall] or None
print(response.usage)          # TokenUsage with .prompt_tokens, .completion_tokens, .total_tokens

# Dict-style access also works for backwards compatibility
print(response["content"])

Role Enum

from blazen import Role

Role.SYSTEM     # "system"
Role.USER       # "user"
Role.ASSISTANT  # "assistant"
Role.TOOL       # "tool"

# Use with ChatMessage constructor
msg = ChatMessage(role=Role.USER, content="Hello")

Multimodal Messages

Send images alongside text using multimodal factory methods:

from blazen import ChatMessage, ContentPart

# Image from URL
msg = ChatMessage.user_image_url("https://example.com/photo.jpg", "What's in this image?")

# Image from base64
msg = ChatMessage.user_image_base64(base64_data, "image/png", "Describe this.")

# Multiple content parts
msg = ChatMessage.user_parts([
    ContentPart.text(text="Compare these two images:"),
    ContentPart.image_url(url="https://example.com/a.jpg", media_type="image/jpeg"),
    ContentPart.image_url(url="https://example.com/b.jpg", media_type="image/jpeg"),
])

Media Sources

For APIs that take generic media inputs (vision, OCR, audio-paired pipelines), use ImageSource directly or its alias MediaSource. The alias is provided so callers can spell intent at the call site without changing the underlying type.

from blazen import ImageSource, MediaSource  # MediaSource is ImageSource

src1 = ImageSource.url("https://example.com/photo.jpg")
src2 = MediaSource.path("/tmp/scan.png")        # same class, ergonomic alias
src3 = MediaSource.base64(b64_bytes, "image/png")

Supported Providers

Provider Constructor Default Model
OpenAI CompletionModel.openai(options=ProviderOptions(api_key=key, model="gpt-4o")) gpt-4o
Anthropic CompletionModel.anthropic(options=ProviderOptions(api_key=key, model="claude-sonnet-4-20250514")) claude-sonnet-4-20250514
Google Gemini CompletionModel.gemini(options=ProviderOptions(api_key=key, model="gemini-2.0-flash")) gemini-2.0-flash
Azure OpenAI CompletionModel.azure(options=AzureOptions(api_key=key, resource_name="...", deployment_name="...")) (deployment)
OpenRouter CompletionModel.openrouter(options=ProviderOptions(api_key=key, model="...")) --
Groq CompletionModel.groq(options=ProviderOptions(api_key=key, model="...")) --
Together AI CompletionModel.together(options=ProviderOptions(api_key=key, model="...")) --
Mistral CompletionModel.mistral(options=ProviderOptions(api_key=key, model="...")) --
DeepSeek CompletionModel.deepseek(options=ProviderOptions(api_key=key, model="...")) --
Fireworks CompletionModel.fireworks(options=ProviderOptions(api_key=key, model="...")) --
Perplexity CompletionModel.perplexity(options=ProviderOptions(api_key=key, model="...")) --
xAI (Grok) CompletionModel.xai(options=ProviderOptions(api_key=key, model="...")) --
Cohere CompletionModel.cohere(options=ProviderOptions(api_key=key, model="...")) --
AWS Bedrock CompletionModel.bedrock(options=BedrockOptions(api_key=key, region="...", model="...")) --
fal.ai CompletionModel.fal(options=FalOptions(api_key=key, model="...")) --

Using LLMs in Workflows

import os
from blazen import Workflow, step, Event, StopEvent, Context, CompletionModel, ChatMessage, ProviderOptions

class AnswerEvent(Event):
    answer: str

@step
async def ask_llm(ctx: Context, ev: Event):
    model = CompletionModel.anthropic(options=ProviderOptions(api_key=os.environ["ANTHROPIC_API_KEY"], model="claude-sonnet-4-20250514"))
    response = await model.complete([
        ChatMessage.system("Answer concisely."),
        ChatMessage.user(ev.prompt),
    ], max_tokens=256)
    return AnswerEvent(answer=response.content)  # typed attribute access

@step
async def format_answer(ctx: Context, ev: AnswerEvent):
    return StopEvent(result={"answer": ev.answer})

async def main():
    wf = Workflow("llm-pipeline", [ask_llm, format_answer])
    handler = await wf.run(prompt="Explain gravity in one sentence.")
    result = await handler.result()
    print(result.result)

Local Inference

Blazen ships first-class bindings for several local-inference backends. They share a common shape: build an engine, call generate(...) for one-shot output, or stream(...) for an async iterator of typed chunks. Each backend has its own message and result types so you can keep them straight in mixed pipelines.

mistral.rs

from blazen import ChatMessageInput, ChatRole, InferenceResult, InferenceChunkStream

messages = [
    ChatMessageInput(role=ChatRole.SYSTEM, content="You are concise."),
    ChatMessageInput(role=ChatRole.USER, content="Explain entropy."),
]

result: InferenceResult = await engine.generate(messages, max_tokens=256)
print(result.text)

stream: InferenceChunkStream = await engine.stream(messages)
async for chunk in stream:
    if chunk.delta:
        print(chunk.delta, end="", flush=True)
    if chunk.reasoning_delta:
        ...  # optional reasoning trace
    if chunk.tool_calls:
        for call in chunk.tool_calls:  # list[InferenceToolCall]
            ...
    if chunk.finish_reason:
        break

Vision-capable models accept InferenceImage parts built from InferenceImageSource (URL, path, or base64). InferenceUsage is attached to both InferenceResult and the final chunk.

llama.cpp

Symmetric API with its own type family so the two backends never alias:

from blazen import (
    LlamaCppChatMessageInput,
    LlamaCppChatRole,
    LlamaCppInferenceResult,
    LlamaCppInferenceChunkStream,
)

messages = [
    LlamaCppChatMessageInput(role=LlamaCppChatRole.USER, content="Hi!"),
]

result: LlamaCppInferenceResult = await engine.generate(messages)
print(result.text, result.usage)  # usage is LlamaCppInferenceUsage

stream: LlamaCppInferenceChunkStream = await engine.stream(messages)
async for chunk in stream:  # LlamaCppInferenceChunk
    if chunk.delta:
        print(chunk.delta, end="", flush=True)

candle

Candle returns a CandleInferenceResult from its non-streaming path:

from blazen import CandleInferenceResult

result: CandleInferenceResult = await engine.generate(prompt="Once upon a time", max_tokens=128)
print(result.text)

Progress Reporting

Long downloads and model loads accept a progress callback. Subclass ProgressCallback and override on_progress. The default implementation is a no-op, so partial overrides are safe.

from blazen import ProgressCallback

class TqdmProgress(ProgressCallback):
    def __init__(self):
        super().__init__()
        self._bar = None

    def on_progress(self, downloaded: int, total: int | None) -> None:
        # total is None when the upstream doesn't report Content-Length
        if total is not None:
            pct = 100.0 * downloaded / total
            print(f"\r{pct:5.1f}%  {downloaded}/{total} bytes", end="", flush=True)
        else:
            print(f"\r{downloaded} bytes", end="", flush=True)

# Pass instances to APIs that accept callbacks (model-cache download paths, etc.)
await cache.download(model_id="...", progress=TqdmProgress())

Telemetry

Blazen exposes opt-in telemetry initializers. Each one is gated behind a Cargo feature on the underlying wheel (langfuse, otlp, prometheus); calling an initializer for a feature that wasn't compiled in raises an UnsupportedError.

Langfuse

from blazen import LangfuseConfig, init_langfuse

init_langfuse(LangfuseConfig(public_key="pk-...", secret_key="sk-...", host="https://cloud.langfuse.com"))

OpenTelemetry (OTLP)

from blazen import OtlpConfig, init_otlp

init_otlp(OtlpConfig(endpoint="http://localhost:4317", service_name="my-app"))

Prometheus

from blazen import init_prometheus

init_prometheus(9090)  # exposes /metrics on the given port

Branching / Fan-Out

Return a list of events from a step to dispatch multiple events simultaneously. Each event is routed independently to steps that accept its type.

from blazen import Workflow, step, Event, StopEvent, Context

class TaskEvent(Event):
    task_id: int
    payload: str

@step
async def fan_out(ctx: Context, ev: Event):
    return [
        TaskEvent(task_id=1, payload="first"),
        TaskEvent(task_id=2, payload="second"),
        TaskEvent(task_id=3, payload="third"),
    ]

@step
async def process_task(ctx: Context, ev: TaskEvent):
    # Called once per TaskEvent
    return StopEvent(result={"task_id": ev.task_id, "done": True})

Side-Effect Steps

A step can return None and use ctx.send_event() to route events through the internal step graph without returning them. This is useful for steps that perform side effects (logging, saving state) before forwarding.

from blazen import Workflow, step, Event, StopEvent, Context

class ProcessedEvent(Event):
    data: str

@step
async def log_and_forward(ctx: Context, ev: Event):
    ctx.set("received_at", "2025-01-01T00:00:00Z")
    ctx.send_event(ProcessedEvent(data=ev.payload))
    return None  # no direct return -- event sent via ctx

@step
async def finish(ctx: Context, ev: ProcessedEvent):
    received = ctx.get("received_at")
    return StopEvent(result={"data": ev.data, "received_at": received})

ctx.send_event() routes the event through the internal step registry (to steps whose accepts matches the event type). This is different from ctx.write_event_to_stream() which publishes to the external broadcast stream.

Pause and Resume

Snapshot a running workflow and resume it later -- useful for long-running processes, human-in-the-loop patterns, or persisting state across restarts.

# Pause: signal pause, then capture workflow state as JSON
handler = await wf.run(prompt="Hello")
handler.pause()
snapshot_json = await handler.snapshot()
# Save snapshot_json to disk, database, etc.

# Resume: restore from snapshot with the same steps
handler = await Workflow.resume(snapshot_json, [step1, step2])
await handler.resume_in_place()
result = await handler.result()

Note on ctx.session and pause/resume. Values in ctx.session are live references and are deliberately excluded from snapshots. If you store live objects there and then call handler.snapshot(), the workflow's session_pause_policy decides what happens: the default (pickle_or_error) attempts to pickle each entry into the snapshot and raises a clear error if any entry can't be serialised. For workflows that explicitly want ephemeral runs, use ctx.state for anything that must survive pause/resume, and ctx.session for everything else.

Errors

All Blazen-raised exceptions inherit from BlazenError, so a single except BlazenError catches everything the SDK throws while leaving unrelated Exceptions to propagate. Catch narrower bases when you want to react differently per category.

Base classes

Class Raised when
BlazenError Root of the hierarchy.
AuthError Missing/invalid credentials.
RateLimitError Provider rate-limited the request. Inspect retry_after_ms.
TimeoutError Request or workflow exceeded its deadline.
ValidationError Bad input shape (events, options, snapshots).
ContentPolicyError Provider refused the prompt or output for policy reasons.
ProviderError Generic upstream/provider failure. Base for backend-specific errors.
UnsupportedError Feature not compiled into this wheel (e.g. telemetry without the feature).
ComputeError Local-inference compute failure (CUDA OOM, kernel error, etc.).
MediaError Decode/encode failure for image/audio inputs.

Per-backend ProviderError subclasses

These are feature-gated at runtime — they exist on blazen but are only raised when the corresponding backend is bundled in the wheel.

Class Backend
LlamaCppError llama.cpp
CandleLlmError candle (LLM)
CandleEmbedError candle (embeddings)
MistralRsError mistral.rs
WhisperError whisper.cpp
PiperError piper
DiffusionError diffusion (image generation)
FastEmbedError fastembed
TractError tract

Structured attributes

ProviderError (and every per-backend subclass) carries structured fields you can read in except blocks:

  • provider — short provider name ("openai", "llama_cpp", ...)
  • status — HTTP status code if applicable, else None
  • endpoint — request URL/route if applicable
  • request_id — provider-supplied request id if available
  • detail — human-readable detail string
  • raw_body — raw response body as bytes if captured
  • retry_after_ms — milliseconds the provider asked you to wait (mirrored on RateLimitError)
from blazen import (
    BlazenError, AuthError, RateLimitError, ProviderError,
    LlamaCppError, MistralRsError, ContentPolicyError,
)

try:
    response = await model.complete(messages)
except AuthError as e:
    print("bad key:", e)
except RateLimitError as e:
    print(f"slow down; retry in {e.retry_after_ms} ms")
except ContentPolicyError:
    print("provider refused the prompt")
except (LlamaCppError, MistralRsError) as e:
    # Local-inference specific handling
    print(f"local backend {e.provider} failed: {e.detail}")
except ProviderError as e:
    print(f"upstream {e.provider} returned {e.status}: {e.detail}")
except BlazenError:
    raise

Context API

Steps share state through the Context object. Every method on Context is synchronous -- no await needed.

Values are stored using a 4-tier dispatch:

  1. bytes / bytearray -- raw binary (survives snapshots)
  2. JSON-serializable (dict, list, str, int, float, bool, None) -- JSON (survives snapshots)
  3. Picklable objects (Pydantic models, dataclasses, etc.) -- pickled automatically (survives snapshots)
  4. Unpicklable objects (DB connections, file handles, sockets) -- live in-process reference (same-process only, excluded from snapshots)

ctx.get returns the original Python type for all four tiers.

Method Description
ctx.set(key, value) Store a JSON-serializable value.
ctx.get(key) Retrieve a value (returns None if missing).
ctx.set_bytes(key, data) Store raw binary data (bytes). No serialization requirement.
ctx.get_bytes(key) Retrieve raw binary data (returns None if missing).
ctx.send_event(event) Route an event through the internal step graph.
ctx.write_event_to_stream(event) Publish an event to the external broadcast stream.
ctx.run_id() Get the UUID string for the current workflow run.
@step
async def example(ctx: Context, ev: Event):
    ctx.set("counter", 42)              # synchronous
    val = ctx.get("counter")            # synchronous, returns 42
    run = ctx.run_id()                  # synchronous, returns UUID string
    ctx.send_event(SomeEvent(x=1))      # synchronous, routes internally
    ctx.write_event_to_stream(SomeEvent(x=1))  # synchronous, broadcasts externally
    return None

State vs Session namespaces

Alongside the smart-routing ctx.set / ctx.get shortcuts, Context exposes two explicit namespaces so you can make intent clear at the call site:

  • ctx.state -- persistable values (survives pause() / resume() and checkpoint stores). Routes through the same 4-tier dispatch as ctx.set.
  • ctx.session -- live in-process references. Identity is preserved within a single workflow run -- ctx.session["conn"] returns the same Python object across steps. Deliberately excluded from snapshots.
import sqlite3
from blazen import step, Context, StartEvent, StopEvent

@step
async def setup(ctx: Context, ev: StartEvent) -> StopEvent:
    # Persistable JSON state
    ctx.state["input_path"] = "data.csv"
    ctx.state["row_count"] = 0

    # Live in-process references -- identity preserved
    conn = sqlite3.connect(":memory:")
    ctx.session["db"] = conn

    # Same object on every access
    assert ctx.session["db"] is conn

    return StopEvent(result={"ok": True})

Both namespaces support the dict protocol (__setitem__, __getitem__, __contains__, keys).

Binary Storage

set_bytes / get_bytes let you store raw binary data with no serialization requirement. Any type can be stored by converting to bytes yourself (e.g., pickle, msgpack, protobuf). Binary data persists through pause/resume/checkpoint.

import pickle

@step
async def store_model(ctx: Context, ev: Event):
    # Store arbitrary data as bytes
    model_data = pickle.dumps({"weights": [1.0, 2.0, 3.0]})
    ctx.set_bytes("model", model_data)
    return NextEvent()

@step
async def load_model(ctx: Context, ev: NextEvent):
    raw = ctx.get_bytes("model")
    model = pickle.loads(raw)
    return StopEvent(result=model)

API Reference

Class / Function Description
Event(event_type, **kwargs) Base event class. Subclass it: class MyEvent(Event) auto-sets event_type to class name. Direct attribute access: ev.name. Also has ev.to_dict() and ev.event_type.
StartEvent(**kwargs) Emitted by wf.run(**kwargs). Steps with ev: Event or no annotation accept this.
StopEvent(**kwargs) Terminates the workflow. Access the result via result.result.
Context Shared typed storage, event emission, and stream publishing. Use ctx.state for persistable values, ctx.session for live in-process references. Smart-routing ctx.set / ctx.get shortcuts still work. Methods: set, get, set_bytes, get_bytes, send_event, write_event_to_stream, run_id. All synchronous.
@step Decorator for workflow steps. Infers accepts from the ev parameter type annotation. Supports async def and plain def. May also be called as @step(accepts=[...], emits=[...], max_concurrency=N).
Workflow(name, steps, timeout=None) Validated workflow graph. timeout is in seconds (default: 300).
await wf.run(**kwargs) Execute the workflow. Returns a WorkflowHandler. Kwargs become the StartEvent payload.
WorkflowHandler Handle to a running workflow: await handler.result(), async for ev in handler.stream_events(), handler.pause(), await handler.snapshot(), await handler.resume_in_place(), await handler.respond_to_input(request_id, response), await handler.abort().
await Workflow.resume(snapshot_json, steps, timeout=None) Resume a paused workflow from a JSON snapshot. Returns a WorkflowHandler.
CompletionModel.<provider>(options=ProviderOptions(...)) LLM provider. Pass a typed options struct (ProviderOptions, AzureOptions, BedrockOptions, or FalOptions) via options=. Providers: openai, anthropic, gemini, azure, openrouter, groq, together, mistral, deepseek, fireworks, perplexity, xai, cohere, bedrock, fal.
await model.complete(messages, ...) Chat completion. Returns a typed CompletionResponse.
ChatMessage(role=, content=, parts=) Chat message. Constructor with keyword args (role defaults to "user"). Static factories: .system(), .user(), .assistant(), .tool(), .user_image_url(), .user_image_base64(), .user_parts().
Role Role enum: Role.SYSTEM, Role.USER, Role.ASSISTANT, Role.TOOL.
CompletionResponse Typed response: .content, .model, .finish_reason, .tool_calls, .usage. Also supports dict-style response["content"].
ToolCall Tool call object: .id, .name, .arguments.
TokenUsage Token usage: .prompt_tokens, .completion_tokens, .total_tokens.
ContentPart Multimodal content part: .text(text=...), .image_url(url=..., media_type=...), .image_base64(data=..., media_type=...).

Documentation

Full docs: blazen.dev

Source: github.com/ZachHandley/Blazen

License

MPL-2.0 -- see LICENSE for details.

Author: Zach Handley

Project details


Download files

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

Source Distribution

blazen-0.5.0.tar.gz (1.0 MB view details)

Uploaded Source

Built Distributions

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

blazen-0.5.0-cp314-cp314-win_amd64.whl (27.9 MB view details)

Uploaded CPython 3.14Windows x86-64

blazen-0.5.0-cp314-cp314-musllinux_1_2_x86_64.whl (28.9 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

blazen-0.5.0-cp314-cp314-musllinux_1_2_aarch64.whl (21.4 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ARM64

blazen-0.5.0-cp314-cp314-manylinux_2_34_x86_64.whl (32.7 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.34+ x86-64

blazen-0.5.0-cp314-cp314-manylinux_2_34_aarch64.whl (31.9 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.34+ ARM64

blazen-0.5.0-cp314-cp314-macosx_14_0_arm64.whl (26.5 MB view details)

Uploaded CPython 3.14macOS 14.0+ ARM64

blazen-0.5.0-cp313-cp313-win_amd64.whl (27.9 MB view details)

Uploaded CPython 3.13Windows x86-64

blazen-0.5.0-cp313-cp313-musllinux_1_2_x86_64.whl (28.9 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

blazen-0.5.0-cp313-cp313-musllinux_1_2_aarch64.whl (21.4 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

blazen-0.5.0-cp313-cp313-manylinux_2_34_x86_64.whl (32.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.34+ x86-64

blazen-0.5.0-cp313-cp313-manylinux_2_34_aarch64.whl (31.9 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.34+ ARM64

blazen-0.5.0-cp313-cp313-macosx_14_0_arm64.whl (26.6 MB view details)

Uploaded CPython 3.13macOS 14.0+ ARM64

blazen-0.5.0-cp312-cp312-win_amd64.whl (27.9 MB view details)

Uploaded CPython 3.12Windows x86-64

blazen-0.5.0-cp312-cp312-musllinux_1_2_x86_64.whl (28.9 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

blazen-0.5.0-cp312-cp312-musllinux_1_2_aarch64.whl (21.4 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

blazen-0.5.0-cp312-cp312-manylinux_2_34_x86_64.whl (32.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ x86-64

blazen-0.5.0-cp312-cp312-manylinux_2_34_aarch64.whl (31.9 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ ARM64

blazen-0.5.0-cp312-cp312-macosx_14_0_arm64.whl (26.6 MB view details)

Uploaded CPython 3.12macOS 14.0+ ARM64

blazen-0.5.0-cp311-cp311-win_amd64.whl (27.9 MB view details)

Uploaded CPython 3.11Windows x86-64

blazen-0.5.0-cp311-cp311-musllinux_1_2_x86_64.whl (28.9 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

blazen-0.5.0-cp311-cp311-musllinux_1_2_aarch64.whl (21.4 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

blazen-0.5.0-cp311-cp311-manylinux_2_34_x86_64.whl (32.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ x86-64

blazen-0.5.0-cp311-cp311-manylinux_2_34_aarch64.whl (31.9 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ ARM64

blazen-0.5.0-cp311-cp311-macosx_14_0_arm64.whl (26.6 MB view details)

Uploaded CPython 3.11macOS 14.0+ ARM64

blazen-0.5.0-cp310-cp310-win_amd64.whl (27.9 MB view details)

Uploaded CPython 3.10Windows x86-64

blazen-0.5.0-cp310-cp310-musllinux_1_2_x86_64.whl (28.9 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

blazen-0.5.0-cp310-cp310-musllinux_1_2_aarch64.whl (21.4 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

blazen-0.5.0-cp310-cp310-manylinux_2_34_x86_64.whl (32.7 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.34+ x86-64

blazen-0.5.0-cp310-cp310-manylinux_2_34_aarch64.whl (31.9 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.34+ ARM64

blazen-0.5.0-cp310-cp310-macosx_14_0_arm64.whl (26.6 MB view details)

Uploaded CPython 3.10macOS 14.0+ ARM64

File details

Details for the file blazen-0.5.0.tar.gz.

File metadata

  • Download URL: blazen-0.5.0.tar.gz
  • Upload date:
  • Size: 1.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0.tar.gz
Algorithm Hash digest
SHA256 ca4a4266b3117e649c70045cc53ed8682c178053007fa95d9243148955f78bc3
MD5 031a02c788867a059ee4f94df723f073
BLAKE2b-256 f450bcf5c57a76bc04a46dfbd75b60dbf49c3cccb0930c37893a5e1fd96a3d67

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 27.9 MB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 5dfce6a1b95431f4c19746d7b8dbb5895e9d14379d7068706b07441f6b89e7cb
MD5 8092aa06ab05b034e0eb54f638b6643b
BLAKE2b-256 40a5e6678c6cbb5de2930ad61650cf145ccd366deabd519e01a2f5455c2dcbe9

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp314-cp314-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 28.9 MB
  • Tags: CPython 3.14, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 82183721cddce0168af2ec5243ccf1b42417d2405d278e29cc7a2004c2d39acc
MD5 07f065d07de003a6baf4034da9b3fac4
BLAKE2b-256 fc7cb2dcf05500dd327244c5760ecc9e27a9375e05bdb7b95fb1329aca1508d1

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp314-cp314-musllinux_1_2_aarch64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp314-cp314-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 21.4 MB
  • Tags: CPython 3.14, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp314-cp314-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 b620696cd32377a08078783ffc09271a65f0b2bade58b594d7b55b2e4d8a6823
MD5 8894c5904ef080884b1a09f7a10520d5
BLAKE2b-256 997cbeaba5e18d3cc958f6c0ccf87e249952853899bc39add45a9eb1a8b4edb4

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp314-cp314-manylinux_2_34_x86_64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp314-cp314-manylinux_2_34_x86_64.whl
  • Upload date:
  • Size: 32.7 MB
  • Tags: CPython 3.14, manylinux: glibc 2.34+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp314-cp314-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 5d6403e5bd6f0acabc9b504f004966755d8b6877f73fb569117eed7be5df8985
MD5 b810938b6fdc6ff0782671bbcd004310
BLAKE2b-256 81702720d27bddcf8bd327e5554dfde108c6374bc3491f595df046afecbd4f07

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp314-cp314-manylinux_2_34_aarch64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp314-cp314-manylinux_2_34_aarch64.whl
  • Upload date:
  • Size: 31.9 MB
  • Tags: CPython 3.14, manylinux: glibc 2.34+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp314-cp314-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 f35ded8b84b6e27fde07d578b464b865311e42ef9f28dedd766960b3d6b2f903
MD5 5bde7c735c9cad2004db02d91bf5dcee
BLAKE2b-256 5688a756d348d8e757f3efe514af118394c8bbb0f42b1df57c060dccc11b9409

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp314-cp314-macosx_14_0_arm64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp314-cp314-macosx_14_0_arm64.whl
  • Upload date:
  • Size: 26.5 MB
  • Tags: CPython 3.14, macOS 14.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp314-cp314-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 6a02c4c73681092df2f5a23cf563ac2e88e965edf95b4544c02d89dfccdfbdfd
MD5 36244ce893dcda3311b58f94d0cd8923
BLAKE2b-256 b591cfd261d7efe3449e2c34a6cd8e824e6580e2f50522346d8f6ad741d4079c

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 27.9 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 c21750fe23bc82b3879fc44a37290563904b132b2af4440d81010b1b31e73b24
MD5 88c920199d049daff5d74c622ea7363f
BLAKE2b-256 3c4186ebba8ae1bc1aaf4cc53efecebc060f3cc1ee9f7f62118926760f7516bd

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp313-cp313-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 28.9 MB
  • Tags: CPython 3.13, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 341aebb1a846cd0ac7a6f1d55bc6e50b6fa8ff1808245e491eacef2032103af1
MD5 68db5d7704c461e352b0eeb07b510b24
BLAKE2b-256 ffc29bd7b60a6faa49b49cc7c2ca5c04e11910bcb7b88e98901503c3c1948869

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp313-cp313-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 21.4 MB
  • Tags: CPython 3.13, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 7f8d6274b03fd5e4e745e4b3b8cebc93d34eef3e6e978269dfae375b8a177b0d
MD5 75e72030041f5fd060894aa6c672ccdf
BLAKE2b-256 e87f2242742f97654b4bb5c8b04c01bc4c9b6a11e4dba04a11de052245e51008

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp313-cp313-manylinux_2_34_x86_64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp313-cp313-manylinux_2_34_x86_64.whl
  • Upload date:
  • Size: 32.7 MB
  • Tags: CPython 3.13, manylinux: glibc 2.34+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp313-cp313-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 570bed08cde5db3653028c38d04b73bcc88a387bcc2a40e85ce6655dfbb64dad
MD5 dbbc2141533cfbd877a4bc05d19e5495
BLAKE2b-256 494734d7701a03f19c88fba69f504e34214615e2794114c90c38c9ac4a9d43c4

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp313-cp313-manylinux_2_34_aarch64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp313-cp313-manylinux_2_34_aarch64.whl
  • Upload date:
  • Size: 31.9 MB
  • Tags: CPython 3.13, manylinux: glibc 2.34+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp313-cp313-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 0e7de0ae1fcca39389c4a83bd14f24fddf0e30d54fce9f9b8edfaf1038a3453f
MD5 7d40ae2cc4ba2ac5333ce61bca8da7b8
BLAKE2b-256 193c9aaf7d77189737411369639048d590bb3ae5185cd9b2a05e09371d9039be

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp313-cp313-macosx_14_0_arm64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp313-cp313-macosx_14_0_arm64.whl
  • Upload date:
  • Size: 26.6 MB
  • Tags: CPython 3.13, macOS 14.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp313-cp313-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 a8929f6d4cfb651a3b1259ac77b594656c856939592175755284efa86b533b7d
MD5 724a1138718117b910368a3d03cba7cc
BLAKE2b-256 f50927ba1bbd2fca8d4cf03e79993df081147b5299bf3fa40e74ba9ded1009d5

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 27.9 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 e1b8a46a7bb57021c1032ce9c5b4934500b9fc7d111f90ed2525337574a89181
MD5 2ba4be9f483caa9092835c047fd52eee
BLAKE2b-256 83b48c54ad4e36129f2cbc7e2fcf48e36381b985b1445695e5b24a8b18c8d6ba

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp312-cp312-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 28.9 MB
  • Tags: CPython 3.12, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 c38ede962256c689bba6a6be51c7a920c0a982aa6da828e43a833a5c281c70f6
MD5 3ffa27aadfeaf85d20b3ce78367b64c7
BLAKE2b-256 a93820664f9058fbf98edc1f444db81a685b093a265b9df2b3c4e7a9fe4ba23a

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp312-cp312-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 21.4 MB
  • Tags: CPython 3.12, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 0142440f4eb2e570ef32a0a96ad54a83c15f42962f01981aa32716031588f5b0
MD5 c69d5e09350f5a90823f4649a2a502dc
BLAKE2b-256 14a58064c867aef85a2da09b60cb9d3c0988c391a200b1ea03cc83478e40a896

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp312-cp312-manylinux_2_34_x86_64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp312-cp312-manylinux_2_34_x86_64.whl
  • Upload date:
  • Size: 32.7 MB
  • Tags: CPython 3.12, manylinux: glibc 2.34+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp312-cp312-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 a40b980dcf77f75ba849eb997146429492f4083c90a0abd88cb20741050d3328
MD5 3e1b1699fa1108ea13997eb45ee044d5
BLAKE2b-256 ce7458c64725c6a4e6758796d7fa37673d33d63c1f22f5d24d28c1a54198033d

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp312-cp312-manylinux_2_34_aarch64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp312-cp312-manylinux_2_34_aarch64.whl
  • Upload date:
  • Size: 31.9 MB
  • Tags: CPython 3.12, manylinux: glibc 2.34+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp312-cp312-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 56f1fbcd0c2abead4ca01f2cb37868825a772dd3809ded0d2280c914e75b1dc9
MD5 d57af59f8df0820a26857f7fccd07e9b
BLAKE2b-256 33ff581b26f091c74209be8c31a6c2cedd699b3ab0c9c8a9eaaaa14e0b21b621

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp312-cp312-macosx_14_0_arm64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp312-cp312-macosx_14_0_arm64.whl
  • Upload date:
  • Size: 26.6 MB
  • Tags: CPython 3.12, macOS 14.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp312-cp312-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 87b5199a53e1fea97af463f08894955197d4519b4c568cf64e5381bdcf176411
MD5 d305b5b3b2a2e05c6cdc00fab9eeed04
BLAKE2b-256 59004830a1300a48c687900a77809b17c221d6d65a534257d17e42f26f2df0b5

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 27.9 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 9f61a4d0bd08df467d456bda29c09ce90b52ffad2b4a7e99281b756a0396a0a0
MD5 253ec6e69bad4c410aa03657119f4d38
BLAKE2b-256 0f3d7ceedbda908cec71d1e1f2f83ad1d52ee5f29367e0e9c5b8b24b50701ef8

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp311-cp311-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 28.9 MB
  • Tags: CPython 3.11, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 da47776d2eada6d45274f68dbab244b5c110d0a7c14b416d2dc33d2e82be856d
MD5 793e1efc4335f9634d0ce65d0b8550c9
BLAKE2b-256 8702334dc2afd9ed8cad31240042e14b0a75385735e28047ebf79ebf7b81889f

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp311-cp311-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 21.4 MB
  • Tags: CPython 3.11, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 e0aac1640f107643b389566277502a50cf180ff84f38a2f520c991482b31025c
MD5 a2ce6b01eee2da634e5f1307a9fdbeb9
BLAKE2b-256 419ad5b65157e58531ac368a1d50e3cad5e6e2aefdb177e9c80e61ca641f58db

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp311-cp311-manylinux_2_34_x86_64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp311-cp311-manylinux_2_34_x86_64.whl
  • Upload date:
  • Size: 32.7 MB
  • Tags: CPython 3.11, manylinux: glibc 2.34+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 c94206481d13ae625ae0098dc800a95669336454d061c0a1bc76e9f5a00a5ac6
MD5 5d23e15d32dc4473e4d335831b5dd7c4
BLAKE2b-256 f9dd57c0ef5c4899a775114a7c0cdbdf19315ffe06f509d7e344d46ac122815f

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp311-cp311-manylinux_2_34_aarch64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp311-cp311-manylinux_2_34_aarch64.whl
  • Upload date:
  • Size: 31.9 MB
  • Tags: CPython 3.11, manylinux: glibc 2.34+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp311-cp311-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 8352805976d37299c0bb0d2548249972820e61a1763fc8179bf162f382a5fd01
MD5 f5be0a4807b613a5f43b4568b02f59ee
BLAKE2b-256 0b5e61150e4c874043254b290f99f240ed752dd782ed14aca4ef9a1e4821f6de

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp311-cp311-macosx_14_0_arm64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp311-cp311-macosx_14_0_arm64.whl
  • Upload date:
  • Size: 26.6 MB
  • Tags: CPython 3.11, macOS 14.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp311-cp311-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 1551bfb6fba03eda0ce617e0761b802a8c911f67bc7cbe5dc7626c2d43613074
MD5 6001684cca23bb3909871350fbc85c13
BLAKE2b-256 1a9e38bdd8f1efa830a0d51f03398735b39464afd3a676e7b49198f016ec1c93

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 27.9 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 19066196676e54e1ed171543d9ad6c58afa8952abf928c506f3edb974579a2ab
MD5 bb92a6dd1cc8df24516ff276cfb18a1f
BLAKE2b-256 62ee94bbb66d9642ce26ec0e86876a8c8b8b1d0a3e64f32c56150ca6d7f2d810

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp310-cp310-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 28.9 MB
  • Tags: CPython 3.10, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ef57a38b059c4996ba075cd0848c3545c1dd82bc82615428f116fc3c23a3762b
MD5 6b7b8ecc583a7ae0da51fff6248726b9
BLAKE2b-256 02a6d4372dc2aed8fbd0e75a3e53680ea12a17eef0812e7ee61ebe9ae3c3c065

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp310-cp310-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 21.4 MB
  • Tags: CPython 3.10, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 cf175eb924edbc574870626cd0063fb6e260c1b81429e3fe05219979548314a7
MD5 bf6c1aa7cc9535f1896b5a859011fa28
BLAKE2b-256 37cfd4f19e1c75e5542876fde6e4d797d083a0f00e277225800c1c7b3e9501b5

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp310-cp310-manylinux_2_34_x86_64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp310-cp310-manylinux_2_34_x86_64.whl
  • Upload date:
  • Size: 32.7 MB
  • Tags: CPython 3.10, manylinux: glibc 2.34+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp310-cp310-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 d17a8ca28eed7ba7d9dc8506573e90bc94d2712e0bdcb4dd70ea7b763c5c1901
MD5 0f9a8d67d74f8507d6a7578a05877fd3
BLAKE2b-256 20d4454157a5bf25e9805dd22b512a60d869b3869420b08fe0a7ff132ba8d1bb

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp310-cp310-manylinux_2_34_aarch64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp310-cp310-manylinux_2_34_aarch64.whl
  • Upload date:
  • Size: 31.9 MB
  • Tags: CPython 3.10, manylinux: glibc 2.34+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp310-cp310-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 a2224c4d4a47e9feb491e99c98d5953e3c252b1fd7781aa905c50acef159c14f
MD5 875fb648137ab111dee3769d5a6c65b8
BLAKE2b-256 500985f2a8bc1a0a1266e5bcfc5663c1dfc7a179290a9033529d27317e8e142a

See more details on using hashes here.

File details

Details for the file blazen-0.5.0-cp310-cp310-macosx_14_0_arm64.whl.

File metadata

  • Download URL: blazen-0.5.0-cp310-cp310-macosx_14_0_arm64.whl
  • Upload date:
  • Size: 26.6 MB
  • Tags: CPython 3.10, macOS 14.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for blazen-0.5.0-cp310-cp310-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 bd1a557c4d754ac670ff8826b5b63805a1dfa4dca1da5ce36844691a7a5a00b7
MD5 09b1f73e08fc5e6ef77d8593aaacafe0
BLAKE2b-256 eeedf8e195076b945910b01a31758ac7f3ca4871bd03def024859b3134a8d2c2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page