Skip to main content

Quebec

Quebec is a simple background task queue for processing asynchronous tasks. The name is derived from the NATO phonetic alphabet for "Q", representing "Queue".

This project is inspired by Solid Queue.

Warning: This project is in early development stage. Not recommended for production use.

Why Quebec?

  • Simplified Architecture: No dependencies on Redis or message queues
  • Database-Powered: Leverages RDBMS capabilities for complex task queries and management
  • Rust Implementation: High performance and safety with Python compatibility
  • Framework Agnostic: Works with asyncio, Trio, threading, SQLAlchemy, Django, FastAPI, etc.

Features

  • Scheduled tasks
  • Recurring tasks
  • Concurrency control
  • Per-queue concurrency limits
  • Rate limiting
  • Exclusive (stop-the-world) jobs
  • Multi-process (fork) mode
  • Memory-based worker recycling
  • Web dashboard
  • Automatic retries
  • Signal handling & graceful restart
  • Lifecycle hooks

Control Plane

Built-in web dashboard for monitoring jobs, queues, and workers in real-time.

Control Plane

Database Support

  • SQLite
  • PostgreSQL
  • MySQL

Quick Start

Module Runner (Recommended)

Define jobs in a package:

# jobs/email_job.py
import quebec

class EmailJob(quebec.BaseClass):
    queue_as = "default"

    def perform(self, to, subject):
        self.logger.info(f"Sending email to {to}: {subject}")

Export them in __init__.py:

# jobs/__init__.py
from .email_job import EmailJob

Run with python -m quebec:

DATABASE_URL=sqlite:///demo.db?mode=rwc python -m quebec jobs

All configuration via QUEBEC_* environment variables — no boilerplate entry script needed.

Script Mode

For more control, use Quebec directly in a script:

import logging
from pathlib import Path
from quebec.logger import setup_logging

setup_logging(level=logging.DEBUG)

import quebec

db_path = Path('demo.db')
qc = quebec.Quebec(f'sqlite://{db_path}?mode=rwc')


@qc.register_job
class FakeJob(quebec.BaseClass):
    def perform(self, *args, **kwargs):
        self.logger.info(f"Processing job {self.id}: args={args}, kwargs={kwargs}")


if __name__ == "__main__":
    # Enqueue a job (qc is inferred from @qc.register_job)
    FakeJob.perform_later(123, foo='bar')

    # Start Quebec (handles signal, spawns workers, runs main loop)
    qc.run(
        create_tables=not db_path.exists(),
        control_plane='127.0.0.1:5006',  # Optional: web dashboard
    )

Or run the quickstart script directly:

curl -O https://raw.githubusercontent.com/ratazzi/quebec/refs/heads/master/quickstart.py
uv run quickstart.py

Auto-Discovering Jobs

If your jobs are organized in a package (e.g. app.jobs.*), call Quebec.discover_jobs() instead of decorating each class with @qc.register_job or calling qc.register_job_class(...) one by one:

# app/jobs/cleanup.py
class CleanupJob(quebec.BaseClass):
    def perform(self, *args, **kwargs): ...

# main.py
qc = quebec.Quebec(dsn)
qc.discover_jobs("app.jobs", "worker.tasks")   # recursively scans each
qc.run()

discover_jobs takes one or more dotted package paths as positional arguments (varargs) — no need to wrap a single package in a list.

discover_jobs(*packages, recursive=True, on_error="raise"):

  • Registers every BaseClass subclass whose __module__ falls under one of the given packages. Classes imported from elsewhere (e.g. from some.lib import JobMixin) are ignored.
  • Raises ValueError if two discovered classes share the same __qualname__, since Quebec's worker registry is keyed by qualname and the later registration would otherwise silently replace the earlier one.
  • on_error="raise" (default) propagates submodule ImportError. Pass on_error="warn" to emit a RuntimeWarning and keep scanning — useful when a package contains optional-integration modules that may fail to import in some environments. The top-level package is always imported strictly.

Multiple Quebec Instances

Quebec is designed for one instance per process. Registering a job class (via @qc.register_job, qc.register_job_class, or qc.discover_jobs) binds it to that Quebec instance, so MyJob.perform_later(...) shorthand routes to the binding. If a process holds more than one Quebec instance and registers the same job class to each, the most recent registration wins — pass the target instance explicitly to disambiguate:

MyJob.perform_later(qc2, arg1)                  # route to qc2
MyJob.set(queue='critical').perform_later(qc2, arg1)

qc.run() Options

Parameter Type Default Description
create_tables bool False Create database tables (requires DDL permissions)
control_plane str None Web dashboard address, e.g. '127.0.0.1:5006'
spawn list[str] None Components to spawn: ['worker', 'dispatcher', 'scheduler']. None = all

Recommended: configure worker thread count in queue.yml via workers.threads. If you need a one-off override, Quebec(..., worker_threads=3) is also supported.

Multi-Process Mode (fork supervisor)

By default qc.run() runs all components as threads in a single process. To scale across CPU cores, set QUEBEC_SUPERVISOR=1 to fork a pool of child processes instead:

QUEBEC_SUPERVISOR=1 python -m quebec your.jobs
# queue.yml (under your environment, e.g. production:)
workers:
  - queues: "*"
    threads: 5
    processes: 4        # fork 4 worker processes
dispatchers:
  - polling_interval: 1
    processes: 1        # fork 1 dispatcher process

The supervisor forks workers[].processes worker children and dispatchers[].processes dispatcher children, each taking its config from the matching yml entry, and reforks any child that dies (matching Solid Queue's process model). Fork mode is opt-in via the env var so an existing config with processes set doesn't silently switch process model on upgrade; spawn is ignored in this mode. Outside supervisor mode the processes keys are ignored and Quebec uses the single-process threaded runtime.

Force Queue Override (multi-branch development)

Set QUEBEC_FORCE_OVERRIDE_QUEUE to pin every enqueue and consumption to one queue — handy when several development branches share a single database:

QUEBEC_FORCE_OVERRIDE_QUEUE=branch_x python -m quebec your.jobs

Every enqueue path rewrites queue_name to this value (ignoring whatever the class, call site, or scheduler specified), and the worker only consumes that queue — so jobs enqueued by one branch are never picked up by another. URL-hostile characters and * in the name are sanitized to - (a literal * would otherwise be reinterpreted as a wildcard by the consuming worker).

Transactional Enqueue

[!IMPORTANT] Enqueuing is not part of your database transaction — even on the same database. Quebec's enqueue runs through the Rust engine on its own connection pool, completely separate from your Python connection (SQLAlchemy / Django / psycopg). There is no way to atomically commit a business write and a job enqueue together.

This is the deliberate cost of keeping the engine fully decoupled from your ORM and connection — the upside is that Quebec drags no Python database dependencies into your app, but it means the enqueue cannot join your transaction. Two failure windows follow:

  • The business transaction commits but the enqueue fails → the job is lost.
  • The enqueue commits but the business transaction rolls back → the job runs against missing or stale data.

Recommendations:

  • Enqueue after your business transaction commits. This removes the worse direction — a job running for a write that was rolled back.
  • Make jobs idempotent and tolerant of data that may not be visible yet; lean on retries.
  • If you genuinely need atomicity, use a transactional outbox: write an outbox row inside your own transaction (business + outbox commit atomically), then relay it into a real job (at-least-once delivery).

Delayed Jobs

from datetime import timedelta

# Run after 1 hour
FakeJob.set(wait=3600).perform_later(arg1)

# Run at specific time
FakeJob.set(wait_until=tomorrow_9am).perform_later(arg1)

# Override queue and priority
FakeJob.set(queue='critical', priority=1).perform_later(arg1)

Automatic Retries

from datetime import timedelta

class PaymentJob(quebec.BaseClass):
    retry_on = [
        quebec.RetryStrategy(
            (ConnectionError, TimeoutError),
            wait=timedelta(seconds=30),
            attempts=3,
        ),
        quebec.RetryStrategy(
            (ValueError,),
            wait=timedelta(seconds=5),
            attempts=1,
            # Called once retries are exhausted; receives (job, error).
            handler=lambda job, error: notify_admin(error),
        ),
    ]

    def perform(self, order_id):
        process_payment(order_id)

Multiple RetryStrategy entries can target different exception types with independent wait/attempts. The optional handler fires only when a strategy's attempts are exhausted (mirroring ActiveJob's retry_on ... do |job, error| block) and is called with (job, error). discard_on and rescue_from handlers use the same (job, error) signature.

Concurrency Control

Limit how many jobs with the same key can run simultaneously:

class ReportJob(quebec.BaseClass):
    concurrency_limit = 3          # max 3 concurrent executions per key
    concurrency_duration = 120     # semaphore TTL in seconds

    def concurrency_key(self, account_id, **kwargs):
        return str(account_id)     # final key: "ReportJob/123"

    def perform(self, account_id):
        generate_report(account_id)

The actual concurrency key is "ClassName/key" (e.g. "ReportJob/123"), so different job classes never conflict. When the limit is reached, new jobs are blocked until a slot becomes available. The concurrency_duration acts as a safety TTL — the semaphore is released automatically if a worker crashes.

Rate Limiting (experimental)

Cap how many jobs run within a sliding time window, scoped per key:

from datetime import timedelta

class ApiCallJob(quebec.BaseClass):
    rate_limit_max = 5                          # at most 5 runs...
    rate_limit_duration = timedelta(seconds=2)  # ...per rolling 2-second window
    rate_limit_on_throttle = quebec.RateLimitConflict.Reschedule  # default

    def rate_limit_key(self, region="us", **kwargs):
        return region                           # bucket key: "ApiCallJob/us"

    def perform(self, region="us"):
        call_external_api(region)

Like concurrency control, the bucket is "ClassName/key", and rate_limit_key defaults to the class name when not overridden. rate_limit_duration must be a datetime.timedelta of at least one second. When the window is exhausted, rate_limit_on_throttle decides what happens: Reschedule (the default) pushes the job to a later run, while Discard drops it.

Exclusive Jobs

Let an occasional memory-heavy job own the whole worker process while it runs:

class RebuildSearchIndexJob(quebec.BaseClass):
    exclusive = True

    def perform(self):
        rebuild_index()                         # runs alone on this worker

When an exclusive job is claimed, the worker stops claiming new jobs, waits for any in-flight siblings to finish, then runs the exclusive job by itself before resuming normal claiming. The scope is the current worker process — it does not coordinate across separate worker processes; pair it with concurrency_limit = 1 and a concurrency_key if you also need cluster-wide single-instance execution.

Graceful Restart (quiet-then-exit)

Drain in-flight work and exit on a quiet signal, for zero-downtime rolling restarts:

qc = quebec.Quebec(database_url="...", quiet_then_exit=True)
qc.run()

Sending SIGUSR1 (or SIGTSTP) puts the worker into quiet mode: it stops claiming new jobs but keeps running until every in-flight job finishes, then exits cleanly — with no time limit (unlike the SIGTERM path, which is bounded by shutdown_timeout). The usual flow is: signal the old instance quiet, start a new instance, and the old one exits once drained. Opt-in (default off), and standalone-only — under the fork supervisor a self-exited child would just be reforked, so use a supervisor-level rolling restart there instead. Also settable via QUEBEC_QUIET_THEN_EXIT=1.

Memory-Based Worker Recycling

Long-lived Python workers tend to hold onto RSS the interpreter never returns to the OS. Quebec can recycle a bloated worker by draining it and exiting with a dedicated code, leaving the actual restart to your process supervisor. It is configured by environment variables — there is no in-process restart:

QUEBEC_WORKER_MAX_RSS_MB=512                  # soft limit; unset = disabled
QUEBEC_WORKER_MEMORY_RECYCLE_CONFIRMATIONS=3  # consecutive over-limit samples before recycling (default)
QUEBEC_WORKER_MEMORY_CHECK_INTERVAL=5s        # how often RSS is sampled (default)

When a worker's RSS stays above the limit for that many consecutive samples, it enters quiet mode, stops claiming, drains its in-flight jobs (no time limit), and exits with code 75 — the planned-recycle code. The supervisor then relaunches a fresh process. Under the built-in fork supervisor (QUEBEC_SUPERVISOR=1) this refork is automatic; under systemd, Restart=on-failure relaunches the worker after the non-zero recycle exit:

# /etc/systemd/system/quebec-worker.service
[Service]
ExecStart=/usr/bin/python -m quebec your.jobs
Environment=QUEBEC_DATABASE_URL=postgresql://localhost/myapp
Environment=QUEBEC_WORKER_MAX_RSS_MB=512
Restart=on-failure

[Install]
WantedBy=multi-user.target

Exit code 75 is non-zero, so Restart=on-failure treats the planned recycle as a failure and relaunches the worker. If you'd rather not have planned recycles show up as failures (in systemctl status or the start-limit counter), add SuccessExitStatus=75 together with RestartForceExitStatus=75 — the former keeps 75 out of the failure tally, the latter still forces the restart.

Per-Queue Concurrency (experimental)

Cap how many jobs run concurrently across the cluster for specific queues, independent of per-class concurrency_key:

qc = quebec.Quebec(
    database_url="...",
    experimental_queue_concurrency={"reports": 2, "exports": 1},
)
qc.run()

Each listed queue acquires a queue:<name> semaphore at claim time; queues not present are unlimited. Useful for isolating a misbehaving queue during remediation. Naming and semantics are experimental and may change.

TLS Configuration (PostgreSQL)

Quebec links sqlx against rustls + webpki-roots. Public CAs (AWS RDS, Neon, Google Cloud SQL, Supabase, etc.) are trusted out of the box — no OS trust store is consulted.

Pass libpq-style SSL options as Quebec(...) kwargs, as DSN query params, or via QUEBEC_SSL* environment variables:

qc = quebec.Quebec(
    "postgresql://user:pass@host:5432/db",
    sslmode="verify-full",             # or QUEBEC_SSLMODE
    sslrootcert="/etc/ssl/certs/ca.pem",  # internal CAs only
)

Priority is kwargs > env > DSN query. Passing any ssl* kwarg/env against a non-postgres URL raises ValueError.

sslmode Transport Certificate verification Hostname verification
disable plaintext
prefer TLS if offered, else plaintext
require TLS (fails if unsupported) — (accepts any cert)
verify-ca TLS CA-signed
verify-full TLS CA-signed hostname matches CN/SAN

For public CAs, verify-full works zero-config. Use sslrootcert for internal/self-signed CAs. sslcert + sslkey enable client certificate (mTLS) auth.

sslmode=allow is rejected with a ValueError. Upstream sqlx-postgres 0.8 treats allow identically to disable (plaintext, marked FIXME in the driver); to avoid a silent downgrade, Quebec refuses it. Use prefer for opportunistic TLS, or require/verify-* to enforce it.

Note: some managed Postgres services (e.g. Neon) terminate TLS at a proxy layer. In those cases pg_stat_ssl.ssl may report false because the backend sees plaintext from the proxy — not the client.

Lifecycle Hooks

Quebec provides several lifecycle hooks that you can use to execute code at different stages of the application lifecycle:

  • @qc.on_start: Called when Quebec starts
  • @qc.on_stop: Called when Quebec stops
  • @qc.on_worker_start: Called when a worker starts
  • @qc.on_worker_stop: Called when a worker stops
  • @qc.on_shutdown: Called during graceful shutdown

These hooks are useful for:

  • Initializing resources
  • Cleaning up resources
  • Logging application state
  • Monitoring worker lifecycle
  • Graceful shutdown handling

Download files

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

Source Distribution

quebec-0.3.13.tar.gz (821.2 kB view details)

Uploaded Source

Built Distributions

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

quebec-0.3.13-cp314-cp314t-win_arm64.whl (10.5 MB view details)

Uploaded CPython 3.14tWindows ARM64

quebec-0.3.13-cp314-cp314t-win_amd64.whl (11.4 MB view details)

Uploaded CPython 3.14tWindows x86-64

quebec-0.3.13-cp314-cp314t-win32.whl (9.7 MB view details)

Uploaded CPython 3.14tWindows x86

quebec-0.3.13-cp314-cp314t-musllinux_1_2_x86_64.whl (12.8 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ x86-64

quebec-0.3.13-cp314-cp314t-musllinux_1_2_i686.whl (12.8 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ i686

quebec-0.3.13-cp314-cp314t-musllinux_1_2_armv7l.whl (12.3 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ ARMv7l

quebec-0.3.13-cp314-cp314t-musllinux_1_2_aarch64.whl (12.5 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ ARM64

quebec-0.3.13-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.2 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ x86-64

quebec-0.3.13-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl (12.2 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ s390x

quebec-0.3.13-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (13.6 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ ppc64le

quebec-0.3.13-cp314-cp314t-manylinux_2_17_i686.manylinux2014_i686.whl (13.1 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ i686

quebec-0.3.13-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (12.0 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ ARMv7l

quebec-0.3.13-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (12.3 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ ARM64

quebec-0.3.13-cp314-cp314t-macosx_11_0_arm64.whl (11.0 MB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

quebec-0.3.13-cp314-cp314t-macosx_10_12_x86_64.whl (11.5 MB view details)

Uploaded CPython 3.14tmacOS 10.12+ x86-64

quebec-0.3.13-cp39-abi3-win_arm64.whl (10.5 MB view details)

Uploaded CPython 3.9+Windows ARM64

quebec-0.3.13-cp39-abi3-win_amd64.whl (11.4 MB view details)

Uploaded CPython 3.9+Windows x86-64

quebec-0.3.13-cp39-abi3-win32.whl (9.8 MB view details)

Uploaded CPython 3.9+Windows x86

quebec-0.3.13-cp39-abi3-musllinux_1_2_x86_64.whl (12.8 MB view details)

Uploaded CPython 3.9+musllinux: musl 1.2+ x86-64

quebec-0.3.13-cp39-abi3-musllinux_1_2_i686.whl (12.8 MB view details)

Uploaded CPython 3.9+musllinux: musl 1.2+ i686

quebec-0.3.13-cp39-abi3-musllinux_1_2_armv7l.whl (12.3 MB view details)

Uploaded CPython 3.9+musllinux: musl 1.2+ ARMv7l

quebec-0.3.13-cp39-abi3-musllinux_1_2_aarch64.whl (12.5 MB view details)

Uploaded CPython 3.9+musllinux: musl 1.2+ ARM64

quebec-0.3.13-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.2 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ x86-64

quebec-0.3.13-cp39-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl (12.2 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ s390x

quebec-0.3.13-cp39-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (13.6 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ ppc64le

quebec-0.3.13-cp39-abi3-manylinux_2_17_i686.manylinux2014_i686.whl (13.1 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ i686

quebec-0.3.13-cp39-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (12.0 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ ARMv7l

quebec-0.3.13-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (12.3 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ ARM64

quebec-0.3.13-cp39-abi3-macosx_11_0_arm64.whl (11.0 MB view details)

Uploaded CPython 3.9+macOS 11.0+ ARM64

quebec-0.3.13-cp39-abi3-macosx_10_12_x86_64.whl (11.5 MB view details)

Uploaded CPython 3.9+macOS 10.12+ x86-64

File details

Details for the file quebec-0.3.13.tar.gz.

File metadata

  • Download URL: quebec-0.3.13.tar.gz
  • Upload date:
  • Size: 821.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13.tar.gz
Algorithm Hash digest
SHA256 58475b511129b44378113dae6f5f3a1672e26fd7fdcb4566a8bcb4594253e437
MD5 a8deb0b782a13daf8e66a4c9ae52b201
BLAKE2b-256 2b113e700c920a8175829d2e82ad629cf17f0bfcaae49eca0b64f8fa91ee9395

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp314-cp314t-win_arm64.whl.

File metadata

  • Download URL: quebec-0.3.13-cp314-cp314t-win_arm64.whl
  • Upload date:
  • Size: 10.5 MB
  • Tags: CPython 3.14t, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp314-cp314t-win_arm64.whl
Algorithm Hash digest
SHA256 dd11789ce5694f4e498f5444f3d64a78922c4c4517e2afcc28bc68fb63b8345e
MD5 64ed622e2540d736ec6c6b1593dfc637
BLAKE2b-256 d9010bdfe50243e4bb1eb799985a9d515fbe2aecb85e124b4da1a80202a24b02

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp314-cp314t-win_amd64.whl.

File metadata

  • Download URL: quebec-0.3.13-cp314-cp314t-win_amd64.whl
  • Upload date:
  • Size: 11.4 MB
  • Tags: CPython 3.14t, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 0243b71cc72f52771f0a746d37e95aeed4c2fca5e2d6112f381fffa74994abd6
MD5 d3a7c1c9cc471cf3bf94ded7c50e64f9
BLAKE2b-256 48887d3aa770ade80da5100b332082b3223d5eb8bce758e387fd8fed0be17746

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp314-cp314t-win32.whl.

File metadata

  • Download URL: quebec-0.3.13-cp314-cp314t-win32.whl
  • Upload date:
  • Size: 9.7 MB
  • Tags: CPython 3.14t, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp314-cp314t-win32.whl
Algorithm Hash digest
SHA256 1643df53bbeb11fe6a5d3606d2db7e9cea50cd32848085912ff7ff048d69ceb8
MD5 b44739db08819bfd097ecdcd95afa129
BLAKE2b-256 5b446406d2284f24aeed90e3095f1c4c89c6442962ba5d69088abf44296813a6

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp314-cp314t-musllinux_1_2_x86_64.whl.

File metadata

  • Download URL: quebec-0.3.13-cp314-cp314t-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 12.8 MB
  • Tags: CPython 3.14t, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 904a9e61ded37bd71fafc8fd2d06cfa5a6adcb12463b55bd465e759ac72f79a2
MD5 e5ddc472ab89e262aa37d79015da35b6
BLAKE2b-256 ce04aa00e7498e7b9cfe2ae10d4101aa36af65decd1e63d56f1afd158c65b8df

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp314-cp314t-musllinux_1_2_i686.whl.

File metadata

  • Download URL: quebec-0.3.13-cp314-cp314t-musllinux_1_2_i686.whl
  • Upload date:
  • Size: 12.8 MB
  • Tags: CPython 3.14t, musllinux: musl 1.2+ i686
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp314-cp314t-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 bb46d84abaa0f1709db7a63d695be91756ca392e47b5fae008c49eb35bfd1061
MD5 27f8508f793e8ee9c9351700593f210a
BLAKE2b-256 52d696f58d8191dd653717ae00e7e5d7ec06528482680da9cc9bbb2230787fe9

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp314-cp314t-musllinux_1_2_armv7l.whl.

File metadata

  • Download URL: quebec-0.3.13-cp314-cp314t-musllinux_1_2_armv7l.whl
  • Upload date:
  • Size: 12.3 MB
  • Tags: CPython 3.14t, musllinux: musl 1.2+ ARMv7l
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp314-cp314t-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 047a20e070a9825149cb878e82092b91465dc499603205d00b2b7cb13af4e023
MD5 539660ec196116ba6008ec8132ee9361
BLAKE2b-256 f337a8dacca2a8f73b76587dd4a29647db5d3627e578fe8317940c419d72e339

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp314-cp314t-musllinux_1_2_aarch64.whl.

File metadata

  • Download URL: quebec-0.3.13-cp314-cp314t-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 12.5 MB
  • Tags: CPython 3.14t, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp314-cp314t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 d4dc3dd8852fbbce0a4a4fa97f81476726423a10f6f5c4ee005a641c9479b4b8
MD5 45ffddcc18b2222dfc02ff11c154fcba
BLAKE2b-256 608129f5048e610130f68f4b8a3f248a9913f703a04b8c3d1347f8ec8f4ea122

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: quebec-0.3.13-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 12.2 MB
  • Tags: CPython 3.14t, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 de82bfb8e8cfa594d017e28fa22876e27b60a0499f1966b60672737dafabe1a2
MD5 afaf774fe9209116df9d697fd4b56699
BLAKE2b-256 3798a1426102830d1e7b8e74bbda1f99b2a44f63f052e80d67c6e81a2c459e3c

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

  • Download URL: quebec-0.3.13-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl
  • Upload date:
  • Size: 12.2 MB
  • Tags: CPython 3.14t, manylinux: glibc 2.17+ s390x
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 c698aa3e32838e873a15348f38948a332bf9987c8427919100a089e4a1798bad
MD5 a2f8a236fa769d69267cac9ac379adf9
BLAKE2b-256 77f29ca7931981b7d66237723e620d1917bbbcca663fd4833f36da8ff6e96901

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

  • Download URL: quebec-0.3.13-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
  • Upload date:
  • Size: 13.6 MB
  • Tags: CPython 3.14t, manylinux: glibc 2.17+ ppc64le
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 66c7dc7032bf5a1bc21a1aa8e4c5ee5d88c6dfdd3abb7807129537e01d23c991
MD5 1d252313b8e0280c4f15a395db242aa1
BLAKE2b-256 49c75d01b74bd1b5dba8a596c1b8e38e3f9f9153943a31a3d7e0cf537c93d8d9

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp314-cp314t-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

  • Download URL: quebec-0.3.13-cp314-cp314t-manylinux_2_17_i686.manylinux2014_i686.whl
  • Upload date:
  • Size: 13.1 MB
  • Tags: CPython 3.14t, manylinux: glibc 2.17+ i686
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp314-cp314t-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 067b452f105b7fe0ce54f647c68d04d78989b117a8848c1646911cb9638c5ed2
MD5 906aa5e33729241829412ccffb9e9fe5
BLAKE2b-256 cfaff7d515a0f431e7963dd6f1fc03b447331956d8238ab49e2b41fbf2225545

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

  • Download URL: quebec-0.3.13-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
  • Upload date:
  • Size: 12.0 MB
  • Tags: CPython 3.14t, manylinux: glibc 2.17+ ARMv7l
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 2b7ed21b436e99ef1446b04fc19e75c60bb9eb09f6acb53a88732444dcc04fc3
MD5 68c429c98637bf7ee44a7811b4431bb8
BLAKE2b-256 848c07eaea740cc866f1b3bbe1b7243879aaa65920dbf29208fa964f3bc03885

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

  • Download URL: quebec-0.3.13-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
  • Upload date:
  • Size: 12.3 MB
  • Tags: CPython 3.14t, manylinux: glibc 2.17+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a9b4233c0dea956fe5d1cf59e068ea7317c9bb2f7b4e617331ecd2d033564a89
MD5 45f4c1f55223d0afbb253f9d93cb1dc4
BLAKE2b-256 0acb031d78e677344563d570ebf19b06448acce004cb386ceecd316b35335204

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp314-cp314t-macosx_11_0_arm64.whl.

File metadata

  • Download URL: quebec-0.3.13-cp314-cp314t-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 11.0 MB
  • Tags: CPython 3.14t, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2de392fb6b04f653d905a96f5840fdc6f5039c543351633ee0e0f2daedd262f4
MD5 0347ab70897ca63fc86ebad4fffaa0a4
BLAKE2b-256 f3bdc48086d38d121b390aaa7e991aaf80675ace0a3d52d44ff641cd20211d56

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp314-cp314t-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: quebec-0.3.13-cp314-cp314t-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 11.5 MB
  • Tags: CPython 3.14t, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp314-cp314t-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 a4d2335f845388cab74d52451a6b70b9ea389a2bc91a7b1d492cc7f59cc4443e
MD5 c551f530333d38eb9df7b0c7f8c601f2
BLAKE2b-256 f781d004093e968a02b44c7e6c99bd7ec0895e5a6e584e05ec38bc675492ea17

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp39-abi3-win_arm64.whl.

File metadata

  • Download URL: quebec-0.3.13-cp39-abi3-win_arm64.whl
  • Upload date:
  • Size: 10.5 MB
  • Tags: CPython 3.9+, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp39-abi3-win_arm64.whl
Algorithm Hash digest
SHA256 a9a87da5bae0be3f92818860c185ba0b4874a435f5fd86605308c0aa87f050ff
MD5 cb7d995a72b0b6eac58f47f61a0ac3bd
BLAKE2b-256 73665912ddf76e8a8b908dfbf697e24ce72885bffec4ea2203301a8ae2e8ac41

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp39-abi3-win_amd64.whl.

File metadata

  • Download URL: quebec-0.3.13-cp39-abi3-win_amd64.whl
  • Upload date:
  • Size: 11.4 MB
  • Tags: CPython 3.9+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp39-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 8b14cb36875c5a8b487979c3980fdb62396f9896a6b02f03aaf472fceb951e6c
MD5 aef4f8eae349f8797d45bce75077a9e6
BLAKE2b-256 6bd1a9a7a941b1cdc15c69a625d2b38c9394fcbc91846db7dfa20f6a71db4281

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp39-abi3-win32.whl.

File metadata

  • Download URL: quebec-0.3.13-cp39-abi3-win32.whl
  • Upload date:
  • Size: 9.8 MB
  • Tags: CPython 3.9+, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp39-abi3-win32.whl
Algorithm Hash digest
SHA256 7c392425a1864163456675cd67c1a476d710726b9bc4f26219d9ff1d25f809a5
MD5 2bba6d46d0ca9f081574af626158e765
BLAKE2b-256 e73154a125f8eb2a4d7fa9ed3dd0c5b88bb1440f6133e956c0778063a196c7f3

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp39-abi3-musllinux_1_2_x86_64.whl.

File metadata

  • Download URL: quebec-0.3.13-cp39-abi3-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 12.8 MB
  • Tags: CPython 3.9+, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp39-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a7b037eda0166ef606a8aed6a8c024d17a1c1035f22df11c3eb9e2aa025ac775
MD5 7001c1cc1192c2f66441c38cc3cdb294
BLAKE2b-256 06907036617c2dc2b7aff579754e20b6bdbc729affb6360d703572d88e865281

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp39-abi3-musllinux_1_2_i686.whl.

File metadata

  • Download URL: quebec-0.3.13-cp39-abi3-musllinux_1_2_i686.whl
  • Upload date:
  • Size: 12.8 MB
  • Tags: CPython 3.9+, musllinux: musl 1.2+ i686
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp39-abi3-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 8c503f1fc7f96abbe607b4b9c03008421cb5d36447b4143aa10a0c5aa90032a9
MD5 ffec92e24d9072fd1e1b1a5a603fbd19
BLAKE2b-256 462fafd4f67878180eab752e163dd7c8b8b8308af240067719829d1fe4890233

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp39-abi3-musllinux_1_2_armv7l.whl.

File metadata

  • Download URL: quebec-0.3.13-cp39-abi3-musllinux_1_2_armv7l.whl
  • Upload date:
  • Size: 12.3 MB
  • Tags: CPython 3.9+, musllinux: musl 1.2+ ARMv7l
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp39-abi3-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 a2f5ae6a4243aa4d2d38cbbd253980e7ecd622039d3a385fcca9768f42e7256f
MD5 cdb89842356f867de7f7fc0fe15bdb51
BLAKE2b-256 aacd8ded30688a12595a0bd8d75b7a20f956b25bb15b768d6b0d82de8f1f8ed2

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp39-abi3-musllinux_1_2_aarch64.whl.

File metadata

  • Download URL: quebec-0.3.13-cp39-abi3-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 12.5 MB
  • Tags: CPython 3.9+, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp39-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 ef7d2488ae3f666f76ef3281e1bdcb87b86f7c12819909ca2c9fc974c8ddeeec
MD5 08f46f0338690c3b10acadca4814aee5
BLAKE2b-256 39e7db6d4558ae8dc2aed03d7f6ffea1c4ec77a80a5bc0365df31d759c4a86b3

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: quebec-0.3.13-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 12.2 MB
  • Tags: CPython 3.9+, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5b46a99e3a5d0de5395b7e4ff7ac0042b557fe9b5677ae66a5d08de601ee9647
MD5 62f5bfb56046a9318b01b1958e0be436
BLAKE2b-256 ed8725cc0e91fc9ce19056727d42e3a7cf6e8bbf03985fa16bef0373b2c92899

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp39-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

  • Download URL: quebec-0.3.13-cp39-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl
  • Upload date:
  • Size: 12.2 MB
  • Tags: CPython 3.9+, manylinux: glibc 2.17+ s390x
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp39-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 8951f101916acb842e1e59937c3d71e70d00de5ac16f93c76f2def8e336c7053
MD5 67b188489b8133b4f05a29ab222da11e
BLAKE2b-256 0a1e2723cc12906e8f9e3656bc7d932df173ee61d9f47fd12df810c830670f76

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp39-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

  • Download URL: quebec-0.3.13-cp39-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
  • Upload date:
  • Size: 13.6 MB
  • Tags: CPython 3.9+, manylinux: glibc 2.17+ ppc64le
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp39-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 35b328c476ae6d7a67bf4608cc26bd3d363a9b984ab1f046b211fea72bd6d33d
MD5 a4b5e5b0525faa58adf1d7da868a9f1e
BLAKE2b-256 8a68ad2b0e8cf55b6aa12a50b2cb9adf37431eb56931de036533d14e2040346c

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp39-abi3-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

  • Download URL: quebec-0.3.13-cp39-abi3-manylinux_2_17_i686.manylinux2014_i686.whl
  • Upload date:
  • Size: 13.1 MB
  • Tags: CPython 3.9+, manylinux: glibc 2.17+ i686
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp39-abi3-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 6f180957710de4c9ddfe36dfa403008e9ffe9620ed70dc4204b1302d14379be1
MD5 77d99945234917671564bdd9c30119f6
BLAKE2b-256 966cd0f9c36f936ad4a81b158fe667c49401a2de5fc5479d6ac79a25e8555467

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp39-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

  • Download URL: quebec-0.3.13-cp39-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
  • Upload date:
  • Size: 12.0 MB
  • Tags: CPython 3.9+, manylinux: glibc 2.17+ ARMv7l
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp39-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 933a6697ef164f918d10519899977b064a3cbb94b56907635b212a1056de54b4
MD5 8820b45810e392c6c18064d88dd83cad
BLAKE2b-256 19fa869034abba1263993494eca37ebdd66f563d4c7b8bd431ad2130a5bc546b

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

  • Download URL: quebec-0.3.13-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
  • Upload date:
  • Size: 12.3 MB
  • Tags: CPython 3.9+, manylinux: glibc 2.17+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 343620e8675769ee885ceabd3874672bcfd58dd25f4eb41ec1f302e4ada86112
MD5 3a1f5e4ddc26561634cecd9fd6577d71
BLAKE2b-256 4999f21f45730fd54576b088310379ab715e3bd6d275c8169a35e71e7019441e

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp39-abi3-macosx_11_0_arm64.whl.

File metadata

  • Download URL: quebec-0.3.13-cp39-abi3-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 11.0 MB
  • Tags: CPython 3.9+, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp39-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 419860126516384c1d74ab07526ab8ac61b51d483bd98b874c6d0565d85ccb5a
MD5 155e32eb1c72673163fa834ce18eca41
BLAKE2b-256 708db04e8f603b69991fb5f802abe230e4c8b61dc9075b04a93a8240a2cbec6a

See more details on using hashes here.

File details

Details for the file quebec-0.3.13-cp39-abi3-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: quebec-0.3.13-cp39-abi3-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 11.5 MB
  • Tags: CPython 3.9+, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","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 quebec-0.3.13-cp39-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 df216b26192e4c457870e2c0d12157f00fa5ad0639a21f0edecfa3569ebf07c3
MD5 88108b8154b15d70886a9173518d8a98
BLAKE2b-256 fd077fd54830c290037c617978b86cd7076c0325fbaf6c08c44e18c62fe8b5fd

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.3.13 This release

31 files

0.3.12

31 files

0.3.11

31 files

0.3.10

31 files

0.3.9

31 files

0.3.8

31 files

0.3.7

31 files

0.3.6

31 files

0.3.5

31 files

0.3.4

31 files

0.3.3

31 files

0.3.2

31 files

0.3.1

31 files

0.3.0

29 files

0.2.13

29 files

0.2.12

29 files

0.2.11

29 files

0.2.10

29 files

0.2.9

29 files

0.2.8

29 files

0.2.7

29 files

0.2.6

29 files

0.2.5

29 files

0.2.4

37 files

0.2.3

37 files

0.2.2

37 files

0.2.1

37 files

0.1.1

29 files

0.1.0

29 files

Supported by

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