Skip to content

Version 0.7.0

Choose a tag to compare

@tarsil tarsil released this 06 Mar 17:24
· 165 commits to main since this release
8362335

Added

  • Migrated the CLI to a Sayer-backed implementation while preserving existing command names and behavior.
  • Added a shared dashboard queue-count aggregation helper for consistent overview/metrics/SSE data.
  • Added richer dashboard operations features:
    • queue job filtering/search (q, task, job_id, sorting),
    • action audit trail page (/audit),
    • metrics history endpoint (/metrics/history) and richer metrics history visualizations.
  • Added high-value regression tests for:
    • MongoDB store _id update behavior,
    • worker handling of backend-wrapped payloads,
    • dashboard count aggregation and repeatables actions,
    • dashboard audit/history stores and filtering behavior,
    • project metadata validation for optional dependency extras.

Changed

  • Expanded and restructured documentation with:
    • a rewritten main entrypoint (index.md),
    • richer feature docs,
    • new how-to guides,
    • new reference section,
    • dedicated troubleshooting documentation,
    • improved dashboard operator documentation (capabilities + operations playbook).
  • Updated docs navigation for clearer onboarding and operational workflows.
  • Improved dashboard controllers to reuse consistent queue/job state aggregation and safer backend fallbacks.
  • Expanded dashboard documentation with route reference, richer runbooks, and additional architecture/workflow diagrams.

Fixed

  • RabbitMQ backend acknowledgment lifecycle:
    • dequeue no longer auto-acks,
    • in-flight messages are tracked and acknowledged explicitly via ack(...).
  • RabbitMQ delayed/repeatable and queue-state consistency:
    • normalized delayed-state handling,
    • corrected delayed listing/removal semantics,
    • improved queue pause/resume and worker heartbeat visibility behavior.
  • Dependency and stalled-job edge cases:
    • improved dependency merge/resolution behavior,
    • normalized stalled-job payload handling across worker/recovery paths.
  • DLQ terminal-state correctness across backends:
    • preserved explicit terminal statuses (failed / expired) instead of forcing non-terminal values.
  • CLI queue-info correctness:
    • now prefers backend queue_stats(...) instead of backend-internal attributes.
  • Packaging extras correctness:
    • fixed asyncmq[all] to include concrete installable dependencies.
  • Typing fix in repeatable queue definitions (Queue.add_repeatable) to satisfy strict type checking.
  • Worker completion path now tolerates minimal backend stubs that do not implement dependency-resolution APIs.
  • PostgreSQL delayed-job retrieval now removes due delayed records atomically, restoring delayed lifecycle correctness.
  • In-memory and MongoDB backends now prevent failed jobs from being double-counted as waiting in queue stats.
  • Stalled-job recovery behavior was aligned across backends for payload/state consistency in re-enqueue flows.