Skip to content

v0.2.0

Choose a tag to compare

@github-actions github-actions released this 20 Sep 20:36
· 6 commits to main since this release
d6c1888

0.2.0 - 2026-09-20

🚀 Features

  • xterm.js terminal output, scheduling, cancellation, and execution UX overhaul (#7)
    • Live terminal output — stdout/stderr render in an embedded, vendored xterm.js terminal (no CDN): ANSI colors and progress bars display as in a real terminal, replacing the old ANSI-to-HTML conversion; cursor-based delta polling every 250 ms transfers only new characters regardless of output size
    • Scalable output storage — append-only 512 KB CommandOutputPart rows with browser-cacheable sealed parts and a 500 MB retention cap per field (ADMIN_RUNNER_MAX_OUTPUT); deterministic terminal layout via ADMIN_RUNNER_TERM_COLS/TERM_ROWS (exported as COLUMNS/LINES) and per-command flush_interval
    • Scheduling — interactive "Add schedule" admin UI (cron / interval / one-off) and declarative @register_command(schedule=…) via CronSchedule / IntervalSchedule / ClockedSchedule, materialized into django-q2's native periodic tasks with an overlap guard and one-off auto-disable
    • Cancellation & timeouts — graceful Stop via the output-flush heartbeat escalating to Force Stop (Celery revoke(terminate=True), django-q2 PID-targeted kill); new TIMEOUT status with Celery soft-limit mapping (detected by class name regardless of Celery's presence) and a stale-run sweeper that finalizes executions of dead workers
    • Execution page UX — output/stderr/result tabs, rerun action prefilled with the original parameters, run labels, schedule filter, and status badges on a redesigned changelist

🐛 Fixes

  • Improve subtitle in admin view (#6)
  • Fixed parameter type parsing (#5)