Skip to main content

Horsies Logo

Horsies

PostgreSQL-backed background task queue and workflow engine for Python.

Full Documentation | PyPI | GitHub


Why Postgres

Every guarantee horsies makes is a Postgres primitive, not a client-side convention:

  • Claiming: one server-side function under FOR UPDATE SKIP LOCKED; a claim-generation fence rejects stale attempts, including a worker re-claiming its own requeued task.
  • Finalization: row lock → immutable attempt-history append → state transition, one transaction.
  • Recovery: all state is rows and timestamps; the reaper reconstructs and repairs after a worker dies mid-flight — nothing in-flight exists only in a broker's memory.
  • Workflows: fan-in, completion, and subworkflow cascades are multi-row transitions under a documented lock order.
  • Dispatch: LISTEN/NOTIFY push — no polling.
  • Inspection: history is plain tables — SQL, EXPLAIN, your existing backups; Syce reads the same rows.

Measured hot-path latencies: performance.

Monitoring

Horsies includes Syce, a terminal-based UI for monitoring your cluster in real-time.

Syce Dashboard

Syce Setup & Usage

Testing & Correctness

Coverage

3,200+ test functions across unit, real-Postgres integration, e2e worker-process, and PgBouncer contract suites — a 2.2:1 test-to-source line ratio, weighted toward failure paths: crash recovery, claim fencing, cancel/completion races, rolling upgrades, and EXPLAIN ANALYZE plan assertions pinning the hot-path statements to their indexes. The claim/finalize semantics are additionally cross-validated against an independent Rust reimplementation of the engine.

Pre-1.0 is an API-contract statement, not an engine-maturity statement: breaking API changes may still land in minor releases and are documented in the changelog.

Download files

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

Source Distribution

horsies-0.3.1.tar.gz (381.2 kB view details)

Uploaded Source

Built Distribution

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

horsies-0.3.1-py3-none-any.whl (425.4 kB view details)

Uploaded Python 3

File details

Details for the file horsies-0.3.1.tar.gz.

File metadata

  • Download URL: horsies-0.3.1.tar.gz
  • Upload date:
  • Size: 381.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for horsies-0.3.1.tar.gz
Algorithm Hash digest
SHA256 8e73b05cf9e363b215b2671df3e3a7eec2a2693e1c6d4a3d8015665899d50c17
MD5 a61309faa1f8fba1c73c6ba75e469c37
BLAKE2b-256 680c44a0d0b167908b3509dc1ad28b2200f1c5a83ad82fb34612c4d2f5c8b83f

See more details on using hashes here.

Provenance

The following attestation bundles were made for horsies-0.3.1.tar.gz:

Publisher: release.yml on suleymanozkeskin/horsies

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

File details

Details for the file horsies-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: horsies-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 425.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for horsies-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 086a6d14a22b0d27577d89babefe2c618ace738f9fe3b12e270f99bd15d20c3b
MD5 40b01c6cf8a6f6f1345da96282cf070e
BLAKE2b-256 3c68f4a0c88c8c47164be25eadeadd9a221ad9fd90709428b11f5e34ef005ebf

See more details on using hashes here.

Provenance

The following attestation bundles were made for horsies-0.3.1-py3-none-any.whl:

Publisher: release.yml on suleymanozkeskin/horsies

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

Release history Release notifications | RSS feed

0.5.3

2 files

0.5.2

2 files

0.5.1

2 files

0.5.0

2 files

0.4.7

2 files

0.4.6

2 files

0.4.5

2 files

0.4.4

2 files

0.4.3

2 files

0.4.2

2 files

0.4.1

2 files

0.4.0

2 files

This release

0.3.1 This release

2 files

0.3.0

2 files

0.2.9

2 files

0.2.8

2 files

0.2.7

2 files

0.2.6

2 files

0.2.5

2 files

0.2.4

2 files

0.2.3

2 files

0.2.2

2 files

0.2.1

2 files

0.2.0

2 files

0.1.10

2 files

0.1.9

2 files

0.1.8

2 files

0.1.7

2 files

0.1.6

2 files

0.1.5

2 files

0.1.4

2 files

0.1.3

2 files

0.1.2

2 files

0.1.1

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page