z4j-arq
The arq engine adapter for z4j.
Streams supported arq job lifecycle events from your async workers to the z4j and accepts operator control actions from the dashboard. Pair with z4j-arqcron to surface arq cron jobs.
Compatibility
- arq 0.26+ (no upper bound)
- Python 3.11+
Full per-adapter matrix at https://docs.z4j.com/reference/compatibility/.
What it ships
| Capability | Notes |
|---|---|
| Job lifecycle events | in-progress, complete, failed |
| Job discovery | caller-supplied function-name list (arq has no auto-registry) |
| Submit / cancel | direct against the arq Redis pool; cancel succeeds only when Job.abort confirms it |
| Reconcile task | via arq's Redis-backed result store |
Async-native, uses arq's existing on_job_start / after_job_end hooks.
Completion capture reads arq's stored result and requires result retention,
for example keep_result > 0 on the worker and any per-function override.
keep_result_forever=True also retains results. If the result is absent or
unreadable, the adapter logs a diagnostic and omits the terminal event;
it never assumes success. Queued retries are reported as retries.
arq cron jobs default to keep_result=0; set keep_result explicitly on
each cron(...) entry to capture its completion.
Not yet supported (the adapter does not advertise these actions, so z4j refuses them): retry-by-id, bulk retry, and purge queue. arq exposes no dead-letter store or re-enqueue-by-id primitive, so these are deferred rather than shipped.
Install
pip install z4j-arq z4j-arqcron
Pair with a framework adapter (FastAPI is the most common pairing for arq):
pip install z4j-fastapi z4j-arq z4j-arqcron
pip install z4j-bare z4j-arq z4j-arqcron # framework-free worker
Pairs with
z4j-arqcron, schedule adapter for arq cron jobs
Reliability
- Lifecycle-capture failures are isolated from arq's worker loop and job code; capture hooks make no brain network request inline.
- The in-process event queue and SQLite outbound buffer are bounded. Queue overflow drops new events and buffer pressure evicts oldest rows; both losses are logged.
Documentation
Full docs at docs.z4j.com/engines/arq/.
License
Apache-2.0, see LICENSE.
Links
- Homepage: https://z4j.com
- Documentation: https://docs.z4j.com
- PyPI: https://pypi.org/project/z4j-arq/
- Issues: https://github.com/z4jdev/z4j-arq/issues
- Changelog: CHANGELOG.md
- Security: security@z4j.com (see SECURITY.md)
Metadata
Release files for z4j-arq 1.13.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| z4j_arq-1.13.0.tar.gz | 25.2 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| z4j_arq-1.13.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 43.2 kB
Release files / z4j_arq-1.13.0.tar.gz
| Download URL | z4j_arq-1.13.0.tar.gz |
|---|---|
| Size | 25.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a7f5bb86135ac4027b38c9c3a2ceae348e690b19157e0f47b1a120184826c384
|
|
BLAKE2b-256 checksum How to use checksums |
3246102fea0c9ac8c5cd41740de31077ad2ec299ffda44387f735c0da2d1d3cb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / z4j_arq-1.13.0-py3-none-any.whl
| Download URL | z4j_arq-1.13.0-py3-none-any.whl |
|---|---|
| Size | 18.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9122e390ddd9ab74e05508c42c9787e65756a2fc2ff0adb406ac0d86bbff72ea
|
|
BLAKE2b-256 checksum How to use checksums |
01846944fe470e148dd5999f44e5542217259d90055c26b095efe23f14b7f83b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Security for z4j-arq 1.13.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.