Skip to content

Releases: cmer/solid_queue-flightdeck

solid_queue-flightdeck 1.1.0

Choose a tag to compare

@cmer cmer released this 12 Aug 18:17
4945454

Added

  • The interface font is now configurable: pick one at the bottom of the sidebar
    (remembered per browser), or set the default for everyone with
    config.ui_font. Public Sans (the new default), Barlow, General Sans, Inter,
    Manrope, or the OS UI font.

Changed

  • Fonts are served as separate cached assets instead of being inlined in the
    stylesheet, so a browser downloads only the face it renders in. The stylesheet
    is 74% smaller (118KB → 31KB).

solid_queue-flightdeck 1.0.0

Choose a tag to compare

@cmer cmer released this 12 Aug 03:27
d2775d3

Changed

  • Flightdeck is now 1.0: no functional changes from 0.6.0, but the mount point,
    Flightdeck.configure options and base_controller_class contract are now
    stable and covered by semantic versioning.

solid_queue-flightdeck 0.6.0

Choose a tag to compare

@cmer cmer released this 28 Jul 15:37
76d6fd9

Changed

  • The gem is now named solid_queue-flightdeck (previously flightdeck).
    Update your Gemfile line to gem "solid_queue-flightdeck" — the Ruby
    namespace, mount point and configuration are unchanged. The old gem name
    remains as a shell that depends on this one.

flightdeck 0.5.3

Choose a tag to compare

@cmer cmer released this 28 Jul 15:30
5bcaef6

Fixed

  • The failed-jobs selection bar's "apply to all N matching" button always
    retried, even when you meant to discard. It is now two explicit buttons,
    "Retry all" and "Discard all".

flightdeck 0.5.2

Choose a tag to compare

@cmer cmer released this 28 Jul 04:46
d8cad45

Fixed

  • The dashboard no longer 500s when the engine is mounted under a named scope
    or namespace (e.g. namespace :admin { mount Flightdeck::Engine, at: "/jobs" })
    or with a custom route name via as:.

flightdeck 0.5.1

Choose a tag to compare

@cmer cmer released this 28 Jul 04:06
60c6e7c

Added

  • config.skip_authentication to serve the dashboard without any
    authentication, for mounts guarded upstream (routing constraint, VPN, proxy).

flightdeck 0.5.0

Choose a tag to compare

@cmer cmer released this 28 Jul 03:11
8fd281d

First release.

Added

  • Mountable Rails engine (mount Flightdeck::Engine => "/flightdeck") with no
    migrations and no asset pipeline requirements.
  • Overview: six stat tiles (24h throughput with prior-window delta, failures
    with failure rate, ready, scheduled with next-due countdown, in progress with
    worker capacity, oldest ready age), throughput and time-to-completion charts
    with 1H/24H/7D ranges, queue mini-table with sparklines, recent failures, and
    a fleet health strip.
  • Jobs: state tabs (all, ready, scheduled, in progress, blocked, finished,
    failed) with counts, class and queue filters, prefix search, and keyset
    pagination.
  • Job detail: error with app-frame-highlighted backtrace, pretty-printed raw
    arguments (never ActiveJob-deserialized), metadata and a derived lifecycle
    timeline.
  • Failed jobs: grouped by exception class, row selection, and retry/discard
    for one job, the selected jobs, or everything matching the current filter —
    capped, deadlined and committed per batch.
  • Queues: depth, latency, hourly rate and sparkline per queue, with
    pause/resume.
  • Processes: supervisor-grouped fleet with heartbeat freshness, a
    dead-process banner, and guarded pruning.
  • Recurring tasks: cron with a human-readable schedule, last and next run,
    last-run status, and run-now.
  • Server-rendered SVG charts with no JavaScript charting library, coloured
    entirely from CSS custom properties.
  • Light and dark themes from prefers-color-scheme with a persisted override.
  • Live polling via Turbo Frames with a topbar LIVE switch, visibility-aware
    pausing, focused-input pausing and ±10% jitter.
  • API-only host support via engine-local cookie, session and flash middleware.
  • Authentication required in every environment: HTTP Basic from configuration,
    ENV or Rails credentials, or inheritance from the host's own base
    controller.
  • Precompiled, digest-named CSS and JS with embedded fonts, served from a
    manifest whitelist with immutable caching.

Security

  • The dashboard returns 401 by default in every environment, including
    development, until authentication is configured.
  • Credentials are compared with ActiveSupport::SecurityUtils.secure_compare
    and read per request rather than memoized at boot.
  • Assets are served only by exact match against the built manifest, so a request
    can never name a file that was not built.