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: AGPL-3.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

AGPL-3.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.1.157.tar.gz (975.9 kB view details)

Uploaded Source

Built Distributions

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

blazen-0.1.157-cp314-cp314-win_amd64.whl (27.5 MB view details)

Uploaded CPython 3.14Windows x86-64

blazen-0.1.157-cp314-cp314-musllinux_1_2_x86_64.whl (28.5 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

blazen-0.1.157-cp314-cp314-musllinux_1_2_aarch64.whl (21.1 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ARM64

blazen-0.1.157-cp314-cp314-manylinux_2_34_x86_64.whl (32.4 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.34+ x86-64

blazen-0.1.157-cp314-cp314-manylinux_2_34_aarch64.whl (31.6 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.34+ ARM64

blazen-0.1.157-cp314-cp314-macosx_14_0_arm64.whl (26.2 MB view details)

Uploaded CPython 3.14macOS 14.0+ ARM64

blazen-0.1.157-cp313-cp313-win_amd64.whl (27.5 MB view details)

Uploaded CPython 3.13Windows x86-64

blazen-0.1.157-cp313-cp313-musllinux_1_2_x86_64.whl (28.5 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

blazen-0.1.157-cp313-cp313-musllinux_1_2_aarch64.whl (21.1 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

blazen-0.1.157-cp313-cp313-manylinux_2_34_x86_64.whl (32.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.34+ x86-64

blazen-0.1.157-cp313-cp313-manylinux_2_34_aarch64.whl (31.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.34+ ARM64

blazen-0.1.157-cp313-cp313-macosx_14_0_arm64.whl (26.2 MB view details)

Uploaded CPython 3.13macOS 14.0+ ARM64

blazen-0.1.157-cp312-cp312-win_amd64.whl (27.5 MB view details)

Uploaded CPython 3.12Windows x86-64

blazen-0.1.157-cp312-cp312-musllinux_1_2_x86_64.whl (28.5 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

blazen-0.1.157-cp312-cp312-musllinux_1_2_aarch64.whl (21.1 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

blazen-0.1.157-cp312-cp312-manylinux_2_34_x86_64.whl (32.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ x86-64

blazen-0.1.157-cp312-cp312-manylinux_2_34_aarch64.whl (31.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ ARM64

blazen-0.1.157-cp312-cp312-macosx_14_0_arm64.whl (26.3 MB view details)

Uploaded CPython 3.12macOS 14.0+ ARM64

blazen-0.1.157-cp311-cp311-win_amd64.whl (27.5 MB view details)

Uploaded CPython 3.11Windows x86-64

blazen-0.1.157-cp311-cp311-musllinux_1_2_x86_64.whl (28.5 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

blazen-0.1.157-cp311-cp311-musllinux_1_2_aarch64.whl (21.1 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

blazen-0.1.157-cp311-cp311-manylinux_2_34_x86_64.whl (32.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ x86-64

blazen-0.1.157-cp311-cp311-manylinux_2_34_aarch64.whl (31.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ ARM64

blazen-0.1.157-cp311-cp311-macosx_14_0_arm64.whl (26.3 MB view details)

Uploaded CPython 3.11macOS 14.0+ ARM64

blazen-0.1.157-cp310-cp310-win_amd64.whl (27.5 MB view details)

Uploaded CPython 3.10Windows x86-64

blazen-0.1.157-cp310-cp310-musllinux_1_2_x86_64.whl (28.5 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

blazen-0.1.157-cp310-cp310-musllinux_1_2_aarch64.whl (21.1 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

blazen-0.1.157-cp310-cp310-manylinux_2_34_x86_64.whl (32.4 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.34+ x86-64

blazen-0.1.157-cp310-cp310-manylinux_2_34_aarch64.whl (31.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.34+ ARM64

blazen-0.1.157-cp310-cp310-macosx_14_0_arm64.whl (26.3 MB view details)

Uploaded CPython 3.10macOS 14.0+ ARM64

File details

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

File metadata

  • Download URL: blazen-0.1.157.tar.gz
  • Upload date:
  • Size: 975.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157.tar.gz
Algorithm Hash digest
SHA256 27f735e1d7426f9491a09ff0628ac29834ad8b7816563940a8b704630409aa9e
MD5 6a2f922f571a61bdde640c51b886f6ee
BLAKE2b-256 df77f3686e7277afecd4e0b17b6c1644926bb7011ca2f557b9e3caa3350d94d6

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 27.5 MB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 116ccca9d2b7b05c6c4b024b04b49c3055f30566a9a108ea1ba807a773ed7cea
MD5 1d852a63a6b60b74844dbf7526214314
BLAKE2b-256 b0d99c11450294772cc58d3da3864da62b9f4d3e0b1917399c0a8e893fd5b779

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp314-cp314-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 28.5 MB
  • Tags: CPython 3.14, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 c2b22149588023346dda1e74d5d4ae519aadd24b4de0e1f8b310b3e13edc8277
MD5 0c30ebdb56294157982d4ece84b00c5d
BLAKE2b-256 5d06791a87e7edee6749c6ad2ee531e2761e664a5880a05bce4ca35e4fe00b90

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp314-cp314-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 21.1 MB
  • Tags: CPython 3.14, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp314-cp314-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 f36240d9efad10a4b7acf8aa1d4efd6f3e3a53766a6afbbcfe454d6fe1a65da9
MD5 c3eca1a2bfdf2edf6ecd45eb756ce1b7
BLAKE2b-256 b78d5fb04ed7d79f89d9f13fbe10967e65134b00da998b5f969dcdac117feece

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp314-cp314-manylinux_2_34_x86_64.whl
  • Upload date:
  • Size: 32.4 MB
  • Tags: CPython 3.14, manylinux: glibc 2.34+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp314-cp314-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 ec7733ad175bbdb5a04b3ee840d6fc5b32754336fb5792709d47fefddda97ad4
MD5 cec001678a4e07624fd1504e5c61fe96
BLAKE2b-256 a62aae1527666047c6a343f807f129beedc7d2416cf7d061117d41672eaab349

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp314-cp314-manylinux_2_34_aarch64.whl
  • Upload date:
  • Size: 31.6 MB
  • Tags: CPython 3.14, manylinux: glibc 2.34+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp314-cp314-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 80906f2edb18fdf545b1b9b793e0bfad2c05fcf8023782929fc7a6dd1e762cca
MD5 cd549fdc4ecfa7650360ee35a0c08a2f
BLAKE2b-256 77b4d0ba39cc708dbef1f63e3421964d22f2bd0d5053f542a93d3a4d0b4def92

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp314-cp314-macosx_14_0_arm64.whl
  • Upload date:
  • Size: 26.2 MB
  • Tags: CPython 3.14, macOS 14.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp314-cp314-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 0976e10e14677c324b0456b0b3233bd72c5b70df5c3339ff3636396386937e31
MD5 e7f8e9fc06e63a9b4a6ac783b1cdaa30
BLAKE2b-256 63938b51a013e376036c24f7f242aed6c2bf2d8fc9fb45b56372a8a64875b4e9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 27.5 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 06d24ebf98cd45f3a3bb43f4191c36349d64d47929c83946892222b7495c1d51
MD5 083c6426f42a5aed032f042d27dc8d2b
BLAKE2b-256 028cd243c0c7d9415e8d51a5d24c149ddeeba67894d8323afb1259445c809100

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp313-cp313-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 28.5 MB
  • Tags: CPython 3.13, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 511c877560c062a8424b753ad0326705bdec0f89fdbbf57d732094aaa181f7d3
MD5 2cfcd39ac71c8ffa8c54190ffc020b39
BLAKE2b-256 1d5bef61c1e91ed4f7353a2c0a32b9689b31218045c7d400dc85732c1252f53b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp313-cp313-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 21.1 MB
  • Tags: CPython 3.13, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 6b0d9c028b042f13611dfe87e02751bf301ff9e2dbccbf4dfc88690450d1ba08
MD5 a3714019a5a776ffe4480fe2c42678ed
BLAKE2b-256 52715e97a0eb85d2568952105b45687d92b739429840feddebc61ddd3b7f52dd

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp313-cp313-manylinux_2_34_x86_64.whl
  • Upload date:
  • Size: 32.4 MB
  • Tags: CPython 3.13, manylinux: glibc 2.34+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp313-cp313-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 8aa0ef6bcb8888d2af77076141fcb2c27b4c9a0c3deff53d3722279d0490d5e9
MD5 16c2c68ea841b7dc79f5a2b1f423f6be
BLAKE2b-256 46ae9f3988006a53245a22fc964934f2e5db1097a2028f94d526c5e8a6a566b1

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp313-cp313-manylinux_2_34_aarch64.whl
  • Upload date:
  • Size: 31.6 MB
  • Tags: CPython 3.13, manylinux: glibc 2.34+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp313-cp313-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 96976e6760417ca1f3ea046a17cc12af5414ac1ea0c9bc670d4db389804ec1c2
MD5 5e2f2eab67aa49619876741223e74128
BLAKE2b-256 6bfdfca43b6f34fbd914537ccc26b48f46a4530e6e80aba728effe7f328375f8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp313-cp313-macosx_14_0_arm64.whl
  • Upload date:
  • Size: 26.2 MB
  • Tags: CPython 3.13, macOS 14.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp313-cp313-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 67b214c0e952a06e9e6e29a8059690e0e4806a7fe203694255d65f477b22b8e8
MD5 0ac3c34571cd704c62822812941bbf09
BLAKE2b-256 f56c47f26ac94339bee49e3663b1cf6ee7f959f671c210a95cdf0928f1cafaed

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 27.5 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 e58d083a188ae4a5a7022f2e092910f0e69ae622358b8ba9f11d8cc932c45c05
MD5 2ccb58f5f128d75286addb063cb704f5
BLAKE2b-256 dd249b71f5d655bc6054b9fe64271df7dad8d70351d1975bc6f9f3c82107a094

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp312-cp312-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 28.5 MB
  • Tags: CPython 3.12, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 6ba6c094dbef0280a5987823acd9cbabca7cb83bb97c24f76bb3b5dad49e5dba
MD5 112cd050a9e295b1c0a26aa8e7b63bb5
BLAKE2b-256 c202e3f6a687b9d203dcfe557b4d8cd4c00082d35762856caf2b1320b29c2c30

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp312-cp312-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 21.1 MB
  • Tags: CPython 3.12, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 eb2cdb7bd1991c2ab5f9f038ea91d9de8b968e4537fd9234bef977c5c4b628fc
MD5 bb89c0154e901911d7277e0affe78cf5
BLAKE2b-256 6ca10341e8949c890ddd10ff80c9aef34923bceae09cb2167e774e384eafe603

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp312-cp312-manylinux_2_34_x86_64.whl
  • Upload date:
  • Size: 32.4 MB
  • Tags: CPython 3.12, manylinux: glibc 2.34+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp312-cp312-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 2b5da947bbc338fbea3c611899b079fd1db702b4fcb775b4ac3ccf50aa650cb6
MD5 2c86af4150af9cc1725949df7cc7aee2
BLAKE2b-256 5a026344c4e6c0305e4aa1cc7eb499078e4616d0bcb6b0c70bb8d14197165b94

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp312-cp312-manylinux_2_34_aarch64.whl
  • Upload date:
  • Size: 31.6 MB
  • Tags: CPython 3.12, manylinux: glibc 2.34+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp312-cp312-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 feea34b1f3949e87f8e1c954718334ea85cbb606f0cf1297dbaceae2f4b92652
MD5 f8f19b79dc9007547279556645424399
BLAKE2b-256 793d25cdd6bcdf6e29b44510ccfce2a2b1894c36b19f1c4a6c8bdaf25e440b13

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp312-cp312-macosx_14_0_arm64.whl
  • Upload date:
  • Size: 26.3 MB
  • Tags: CPython 3.12, macOS 14.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp312-cp312-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 aee4b41a8c76f517b466ae4ca7dc377256fa7ec88edbd715d50cc304f0a1c9bd
MD5 9fceba62e52387e3f51a3a796cb63e2c
BLAKE2b-256 b64647004942b0b41fc02523275c6eeae1f46bfa04fbb989959024b12b06b316

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 27.5 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 030135a60ccc8405cd424658fadb44535b39fe159355b0028467797530197482
MD5 cf84953e6201b039c696c8b15b26d6d4
BLAKE2b-256 d8cca5b68bd633b45492252bf9bb4769c80f508a5a0c9db53ec12f7bd18c54b3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp311-cp311-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 28.5 MB
  • Tags: CPython 3.11, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 dd90caf0b4b14dda464ec88ef941bd28830da9f186209890bb85d638412c83ee
MD5 893954ec4e60a1f186e1f0fd5276593e
BLAKE2b-256 a863d3e3a03b683842cc24897cffb650c66e67c556ed84b4a0469a1c345a3c7a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp311-cp311-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 21.1 MB
  • Tags: CPython 3.11, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 2479cdd816fd74e2335c4ded382e7a32069043bc44f2880cc2496a7014584f41
MD5 c0acd50e43637e9b027127997818c81a
BLAKE2b-256 8ba35e12cb14db91c66205481f7801676fc652557241783c441642a7e25c80b3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp311-cp311-manylinux_2_34_x86_64.whl
  • Upload date:
  • Size: 32.4 MB
  • Tags: CPython 3.11, manylinux: glibc 2.34+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 aac058e799be265f20c84cdff5eb63e6d091f8508788bcbc8a2fe854a4497352
MD5 1a43bf6b83ea243910600ff641499e74
BLAKE2b-256 b1a51b6f37c74cf6e1310d3d97e7b5ba406712fb4dfd98fbc5789891cbbc866f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp311-cp311-manylinux_2_34_aarch64.whl
  • Upload date:
  • Size: 31.6 MB
  • Tags: CPython 3.11, manylinux: glibc 2.34+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp311-cp311-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 acc9c33d5146e0b95ff6f1e83cd4847664841b2ef4360d0934be983eb4b9261a
MD5 10b310f2f7ddfa5bc3a67eb5af0057c3
BLAKE2b-256 3890baf6283222017b1d5318dd95f47623d68433e2e550a11fec6e83f61f562d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp311-cp311-macosx_14_0_arm64.whl
  • Upload date:
  • Size: 26.3 MB
  • Tags: CPython 3.11, macOS 14.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp311-cp311-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 f3b36a16296a0e11fcc1e18ff54f2ffaf5fc1e24652912aa7d67fb2f1fee8595
MD5 2932dc2922bb9976d5fe4999951c26d6
BLAKE2b-256 e742aa96b0394a426b852fff6abe722248473f11c22ee170afc0071e2ec9cd8a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 27.5 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 056a070405c608d4730b9a24f72dbca86f0efe10121ccba69ed92ea3aec9443d
MD5 aef7706071f2cb612849d75d89674af7
BLAKE2b-256 49607b03b83d3eebab1ff6e3f77d5c02d1e1ad32d274dfd5a2895e8cbd2aecc7

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp310-cp310-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 28.5 MB
  • Tags: CPython 3.10, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 d72c522635f429838186beea4d8873e1431998061a8b4cf22893cb3b6356c3a2
MD5 38960f7ed1aecd650068a508252ca073
BLAKE2b-256 7f790af5d9bd6e2067d26c143a06981c63c65cf6fb9f0cfac6653762fabeb09f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp310-cp310-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 21.1 MB
  • Tags: CPython 3.10, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 87c64857de4e36167e3e1c522d11d1c8aba24ee8e86d2deb599785b2349d0973
MD5 e282add91941245d2ee25c08c362091a
BLAKE2b-256 2342754482e89c6ded8bd790765508028461684fdf861b2c1def7dae01a3c832

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp310-cp310-manylinux_2_34_x86_64.whl
  • Upload date:
  • Size: 32.4 MB
  • Tags: CPython 3.10, manylinux: glibc 2.34+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp310-cp310-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 51fceb4c2d28f90fbfb623ad16a29e90b4479eeefbe556aa42831ecb18fc7c83
MD5 f6e16ef402b45098b523244e277c720e
BLAKE2b-256 2768fded5e7f3e37a6732c22156f50066bb9e00c7237e4fb3da9f46fa956f3a5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp310-cp310-manylinux_2_34_aarch64.whl
  • Upload date:
  • Size: 31.6 MB
  • Tags: CPython 3.10, manylinux: glibc 2.34+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp310-cp310-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 398fbc21c462852b1cc6c1d66a4c76cd5fdc5f8e469a74e021f2ec44a2cea1fb
MD5 c990c1b4fa5fc7e9948d7aada0fb34e1
BLAKE2b-256 6b2e257c40ecb908ba475b3ca2b99c72101ba33e8b275daf418c671f5c01df5a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blazen-0.1.157-cp310-cp310-macosx_14_0_arm64.whl
  • Upload date:
  • Size: 26.3 MB
  • Tags: CPython 3.10, macOS 14.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.157-cp310-cp310-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 f8c69045aec5d056c9ec5e1e16da3fff925ed1446993eb6f1ef02003153d57b2
MD5 21df48093f2258e1c0f2beb6bdec39a6
BLAKE2b-256 ef0281e09e94847cf67eaad046ab03bb40417649317f611ad2838f31f0600003

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