Skip to content

celery-manager 0.1.0a3

Pre-release
Pre-release

Choose a tag to compare

@Pythondeveloper6 Pythondeveloper6 released this 25 Oct 16:51
· 141 commits to main since this release

Third alpha of celery-manager: stable interval-schedule skips and race-free task-run writes (verified against real PostgreSQL and MySQL).

pip install --pre -U celery-manager

Fixed

  • Interval-schedule occurrences (run_every / seconds / timedelta) are
    now anchored to the schedule's last observed run instead of "now + interval".
    Skips on interval schedules display stably across page loads and actually
    fire against beat's real run times.
  • Race-free task_runs writes. The events listener, the @track
    decorator, report_progress() and the retry button used to check-then-insert
    the same row. They now share one race-safe get-or-create (native upsert on
    SQLite/PostgreSQL/MySQL, SAVEPOINT fallback elsewhere), so:
    • retry no longer returns a 500 or loses its lineage when the worker's row
      lands first;
    • the listener no longer leaves worker/queue empty when it loses the race;
    • late or out-of-order events can no longer downgrade a run's status;
    • the producer's hostname from task-sent is no longer recorded as the worker;
    • event arguments are stored as JSON, so retries from listener-created rows
      decode correctly.

Added

Changed

  • README and docs no longer say tasks can be started from the UI; starting is
    API-only (POST /api/tasks/start).