Skip to content

Releases: basalam/baqueue

release 1.1.0

Choose a tag to compare

@sobhanidev sobhanidev released this 30 Jun 08:46
feat: add "Execute Now" for scheduled jobs and per-attempt timeline

Dashboard job-detail modal now supports two new capabilities:

1. Execute Now: a pending job scheduled for the future can be promoted to
   run immediately. Adds a race-safe promote(job_id) driver method
   (concrete default in BaseDriver + per-driver overrides for memory,
   redis, sqlite, postgres), a promote_job API method, and the
   POST /api/jobs/{job_id}/execute endpoint. The button shows exactly
   when isScheduled() holds (pending + future delay_until).

2. Per-attempt history: JobPayload gains a `history` list recording one
   bounded entry per execution attempt (attempt, started/finished,
   status, truncated error, will_retry, next_retry_at). The worker
   appends a record in each branch of _process. The modal timeline lists
   every attempt; old data and SQL drivers fall back to the legacy
   single timeline.

Backward compatibility:
- promote() is a concrete default, so external BaseDriver subclasses
  keep instantiating.
- to_dict() gains a keyword-only include_history=True, leaving all
  existing callers (incl. Redis persistence) unchanged.
- from_dict() tolerates missing `history`, so old stored payloads load.
- No SQLite/Postgres schema change (history persists on Redis + Memory).
- Per-attempt errors truncated (~1000 chars) and history bounded by
  attempt count to avoid payload-size growth.

Bumps version to 1.1.0. Adds 22 tests; full suite green (215 passed).

release 1.0.2

Choose a tag to compare

@sobhanidev sobhanidev released this 21 Jun 07:42
chore: bump version to 1.0.2

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

1.0.1

Choose a tag to compare

@sobhanidev sobhanidev released this 03 Jun 09:17

Full Changelog: 1.0.0...1.0.1

1.0.0

Choose a tag to compare

@sobhanidev sobhanidev released this 03 Jun 09:04