Skip to content

feat(rails): support for solid queue#2942

Draft
solnic wants to merge 34 commits intomasterfrom
2587-support-solid-queue
Draft

feat(rails): support for solid queue#2942
solnic wants to merge 34 commits intomasterfrom
2587-support-solid-queue

Conversation

@solnic
Copy link
Copy Markdown
Collaborator

@solnic solnic commented Apr 28, 2026

TBD

solnic and others added 30 commits April 27, 2026 12:28
Introduce sentry-rails/spec/active_job/ with the adapter-agnostic
harness, FailingJob fixture, and composing shared example. No backend
wiring yet — that lands in a follow-up.

Refs #2933.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Extend the harness drain helper to accept an at: keyword so backends
that distinguish scheduled from immediate jobs can be drained
deterministically.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Extend the harness with a configure_sentry hook so shared examples can
override Sentry.init at make_basic_app time, then add a shared example
asserting Job enqueued / Job performed structured log entries.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Every it block from spec/sentry/rails/activejob_spec.rb is now covered
by a per-area shared example under spec/active_job/shared_examples/,
exercised on the test adapter via spec/active_job/test_adapter_spec.rb.
The named test_jobs.rb fixtures are kept in place for the legacy
log-subscriber and Ruby 2.7 specs that still depend on them.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-authored-by: Copilot <copilot@github.com>
solnic and others added 4 commits April 28, 2026 11:28
Wire SolidQueue into the new active_job harness. Adds the gem to the
Rails 7.1+ branch of the Gemfile, ships db/queue_schema.rb in the dummy
app loaded lazily via load_queue_schema, and extends the harness with
:solid_queue branches that load the schema on boot, drain via
ReadyExecution.claim, and truncate tables between examples.

Tighten the dummy-app gitignore so db/queue_schema.rb is trackable
while .sqlite3 artefacts stay out.

Skipped on Rails < 7.1 (solid_queue's minimum).

Refs #2933.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@solnic solnic linked an issue Apr 28, 2026 that may be closed by this pull request
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Support Solid Queue

1 participant