flightdeck 0.5.3 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +8 -199
  3. metadata +12 -96
  4. data/MIT-LICENSE +0 -21
  5. data/app/assets/flightdeck/flightdeck-3967b9e6c506.css +0 -3
  6. data/app/assets/flightdeck/flightdeck-3aac23f80afe.js +0 -414
  7. data/app/assets/flightdeck/manifest.json +0 -16
  8. data/app/controllers/concerns/flightdeck/toasts.rb +0 -35
  9. data/app/controllers/flightdeck/application_controller.rb +0 -110
  10. data/app/controllers/flightdeck/assets_controller.rb +0 -39
  11. data/app/controllers/flightdeck/jobs/actions_controller.rb +0 -166
  12. data/app/controllers/flightdeck/jobs/discards_controller.rb +0 -43
  13. data/app/controllers/flightdeck/jobs/retries_controller.rb +0 -22
  14. data/app/controllers/flightdeck/jobs_controller.rb +0 -39
  15. data/app/controllers/flightdeck/overview_controller.rb +0 -11
  16. data/app/controllers/flightdeck/processes_controller.rb +0 -54
  17. data/app/controllers/flightdeck/queues_controller.rb +0 -56
  18. data/app/controllers/flightdeck/recurring_tasks_controller.rb +0 -51
  19. data/app/helpers/flightdeck/application_helper.rb +0 -85
  20. data/app/helpers/flightdeck/infrastructure_helper.rb +0 -24
  21. data/app/helpers/flightdeck/jobs_helper.rb +0 -117
  22. data/app/helpers/flightdeck/metrics_helper.rb +0 -49
  23. data/app/models/flightdeck/arguments_preview.rb +0 -95
  24. data/app/models/flightdeck/bulk_action.rb +0 -83
  25. data/app/models/flightdeck/cache.rb +0 -51
  26. data/app/models/flightdeck/cron_schedule.rb +0 -102
  27. data/app/models/flightdeck/duration.rb +0 -23
  28. data/app/models/flightdeck/error_summary.rb +0 -64
  29. data/app/models/flightdeck/grouped_failures.rb +0 -24
  30. data/app/models/flightdeck/job_detail.rb +0 -156
  31. data/app/models/flightdeck/job_row.rb +0 -103
  32. data/app/models/flightdeck/jobs_query.rb +0 -233
  33. data/app/models/flightdeck/metrics/bar_chart.rb +0 -49
  34. data/app/models/flightdeck/metrics/chart.rb +0 -111
  35. data/app/models/flightdeck/metrics/line_chart.rb +0 -63
  36. data/app/models/flightdeck/metrics/series.rb +0 -165
  37. data/app/models/flightdeck/metrics/sparkline.rb +0 -45
  38. data/app/models/flightdeck/metrics/time_bucket.rb +0 -95
  39. data/app/models/flightdeck/overview.rb +0 -210
  40. data/app/models/flightdeck/process_registry.rb +0 -102
  41. data/app/models/flightdeck/queue_stats.rb +0 -86
  42. data/app/models/flightdeck/recurring_catalog.rb +0 -114
  43. data/app/views/flightdeck/jobs/_failed_row.html.erb +0 -33
  44. data/app/views/flightdeck/jobs/_filter_bar.html.erb +0 -29
  45. data/app/views/flightdeck/jobs/_list.html.erb +0 -94
  46. data/app/views/flightdeck/jobs/_pager.html.erb +0 -22
  47. data/app/views/flightdeck/jobs/_row.html.erb +0 -23
  48. data/app/views/flightdeck/jobs/_state_tabs.html.erb +0 -10
  49. data/app/views/flightdeck/jobs/index.html.erb +0 -10
  50. data/app/views/flightdeck/jobs/show.html.erb +0 -100
  51. data/app/views/flightdeck/metrics/_bar_chart.html.erb +0 -34
  52. data/app/views/flightdeck/metrics/_line_chart.html.erb +0 -38
  53. data/app/views/flightdeck/metrics/_range_control.html.erb +0 -7
  54. data/app/views/flightdeck/metrics/_sparkline.html.erb +0 -9
  55. data/app/views/flightdeck/overview/_completion.html.erb +0 -19
  56. data/app/views/flightdeck/overview/_failures.html.erb +0 -28
  57. data/app/views/flightdeck/overview/_fleet.html.erb +0 -21
  58. data/app/views/flightdeck/overview/_queues.html.erb +0 -41
  59. data/app/views/flightdeck/overview/_throughput.html.erb +0 -23
  60. data/app/views/flightdeck/overview/_tiles.html.erb +0 -14
  61. data/app/views/flightdeck/overview/index.html.erb +0 -29
  62. data/app/views/flightdeck/processes/_fleet.html.erb +0 -54
  63. data/app/views/flightdeck/processes/_row.html.erb +0 -28
  64. data/app/views/flightdeck/processes/index.html.erb +0 -5
  65. data/app/views/flightdeck/queues/_cards.html.erb +0 -46
  66. data/app/views/flightdeck/queues/index.html.erb +0 -5
  67. data/app/views/flightdeck/recurring_tasks/_table.html.erb +0 -53
  68. data/app/views/flightdeck/recurring_tasks/index.html.erb +0 -5
  69. data/app/views/flightdeck/shared/_toast.html.erb +0 -7
  70. data/app/views/flightdeck/shared/refresh.turbo_stream.erb +0 -14
  71. data/app/views/layouts/flightdeck/application.html.erb +0 -110
  72. data/config/routes.rb +0 -40
  73. data/lib/flightdeck/assets.rb +0 -72
  74. data/lib/flightdeck/configuration.rb +0 -82
  75. data/lib/flightdeck/engine.rb +0 -31
  76. data/lib/flightdeck/version.rb +0 -5
  77. data/lib/flightdeck.rb +0 -31
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6eceb3b8e057fc9c676f440e010d2c8944cf473603a2ef4acae924a270d80ed1
4
- data.tar.gz: 3d40bf9079006d5c151a75496d9b70ebfff0c65536fcf05e84f31d78310f1be7
3
+ metadata.gz: 2da4d1e0df45cf87a2169a34d48f3e0f73f0a1cd841ee9bf811c97bf9b063e7d
4
+ data.tar.gz: a718fd3e9b4a41a59761eacc568ed8398976d53432271063c46bb151568099fa
5
5
  SHA512:
6
- metadata.gz: 9f124a789e06b201f3783cb75adfbebb1327c0cd99f16d5557d3091e56413e85225fb1d8529cfa0df955ac6ba551bf918e1f74cbde3643a9e41a12b59d9680b7
7
- data.tar.gz: 57d1acf75ad7ece585b994f95162a545f1010e8eeaafbbb2702e9dc81c1d445825953625fdcbe916588813108fa21c057ae7b4fc0f90686333d652e277fca7b7
6
+ metadata.gz: 12000285bbcba3858d2217cfb05949718ab71b54f907a34e191dcffb831c2ba23811b2e5b274c9447b18cce3792f5c7266b24dd69b19bf73839db8c562af7a67
7
+ data.tar.gz: 6070f0e1c197fdb0c8d2dfb10e62793ad1179d3dfaa34ab04c787ef5b79335d429c703ee944fc5c1c228b077fd6341bcb702809ea0389b804db219ca6afd3422
data/README.md CHANGED
@@ -1,206 +1,15 @@
1
- # Flightdeck
1
+ # flightdeck → solid_queue-flightdeck
2
2
 
3
- A dashboard for [Solid Queue](https://github.com/rails/solid_queue) that is
4
- pleasant to look at and actually operational. Where Mission Control gives you
5
- lists, Flightdeck gives you a console: live-polling panels, throughput and
6
- completion-time charts computed straight from the Solid Queue tables, failure
7
- triage with grouping and bulk retry, queue pause/resume, fleet health with
8
- heartbeat detection, and recurring-task control. It ships precompiled assets
9
- (no pipeline configuration), works in API-only apps, mounts anywhere, and
10
- refuses to serve a single unauthenticated request.
3
+ This gem has been renamed to
4
+ [`solid_queue-flightdeck`](https://rubygems.org/gems/solid_queue-flightdeck).
11
5
 
12
- ![Overview, dark](docs/screenshots/overview-dark.png)
13
- ![Overview, light](docs/screenshots/overview-light.png)
14
-
15
- <details>
16
- <summary><strong>More screenshots</strong> — failed jobs, job detail, queues, processes</summary>
17
-
18
- ![Failed jobs](docs/screenshots/jobs-failed-dark.png)
19
- ![Job detail](docs/screenshots/job-detail-dark.png)
20
- ![Queues](docs/screenshots/queues-dark.png)
21
- ![Processes](docs/screenshots/processes-dark.png)
22
-
23
- </details>
24
-
25
- ## Installation
26
-
27
- ```ruby
28
- # Gemfile
29
- gem "flightdeck"
30
- ```
31
-
32
- No migrations, no asset configuration. Requires Ruby >= 3.1, Rails >= 7.1 and
33
- Solid Queue >= 1.0.
34
-
35
- ## Mounting
36
-
37
- ```ruby
38
- # config/routes.rb
39
- mount Flightdeck::Engine => "/flightdeck"
40
- ```
41
-
42
- Any path works, including nested ones — every URL Flightdeck emits comes from
43
- the request's own script name. Nested mounts have their own test suite.
44
-
45
- ## Authentication
46
-
47
- **Flightdeck returns 401 until you configure it, in every environment.** It can
48
- retry, discard and delete jobs, so there is no default that lets anyone in.
49
-
50
- ### Behind your app's own authentication (recommended)
51
-
52
- The usual shape — gate the route with Devise, and hand Flightdeck the same base
53
- controller your other admin pages use:
54
-
55
- ```ruby
56
- # config/routes.rb
57
- authenticated :user, lambda { |u| u.admin? } do
58
- namespace :admin do
59
- root to: "dashboard#index"
60
- mount Flightdeck::Engine, at: "/jobs"
61
- end
62
- end
63
- ```
64
-
65
- ```ruby
66
- # config/initializers/flightdeck.rb
67
- Flightdeck.configure do |config|
68
- config.base_controller_class = "Admin::BaseController"
69
- end
70
- ```
71
-
72
- > **The routing constraint alone is not enough.** Flightdeck does not inspect
73
- > your routes; it refuses to serve until it is told how to authenticate. Setting
74
- > `base_controller_class` makes your controller's `before_action`s Flightdeck's
75
- > gate and skips its own challenge entirely. Without it, the engine still
76
- > answers 401 behind the constraint.
77
-
78
- ### HTTP Basic
79
-
80
- For apps without such a base controller. Any one of these is enough:
81
-
82
- ```bash
83
- FLIGHTDECK_USERNAME=admin FLIGHTDECK_PASSWORD=a-long-secret
84
- ```
85
-
86
- ```yaml
87
- # bin/rails credentials:edit
88
- flightdeck:
89
- username: admin
90
- password: a-long-secret
91
- ```
92
-
93
- ```ruby
94
- Flightdeck.configure do |config|
95
- config.http_basic = { username: "admin", password: "a-long-secret" }
96
- end
97
- ```
98
-
99
- `http_basic` also accepts a callable, re-evaluated per request, for rotating
100
- credentials. Credentials are compared with `secure_compare` and read per
101
- request, never memoized at boot.
102
-
103
- In **API-only** apps there is no host session for Devise to use, so use
104
- Flightdeck's own HTTP Basic there.
105
-
106
- ### Disabling authentication entirely
107
-
108
- ```ruby
109
- # config/initializers/flightdeck.rb
110
- Flightdeck.configure do |config|
111
- config.skip_authentication = true
112
- end
113
- ```
114
-
115
- This serves the dashboard — which can retry, discard and delete jobs — to
116
- anyone who can reach the mount. It exists for deployments where something
117
- upstream already guards it: a routing constraint, a VPN, a reverse proxy. The
118
- routing-constraint caveat above still applies unless you set this: without it,
119
- the engine answers 401 behind your constraint.
120
-
121
- ## Configuration
122
-
123
- | Option | Default | Purpose |
124
- | --- | --- | --- |
125
- | `base_controller_class` | `nil` | Controller (a String) to inherit from, to reuse your app's authentication. |
126
- | `http_basic` | `nil` | `{ username:, password: }` or a callable. Falls back to `ENV`, then credentials. |
127
- | `skip_authentication` | `false` | Serve without any authentication. For mounts guarded upstream (routing constraint, VPN, proxy). |
128
- | `poll_interval` | `5.seconds` | Refresh rate for list and stat panels. |
129
- | `chart_poll_interval` | `30.seconds` | Refresh rate for charts. |
130
- | `per_page` | `25` | Rows per page in job lists. |
131
- | `count_cap` | `500_000` | Counting stops here; rendered as `500,000+`. |
132
- | `bulk_action_limit` | `1_000` | Cap on jobs touched by one bulk retry/discard. |
133
- | `chart_cache_ttl` | `30.seconds` | How long chart series are cached. |
134
- | `display_timezone` | `"UTC"` | Timezone for displayed timestamps. Queries stay in UTC. |
135
- | `backtrace_lines` | `50` | Backtrace frames shown on job detail. |
136
-
137
- ## Chart history and job retention
138
-
139
- Flightdeck adds no tables and changes no retention: charts read Solid Queue's
140
- own rows, so history is bounded by your app's Solid Queue purge setting.
141
- Finished jobs are deleted after `clear_finished_jobs_after` — **1 day by
142
- default** — which leaves a 7-day throughput chart mostly empty. To keep charts
143
- honest for the windows you care about, raise it to at least the longest window:
6
+ This final `flightdeck` version is an empty shell that depends on the new gem,
7
+ so existing Gemfiles keep working. Update yours:
144
8
 
145
9
  ```ruby
146
- # config/application.rb (or an environment file)
147
- config.solid_queue.clear_finished_jobs_after = 14.days
148
- ```
149
-
150
- The cost is `solid_queue_jobs` table size — retention × throughput (100k
151
- jobs/day × 14 days ≈ 1.4M rows). Flightdeck's chart queries are windowed and
152
- index-backed, and counts are capped, so the dashboard stays fast at that size.
153
- Failed jobs are unaffected: Solid Queue never purges them automatically.
154
-
155
- ## API-only apps
156
-
157
- Works unchanged. Flightdeck carries its own cookies, session
158
- (`_flightdeck_session`) and flash as engine-local middleware wrapping only its
159
- own routes — your middleware stack is untouched. The whole suite runs a second
160
- time in API-only mode.
161
-
162
- ## Solid Queue on a separate database
163
-
164
- Nothing to configure. Every query goes through `SolidQueue::Record` and the
165
- Solid Queue models, so your `connects_to` routing applies automatically.
166
- Flightdeck never joins your application's tables and never touches the database
167
- at boot — it mounts cleanly even when the queue database is unreachable.
168
-
169
- ## Development
170
-
171
- ```bash
172
- bin/demo # schema + seeds + server, auth off, on :3000
173
- bin/test # asset freshness + both host modes
174
- bundle exec rake test # fast suite
175
- bundle exec rake test:system # headless Chrome (skipped if none installed)
176
- bundle exec rake screenshots # regenerate docs/screenshots
177
- bundle exec rake assets:build # rebuild CSS/JS
178
- bundle exec rubocop
179
- bin/release # full release: verify, push, wait for CI, tag, gem push (--dry-run to rehearse)
10
+ gem "solid_queue-flightdeck"
180
11
  ```
181
12
 
182
- Assets are committed, digest-named files under `app/assets/flightdeck/`, built
183
- from `assets-src/`. Tailwind scans `app/`, so **re-run `rake assets:build` and
184
- commit the result after changing a view** — CI fails on stale assets.
185
-
186
- CI runs the suite against SQLite, PostgreSQL and MySQL (via `DATABASE_URL`),
187
- each in normal and API-only mode. The database axis exists to protect
188
- `Flightdeck::Metrics::TimeBucket`, the only adapter-specific SQL in the gem.
189
-
190
- ## Known limitations
191
-
192
- - **Long charts undercount.** Solid Queue's `clear_finished_jobs_after` defaults
193
- to 1 day, so a 7-day throughput chart is missing purged jobs. Flightdeck
194
- annotates the chart rather than drawing the cliff as a trend. See
195
- [Chart history and job retention](#chart-history-and-job-retention) for the
196
- one-line fix.
197
- - **No historical time-to-start.** The claimed-execution row is deleted when a
198
- job finishes, so how long a finished job waited is unrecoverable. The chart
199
- shows time to *completion* and says so.
200
- - **Counts are capped** at `count_cap` and render as `500,000+`.
201
- - **Bulk actions are capped** at `bulk_action_limit` or 10 seconds, committing
202
- per batch, then offer to continue.
203
-
204
- ## License
13
+ The mount point, configuration and `Flightdeck` module are unchanged.
205
14
 
206
- MIT. See [MIT-LICENSE](MIT-LICENSE).
15
+ Source: https://github.com/cmer/solid_queue-flightdeck
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: flightdeck
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.3
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Carl Mercier
@@ -10,117 +10,29 @@ cert_chain: []
10
10
  date: 1980-01-02 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
- name: rails
13
+ name: solid_queue-flightdeck
14
14
  requirement: !ruby/object:Gem::Requirement
15
15
  requirements:
16
16
  - - ">="
17
17
  - !ruby/object:Gem::Version
18
- version: '7.1'
18
+ version: 0.6.0
19
19
  type: :runtime
20
20
  prerelease: false
21
21
  version_requirements: !ruby/object:Gem::Requirement
22
22
  requirements:
23
23
  - - ">="
24
24
  - !ruby/object:Gem::Version
25
- version: '7.1'
26
- - !ruby/object:Gem::Dependency
27
- name: solid_queue
28
- requirement: !ruby/object:Gem::Requirement
29
- requirements:
30
- - - ">="
31
- - !ruby/object:Gem::Version
32
- version: '1.0'
33
- type: :runtime
34
- prerelease: false
35
- version_requirements: !ruby/object:Gem::Requirement
36
- requirements:
37
- - - ">="
38
- - !ruby/object:Gem::Version
39
- version: '1.0'
40
- description: 'Flightdeck is a mountable Rails engine that gives Solid Queue a fast,
41
- polished dashboard: jobs, failures, queues, processes, recurring tasks and live
42
- charts. Works in API-only hosts and ships its own precompiled assets.'
25
+ version: 0.6.0
26
+ description: The flightdeck gem has been renamed to solid_queue-flightdeck. This version
27
+ only depends on the new gem so existing Gemfiles keep working. Please update your
28
+ Gemfile to gem "solid_queue-flightdeck".
43
29
  email:
44
30
  - carl@carlmercier.com
45
31
  executables: []
46
32
  extensions: []
47
33
  extra_rdoc_files: []
48
34
  files:
49
- - MIT-LICENSE
50
35
  - README.md
51
- - app/assets/flightdeck/flightdeck-3967b9e6c506.css
52
- - app/assets/flightdeck/flightdeck-3aac23f80afe.js
53
- - app/assets/flightdeck/manifest.json
54
- - app/controllers/concerns/flightdeck/toasts.rb
55
- - app/controllers/flightdeck/application_controller.rb
56
- - app/controllers/flightdeck/assets_controller.rb
57
- - app/controllers/flightdeck/jobs/actions_controller.rb
58
- - app/controllers/flightdeck/jobs/discards_controller.rb
59
- - app/controllers/flightdeck/jobs/retries_controller.rb
60
- - app/controllers/flightdeck/jobs_controller.rb
61
- - app/controllers/flightdeck/overview_controller.rb
62
- - app/controllers/flightdeck/processes_controller.rb
63
- - app/controllers/flightdeck/queues_controller.rb
64
- - app/controllers/flightdeck/recurring_tasks_controller.rb
65
- - app/helpers/flightdeck/application_helper.rb
66
- - app/helpers/flightdeck/infrastructure_helper.rb
67
- - app/helpers/flightdeck/jobs_helper.rb
68
- - app/helpers/flightdeck/metrics_helper.rb
69
- - app/models/flightdeck/arguments_preview.rb
70
- - app/models/flightdeck/bulk_action.rb
71
- - app/models/flightdeck/cache.rb
72
- - app/models/flightdeck/cron_schedule.rb
73
- - app/models/flightdeck/duration.rb
74
- - app/models/flightdeck/error_summary.rb
75
- - app/models/flightdeck/grouped_failures.rb
76
- - app/models/flightdeck/job_detail.rb
77
- - app/models/flightdeck/job_row.rb
78
- - app/models/flightdeck/jobs_query.rb
79
- - app/models/flightdeck/metrics/bar_chart.rb
80
- - app/models/flightdeck/metrics/chart.rb
81
- - app/models/flightdeck/metrics/line_chart.rb
82
- - app/models/flightdeck/metrics/series.rb
83
- - app/models/flightdeck/metrics/sparkline.rb
84
- - app/models/flightdeck/metrics/time_bucket.rb
85
- - app/models/flightdeck/overview.rb
86
- - app/models/flightdeck/process_registry.rb
87
- - app/models/flightdeck/queue_stats.rb
88
- - app/models/flightdeck/recurring_catalog.rb
89
- - app/views/flightdeck/jobs/_failed_row.html.erb
90
- - app/views/flightdeck/jobs/_filter_bar.html.erb
91
- - app/views/flightdeck/jobs/_list.html.erb
92
- - app/views/flightdeck/jobs/_pager.html.erb
93
- - app/views/flightdeck/jobs/_row.html.erb
94
- - app/views/flightdeck/jobs/_state_tabs.html.erb
95
- - app/views/flightdeck/jobs/index.html.erb
96
- - app/views/flightdeck/jobs/show.html.erb
97
- - app/views/flightdeck/metrics/_bar_chart.html.erb
98
- - app/views/flightdeck/metrics/_line_chart.html.erb
99
- - app/views/flightdeck/metrics/_range_control.html.erb
100
- - app/views/flightdeck/metrics/_sparkline.html.erb
101
- - app/views/flightdeck/overview/_completion.html.erb
102
- - app/views/flightdeck/overview/_failures.html.erb
103
- - app/views/flightdeck/overview/_fleet.html.erb
104
- - app/views/flightdeck/overview/_queues.html.erb
105
- - app/views/flightdeck/overview/_throughput.html.erb
106
- - app/views/flightdeck/overview/_tiles.html.erb
107
- - app/views/flightdeck/overview/index.html.erb
108
- - app/views/flightdeck/processes/_fleet.html.erb
109
- - app/views/flightdeck/processes/_row.html.erb
110
- - app/views/flightdeck/processes/index.html.erb
111
- - app/views/flightdeck/queues/_cards.html.erb
112
- - app/views/flightdeck/queues/index.html.erb
113
- - app/views/flightdeck/recurring_tasks/_table.html.erb
114
- - app/views/flightdeck/recurring_tasks/index.html.erb
115
- - app/views/flightdeck/shared/_toast.html.erb
116
- - app/views/flightdeck/shared/refresh.turbo_stream.erb
117
- - app/views/layouts/flightdeck/application.html.erb
118
- - config/routes.rb
119
- - lib/flightdeck.rb
120
- - lib/flightdeck/assets.rb
121
- - lib/flightdeck/configuration.rb
122
- - lib/flightdeck/engine.rb
123
- - lib/flightdeck/version.rb
124
36
  homepage: https://github.com/cmer/solid_queue-flightdeck
125
37
  licenses:
126
38
  - MIT
@@ -128,6 +40,10 @@ metadata:
128
40
  homepage_uri: https://github.com/cmer/solid_queue-flightdeck
129
41
  source_code_uri: https://github.com/cmer/solid_queue-flightdeck
130
42
  changelog_uri: https://github.com/cmer/solid_queue-flightdeck/blob/main/CHANGELOG.md
43
+ post_install_message: |
44
+ The flightdeck gem has been renamed to solid_queue-flightdeck.
45
+ Update your Gemfile: gem "solid_queue-flightdeck"
46
+ Everything else (mount point, configuration, Flightdeck module) is unchanged.
131
47
  rdoc_options: []
132
48
  require_paths:
133
49
  - lib
@@ -144,5 +60,5 @@ required_rubygems_version: !ruby/object:Gem::Requirement
144
60
  requirements: []
145
61
  rubygems_version: 4.0.10
146
62
  specification_version: 4
147
- summary: A beautiful, featureful dashboard for Solid Queue.
63
+ summary: 'Renamed: use solid_queue-flightdeck instead.'
148
64
  test_files: []
data/MIT-LICENSE DELETED
@@ -1,21 +0,0 @@
1
- MIT License
2
-
3
- Copyright (c) 2026 Carl Mercier
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.