diff --git a/.devcontainer/.env.example b/.devcontainer/.env.example index cb5d03635..873527bf3 100644 --- a/.devcontainer/.env.example +++ b/.devcontainer/.env.example @@ -12,5 +12,11 @@ SENTRY_E2E_SVELTE_APP_PORT=4001 SENTRY_E2E_RAILS_APP_URL="http://localhost:4000" SENTRY_E2E_SVELTE_APP_URL="http://localhost:4001" +# ActiveJob queue adapter under test: async | inline | sidekiq | resque | delayed_job +SENTRY_E2E_ACTIVE_JOB_ADAPTER="async" + +# Redis for the sidekiq/resque adapters (the Compose service is named "redis") +REDIS_URL="redis://redis:6379" + # Faster builds with compose COMPOSE_BAKE=true diff --git a/.devcontainer/docker-compose.yml b/.devcontainer/docker-compose.yml index adc827986..e9831a9f9 100644 --- a/.devcontainer/docker-compose.yml +++ b/.devcontainer/docker-compose.yml @@ -25,6 +25,9 @@ services: command: ["mise", "run", "e2e:serve"] environment: BUNDLE_PATH: /home/sentry/bundle + depends_on: + redis: + condition: service_healthy volumes: - ..:/workspace/sentry:cached - bundle-gems:/home/sentry/bundle @@ -38,6 +41,11 @@ services: - ALLOW_EMPTY_PASSWORD=yes ports: - "6379:6379" + healthcheck: + test: ["CMD", "redis-cli", "ping"] + interval: 2s + timeout: 3s + retries: 10 volumes: bundle-gems: diff --git a/.github/workflows/e2e_tests.yml b/.github/workflows/e2e_tests.yml index 530fa772a..5defb8654 100644 --- a/.github/workflows/e2e_tests.yml +++ b/.github/workflows/e2e_tests.yml @@ -17,18 +17,24 @@ concurrency: jobs: e2e-tests: - name: e2e tests + name: e2e tests (ruby ${{ matrix.ruby.flavor }}, ${{ matrix.adapter }}) runs-on: ubuntu-latest - timeout-minutes: 5 + timeout-minutes: 8 strategy: fail-fast: false matrix: - include: - - ruby_version: "3.4.9" + ruby: + - version: "3.4.9" flavor: "3.4" - - ruby_version: "4.0.3" + - version: "4.0.3" flavor: "4.0" + adapter: + - async + - inline + - sidekiq + - resque + - delayed_job steps: - name: Checkout code @@ -42,9 +48,10 @@ jobs: run: | cd .devcontainer cp .env.example .env - echo "RUBY_VERSION=${{ matrix.ruby_version }}" >> .env - echo "DOCKER_IMAGE=ghcr.io/getsentry/sentry-ruby-devcontainer-${{ matrix.flavor }}" >> .env + echo "RUBY_VERSION=${{ matrix.ruby.version }}" >> .env + echo "DOCKER_IMAGE=ghcr.io/getsentry/sentry-ruby-devcontainer-${{ matrix.ruby.flavor }}" >> .env echo "DOCKER_TAG=${{ steps.devcontainer-version.outputs.version }}" >> .env + echo "SENTRY_E2E_ACTIVE_JOB_ADAPTER=${{ matrix.adapter }}" >> .env - name: Log in to GHCR uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3 @@ -54,7 +61,7 @@ jobs: password: ${{ secrets.GITHUB_TOKEN }} - name: Pull test container image - run: docker pull ghcr.io/getsentry/sentry-ruby-devcontainer-${{ matrix.flavor }}:${{ steps.devcontainer-version.outputs.version }} + run: docker pull ghcr.io/getsentry/sentry-ruby-devcontainer-${{ matrix.ruby.flavor }}:${{ steps.devcontainer-version.outputs.version }} - name: Restore node_modules cache uses: actions/cache@6f8efc29b200d32929f49075959781ed54ec270c # v3 @@ -114,7 +121,7 @@ jobs: if: failure() uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4 with: - name: e2e-test-logs-ruby-${{ matrix.ruby_version }} + name: e2e-test-logs-ruby-${{ matrix.ruby.version }}-${{ matrix.adapter }} path: | log/sentry_debug_events.log retention-days: 7 diff --git a/.mise.toml b/.mise.toml index dd108298f..1f5325b16 100644 --- a/.mise.toml +++ b/.mise.toml @@ -14,6 +14,10 @@ run = "cd spec/apps/rails-mini && bundle exec ruby app.rb" description = "Start the svelte-mini e2e app" run = "cd spec/apps/svelte-mini && npm run dev" +[tasks."e2e:worker"] +description = "Start the rails-mini ActiveJob worker (sidekiq/resque/delayed_job; idles for async/inline)" +run = "cd spec/apps/rails-mini && bundle exec ruby worker.rb" + [tasks."e2e:serve"] description = "Start all e2e apps in parallel" -depends = ["e2e:rails", "e2e:svelte"] +depends = ["e2e:rails", "e2e:svelte", "e2e:worker"] diff --git a/sentry-rails/Gemfile b/sentry-rails/Gemfile index ea1d6ac51..2e1571835 100644 --- a/sentry-rails/Gemfile +++ b/sentry-rails/Gemfile @@ -56,6 +56,53 @@ end gem "mini_magick" +# Sidekiq is a dev-only dependency, used by the common ActiveJob spec +# suite to verify the AJ tracing extension works against the :sidekiq +# adapter independent of sentry-sidekiq's native middleware. +# +# Gated on Ruby/Rails/platform because: +# - The sidekiq_adapter_spec only passes on Rails > 7.0. +# - Sidekiq 8 requires Ruby >= 3.2; older Rubies fall back to Sidekiq 7. +# - Sidekiq does not reliably support JRuby. +# +# sidekiq_adapter_spec.rb also rescues LoadError and re-checks the +# Rails version, so matrices that don't bundle Sidekiq skip the spec +# cleanly without any other gating. +unless RUBY_PLATFORM.include?("java") + if rails_version > Gem::Version.new("7.0.0") && ruby_version >= Gem::Version.new("3.2") + gem "sidekiq", "~> 8.0" + elsif rails_version > Gem::Version.new("7.0.0") + gem "sidekiq", "~> 7.0" + end +end + +# delayed_job and resque are dev-only dependencies, used by the common +# ActiveJob spec suite to verify the AJ tracing extension works against +# the :delayed_job and :resque adapters independent of the dedicated +# sentry-delayed_job / sentry-resque integrations. +# +# Both spec files rescue LoadError and skip cleanly on matrices that +# don't bundle the gem, so the gating below only needs to keep +# `bundle install` resolvable — it doesn't have to be exact. +unless RUBY_PLATFORM.include?("java") + # delayed_job is backed by ActiveRecord here (delayed_job_active_record), + # reusing the dummy app's SQLite database. It supports every Ruby/Rails + # combination in the matrix. + gem "delayed_job" + gem "delayed_job_active_record" + + # resque has no in-memory test mode, so the spec drives it through + # mock_redis instead of a live Redis (mirroring how the sidekiq context + # uses Sidekiq's fake mode). resque 3 / resque-scheduler 5 / mock_redis + # all require Ruby >= 3.0, so gate them on that — older matrices skip + # the resque spec via its LoadError rescue. + if ruby_version >= Gem::Version.new("3.0") + gem "resque" + gem "resque-scheduler", "~> 5.0" + gem "mock_redis" + end +end + gem "sprockets-rails" gem "benchmark-ips" diff --git a/sentry-rails/gemfiles/ruby-2.7_rails-5.2.0.gemfile.lock b/sentry-rails/gemfiles/ruby-2.7_rails-5.2.0.gemfile.lock index a568b01dc..9b418d690 100644 --- a/sentry-rails/gemfiles/ruby-2.7_rails-5.2.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-2.7_rails-5.2.0.gemfile.lock @@ -68,6 +68,7 @@ GEM arel (9.0.0) ast (2.4.3) base64 (0.3.0) + benchmark (0.5.0) benchmark-ips (2.5.0) benchmark-ipsa (0.2.0) benchmark-ips (~> 2.5.0) @@ -81,6 +82,13 @@ GEM concurrent-ruby (1.3.6) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) erubi (1.13.1) @@ -124,6 +132,8 @@ GEM net-smtp (0.5.1) net-protocol nio4r (2.7.5) + nokogiri (1.15.7-aarch64-linux) + racc (~> 1.4) nokogiri (1.15.7-x86_64-linux) racc (~> 1.4) parallel (1.28.0) @@ -261,6 +271,7 @@ GEM websocket-extensions (0.1.5) PLATFORMS + aarch64-linux x86_64-linux DEPENDENCIES @@ -271,6 +282,8 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record irb jdbc-sqlite3 mini_magick diff --git a/sentry-rails/gemfiles/ruby-2.7_rails-6.0.0.gemfile.lock b/sentry-rails/gemfiles/ruby-2.7_rails-6.0.0.gemfile.lock index d972bf71a..6ea3c20df 100644 --- a/sentry-rails/gemfiles/ruby-2.7_rails-6.0.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-2.7_rails-6.0.0.gemfile.lock @@ -81,6 +81,7 @@ GEM zeitwerk (~> 2.2, >= 2.2.2) ast (2.4.3) base64 (0.3.0) + benchmark (0.5.0) benchmark-ips (2.5.0) benchmark-ipsa (0.2.0) benchmark-ips (~> 2.5.0) @@ -94,6 +95,13 @@ GEM concurrent-ruby (1.3.6) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) erubi (1.13.1) @@ -137,6 +145,8 @@ GEM net-smtp (0.5.1) net-protocol nio4r (2.7.5) + nokogiri (1.15.7-aarch64-linux) + racc (~> 1.4) nokogiri (1.15.7-x86_64-linux) racc (~> 1.4) parallel (1.28.0) @@ -277,6 +287,7 @@ GEM zeitwerk (2.6.18) PLATFORMS + aarch64-linux x86_64-linux DEPENDENCIES @@ -287,6 +298,8 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record irb jdbc-sqlite3 mini_magick diff --git a/sentry-rails/gemfiles/ruby-2.7_rails-6.1.0.gemfile.lock b/sentry-rails/gemfiles/ruby-2.7_rails-6.1.0.gemfile.lock index 136c3bb7d..a85ee2534 100644 --- a/sentry-rails/gemfiles/ruby-2.7_rails-6.1.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-2.7_rails-6.1.0.gemfile.lock @@ -85,6 +85,7 @@ GEM zeitwerk (~> 2.3) ast (2.4.3) base64 (0.3.0) + benchmark (0.5.0) benchmark-ips (2.5.0) benchmark-ipsa (0.2.0) benchmark-ips (~> 2.5.0) @@ -98,6 +99,13 @@ GEM concurrent-ruby (1.3.6) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) erb (4.0.4.1) @@ -144,6 +152,8 @@ GEM net-smtp (0.5.1) net-protocol nio4r (2.7.5) + nokogiri (1.15.7-aarch64-linux) + racc (~> 1.4) nokogiri (1.15.7-x86_64-linux) racc (~> 1.4) parallel (1.28.0) @@ -291,6 +301,7 @@ GEM zeitwerk (2.6.18) PLATFORMS + aarch64-linux x86_64-linux DEPENDENCIES @@ -301,6 +312,8 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record irb jdbc-sqlite3 mini_magick diff --git a/sentry-rails/gemfiles/ruby-2.7_rails-7.0.0.gemfile.lock b/sentry-rails/gemfiles/ruby-2.7_rails-7.0.0.gemfile.lock index 22bac1524..362092c68 100644 --- a/sentry-rails/gemfiles/ruby-2.7_rails-7.0.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-2.7_rails-7.0.0.gemfile.lock @@ -113,6 +113,13 @@ GEM concurrent-ruby (1.3.6) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) @@ -161,6 +168,8 @@ GEM net-smtp (0.5.1) net-protocol nio4r (2.7.5) + nokogiri (1.15.7-aarch64-linux) + racc (~> 1.4) nokogiri (1.15.7-x86_64-linux) racc (~> 1.4) parallel (1.28.0) @@ -309,6 +318,7 @@ GEM zeitwerk (2.6.18) PLATFORMS + aarch64-linux x86_64-linux DEPENDENCIES @@ -319,6 +329,8 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record irb jdbc-sqlite3 mini_magick diff --git a/sentry-rails/gemfiles/ruby-2.7_rails-7.1.0.gemfile.lock b/sentry-rails/gemfiles/ruby-2.7_rails-7.1.0.gemfile.lock index f30163ac1..c168a2c70 100644 --- a/sentry-rails/gemfiles/ruby-2.7_rails-7.1.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-2.7_rails-7.1.0.gemfile.lock @@ -120,6 +120,13 @@ GEM connection_pool (2.5.5) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) @@ -167,6 +174,8 @@ GEM net-smtp (0.5.1) net-protocol nio4r (2.7.5) + nokogiri (1.15.7-aarch64-linux) + racc (~> 1.4) nokogiri (1.15.7-x86_64-linux) racc (~> 1.4) parallel (1.28.0) @@ -225,6 +234,8 @@ GEM erb psych (>= 4.0.0) tsort + redis-client (0.30.0) + connection_pool regexp_parser (2.12.0) reline (0.6.3) io-console (~> 0.5) @@ -287,6 +298,12 @@ GEM securerandom (0.3.2) sequel (5.105.0) bigdecimal + sidekiq (7.3.10) + base64 + connection_pool (>= 2.3.0, < 3) + logger + rack (>= 2.2.4, < 3.3) + redis-client (>= 0.23.0, < 1) simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) @@ -322,6 +339,7 @@ GEM zeitwerk (2.6.18) PLATFORMS + aarch64-linux x86_64-linux DEPENDENCIES @@ -332,6 +350,8 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record irb jdbc-sqlite3 mini_magick @@ -347,6 +367,7 @@ DEPENDENCIES sentry-rails! sentry-ruby! sequel + sidekiq (~> 7.0) simplecov simplecov-cobertura (~> 3.0) sprockets-rails diff --git a/sentry-rails/gemfiles/ruby-3.0_rails-6.1.0.gemfile.lock b/sentry-rails/gemfiles/ruby-3.0_rails-6.1.0.gemfile.lock index 61b606a91..a40a2851d 100644 --- a/sentry-rails/gemfiles/ruby-3.0_rails-6.1.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-3.0_rails-6.1.0.gemfile.lock @@ -85,6 +85,7 @@ GEM zeitwerk (~> 2.3) ast (2.4.3) base64 (0.3.0) + benchmark (0.5.0) benchmark-ips (2.5.0) benchmark-ipsa (0.2.0) benchmark-ips (~> 2.5.0) @@ -96,13 +97,26 @@ GEM builder (3.3.0) cgi (0.5.1) concurrent-ruby (1.3.6) + connection_pool (2.5.5) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) erb (4.0.4.1) cgi (>= 0.3.3) erubi (1.13.1) + et-orbi (1.4.0) + tzinfo + fugit (1.12.2) + et-orbi (~> 1.4) + raabro (~> 1.4) globalid (1.3.0) activesupport (>= 6.1) i18n (1.14.8) @@ -133,6 +147,11 @@ GEM logger mini_mime (1.1.5) minitest (5.26.1) + mock_redis (0.55.0) + redis (~> 5) + mono_logger (1.1.2) + multi_json (1.19.1) + mustermann (3.1.1) net-imap (0.4.24) date net-protocol @@ -166,8 +185,12 @@ GEM psych (5.4.0) date stringio + raabro (1.4.0) racc (1.8.1) rack (2.2.23) + rack-protection (3.2.0) + base64 (>= 0.1.0) + rack (~> 2.2, >= 2.2.4) rack-test (2.2.0) rack (>= 1.3) rails (6.1.7.10) @@ -206,9 +229,30 @@ GEM erb psych (>= 4.0.0) tsort + redis (5.4.1) + redis-client (>= 0.22.0) + redis-client (0.30.0) + connection_pool + redis-namespace (1.11.0) + redis (>= 4) regexp_parser (2.12.0) reline (0.6.3) io-console (~> 0.5) + resque (3.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1) + multi_json (~> 1.0) + redis (>= 4.0) + redis-namespace (~> 1.6) + sinatra (>= 2.0) + resque-scheduler (5.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1.0) + redis (>= 4.0) + resque (>= 3.0) + rufus-scheduler (~> 3.2, != 3.3) rexml (3.4.1) rspec (3.13.2) rspec-core (~> 3.13.0) @@ -271,6 +315,8 @@ GEM ruby-lsp-rspec (0.1.29) ruby-lsp (~> 0.26.0) ruby-progressbar (1.13.0) + rufus-scheduler (3.9.2) + fugit (~> 1.1, >= 1.11.1) sequel (5.105.0) bigdecimal simplecov (0.22.0) @@ -282,6 +328,11 @@ GEM simplecov (~> 0.19) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) + sinatra (3.2.0) + mustermann (~> 3.0) + rack (~> 2.2, >= 2.2.4) + rack-protection (= 3.2.0) + tilt (~> 2.0) sprockets (4.2.2) concurrent-ruby (~> 1.0) logger @@ -298,6 +349,7 @@ GEM sqlite3 (1.7.3-x86_64-linux) stringio (3.2.0) thor (1.5.0) + tilt (2.7.0) timeout (0.6.1) tsort (0.2.0) tzinfo (2.0.6) @@ -327,11 +379,16 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record irb jdbc-sqlite3 mini_magick + mock_redis rails (~> 6.1.0) rake (~> 12.0) + resque + resque-scheduler (~> 5.0) rexml (= 3.4.1) rspec rspec-rails (~> 6.0) diff --git a/sentry-rails/gemfiles/ruby-3.0_rails-7.0.0.gemfile.lock b/sentry-rails/gemfiles/ruby-3.0_rails-7.0.0.gemfile.lock index 5b8863b95..7966cac7c 100644 --- a/sentry-rails/gemfiles/ruby-3.0_rails-7.0.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-3.0_rails-7.0.0.gemfile.lock @@ -111,14 +111,27 @@ GEM builder (3.3.0) cgi (0.5.1) concurrent-ruby (1.3.6) + connection_pool (2.5.5) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) erb (4.0.4.1) cgi (>= 0.3.3) erubi (1.13.1) + et-orbi (1.4.0) + tzinfo + fugit (1.12.2) + et-orbi (~> 1.4) + raabro (~> 1.4) globalid (1.3.0) activesupport (>= 6.1) i18n (1.14.8) @@ -149,6 +162,11 @@ GEM logger mini_mime (1.1.5) minitest (5.26.1) + mock_redis (0.55.0) + redis (~> 5) + mono_logger (1.1.2) + multi_json (1.19.1) + mustermann (3.1.1) mutex_m (0.3.0) net-imap (0.4.24) date @@ -183,8 +201,12 @@ GEM psych (5.4.0) date stringio + raabro (1.4.0) racc (1.8.1) rack (2.2.23) + rack-protection (3.2.0) + base64 (>= 0.1.0) + rack (~> 2.2, >= 2.2.4) rack-test (2.2.0) rack (>= 1.3) rails (7.0.10) @@ -223,9 +245,30 @@ GEM erb psych (>= 4.0.0) tsort + redis (5.4.1) + redis-client (>= 0.22.0) + redis-client (0.30.0) + connection_pool + redis-namespace (1.11.0) + redis (>= 4) regexp_parser (2.12.0) reline (0.6.3) io-console (~> 0.5) + resque (3.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1) + multi_json (~> 1.0) + redis (>= 4.0) + redis-namespace (~> 1.6) + sinatra (>= 2.0) + resque-scheduler (5.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1.0) + redis (>= 4.0) + resque (>= 3.0) + rufus-scheduler (~> 3.2, != 3.3) rexml (3.4.1) rspec (3.13.2) rspec-core (~> 3.13.0) @@ -288,6 +331,8 @@ GEM ruby-lsp-rspec (0.1.29) ruby-lsp (~> 0.26.0) ruby-progressbar (1.13.0) + rufus-scheduler (3.9.2) + fugit (~> 1.1, >= 1.11.1) securerandom (0.3.2) sequel (5.105.0) bigdecimal @@ -300,6 +345,11 @@ GEM simplecov (~> 0.19) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) + sinatra (3.2.0) + mustermann (~> 3.0) + rack (~> 2.2, >= 2.2.4) + rack-protection (= 3.2.0) + tilt (~> 2.0) sprockets (4.2.2) concurrent-ruby (~> 1.0) logger @@ -316,6 +366,7 @@ GEM sqlite3 (1.7.3-x86_64-linux) stringio (3.2.0) thor (1.5.0) + tilt (2.7.0) timeout (0.6.1) tsort (0.2.0) tzinfo (2.0.6) @@ -345,11 +396,16 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record irb jdbc-sqlite3 mini_magick + mock_redis rails (~> 7.0.0) rake (~> 12.0) + resque + resque-scheduler (~> 5.0) rexml (= 3.4.1) rspec rspec-rails (~> 6.0) diff --git a/sentry-rails/gemfiles/ruby-3.0_rails-7.1.0.gemfile.lock b/sentry-rails/gemfiles/ruby-3.0_rails-7.1.0.gemfile.lock index a675a4aa6..a35dd2de6 100644 --- a/sentry-rails/gemfiles/ruby-3.0_rails-7.1.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-3.0_rails-7.1.0.gemfile.lock @@ -120,12 +120,24 @@ GEM connection_pool (2.5.5) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) erb (4.0.4.1) cgi (>= 0.3.3) erubi (1.13.1) + et-orbi (1.4.0) + tzinfo + fugit (1.12.2) + et-orbi (~> 1.4) + raabro (~> 1.4) globalid (1.3.0) activesupport (>= 6.1) i18n (1.14.8) @@ -155,6 +167,11 @@ GEM logger mini_mime (1.1.5) minitest (5.26.1) + mock_redis (0.55.0) + redis (~> 5) + mono_logger (1.1.2) + multi_json (1.19.1) + mustermann (3.1.1) mutex_m (0.3.0) net-imap (0.4.24) date @@ -188,8 +205,13 @@ GEM prism (1.9.0) psych (4.0.6) stringio + raabro (1.4.0) racc (1.8.1) rack (3.2.6) + rack-protection (4.2.1) + base64 (>= 0.1.0) + logger (>= 1.6.0) + rack (>= 3.0.0, < 4) rack-session (2.1.2) base64 (>= 0.1.0) rack (>= 3.0.0) @@ -236,9 +258,30 @@ GEM erb psych (>= 4.0.0) tsort + redis (5.4.1) + redis-client (>= 0.22.0) + redis-client (0.30.0) + connection_pool + redis-namespace (1.11.0) + redis (>= 4) regexp_parser (2.12.0) reline (0.6.3) io-console (~> 0.5) + resque (3.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1) + multi_json (~> 1.0) + redis (>= 4.0) + redis-namespace (~> 1.6) + sinatra (>= 2.0) + resque-scheduler (5.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1.0) + redis (>= 4.0) + resque (>= 3.0) + rufus-scheduler (~> 3.2, != 3.3) rexml (3.4.1) rspec (3.13.2) rspec-core (~> 3.13.0) @@ -301,9 +344,17 @@ GEM ruby-lsp-rspec (0.1.29) ruby-lsp (~> 0.26.0) ruby-progressbar (1.13.0) + rufus-scheduler (3.9.2) + fugit (~> 1.1, >= 1.11.1) securerandom (0.3.2) sequel (5.105.0) bigdecimal + sidekiq (7.3.10) + base64 + connection_pool (>= 2.3.0, < 3) + logger + rack (>= 2.2.4, < 3.3) + redis-client (>= 0.23.0, < 1) simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) @@ -313,6 +364,13 @@ GEM simplecov (~> 0.19) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) + sinatra (4.2.1) + logger (>= 1.6.0) + mustermann (~> 3.0) + rack (>= 3.0.0, < 4) + rack-protection (= 4.2.1) + rack-session (>= 2.0.0, < 3) + tilt (~> 2.0) sprockets (4.2.2) concurrent-ruby (~> 1.0) logger @@ -329,6 +387,7 @@ GEM sqlite3 (1.7.3-x86_64-linux) stringio (3.2.0) thor (1.5.0) + tilt (2.7.0) timeout (0.6.1) tsort (0.2.0) tzinfo (2.0.6) @@ -358,12 +417,17 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record irb jdbc-sqlite3 mini_magick + mock_redis psych (~> 4.0.0) rails (~> 7.1.0) rake (~> 12.0) + resque + resque-scheduler (~> 5.0) rexml (= 3.4.1) rspec rspec-rails (~> 7.0) @@ -374,6 +438,7 @@ DEPENDENCIES sentry-rails! sentry-ruby! sequel + sidekiq (~> 7.0) simplecov simplecov-cobertura (~> 3.0) sprockets-rails diff --git a/sentry-rails/gemfiles/ruby-3.1_rails-6.1.0.gemfile.lock b/sentry-rails/gemfiles/ruby-3.1_rails-6.1.0.gemfile.lock index 76d4d53b7..ddc289b96 100644 --- a/sentry-rails/gemfiles/ruby-3.1_rails-6.1.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-3.1_rails-6.1.0.gemfile.lock @@ -85,6 +85,7 @@ GEM zeitwerk (~> 2.3) ast (2.4.3) base64 (0.3.0) + benchmark (0.5.0) benchmark-ips (2.5.0) benchmark-ipsa (0.2.0) benchmark-ips (~> 2.5.0) @@ -96,13 +97,26 @@ GEM builder (3.3.0) cgi (0.5.1) concurrent-ruby (1.3.6) + connection_pool (2.5.5) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) erb (4.0.4.1) cgi (>= 0.3.3) erubi (1.13.1) + et-orbi (1.4.0) + tzinfo + fugit (1.12.2) + et-orbi (~> 1.4) + raabro (~> 1.4) globalid (1.3.0) activesupport (>= 6.1) i18n (1.14.8) @@ -133,6 +147,11 @@ GEM logger mini_mime (1.1.5) minitest (5.27.0) + mock_redis (0.55.0) + redis (~> 5) + mono_logger (1.1.2) + multi_json (1.19.1) + mustermann (3.1.1) net-imap (0.5.15) date net-protocol @@ -170,8 +189,12 @@ GEM psych (5.4.0) date stringio + raabro (1.4.0) racc (1.8.1) rack (2.2.23) + rack-protection (3.2.0) + base64 (>= 0.1.0) + rack (~> 2.2, >= 2.2.4) rack-test (2.2.0) rack (>= 1.3) rails (6.1.7.10) @@ -211,9 +234,30 @@ GEM erb psych (>= 4.0.0) tsort + redis (5.4.1) + redis-client (>= 0.22.0) + redis-client (0.30.0) + connection_pool + redis-namespace (1.11.0) + redis (>= 4) regexp_parser (2.12.0) reline (0.6.3) io-console (~> 0.5) + resque (3.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1) + multi_json (~> 1.0) + redis (>= 4.0) + redis-namespace (~> 1.6) + sinatra (>= 2.0) + resque-scheduler (5.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1.0) + redis (>= 4.0) + resque (>= 3.0) + rufus-scheduler (~> 3.2, != 3.3) rexml (3.4.1) rspec (3.13.2) rspec-core (~> 3.13.0) @@ -276,6 +320,8 @@ GEM ruby-lsp-rspec (0.1.29) ruby-lsp (~> 0.26.0) ruby-progressbar (1.13.0) + rufus-scheduler (3.9.2) + fugit (~> 1.1, >= 1.11.1) sequel (5.105.0) bigdecimal simplecov (0.22.0) @@ -287,6 +333,11 @@ GEM simplecov (~> 0.19) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) + sinatra (3.2.0) + mustermann (~> 3.0) + rack (~> 2.2, >= 2.2.4) + rack-protection (= 3.2.0) + tilt (~> 2.0) sprockets (4.2.2) concurrent-ruby (~> 1.0) logger @@ -302,6 +353,7 @@ GEM sqlite3 (1.7.3-x86_64-linux) stringio (3.2.0) thor (1.5.0) + tilt (2.7.0) timeout (0.6.1) tsort (0.2.0) tzinfo (2.0.6) @@ -335,11 +387,16 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record irb jdbc-sqlite3 mini_magick + mock_redis rails (~> 6.1.0) rake (~> 12.0) + resque + resque-scheduler (~> 5.0) rexml (= 3.4.1) rspec rspec-rails (~> 6.0) @@ -369,6 +426,7 @@ CHECKSUMS activesupport (6.1.7.10) sha256=3f8e1f787a7bfbf765959ba509ef70af8293b35cb864078919365a12bf33d470 ast (2.4.3) sha256=954615157c1d6a382bc27d690d973195e79db7f55e9765ac7c481c60bdb4d383 base64 (0.3.0) sha256=27337aeabad6ffae05c265c450490628ef3ebd4b67be58257393227588f5a97b + benchmark (0.5.0) sha256=465df122341aedcb81a2a24b4d3bd19b6c67c1530713fd533f3ff034e419236c benchmark-ips (2.5.0) sha256=aa98e9dc420c0dc225f6bf8cea7f112ca015596868e9dcf2e15d4ee4e3eb80ee benchmark-ipsa (0.2.0) sha256=8be4820765d575691b2f91f6c988a8a3d90393239bf9d35ea53c8ab0fbca7230 benchmark-memory (0.1.2) sha256=aa7bfe6776174d0ddefe6fb39945d88fff6d76eac165690188391d9acd441c87 @@ -377,13 +435,18 @@ CHECKSUMS builder (3.3.0) sha256=497918d2f9dca528fdca4b88d84e4ef4387256d984b8154e9d5d3fe5a9c8835f cgi (0.5.1) sha256=e93fcafc69b8a934fe1e6146121fa35430efa8b4a4047c4893764067036f18e9 concurrent-ruby (1.3.6) sha256=6b56837e1e7e5292f9864f34b69c5a2cbc75c0cf5338f1ce9903d10fa762d5ab + connection_pool (2.5.5) sha256=e54ff92855753df1fd7c59fa04a398833355f27dd14c074f8c83a05f72a716ad crass (1.0.6) sha256=dc516022a56e7b3b156099abc81b6d2b08ea1ed12676ac7a5657617f012bd45d date (3.5.1) sha256=750d06384d7b9c15d562c76291407d89e368dda4d4fff957eb94962d325a0dc0 debug (1.11.1) + delayed_job (4.2.0) sha256=51dc1f68bb9084398317884c2178debd38c13a7eb48d8aa4ff4775465d7713ef + delayed_job_active_record (4.1.11) sha256=64f34a6d50316dd7a7df1daf7c6e04ad888c0e86938762318f6f52522b7c1ba8 diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962 docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e erb (4.0.4.1) sha256=47e2a70922ba4cec8c23c2304ad7e581665c37a297cb9a22a860162c7727ee24 erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 + et-orbi (1.4.0) sha256=6c7e3c90779821f9e3b324c5e96fda9767f72995d6ae435b96678a4f3e2de8bc + fugit (1.12.2) sha256=643f2bf28db263bd400cbf8e0dd8b76b2c9b94bdb130e12d2394de04d9c20e5e globalid (1.3.0) sha256=05c639ad6eb4594522a0b07983022f04aa7254626ab69445a0e493aa3786ff11 i18n (1.14.8) sha256=285778639134865c5e0f6269e0b818256017e8cde89993fdfcbfb64d088824a5 io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc @@ -400,6 +463,10 @@ CHECKSUMS mini_magick (5.3.1) sha256=29395dfd76badcabb6403ee5aff6f681e867074f8f28ce08d78661e9e4a351c4 mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef minitest (5.27.0) sha256=2d3b17f8a36fe7801c1adcffdbc38233b938eb0b4966e97a6739055a45fa77d5 + mock_redis (0.55.0) sha256=1562199cb94b40775ff73b09f33346074138a6f35e1ac0b614b0404777cd41f0 + mono_logger (1.1.2) sha256=2e359def7007f5c908aadd953687991fe667995d14ae5f0d10dda76e3e8670f7 + multi_json (1.19.1) sha256=7aefeff8f2c854bf739931a238e4aea64592845e0c0395c8a7d2eea7fdd631b7 + mustermann (3.1.1) sha256=4c6170c7234d5499c345562ba7c7dfe73e1754286dcc1abb053064d66a127198 net-imap (0.5.15) sha256=f64dc7f0b456d6a1b62007ead055994034f039f4aa6ff614e35f0b93395c0614 net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3 net-protocol (0.2.2) sha256=aa73e0cba6a125369de9837b8d8ef82a61849360eba0521900e2c3713aa162a8 @@ -419,8 +486,10 @@ CHECKSUMS prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193 prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85 psych (5.4.0) sha256=14f72d69a611af663d7d70e4a7b67d9eb1f3ae9f8d916b478961d5a0075ba5b7 + raabro (1.4.0) sha256=d4fa9ff5172391edb92b242eed8be802d1934b1464061ae5e70d80962c5da882 racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f rack (2.2.23) sha256=a8fe9d7e07064770b8ec123663fded8a59ef7e2b6db5cda7173d45a5718ab69c + rack-protection (3.2.0) sha256=3c74ba7fc59066453d61af9bcba5b6fe7a9b3dab6f445418d3b391d5ea8efbff rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463 rails (6.1.7.10) sha256=809692b3ec91fe1407b160e65203ef41c0b19b27bc5b836a515d6f4b969188d1 rails-dom-testing (2.3.0) sha256=8acc7953a7b911ca44588bf08737bc16719f431a1cc3091a292bca7317925c1d @@ -430,8 +499,13 @@ CHECKSUMS rake (12.3.3) sha256=f7694adb4fe638da35452300cee6c545e9c377a0e3190018ac04d590b3c26ab3 rbs (3.10.4) sha256=b17d7c4be4bb31a11a3b529830f0aa206a807ca42f2e7921a3027dfc6b7e5ce8 rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192 + redis (5.4.1) sha256=b5e675b57ad22b15c9bcc765d5ac26f60b675408af916d31527af9bd5a81faae + redis-client (0.30.0) sha256=743f11ed42f0a41a0341554087b077479fec7e2d47a7c123fd90a12c0db5e477 + redis-namespace (1.11.0) sha256=e91a1aa2b2d888b6dea1d4ab8d39e1ae6fac3426161feb9d91dd5cca598a2239 regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835 + resque (3.0.0) sha256=ee6f02b61b2af48c587587dd6fb3b9b5eca94e348c568aed8e9d7e7872b2f713 + resque-scheduler (5.0.0) sha256=f199df7ae73b5c7972acd27c7e2f8a1f1ff4339eca5b794d0b2ba74c3d998aff rexml (3.4.1) sha256=c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587 rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d @@ -449,6 +523,7 @@ CHECKSUMS ruby-lsp (0.26.9) sha256=33a01c001c00a76b4e821efc04ed7572983430f31ca5d6f3e343d0b6ccab4129 ruby-lsp-rspec (0.1.29) sha256=798be579723376cd56b17d32373288fb1163e4cfe2024c7d068516a1cf214ee5 ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33 + rufus-scheduler (3.9.2) sha256=55fa9e4db0ff69d7f38c804f17baba0c9bce5cba39984ae3c5cf6c039d1323b9 sentry-rails (6.6.2) sentry-ruby (6.6.2) sequel (5.105.0) sha256=4191d5e5d011b7229ff8a3401ca6beac047c4d35b1ec6703376513b4b25b2e67 @@ -456,6 +531,7 @@ CHECKSUMS simplecov-cobertura (3.1.0) sha256=6d7f38aa32c965ca2174b2e5bd88cb17138eaf629518854976ac50e628925dc5 simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246 simplecov_json_formatter (0.1.4) sha256=529418fbe8de1713ac2b2d612aa3daa56d316975d307244399fa4838c601b428 + sinatra (3.2.0) sha256=6e727f4d034e87067d9aab37f328021d7c16722ffd293ef07b6e968915109807 sprockets (4.2.2) sha256=761e5a49f1c288704763f73139763564c845a8f856d52fba013458f8af1b59b1 sprockets-rails (3.5.2) sha256=a9e88e6ce9f8c912d349aa5401509165ec42326baf9e942a85de4b76dbc4119e sqlite3 (1.7.3-aarch64-linux) sha256=0ccb8c001cd2617f4801a2c816142d3c9bc299e3f3e0f49e03812f3610b0891c @@ -465,6 +541,7 @@ CHECKSUMS sqlite3 (1.7.3-x86_64-linux) sha256=522a3285660dec8253465880c97980e873db0d79060900be8d14194217a3ee73 stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1 thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73 + tilt (2.7.0) sha256=0d5b9ba69f6a36490c64b0eee9f6e9aad517e20dcc848800a06eb116f08c6ab3 timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b diff --git a/sentry-rails/gemfiles/ruby-3.1_rails-7.0.0.gemfile.lock b/sentry-rails/gemfiles/ruby-3.1_rails-7.0.0.gemfile.lock index bee2e8d8d..45d76fe29 100644 --- a/sentry-rails/gemfiles/ruby-3.1_rails-7.0.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-3.1_rails-7.0.0.gemfile.lock @@ -111,14 +111,27 @@ GEM builder (3.3.0) cgi (0.5.1) concurrent-ruby (1.3.6) + connection_pool (2.5.5) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) erb (4.0.4.1) cgi (>= 0.3.3) erubi (1.13.1) + et-orbi (1.4.0) + tzinfo + fugit (1.12.2) + et-orbi (~> 1.4) + raabro (~> 1.4) globalid (1.3.0) activesupport (>= 6.1) i18n (1.14.8) @@ -149,6 +162,11 @@ GEM logger mini_mime (1.1.5) minitest (5.27.0) + mock_redis (0.55.0) + redis (~> 5) + mono_logger (1.1.2) + multi_json (1.19.1) + mustermann (3.1.1) mutex_m (0.3.0) net-imap (0.5.15) date @@ -187,8 +205,12 @@ GEM psych (5.4.0) date stringio + raabro (1.4.0) racc (1.8.1) rack (2.2.23) + rack-protection (3.2.0) + base64 (>= 0.1.0) + rack (~> 2.2, >= 2.2.4) rack-test (2.2.0) rack (>= 1.3) rails (7.0.10) @@ -228,9 +250,30 @@ GEM erb psych (>= 4.0.0) tsort + redis (5.4.1) + redis-client (>= 0.22.0) + redis-client (0.30.0) + connection_pool + redis-namespace (1.11.0) + redis (>= 4) regexp_parser (2.12.0) reline (0.6.3) io-console (~> 0.5) + resque (3.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1) + multi_json (~> 1.0) + redis (>= 4.0) + redis-namespace (~> 1.6) + sinatra (>= 2.0) + resque-scheduler (5.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1.0) + redis (>= 4.0) + resque (>= 3.0) + rufus-scheduler (~> 3.2, != 3.3) rexml (3.4.1) rspec (3.13.2) rspec-core (~> 3.13.0) @@ -293,6 +336,8 @@ GEM ruby-lsp-rspec (0.1.29) ruby-lsp (~> 0.26.0) ruby-progressbar (1.13.0) + rufus-scheduler (3.9.2) + fugit (~> 1.1, >= 1.11.1) securerandom (0.4.1) sequel (5.105.0) bigdecimal @@ -305,6 +350,11 @@ GEM simplecov (~> 0.19) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) + sinatra (3.2.0) + mustermann (~> 3.0) + rack (~> 2.2, >= 2.2.4) + rack-protection (= 3.2.0) + tilt (~> 2.0) sprockets (4.2.2) concurrent-ruby (~> 1.0) logger @@ -320,6 +370,7 @@ GEM sqlite3 (1.7.3-x86_64-linux) stringio (3.2.0) thor (1.5.0) + tilt (2.7.0) timeout (0.6.1) tsort (0.2.0) tzinfo (2.0.6) @@ -353,11 +404,16 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record irb jdbc-sqlite3 mini_magick + mock_redis rails (~> 7.0.0) rake (~> 12.0) + resque + resque-scheduler (~> 5.0) rexml (= 3.4.1) rspec rspec-rails (~> 6.0) @@ -396,14 +452,19 @@ CHECKSUMS builder (3.3.0) sha256=497918d2f9dca528fdca4b88d84e4ef4387256d984b8154e9d5d3fe5a9c8835f cgi (0.5.1) sha256=e93fcafc69b8a934fe1e6146121fa35430efa8b4a4047c4893764067036f18e9 concurrent-ruby (1.3.6) sha256=6b56837e1e7e5292f9864f34b69c5a2cbc75c0cf5338f1ce9903d10fa762d5ab + connection_pool (2.5.5) sha256=e54ff92855753df1fd7c59fa04a398833355f27dd14c074f8c83a05f72a716ad crass (1.0.6) sha256=dc516022a56e7b3b156099abc81b6d2b08ea1ed12676ac7a5657617f012bd45d date (3.5.1) sha256=750d06384d7b9c15d562c76291407d89e368dda4d4fff957eb94962d325a0dc0 debug (1.11.1) + delayed_job (4.2.0) sha256=51dc1f68bb9084398317884c2178debd38c13a7eb48d8aa4ff4775465d7713ef + delayed_job_active_record (4.1.11) sha256=64f34a6d50316dd7a7df1daf7c6e04ad888c0e86938762318f6f52522b7c1ba8 diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962 docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373 erb (4.0.4.1) sha256=47e2a70922ba4cec8c23c2304ad7e581665c37a297cb9a22a860162c7727ee24 erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 + et-orbi (1.4.0) sha256=6c7e3c90779821f9e3b324c5e96fda9767f72995d6ae435b96678a4f3e2de8bc + fugit (1.12.2) sha256=643f2bf28db263bd400cbf8e0dd8b76b2c9b94bdb130e12d2394de04d9c20e5e globalid (1.3.0) sha256=05c639ad6eb4594522a0b07983022f04aa7254626ab69445a0e493aa3786ff11 i18n (1.14.8) sha256=285778639134865c5e0f6269e0b818256017e8cde89993fdfcbfb64d088824a5 io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc @@ -420,6 +481,10 @@ CHECKSUMS mini_magick (5.3.1) sha256=29395dfd76badcabb6403ee5aff6f681e867074f8f28ce08d78661e9e4a351c4 mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef minitest (5.27.0) sha256=2d3b17f8a36fe7801c1adcffdbc38233b938eb0b4966e97a6739055a45fa77d5 + mock_redis (0.55.0) sha256=1562199cb94b40775ff73b09f33346074138a6f35e1ac0b614b0404777cd41f0 + mono_logger (1.1.2) sha256=2e359def7007f5c908aadd953687991fe667995d14ae5f0d10dda76e3e8670f7 + multi_json (1.19.1) sha256=7aefeff8f2c854bf739931a238e4aea64592845e0c0395c8a7d2eea7fdd631b7 + mustermann (3.1.1) sha256=4c6170c7234d5499c345562ba7c7dfe73e1754286dcc1abb053064d66a127198 mutex_m (0.3.0) sha256=cfcb04ac16b69c4813777022fdceda24e9f798e48092a2b817eb4c0a782b0751 net-imap (0.5.15) sha256=f64dc7f0b456d6a1b62007ead055994034f039f4aa6ff614e35f0b93395c0614 net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3 @@ -440,8 +505,10 @@ CHECKSUMS prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193 prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85 psych (5.4.0) sha256=14f72d69a611af663d7d70e4a7b67d9eb1f3ae9f8d916b478961d5a0075ba5b7 + raabro (1.4.0) sha256=d4fa9ff5172391edb92b242eed8be802d1934b1464061ae5e70d80962c5da882 racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f rack (2.2.23) sha256=a8fe9d7e07064770b8ec123663fded8a59ef7e2b6db5cda7173d45a5718ab69c + rack-protection (3.2.0) sha256=3c74ba7fc59066453d61af9bcba5b6fe7a9b3dab6f445418d3b391d5ea8efbff rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463 rails (7.0.10) sha256=866eb2c53d3184543fdb770d7ea308e4ee518063226a9e176229f3c7a9537c25 rails-dom-testing (2.3.0) sha256=8acc7953a7b911ca44588bf08737bc16719f431a1cc3091a292bca7317925c1d @@ -451,8 +518,13 @@ CHECKSUMS rake (12.3.3) sha256=f7694adb4fe638da35452300cee6c545e9c377a0e3190018ac04d590b3c26ab3 rbs (3.10.4) sha256=b17d7c4be4bb31a11a3b529830f0aa206a807ca42f2e7921a3027dfc6b7e5ce8 rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192 + redis (5.4.1) sha256=b5e675b57ad22b15c9bcc765d5ac26f60b675408af916d31527af9bd5a81faae + redis-client (0.30.0) sha256=743f11ed42f0a41a0341554087b077479fec7e2d47a7c123fd90a12c0db5e477 + redis-namespace (1.11.0) sha256=e91a1aa2b2d888b6dea1d4ab8d39e1ae6fac3426161feb9d91dd5cca598a2239 regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835 + resque (3.0.0) sha256=ee6f02b61b2af48c587587dd6fb3b9b5eca94e348c568aed8e9d7e7872b2f713 + resque-scheduler (5.0.0) sha256=f199df7ae73b5c7972acd27c7e2f8a1f1ff4339eca5b794d0b2ba74c3d998aff rexml (3.4.1) sha256=c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587 rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d @@ -470,6 +542,7 @@ CHECKSUMS ruby-lsp (0.26.9) sha256=33a01c001c00a76b4e821efc04ed7572983430f31ca5d6f3e343d0b6ccab4129 ruby-lsp-rspec (0.1.29) sha256=798be579723376cd56b17d32373288fb1163e4cfe2024c7d068516a1cf214ee5 ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33 + rufus-scheduler (3.9.2) sha256=55fa9e4db0ff69d7f38c804f17baba0c9bce5cba39984ae3c5cf6c039d1323b9 securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1 sentry-rails (6.6.2) sentry-ruby (6.6.2) @@ -478,6 +551,7 @@ CHECKSUMS simplecov-cobertura (3.1.0) sha256=6d7f38aa32c965ca2174b2e5bd88cb17138eaf629518854976ac50e628925dc5 simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246 simplecov_json_formatter (0.1.4) sha256=529418fbe8de1713ac2b2d612aa3daa56d316975d307244399fa4838c601b428 + sinatra (3.2.0) sha256=6e727f4d034e87067d9aab37f328021d7c16722ffd293ef07b6e968915109807 sprockets (4.2.2) sha256=761e5a49f1c288704763f73139763564c845a8f856d52fba013458f8af1b59b1 sprockets-rails (3.5.2) sha256=a9e88e6ce9f8c912d349aa5401509165ec42326baf9e942a85de4b76dbc4119e sqlite3 (1.7.3-aarch64-linux) sha256=0ccb8c001cd2617f4801a2c816142d3c9bc299e3f3e0f49e03812f3610b0891c @@ -487,6 +561,7 @@ CHECKSUMS sqlite3 (1.7.3-x86_64-linux) sha256=522a3285660dec8253465880c97980e873db0d79060900be8d14194217a3ee73 stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1 thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73 + tilt (2.7.0) sha256=0d5b9ba69f6a36490c64b0eee9f6e9aad517e20dcc848800a06eb116f08c6ab3 timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b diff --git a/sentry-rails/gemfiles/ruby-3.1_rails-7.1.0.gemfile.lock b/sentry-rails/gemfiles/ruby-3.1_rails-7.1.0.gemfile.lock index ed2f3be3d..03871709b 100644 --- a/sentry-rails/gemfiles/ruby-3.1_rails-7.1.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-3.1_rails-7.1.0.gemfile.lock @@ -120,12 +120,24 @@ GEM connection_pool (2.5.5) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) erb (4.0.4.1) cgi (>= 0.3.3) erubi (1.13.1) + et-orbi (1.4.0) + tzinfo + fugit (1.12.2) + et-orbi (~> 1.4) + raabro (~> 1.4) globalid (1.3.0) activesupport (>= 6.1) i18n (1.14.8) @@ -155,6 +167,11 @@ GEM logger mini_mime (1.1.5) minitest (5.27.0) + mock_redis (0.55.0) + redis (~> 5) + mono_logger (1.1.2) + multi_json (1.19.1) + mustermann (3.1.1) mutex_m (0.3.0) net-imap (0.5.15) date @@ -192,8 +209,13 @@ GEM prism (1.9.0) psych (4.0.6) stringio + raabro (1.4.0) racc (1.8.1) rack (3.2.6) + rack-protection (4.2.1) + base64 (>= 0.1.0) + logger (>= 1.6.0) + rack (>= 3.0.0, < 4) rack-session (2.1.2) base64 (>= 0.1.0) rack (>= 3.0.0) @@ -241,9 +263,30 @@ GEM erb psych (>= 4.0.0) tsort + redis (5.4.1) + redis-client (>= 0.22.0) + redis-client (0.30.0) + connection_pool + redis-namespace (1.11.0) + redis (>= 4) regexp_parser (2.12.0) reline (0.6.3) io-console (~> 0.5) + resque (3.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1) + multi_json (~> 1.0) + redis (>= 4.0) + redis-namespace (~> 1.6) + sinatra (>= 2.0) + resque-scheduler (5.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1.0) + redis (>= 4.0) + resque (>= 3.0) + rufus-scheduler (~> 3.2, != 3.3) rexml (3.4.1) rspec (3.13.2) rspec-core (~> 3.13.0) @@ -306,9 +349,17 @@ GEM ruby-lsp-rspec (0.1.29) ruby-lsp (~> 0.26.0) ruby-progressbar (1.13.0) + rufus-scheduler (3.9.2) + fugit (~> 1.1, >= 1.11.1) securerandom (0.4.1) sequel (5.105.0) bigdecimal + sidekiq (7.3.10) + base64 + connection_pool (>= 2.3.0, < 3) + logger + rack (>= 2.2.4, < 3.3) + redis-client (>= 0.23.0, < 1) simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) @@ -318,6 +369,13 @@ GEM simplecov (~> 0.19) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) + sinatra (4.2.1) + logger (>= 1.6.0) + mustermann (~> 3.0) + rack (>= 3.0.0, < 4) + rack-protection (= 4.2.1) + rack-session (>= 2.0.0, < 3) + tilt (~> 2.0) sprockets (4.2.2) concurrent-ruby (~> 1.0) logger @@ -333,6 +391,7 @@ GEM sqlite3 (1.7.3-x86_64-linux) stringio (3.2.0) thor (1.5.0) + tilt (2.7.0) timeout (0.6.1) tsort (0.2.0) tzinfo (2.0.6) @@ -366,12 +425,17 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record irb jdbc-sqlite3 mini_magick + mock_redis psych (~> 4.0.0) rails (~> 7.1.0) rake (~> 12.0) + resque + resque-scheduler (~> 5.0) rexml (= 3.4.1) rspec rspec-rails (~> 7.0) @@ -382,6 +446,7 @@ DEPENDENCIES sentry-rails! sentry-ruby! sequel + sidekiq (~> 7.0) simplecov simplecov-cobertura (~> 3.0) sprockets-rails @@ -414,11 +479,15 @@ CHECKSUMS crass (1.0.6) sha256=dc516022a56e7b3b156099abc81b6d2b08ea1ed12676ac7a5657617f012bd45d date (3.5.1) sha256=750d06384d7b9c15d562c76291407d89e368dda4d4fff957eb94962d325a0dc0 debug (1.11.1) + delayed_job (4.2.0) sha256=51dc1f68bb9084398317884c2178debd38c13a7eb48d8aa4ff4775465d7713ef + delayed_job_active_record (4.1.11) sha256=64f34a6d50316dd7a7df1daf7c6e04ad888c0e86938762318f6f52522b7c1ba8 diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962 docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373 erb (4.0.4.1) sha256=47e2a70922ba4cec8c23c2304ad7e581665c37a297cb9a22a860162c7727ee24 erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 + et-orbi (1.4.0) sha256=6c7e3c90779821f9e3b324c5e96fda9767f72995d6ae435b96678a4f3e2de8bc + fugit (1.12.2) sha256=643f2bf28db263bd400cbf8e0dd8b76b2c9b94bdb130e12d2394de04d9c20e5e globalid (1.3.0) sha256=05c639ad6eb4594522a0b07983022f04aa7254626ab69445a0e493aa3786ff11 i18n (1.14.8) sha256=285778639134865c5e0f6269e0b818256017e8cde89993fdfcbfb64d088824a5 io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc @@ -434,6 +503,10 @@ CHECKSUMS mini_magick (5.3.1) sha256=29395dfd76badcabb6403ee5aff6f681e867074f8f28ce08d78661e9e4a351c4 mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef minitest (5.27.0) sha256=2d3b17f8a36fe7801c1adcffdbc38233b938eb0b4966e97a6739055a45fa77d5 + mock_redis (0.55.0) sha256=1562199cb94b40775ff73b09f33346074138a6f35e1ac0b614b0404777cd41f0 + mono_logger (1.1.2) sha256=2e359def7007f5c908aadd953687991fe667995d14ae5f0d10dda76e3e8670f7 + multi_json (1.19.1) sha256=7aefeff8f2c854bf739931a238e4aea64592845e0c0395c8a7d2eea7fdd631b7 + mustermann (3.1.1) sha256=4c6170c7234d5499c345562ba7c7dfe73e1754286dcc1abb053064d66a127198 mutex_m (0.3.0) sha256=cfcb04ac16b69c4813777022fdceda24e9f798e48092a2b817eb4c0a782b0751 net-imap (0.5.15) sha256=f64dc7f0b456d6a1b62007ead055994034f039f4aa6ff614e35f0b93395c0614 net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3 @@ -454,8 +527,10 @@ CHECKSUMS prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193 prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85 psych (4.0.6) sha256=f70425c3dca8d8fbe4c1de7270d921e35eb6eb44cf2b2e4f961dc8031330b876 + raabro (1.4.0) sha256=d4fa9ff5172391edb92b242eed8be802d1934b1464061ae5e70d80962c5da882 racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f rack (3.2.6) sha256=5ed78e1f73b2e25679bec7d45ee2d4483cc4146eb1be0264fc4d94cb5ef212c2 + rack-protection (4.2.1) sha256=cf6e2842df8c55f5e4d1a4be015e603e19e9bc3a7178bae58949ccbb58558bac rack-session (2.1.2) sha256=595434f8c0c3473ae7d7ac56ecda6cc6dfd9d37c0b2b5255330aa1576967ffe8 rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463 rackup (2.3.1) sha256=6c79c26753778e90983761d677a48937ee3192b3ffef6bc963c0950f94688868 @@ -467,8 +542,13 @@ CHECKSUMS rake (12.3.3) sha256=f7694adb4fe638da35452300cee6c545e9c377a0e3190018ac04d590b3c26ab3 rbs (3.10.4) sha256=b17d7c4be4bb31a11a3b529830f0aa206a807ca42f2e7921a3027dfc6b7e5ce8 rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192 + redis (5.4.1) sha256=b5e675b57ad22b15c9bcc765d5ac26f60b675408af916d31527af9bd5a81faae + redis-client (0.30.0) sha256=743f11ed42f0a41a0341554087b077479fec7e2d47a7c123fd90a12c0db5e477 + redis-namespace (1.11.0) sha256=e91a1aa2b2d888b6dea1d4ab8d39e1ae6fac3426161feb9d91dd5cca598a2239 regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835 + resque (3.0.0) sha256=ee6f02b61b2af48c587587dd6fb3b9b5eca94e348c568aed8e9d7e7872b2f713 + resque-scheduler (5.0.0) sha256=f199df7ae73b5c7972acd27c7e2f8a1f1ff4339eca5b794d0b2ba74c3d998aff rexml (3.4.1) sha256=c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587 rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d @@ -486,14 +566,17 @@ CHECKSUMS ruby-lsp (0.26.9) sha256=33a01c001c00a76b4e821efc04ed7572983430f31ca5d6f3e343d0b6ccab4129 ruby-lsp-rspec (0.1.29) sha256=798be579723376cd56b17d32373288fb1163e4cfe2024c7d068516a1cf214ee5 ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33 + rufus-scheduler (3.9.2) sha256=55fa9e4db0ff69d7f38c804f17baba0c9bce5cba39984ae3c5cf6c039d1323b9 securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1 sentry-rails (6.6.2) sentry-ruby (6.6.2) sequel (5.105.0) sha256=4191d5e5d011b7229ff8a3401ca6beac047c4d35b1ec6703376513b4b25b2e67 + sidekiq (7.3.10) sha256=781eb4f65ef36042534ad73d72f211283afb7fee82eec786ada4ed1972ef8e3c simplecov (0.22.0) sha256=fe2622c7834ff23b98066bb0a854284b2729a569ac659f82621fc22ef36213a5 simplecov-cobertura (3.1.0) sha256=6d7f38aa32c965ca2174b2e5bd88cb17138eaf629518854976ac50e628925dc5 simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246 simplecov_json_formatter (0.1.4) sha256=529418fbe8de1713ac2b2d612aa3daa56d316975d307244399fa4838c601b428 + sinatra (4.2.1) sha256=b7aeb9b11d046b552972ade834f1f9be98b185fa8444480688e3627625377080 sprockets (4.2.2) sha256=761e5a49f1c288704763f73139763564c845a8f856d52fba013458f8af1b59b1 sprockets-rails (3.5.2) sha256=a9e88e6ce9f8c912d349aa5401509165ec42326baf9e942a85de4b76dbc4119e sqlite3 (1.7.3-aarch64-linux) sha256=0ccb8c001cd2617f4801a2c816142d3c9bc299e3f3e0f49e03812f3610b0891c @@ -503,6 +586,7 @@ CHECKSUMS sqlite3 (1.7.3-x86_64-linux) sha256=522a3285660dec8253465880c97980e873db0d79060900be8d14194217a3ee73 stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1 thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73 + tilt (2.7.0) sha256=0d5b9ba69f6a36490c64b0eee9f6e9aad517e20dcc848800a06eb116f08c6ab3 timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b diff --git a/sentry-rails/gemfiles/ruby-3.1_rails-7.2.0.gemfile.lock b/sentry-rails/gemfiles/ruby-3.1_rails-7.2.0.gemfile.lock index 87520d5c7..22d1ce744 100644 --- a/sentry-rails/gemfiles/ruby-3.1_rails-7.2.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-3.1_rails-7.2.0.gemfile.lock @@ -114,12 +114,24 @@ GEM connection_pool (2.5.5) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) erb (4.0.4.1) cgi (>= 0.3.3) erubi (1.13.1) + et-orbi (1.4.0) + tzinfo + fugit (1.12.2) + et-orbi (~> 1.4) + raabro (~> 1.4) globalid (1.3.0) activesupport (>= 6.1) i18n (1.14.8) @@ -149,6 +161,11 @@ GEM logger mini_mime (1.1.5) minitest (5.27.0) + mock_redis (0.55.0) + redis (~> 5) + mono_logger (1.1.2) + multi_json (1.19.1) + mustermann (3.1.1) net-imap (0.5.15) date net-protocol @@ -185,8 +202,13 @@ GEM prism (1.9.0) psych (4.0.6) stringio + raabro (1.4.0) racc (1.8.1) rack (3.2.6) + rack-protection (4.2.1) + base64 (>= 0.1.0) + logger (>= 1.6.0) + rack (>= 3.0.0, < 4) rack-session (2.1.2) base64 (>= 0.1.0) rack (>= 3.0.0) @@ -234,9 +256,30 @@ GEM erb psych (>= 4.0.0) tsort + redis (5.4.1) + redis-client (>= 0.22.0) + redis-client (0.30.0) + connection_pool + redis-namespace (1.11.0) + redis (>= 4) regexp_parser (2.12.0) reline (0.6.3) io-console (~> 0.5) + resque (3.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1) + multi_json (~> 1.0) + redis (>= 4.0) + redis-namespace (~> 1.6) + sinatra (>= 2.0) + resque-scheduler (5.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1.0) + redis (>= 4.0) + resque (>= 3.0) + rufus-scheduler (~> 3.2, != 3.3) rexml (3.4.1) rspec (3.13.2) rspec-core (~> 3.13.0) @@ -299,9 +342,17 @@ GEM ruby-lsp-rspec (0.1.29) ruby-lsp (~> 0.26.0) ruby-progressbar (1.13.0) + rufus-scheduler (3.9.2) + fugit (~> 1.1, >= 1.11.1) securerandom (0.4.1) sequel (5.105.0) bigdecimal + sidekiq (7.3.10) + base64 + connection_pool (>= 2.3.0, < 3) + logger + rack (>= 2.2.4, < 3.3) + redis-client (>= 0.23.0, < 1) simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) @@ -311,6 +362,13 @@ GEM simplecov (~> 0.19) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) + sinatra (4.2.1) + logger (>= 1.6.0) + mustermann (~> 3.0) + rack (>= 3.0.0, < 4) + rack-protection (= 4.2.1) + rack-session (>= 2.0.0, < 3) + tilt (~> 2.0) sprockets (4.2.2) concurrent-ruby (~> 1.0) logger @@ -326,6 +384,7 @@ GEM sqlite3 (1.7.3-x86_64-linux) stringio (3.2.0) thor (1.5.0) + tilt (2.7.0) timeout (0.6.1) tsort (0.2.0) tzinfo (2.0.6) @@ -360,12 +419,17 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record irb jdbc-sqlite3 mini_magick + mock_redis psych (~> 4.0.0) rails (~> 7.2.0) rake (~> 12.0) + resque + resque-scheduler (~> 5.0) rexml (= 3.4.1) rspec rspec-rails (~> 7.0) @@ -376,6 +440,7 @@ DEPENDENCIES sentry-rails! sentry-ruby! sequel + sidekiq (~> 7.0) simplecov simplecov-cobertura (~> 3.0) sprockets-rails @@ -408,11 +473,15 @@ CHECKSUMS crass (1.0.6) sha256=dc516022a56e7b3b156099abc81b6d2b08ea1ed12676ac7a5657617f012bd45d date (3.5.1) sha256=750d06384d7b9c15d562c76291407d89e368dda4d4fff957eb94962d325a0dc0 debug (1.11.1) + delayed_job (4.2.0) sha256=51dc1f68bb9084398317884c2178debd38c13a7eb48d8aa4ff4775465d7713ef + delayed_job_active_record (4.1.11) sha256=64f34a6d50316dd7a7df1daf7c6e04ad888c0e86938762318f6f52522b7c1ba8 diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962 docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373 erb (4.0.4.1) sha256=47e2a70922ba4cec8c23c2304ad7e581665c37a297cb9a22a860162c7727ee24 erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 + et-orbi (1.4.0) sha256=6c7e3c90779821f9e3b324c5e96fda9767f72995d6ae435b96678a4f3e2de8bc + fugit (1.12.2) sha256=643f2bf28db263bd400cbf8e0dd8b76b2c9b94bdb130e12d2394de04d9c20e5e globalid (1.3.0) sha256=05c639ad6eb4594522a0b07983022f04aa7254626ab69445a0e493aa3786ff11 i18n (1.14.8) sha256=285778639134865c5e0f6269e0b818256017e8cde89993fdfcbfb64d088824a5 io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc @@ -428,6 +497,10 @@ CHECKSUMS mini_magick (5.3.1) sha256=29395dfd76badcabb6403ee5aff6f681e867074f8f28ce08d78661e9e4a351c4 mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef minitest (5.27.0) sha256=2d3b17f8a36fe7801c1adcffdbc38233b938eb0b4966e97a6739055a45fa77d5 + mock_redis (0.55.0) sha256=1562199cb94b40775ff73b09f33346074138a6f35e1ac0b614b0404777cd41f0 + mono_logger (1.1.2) sha256=2e359def7007f5c908aadd953687991fe667995d14ae5f0d10dda76e3e8670f7 + multi_json (1.19.1) sha256=7aefeff8f2c854bf739931a238e4aea64592845e0c0395c8a7d2eea7fdd631b7 + mustermann (3.1.1) sha256=4c6170c7234d5499c345562ba7c7dfe73e1754286dcc1abb053064d66a127198 net-imap (0.5.15) sha256=f64dc7f0b456d6a1b62007ead055994034f039f4aa6ff614e35f0b93395c0614 net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3 net-protocol (0.2.2) sha256=aa73e0cba6a125369de9837b8d8ef82a61849360eba0521900e2c3713aa162a8 @@ -447,8 +520,10 @@ CHECKSUMS prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193 prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85 psych (4.0.6) sha256=f70425c3dca8d8fbe4c1de7270d921e35eb6eb44cf2b2e4f961dc8031330b876 + raabro (1.4.0) sha256=d4fa9ff5172391edb92b242eed8be802d1934b1464061ae5e70d80962c5da882 racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f rack (3.2.6) sha256=5ed78e1f73b2e25679bec7d45ee2d4483cc4146eb1be0264fc4d94cb5ef212c2 + rack-protection (4.2.1) sha256=cf6e2842df8c55f5e4d1a4be015e603e19e9bc3a7178bae58949ccbb58558bac rack-session (2.1.2) sha256=595434f8c0c3473ae7d7ac56ecda6cc6dfd9d37c0b2b5255330aa1576967ffe8 rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463 rackup (2.3.1) sha256=6c79c26753778e90983761d677a48937ee3192b3ffef6bc963c0950f94688868 @@ -460,8 +535,13 @@ CHECKSUMS rake (12.3.3) sha256=f7694adb4fe638da35452300cee6c545e9c377a0e3190018ac04d590b3c26ab3 rbs (3.10.4) sha256=b17d7c4be4bb31a11a3b529830f0aa206a807ca42f2e7921a3027dfc6b7e5ce8 rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192 + redis (5.4.1) sha256=b5e675b57ad22b15c9bcc765d5ac26f60b675408af916d31527af9bd5a81faae + redis-client (0.30.0) sha256=743f11ed42f0a41a0341554087b077479fec7e2d47a7c123fd90a12c0db5e477 + redis-namespace (1.11.0) sha256=e91a1aa2b2d888b6dea1d4ab8d39e1ae6fac3426161feb9d91dd5cca598a2239 regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835 + resque (3.0.0) sha256=ee6f02b61b2af48c587587dd6fb3b9b5eca94e348c568aed8e9d7e7872b2f713 + resque-scheduler (5.0.0) sha256=f199df7ae73b5c7972acd27c7e2f8a1f1ff4339eca5b794d0b2ba74c3d998aff rexml (3.4.1) sha256=c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587 rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d @@ -479,14 +559,17 @@ CHECKSUMS ruby-lsp (0.26.9) sha256=33a01c001c00a76b4e821efc04ed7572983430f31ca5d6f3e343d0b6ccab4129 ruby-lsp-rspec (0.1.29) sha256=798be579723376cd56b17d32373288fb1163e4cfe2024c7d068516a1cf214ee5 ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33 + rufus-scheduler (3.9.2) sha256=55fa9e4db0ff69d7f38c804f17baba0c9bce5cba39984ae3c5cf6c039d1323b9 securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1 sentry-rails (6.6.2) sentry-ruby (6.6.2) sequel (5.105.0) sha256=4191d5e5d011b7229ff8a3401ca6beac047c4d35b1ec6703376513b4b25b2e67 + sidekiq (7.3.10) sha256=781eb4f65ef36042534ad73d72f211283afb7fee82eec786ada4ed1972ef8e3c simplecov (0.22.0) sha256=fe2622c7834ff23b98066bb0a854284b2729a569ac659f82621fc22ef36213a5 simplecov-cobertura (3.1.0) sha256=6d7f38aa32c965ca2174b2e5bd88cb17138eaf629518854976ac50e628925dc5 simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246 simplecov_json_formatter (0.1.4) sha256=529418fbe8de1713ac2b2d612aa3daa56d316975d307244399fa4838c601b428 + sinatra (4.2.1) sha256=b7aeb9b11d046b552972ade834f1f9be98b185fa8444480688e3627625377080 sprockets (4.2.2) sha256=761e5a49f1c288704763f73139763564c845a8f856d52fba013458f8af1b59b1 sprockets-rails (3.5.2) sha256=a9e88e6ce9f8c912d349aa5401509165ec42326baf9e942a85de4b76dbc4119e sqlite3 (1.7.3-aarch64-linux) sha256=0ccb8c001cd2617f4801a2c816142d3c9bc299e3f3e0f49e03812f3610b0891c @@ -496,6 +579,7 @@ CHECKSUMS sqlite3 (1.7.3-x86_64-linux) sha256=522a3285660dec8253465880c97980e873db0d79060900be8d14194217a3ee73 stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1 thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73 + tilt (2.7.0) sha256=0d5b9ba69f6a36490c64b0eee9f6e9aad517e20dcc848800a06eb116f08c6ab3 timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b diff --git a/sentry-rails/gemfiles/ruby-3.2_rails-6.1.0.gemfile.lock b/sentry-rails/gemfiles/ruby-3.2_rails-6.1.0.gemfile.lock index 5bdb0e17c..c652ad826 100644 --- a/sentry-rails/gemfiles/ruby-3.2_rails-6.1.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-3.2_rails-6.1.0.gemfile.lock @@ -85,6 +85,7 @@ GEM zeitwerk (~> 2.3) ast (2.4.3) base64 (0.3.0) + benchmark (0.5.0) benchmark-ips (2.5.0) benchmark-ipsa (0.2.0) benchmark-ips (~> 2.5.0) @@ -96,13 +97,26 @@ GEM builder (3.3.0) cgi (0.5.1) concurrent-ruby (1.3.6) + connection_pool (3.0.2) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) erb (6.0.4) erubi (1.13.1) + et-orbi (1.4.0) + tzinfo + fugit (1.12.2) + et-orbi (~> 1.4) + raabro (~> 1.4) globalid (1.3.0) activesupport (>= 6.1) i18n (1.14.8) @@ -135,6 +149,11 @@ GEM minitest (6.0.6) drb (~> 2.0) prism (~> 1.5) + mock_redis (0.55.0) + redis (~> 5) + mono_logger (1.1.2) + multi_json (1.21.1) + mustermann (3.1.1) net-imap (0.6.4.1) date net-protocol @@ -172,8 +191,12 @@ GEM psych (5.4.0) date stringio + raabro (1.4.0) racc (1.8.1) rack (2.2.23) + rack-protection (3.2.0) + base64 (>= 0.1.0) + rack (~> 2.2, >= 2.2.4) rack-test (2.2.0) rack (>= 1.3) rails (6.1.7.10) @@ -214,9 +237,30 @@ GEM erb psych (>= 4.0.0) tsort + redis (5.4.1) + redis-client (>= 0.22.0) + redis-client (0.30.0) + connection_pool + redis-namespace (1.11.0) + redis (>= 4) regexp_parser (2.12.0) reline (0.6.3) io-console (~> 0.5) + resque (3.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1) + multi_json (~> 1.0) + redis (>= 4.0) + redis-namespace (~> 1.6) + sinatra (>= 2.0) + resque-scheduler (5.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1.0) + redis (>= 4.0) + resque (>= 3.0) + rufus-scheduler (~> 3.2, != 3.3) rexml (3.4.1) rspec (3.13.2) rspec-core (~> 3.13.0) @@ -279,6 +323,8 @@ GEM ruby-lsp-rspec (0.1.29) ruby-lsp (~> 0.26.0) ruby-progressbar (1.13.0) + rufus-scheduler (3.9.2) + fugit (~> 1.1, >= 1.11.1) sequel (5.105.0) bigdecimal simplecov (0.22.0) @@ -290,6 +336,11 @@ GEM simplecov (~> 0.19) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) + sinatra (3.2.0) + mustermann (~> 3.0) + rack (~> 2.2, >= 2.2.4) + rack-protection (= 3.2.0) + tilt (~> 2.0) sprockets (4.2.2) concurrent-ruby (~> 1.0) logger @@ -305,6 +356,7 @@ GEM sqlite3 (1.7.3-x86_64-linux) stringio (3.2.0) thor (1.5.0) + tilt (2.7.0) timeout (0.6.1) tsort (0.2.0) tzinfo (2.0.6) @@ -338,11 +390,16 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record irb jdbc-sqlite3 mini_magick + mock_redis rails (~> 6.1.0) rake (~> 12.0) + resque + resque-scheduler (~> 5.0) rexml (= 3.4.1) rspec rspec-rails (~> 6.0) @@ -372,6 +429,7 @@ CHECKSUMS activesupport (6.1.7.10) sha256=3f8e1f787a7bfbf765959ba509ef70af8293b35cb864078919365a12bf33d470 ast (2.4.3) sha256=954615157c1d6a382bc27d690d973195e79db7f55e9765ac7c481c60bdb4d383 base64 (0.3.0) sha256=27337aeabad6ffae05c265c450490628ef3ebd4b67be58257393227588f5a97b + benchmark (0.5.0) sha256=465df122341aedcb81a2a24b4d3bd19b6c67c1530713fd533f3ff034e419236c benchmark-ips (2.5.0) sha256=aa98e9dc420c0dc225f6bf8cea7f112ca015596868e9dcf2e15d4ee4e3eb80ee benchmark-ipsa (0.2.0) sha256=8be4820765d575691b2f91f6c988a8a3d90393239bf9d35ea53c8ab0fbca7230 benchmark-memory (0.1.2) sha256=aa7bfe6776174d0ddefe6fb39945d88fff6d76eac165690188391d9acd441c87 @@ -381,14 +439,19 @@ CHECKSUMS bundler (4.0.14) sha256=d09a0a965cf772266a7e49e83610be7c2f4e49e61134c42a56804bb383cc24b8 cgi (0.5.1) sha256=e93fcafc69b8a934fe1e6146121fa35430efa8b4a4047c4893764067036f18e9 concurrent-ruby (1.3.6) sha256=6b56837e1e7e5292f9864f34b69c5a2cbc75c0cf5338f1ce9903d10fa762d5ab + connection_pool (3.0.2) sha256=33fff5ba71a12d2aa26cb72b1db8bba2a1a01823559fb01d29eb74c286e62e0a crass (1.0.6) sha256=dc516022a56e7b3b156099abc81b6d2b08ea1ed12676ac7a5657617f012bd45d date (3.5.1) sha256=750d06384d7b9c15d562c76291407d89e368dda4d4fff957eb94962d325a0dc0 debug (1.11.1) + delayed_job (4.2.0) sha256=51dc1f68bb9084398317884c2178debd38c13a7eb48d8aa4ff4775465d7713ef + delayed_job_active_record (4.1.11) sha256=64f34a6d50316dd7a7df1daf7c6e04ad888c0e86938762318f6f52522b7c1ba8 diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962 docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373 erb (6.0.4) sha256=38e3803694be357fe2bfe312487c74beaf9fb4e5beb3e22498952fe1645b95d9 erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 + et-orbi (1.4.0) sha256=6c7e3c90779821f9e3b324c5e96fda9767f72995d6ae435b96678a4f3e2de8bc + fugit (1.12.2) sha256=643f2bf28db263bd400cbf8e0dd8b76b2c9b94bdb130e12d2394de04d9c20e5e globalid (1.3.0) sha256=05c639ad6eb4594522a0b07983022f04aa7254626ab69445a0e493aa3786ff11 i18n (1.14.8) sha256=285778639134865c5e0f6269e0b818256017e8cde89993fdfcbfb64d088824a5 io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc @@ -405,6 +468,10 @@ CHECKSUMS mini_magick (5.3.1) sha256=29395dfd76badcabb6403ee5aff6f681e867074f8f28ce08d78661e9e4a351c4 mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef minitest (6.0.6) sha256=153ea36d1d987a62942382b61075745042a2b3123b1cd48f4c3675af9cc7d6f1 + mock_redis (0.55.0) sha256=1562199cb94b40775ff73b09f33346074138a6f35e1ac0b614b0404777cd41f0 + mono_logger (1.1.2) sha256=2e359def7007f5c908aadd953687991fe667995d14ae5f0d10dda76e3e8670f7 + multi_json (1.21.1) sha256=e6126a31808e3b4d19f483c775ceac34df190dffa62adfb63a165ee14ba68080 + mustermann (3.1.1) sha256=4c6170c7234d5499c345562ba7c7dfe73e1754286dcc1abb053064d66a127198 net-imap (0.6.4.1) sha256=29f0360d75a7efd3539f16ac1957dea5c0a51ddeceb348db4553c3120914ea0d net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3 net-protocol (0.2.2) sha256=aa73e0cba6a125369de9837b8d8ef82a61849360eba0521900e2c3713aa162a8 @@ -424,8 +491,10 @@ CHECKSUMS prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193 prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85 psych (5.4.0) sha256=14f72d69a611af663d7d70e4a7b67d9eb1f3ae9f8d916b478961d5a0075ba5b7 + raabro (1.4.0) sha256=d4fa9ff5172391edb92b242eed8be802d1934b1464061ae5e70d80962c5da882 racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f rack (2.2.23) sha256=a8fe9d7e07064770b8ec123663fded8a59ef7e2b6db5cda7173d45a5718ab69c + rack-protection (3.2.0) sha256=3c74ba7fc59066453d61af9bcba5b6fe7a9b3dab6f445418d3b391d5ea8efbff rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463 rails (6.1.7.10) sha256=809692b3ec91fe1407b160e65203ef41c0b19b27bc5b836a515d6f4b969188d1 rails-dom-testing (2.3.0) sha256=8acc7953a7b911ca44588bf08737bc16719f431a1cc3091a292bca7317925c1d @@ -435,8 +504,13 @@ CHECKSUMS rake (12.3.3) sha256=f7694adb4fe638da35452300cee6c545e9c377a0e3190018ac04d590b3c26ab3 rbs (4.0.2) sha256=af75671e66cd03434cc546622741ebf83f6197ec4328375805306330bf78ef25 rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192 + redis (5.4.1) sha256=b5e675b57ad22b15c9bcc765d5ac26f60b675408af916d31527af9bd5a81faae + redis-client (0.30.0) sha256=743f11ed42f0a41a0341554087b077479fec7e2d47a7c123fd90a12c0db5e477 + redis-namespace (1.11.0) sha256=e91a1aa2b2d888b6dea1d4ab8d39e1ae6fac3426161feb9d91dd5cca598a2239 regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835 + resque (3.0.0) sha256=ee6f02b61b2af48c587587dd6fb3b9b5eca94e348c568aed8e9d7e7872b2f713 + resque-scheduler (5.0.0) sha256=f199df7ae73b5c7972acd27c7e2f8a1f1ff4339eca5b794d0b2ba74c3d998aff rexml (3.4.1) sha256=c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587 rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d @@ -454,6 +528,7 @@ CHECKSUMS ruby-lsp (0.26.9) sha256=33a01c001c00a76b4e821efc04ed7572983430f31ca5d6f3e343d0b6ccab4129 ruby-lsp-rspec (0.1.29) sha256=798be579723376cd56b17d32373288fb1163e4cfe2024c7d068516a1cf214ee5 ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33 + rufus-scheduler (3.9.2) sha256=55fa9e4db0ff69d7f38c804f17baba0c9bce5cba39984ae3c5cf6c039d1323b9 sentry-rails (6.6.2) sentry-ruby (6.6.2) sequel (5.105.0) sha256=4191d5e5d011b7229ff8a3401ca6beac047c4d35b1ec6703376513b4b25b2e67 @@ -461,6 +536,7 @@ CHECKSUMS simplecov-cobertura (3.1.0) sha256=6d7f38aa32c965ca2174b2e5bd88cb17138eaf629518854976ac50e628925dc5 simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246 simplecov_json_formatter (0.1.4) sha256=529418fbe8de1713ac2b2d612aa3daa56d316975d307244399fa4838c601b428 + sinatra (3.2.0) sha256=6e727f4d034e87067d9aab37f328021d7c16722ffd293ef07b6e968915109807 sprockets (4.2.2) sha256=761e5a49f1c288704763f73139763564c845a8f856d52fba013458f8af1b59b1 sprockets-rails (3.5.2) sha256=a9e88e6ce9f8c912d349aa5401509165ec42326baf9e942a85de4b76dbc4119e sqlite3 (1.7.3-aarch64-linux) sha256=0ccb8c001cd2617f4801a2c816142d3c9bc299e3f3e0f49e03812f3610b0891c @@ -470,6 +546,7 @@ CHECKSUMS sqlite3 (1.7.3-x86_64-linux) sha256=522a3285660dec8253465880c97980e873db0d79060900be8d14194217a3ee73 stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1 thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73 + tilt (2.7.0) sha256=0d5b9ba69f6a36490c64b0eee9f6e9aad517e20dcc848800a06eb116f08c6ab3 timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b diff --git a/sentry-rails/gemfiles/ruby-3.2_rails-7.0.0.gemfile.lock b/sentry-rails/gemfiles/ruby-3.2_rails-7.0.0.gemfile.lock index 09097133f..81752f1ef 100644 --- a/sentry-rails/gemfiles/ruby-3.2_rails-7.0.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-3.2_rails-7.0.0.gemfile.lock @@ -111,13 +111,26 @@ GEM builder (3.3.0) cgi (0.5.1) concurrent-ruby (1.3.6) + connection_pool (3.0.2) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) erb (6.0.4) erubi (1.13.1) + et-orbi (1.4.0) + tzinfo + fugit (1.12.2) + et-orbi (~> 1.4) + raabro (~> 1.4) globalid (1.3.0) activesupport (>= 6.1) i18n (1.14.8) @@ -150,6 +163,11 @@ GEM minitest (6.0.6) drb (~> 2.0) prism (~> 1.5) + mock_redis (0.55.0) + redis (~> 5) + mono_logger (1.1.2) + multi_json (1.21.1) + mustermann (3.1.1) mutex_m (0.3.0) net-imap (0.6.4.1) date @@ -188,8 +206,12 @@ GEM psych (5.4.0) date stringio + raabro (1.4.0) racc (1.8.1) rack (2.2.23) + rack-protection (3.2.0) + base64 (>= 0.1.0) + rack (~> 2.2, >= 2.2.4) rack-test (2.2.0) rack (>= 1.3) rails (7.0.10) @@ -230,9 +252,30 @@ GEM erb psych (>= 4.0.0) tsort + redis (5.4.1) + redis-client (>= 0.22.0) + redis-client (0.30.0) + connection_pool + redis-namespace (1.11.0) + redis (>= 4) regexp_parser (2.12.0) reline (0.6.3) io-console (~> 0.5) + resque (3.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1) + multi_json (~> 1.0) + redis (>= 4.0) + redis-namespace (~> 1.6) + sinatra (>= 2.0) + resque-scheduler (5.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1.0) + redis (>= 4.0) + resque (>= 3.0) + rufus-scheduler (~> 3.2, != 3.3) rexml (3.4.1) rspec (3.13.2) rspec-core (~> 3.13.0) @@ -295,6 +338,8 @@ GEM ruby-lsp-rspec (0.1.29) ruby-lsp (~> 0.26.0) ruby-progressbar (1.13.0) + rufus-scheduler (3.9.2) + fugit (~> 1.1, >= 1.11.1) securerandom (0.4.1) sequel (5.105.0) bigdecimal @@ -307,6 +352,11 @@ GEM simplecov (~> 0.19) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) + sinatra (3.2.0) + mustermann (~> 3.0) + rack (~> 2.2, >= 2.2.4) + rack-protection (= 3.2.0) + tilt (~> 2.0) sprockets (4.2.2) concurrent-ruby (~> 1.0) logger @@ -322,6 +372,7 @@ GEM sqlite3 (1.7.3-x86_64-linux) stringio (3.2.0) thor (1.5.0) + tilt (2.7.0) timeout (0.6.1) tsort (0.2.0) tzinfo (2.0.6) @@ -355,11 +406,16 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record irb jdbc-sqlite3 mini_magick + mock_redis rails (~> 7.0.0) rake (~> 12.0) + resque + resque-scheduler (~> 5.0) rexml (= 3.4.1) rspec rspec-rails (~> 6.0) @@ -399,14 +455,19 @@ CHECKSUMS bundler (4.0.14) sha256=d09a0a965cf772266a7e49e83610be7c2f4e49e61134c42a56804bb383cc24b8 cgi (0.5.1) sha256=e93fcafc69b8a934fe1e6146121fa35430efa8b4a4047c4893764067036f18e9 concurrent-ruby (1.3.6) sha256=6b56837e1e7e5292f9864f34b69c5a2cbc75c0cf5338f1ce9903d10fa762d5ab + connection_pool (3.0.2) sha256=33fff5ba71a12d2aa26cb72b1db8bba2a1a01823559fb01d29eb74c286e62e0a crass (1.0.6) sha256=dc516022a56e7b3b156099abc81b6d2b08ea1ed12676ac7a5657617f012bd45d date (3.5.1) sha256=750d06384d7b9c15d562c76291407d89e368dda4d4fff957eb94962d325a0dc0 debug (1.11.1) + delayed_job (4.2.0) sha256=51dc1f68bb9084398317884c2178debd38c13a7eb48d8aa4ff4775465d7713ef + delayed_job_active_record (4.1.11) sha256=64f34a6d50316dd7a7df1daf7c6e04ad888c0e86938762318f6f52522b7c1ba8 diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962 docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373 erb (6.0.4) sha256=38e3803694be357fe2bfe312487c74beaf9fb4e5beb3e22498952fe1645b95d9 erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 + et-orbi (1.4.0) sha256=6c7e3c90779821f9e3b324c5e96fda9767f72995d6ae435b96678a4f3e2de8bc + fugit (1.12.2) sha256=643f2bf28db263bd400cbf8e0dd8b76b2c9b94bdb130e12d2394de04d9c20e5e globalid (1.3.0) sha256=05c639ad6eb4594522a0b07983022f04aa7254626ab69445a0e493aa3786ff11 i18n (1.14.8) sha256=285778639134865c5e0f6269e0b818256017e8cde89993fdfcbfb64d088824a5 io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc @@ -423,6 +484,10 @@ CHECKSUMS mini_magick (5.3.1) sha256=29395dfd76badcabb6403ee5aff6f681e867074f8f28ce08d78661e9e4a351c4 mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef minitest (6.0.6) sha256=153ea36d1d987a62942382b61075745042a2b3123b1cd48f4c3675af9cc7d6f1 + mock_redis (0.55.0) sha256=1562199cb94b40775ff73b09f33346074138a6f35e1ac0b614b0404777cd41f0 + mono_logger (1.1.2) sha256=2e359def7007f5c908aadd953687991fe667995d14ae5f0d10dda76e3e8670f7 + multi_json (1.21.1) sha256=e6126a31808e3b4d19f483c775ceac34df190dffa62adfb63a165ee14ba68080 + mustermann (3.1.1) sha256=4c6170c7234d5499c345562ba7c7dfe73e1754286dcc1abb053064d66a127198 mutex_m (0.3.0) sha256=cfcb04ac16b69c4813777022fdceda24e9f798e48092a2b817eb4c0a782b0751 net-imap (0.6.4.1) sha256=29f0360d75a7efd3539f16ac1957dea5c0a51ddeceb348db4553c3120914ea0d net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3 @@ -443,8 +508,10 @@ CHECKSUMS prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193 prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85 psych (5.4.0) sha256=14f72d69a611af663d7d70e4a7b67d9eb1f3ae9f8d916b478961d5a0075ba5b7 + raabro (1.4.0) sha256=d4fa9ff5172391edb92b242eed8be802d1934b1464061ae5e70d80962c5da882 racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f rack (2.2.23) sha256=a8fe9d7e07064770b8ec123663fded8a59ef7e2b6db5cda7173d45a5718ab69c + rack-protection (3.2.0) sha256=3c74ba7fc59066453d61af9bcba5b6fe7a9b3dab6f445418d3b391d5ea8efbff rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463 rails (7.0.10) sha256=866eb2c53d3184543fdb770d7ea308e4ee518063226a9e176229f3c7a9537c25 rails-dom-testing (2.3.0) sha256=8acc7953a7b911ca44588bf08737bc16719f431a1cc3091a292bca7317925c1d @@ -454,8 +521,13 @@ CHECKSUMS rake (12.3.3) sha256=f7694adb4fe638da35452300cee6c545e9c377a0e3190018ac04d590b3c26ab3 rbs (4.0.2) sha256=af75671e66cd03434cc546622741ebf83f6197ec4328375805306330bf78ef25 rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192 + redis (5.4.1) sha256=b5e675b57ad22b15c9bcc765d5ac26f60b675408af916d31527af9bd5a81faae + redis-client (0.30.0) sha256=743f11ed42f0a41a0341554087b077479fec7e2d47a7c123fd90a12c0db5e477 + redis-namespace (1.11.0) sha256=e91a1aa2b2d888b6dea1d4ab8d39e1ae6fac3426161feb9d91dd5cca598a2239 regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835 + resque (3.0.0) sha256=ee6f02b61b2af48c587587dd6fb3b9b5eca94e348c568aed8e9d7e7872b2f713 + resque-scheduler (5.0.0) sha256=f199df7ae73b5c7972acd27c7e2f8a1f1ff4339eca5b794d0b2ba74c3d998aff rexml (3.4.1) sha256=c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587 rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d @@ -473,6 +545,7 @@ CHECKSUMS ruby-lsp (0.26.9) sha256=33a01c001c00a76b4e821efc04ed7572983430f31ca5d6f3e343d0b6ccab4129 ruby-lsp-rspec (0.1.29) sha256=798be579723376cd56b17d32373288fb1163e4cfe2024c7d068516a1cf214ee5 ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33 + rufus-scheduler (3.9.2) sha256=55fa9e4db0ff69d7f38c804f17baba0c9bce5cba39984ae3c5cf6c039d1323b9 securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1 sentry-rails (6.6.2) sentry-ruby (6.6.2) @@ -481,6 +554,7 @@ CHECKSUMS simplecov-cobertura (3.1.0) sha256=6d7f38aa32c965ca2174b2e5bd88cb17138eaf629518854976ac50e628925dc5 simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246 simplecov_json_formatter (0.1.4) sha256=529418fbe8de1713ac2b2d612aa3daa56d316975d307244399fa4838c601b428 + sinatra (3.2.0) sha256=6e727f4d034e87067d9aab37f328021d7c16722ffd293ef07b6e968915109807 sprockets (4.2.2) sha256=761e5a49f1c288704763f73139763564c845a8f856d52fba013458f8af1b59b1 sprockets-rails (3.5.2) sha256=a9e88e6ce9f8c912d349aa5401509165ec42326baf9e942a85de4b76dbc4119e sqlite3 (1.7.3-aarch64-linux) sha256=0ccb8c001cd2617f4801a2c816142d3c9bc299e3f3e0f49e03812f3610b0891c @@ -490,6 +564,7 @@ CHECKSUMS sqlite3 (1.7.3-x86_64-linux) sha256=522a3285660dec8253465880c97980e873db0d79060900be8d14194217a3ee73 stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1 thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73 + tilt (2.7.0) sha256=0d5b9ba69f6a36490c64b0eee9f6e9aad517e20dcc848800a06eb116f08c6ab3 timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b diff --git a/sentry-rails/gemfiles/ruby-3.2_rails-7.1.0.gemfile.lock b/sentry-rails/gemfiles/ruby-3.2_rails-7.1.0.gemfile.lock index aa52c8a9d..225e20054 100644 --- a/sentry-rails/gemfiles/ruby-3.2_rails-7.1.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-3.2_rails-7.1.0.gemfile.lock @@ -120,11 +120,23 @@ GEM connection_pool (3.0.2) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) erb (6.0.4) erubi (1.13.1) + et-orbi (1.4.0) + tzinfo + fugit (1.12.2) + et-orbi (~> 1.4) + raabro (~> 1.4) globalid (1.3.0) activesupport (>= 6.1) i18n (1.14.8) @@ -156,6 +168,11 @@ GEM minitest (6.0.6) drb (~> 2.0) prism (~> 1.5) + mock_redis (0.55.0) + redis (~> 5) + mono_logger (1.1.2) + multi_json (1.21.1) + mustermann (3.1.1) mutex_m (0.3.0) net-imap (0.6.4.1) date @@ -193,8 +210,13 @@ GEM prism (1.9.0) psych (4.0.6) stringio + raabro (1.4.0) racc (1.8.1) rack (3.2.6) + rack-protection (4.2.1) + base64 (>= 0.1.0) + logger (>= 1.6.0) + rack (>= 3.0.0, < 4) rack-session (2.1.2) base64 (>= 0.1.0) rack (>= 3.0.0) @@ -243,9 +265,30 @@ GEM erb psych (>= 4.0.0) tsort + redis (5.4.1) + redis-client (>= 0.22.0) + redis-client (0.30.0) + connection_pool + redis-namespace (1.11.0) + redis (>= 4) regexp_parser (2.12.0) reline (0.6.3) io-console (~> 0.5) + resque (3.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1) + multi_json (~> 1.0) + redis (>= 4.0) + redis-namespace (~> 1.6) + sinatra (>= 2.0) + resque-scheduler (5.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1.0) + redis (>= 4.0) + resque (>= 3.0) + rufus-scheduler (~> 3.2, != 3.3) rexml (3.4.1) rspec (3.13.2) rspec-core (~> 3.13.0) @@ -308,9 +351,17 @@ GEM ruby-lsp-rspec (0.1.29) ruby-lsp (~> 0.26.0) ruby-progressbar (1.13.0) + rufus-scheduler (3.9.2) + fugit (~> 1.1, >= 1.11.1) securerandom (0.4.1) sequel (5.105.0) bigdecimal + sidekiq (8.1.6) + connection_pool (>= 3.0.0) + json (>= 2.16.0) + logger (>= 1.7.0) + rack (>= 3.2.0) + redis-client (>= 0.29.0) simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) @@ -320,6 +371,13 @@ GEM simplecov (~> 0.19) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) + sinatra (4.2.1) + logger (>= 1.6.0) + mustermann (~> 3.0) + rack (>= 3.0.0, < 4) + rack-protection (= 4.2.1) + rack-session (>= 2.0.0, < 3) + tilt (~> 2.0) sprockets (4.2.2) concurrent-ruby (~> 1.0) logger @@ -335,6 +393,7 @@ GEM sqlite3 (1.7.3-x86_64-linux) stringio (3.2.0) thor (1.5.0) + tilt (2.7.0) timeout (0.6.1) tsort (0.2.0) tzinfo (2.0.6) @@ -368,12 +427,17 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record irb jdbc-sqlite3 mini_magick + mock_redis psych (~> 4.0.0) rails (~> 7.1.0) rake (~> 12.0) + resque + resque-scheduler (~> 5.0) rexml (= 3.4.1) rspec rspec-rails (~> 7.0) @@ -384,6 +448,7 @@ DEPENDENCIES sentry-rails! sentry-ruby! sequel + sidekiq (~> 8.0) simplecov simplecov-cobertura (~> 3.0) sprockets-rails @@ -417,11 +482,15 @@ CHECKSUMS crass (1.0.6) sha256=dc516022a56e7b3b156099abc81b6d2b08ea1ed12676ac7a5657617f012bd45d date (3.5.1) sha256=750d06384d7b9c15d562c76291407d89e368dda4d4fff957eb94962d325a0dc0 debug (1.11.1) + delayed_job (4.2.0) sha256=51dc1f68bb9084398317884c2178debd38c13a7eb48d8aa4ff4775465d7713ef + delayed_job_active_record (4.1.11) sha256=64f34a6d50316dd7a7df1daf7c6e04ad888c0e86938762318f6f52522b7c1ba8 diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962 docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373 erb (6.0.4) sha256=38e3803694be357fe2bfe312487c74beaf9fb4e5beb3e22498952fe1645b95d9 erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 + et-orbi (1.4.0) sha256=6c7e3c90779821f9e3b324c5e96fda9767f72995d6ae435b96678a4f3e2de8bc + fugit (1.12.2) sha256=643f2bf28db263bd400cbf8e0dd8b76b2c9b94bdb130e12d2394de04d9c20e5e globalid (1.3.0) sha256=05c639ad6eb4594522a0b07983022f04aa7254626ab69445a0e493aa3786ff11 i18n (1.14.8) sha256=285778639134865c5e0f6269e0b818256017e8cde89993fdfcbfb64d088824a5 io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc @@ -437,6 +506,10 @@ CHECKSUMS mini_magick (5.3.1) sha256=29395dfd76badcabb6403ee5aff6f681e867074f8f28ce08d78661e9e4a351c4 mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef minitest (6.0.6) sha256=153ea36d1d987a62942382b61075745042a2b3123b1cd48f4c3675af9cc7d6f1 + mock_redis (0.55.0) sha256=1562199cb94b40775ff73b09f33346074138a6f35e1ac0b614b0404777cd41f0 + mono_logger (1.1.2) sha256=2e359def7007f5c908aadd953687991fe667995d14ae5f0d10dda76e3e8670f7 + multi_json (1.21.1) sha256=e6126a31808e3b4d19f483c775ceac34df190dffa62adfb63a165ee14ba68080 + mustermann (3.1.1) sha256=4c6170c7234d5499c345562ba7c7dfe73e1754286dcc1abb053064d66a127198 mutex_m (0.3.0) sha256=cfcb04ac16b69c4813777022fdceda24e9f798e48092a2b817eb4c0a782b0751 net-imap (0.6.4.1) sha256=29f0360d75a7efd3539f16ac1957dea5c0a51ddeceb348db4553c3120914ea0d net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3 @@ -457,8 +530,10 @@ CHECKSUMS prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193 prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85 psych (4.0.6) sha256=f70425c3dca8d8fbe4c1de7270d921e35eb6eb44cf2b2e4f961dc8031330b876 + raabro (1.4.0) sha256=d4fa9ff5172391edb92b242eed8be802d1934b1464061ae5e70d80962c5da882 racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f rack (3.2.6) sha256=5ed78e1f73b2e25679bec7d45ee2d4483cc4146eb1be0264fc4d94cb5ef212c2 + rack-protection (4.2.1) sha256=cf6e2842df8c55f5e4d1a4be015e603e19e9bc3a7178bae58949ccbb58558bac rack-session (2.1.2) sha256=595434f8c0c3473ae7d7ac56ecda6cc6dfd9d37c0b2b5255330aa1576967ffe8 rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463 rackup (2.3.1) sha256=6c79c26753778e90983761d677a48937ee3192b3ffef6bc963c0950f94688868 @@ -470,8 +545,13 @@ CHECKSUMS rake (12.3.3) sha256=f7694adb4fe638da35452300cee6c545e9c377a0e3190018ac04d590b3c26ab3 rbs (4.0.2) sha256=af75671e66cd03434cc546622741ebf83f6197ec4328375805306330bf78ef25 rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192 + redis (5.4.1) sha256=b5e675b57ad22b15c9bcc765d5ac26f60b675408af916d31527af9bd5a81faae + redis-client (0.30.0) sha256=743f11ed42f0a41a0341554087b077479fec7e2d47a7c123fd90a12c0db5e477 + redis-namespace (1.11.0) sha256=e91a1aa2b2d888b6dea1d4ab8d39e1ae6fac3426161feb9d91dd5cca598a2239 regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835 + resque (3.0.0) sha256=ee6f02b61b2af48c587587dd6fb3b9b5eca94e348c568aed8e9d7e7872b2f713 + resque-scheduler (5.0.0) sha256=f199df7ae73b5c7972acd27c7e2f8a1f1ff4339eca5b794d0b2ba74c3d998aff rexml (3.4.1) sha256=c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587 rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d @@ -489,14 +569,17 @@ CHECKSUMS ruby-lsp (0.26.9) sha256=33a01c001c00a76b4e821efc04ed7572983430f31ca5d6f3e343d0b6ccab4129 ruby-lsp-rspec (0.1.29) sha256=798be579723376cd56b17d32373288fb1163e4cfe2024c7d068516a1cf214ee5 ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33 + rufus-scheduler (3.9.2) sha256=55fa9e4db0ff69d7f38c804f17baba0c9bce5cba39984ae3c5cf6c039d1323b9 securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1 sentry-rails (6.6.2) sentry-ruby (6.6.2) sequel (5.105.0) sha256=4191d5e5d011b7229ff8a3401ca6beac047c4d35b1ec6703376513b4b25b2e67 + sidekiq (8.1.6) sha256=be20cd051124b1a16cf97ea9157137abbd30a515c16a5ae9312d2eadd045e40f simplecov (0.22.0) sha256=fe2622c7834ff23b98066bb0a854284b2729a569ac659f82621fc22ef36213a5 simplecov-cobertura (3.1.0) sha256=6d7f38aa32c965ca2174b2e5bd88cb17138eaf629518854976ac50e628925dc5 simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246 simplecov_json_formatter (0.1.4) sha256=529418fbe8de1713ac2b2d612aa3daa56d316975d307244399fa4838c601b428 + sinatra (4.2.1) sha256=b7aeb9b11d046b552972ade834f1f9be98b185fa8444480688e3627625377080 sprockets (4.2.2) sha256=761e5a49f1c288704763f73139763564c845a8f856d52fba013458f8af1b59b1 sprockets-rails (3.5.2) sha256=a9e88e6ce9f8c912d349aa5401509165ec42326baf9e942a85de4b76dbc4119e sqlite3 (1.7.3-aarch64-linux) sha256=0ccb8c001cd2617f4801a2c816142d3c9bc299e3f3e0f49e03812f3610b0891c @@ -506,6 +589,7 @@ CHECKSUMS sqlite3 (1.7.3-x86_64-linux) sha256=522a3285660dec8253465880c97980e873db0d79060900be8d14194217a3ee73 stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1 thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73 + tilt (2.7.0) sha256=0d5b9ba69f6a36490c64b0eee9f6e9aad517e20dcc848800a06eb116f08c6ab3 timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b diff --git a/sentry-rails/gemfiles/ruby-3.2_rails-7.2.0.gemfile.lock b/sentry-rails/gemfiles/ruby-3.2_rails-7.2.0.gemfile.lock index d91c95a8d..ec9ce3fc0 100644 --- a/sentry-rails/gemfiles/ruby-3.2_rails-7.2.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-3.2_rails-7.2.0.gemfile.lock @@ -114,11 +114,23 @@ GEM connection_pool (3.0.2) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) erb (6.0.4) erubi (1.13.1) + et-orbi (1.4.0) + tzinfo + fugit (1.12.2) + et-orbi (~> 1.4) + raabro (~> 1.4) globalid (1.3.0) activesupport (>= 6.1) i18n (1.14.8) @@ -148,6 +160,11 @@ GEM logger mini_mime (1.1.5) minitest (5.27.0) + mock_redis (0.55.0) + redis (~> 5) + mono_logger (1.1.2) + multi_json (1.21.1) + mustermann (3.1.1) net-imap (0.6.4.1) date net-protocol @@ -184,8 +201,13 @@ GEM prism (1.9.0) psych (4.0.6) stringio + raabro (1.4.0) racc (1.8.1) rack (3.2.6) + rack-protection (4.2.1) + base64 (>= 0.1.0) + logger (>= 1.6.0) + rack (>= 3.0.0, < 4) rack-session (2.1.2) base64 (>= 0.1.0) rack (>= 3.0.0) @@ -234,9 +256,30 @@ GEM erb psych (>= 4.0.0) tsort + redis (5.4.1) + redis-client (>= 0.22.0) + redis-client (0.30.0) + connection_pool + redis-namespace (1.11.0) + redis (>= 4) regexp_parser (2.12.0) reline (0.6.3) io-console (~> 0.5) + resque (3.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1) + multi_json (~> 1.0) + redis (>= 4.0) + redis-namespace (~> 1.6) + sinatra (>= 2.0) + resque-scheduler (5.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1.0) + redis (>= 4.0) + resque (>= 3.0) + rufus-scheduler (~> 3.2, != 3.3) rexml (3.4.1) rspec (3.13.2) rspec-core (~> 3.13.0) @@ -299,9 +342,17 @@ GEM ruby-lsp-rspec (0.1.29) ruby-lsp (~> 0.26.0) ruby-progressbar (1.13.0) + rufus-scheduler (3.9.2) + fugit (~> 1.1, >= 1.11.1) securerandom (0.4.1) sequel (5.105.0) bigdecimal + sidekiq (8.1.6) + connection_pool (>= 3.0.0) + json (>= 2.16.0) + logger (>= 1.7.0) + rack (>= 3.2.0) + redis-client (>= 0.29.0) simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) @@ -311,6 +362,13 @@ GEM simplecov (~> 0.19) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) + sinatra (4.2.1) + logger (>= 1.6.0) + mustermann (~> 3.0) + rack (>= 3.0.0, < 4) + rack-protection (= 4.2.1) + rack-session (>= 2.0.0, < 3) + tilt (~> 2.0) sprockets (4.2.2) concurrent-ruby (~> 1.0) logger @@ -326,6 +384,7 @@ GEM sqlite3 (1.7.3-x86_64-linux) stringio (3.2.0) thor (1.5.0) + tilt (2.7.0) timeout (0.6.1) tsort (0.2.0) tzinfo (2.0.6) @@ -360,12 +419,17 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record irb jdbc-sqlite3 mini_magick + mock_redis psych (~> 4.0.0) rails (~> 7.2.0) rake (~> 12.0) + resque + resque-scheduler (~> 5.0) rexml (= 3.4.1) rspec rspec-rails (~> 7.0) @@ -376,6 +440,7 @@ DEPENDENCIES sentry-rails! sentry-ruby! sequel + sidekiq (~> 8.0) simplecov simplecov-cobertura (~> 3.0) sprockets-rails @@ -409,11 +474,15 @@ CHECKSUMS crass (1.0.6) sha256=dc516022a56e7b3b156099abc81b6d2b08ea1ed12676ac7a5657617f012bd45d date (3.5.1) sha256=750d06384d7b9c15d562c76291407d89e368dda4d4fff957eb94962d325a0dc0 debug (1.11.1) + delayed_job (4.2.0) sha256=51dc1f68bb9084398317884c2178debd38c13a7eb48d8aa4ff4775465d7713ef + delayed_job_active_record (4.1.11) sha256=64f34a6d50316dd7a7df1daf7c6e04ad888c0e86938762318f6f52522b7c1ba8 diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962 docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373 erb (6.0.4) sha256=38e3803694be357fe2bfe312487c74beaf9fb4e5beb3e22498952fe1645b95d9 erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 + et-orbi (1.4.0) sha256=6c7e3c90779821f9e3b324c5e96fda9767f72995d6ae435b96678a4f3e2de8bc + fugit (1.12.2) sha256=643f2bf28db263bd400cbf8e0dd8b76b2c9b94bdb130e12d2394de04d9c20e5e globalid (1.3.0) sha256=05c639ad6eb4594522a0b07983022f04aa7254626ab69445a0e493aa3786ff11 i18n (1.14.8) sha256=285778639134865c5e0f6269e0b818256017e8cde89993fdfcbfb64d088824a5 io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc @@ -429,6 +498,10 @@ CHECKSUMS mini_magick (5.3.1) sha256=29395dfd76badcabb6403ee5aff6f681e867074f8f28ce08d78661e9e4a351c4 mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef minitest (5.27.0) sha256=2d3b17f8a36fe7801c1adcffdbc38233b938eb0b4966e97a6739055a45fa77d5 + mock_redis (0.55.0) sha256=1562199cb94b40775ff73b09f33346074138a6f35e1ac0b614b0404777cd41f0 + mono_logger (1.1.2) sha256=2e359def7007f5c908aadd953687991fe667995d14ae5f0d10dda76e3e8670f7 + multi_json (1.21.1) sha256=e6126a31808e3b4d19f483c775ceac34df190dffa62adfb63a165ee14ba68080 + mustermann (3.1.1) sha256=4c6170c7234d5499c345562ba7c7dfe73e1754286dcc1abb053064d66a127198 net-imap (0.6.4.1) sha256=29f0360d75a7efd3539f16ac1957dea5c0a51ddeceb348db4553c3120914ea0d net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3 net-protocol (0.2.2) sha256=aa73e0cba6a125369de9837b8d8ef82a61849360eba0521900e2c3713aa162a8 @@ -448,8 +521,10 @@ CHECKSUMS prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193 prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85 psych (4.0.6) sha256=f70425c3dca8d8fbe4c1de7270d921e35eb6eb44cf2b2e4f961dc8031330b876 + raabro (1.4.0) sha256=d4fa9ff5172391edb92b242eed8be802d1934b1464061ae5e70d80962c5da882 racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f rack (3.2.6) sha256=5ed78e1f73b2e25679bec7d45ee2d4483cc4146eb1be0264fc4d94cb5ef212c2 + rack-protection (4.2.1) sha256=cf6e2842df8c55f5e4d1a4be015e603e19e9bc3a7178bae58949ccbb58558bac rack-session (2.1.2) sha256=595434f8c0c3473ae7d7ac56ecda6cc6dfd9d37c0b2b5255330aa1576967ffe8 rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463 rackup (2.3.1) sha256=6c79c26753778e90983761d677a48937ee3192b3ffef6bc963c0950f94688868 @@ -461,8 +536,13 @@ CHECKSUMS rake (12.3.3) sha256=f7694adb4fe638da35452300cee6c545e9c377a0e3190018ac04d590b3c26ab3 rbs (4.0.2) sha256=af75671e66cd03434cc546622741ebf83f6197ec4328375805306330bf78ef25 rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192 + redis (5.4.1) sha256=b5e675b57ad22b15c9bcc765d5ac26f60b675408af916d31527af9bd5a81faae + redis-client (0.30.0) sha256=743f11ed42f0a41a0341554087b077479fec7e2d47a7c123fd90a12c0db5e477 + redis-namespace (1.11.0) sha256=e91a1aa2b2d888b6dea1d4ab8d39e1ae6fac3426161feb9d91dd5cca598a2239 regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835 + resque (3.0.0) sha256=ee6f02b61b2af48c587587dd6fb3b9b5eca94e348c568aed8e9d7e7872b2f713 + resque-scheduler (5.0.0) sha256=f199df7ae73b5c7972acd27c7e2f8a1f1ff4339eca5b794d0b2ba74c3d998aff rexml (3.4.1) sha256=c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587 rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d @@ -480,14 +560,17 @@ CHECKSUMS ruby-lsp (0.26.9) sha256=33a01c001c00a76b4e821efc04ed7572983430f31ca5d6f3e343d0b6ccab4129 ruby-lsp-rspec (0.1.29) sha256=798be579723376cd56b17d32373288fb1163e4cfe2024c7d068516a1cf214ee5 ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33 + rufus-scheduler (3.9.2) sha256=55fa9e4db0ff69d7f38c804f17baba0c9bce5cba39984ae3c5cf6c039d1323b9 securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1 sentry-rails (6.6.2) sentry-ruby (6.6.2) sequel (5.105.0) sha256=4191d5e5d011b7229ff8a3401ca6beac047c4d35b1ec6703376513b4b25b2e67 + sidekiq (8.1.6) sha256=be20cd051124b1a16cf97ea9157137abbd30a515c16a5ae9312d2eadd045e40f simplecov (0.22.0) sha256=fe2622c7834ff23b98066bb0a854284b2729a569ac659f82621fc22ef36213a5 simplecov-cobertura (3.1.0) sha256=6d7f38aa32c965ca2174b2e5bd88cb17138eaf629518854976ac50e628925dc5 simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246 simplecov_json_formatter (0.1.4) sha256=529418fbe8de1713ac2b2d612aa3daa56d316975d307244399fa4838c601b428 + sinatra (4.2.1) sha256=b7aeb9b11d046b552972ade834f1f9be98b185fa8444480688e3627625377080 sprockets (4.2.2) sha256=761e5a49f1c288704763f73139763564c845a8f856d52fba013458f8af1b59b1 sprockets-rails (3.5.2) sha256=a9e88e6ce9f8c912d349aa5401509165ec42326baf9e942a85de4b76dbc4119e sqlite3 (1.7.3-aarch64-linux) sha256=0ccb8c001cd2617f4801a2c816142d3c9bc299e3f3e0f49e03812f3610b0891c @@ -497,6 +580,7 @@ CHECKSUMS sqlite3 (1.7.3-x86_64-linux) sha256=522a3285660dec8253465880c97980e873db0d79060900be8d14194217a3ee73 stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1 thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73 + tilt (2.7.0) sha256=0d5b9ba69f6a36490c64b0eee9f6e9aad517e20dcc848800a06eb116f08c6ab3 timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b diff --git a/sentry-rails/gemfiles/ruby-3.2_rails-8.0.0.gemfile.lock b/sentry-rails/gemfiles/ruby-3.2_rails-8.0.0.gemfile.lock index a4f029281..6c78e5e95 100644 --- a/sentry-rails/gemfiles/ruby-3.2_rails-8.0.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-3.2_rails-8.0.0.gemfile.lock @@ -112,11 +112,23 @@ GEM connection_pool (3.0.2) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) erb (6.0.4) erubi (1.13.1) + et-orbi (1.4.0) + tzinfo + fugit (1.12.2) + et-orbi (~> 1.4) + raabro (~> 1.4) globalid (1.3.0) activesupport (>= 6.1) i18n (1.14.8) @@ -148,6 +160,11 @@ GEM minitest (6.0.6) drb (~> 2.0) prism (~> 1.5) + mock_redis (0.55.0) + redis (~> 5) + mono_logger (1.1.2) + multi_json (1.21.1) + mustermann (3.1.1) net-imap (0.6.4.1) date net-protocol @@ -185,8 +202,13 @@ GEM psych (5.4.0) date stringio + raabro (1.4.0) racc (1.8.1) rack (3.2.6) + rack-protection (4.2.1) + base64 (>= 0.1.0) + logger (>= 1.6.0) + rack (>= 3.0.0, < 4) rack-session (2.1.2) base64 (>= 0.1.0) rack (>= 3.0.0) @@ -234,9 +256,30 @@ GEM erb psych (>= 4.0.0) tsort + redis (5.4.1) + redis-client (>= 0.22.0) + redis-client (0.30.0) + connection_pool + redis-namespace (1.11.0) + redis (>= 4) regexp_parser (2.12.0) reline (0.6.3) io-console (~> 0.5) + resque (3.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1) + multi_json (~> 1.0) + redis (>= 4.0) + redis-namespace (~> 1.6) + sinatra (>= 2.0) + resque-scheduler (5.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1.0) + redis (>= 4.0) + resque (>= 3.0) + rufus-scheduler (~> 3.2, != 3.3) rexml (3.4.1) rspec (3.13.2) rspec-core (~> 3.13.0) @@ -299,9 +342,17 @@ GEM ruby-lsp-rspec (0.1.29) ruby-lsp (~> 0.26.0) ruby-progressbar (1.13.0) + rufus-scheduler (3.9.2) + fugit (~> 1.1, >= 1.11.1) securerandom (0.4.1) sequel (5.105.0) bigdecimal + sidekiq (8.1.6) + connection_pool (>= 3.0.0) + json (>= 2.16.0) + logger (>= 1.7.0) + rack (>= 3.2.0) + redis-client (>= 0.29.0) simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) @@ -311,6 +362,13 @@ GEM simplecov (~> 0.19) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) + sinatra (4.2.1) + logger (>= 1.6.0) + mustermann (~> 3.0) + rack (>= 3.0.0, < 4) + rack-protection (= 4.2.1) + rack-session (>= 2.0.0, < 3) + tilt (~> 2.0) sprockets (4.2.2) concurrent-ruby (~> 1.0) logger @@ -329,6 +387,7 @@ GEM sqlite3 (2.1.1-x86_64-linux-musl) stringio (3.2.0) thor (1.5.0) + tilt (2.7.0) timeout (0.6.1) tsort (0.2.0) tzinfo (2.0.6) @@ -362,11 +421,16 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record irb jdbc-sqlite3 mini_magick + mock_redis rails (~> 8.0.0) rake (~> 12.0) + resque + resque-scheduler (~> 5.0) rexml (= 3.4.1) rspec rspec-rails (~> 8.0.0) @@ -377,6 +441,7 @@ DEPENDENCIES sentry-rails! sentry-ruby! sequel + sidekiq (~> 8.0) simplecov simplecov-cobertura (~> 3.0) sprockets-rails @@ -410,11 +475,15 @@ CHECKSUMS crass (1.0.6) sha256=dc516022a56e7b3b156099abc81b6d2b08ea1ed12676ac7a5657617f012bd45d date (3.5.1) sha256=750d06384d7b9c15d562c76291407d89e368dda4d4fff957eb94962d325a0dc0 debug (1.11.1) + delayed_job (4.2.0) sha256=51dc1f68bb9084398317884c2178debd38c13a7eb48d8aa4ff4775465d7713ef + delayed_job_active_record (4.1.11) sha256=64f34a6d50316dd7a7df1daf7c6e04ad888c0e86938762318f6f52522b7c1ba8 diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962 docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373 erb (6.0.4) sha256=38e3803694be357fe2bfe312487c74beaf9fb4e5beb3e22498952fe1645b95d9 erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 + et-orbi (1.4.0) sha256=6c7e3c90779821f9e3b324c5e96fda9767f72995d6ae435b96678a4f3e2de8bc + fugit (1.12.2) sha256=643f2bf28db263bd400cbf8e0dd8b76b2c9b94bdb130e12d2394de04d9c20e5e globalid (1.3.0) sha256=05c639ad6eb4594522a0b07983022f04aa7254626ab69445a0e493aa3786ff11 i18n (1.14.8) sha256=285778639134865c5e0f6269e0b818256017e8cde89993fdfcbfb64d088824a5 io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc @@ -430,6 +499,10 @@ CHECKSUMS mini_magick (5.3.1) sha256=29395dfd76badcabb6403ee5aff6f681e867074f8f28ce08d78661e9e4a351c4 mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef minitest (6.0.6) sha256=153ea36d1d987a62942382b61075745042a2b3123b1cd48f4c3675af9cc7d6f1 + mock_redis (0.55.0) sha256=1562199cb94b40775ff73b09f33346074138a6f35e1ac0b614b0404777cd41f0 + mono_logger (1.1.2) sha256=2e359def7007f5c908aadd953687991fe667995d14ae5f0d10dda76e3e8670f7 + multi_json (1.21.1) sha256=e6126a31808e3b4d19f483c775ceac34df190dffa62adfb63a165ee14ba68080 + mustermann (3.1.1) sha256=4c6170c7234d5499c345562ba7c7dfe73e1754286dcc1abb053064d66a127198 net-imap (0.6.4.1) sha256=29f0360d75a7efd3539f16ac1957dea5c0a51ddeceb348db4553c3120914ea0d net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3 net-protocol (0.2.2) sha256=aa73e0cba6a125369de9837b8d8ef82a61849360eba0521900e2c3713aa162a8 @@ -449,8 +522,10 @@ CHECKSUMS prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193 prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85 psych (5.4.0) sha256=14f72d69a611af663d7d70e4a7b67d9eb1f3ae9f8d916b478961d5a0075ba5b7 + raabro (1.4.0) sha256=d4fa9ff5172391edb92b242eed8be802d1934b1464061ae5e70d80962c5da882 racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f rack (3.2.6) sha256=5ed78e1f73b2e25679bec7d45ee2d4483cc4146eb1be0264fc4d94cb5ef212c2 + rack-protection (4.2.1) sha256=cf6e2842df8c55f5e4d1a4be015e603e19e9bc3a7178bae58949ccbb58558bac rack-session (2.1.2) sha256=595434f8c0c3473ae7d7ac56ecda6cc6dfd9d37c0b2b5255330aa1576967ffe8 rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463 rackup (2.3.1) sha256=6c79c26753778e90983761d677a48937ee3192b3ffef6bc963c0950f94688868 @@ -462,8 +537,13 @@ CHECKSUMS rake (12.3.3) sha256=f7694adb4fe638da35452300cee6c545e9c377a0e3190018ac04d590b3c26ab3 rbs (4.0.2) sha256=af75671e66cd03434cc546622741ebf83f6197ec4328375805306330bf78ef25 rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192 + redis (5.4.1) sha256=b5e675b57ad22b15c9bcc765d5ac26f60b675408af916d31527af9bd5a81faae + redis-client (0.30.0) sha256=743f11ed42f0a41a0341554087b077479fec7e2d47a7c123fd90a12c0db5e477 + redis-namespace (1.11.0) sha256=e91a1aa2b2d888b6dea1d4ab8d39e1ae6fac3426161feb9d91dd5cca598a2239 regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835 + resque (3.0.0) sha256=ee6f02b61b2af48c587587dd6fb3b9b5eca94e348c568aed8e9d7e7872b2f713 + resque-scheduler (5.0.0) sha256=f199df7ae73b5c7972acd27c7e2f8a1f1ff4339eca5b794d0b2ba74c3d998aff rexml (3.4.1) sha256=c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587 rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d @@ -481,14 +561,17 @@ CHECKSUMS ruby-lsp (0.26.9) sha256=33a01c001c00a76b4e821efc04ed7572983430f31ca5d6f3e343d0b6ccab4129 ruby-lsp-rspec (0.1.29) sha256=798be579723376cd56b17d32373288fb1163e4cfe2024c7d068516a1cf214ee5 ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33 + rufus-scheduler (3.9.2) sha256=55fa9e4db0ff69d7f38c804f17baba0c9bce5cba39984ae3c5cf6c039d1323b9 securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1 sentry-rails (6.6.2) sentry-ruby (6.6.2) sequel (5.105.0) sha256=4191d5e5d011b7229ff8a3401ca6beac047c4d35b1ec6703376513b4b25b2e67 + sidekiq (8.1.6) sha256=be20cd051124b1a16cf97ea9157137abbd30a515c16a5ae9312d2eadd045e40f simplecov (0.22.0) sha256=fe2622c7834ff23b98066bb0a854284b2729a569ac659f82621fc22ef36213a5 simplecov-cobertura (3.1.0) sha256=6d7f38aa32c965ca2174b2e5bd88cb17138eaf629518854976ac50e628925dc5 simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246 simplecov_json_formatter (0.1.4) sha256=529418fbe8de1713ac2b2d612aa3daa56d316975d307244399fa4838c601b428 + sinatra (4.2.1) sha256=b7aeb9b11d046b552972ade834f1f9be98b185fa8444480688e3627625377080 sprockets (4.2.2) sha256=761e5a49f1c288704763f73139763564c845a8f856d52fba013458f8af1b59b1 sprockets-rails (3.5.2) sha256=a9e88e6ce9f8c912d349aa5401509165ec42326baf9e942a85de4b76dbc4119e sqlite3 (2.1.1-aarch64-linux-gnu) sha256=8e66a55e17ab5251d8a3e86c95fa79676d7b6f9657f5a2bade6604d69e15fc6f @@ -501,6 +584,7 @@ CHECKSUMS sqlite3 (2.1.1-x86_64-linux-musl) sha256=e7f43e4f0fbe575ebaf437489bd12c90464c8d287af14d3879359e4ac1e6a820 stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1 thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73 + tilt (2.7.0) sha256=0d5b9ba69f6a36490c64b0eee9f6e9aad517e20dcc848800a06eb116f08c6ab3 timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b diff --git a/sentry-rails/gemfiles/ruby-3.3_rails-6.1.0.gemfile.lock b/sentry-rails/gemfiles/ruby-3.3_rails-6.1.0.gemfile.lock index f4c424481..9de227bb7 100644 --- a/sentry-rails/gemfiles/ruby-3.3_rails-6.1.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-3.3_rails-6.1.0.gemfile.lock @@ -85,6 +85,7 @@ GEM zeitwerk (~> 2.3) ast (2.4.3) base64 (0.3.0) + benchmark (0.5.0) benchmark-ips (2.5.0) benchmark-ipsa (0.2.0) benchmark-ips (~> 2.5.0) @@ -96,13 +97,26 @@ GEM builder (3.3.0) cgi (0.5.1) concurrent-ruby (1.3.6) + connection_pool (3.0.2) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) erb (6.0.4) erubi (1.13.1) + et-orbi (1.4.0) + tzinfo + fugit (1.12.2) + et-orbi (~> 1.4) + raabro (~> 1.4) globalid (1.3.0) activesupport (>= 6.1) i18n (1.14.8) @@ -135,6 +149,11 @@ GEM minitest (6.0.6) drb (~> 2.0) prism (~> 1.5) + mock_redis (0.55.0) + redis (~> 5) + mono_logger (1.1.2) + multi_json (1.21.1) + mustermann (3.1.1) net-imap (0.6.4.1) date net-protocol @@ -172,8 +191,12 @@ GEM psych (5.4.0) date stringio + raabro (1.4.0) racc (1.8.1) rack (2.2.23) + rack-protection (3.2.0) + base64 (>= 0.1.0) + rack (~> 2.2, >= 2.2.4) rack-test (2.2.0) rack (>= 1.3) rails (6.1.7.10) @@ -214,9 +237,30 @@ GEM erb psych (>= 4.0.0) tsort + redis (5.4.1) + redis-client (>= 0.22.0) + redis-client (0.30.0) + connection_pool + redis-namespace (1.11.0) + redis (>= 4) regexp_parser (2.12.0) reline (0.6.3) io-console (~> 0.5) + resque (3.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1) + multi_json (~> 1.0) + redis (>= 4.0) + redis-namespace (~> 1.6) + sinatra (>= 2.0) + resque-scheduler (5.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1.0) + redis (>= 4.0) + resque (>= 3.0) + rufus-scheduler (~> 3.2, != 3.3) rexml (3.4.1) rspec (3.13.2) rspec-core (~> 3.13.0) @@ -279,6 +323,8 @@ GEM ruby-lsp-rspec (0.1.29) ruby-lsp (~> 0.26.0) ruby-progressbar (1.13.0) + rufus-scheduler (3.9.2) + fugit (~> 1.1, >= 1.11.1) sequel (5.105.0) bigdecimal simplecov (0.22.0) @@ -290,6 +336,11 @@ GEM simplecov (~> 0.19) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) + sinatra (3.2.0) + mustermann (~> 3.0) + rack (~> 2.2, >= 2.2.4) + rack-protection (= 3.2.0) + tilt (~> 2.0) sprockets (4.2.2) concurrent-ruby (~> 1.0) logger @@ -305,6 +356,7 @@ GEM sqlite3 (1.7.3-x86_64-linux) stringio (3.2.0) thor (1.5.0) + tilt (2.7.0) timeout (0.6.1) tsort (0.2.0) tzinfo (2.0.6) @@ -338,11 +390,16 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record irb jdbc-sqlite3 mini_magick + mock_redis rails (~> 6.1.0) rake (~> 12.0) + resque + resque-scheduler (~> 5.0) rexml (= 3.4.1) rspec rspec-rails (~> 6.0) @@ -372,6 +429,7 @@ CHECKSUMS activesupport (6.1.7.10) sha256=3f8e1f787a7bfbf765959ba509ef70af8293b35cb864078919365a12bf33d470 ast (2.4.3) sha256=954615157c1d6a382bc27d690d973195e79db7f55e9765ac7c481c60bdb4d383 base64 (0.3.0) sha256=27337aeabad6ffae05c265c450490628ef3ebd4b67be58257393227588f5a97b + benchmark (0.5.0) sha256=465df122341aedcb81a2a24b4d3bd19b6c67c1530713fd533f3ff034e419236c benchmark-ips (2.5.0) sha256=aa98e9dc420c0dc225f6bf8cea7f112ca015596868e9dcf2e15d4ee4e3eb80ee benchmark-ipsa (0.2.0) sha256=8be4820765d575691b2f91f6c988a8a3d90393239bf9d35ea53c8ab0fbca7230 benchmark-memory (0.1.2) sha256=aa7bfe6776174d0ddefe6fb39945d88fff6d76eac165690188391d9acd441c87 @@ -381,14 +439,19 @@ CHECKSUMS bundler (4.0.14) sha256=d09a0a965cf772266a7e49e83610be7c2f4e49e61134c42a56804bb383cc24b8 cgi (0.5.1) sha256=e93fcafc69b8a934fe1e6146121fa35430efa8b4a4047c4893764067036f18e9 concurrent-ruby (1.3.6) sha256=6b56837e1e7e5292f9864f34b69c5a2cbc75c0cf5338f1ce9903d10fa762d5ab + connection_pool (3.0.2) sha256=33fff5ba71a12d2aa26cb72b1db8bba2a1a01823559fb01d29eb74c286e62e0a crass (1.0.6) sha256=dc516022a56e7b3b156099abc81b6d2b08ea1ed12676ac7a5657617f012bd45d date (3.5.1) sha256=750d06384d7b9c15d562c76291407d89e368dda4d4fff957eb94962d325a0dc0 debug (1.11.1) + delayed_job (4.2.0) sha256=51dc1f68bb9084398317884c2178debd38c13a7eb48d8aa4ff4775465d7713ef + delayed_job_active_record (4.1.11) sha256=64f34a6d50316dd7a7df1daf7c6e04ad888c0e86938762318f6f52522b7c1ba8 diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962 docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373 erb (6.0.4) sha256=38e3803694be357fe2bfe312487c74beaf9fb4e5beb3e22498952fe1645b95d9 erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 + et-orbi (1.4.0) sha256=6c7e3c90779821f9e3b324c5e96fda9767f72995d6ae435b96678a4f3e2de8bc + fugit (1.12.2) sha256=643f2bf28db263bd400cbf8e0dd8b76b2c9b94bdb130e12d2394de04d9c20e5e globalid (1.3.0) sha256=05c639ad6eb4594522a0b07983022f04aa7254626ab69445a0e493aa3786ff11 i18n (1.14.8) sha256=285778639134865c5e0f6269e0b818256017e8cde89993fdfcbfb64d088824a5 io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc @@ -405,6 +468,10 @@ CHECKSUMS mini_magick (5.3.1) sha256=29395dfd76badcabb6403ee5aff6f681e867074f8f28ce08d78661e9e4a351c4 mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef minitest (6.0.6) sha256=153ea36d1d987a62942382b61075745042a2b3123b1cd48f4c3675af9cc7d6f1 + mock_redis (0.55.0) sha256=1562199cb94b40775ff73b09f33346074138a6f35e1ac0b614b0404777cd41f0 + mono_logger (1.1.2) sha256=2e359def7007f5c908aadd953687991fe667995d14ae5f0d10dda76e3e8670f7 + multi_json (1.21.1) sha256=e6126a31808e3b4d19f483c775ceac34df190dffa62adfb63a165ee14ba68080 + mustermann (3.1.1) sha256=4c6170c7234d5499c345562ba7c7dfe73e1754286dcc1abb053064d66a127198 net-imap (0.6.4.1) sha256=29f0360d75a7efd3539f16ac1957dea5c0a51ddeceb348db4553c3120914ea0d net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3 net-protocol (0.2.2) sha256=aa73e0cba6a125369de9837b8d8ef82a61849360eba0521900e2c3713aa162a8 @@ -424,8 +491,10 @@ CHECKSUMS prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193 prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85 psych (5.4.0) sha256=14f72d69a611af663d7d70e4a7b67d9eb1f3ae9f8d916b478961d5a0075ba5b7 + raabro (1.4.0) sha256=d4fa9ff5172391edb92b242eed8be802d1934b1464061ae5e70d80962c5da882 racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f rack (2.2.23) sha256=a8fe9d7e07064770b8ec123663fded8a59ef7e2b6db5cda7173d45a5718ab69c + rack-protection (3.2.0) sha256=3c74ba7fc59066453d61af9bcba5b6fe7a9b3dab6f445418d3b391d5ea8efbff rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463 rails (6.1.7.10) sha256=809692b3ec91fe1407b160e65203ef41c0b19b27bc5b836a515d6f4b969188d1 rails-dom-testing (2.3.0) sha256=8acc7953a7b911ca44588bf08737bc16719f431a1cc3091a292bca7317925c1d @@ -435,8 +504,13 @@ CHECKSUMS rake (12.3.3) sha256=f7694adb4fe638da35452300cee6c545e9c377a0e3190018ac04d590b3c26ab3 rbs (4.0.2) sha256=af75671e66cd03434cc546622741ebf83f6197ec4328375805306330bf78ef25 rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192 + redis (5.4.1) sha256=b5e675b57ad22b15c9bcc765d5ac26f60b675408af916d31527af9bd5a81faae + redis-client (0.30.0) sha256=743f11ed42f0a41a0341554087b077479fec7e2d47a7c123fd90a12c0db5e477 + redis-namespace (1.11.0) sha256=e91a1aa2b2d888b6dea1d4ab8d39e1ae6fac3426161feb9d91dd5cca598a2239 regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835 + resque (3.0.0) sha256=ee6f02b61b2af48c587587dd6fb3b9b5eca94e348c568aed8e9d7e7872b2f713 + resque-scheduler (5.0.0) sha256=f199df7ae73b5c7972acd27c7e2f8a1f1ff4339eca5b794d0b2ba74c3d998aff rexml (3.4.1) sha256=c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587 rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d @@ -454,6 +528,7 @@ CHECKSUMS ruby-lsp (0.26.9) sha256=33a01c001c00a76b4e821efc04ed7572983430f31ca5d6f3e343d0b6ccab4129 ruby-lsp-rspec (0.1.29) sha256=798be579723376cd56b17d32373288fb1163e4cfe2024c7d068516a1cf214ee5 ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33 + rufus-scheduler (3.9.2) sha256=55fa9e4db0ff69d7f38c804f17baba0c9bce5cba39984ae3c5cf6c039d1323b9 sentry-rails (6.6.2) sentry-ruby (6.6.2) sequel (5.105.0) sha256=4191d5e5d011b7229ff8a3401ca6beac047c4d35b1ec6703376513b4b25b2e67 @@ -461,6 +536,7 @@ CHECKSUMS simplecov-cobertura (3.1.0) sha256=6d7f38aa32c965ca2174b2e5bd88cb17138eaf629518854976ac50e628925dc5 simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246 simplecov_json_formatter (0.1.4) sha256=529418fbe8de1713ac2b2d612aa3daa56d316975d307244399fa4838c601b428 + sinatra (3.2.0) sha256=6e727f4d034e87067d9aab37f328021d7c16722ffd293ef07b6e968915109807 sprockets (4.2.2) sha256=761e5a49f1c288704763f73139763564c845a8f856d52fba013458f8af1b59b1 sprockets-rails (3.5.2) sha256=a9e88e6ce9f8c912d349aa5401509165ec42326baf9e942a85de4b76dbc4119e sqlite3 (1.7.3-aarch64-linux) sha256=0ccb8c001cd2617f4801a2c816142d3c9bc299e3f3e0f49e03812f3610b0891c @@ -470,6 +546,7 @@ CHECKSUMS sqlite3 (1.7.3-x86_64-linux) sha256=522a3285660dec8253465880c97980e873db0d79060900be8d14194217a3ee73 stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1 thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73 + tilt (2.7.0) sha256=0d5b9ba69f6a36490c64b0eee9f6e9aad517e20dcc848800a06eb116f08c6ab3 timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b diff --git a/sentry-rails/gemfiles/ruby-3.3_rails-7.0.0.gemfile.lock b/sentry-rails/gemfiles/ruby-3.3_rails-7.0.0.gemfile.lock index ad425bbc5..a47cdfa96 100644 --- a/sentry-rails/gemfiles/ruby-3.3_rails-7.0.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-3.3_rails-7.0.0.gemfile.lock @@ -111,13 +111,26 @@ GEM builder (3.3.0) cgi (0.5.1) concurrent-ruby (1.3.6) + connection_pool (3.0.2) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) erb (6.0.4) erubi (1.13.1) + et-orbi (1.4.0) + tzinfo + fugit (1.12.2) + et-orbi (~> 1.4) + raabro (~> 1.4) globalid (1.3.0) activesupport (>= 6.1) i18n (1.14.8) @@ -150,6 +163,11 @@ GEM minitest (6.0.6) drb (~> 2.0) prism (~> 1.5) + mock_redis (0.55.0) + redis (~> 5) + mono_logger (1.1.2) + multi_json (1.21.1) + mustermann (3.1.1) mutex_m (0.3.0) net-imap (0.6.4.1) date @@ -188,8 +206,12 @@ GEM psych (5.4.0) date stringio + raabro (1.4.0) racc (1.8.1) rack (2.2.23) + rack-protection (3.2.0) + base64 (>= 0.1.0) + rack (~> 2.2, >= 2.2.4) rack-test (2.2.0) rack (>= 1.3) rails (7.0.10) @@ -230,9 +252,30 @@ GEM erb psych (>= 4.0.0) tsort + redis (5.4.1) + redis-client (>= 0.22.0) + redis-client (0.30.0) + connection_pool + redis-namespace (1.11.0) + redis (>= 4) regexp_parser (2.12.0) reline (0.6.3) io-console (~> 0.5) + resque (3.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1) + multi_json (~> 1.0) + redis (>= 4.0) + redis-namespace (~> 1.6) + sinatra (>= 2.0) + resque-scheduler (5.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1.0) + redis (>= 4.0) + resque (>= 3.0) + rufus-scheduler (~> 3.2, != 3.3) rexml (3.4.1) rspec (3.13.2) rspec-core (~> 3.13.0) @@ -295,6 +338,8 @@ GEM ruby-lsp-rspec (0.1.29) ruby-lsp (~> 0.26.0) ruby-progressbar (1.13.0) + rufus-scheduler (3.9.2) + fugit (~> 1.1, >= 1.11.1) securerandom (0.4.1) sequel (5.105.0) bigdecimal @@ -307,6 +352,11 @@ GEM simplecov (~> 0.19) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) + sinatra (3.2.0) + mustermann (~> 3.0) + rack (~> 2.2, >= 2.2.4) + rack-protection (= 3.2.0) + tilt (~> 2.0) sprockets (4.2.2) concurrent-ruby (~> 1.0) logger @@ -322,6 +372,7 @@ GEM sqlite3 (1.7.3-x86_64-linux) stringio (3.2.0) thor (1.5.0) + tilt (2.7.0) timeout (0.6.1) tsort (0.2.0) tzinfo (2.0.6) @@ -355,11 +406,16 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record irb jdbc-sqlite3 mini_magick + mock_redis rails (~> 7.0.0) rake (~> 12.0) + resque + resque-scheduler (~> 5.0) rexml (= 3.4.1) rspec rspec-rails (~> 6.0) @@ -399,14 +455,19 @@ CHECKSUMS bundler (4.0.14) sha256=d09a0a965cf772266a7e49e83610be7c2f4e49e61134c42a56804bb383cc24b8 cgi (0.5.1) sha256=e93fcafc69b8a934fe1e6146121fa35430efa8b4a4047c4893764067036f18e9 concurrent-ruby (1.3.6) sha256=6b56837e1e7e5292f9864f34b69c5a2cbc75c0cf5338f1ce9903d10fa762d5ab + connection_pool (3.0.2) sha256=33fff5ba71a12d2aa26cb72b1db8bba2a1a01823559fb01d29eb74c286e62e0a crass (1.0.6) sha256=dc516022a56e7b3b156099abc81b6d2b08ea1ed12676ac7a5657617f012bd45d date (3.5.1) sha256=750d06384d7b9c15d562c76291407d89e368dda4d4fff957eb94962d325a0dc0 debug (1.11.1) + delayed_job (4.2.0) sha256=51dc1f68bb9084398317884c2178debd38c13a7eb48d8aa4ff4775465d7713ef + delayed_job_active_record (4.1.11) sha256=64f34a6d50316dd7a7df1daf7c6e04ad888c0e86938762318f6f52522b7c1ba8 diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962 docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373 erb (6.0.4) sha256=38e3803694be357fe2bfe312487c74beaf9fb4e5beb3e22498952fe1645b95d9 erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 + et-orbi (1.4.0) sha256=6c7e3c90779821f9e3b324c5e96fda9767f72995d6ae435b96678a4f3e2de8bc + fugit (1.12.2) sha256=643f2bf28db263bd400cbf8e0dd8b76b2c9b94bdb130e12d2394de04d9c20e5e globalid (1.3.0) sha256=05c639ad6eb4594522a0b07983022f04aa7254626ab69445a0e493aa3786ff11 i18n (1.14.8) sha256=285778639134865c5e0f6269e0b818256017e8cde89993fdfcbfb64d088824a5 io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc @@ -423,6 +484,10 @@ CHECKSUMS mini_magick (5.3.1) sha256=29395dfd76badcabb6403ee5aff6f681e867074f8f28ce08d78661e9e4a351c4 mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef minitest (6.0.6) sha256=153ea36d1d987a62942382b61075745042a2b3123b1cd48f4c3675af9cc7d6f1 + mock_redis (0.55.0) sha256=1562199cb94b40775ff73b09f33346074138a6f35e1ac0b614b0404777cd41f0 + mono_logger (1.1.2) sha256=2e359def7007f5c908aadd953687991fe667995d14ae5f0d10dda76e3e8670f7 + multi_json (1.21.1) sha256=e6126a31808e3b4d19f483c775ceac34df190dffa62adfb63a165ee14ba68080 + mustermann (3.1.1) sha256=4c6170c7234d5499c345562ba7c7dfe73e1754286dcc1abb053064d66a127198 mutex_m (0.3.0) sha256=cfcb04ac16b69c4813777022fdceda24e9f798e48092a2b817eb4c0a782b0751 net-imap (0.6.4.1) sha256=29f0360d75a7efd3539f16ac1957dea5c0a51ddeceb348db4553c3120914ea0d net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3 @@ -443,8 +508,10 @@ CHECKSUMS prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193 prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85 psych (5.4.0) sha256=14f72d69a611af663d7d70e4a7b67d9eb1f3ae9f8d916b478961d5a0075ba5b7 + raabro (1.4.0) sha256=d4fa9ff5172391edb92b242eed8be802d1934b1464061ae5e70d80962c5da882 racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f rack (2.2.23) sha256=a8fe9d7e07064770b8ec123663fded8a59ef7e2b6db5cda7173d45a5718ab69c + rack-protection (3.2.0) sha256=3c74ba7fc59066453d61af9bcba5b6fe7a9b3dab6f445418d3b391d5ea8efbff rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463 rails (7.0.10) sha256=866eb2c53d3184543fdb770d7ea308e4ee518063226a9e176229f3c7a9537c25 rails-dom-testing (2.3.0) sha256=8acc7953a7b911ca44588bf08737bc16719f431a1cc3091a292bca7317925c1d @@ -454,8 +521,13 @@ CHECKSUMS rake (12.3.3) sha256=f7694adb4fe638da35452300cee6c545e9c377a0e3190018ac04d590b3c26ab3 rbs (4.0.2) sha256=af75671e66cd03434cc546622741ebf83f6197ec4328375805306330bf78ef25 rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192 + redis (5.4.1) sha256=b5e675b57ad22b15c9bcc765d5ac26f60b675408af916d31527af9bd5a81faae + redis-client (0.30.0) sha256=743f11ed42f0a41a0341554087b077479fec7e2d47a7c123fd90a12c0db5e477 + redis-namespace (1.11.0) sha256=e91a1aa2b2d888b6dea1d4ab8d39e1ae6fac3426161feb9d91dd5cca598a2239 regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835 + resque (3.0.0) sha256=ee6f02b61b2af48c587587dd6fb3b9b5eca94e348c568aed8e9d7e7872b2f713 + resque-scheduler (5.0.0) sha256=f199df7ae73b5c7972acd27c7e2f8a1f1ff4339eca5b794d0b2ba74c3d998aff rexml (3.4.1) sha256=c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587 rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d @@ -473,6 +545,7 @@ CHECKSUMS ruby-lsp (0.26.9) sha256=33a01c001c00a76b4e821efc04ed7572983430f31ca5d6f3e343d0b6ccab4129 ruby-lsp-rspec (0.1.29) sha256=798be579723376cd56b17d32373288fb1163e4cfe2024c7d068516a1cf214ee5 ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33 + rufus-scheduler (3.9.2) sha256=55fa9e4db0ff69d7f38c804f17baba0c9bce5cba39984ae3c5cf6c039d1323b9 securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1 sentry-rails (6.6.2) sentry-ruby (6.6.2) @@ -481,6 +554,7 @@ CHECKSUMS simplecov-cobertura (3.1.0) sha256=6d7f38aa32c965ca2174b2e5bd88cb17138eaf629518854976ac50e628925dc5 simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246 simplecov_json_formatter (0.1.4) sha256=529418fbe8de1713ac2b2d612aa3daa56d316975d307244399fa4838c601b428 + sinatra (3.2.0) sha256=6e727f4d034e87067d9aab37f328021d7c16722ffd293ef07b6e968915109807 sprockets (4.2.2) sha256=761e5a49f1c288704763f73139763564c845a8f856d52fba013458f8af1b59b1 sprockets-rails (3.5.2) sha256=a9e88e6ce9f8c912d349aa5401509165ec42326baf9e942a85de4b76dbc4119e sqlite3 (1.7.3-aarch64-linux) sha256=0ccb8c001cd2617f4801a2c816142d3c9bc299e3f3e0f49e03812f3610b0891c @@ -490,6 +564,7 @@ CHECKSUMS sqlite3 (1.7.3-x86_64-linux) sha256=522a3285660dec8253465880c97980e873db0d79060900be8d14194217a3ee73 stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1 thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73 + tilt (2.7.0) sha256=0d5b9ba69f6a36490c64b0eee9f6e9aad517e20dcc848800a06eb116f08c6ab3 timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b diff --git a/sentry-rails/gemfiles/ruby-3.3_rails-7.1.0.gemfile.lock b/sentry-rails/gemfiles/ruby-3.3_rails-7.1.0.gemfile.lock index 33ae8e7ee..39e30913f 100644 --- a/sentry-rails/gemfiles/ruby-3.3_rails-7.1.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-3.3_rails-7.1.0.gemfile.lock @@ -120,11 +120,23 @@ GEM connection_pool (3.0.2) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) erb (6.0.4) erubi (1.13.1) + et-orbi (1.4.0) + tzinfo + fugit (1.12.2) + et-orbi (~> 1.4) + raabro (~> 1.4) globalid (1.3.0) activesupport (>= 6.1) i18n (1.14.8) @@ -156,6 +168,11 @@ GEM minitest (6.0.6) drb (~> 2.0) prism (~> 1.5) + mock_redis (0.55.0) + redis (~> 5) + mono_logger (1.1.2) + multi_json (1.21.1) + mustermann (3.1.1) mutex_m (0.3.0) net-imap (0.6.4.1) date @@ -193,8 +210,13 @@ GEM prism (1.9.0) psych (4.0.6) stringio + raabro (1.4.0) racc (1.8.1) rack (3.2.6) + rack-protection (4.2.1) + base64 (>= 0.1.0) + logger (>= 1.6.0) + rack (>= 3.0.0, < 4) rack-session (2.1.2) base64 (>= 0.1.0) rack (>= 3.0.0) @@ -243,9 +265,30 @@ GEM erb psych (>= 4.0.0) tsort + redis (5.4.1) + redis-client (>= 0.22.0) + redis-client (0.30.0) + connection_pool + redis-namespace (1.11.0) + redis (>= 4) regexp_parser (2.12.0) reline (0.6.3) io-console (~> 0.5) + resque (3.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1) + multi_json (~> 1.0) + redis (>= 4.0) + redis-namespace (~> 1.6) + sinatra (>= 2.0) + resque-scheduler (5.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1.0) + redis (>= 4.0) + resque (>= 3.0) + rufus-scheduler (~> 3.2, != 3.3) rexml (3.4.1) rspec (3.13.2) rspec-core (~> 3.13.0) @@ -308,9 +351,17 @@ GEM ruby-lsp-rspec (0.1.29) ruby-lsp (~> 0.26.0) ruby-progressbar (1.13.0) + rufus-scheduler (3.9.2) + fugit (~> 1.1, >= 1.11.1) securerandom (0.4.1) sequel (5.105.0) bigdecimal + sidekiq (8.1.6) + connection_pool (>= 3.0.0) + json (>= 2.16.0) + logger (>= 1.7.0) + rack (>= 3.2.0) + redis-client (>= 0.29.0) simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) @@ -320,6 +371,13 @@ GEM simplecov (~> 0.19) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) + sinatra (4.2.1) + logger (>= 1.6.0) + mustermann (~> 3.0) + rack (>= 3.0.0, < 4) + rack-protection (= 4.2.1) + rack-session (>= 2.0.0, < 3) + tilt (~> 2.0) sprockets (4.2.2) concurrent-ruby (~> 1.0) logger @@ -335,6 +393,7 @@ GEM sqlite3 (1.7.3-x86_64-linux) stringio (3.2.0) thor (1.5.0) + tilt (2.7.0) timeout (0.6.1) tsort (0.2.0) tzinfo (2.0.6) @@ -368,12 +427,17 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record irb jdbc-sqlite3 mini_magick + mock_redis psych (~> 4.0.0) rails (~> 7.1.0) rake (~> 12.0) + resque + resque-scheduler (~> 5.0) rexml (= 3.4.1) rspec rspec-rails (~> 7.0) @@ -384,6 +448,7 @@ DEPENDENCIES sentry-rails! sentry-ruby! sequel + sidekiq (~> 8.0) simplecov simplecov-cobertura (~> 3.0) sprockets-rails @@ -417,11 +482,15 @@ CHECKSUMS crass (1.0.6) sha256=dc516022a56e7b3b156099abc81b6d2b08ea1ed12676ac7a5657617f012bd45d date (3.5.1) sha256=750d06384d7b9c15d562c76291407d89e368dda4d4fff957eb94962d325a0dc0 debug (1.11.1) + delayed_job (4.2.0) sha256=51dc1f68bb9084398317884c2178debd38c13a7eb48d8aa4ff4775465d7713ef + delayed_job_active_record (4.1.11) sha256=64f34a6d50316dd7a7df1daf7c6e04ad888c0e86938762318f6f52522b7c1ba8 diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962 docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373 erb (6.0.4) sha256=38e3803694be357fe2bfe312487c74beaf9fb4e5beb3e22498952fe1645b95d9 erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 + et-orbi (1.4.0) sha256=6c7e3c90779821f9e3b324c5e96fda9767f72995d6ae435b96678a4f3e2de8bc + fugit (1.12.2) sha256=643f2bf28db263bd400cbf8e0dd8b76b2c9b94bdb130e12d2394de04d9c20e5e globalid (1.3.0) sha256=05c639ad6eb4594522a0b07983022f04aa7254626ab69445a0e493aa3786ff11 i18n (1.14.8) sha256=285778639134865c5e0f6269e0b818256017e8cde89993fdfcbfb64d088824a5 io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc @@ -437,6 +506,10 @@ CHECKSUMS mini_magick (5.3.1) sha256=29395dfd76badcabb6403ee5aff6f681e867074f8f28ce08d78661e9e4a351c4 mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef minitest (6.0.6) sha256=153ea36d1d987a62942382b61075745042a2b3123b1cd48f4c3675af9cc7d6f1 + mock_redis (0.55.0) sha256=1562199cb94b40775ff73b09f33346074138a6f35e1ac0b614b0404777cd41f0 + mono_logger (1.1.2) sha256=2e359def7007f5c908aadd953687991fe667995d14ae5f0d10dda76e3e8670f7 + multi_json (1.21.1) sha256=e6126a31808e3b4d19f483c775ceac34df190dffa62adfb63a165ee14ba68080 + mustermann (3.1.1) sha256=4c6170c7234d5499c345562ba7c7dfe73e1754286dcc1abb053064d66a127198 mutex_m (0.3.0) sha256=cfcb04ac16b69c4813777022fdceda24e9f798e48092a2b817eb4c0a782b0751 net-imap (0.6.4.1) sha256=29f0360d75a7efd3539f16ac1957dea5c0a51ddeceb348db4553c3120914ea0d net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3 @@ -457,8 +530,10 @@ CHECKSUMS prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193 prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85 psych (4.0.6) sha256=f70425c3dca8d8fbe4c1de7270d921e35eb6eb44cf2b2e4f961dc8031330b876 + raabro (1.4.0) sha256=d4fa9ff5172391edb92b242eed8be802d1934b1464061ae5e70d80962c5da882 racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f rack (3.2.6) sha256=5ed78e1f73b2e25679bec7d45ee2d4483cc4146eb1be0264fc4d94cb5ef212c2 + rack-protection (4.2.1) sha256=cf6e2842df8c55f5e4d1a4be015e603e19e9bc3a7178bae58949ccbb58558bac rack-session (2.1.2) sha256=595434f8c0c3473ae7d7ac56ecda6cc6dfd9d37c0b2b5255330aa1576967ffe8 rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463 rackup (2.3.1) sha256=6c79c26753778e90983761d677a48937ee3192b3ffef6bc963c0950f94688868 @@ -470,8 +545,13 @@ CHECKSUMS rake (12.3.3) sha256=f7694adb4fe638da35452300cee6c545e9c377a0e3190018ac04d590b3c26ab3 rbs (4.0.2) sha256=af75671e66cd03434cc546622741ebf83f6197ec4328375805306330bf78ef25 rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192 + redis (5.4.1) sha256=b5e675b57ad22b15c9bcc765d5ac26f60b675408af916d31527af9bd5a81faae + redis-client (0.30.0) sha256=743f11ed42f0a41a0341554087b077479fec7e2d47a7c123fd90a12c0db5e477 + redis-namespace (1.11.0) sha256=e91a1aa2b2d888b6dea1d4ab8d39e1ae6fac3426161feb9d91dd5cca598a2239 regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835 + resque (3.0.0) sha256=ee6f02b61b2af48c587587dd6fb3b9b5eca94e348c568aed8e9d7e7872b2f713 + resque-scheduler (5.0.0) sha256=f199df7ae73b5c7972acd27c7e2f8a1f1ff4339eca5b794d0b2ba74c3d998aff rexml (3.4.1) sha256=c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587 rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d @@ -489,14 +569,17 @@ CHECKSUMS ruby-lsp (0.26.9) sha256=33a01c001c00a76b4e821efc04ed7572983430f31ca5d6f3e343d0b6ccab4129 ruby-lsp-rspec (0.1.29) sha256=798be579723376cd56b17d32373288fb1163e4cfe2024c7d068516a1cf214ee5 ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33 + rufus-scheduler (3.9.2) sha256=55fa9e4db0ff69d7f38c804f17baba0c9bce5cba39984ae3c5cf6c039d1323b9 securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1 sentry-rails (6.6.2) sentry-ruby (6.6.2) sequel (5.105.0) sha256=4191d5e5d011b7229ff8a3401ca6beac047c4d35b1ec6703376513b4b25b2e67 + sidekiq (8.1.6) sha256=be20cd051124b1a16cf97ea9157137abbd30a515c16a5ae9312d2eadd045e40f simplecov (0.22.0) sha256=fe2622c7834ff23b98066bb0a854284b2729a569ac659f82621fc22ef36213a5 simplecov-cobertura (3.1.0) sha256=6d7f38aa32c965ca2174b2e5bd88cb17138eaf629518854976ac50e628925dc5 simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246 simplecov_json_formatter (0.1.4) sha256=529418fbe8de1713ac2b2d612aa3daa56d316975d307244399fa4838c601b428 + sinatra (4.2.1) sha256=b7aeb9b11d046b552972ade834f1f9be98b185fa8444480688e3627625377080 sprockets (4.2.2) sha256=761e5a49f1c288704763f73139763564c845a8f856d52fba013458f8af1b59b1 sprockets-rails (3.5.2) sha256=a9e88e6ce9f8c912d349aa5401509165ec42326baf9e942a85de4b76dbc4119e sqlite3 (1.7.3-aarch64-linux) sha256=0ccb8c001cd2617f4801a2c816142d3c9bc299e3f3e0f49e03812f3610b0891c @@ -506,6 +589,7 @@ CHECKSUMS sqlite3 (1.7.3-x86_64-linux) sha256=522a3285660dec8253465880c97980e873db0d79060900be8d14194217a3ee73 stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1 thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73 + tilt (2.7.0) sha256=0d5b9ba69f6a36490c64b0eee9f6e9aad517e20dcc848800a06eb116f08c6ab3 timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b diff --git a/sentry-rails/gemfiles/ruby-3.3_rails-7.2.0.gemfile.lock b/sentry-rails/gemfiles/ruby-3.3_rails-7.2.0.gemfile.lock index f58b96e4c..dbf342747 100644 --- a/sentry-rails/gemfiles/ruby-3.3_rails-7.2.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-3.3_rails-7.2.0.gemfile.lock @@ -114,11 +114,23 @@ GEM connection_pool (3.0.2) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) erb (6.0.4) erubi (1.13.1) + et-orbi (1.4.0) + tzinfo + fugit (1.12.2) + et-orbi (~> 1.4) + raabro (~> 1.4) globalid (1.3.0) activesupport (>= 6.1) i18n (1.14.8) @@ -148,6 +160,11 @@ GEM logger mini_mime (1.1.5) minitest (5.27.0) + mock_redis (0.55.0) + redis (~> 5) + mono_logger (1.1.2) + multi_json (1.21.1) + mustermann (3.1.1) net-imap (0.6.4.1) date net-protocol @@ -184,8 +201,13 @@ GEM prism (1.9.0) psych (4.0.6) stringio + raabro (1.4.0) racc (1.8.1) rack (3.2.6) + rack-protection (4.2.1) + base64 (>= 0.1.0) + logger (>= 1.6.0) + rack (>= 3.0.0, < 4) rack-session (2.1.2) base64 (>= 0.1.0) rack (>= 3.0.0) @@ -234,9 +256,30 @@ GEM erb psych (>= 4.0.0) tsort + redis (5.4.1) + redis-client (>= 0.22.0) + redis-client (0.30.0) + connection_pool + redis-namespace (1.11.0) + redis (>= 4) regexp_parser (2.12.0) reline (0.6.3) io-console (~> 0.5) + resque (3.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1) + multi_json (~> 1.0) + redis (>= 4.0) + redis-namespace (~> 1.6) + sinatra (>= 2.0) + resque-scheduler (5.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1.0) + redis (>= 4.0) + resque (>= 3.0) + rufus-scheduler (~> 3.2, != 3.3) rexml (3.4.1) rspec (3.13.2) rspec-core (~> 3.13.0) @@ -299,9 +342,17 @@ GEM ruby-lsp-rspec (0.1.29) ruby-lsp (~> 0.26.0) ruby-progressbar (1.13.0) + rufus-scheduler (3.9.2) + fugit (~> 1.1, >= 1.11.1) securerandom (0.4.1) sequel (5.105.0) bigdecimal + sidekiq (8.1.6) + connection_pool (>= 3.0.0) + json (>= 2.16.0) + logger (>= 1.7.0) + rack (>= 3.2.0) + redis-client (>= 0.29.0) simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) @@ -311,6 +362,13 @@ GEM simplecov (~> 0.19) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) + sinatra (4.2.1) + logger (>= 1.6.0) + mustermann (~> 3.0) + rack (>= 3.0.0, < 4) + rack-protection (= 4.2.1) + rack-session (>= 2.0.0, < 3) + tilt (~> 2.0) sprockets (4.2.2) concurrent-ruby (~> 1.0) logger @@ -326,6 +384,7 @@ GEM sqlite3 (1.7.3-x86_64-linux) stringio (3.2.0) thor (1.5.0) + tilt (2.7.0) timeout (0.6.1) tsort (0.2.0) tzinfo (2.0.6) @@ -360,12 +419,17 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record irb jdbc-sqlite3 mini_magick + mock_redis psych (~> 4.0.0) rails (~> 7.2.0) rake (~> 12.0) + resque + resque-scheduler (~> 5.0) rexml (= 3.4.1) rspec rspec-rails (~> 7.0) @@ -376,6 +440,7 @@ DEPENDENCIES sentry-rails! sentry-ruby! sequel + sidekiq (~> 8.0) simplecov simplecov-cobertura (~> 3.0) sprockets-rails @@ -409,11 +474,15 @@ CHECKSUMS crass (1.0.6) sha256=dc516022a56e7b3b156099abc81b6d2b08ea1ed12676ac7a5657617f012bd45d date (3.5.1) sha256=750d06384d7b9c15d562c76291407d89e368dda4d4fff957eb94962d325a0dc0 debug (1.11.1) + delayed_job (4.2.0) sha256=51dc1f68bb9084398317884c2178debd38c13a7eb48d8aa4ff4775465d7713ef + delayed_job_active_record (4.1.11) sha256=64f34a6d50316dd7a7df1daf7c6e04ad888c0e86938762318f6f52522b7c1ba8 diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962 docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373 erb (6.0.4) sha256=38e3803694be357fe2bfe312487c74beaf9fb4e5beb3e22498952fe1645b95d9 erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 + et-orbi (1.4.0) sha256=6c7e3c90779821f9e3b324c5e96fda9767f72995d6ae435b96678a4f3e2de8bc + fugit (1.12.2) sha256=643f2bf28db263bd400cbf8e0dd8b76b2c9b94bdb130e12d2394de04d9c20e5e globalid (1.3.0) sha256=05c639ad6eb4594522a0b07983022f04aa7254626ab69445a0e493aa3786ff11 i18n (1.14.8) sha256=285778639134865c5e0f6269e0b818256017e8cde89993fdfcbfb64d088824a5 io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc @@ -429,6 +498,10 @@ CHECKSUMS mini_magick (5.3.1) sha256=29395dfd76badcabb6403ee5aff6f681e867074f8f28ce08d78661e9e4a351c4 mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef minitest (5.27.0) sha256=2d3b17f8a36fe7801c1adcffdbc38233b938eb0b4966e97a6739055a45fa77d5 + mock_redis (0.55.0) sha256=1562199cb94b40775ff73b09f33346074138a6f35e1ac0b614b0404777cd41f0 + mono_logger (1.1.2) sha256=2e359def7007f5c908aadd953687991fe667995d14ae5f0d10dda76e3e8670f7 + multi_json (1.21.1) sha256=e6126a31808e3b4d19f483c775ceac34df190dffa62adfb63a165ee14ba68080 + mustermann (3.1.1) sha256=4c6170c7234d5499c345562ba7c7dfe73e1754286dcc1abb053064d66a127198 net-imap (0.6.4.1) sha256=29f0360d75a7efd3539f16ac1957dea5c0a51ddeceb348db4553c3120914ea0d net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3 net-protocol (0.2.2) sha256=aa73e0cba6a125369de9837b8d8ef82a61849360eba0521900e2c3713aa162a8 @@ -448,8 +521,10 @@ CHECKSUMS prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193 prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85 psych (4.0.6) sha256=f70425c3dca8d8fbe4c1de7270d921e35eb6eb44cf2b2e4f961dc8031330b876 + raabro (1.4.0) sha256=d4fa9ff5172391edb92b242eed8be802d1934b1464061ae5e70d80962c5da882 racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f rack (3.2.6) sha256=5ed78e1f73b2e25679bec7d45ee2d4483cc4146eb1be0264fc4d94cb5ef212c2 + rack-protection (4.2.1) sha256=cf6e2842df8c55f5e4d1a4be015e603e19e9bc3a7178bae58949ccbb58558bac rack-session (2.1.2) sha256=595434f8c0c3473ae7d7ac56ecda6cc6dfd9d37c0b2b5255330aa1576967ffe8 rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463 rackup (2.3.1) sha256=6c79c26753778e90983761d677a48937ee3192b3ffef6bc963c0950f94688868 @@ -461,8 +536,13 @@ CHECKSUMS rake (12.3.3) sha256=f7694adb4fe638da35452300cee6c545e9c377a0e3190018ac04d590b3c26ab3 rbs (4.0.2) sha256=af75671e66cd03434cc546622741ebf83f6197ec4328375805306330bf78ef25 rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192 + redis (5.4.1) sha256=b5e675b57ad22b15c9bcc765d5ac26f60b675408af916d31527af9bd5a81faae + redis-client (0.30.0) sha256=743f11ed42f0a41a0341554087b077479fec7e2d47a7c123fd90a12c0db5e477 + redis-namespace (1.11.0) sha256=e91a1aa2b2d888b6dea1d4ab8d39e1ae6fac3426161feb9d91dd5cca598a2239 regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835 + resque (3.0.0) sha256=ee6f02b61b2af48c587587dd6fb3b9b5eca94e348c568aed8e9d7e7872b2f713 + resque-scheduler (5.0.0) sha256=f199df7ae73b5c7972acd27c7e2f8a1f1ff4339eca5b794d0b2ba74c3d998aff rexml (3.4.1) sha256=c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587 rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d @@ -480,14 +560,17 @@ CHECKSUMS ruby-lsp (0.26.9) sha256=33a01c001c00a76b4e821efc04ed7572983430f31ca5d6f3e343d0b6ccab4129 ruby-lsp-rspec (0.1.29) sha256=798be579723376cd56b17d32373288fb1163e4cfe2024c7d068516a1cf214ee5 ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33 + rufus-scheduler (3.9.2) sha256=55fa9e4db0ff69d7f38c804f17baba0c9bce5cba39984ae3c5cf6c039d1323b9 securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1 sentry-rails (6.6.2) sentry-ruby (6.6.2) sequel (5.105.0) sha256=4191d5e5d011b7229ff8a3401ca6beac047c4d35b1ec6703376513b4b25b2e67 + sidekiq (8.1.6) sha256=be20cd051124b1a16cf97ea9157137abbd30a515c16a5ae9312d2eadd045e40f simplecov (0.22.0) sha256=fe2622c7834ff23b98066bb0a854284b2729a569ac659f82621fc22ef36213a5 simplecov-cobertura (3.1.0) sha256=6d7f38aa32c965ca2174b2e5bd88cb17138eaf629518854976ac50e628925dc5 simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246 simplecov_json_formatter (0.1.4) sha256=529418fbe8de1713ac2b2d612aa3daa56d316975d307244399fa4838c601b428 + sinatra (4.2.1) sha256=b7aeb9b11d046b552972ade834f1f9be98b185fa8444480688e3627625377080 sprockets (4.2.2) sha256=761e5a49f1c288704763f73139763564c845a8f856d52fba013458f8af1b59b1 sprockets-rails (3.5.2) sha256=a9e88e6ce9f8c912d349aa5401509165ec42326baf9e942a85de4b76dbc4119e sqlite3 (1.7.3-aarch64-linux) sha256=0ccb8c001cd2617f4801a2c816142d3c9bc299e3f3e0f49e03812f3610b0891c @@ -497,6 +580,7 @@ CHECKSUMS sqlite3 (1.7.3-x86_64-linux) sha256=522a3285660dec8253465880c97980e873db0d79060900be8d14194217a3ee73 stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1 thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73 + tilt (2.7.0) sha256=0d5b9ba69f6a36490c64b0eee9f6e9aad517e20dcc848800a06eb116f08c6ab3 timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b diff --git a/sentry-rails/gemfiles/ruby-3.3_rails-8.0.0.gemfile.lock b/sentry-rails/gemfiles/ruby-3.3_rails-8.0.0.gemfile.lock index 562fe2b4c..4735e3ca1 100644 --- a/sentry-rails/gemfiles/ruby-3.3_rails-8.0.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-3.3_rails-8.0.0.gemfile.lock @@ -112,11 +112,23 @@ GEM connection_pool (3.0.2) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) erb (6.0.4) erubi (1.13.1) + et-orbi (1.4.0) + tzinfo + fugit (1.12.2) + et-orbi (~> 1.4) + raabro (~> 1.4) globalid (1.3.0) activesupport (>= 6.1) i18n (1.14.8) @@ -148,6 +160,11 @@ GEM minitest (6.0.6) drb (~> 2.0) prism (~> 1.5) + mock_redis (0.55.0) + redis (~> 5) + mono_logger (1.1.2) + multi_json (1.21.1) + mustermann (3.1.1) net-imap (0.6.4.1) date net-protocol @@ -185,8 +202,13 @@ GEM psych (5.4.0) date stringio + raabro (1.4.0) racc (1.8.1) rack (3.2.6) + rack-protection (4.2.1) + base64 (>= 0.1.0) + logger (>= 1.6.0) + rack (>= 3.0.0, < 4) rack-session (2.1.2) base64 (>= 0.1.0) rack (>= 3.0.0) @@ -234,9 +256,30 @@ GEM erb psych (>= 4.0.0) tsort + redis (5.4.1) + redis-client (>= 0.22.0) + redis-client (0.30.0) + connection_pool + redis-namespace (1.11.0) + redis (>= 4) regexp_parser (2.12.0) reline (0.6.3) io-console (~> 0.5) + resque (3.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1) + multi_json (~> 1.0) + redis (>= 4.0) + redis-namespace (~> 1.6) + sinatra (>= 2.0) + resque-scheduler (5.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1.0) + redis (>= 4.0) + resque (>= 3.0) + rufus-scheduler (~> 3.2, != 3.3) rexml (3.4.1) rspec (3.13.2) rspec-core (~> 3.13.0) @@ -299,9 +342,17 @@ GEM ruby-lsp-rspec (0.1.29) ruby-lsp (~> 0.26.0) ruby-progressbar (1.13.0) + rufus-scheduler (3.9.2) + fugit (~> 1.1, >= 1.11.1) securerandom (0.4.1) sequel (5.105.0) bigdecimal + sidekiq (8.1.6) + connection_pool (>= 3.0.0) + json (>= 2.16.0) + logger (>= 1.7.0) + rack (>= 3.2.0) + redis-client (>= 0.29.0) simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) @@ -311,6 +362,13 @@ GEM simplecov (~> 0.19) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) + sinatra (4.2.1) + logger (>= 1.6.0) + mustermann (~> 3.0) + rack (>= 3.0.0, < 4) + rack-protection (= 4.2.1) + rack-session (>= 2.0.0, < 3) + tilt (~> 2.0) sprockets (4.2.2) concurrent-ruby (~> 1.0) logger @@ -329,6 +387,7 @@ GEM sqlite3 (2.1.1-x86_64-linux-musl) stringio (3.2.0) thor (1.5.0) + tilt (2.7.0) timeout (0.6.1) tsort (0.2.0) tzinfo (2.0.6) @@ -362,11 +421,16 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record irb jdbc-sqlite3 mini_magick + mock_redis rails (~> 8.0.0) rake (~> 12.0) + resque + resque-scheduler (~> 5.0) rexml (= 3.4.1) rspec rspec-rails (~> 8.0.0) @@ -377,6 +441,7 @@ DEPENDENCIES sentry-rails! sentry-ruby! sequel + sidekiq (~> 8.0) simplecov simplecov-cobertura (~> 3.0) sprockets-rails @@ -410,11 +475,15 @@ CHECKSUMS crass (1.0.6) sha256=dc516022a56e7b3b156099abc81b6d2b08ea1ed12676ac7a5657617f012bd45d date (3.5.1) sha256=750d06384d7b9c15d562c76291407d89e368dda4d4fff957eb94962d325a0dc0 debug (1.11.1) + delayed_job (4.2.0) sha256=51dc1f68bb9084398317884c2178debd38c13a7eb48d8aa4ff4775465d7713ef + delayed_job_active_record (4.1.11) sha256=64f34a6d50316dd7a7df1daf7c6e04ad888c0e86938762318f6f52522b7c1ba8 diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962 docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373 erb (6.0.4) sha256=38e3803694be357fe2bfe312487c74beaf9fb4e5beb3e22498952fe1645b95d9 erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 + et-orbi (1.4.0) sha256=6c7e3c90779821f9e3b324c5e96fda9767f72995d6ae435b96678a4f3e2de8bc + fugit (1.12.2) sha256=643f2bf28db263bd400cbf8e0dd8b76b2c9b94bdb130e12d2394de04d9c20e5e globalid (1.3.0) sha256=05c639ad6eb4594522a0b07983022f04aa7254626ab69445a0e493aa3786ff11 i18n (1.14.8) sha256=285778639134865c5e0f6269e0b818256017e8cde89993fdfcbfb64d088824a5 io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc @@ -430,6 +499,10 @@ CHECKSUMS mini_magick (5.3.1) sha256=29395dfd76badcabb6403ee5aff6f681e867074f8f28ce08d78661e9e4a351c4 mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef minitest (6.0.6) sha256=153ea36d1d987a62942382b61075745042a2b3123b1cd48f4c3675af9cc7d6f1 + mock_redis (0.55.0) sha256=1562199cb94b40775ff73b09f33346074138a6f35e1ac0b614b0404777cd41f0 + mono_logger (1.1.2) sha256=2e359def7007f5c908aadd953687991fe667995d14ae5f0d10dda76e3e8670f7 + multi_json (1.21.1) sha256=e6126a31808e3b4d19f483c775ceac34df190dffa62adfb63a165ee14ba68080 + mustermann (3.1.1) sha256=4c6170c7234d5499c345562ba7c7dfe73e1754286dcc1abb053064d66a127198 net-imap (0.6.4.1) sha256=29f0360d75a7efd3539f16ac1957dea5c0a51ddeceb348db4553c3120914ea0d net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3 net-protocol (0.2.2) sha256=aa73e0cba6a125369de9837b8d8ef82a61849360eba0521900e2c3713aa162a8 @@ -449,8 +522,10 @@ CHECKSUMS prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193 prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85 psych (5.4.0) sha256=14f72d69a611af663d7d70e4a7b67d9eb1f3ae9f8d916b478961d5a0075ba5b7 + raabro (1.4.0) sha256=d4fa9ff5172391edb92b242eed8be802d1934b1464061ae5e70d80962c5da882 racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f rack (3.2.6) sha256=5ed78e1f73b2e25679bec7d45ee2d4483cc4146eb1be0264fc4d94cb5ef212c2 + rack-protection (4.2.1) sha256=cf6e2842df8c55f5e4d1a4be015e603e19e9bc3a7178bae58949ccbb58558bac rack-session (2.1.2) sha256=595434f8c0c3473ae7d7ac56ecda6cc6dfd9d37c0b2b5255330aa1576967ffe8 rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463 rackup (2.3.1) sha256=6c79c26753778e90983761d677a48937ee3192b3ffef6bc963c0950f94688868 @@ -462,8 +537,13 @@ CHECKSUMS rake (12.3.3) sha256=f7694adb4fe638da35452300cee6c545e9c377a0e3190018ac04d590b3c26ab3 rbs (4.0.2) sha256=af75671e66cd03434cc546622741ebf83f6197ec4328375805306330bf78ef25 rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192 + redis (5.4.1) sha256=b5e675b57ad22b15c9bcc765d5ac26f60b675408af916d31527af9bd5a81faae + redis-client (0.30.0) sha256=743f11ed42f0a41a0341554087b077479fec7e2d47a7c123fd90a12c0db5e477 + redis-namespace (1.11.0) sha256=e91a1aa2b2d888b6dea1d4ab8d39e1ae6fac3426161feb9d91dd5cca598a2239 regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835 + resque (3.0.0) sha256=ee6f02b61b2af48c587587dd6fb3b9b5eca94e348c568aed8e9d7e7872b2f713 + resque-scheduler (5.0.0) sha256=f199df7ae73b5c7972acd27c7e2f8a1f1ff4339eca5b794d0b2ba74c3d998aff rexml (3.4.1) sha256=c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587 rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d @@ -481,14 +561,17 @@ CHECKSUMS ruby-lsp (0.26.9) sha256=33a01c001c00a76b4e821efc04ed7572983430f31ca5d6f3e343d0b6ccab4129 ruby-lsp-rspec (0.1.29) sha256=798be579723376cd56b17d32373288fb1163e4cfe2024c7d068516a1cf214ee5 ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33 + rufus-scheduler (3.9.2) sha256=55fa9e4db0ff69d7f38c804f17baba0c9bce5cba39984ae3c5cf6c039d1323b9 securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1 sentry-rails (6.6.2) sentry-ruby (6.6.2) sequel (5.105.0) sha256=4191d5e5d011b7229ff8a3401ca6beac047c4d35b1ec6703376513b4b25b2e67 + sidekiq (8.1.6) sha256=be20cd051124b1a16cf97ea9157137abbd30a515c16a5ae9312d2eadd045e40f simplecov (0.22.0) sha256=fe2622c7834ff23b98066bb0a854284b2729a569ac659f82621fc22ef36213a5 simplecov-cobertura (3.1.0) sha256=6d7f38aa32c965ca2174b2e5bd88cb17138eaf629518854976ac50e628925dc5 simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246 simplecov_json_formatter (0.1.4) sha256=529418fbe8de1713ac2b2d612aa3daa56d316975d307244399fa4838c601b428 + sinatra (4.2.1) sha256=b7aeb9b11d046b552972ade834f1f9be98b185fa8444480688e3627625377080 sprockets (4.2.2) sha256=761e5a49f1c288704763f73139763564c845a8f856d52fba013458f8af1b59b1 sprockets-rails (3.5.2) sha256=a9e88e6ce9f8c912d349aa5401509165ec42326baf9e942a85de4b76dbc4119e sqlite3 (2.1.1-aarch64-linux-gnu) sha256=8e66a55e17ab5251d8a3e86c95fa79676d7b6f9657f5a2bade6604d69e15fc6f @@ -501,6 +584,7 @@ CHECKSUMS sqlite3 (2.1.1-x86_64-linux-musl) sha256=e7f43e4f0fbe575ebaf437489bd12c90464c8d287af14d3879359e4ac1e6a820 stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1 thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73 + tilt (2.7.0) sha256=0d5b9ba69f6a36490c64b0eee9f6e9aad517e20dcc848800a06eb116f08c6ab3 timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b diff --git a/sentry-rails/gemfiles/ruby-3.4_rails-7.1.0.gemfile.lock b/sentry-rails/gemfiles/ruby-3.4_rails-7.1.0.gemfile.lock index 1ba93cd50..a535fdf29 100644 --- a/sentry-rails/gemfiles/ruby-3.4_rails-7.1.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-3.4_rails-7.1.0.gemfile.lock @@ -120,11 +120,23 @@ GEM connection_pool (3.0.2) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) erb (6.0.4) erubi (1.13.1) + et-orbi (1.4.0) + tzinfo + fugit (1.12.2) + et-orbi (~> 1.4) + raabro (~> 1.4) globalid (1.3.0) activesupport (>= 6.1) i18n (1.14.8) @@ -157,6 +169,11 @@ GEM minitest (6.0.6) drb (~> 2.0) prism (~> 1.5) + mock_redis (0.55.0) + redis (~> 5) + mono_logger (1.1.2) + multi_json (1.21.1) + mustermann (3.1.1) mutex_m (0.3.0) net-imap (0.6.4.1) date @@ -184,8 +201,13 @@ GEM prism (1.9.0) psych (4.0.6) stringio + raabro (1.4.0) racc (1.8.1) rack (3.2.6) + rack-protection (4.2.1) + base64 (>= 0.1.0) + logger (>= 1.6.0) + rack (>= 3.0.0, < 4) rack-session (2.1.2) base64 (>= 0.1.0) rack (>= 3.0.0) @@ -234,9 +256,30 @@ GEM erb psych (>= 4.0.0) tsort + redis (5.4.1) + redis-client (>= 0.22.0) + redis-client (0.30.0) + connection_pool + redis-namespace (1.11.0) + redis (>= 4) regexp_parser (2.12.0) reline (0.6.3) io-console (~> 0.5) + resque (3.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1) + multi_json (~> 1.0) + redis (>= 4.0) + redis-namespace (~> 1.6) + sinatra (>= 2.0) + resque-scheduler (5.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1.0) + redis (>= 4.0) + resque (>= 3.0) + rufus-scheduler (~> 3.2, != 3.3) rexml (3.4.1) rspec (3.13.2) rspec-core (~> 3.13.0) @@ -299,9 +342,17 @@ GEM ruby-lsp-rspec (0.1.29) ruby-lsp (~> 0.26.0) ruby-progressbar (1.13.0) + rufus-scheduler (3.9.2) + fugit (~> 1.1, >= 1.11.1) securerandom (0.4.1) sequel (5.105.0) bigdecimal + sidekiq (8.1.6) + connection_pool (>= 3.0.0) + json (>= 2.16.0) + logger (>= 1.7.0) + rack (>= 3.2.0) + redis-client (>= 0.29.0) simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) @@ -311,6 +362,13 @@ GEM simplecov (~> 0.19) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) + sinatra (4.2.1) + logger (>= 1.6.0) + mustermann (~> 3.0) + rack (>= 3.0.0, < 4) + rack-protection (= 4.2.1) + rack-session (>= 2.0.0, < 3) + tilt (~> 2.0) sprockets (4.2.2) concurrent-ruby (~> 1.0) logger @@ -323,6 +381,7 @@ GEM mini_portile2 (~> 2.8.0) stringio (3.2.0) thor (1.5.0) + tilt (2.7.0) timeout (0.6.1) tsort (0.2.0) tzinfo (2.0.6) @@ -350,15 +409,20 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record drb irb jdbc-sqlite3 mini_magick + mock_redis mutex_m ostruct psych (~> 4.0.0) rails (~> 7.1.0) rake (~> 12.0) + resque + resque-scheduler (~> 5.0) rexml (= 3.4.1) rspec rspec-rails (~> 7.0) @@ -369,6 +433,7 @@ DEPENDENCIES sentry-rails! sentry-ruby! sequel + sidekiq (~> 8.0) simplecov simplecov-cobertura (~> 3.0) sprockets-rails @@ -402,11 +467,15 @@ CHECKSUMS crass (1.0.6) sha256=dc516022a56e7b3b156099abc81b6d2b08ea1ed12676ac7a5657617f012bd45d date (3.5.1) sha256=750d06384d7b9c15d562c76291407d89e368dda4d4fff957eb94962d325a0dc0 debug (1.11.1) + delayed_job (4.2.0) sha256=51dc1f68bb9084398317884c2178debd38c13a7eb48d8aa4ff4775465d7713ef + delayed_job_active_record (4.1.11) sha256=64f34a6d50316dd7a7df1daf7c6e04ad888c0e86938762318f6f52522b7c1ba8 diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962 docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373 erb (6.0.4) sha256=38e3803694be357fe2bfe312487c74beaf9fb4e5beb3e22498952fe1645b95d9 erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 + et-orbi (1.4.0) sha256=6c7e3c90779821f9e3b324c5e96fda9767f72995d6ae435b96678a4f3e2de8bc + fugit (1.12.2) sha256=643f2bf28db263bd400cbf8e0dd8b76b2c9b94bdb130e12d2394de04d9c20e5e globalid (1.3.0) sha256=05c639ad6eb4594522a0b07983022f04aa7254626ab69445a0e493aa3786ff11 i18n (1.14.8) sha256=285778639134865c5e0f6269e0b818256017e8cde89993fdfcbfb64d088824a5 io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc @@ -423,6 +492,10 @@ CHECKSUMS mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef mini_portile2 (2.8.9) sha256=0cd7c7f824e010c072e33f68bc02d85a00aeb6fce05bb4819c03dfd3c140c289 minitest (6.0.6) sha256=153ea36d1d987a62942382b61075745042a2b3123b1cd48f4c3675af9cc7d6f1 + mock_redis (0.55.0) sha256=1562199cb94b40775ff73b09f33346074138a6f35e1ac0b614b0404777cd41f0 + mono_logger (1.1.2) sha256=2e359def7007f5c908aadd953687991fe667995d14ae5f0d10dda76e3e8670f7 + multi_json (1.21.1) sha256=e6126a31808e3b4d19f483c775ceac34df190dffa62adfb63a165ee14ba68080 + mustermann (3.1.1) sha256=4c6170c7234d5499c345562ba7c7dfe73e1754286dcc1abb053064d66a127198 mutex_m (0.3.0) sha256=cfcb04ac16b69c4813777022fdceda24e9f798e48092a2b817eb4c0a782b0751 net-imap (0.6.4.1) sha256=29f0360d75a7efd3539f16ac1957dea5c0a51ddeceb348db4553c3120914ea0d net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3 @@ -438,8 +511,10 @@ CHECKSUMS prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193 prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85 psych (4.0.6) sha256=f70425c3dca8d8fbe4c1de7270d921e35eb6eb44cf2b2e4f961dc8031330b876 + raabro (1.4.0) sha256=d4fa9ff5172391edb92b242eed8be802d1934b1464061ae5e70d80962c5da882 racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f rack (3.2.6) sha256=5ed78e1f73b2e25679bec7d45ee2d4483cc4146eb1be0264fc4d94cb5ef212c2 + rack-protection (4.2.1) sha256=cf6e2842df8c55f5e4d1a4be015e603e19e9bc3a7178bae58949ccbb58558bac rack-session (2.1.2) sha256=595434f8c0c3473ae7d7ac56ecda6cc6dfd9d37c0b2b5255330aa1576967ffe8 rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463 rackup (2.3.1) sha256=6c79c26753778e90983761d677a48937ee3192b3ffef6bc963c0950f94688868 @@ -451,8 +526,13 @@ CHECKSUMS rake (12.3.3) sha256=f7694adb4fe638da35452300cee6c545e9c377a0e3190018ac04d590b3c26ab3 rbs (4.0.2) sha256=af75671e66cd03434cc546622741ebf83f6197ec4328375805306330bf78ef25 rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192 + redis (5.4.1) sha256=b5e675b57ad22b15c9bcc765d5ac26f60b675408af916d31527af9bd5a81faae + redis-client (0.30.0) sha256=743f11ed42f0a41a0341554087b077479fec7e2d47a7c123fd90a12c0db5e477 + redis-namespace (1.11.0) sha256=e91a1aa2b2d888b6dea1d4ab8d39e1ae6fac3426161feb9d91dd5cca598a2239 regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835 + resque (3.0.0) sha256=ee6f02b61b2af48c587587dd6fb3b9b5eca94e348c568aed8e9d7e7872b2f713 + resque-scheduler (5.0.0) sha256=f199df7ae73b5c7972acd27c7e2f8a1f1ff4339eca5b794d0b2ba74c3d998aff rexml (3.4.1) sha256=c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587 rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d @@ -470,19 +550,23 @@ CHECKSUMS ruby-lsp (0.26.9) sha256=33a01c001c00a76b4e821efc04ed7572983430f31ca5d6f3e343d0b6ccab4129 ruby-lsp-rspec (0.1.29) sha256=798be579723376cd56b17d32373288fb1163e4cfe2024c7d068516a1cf214ee5 ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33 + rufus-scheduler (3.9.2) sha256=55fa9e4db0ff69d7f38c804f17baba0c9bce5cba39984ae3c5cf6c039d1323b9 securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1 sentry-rails (6.6.2) sentry-ruby (6.6.2) sequel (5.105.0) sha256=4191d5e5d011b7229ff8a3401ca6beac047c4d35b1ec6703376513b4b25b2e67 + sidekiq (8.1.6) sha256=be20cd051124b1a16cf97ea9157137abbd30a515c16a5ae9312d2eadd045e40f simplecov (0.22.0) sha256=fe2622c7834ff23b98066bb0a854284b2729a569ac659f82621fc22ef36213a5 simplecov-cobertura (3.1.0) sha256=6d7f38aa32c965ca2174b2e5bd88cb17138eaf629518854976ac50e628925dc5 simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246 simplecov_json_formatter (0.1.4) sha256=529418fbe8de1713ac2b2d612aa3daa56d316975d307244399fa4838c601b428 + sinatra (4.2.1) sha256=b7aeb9b11d046b552972ade834f1f9be98b185fa8444480688e3627625377080 sprockets (4.2.2) sha256=761e5a49f1c288704763f73139763564c845a8f856d52fba013458f8af1b59b1 sprockets-rails (3.5.2) sha256=a9e88e6ce9f8c912d349aa5401509165ec42326baf9e942a85de4b76dbc4119e sqlite3 (1.7.3) sha256=fa77f63c709548f46d4e9b6bb45cda52aa3881aa12cc85991132758e8968701c stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1 thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73 + tilt (2.7.0) sha256=0d5b9ba69f6a36490c64b0eee9f6e9aad517e20dcc848800a06eb116f08c6ab3 timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b diff --git a/sentry-rails/gemfiles/ruby-3.4_rails-7.2.0.gemfile.lock b/sentry-rails/gemfiles/ruby-3.4_rails-7.2.0.gemfile.lock index 677eaf151..c92ca8c11 100644 --- a/sentry-rails/gemfiles/ruby-3.4_rails-7.2.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-3.4_rails-7.2.0.gemfile.lock @@ -114,11 +114,23 @@ GEM connection_pool (3.0.2) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) erb (6.0.4) erubi (1.13.1) + et-orbi (1.4.0) + tzinfo + fugit (1.12.2) + et-orbi (~> 1.4) + raabro (~> 1.4) globalid (1.3.0) activesupport (>= 6.1) i18n (1.14.8) @@ -149,6 +161,11 @@ GEM mini_mime (1.1.5) mini_portile2 (2.8.9) minitest (5.27.0) + mock_redis (0.55.0) + redis (~> 5) + mono_logger (1.1.2) + multi_json (1.21.1) + mustermann (3.1.1) mutex_m (0.3.0) net-imap (0.6.4.1) date @@ -176,8 +193,13 @@ GEM prism (1.9.0) psych (4.0.6) stringio + raabro (1.4.0) racc (1.8.1) rack (3.2.6) + rack-protection (4.2.1) + base64 (>= 0.1.0) + logger (>= 1.6.0) + rack (>= 3.0.0, < 4) rack-session (2.1.2) base64 (>= 0.1.0) rack (>= 3.0.0) @@ -226,9 +248,30 @@ GEM erb psych (>= 4.0.0) tsort + redis (5.4.1) + redis-client (>= 0.22.0) + redis-client (0.30.0) + connection_pool + redis-namespace (1.11.0) + redis (>= 4) regexp_parser (2.12.0) reline (0.6.3) io-console (~> 0.5) + resque (3.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1) + multi_json (~> 1.0) + redis (>= 4.0) + redis-namespace (~> 1.6) + sinatra (>= 2.0) + resque-scheduler (5.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1.0) + redis (>= 4.0) + resque (>= 3.0) + rufus-scheduler (~> 3.2, != 3.3) rexml (3.4.1) rspec (3.13.2) rspec-core (~> 3.13.0) @@ -291,9 +334,17 @@ GEM ruby-lsp-rspec (0.1.29) ruby-lsp (~> 0.26.0) ruby-progressbar (1.13.0) + rufus-scheduler (3.9.2) + fugit (~> 1.1, >= 1.11.1) securerandom (0.4.1) sequel (5.105.0) bigdecimal + sidekiq (8.1.6) + connection_pool (>= 3.0.0) + json (>= 2.16.0) + logger (>= 1.7.0) + rack (>= 3.2.0) + redis-client (>= 0.29.0) simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) @@ -303,6 +354,13 @@ GEM simplecov (~> 0.19) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) + sinatra (4.2.1) + logger (>= 1.6.0) + mustermann (~> 3.0) + rack (>= 3.0.0, < 4) + rack-protection (= 4.2.1) + rack-session (>= 2.0.0, < 3) + tilt (~> 2.0) sprockets (4.2.2) concurrent-ruby (~> 1.0) logger @@ -315,6 +373,7 @@ GEM mini_portile2 (~> 2.8.0) stringio (3.2.0) thor (1.5.0) + tilt (2.7.0) timeout (0.6.1) tsort (0.2.0) tzinfo (2.0.6) @@ -343,15 +402,20 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record drb irb jdbc-sqlite3 mini_magick + mock_redis mutex_m ostruct psych (~> 4.0.0) rails (~> 7.2.0) rake (~> 12.0) + resque + resque-scheduler (~> 5.0) rexml (= 3.4.1) rspec rspec-rails (~> 7.0) @@ -362,6 +426,7 @@ DEPENDENCIES sentry-rails! sentry-ruby! sequel + sidekiq (~> 8.0) simplecov simplecov-cobertura (~> 3.0) sprockets-rails @@ -395,11 +460,15 @@ CHECKSUMS crass (1.0.6) sha256=dc516022a56e7b3b156099abc81b6d2b08ea1ed12676ac7a5657617f012bd45d date (3.5.1) sha256=750d06384d7b9c15d562c76291407d89e368dda4d4fff957eb94962d325a0dc0 debug (1.11.1) + delayed_job (4.2.0) sha256=51dc1f68bb9084398317884c2178debd38c13a7eb48d8aa4ff4775465d7713ef + delayed_job_active_record (4.1.11) sha256=64f34a6d50316dd7a7df1daf7c6e04ad888c0e86938762318f6f52522b7c1ba8 diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962 docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373 erb (6.0.4) sha256=38e3803694be357fe2bfe312487c74beaf9fb4e5beb3e22498952fe1645b95d9 erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 + et-orbi (1.4.0) sha256=6c7e3c90779821f9e3b324c5e96fda9767f72995d6ae435b96678a4f3e2de8bc + fugit (1.12.2) sha256=643f2bf28db263bd400cbf8e0dd8b76b2c9b94bdb130e12d2394de04d9c20e5e globalid (1.3.0) sha256=05c639ad6eb4594522a0b07983022f04aa7254626ab69445a0e493aa3786ff11 i18n (1.14.8) sha256=285778639134865c5e0f6269e0b818256017e8cde89993fdfcbfb64d088824a5 io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc @@ -416,6 +485,10 @@ CHECKSUMS mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef mini_portile2 (2.8.9) sha256=0cd7c7f824e010c072e33f68bc02d85a00aeb6fce05bb4819c03dfd3c140c289 minitest (5.27.0) sha256=2d3b17f8a36fe7801c1adcffdbc38233b938eb0b4966e97a6739055a45fa77d5 + mock_redis (0.55.0) sha256=1562199cb94b40775ff73b09f33346074138a6f35e1ac0b614b0404777cd41f0 + mono_logger (1.1.2) sha256=2e359def7007f5c908aadd953687991fe667995d14ae5f0d10dda76e3e8670f7 + multi_json (1.21.1) sha256=e6126a31808e3b4d19f483c775ceac34df190dffa62adfb63a165ee14ba68080 + mustermann (3.1.1) sha256=4c6170c7234d5499c345562ba7c7dfe73e1754286dcc1abb053064d66a127198 mutex_m (0.3.0) sha256=cfcb04ac16b69c4813777022fdceda24e9f798e48092a2b817eb4c0a782b0751 net-imap (0.6.4.1) sha256=29f0360d75a7efd3539f16ac1957dea5c0a51ddeceb348db4553c3120914ea0d net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3 @@ -431,8 +504,10 @@ CHECKSUMS prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193 prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85 psych (4.0.6) sha256=f70425c3dca8d8fbe4c1de7270d921e35eb6eb44cf2b2e4f961dc8031330b876 + raabro (1.4.0) sha256=d4fa9ff5172391edb92b242eed8be802d1934b1464061ae5e70d80962c5da882 racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f rack (3.2.6) sha256=5ed78e1f73b2e25679bec7d45ee2d4483cc4146eb1be0264fc4d94cb5ef212c2 + rack-protection (4.2.1) sha256=cf6e2842df8c55f5e4d1a4be015e603e19e9bc3a7178bae58949ccbb58558bac rack-session (2.1.2) sha256=595434f8c0c3473ae7d7ac56ecda6cc6dfd9d37c0b2b5255330aa1576967ffe8 rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463 rackup (2.3.1) sha256=6c79c26753778e90983761d677a48937ee3192b3ffef6bc963c0950f94688868 @@ -444,8 +519,13 @@ CHECKSUMS rake (12.3.3) sha256=f7694adb4fe638da35452300cee6c545e9c377a0e3190018ac04d590b3c26ab3 rbs (4.0.2) sha256=af75671e66cd03434cc546622741ebf83f6197ec4328375805306330bf78ef25 rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192 + redis (5.4.1) sha256=b5e675b57ad22b15c9bcc765d5ac26f60b675408af916d31527af9bd5a81faae + redis-client (0.30.0) sha256=743f11ed42f0a41a0341554087b077479fec7e2d47a7c123fd90a12c0db5e477 + redis-namespace (1.11.0) sha256=e91a1aa2b2d888b6dea1d4ab8d39e1ae6fac3426161feb9d91dd5cca598a2239 regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835 + resque (3.0.0) sha256=ee6f02b61b2af48c587587dd6fb3b9b5eca94e348c568aed8e9d7e7872b2f713 + resque-scheduler (5.0.0) sha256=f199df7ae73b5c7972acd27c7e2f8a1f1ff4339eca5b794d0b2ba74c3d998aff rexml (3.4.1) sha256=c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587 rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d @@ -463,19 +543,23 @@ CHECKSUMS ruby-lsp (0.26.9) sha256=33a01c001c00a76b4e821efc04ed7572983430f31ca5d6f3e343d0b6ccab4129 ruby-lsp-rspec (0.1.29) sha256=798be579723376cd56b17d32373288fb1163e4cfe2024c7d068516a1cf214ee5 ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33 + rufus-scheduler (3.9.2) sha256=55fa9e4db0ff69d7f38c804f17baba0c9bce5cba39984ae3c5cf6c039d1323b9 securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1 sentry-rails (6.6.2) sentry-ruby (6.6.2) sequel (5.105.0) sha256=4191d5e5d011b7229ff8a3401ca6beac047c4d35b1ec6703376513b4b25b2e67 + sidekiq (8.1.6) sha256=be20cd051124b1a16cf97ea9157137abbd30a515c16a5ae9312d2eadd045e40f simplecov (0.22.0) sha256=fe2622c7834ff23b98066bb0a854284b2729a569ac659f82621fc22ef36213a5 simplecov-cobertura (3.1.0) sha256=6d7f38aa32c965ca2174b2e5bd88cb17138eaf629518854976ac50e628925dc5 simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246 simplecov_json_formatter (0.1.4) sha256=529418fbe8de1713ac2b2d612aa3daa56d316975d307244399fa4838c601b428 + sinatra (4.2.1) sha256=b7aeb9b11d046b552972ade834f1f9be98b185fa8444480688e3627625377080 sprockets (4.2.2) sha256=761e5a49f1c288704763f73139763564c845a8f856d52fba013458f8af1b59b1 sprockets-rails (3.5.2) sha256=a9e88e6ce9f8c912d349aa5401509165ec42326baf9e942a85de4b76dbc4119e sqlite3 (1.7.3) sha256=fa77f63c709548f46d4e9b6bb45cda52aa3881aa12cc85991132758e8968701c stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1 thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73 + tilt (2.7.0) sha256=0d5b9ba69f6a36490c64b0eee9f6e9aad517e20dcc848800a06eb116f08c6ab3 timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b diff --git a/sentry-rails/gemfiles/ruby-3.4_rails-8.0.0.gemfile.lock b/sentry-rails/gemfiles/ruby-3.4_rails-8.0.0.gemfile.lock index 5e04a2e4c..c6fe6781a 100644 --- a/sentry-rails/gemfiles/ruby-3.4_rails-8.0.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-3.4_rails-8.0.0.gemfile.lock @@ -112,11 +112,23 @@ GEM connection_pool (3.0.2) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) erb (6.0.4) erubi (1.13.1) + et-orbi (1.4.0) + tzinfo + fugit (1.12.2) + et-orbi (~> 1.4) + raabro (~> 1.4) globalid (1.3.0) activesupport (>= 6.1) i18n (1.14.8) @@ -149,6 +161,11 @@ GEM minitest (6.0.6) drb (~> 2.0) prism (~> 1.5) + mock_redis (0.55.0) + redis (~> 5) + mono_logger (1.1.2) + multi_json (1.21.1) + mustermann (3.1.1) mutex_m (0.3.0) net-imap (0.6.4.1) date @@ -177,8 +194,13 @@ GEM psych (5.4.0) date stringio + raabro (1.4.0) racc (1.8.1) rack (3.2.6) + rack-protection (4.2.1) + base64 (>= 0.1.0) + logger (>= 1.6.0) + rack (>= 3.0.0, < 4) rack-session (2.1.2) base64 (>= 0.1.0) rack (>= 3.0.0) @@ -226,9 +248,30 @@ GEM erb psych (>= 4.0.0) tsort + redis (5.4.1) + redis-client (>= 0.22.0) + redis-client (0.30.0) + connection_pool + redis-namespace (1.11.0) + redis (>= 4) regexp_parser (2.12.0) reline (0.6.3) io-console (~> 0.5) + resque (3.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1) + multi_json (~> 1.0) + redis (>= 4.0) + redis-namespace (~> 1.6) + sinatra (>= 2.0) + resque-scheduler (5.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1.0) + redis (>= 4.0) + resque (>= 3.0) + rufus-scheduler (~> 3.2, != 3.3) rexml (3.4.1) rspec (3.13.2) rspec-core (~> 3.13.0) @@ -291,9 +334,17 @@ GEM ruby-lsp-rspec (0.1.29) ruby-lsp (~> 0.26.0) ruby-progressbar (1.13.0) + rufus-scheduler (3.9.2) + fugit (~> 1.1, >= 1.11.1) securerandom (0.4.1) sequel (5.105.0) bigdecimal + sidekiq (8.1.6) + connection_pool (>= 3.0.0) + json (>= 2.16.0) + logger (>= 1.7.0) + rack (>= 3.2.0) + redis-client (>= 0.29.0) simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) @@ -303,6 +354,13 @@ GEM simplecov (~> 0.19) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) + sinatra (4.2.1) + logger (>= 1.6.0) + mustermann (~> 3.0) + rack (>= 3.0.0, < 4) + rack-protection (= 4.2.1) + rack-session (>= 2.0.0, < 3) + tilt (~> 2.0) sprockets (4.2.2) concurrent-ruby (~> 1.0) logger @@ -315,6 +373,7 @@ GEM mini_portile2 (~> 2.8.0) stringio (3.2.0) thor (1.5.0) + tilt (2.7.0) timeout (0.6.1) tsort (0.2.0) tzinfo (2.0.6) @@ -344,14 +403,19 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record drb irb jdbc-sqlite3 mini_magick + mock_redis mutex_m ostruct rails (~> 8.0.0) rake (~> 12.0) + resque + resque-scheduler (~> 5.0) rexml (= 3.4.1) rspec rspec-rails (~> 8.0.0) @@ -362,6 +426,7 @@ DEPENDENCIES sentry-rails! sentry-ruby! sequel + sidekiq (~> 8.0) simplecov simplecov-cobertura (~> 3.0) sprockets-rails @@ -395,11 +460,15 @@ CHECKSUMS crass (1.0.6) sha256=dc516022a56e7b3b156099abc81b6d2b08ea1ed12676ac7a5657617f012bd45d date (3.5.1) sha256=750d06384d7b9c15d562c76291407d89e368dda4d4fff957eb94962d325a0dc0 debug (1.11.1) + delayed_job (4.2.0) sha256=51dc1f68bb9084398317884c2178debd38c13a7eb48d8aa4ff4775465d7713ef + delayed_job_active_record (4.1.11) sha256=64f34a6d50316dd7a7df1daf7c6e04ad888c0e86938762318f6f52522b7c1ba8 diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962 docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373 erb (6.0.4) sha256=38e3803694be357fe2bfe312487c74beaf9fb4e5beb3e22498952fe1645b95d9 erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 + et-orbi (1.4.0) sha256=6c7e3c90779821f9e3b324c5e96fda9767f72995d6ae435b96678a4f3e2de8bc + fugit (1.12.2) sha256=643f2bf28db263bd400cbf8e0dd8b76b2c9b94bdb130e12d2394de04d9c20e5e globalid (1.3.0) sha256=05c639ad6eb4594522a0b07983022f04aa7254626ab69445a0e493aa3786ff11 i18n (1.14.8) sha256=285778639134865c5e0f6269e0b818256017e8cde89993fdfcbfb64d088824a5 io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc @@ -416,6 +485,10 @@ CHECKSUMS mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef mini_portile2 (2.8.9) sha256=0cd7c7f824e010c072e33f68bc02d85a00aeb6fce05bb4819c03dfd3c140c289 minitest (6.0.6) sha256=153ea36d1d987a62942382b61075745042a2b3123b1cd48f4c3675af9cc7d6f1 + mock_redis (0.55.0) sha256=1562199cb94b40775ff73b09f33346074138a6f35e1ac0b614b0404777cd41f0 + mono_logger (1.1.2) sha256=2e359def7007f5c908aadd953687991fe667995d14ae5f0d10dda76e3e8670f7 + multi_json (1.21.1) sha256=e6126a31808e3b4d19f483c775ceac34df190dffa62adfb63a165ee14ba68080 + mustermann (3.1.1) sha256=4c6170c7234d5499c345562ba7c7dfe73e1754286dcc1abb053064d66a127198 mutex_m (0.3.0) sha256=cfcb04ac16b69c4813777022fdceda24e9f798e48092a2b817eb4c0a782b0751 net-imap (0.6.4.1) sha256=29f0360d75a7efd3539f16ac1957dea5c0a51ddeceb348db4553c3120914ea0d net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3 @@ -431,8 +504,10 @@ CHECKSUMS prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193 prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85 psych (5.4.0) sha256=14f72d69a611af663d7d70e4a7b67d9eb1f3ae9f8d916b478961d5a0075ba5b7 + raabro (1.4.0) sha256=d4fa9ff5172391edb92b242eed8be802d1934b1464061ae5e70d80962c5da882 racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f rack (3.2.6) sha256=5ed78e1f73b2e25679bec7d45ee2d4483cc4146eb1be0264fc4d94cb5ef212c2 + rack-protection (4.2.1) sha256=cf6e2842df8c55f5e4d1a4be015e603e19e9bc3a7178bae58949ccbb58558bac rack-session (2.1.2) sha256=595434f8c0c3473ae7d7ac56ecda6cc6dfd9d37c0b2b5255330aa1576967ffe8 rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463 rackup (2.3.1) sha256=6c79c26753778e90983761d677a48937ee3192b3ffef6bc963c0950f94688868 @@ -444,8 +519,13 @@ CHECKSUMS rake (12.3.3) sha256=f7694adb4fe638da35452300cee6c545e9c377a0e3190018ac04d590b3c26ab3 rbs (4.0.2) sha256=af75671e66cd03434cc546622741ebf83f6197ec4328375805306330bf78ef25 rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192 + redis (5.4.1) sha256=b5e675b57ad22b15c9bcc765d5ac26f60b675408af916d31527af9bd5a81faae + redis-client (0.30.0) sha256=743f11ed42f0a41a0341554087b077479fec7e2d47a7c123fd90a12c0db5e477 + redis-namespace (1.11.0) sha256=e91a1aa2b2d888b6dea1d4ab8d39e1ae6fac3426161feb9d91dd5cca598a2239 regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835 + resque (3.0.0) sha256=ee6f02b61b2af48c587587dd6fb3b9b5eca94e348c568aed8e9d7e7872b2f713 + resque-scheduler (5.0.0) sha256=f199df7ae73b5c7972acd27c7e2f8a1f1ff4339eca5b794d0b2ba74c3d998aff rexml (3.4.1) sha256=c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587 rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d @@ -463,19 +543,23 @@ CHECKSUMS ruby-lsp (0.26.9) sha256=33a01c001c00a76b4e821efc04ed7572983430f31ca5d6f3e343d0b6ccab4129 ruby-lsp-rspec (0.1.29) sha256=798be579723376cd56b17d32373288fb1163e4cfe2024c7d068516a1cf214ee5 ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33 + rufus-scheduler (3.9.2) sha256=55fa9e4db0ff69d7f38c804f17baba0c9bce5cba39984ae3c5cf6c039d1323b9 securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1 sentry-rails (6.6.2) sentry-ruby (6.6.2) sequel (5.105.0) sha256=4191d5e5d011b7229ff8a3401ca6beac047c4d35b1ec6703376513b4b25b2e67 + sidekiq (8.1.6) sha256=be20cd051124b1a16cf97ea9157137abbd30a515c16a5ae9312d2eadd045e40f simplecov (0.22.0) sha256=fe2622c7834ff23b98066bb0a854284b2729a569ac659f82621fc22ef36213a5 simplecov-cobertura (3.1.0) sha256=6d7f38aa32c965ca2174b2e5bd88cb17138eaf629518854976ac50e628925dc5 simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246 simplecov_json_formatter (0.1.4) sha256=529418fbe8de1713ac2b2d612aa3daa56d316975d307244399fa4838c601b428 + sinatra (4.2.1) sha256=b7aeb9b11d046b552972ade834f1f9be98b185fa8444480688e3627625377080 sprockets (4.2.2) sha256=761e5a49f1c288704763f73139763564c845a8f856d52fba013458f8af1b59b1 sprockets-rails (3.5.2) sha256=a9e88e6ce9f8c912d349aa5401509165ec42326baf9e942a85de4b76dbc4119e sqlite3 (2.1.1) sha256=08ef9a277f25665bf237f16f7c68ec22b79100d1abe256e566a5e23337a62cf6 stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1 thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73 + tilt (2.7.0) sha256=0d5b9ba69f6a36490c64b0eee9f6e9aad517e20dcc848800a06eb116f08c6ab3 timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b diff --git a/sentry-rails/gemfiles/ruby-3.4_rails-8.1.3.gemfile.lock b/sentry-rails/gemfiles/ruby-3.4_rails-8.1.3.gemfile.lock index f0feeb108..b7b281545 100644 --- a/sentry-rails/gemfiles/ruby-3.4_rails-8.1.3.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-3.4_rails-8.1.3.gemfile.lock @@ -115,11 +115,23 @@ GEM connection_pool (3.0.2) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) erb (6.0.4) erubi (1.13.1) + et-orbi (1.4.0) + tzinfo + fugit (1.12.2) + et-orbi (~> 1.4) + raabro (~> 1.4) globalid (1.3.0) activesupport (>= 6.1) i18n (1.14.8) @@ -152,6 +164,11 @@ GEM minitest (6.0.6) drb (~> 2.0) prism (~> 1.5) + mock_redis (0.55.0) + redis (~> 5) + mono_logger (1.1.2) + multi_json (1.21.1) + mustermann (3.1.1) mutex_m (0.3.0) net-imap (0.6.4.1) date @@ -180,8 +197,13 @@ GEM psych (5.4.0) date stringio + raabro (1.4.0) racc (1.8.1) rack (3.2.6) + rack-protection (4.2.1) + base64 (>= 0.1.0) + logger (>= 1.6.0) + rack (>= 3.0.0, < 4) rack-session (2.1.2) base64 (>= 0.1.0) rack (>= 3.0.0) @@ -229,9 +251,30 @@ GEM erb psych (>= 4.0.0) tsort + redis (5.4.1) + redis-client (>= 0.22.0) + redis-client (0.30.0) + connection_pool + redis-namespace (1.11.0) + redis (>= 4) regexp_parser (2.12.0) reline (0.6.3) io-console (~> 0.5) + resque (3.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1) + multi_json (~> 1.0) + redis (>= 4.0) + redis-namespace (~> 1.6) + sinatra (>= 2.0) + resque-scheduler (5.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1.0) + redis (>= 4.0) + resque (>= 3.0) + rufus-scheduler (~> 3.2, != 3.3) rexml (3.4.1) rspec (3.13.2) rspec-core (~> 3.13.0) @@ -294,9 +337,17 @@ GEM ruby-lsp-rspec (0.1.29) ruby-lsp (~> 0.26.0) ruby-progressbar (1.13.0) + rufus-scheduler (3.9.2) + fugit (~> 1.1, >= 1.11.1) securerandom (0.4.1) sequel (5.105.0) bigdecimal + sidekiq (8.1.6) + connection_pool (>= 3.0.0) + json (>= 2.16.0) + logger (>= 1.7.0) + rack (>= 3.2.0) + redis-client (>= 0.29.0) simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) @@ -306,6 +357,13 @@ GEM simplecov (~> 0.19) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) + sinatra (4.2.1) + logger (>= 1.6.0) + mustermann (~> 3.0) + rack (>= 3.0.0, < 4) + rack-protection (= 4.2.1) + rack-session (>= 2.0.0, < 3) + tilt (~> 2.0) sprockets (4.2.2) concurrent-ruby (~> 1.0) logger @@ -318,6 +376,7 @@ GEM mini_portile2 (~> 2.8.0) stringio (3.2.0) thor (1.5.0) + tilt (2.7.0) timeout (0.6.1) tsort (0.2.0) tzinfo (2.0.6) @@ -347,14 +406,19 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record drb irb jdbc-sqlite3 mini_magick + mock_redis mutex_m ostruct rails (~> 8.1.3) rake (~> 12.0) + resque + resque-scheduler (~> 5.0) rexml (= 3.4.1) rspec rspec-rails (~> 8.0.0) @@ -365,6 +429,7 @@ DEPENDENCIES sentry-rails! sentry-ruby! sequel + sidekiq (~> 8.0) simplecov simplecov-cobertura (~> 3.0) sprockets-rails @@ -399,11 +464,15 @@ CHECKSUMS crass (1.0.6) sha256=dc516022a56e7b3b156099abc81b6d2b08ea1ed12676ac7a5657617f012bd45d date (3.5.1) sha256=750d06384d7b9c15d562c76291407d89e368dda4d4fff957eb94962d325a0dc0 debug (1.11.1) + delayed_job (4.2.0) sha256=51dc1f68bb9084398317884c2178debd38c13a7eb48d8aa4ff4775465d7713ef + delayed_job_active_record (4.1.11) sha256=64f34a6d50316dd7a7df1daf7c6e04ad888c0e86938762318f6f52522b7c1ba8 diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962 docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373 erb (6.0.4) sha256=38e3803694be357fe2bfe312487c74beaf9fb4e5beb3e22498952fe1645b95d9 erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 + et-orbi (1.4.0) sha256=6c7e3c90779821f9e3b324c5e96fda9767f72995d6ae435b96678a4f3e2de8bc + fugit (1.12.2) sha256=643f2bf28db263bd400cbf8e0dd8b76b2c9b94bdb130e12d2394de04d9c20e5e globalid (1.3.0) sha256=05c639ad6eb4594522a0b07983022f04aa7254626ab69445a0e493aa3786ff11 i18n (1.14.8) sha256=285778639134865c5e0f6269e0b818256017e8cde89993fdfcbfb64d088824a5 io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc @@ -420,6 +489,10 @@ CHECKSUMS mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef mini_portile2 (2.8.9) sha256=0cd7c7f824e010c072e33f68bc02d85a00aeb6fce05bb4819c03dfd3c140c289 minitest (6.0.6) sha256=153ea36d1d987a62942382b61075745042a2b3123b1cd48f4c3675af9cc7d6f1 + mock_redis (0.55.0) sha256=1562199cb94b40775ff73b09f33346074138a6f35e1ac0b614b0404777cd41f0 + mono_logger (1.1.2) sha256=2e359def7007f5c908aadd953687991fe667995d14ae5f0d10dda76e3e8670f7 + multi_json (1.21.1) sha256=e6126a31808e3b4d19f483c775ceac34df190dffa62adfb63a165ee14ba68080 + mustermann (3.1.1) sha256=4c6170c7234d5499c345562ba7c7dfe73e1754286dcc1abb053064d66a127198 mutex_m (0.3.0) sha256=cfcb04ac16b69c4813777022fdceda24e9f798e48092a2b817eb4c0a782b0751 net-imap (0.6.4.1) sha256=29f0360d75a7efd3539f16ac1957dea5c0a51ddeceb348db4553c3120914ea0d net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3 @@ -435,8 +508,10 @@ CHECKSUMS prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193 prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85 psych (5.4.0) sha256=14f72d69a611af663d7d70e4a7b67d9eb1f3ae9f8d916b478961d5a0075ba5b7 + raabro (1.4.0) sha256=d4fa9ff5172391edb92b242eed8be802d1934b1464061ae5e70d80962c5da882 racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f rack (3.2.6) sha256=5ed78e1f73b2e25679bec7d45ee2d4483cc4146eb1be0264fc4d94cb5ef212c2 + rack-protection (4.2.1) sha256=cf6e2842df8c55f5e4d1a4be015e603e19e9bc3a7178bae58949ccbb58558bac rack-session (2.1.2) sha256=595434f8c0c3473ae7d7ac56ecda6cc6dfd9d37c0b2b5255330aa1576967ffe8 rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463 rackup (2.3.1) sha256=6c79c26753778e90983761d677a48937ee3192b3ffef6bc963c0950f94688868 @@ -448,8 +523,13 @@ CHECKSUMS rake (12.3.3) sha256=f7694adb4fe638da35452300cee6c545e9c377a0e3190018ac04d590b3c26ab3 rbs (4.0.2) sha256=af75671e66cd03434cc546622741ebf83f6197ec4328375805306330bf78ef25 rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192 + redis (5.4.1) sha256=b5e675b57ad22b15c9bcc765d5ac26f60b675408af916d31527af9bd5a81faae + redis-client (0.30.0) sha256=743f11ed42f0a41a0341554087b077479fec7e2d47a7c123fd90a12c0db5e477 + redis-namespace (1.11.0) sha256=e91a1aa2b2d888b6dea1d4ab8d39e1ae6fac3426161feb9d91dd5cca598a2239 regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835 + resque (3.0.0) sha256=ee6f02b61b2af48c587587dd6fb3b9b5eca94e348c568aed8e9d7e7872b2f713 + resque-scheduler (5.0.0) sha256=f199df7ae73b5c7972acd27c7e2f8a1f1ff4339eca5b794d0b2ba74c3d998aff rexml (3.4.1) sha256=c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587 rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d @@ -467,19 +547,23 @@ CHECKSUMS ruby-lsp (0.26.9) sha256=33a01c001c00a76b4e821efc04ed7572983430f31ca5d6f3e343d0b6ccab4129 ruby-lsp-rspec (0.1.29) sha256=798be579723376cd56b17d32373288fb1163e4cfe2024c7d068516a1cf214ee5 ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33 + rufus-scheduler (3.9.2) sha256=55fa9e4db0ff69d7f38c804f17baba0c9bce5cba39984ae3c5cf6c039d1323b9 securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1 sentry-rails (6.6.2) sentry-ruby (6.6.2) sequel (5.105.0) sha256=4191d5e5d011b7229ff8a3401ca6beac047c4d35b1ec6703376513b4b25b2e67 + sidekiq (8.1.6) sha256=be20cd051124b1a16cf97ea9157137abbd30a515c16a5ae9312d2eadd045e40f simplecov (0.22.0) sha256=fe2622c7834ff23b98066bb0a854284b2729a569ac659f82621fc22ef36213a5 simplecov-cobertura (3.1.0) sha256=6d7f38aa32c965ca2174b2e5bd88cb17138eaf629518854976ac50e628925dc5 simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246 simplecov_json_formatter (0.1.4) sha256=529418fbe8de1713ac2b2d612aa3daa56d316975d307244399fa4838c601b428 + sinatra (4.2.1) sha256=b7aeb9b11d046b552972ade834f1f9be98b185fa8444480688e3627625377080 sprockets (4.2.2) sha256=761e5a49f1c288704763f73139763564c845a8f856d52fba013458f8af1b59b1 sprockets-rails (3.5.2) sha256=a9e88e6ce9f8c912d349aa5401509165ec42326baf9e942a85de4b76dbc4119e sqlite3 (2.1.1) sha256=08ef9a277f25665bf237f16f7c68ec22b79100d1abe256e566a5e23337a62cf6 stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1 thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73 + tilt (2.7.0) sha256=0d5b9ba69f6a36490c64b0eee9f6e9aad517e20dcc848800a06eb116f08c6ab3 timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b diff --git a/sentry-rails/gemfiles/ruby-4.0_rails-6.1.0.gemfile.lock b/sentry-rails/gemfiles/ruby-4.0_rails-6.1.0.gemfile.lock index 67acc07cc..7e8925732 100644 --- a/sentry-rails/gemfiles/ruby-4.0_rails-6.1.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-4.0_rails-6.1.0.gemfile.lock @@ -97,13 +97,26 @@ GEM builder (3.3.0) cgi (0.5.1) concurrent-ruby (1.3.6) + connection_pool (3.0.2) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) erb (6.0.4) erubi (1.13.1) + et-orbi (1.4.0) + tzinfo + fugit (1.12.2) + et-orbi (~> 1.4) + raabro (~> 1.4) globalid (1.3.0) activesupport (>= 6.1) i18n (1.14.8) @@ -137,6 +150,11 @@ GEM minitest (6.0.6) drb (~> 2.0) prism (~> 1.5) + mock_redis (0.55.0) + redis (~> 5) + mono_logger (1.1.2) + multi_json (1.21.1) + mustermann (3.1.1) mutex_m (0.3.0) net-imap (0.6.4.1) date @@ -165,8 +183,12 @@ GEM psych (5.4.0) date stringio + raabro (1.4.0) racc (1.8.1) rack (2.2.23) + rack-protection (3.2.0) + base64 (>= 0.1.0) + rack (~> 2.2, >= 2.2.4) rack-test (2.2.0) rack (>= 1.3) rails (6.1.7.10) @@ -207,9 +229,30 @@ GEM erb psych (>= 4.0.0) tsort + redis (5.4.1) + redis-client (>= 0.22.0) + redis-client (0.30.0) + connection_pool + redis-namespace (1.11.0) + redis (>= 4) regexp_parser (2.12.0) reline (0.6.3) io-console (~> 0.5) + resque (3.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1) + multi_json (~> 1.0) + redis (>= 4.0) + redis-namespace (~> 1.6) + sinatra (>= 2.0) + resque-scheduler (5.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1.0) + redis (>= 4.0) + resque (>= 3.0) + rufus-scheduler (~> 3.2, != 3.3) rexml (3.4.1) rspec (3.13.2) rspec-core (~> 3.13.0) @@ -272,6 +315,8 @@ GEM ruby-lsp-rspec (0.1.29) ruby-lsp (~> 0.26.0) ruby-progressbar (1.13.0) + rufus-scheduler (3.9.2) + fugit (~> 1.1, >= 1.11.1) sequel (5.105.0) bigdecimal simplecov (0.22.0) @@ -283,6 +328,11 @@ GEM simplecov (~> 0.19) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) + sinatra (3.2.0) + mustermann (~> 3.0) + rack (~> 2.2, >= 2.2.4) + rack-protection (= 3.2.0) + tilt (~> 2.0) sprockets (4.2.2) concurrent-ruby (~> 1.0) logger @@ -295,6 +345,7 @@ GEM mini_portile2 (~> 2.8.0) stringio (3.2.0) thor (1.5.0) + tilt (2.7.0) timeout (0.6.1) tsort (0.2.0) tzinfo (2.0.6) @@ -322,14 +373,19 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record drb irb jdbc-sqlite3 mini_magick + mock_redis mutex_m ostruct rails (~> 6.1.0) rake (~> 12.0) + resque + resque-scheduler (~> 5.0) rexml (= 3.4.1) rspec rspec-rails (~> 6.0) @@ -369,14 +425,19 @@ CHECKSUMS bundler (4.0.14) sha256=d09a0a965cf772266a7e49e83610be7c2f4e49e61134c42a56804bb383cc24b8 cgi (0.5.1) sha256=e93fcafc69b8a934fe1e6146121fa35430efa8b4a4047c4893764067036f18e9 concurrent-ruby (1.3.6) sha256=6b56837e1e7e5292f9864f34b69c5a2cbc75c0cf5338f1ce9903d10fa762d5ab + connection_pool (3.0.2) sha256=33fff5ba71a12d2aa26cb72b1db8bba2a1a01823559fb01d29eb74c286e62e0a crass (1.0.6) sha256=dc516022a56e7b3b156099abc81b6d2b08ea1ed12676ac7a5657617f012bd45d date (3.5.1) sha256=750d06384d7b9c15d562c76291407d89e368dda4d4fff957eb94962d325a0dc0 debug (1.11.1) + delayed_job (4.2.0) sha256=51dc1f68bb9084398317884c2178debd38c13a7eb48d8aa4ff4775465d7713ef + delayed_job_active_record (4.1.11) sha256=64f34a6d50316dd7a7df1daf7c6e04ad888c0e86938762318f6f52522b7c1ba8 diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962 docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373 erb (6.0.4) sha256=38e3803694be357fe2bfe312487c74beaf9fb4e5beb3e22498952fe1645b95d9 erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 + et-orbi (1.4.0) sha256=6c7e3c90779821f9e3b324c5e96fda9767f72995d6ae435b96678a4f3e2de8bc + fugit (1.12.2) sha256=643f2bf28db263bd400cbf8e0dd8b76b2c9b94bdb130e12d2394de04d9c20e5e globalid (1.3.0) sha256=05c639ad6eb4594522a0b07983022f04aa7254626ab69445a0e493aa3786ff11 i18n (1.14.8) sha256=285778639134865c5e0f6269e0b818256017e8cde89993fdfcbfb64d088824a5 io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc @@ -394,6 +455,10 @@ CHECKSUMS mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef mini_portile2 (2.8.9) sha256=0cd7c7f824e010c072e33f68bc02d85a00aeb6fce05bb4819c03dfd3c140c289 minitest (6.0.6) sha256=153ea36d1d987a62942382b61075745042a2b3123b1cd48f4c3675af9cc7d6f1 + mock_redis (0.55.0) sha256=1562199cb94b40775ff73b09f33346074138a6f35e1ac0b614b0404777cd41f0 + mono_logger (1.1.2) sha256=2e359def7007f5c908aadd953687991fe667995d14ae5f0d10dda76e3e8670f7 + multi_json (1.21.1) sha256=e6126a31808e3b4d19f483c775ceac34df190dffa62adfb63a165ee14ba68080 + mustermann (3.1.1) sha256=4c6170c7234d5499c345562ba7c7dfe73e1754286dcc1abb053064d66a127198 mutex_m (0.3.0) sha256=cfcb04ac16b69c4813777022fdceda24e9f798e48092a2b817eb4c0a782b0751 net-imap (0.6.4.1) sha256=29f0360d75a7efd3539f16ac1957dea5c0a51ddeceb348db4553c3120914ea0d net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3 @@ -409,8 +474,10 @@ CHECKSUMS prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193 prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85 psych (5.4.0) sha256=14f72d69a611af663d7d70e4a7b67d9eb1f3ae9f8d916b478961d5a0075ba5b7 + raabro (1.4.0) sha256=d4fa9ff5172391edb92b242eed8be802d1934b1464061ae5e70d80962c5da882 racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f rack (2.2.23) sha256=a8fe9d7e07064770b8ec123663fded8a59ef7e2b6db5cda7173d45a5718ab69c + rack-protection (3.2.0) sha256=3c74ba7fc59066453d61af9bcba5b6fe7a9b3dab6f445418d3b391d5ea8efbff rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463 rails (6.1.7.10) sha256=809692b3ec91fe1407b160e65203ef41c0b19b27bc5b836a515d6f4b969188d1 rails-dom-testing (2.3.0) sha256=8acc7953a7b911ca44588bf08737bc16719f431a1cc3091a292bca7317925c1d @@ -420,8 +487,13 @@ CHECKSUMS rake (12.3.3) sha256=f7694adb4fe638da35452300cee6c545e9c377a0e3190018ac04d590b3c26ab3 rbs (4.0.2) sha256=af75671e66cd03434cc546622741ebf83f6197ec4328375805306330bf78ef25 rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192 + redis (5.4.1) sha256=b5e675b57ad22b15c9bcc765d5ac26f60b675408af916d31527af9bd5a81faae + redis-client (0.30.0) sha256=743f11ed42f0a41a0341554087b077479fec7e2d47a7c123fd90a12c0db5e477 + redis-namespace (1.11.0) sha256=e91a1aa2b2d888b6dea1d4ab8d39e1ae6fac3426161feb9d91dd5cca598a2239 regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835 + resque (3.0.0) sha256=ee6f02b61b2af48c587587dd6fb3b9b5eca94e348c568aed8e9d7e7872b2f713 + resque-scheduler (5.0.0) sha256=f199df7ae73b5c7972acd27c7e2f8a1f1ff4339eca5b794d0b2ba74c3d998aff rexml (3.4.1) sha256=c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587 rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d @@ -439,6 +511,7 @@ CHECKSUMS ruby-lsp (0.26.9) sha256=33a01c001c00a76b4e821efc04ed7572983430f31ca5d6f3e343d0b6ccab4129 ruby-lsp-rspec (0.1.29) sha256=798be579723376cd56b17d32373288fb1163e4cfe2024c7d068516a1cf214ee5 ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33 + rufus-scheduler (3.9.2) sha256=55fa9e4db0ff69d7f38c804f17baba0c9bce5cba39984ae3c5cf6c039d1323b9 sentry-rails (6.6.2) sentry-ruby (6.6.2) sequel (5.105.0) sha256=4191d5e5d011b7229ff8a3401ca6beac047c4d35b1ec6703376513b4b25b2e67 @@ -446,11 +519,13 @@ CHECKSUMS simplecov-cobertura (3.1.0) sha256=6d7f38aa32c965ca2174b2e5bd88cb17138eaf629518854976ac50e628925dc5 simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246 simplecov_json_formatter (0.1.4) sha256=529418fbe8de1713ac2b2d612aa3daa56d316975d307244399fa4838c601b428 + sinatra (3.2.0) sha256=6e727f4d034e87067d9aab37f328021d7c16722ffd293ef07b6e968915109807 sprockets (4.2.2) sha256=761e5a49f1c288704763f73139763564c845a8f856d52fba013458f8af1b59b1 sprockets-rails (3.5.2) sha256=a9e88e6ce9f8c912d349aa5401509165ec42326baf9e942a85de4b76dbc4119e sqlite3 (1.7.3) sha256=fa77f63c709548f46d4e9b6bb45cda52aa3881aa12cc85991132758e8968701c stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1 thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73 + tilt (2.7.0) sha256=0d5b9ba69f6a36490c64b0eee9f6e9aad517e20dcc848800a06eb116f08c6ab3 timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b diff --git a/sentry-rails/gemfiles/ruby-4.0_rails-7.0.0.gemfile.lock b/sentry-rails/gemfiles/ruby-4.0_rails-7.0.0.gemfile.lock index ab6a03304..04dba85a2 100644 --- a/sentry-rails/gemfiles/ruby-4.0_rails-7.0.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-4.0_rails-7.0.0.gemfile.lock @@ -111,13 +111,26 @@ GEM builder (3.3.0) cgi (0.5.1) concurrent-ruby (1.3.6) + connection_pool (3.0.2) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) erb (6.0.4) erubi (1.13.1) + et-orbi (1.4.0) + tzinfo + fugit (1.12.2) + et-orbi (~> 1.4) + raabro (~> 1.4) globalid (1.3.0) activesupport (>= 6.1) i18n (1.14.8) @@ -151,6 +164,11 @@ GEM minitest (6.0.6) drb (~> 2.0) prism (~> 1.5) + mock_redis (0.55.0) + redis (~> 5) + mono_logger (1.1.2) + multi_json (1.21.1) + mustermann (3.1.1) mutex_m (0.3.0) net-imap (0.6.4.1) date @@ -179,8 +197,12 @@ GEM psych (5.4.0) date stringio + raabro (1.4.0) racc (1.8.1) rack (2.2.23) + rack-protection (3.2.0) + base64 (>= 0.1.0) + rack (~> 2.2, >= 2.2.4) rack-test (2.2.0) rack (>= 1.3) rails (7.0.10) @@ -221,9 +243,30 @@ GEM erb psych (>= 4.0.0) tsort + redis (5.4.1) + redis-client (>= 0.22.0) + redis-client (0.30.0) + connection_pool + redis-namespace (1.11.0) + redis (>= 4) regexp_parser (2.12.0) reline (0.6.3) io-console (~> 0.5) + resque (3.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1) + multi_json (~> 1.0) + redis (>= 4.0) + redis-namespace (~> 1.6) + sinatra (>= 2.0) + resque-scheduler (5.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1.0) + redis (>= 4.0) + resque (>= 3.0) + rufus-scheduler (~> 3.2, != 3.3) rexml (3.4.1) rspec (3.13.2) rspec-core (~> 3.13.0) @@ -286,6 +329,8 @@ GEM ruby-lsp-rspec (0.1.29) ruby-lsp (~> 0.26.0) ruby-progressbar (1.13.0) + rufus-scheduler (3.9.2) + fugit (~> 1.1, >= 1.11.1) securerandom (0.4.1) sequel (5.105.0) bigdecimal @@ -298,6 +343,11 @@ GEM simplecov (~> 0.19) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) + sinatra (3.2.0) + mustermann (~> 3.0) + rack (~> 2.2, >= 2.2.4) + rack-protection (= 3.2.0) + tilt (~> 2.0) sprockets (4.2.2) concurrent-ruby (~> 1.0) logger @@ -310,6 +360,7 @@ GEM mini_portile2 (~> 2.8.0) stringio (3.2.0) thor (1.5.0) + tilt (2.7.0) timeout (0.6.1) tsort (0.2.0) tzinfo (2.0.6) @@ -337,14 +388,19 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record drb irb jdbc-sqlite3 mini_magick + mock_redis mutex_m ostruct rails (~> 7.0.0) rake (~> 12.0) + resque + resque-scheduler (~> 5.0) rexml (= 3.4.1) rspec rspec-rails (~> 6.0) @@ -384,14 +440,19 @@ CHECKSUMS bundler (4.0.14) sha256=d09a0a965cf772266a7e49e83610be7c2f4e49e61134c42a56804bb383cc24b8 cgi (0.5.1) sha256=e93fcafc69b8a934fe1e6146121fa35430efa8b4a4047c4893764067036f18e9 concurrent-ruby (1.3.6) sha256=6b56837e1e7e5292f9864f34b69c5a2cbc75c0cf5338f1ce9903d10fa762d5ab + connection_pool (3.0.2) sha256=33fff5ba71a12d2aa26cb72b1db8bba2a1a01823559fb01d29eb74c286e62e0a crass (1.0.6) sha256=dc516022a56e7b3b156099abc81b6d2b08ea1ed12676ac7a5657617f012bd45d date (3.5.1) sha256=750d06384d7b9c15d562c76291407d89e368dda4d4fff957eb94962d325a0dc0 debug (1.11.1) + delayed_job (4.2.0) sha256=51dc1f68bb9084398317884c2178debd38c13a7eb48d8aa4ff4775465d7713ef + delayed_job_active_record (4.1.11) sha256=64f34a6d50316dd7a7df1daf7c6e04ad888c0e86938762318f6f52522b7c1ba8 diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962 docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373 erb (6.0.4) sha256=38e3803694be357fe2bfe312487c74beaf9fb4e5beb3e22498952fe1645b95d9 erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 + et-orbi (1.4.0) sha256=6c7e3c90779821f9e3b324c5e96fda9767f72995d6ae435b96678a4f3e2de8bc + fugit (1.12.2) sha256=643f2bf28db263bd400cbf8e0dd8b76b2c9b94bdb130e12d2394de04d9c20e5e globalid (1.3.0) sha256=05c639ad6eb4594522a0b07983022f04aa7254626ab69445a0e493aa3786ff11 i18n (1.14.8) sha256=285778639134865c5e0f6269e0b818256017e8cde89993fdfcbfb64d088824a5 io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc @@ -409,6 +470,10 @@ CHECKSUMS mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef mini_portile2 (2.8.9) sha256=0cd7c7f824e010c072e33f68bc02d85a00aeb6fce05bb4819c03dfd3c140c289 minitest (6.0.6) sha256=153ea36d1d987a62942382b61075745042a2b3123b1cd48f4c3675af9cc7d6f1 + mock_redis (0.55.0) sha256=1562199cb94b40775ff73b09f33346074138a6f35e1ac0b614b0404777cd41f0 + mono_logger (1.1.2) sha256=2e359def7007f5c908aadd953687991fe667995d14ae5f0d10dda76e3e8670f7 + multi_json (1.21.1) sha256=e6126a31808e3b4d19f483c775ceac34df190dffa62adfb63a165ee14ba68080 + mustermann (3.1.1) sha256=4c6170c7234d5499c345562ba7c7dfe73e1754286dcc1abb053064d66a127198 mutex_m (0.3.0) sha256=cfcb04ac16b69c4813777022fdceda24e9f798e48092a2b817eb4c0a782b0751 net-imap (0.6.4.1) sha256=29f0360d75a7efd3539f16ac1957dea5c0a51ddeceb348db4553c3120914ea0d net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3 @@ -424,8 +489,10 @@ CHECKSUMS prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193 prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85 psych (5.4.0) sha256=14f72d69a611af663d7d70e4a7b67d9eb1f3ae9f8d916b478961d5a0075ba5b7 + raabro (1.4.0) sha256=d4fa9ff5172391edb92b242eed8be802d1934b1464061ae5e70d80962c5da882 racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f rack (2.2.23) sha256=a8fe9d7e07064770b8ec123663fded8a59ef7e2b6db5cda7173d45a5718ab69c + rack-protection (3.2.0) sha256=3c74ba7fc59066453d61af9bcba5b6fe7a9b3dab6f445418d3b391d5ea8efbff rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463 rails (7.0.10) sha256=866eb2c53d3184543fdb770d7ea308e4ee518063226a9e176229f3c7a9537c25 rails-dom-testing (2.3.0) sha256=8acc7953a7b911ca44588bf08737bc16719f431a1cc3091a292bca7317925c1d @@ -435,8 +502,13 @@ CHECKSUMS rake (12.3.3) sha256=f7694adb4fe638da35452300cee6c545e9c377a0e3190018ac04d590b3c26ab3 rbs (4.0.2) sha256=af75671e66cd03434cc546622741ebf83f6197ec4328375805306330bf78ef25 rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192 + redis (5.4.1) sha256=b5e675b57ad22b15c9bcc765d5ac26f60b675408af916d31527af9bd5a81faae + redis-client (0.30.0) sha256=743f11ed42f0a41a0341554087b077479fec7e2d47a7c123fd90a12c0db5e477 + redis-namespace (1.11.0) sha256=e91a1aa2b2d888b6dea1d4ab8d39e1ae6fac3426161feb9d91dd5cca598a2239 regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835 + resque (3.0.0) sha256=ee6f02b61b2af48c587587dd6fb3b9b5eca94e348c568aed8e9d7e7872b2f713 + resque-scheduler (5.0.0) sha256=f199df7ae73b5c7972acd27c7e2f8a1f1ff4339eca5b794d0b2ba74c3d998aff rexml (3.4.1) sha256=c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587 rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d @@ -454,6 +526,7 @@ CHECKSUMS ruby-lsp (0.26.9) sha256=33a01c001c00a76b4e821efc04ed7572983430f31ca5d6f3e343d0b6ccab4129 ruby-lsp-rspec (0.1.29) sha256=798be579723376cd56b17d32373288fb1163e4cfe2024c7d068516a1cf214ee5 ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33 + rufus-scheduler (3.9.2) sha256=55fa9e4db0ff69d7f38c804f17baba0c9bce5cba39984ae3c5cf6c039d1323b9 securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1 sentry-rails (6.6.2) sentry-ruby (6.6.2) @@ -462,11 +535,13 @@ CHECKSUMS simplecov-cobertura (3.1.0) sha256=6d7f38aa32c965ca2174b2e5bd88cb17138eaf629518854976ac50e628925dc5 simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246 simplecov_json_formatter (0.1.4) sha256=529418fbe8de1713ac2b2d612aa3daa56d316975d307244399fa4838c601b428 + sinatra (3.2.0) sha256=6e727f4d034e87067d9aab37f328021d7c16722ffd293ef07b6e968915109807 sprockets (4.2.2) sha256=761e5a49f1c288704763f73139763564c845a8f856d52fba013458f8af1b59b1 sprockets-rails (3.5.2) sha256=a9e88e6ce9f8c912d349aa5401509165ec42326baf9e942a85de4b76dbc4119e sqlite3 (1.7.3) sha256=fa77f63c709548f46d4e9b6bb45cda52aa3881aa12cc85991132758e8968701c stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1 thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73 + tilt (2.7.0) sha256=0d5b9ba69f6a36490c64b0eee9f6e9aad517e20dcc848800a06eb116f08c6ab3 timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b diff --git a/sentry-rails/gemfiles/ruby-4.0_rails-7.1.0.gemfile.lock b/sentry-rails/gemfiles/ruby-4.0_rails-7.1.0.gemfile.lock index 1ba93cd50..a535fdf29 100644 --- a/sentry-rails/gemfiles/ruby-4.0_rails-7.1.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-4.0_rails-7.1.0.gemfile.lock @@ -120,11 +120,23 @@ GEM connection_pool (3.0.2) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) erb (6.0.4) erubi (1.13.1) + et-orbi (1.4.0) + tzinfo + fugit (1.12.2) + et-orbi (~> 1.4) + raabro (~> 1.4) globalid (1.3.0) activesupport (>= 6.1) i18n (1.14.8) @@ -157,6 +169,11 @@ GEM minitest (6.0.6) drb (~> 2.0) prism (~> 1.5) + mock_redis (0.55.0) + redis (~> 5) + mono_logger (1.1.2) + multi_json (1.21.1) + mustermann (3.1.1) mutex_m (0.3.0) net-imap (0.6.4.1) date @@ -184,8 +201,13 @@ GEM prism (1.9.0) psych (4.0.6) stringio + raabro (1.4.0) racc (1.8.1) rack (3.2.6) + rack-protection (4.2.1) + base64 (>= 0.1.0) + logger (>= 1.6.0) + rack (>= 3.0.0, < 4) rack-session (2.1.2) base64 (>= 0.1.0) rack (>= 3.0.0) @@ -234,9 +256,30 @@ GEM erb psych (>= 4.0.0) tsort + redis (5.4.1) + redis-client (>= 0.22.0) + redis-client (0.30.0) + connection_pool + redis-namespace (1.11.0) + redis (>= 4) regexp_parser (2.12.0) reline (0.6.3) io-console (~> 0.5) + resque (3.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1) + multi_json (~> 1.0) + redis (>= 4.0) + redis-namespace (~> 1.6) + sinatra (>= 2.0) + resque-scheduler (5.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1.0) + redis (>= 4.0) + resque (>= 3.0) + rufus-scheduler (~> 3.2, != 3.3) rexml (3.4.1) rspec (3.13.2) rspec-core (~> 3.13.0) @@ -299,9 +342,17 @@ GEM ruby-lsp-rspec (0.1.29) ruby-lsp (~> 0.26.0) ruby-progressbar (1.13.0) + rufus-scheduler (3.9.2) + fugit (~> 1.1, >= 1.11.1) securerandom (0.4.1) sequel (5.105.0) bigdecimal + sidekiq (8.1.6) + connection_pool (>= 3.0.0) + json (>= 2.16.0) + logger (>= 1.7.0) + rack (>= 3.2.0) + redis-client (>= 0.29.0) simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) @@ -311,6 +362,13 @@ GEM simplecov (~> 0.19) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) + sinatra (4.2.1) + logger (>= 1.6.0) + mustermann (~> 3.0) + rack (>= 3.0.0, < 4) + rack-protection (= 4.2.1) + rack-session (>= 2.0.0, < 3) + tilt (~> 2.0) sprockets (4.2.2) concurrent-ruby (~> 1.0) logger @@ -323,6 +381,7 @@ GEM mini_portile2 (~> 2.8.0) stringio (3.2.0) thor (1.5.0) + tilt (2.7.0) timeout (0.6.1) tsort (0.2.0) tzinfo (2.0.6) @@ -350,15 +409,20 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record drb irb jdbc-sqlite3 mini_magick + mock_redis mutex_m ostruct psych (~> 4.0.0) rails (~> 7.1.0) rake (~> 12.0) + resque + resque-scheduler (~> 5.0) rexml (= 3.4.1) rspec rspec-rails (~> 7.0) @@ -369,6 +433,7 @@ DEPENDENCIES sentry-rails! sentry-ruby! sequel + sidekiq (~> 8.0) simplecov simplecov-cobertura (~> 3.0) sprockets-rails @@ -402,11 +467,15 @@ CHECKSUMS crass (1.0.6) sha256=dc516022a56e7b3b156099abc81b6d2b08ea1ed12676ac7a5657617f012bd45d date (3.5.1) sha256=750d06384d7b9c15d562c76291407d89e368dda4d4fff957eb94962d325a0dc0 debug (1.11.1) + delayed_job (4.2.0) sha256=51dc1f68bb9084398317884c2178debd38c13a7eb48d8aa4ff4775465d7713ef + delayed_job_active_record (4.1.11) sha256=64f34a6d50316dd7a7df1daf7c6e04ad888c0e86938762318f6f52522b7c1ba8 diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962 docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373 erb (6.0.4) sha256=38e3803694be357fe2bfe312487c74beaf9fb4e5beb3e22498952fe1645b95d9 erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 + et-orbi (1.4.0) sha256=6c7e3c90779821f9e3b324c5e96fda9767f72995d6ae435b96678a4f3e2de8bc + fugit (1.12.2) sha256=643f2bf28db263bd400cbf8e0dd8b76b2c9b94bdb130e12d2394de04d9c20e5e globalid (1.3.0) sha256=05c639ad6eb4594522a0b07983022f04aa7254626ab69445a0e493aa3786ff11 i18n (1.14.8) sha256=285778639134865c5e0f6269e0b818256017e8cde89993fdfcbfb64d088824a5 io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc @@ -423,6 +492,10 @@ CHECKSUMS mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef mini_portile2 (2.8.9) sha256=0cd7c7f824e010c072e33f68bc02d85a00aeb6fce05bb4819c03dfd3c140c289 minitest (6.0.6) sha256=153ea36d1d987a62942382b61075745042a2b3123b1cd48f4c3675af9cc7d6f1 + mock_redis (0.55.0) sha256=1562199cb94b40775ff73b09f33346074138a6f35e1ac0b614b0404777cd41f0 + mono_logger (1.1.2) sha256=2e359def7007f5c908aadd953687991fe667995d14ae5f0d10dda76e3e8670f7 + multi_json (1.21.1) sha256=e6126a31808e3b4d19f483c775ceac34df190dffa62adfb63a165ee14ba68080 + mustermann (3.1.1) sha256=4c6170c7234d5499c345562ba7c7dfe73e1754286dcc1abb053064d66a127198 mutex_m (0.3.0) sha256=cfcb04ac16b69c4813777022fdceda24e9f798e48092a2b817eb4c0a782b0751 net-imap (0.6.4.1) sha256=29f0360d75a7efd3539f16ac1957dea5c0a51ddeceb348db4553c3120914ea0d net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3 @@ -438,8 +511,10 @@ CHECKSUMS prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193 prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85 psych (4.0.6) sha256=f70425c3dca8d8fbe4c1de7270d921e35eb6eb44cf2b2e4f961dc8031330b876 + raabro (1.4.0) sha256=d4fa9ff5172391edb92b242eed8be802d1934b1464061ae5e70d80962c5da882 racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f rack (3.2.6) sha256=5ed78e1f73b2e25679bec7d45ee2d4483cc4146eb1be0264fc4d94cb5ef212c2 + rack-protection (4.2.1) sha256=cf6e2842df8c55f5e4d1a4be015e603e19e9bc3a7178bae58949ccbb58558bac rack-session (2.1.2) sha256=595434f8c0c3473ae7d7ac56ecda6cc6dfd9d37c0b2b5255330aa1576967ffe8 rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463 rackup (2.3.1) sha256=6c79c26753778e90983761d677a48937ee3192b3ffef6bc963c0950f94688868 @@ -451,8 +526,13 @@ CHECKSUMS rake (12.3.3) sha256=f7694adb4fe638da35452300cee6c545e9c377a0e3190018ac04d590b3c26ab3 rbs (4.0.2) sha256=af75671e66cd03434cc546622741ebf83f6197ec4328375805306330bf78ef25 rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192 + redis (5.4.1) sha256=b5e675b57ad22b15c9bcc765d5ac26f60b675408af916d31527af9bd5a81faae + redis-client (0.30.0) sha256=743f11ed42f0a41a0341554087b077479fec7e2d47a7c123fd90a12c0db5e477 + redis-namespace (1.11.0) sha256=e91a1aa2b2d888b6dea1d4ab8d39e1ae6fac3426161feb9d91dd5cca598a2239 regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835 + resque (3.0.0) sha256=ee6f02b61b2af48c587587dd6fb3b9b5eca94e348c568aed8e9d7e7872b2f713 + resque-scheduler (5.0.0) sha256=f199df7ae73b5c7972acd27c7e2f8a1f1ff4339eca5b794d0b2ba74c3d998aff rexml (3.4.1) sha256=c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587 rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d @@ -470,19 +550,23 @@ CHECKSUMS ruby-lsp (0.26.9) sha256=33a01c001c00a76b4e821efc04ed7572983430f31ca5d6f3e343d0b6ccab4129 ruby-lsp-rspec (0.1.29) sha256=798be579723376cd56b17d32373288fb1163e4cfe2024c7d068516a1cf214ee5 ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33 + rufus-scheduler (3.9.2) sha256=55fa9e4db0ff69d7f38c804f17baba0c9bce5cba39984ae3c5cf6c039d1323b9 securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1 sentry-rails (6.6.2) sentry-ruby (6.6.2) sequel (5.105.0) sha256=4191d5e5d011b7229ff8a3401ca6beac047c4d35b1ec6703376513b4b25b2e67 + sidekiq (8.1.6) sha256=be20cd051124b1a16cf97ea9157137abbd30a515c16a5ae9312d2eadd045e40f simplecov (0.22.0) sha256=fe2622c7834ff23b98066bb0a854284b2729a569ac659f82621fc22ef36213a5 simplecov-cobertura (3.1.0) sha256=6d7f38aa32c965ca2174b2e5bd88cb17138eaf629518854976ac50e628925dc5 simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246 simplecov_json_formatter (0.1.4) sha256=529418fbe8de1713ac2b2d612aa3daa56d316975d307244399fa4838c601b428 + sinatra (4.2.1) sha256=b7aeb9b11d046b552972ade834f1f9be98b185fa8444480688e3627625377080 sprockets (4.2.2) sha256=761e5a49f1c288704763f73139763564c845a8f856d52fba013458f8af1b59b1 sprockets-rails (3.5.2) sha256=a9e88e6ce9f8c912d349aa5401509165ec42326baf9e942a85de4b76dbc4119e sqlite3 (1.7.3) sha256=fa77f63c709548f46d4e9b6bb45cda52aa3881aa12cc85991132758e8968701c stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1 thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73 + tilt (2.7.0) sha256=0d5b9ba69f6a36490c64b0eee9f6e9aad517e20dcc848800a06eb116f08c6ab3 timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b diff --git a/sentry-rails/gemfiles/ruby-4.0_rails-8.0.0.gemfile.lock b/sentry-rails/gemfiles/ruby-4.0_rails-8.0.0.gemfile.lock index 5e04a2e4c..c6fe6781a 100644 --- a/sentry-rails/gemfiles/ruby-4.0_rails-8.0.0.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-4.0_rails-8.0.0.gemfile.lock @@ -112,11 +112,23 @@ GEM connection_pool (3.0.2) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) erb (6.0.4) erubi (1.13.1) + et-orbi (1.4.0) + tzinfo + fugit (1.12.2) + et-orbi (~> 1.4) + raabro (~> 1.4) globalid (1.3.0) activesupport (>= 6.1) i18n (1.14.8) @@ -149,6 +161,11 @@ GEM minitest (6.0.6) drb (~> 2.0) prism (~> 1.5) + mock_redis (0.55.0) + redis (~> 5) + mono_logger (1.1.2) + multi_json (1.21.1) + mustermann (3.1.1) mutex_m (0.3.0) net-imap (0.6.4.1) date @@ -177,8 +194,13 @@ GEM psych (5.4.0) date stringio + raabro (1.4.0) racc (1.8.1) rack (3.2.6) + rack-protection (4.2.1) + base64 (>= 0.1.0) + logger (>= 1.6.0) + rack (>= 3.0.0, < 4) rack-session (2.1.2) base64 (>= 0.1.0) rack (>= 3.0.0) @@ -226,9 +248,30 @@ GEM erb psych (>= 4.0.0) tsort + redis (5.4.1) + redis-client (>= 0.22.0) + redis-client (0.30.0) + connection_pool + redis-namespace (1.11.0) + redis (>= 4) regexp_parser (2.12.0) reline (0.6.3) io-console (~> 0.5) + resque (3.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1) + multi_json (~> 1.0) + redis (>= 4.0) + redis-namespace (~> 1.6) + sinatra (>= 2.0) + resque-scheduler (5.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1.0) + redis (>= 4.0) + resque (>= 3.0) + rufus-scheduler (~> 3.2, != 3.3) rexml (3.4.1) rspec (3.13.2) rspec-core (~> 3.13.0) @@ -291,9 +334,17 @@ GEM ruby-lsp-rspec (0.1.29) ruby-lsp (~> 0.26.0) ruby-progressbar (1.13.0) + rufus-scheduler (3.9.2) + fugit (~> 1.1, >= 1.11.1) securerandom (0.4.1) sequel (5.105.0) bigdecimal + sidekiq (8.1.6) + connection_pool (>= 3.0.0) + json (>= 2.16.0) + logger (>= 1.7.0) + rack (>= 3.2.0) + redis-client (>= 0.29.0) simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) @@ -303,6 +354,13 @@ GEM simplecov (~> 0.19) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) + sinatra (4.2.1) + logger (>= 1.6.0) + mustermann (~> 3.0) + rack (>= 3.0.0, < 4) + rack-protection (= 4.2.1) + rack-session (>= 2.0.0, < 3) + tilt (~> 2.0) sprockets (4.2.2) concurrent-ruby (~> 1.0) logger @@ -315,6 +373,7 @@ GEM mini_portile2 (~> 2.8.0) stringio (3.2.0) thor (1.5.0) + tilt (2.7.0) timeout (0.6.1) tsort (0.2.0) tzinfo (2.0.6) @@ -344,14 +403,19 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record drb irb jdbc-sqlite3 mini_magick + mock_redis mutex_m ostruct rails (~> 8.0.0) rake (~> 12.0) + resque + resque-scheduler (~> 5.0) rexml (= 3.4.1) rspec rspec-rails (~> 8.0.0) @@ -362,6 +426,7 @@ DEPENDENCIES sentry-rails! sentry-ruby! sequel + sidekiq (~> 8.0) simplecov simplecov-cobertura (~> 3.0) sprockets-rails @@ -395,11 +460,15 @@ CHECKSUMS crass (1.0.6) sha256=dc516022a56e7b3b156099abc81b6d2b08ea1ed12676ac7a5657617f012bd45d date (3.5.1) sha256=750d06384d7b9c15d562c76291407d89e368dda4d4fff957eb94962d325a0dc0 debug (1.11.1) + delayed_job (4.2.0) sha256=51dc1f68bb9084398317884c2178debd38c13a7eb48d8aa4ff4775465d7713ef + delayed_job_active_record (4.1.11) sha256=64f34a6d50316dd7a7df1daf7c6e04ad888c0e86938762318f6f52522b7c1ba8 diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962 docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373 erb (6.0.4) sha256=38e3803694be357fe2bfe312487c74beaf9fb4e5beb3e22498952fe1645b95d9 erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 + et-orbi (1.4.0) sha256=6c7e3c90779821f9e3b324c5e96fda9767f72995d6ae435b96678a4f3e2de8bc + fugit (1.12.2) sha256=643f2bf28db263bd400cbf8e0dd8b76b2c9b94bdb130e12d2394de04d9c20e5e globalid (1.3.0) sha256=05c639ad6eb4594522a0b07983022f04aa7254626ab69445a0e493aa3786ff11 i18n (1.14.8) sha256=285778639134865c5e0f6269e0b818256017e8cde89993fdfcbfb64d088824a5 io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc @@ -416,6 +485,10 @@ CHECKSUMS mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef mini_portile2 (2.8.9) sha256=0cd7c7f824e010c072e33f68bc02d85a00aeb6fce05bb4819c03dfd3c140c289 minitest (6.0.6) sha256=153ea36d1d987a62942382b61075745042a2b3123b1cd48f4c3675af9cc7d6f1 + mock_redis (0.55.0) sha256=1562199cb94b40775ff73b09f33346074138a6f35e1ac0b614b0404777cd41f0 + mono_logger (1.1.2) sha256=2e359def7007f5c908aadd953687991fe667995d14ae5f0d10dda76e3e8670f7 + multi_json (1.21.1) sha256=e6126a31808e3b4d19f483c775ceac34df190dffa62adfb63a165ee14ba68080 + mustermann (3.1.1) sha256=4c6170c7234d5499c345562ba7c7dfe73e1754286dcc1abb053064d66a127198 mutex_m (0.3.0) sha256=cfcb04ac16b69c4813777022fdceda24e9f798e48092a2b817eb4c0a782b0751 net-imap (0.6.4.1) sha256=29f0360d75a7efd3539f16ac1957dea5c0a51ddeceb348db4553c3120914ea0d net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3 @@ -431,8 +504,10 @@ CHECKSUMS prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193 prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85 psych (5.4.0) sha256=14f72d69a611af663d7d70e4a7b67d9eb1f3ae9f8d916b478961d5a0075ba5b7 + raabro (1.4.0) sha256=d4fa9ff5172391edb92b242eed8be802d1934b1464061ae5e70d80962c5da882 racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f rack (3.2.6) sha256=5ed78e1f73b2e25679bec7d45ee2d4483cc4146eb1be0264fc4d94cb5ef212c2 + rack-protection (4.2.1) sha256=cf6e2842df8c55f5e4d1a4be015e603e19e9bc3a7178bae58949ccbb58558bac rack-session (2.1.2) sha256=595434f8c0c3473ae7d7ac56ecda6cc6dfd9d37c0b2b5255330aa1576967ffe8 rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463 rackup (2.3.1) sha256=6c79c26753778e90983761d677a48937ee3192b3ffef6bc963c0950f94688868 @@ -444,8 +519,13 @@ CHECKSUMS rake (12.3.3) sha256=f7694adb4fe638da35452300cee6c545e9c377a0e3190018ac04d590b3c26ab3 rbs (4.0.2) sha256=af75671e66cd03434cc546622741ebf83f6197ec4328375805306330bf78ef25 rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192 + redis (5.4.1) sha256=b5e675b57ad22b15c9bcc765d5ac26f60b675408af916d31527af9bd5a81faae + redis-client (0.30.0) sha256=743f11ed42f0a41a0341554087b077479fec7e2d47a7c123fd90a12c0db5e477 + redis-namespace (1.11.0) sha256=e91a1aa2b2d888b6dea1d4ab8d39e1ae6fac3426161feb9d91dd5cca598a2239 regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835 + resque (3.0.0) sha256=ee6f02b61b2af48c587587dd6fb3b9b5eca94e348c568aed8e9d7e7872b2f713 + resque-scheduler (5.0.0) sha256=f199df7ae73b5c7972acd27c7e2f8a1f1ff4339eca5b794d0b2ba74c3d998aff rexml (3.4.1) sha256=c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587 rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d @@ -463,19 +543,23 @@ CHECKSUMS ruby-lsp (0.26.9) sha256=33a01c001c00a76b4e821efc04ed7572983430f31ca5d6f3e343d0b6ccab4129 ruby-lsp-rspec (0.1.29) sha256=798be579723376cd56b17d32373288fb1163e4cfe2024c7d068516a1cf214ee5 ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33 + rufus-scheduler (3.9.2) sha256=55fa9e4db0ff69d7f38c804f17baba0c9bce5cba39984ae3c5cf6c039d1323b9 securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1 sentry-rails (6.6.2) sentry-ruby (6.6.2) sequel (5.105.0) sha256=4191d5e5d011b7229ff8a3401ca6beac047c4d35b1ec6703376513b4b25b2e67 + sidekiq (8.1.6) sha256=be20cd051124b1a16cf97ea9157137abbd30a515c16a5ae9312d2eadd045e40f simplecov (0.22.0) sha256=fe2622c7834ff23b98066bb0a854284b2729a569ac659f82621fc22ef36213a5 simplecov-cobertura (3.1.0) sha256=6d7f38aa32c965ca2174b2e5bd88cb17138eaf629518854976ac50e628925dc5 simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246 simplecov_json_formatter (0.1.4) sha256=529418fbe8de1713ac2b2d612aa3daa56d316975d307244399fa4838c601b428 + sinatra (4.2.1) sha256=b7aeb9b11d046b552972ade834f1f9be98b185fa8444480688e3627625377080 sprockets (4.2.2) sha256=761e5a49f1c288704763f73139763564c845a8f856d52fba013458f8af1b59b1 sprockets-rails (3.5.2) sha256=a9e88e6ce9f8c912d349aa5401509165ec42326baf9e942a85de4b76dbc4119e sqlite3 (2.1.1) sha256=08ef9a277f25665bf237f16f7c68ec22b79100d1abe256e566a5e23337a62cf6 stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1 thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73 + tilt (2.7.0) sha256=0d5b9ba69f6a36490c64b0eee9f6e9aad517e20dcc848800a06eb116f08c6ab3 timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b diff --git a/sentry-rails/gemfiles/ruby-4.0_rails-8.1.3.gemfile.lock b/sentry-rails/gemfiles/ruby-4.0_rails-8.1.3.gemfile.lock index f0feeb108..b7b281545 100644 --- a/sentry-rails/gemfiles/ruby-4.0_rails-8.1.3.gemfile.lock +++ b/sentry-rails/gemfiles/ruby-4.0_rails-8.1.3.gemfile.lock @@ -115,11 +115,23 @@ GEM connection_pool (3.0.2) crass (1.0.6) date (3.5.1) + delayed_job (4.2.0) + activesupport (>= 3.0, < 9.0) + benchmark + logger + delayed_job_active_record (4.1.11) + activerecord (>= 3.0, < 9.0) + delayed_job (>= 3.0, < 5) diff-lcs (1.6.2) docile (1.4.1) drb (2.2.3) erb (6.0.4) erubi (1.13.1) + et-orbi (1.4.0) + tzinfo + fugit (1.12.2) + et-orbi (~> 1.4) + raabro (~> 1.4) globalid (1.3.0) activesupport (>= 6.1) i18n (1.14.8) @@ -152,6 +164,11 @@ GEM minitest (6.0.6) drb (~> 2.0) prism (~> 1.5) + mock_redis (0.55.0) + redis (~> 5) + mono_logger (1.1.2) + multi_json (1.21.1) + mustermann (3.1.1) mutex_m (0.3.0) net-imap (0.6.4.1) date @@ -180,8 +197,13 @@ GEM psych (5.4.0) date stringio + raabro (1.4.0) racc (1.8.1) rack (3.2.6) + rack-protection (4.2.1) + base64 (>= 0.1.0) + logger (>= 1.6.0) + rack (>= 3.0.0, < 4) rack-session (2.1.2) base64 (>= 0.1.0) rack (>= 3.0.0) @@ -229,9 +251,30 @@ GEM erb psych (>= 4.0.0) tsort + redis (5.4.1) + redis-client (>= 0.22.0) + redis-client (0.30.0) + connection_pool + redis-namespace (1.11.0) + redis (>= 4) regexp_parser (2.12.0) reline (0.6.3) io-console (~> 0.5) + resque (3.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1) + multi_json (~> 1.0) + redis (>= 4.0) + redis-namespace (~> 1.6) + sinatra (>= 2.0) + resque-scheduler (5.0.0) + base64 (~> 0.1) + logger + mono_logger (~> 1.0) + redis (>= 4.0) + resque (>= 3.0) + rufus-scheduler (~> 3.2, != 3.3) rexml (3.4.1) rspec (3.13.2) rspec-core (~> 3.13.0) @@ -294,9 +337,17 @@ GEM ruby-lsp-rspec (0.1.29) ruby-lsp (~> 0.26.0) ruby-progressbar (1.13.0) + rufus-scheduler (3.9.2) + fugit (~> 1.1, >= 1.11.1) securerandom (0.4.1) sequel (5.105.0) bigdecimal + sidekiq (8.1.6) + connection_pool (>= 3.0.0) + json (>= 2.16.0) + logger (>= 1.7.0) + rack (>= 3.2.0) + redis-client (>= 0.29.0) simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) @@ -306,6 +357,13 @@ GEM simplecov (~> 0.19) simplecov-html (0.13.2) simplecov_json_formatter (0.1.4) + sinatra (4.2.1) + logger (>= 1.6.0) + mustermann (~> 3.0) + rack (>= 3.0.0, < 4) + rack-protection (= 4.2.1) + rack-session (>= 2.0.0, < 3) + tilt (~> 2.0) sprockets (4.2.2) concurrent-ruby (~> 1.0) logger @@ -318,6 +376,7 @@ GEM mini_portile2 (~> 2.8.0) stringio (3.2.0) thor (1.5.0) + tilt (2.7.0) timeout (0.6.1) tsort (0.2.0) tzinfo (2.0.6) @@ -347,14 +406,19 @@ DEPENDENCIES benchmark_driver cgi debug! + delayed_job + delayed_job_active_record drb irb jdbc-sqlite3 mini_magick + mock_redis mutex_m ostruct rails (~> 8.1.3) rake (~> 12.0) + resque + resque-scheduler (~> 5.0) rexml (= 3.4.1) rspec rspec-rails (~> 8.0.0) @@ -365,6 +429,7 @@ DEPENDENCIES sentry-rails! sentry-ruby! sequel + sidekiq (~> 8.0) simplecov simplecov-cobertura (~> 3.0) sprockets-rails @@ -399,11 +464,15 @@ CHECKSUMS crass (1.0.6) sha256=dc516022a56e7b3b156099abc81b6d2b08ea1ed12676ac7a5657617f012bd45d date (3.5.1) sha256=750d06384d7b9c15d562c76291407d89e368dda4d4fff957eb94962d325a0dc0 debug (1.11.1) + delayed_job (4.2.0) sha256=51dc1f68bb9084398317884c2178debd38c13a7eb48d8aa4ff4775465d7713ef + delayed_job_active_record (4.1.11) sha256=64f34a6d50316dd7a7df1daf7c6e04ad888c0e86938762318f6f52522b7c1ba8 diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962 docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373 erb (6.0.4) sha256=38e3803694be357fe2bfe312487c74beaf9fb4e5beb3e22498952fe1645b95d9 erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 + et-orbi (1.4.0) sha256=6c7e3c90779821f9e3b324c5e96fda9767f72995d6ae435b96678a4f3e2de8bc + fugit (1.12.2) sha256=643f2bf28db263bd400cbf8e0dd8b76b2c9b94bdb130e12d2394de04d9c20e5e globalid (1.3.0) sha256=05c639ad6eb4594522a0b07983022f04aa7254626ab69445a0e493aa3786ff11 i18n (1.14.8) sha256=285778639134865c5e0f6269e0b818256017e8cde89993fdfcbfb64d088824a5 io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc @@ -420,6 +489,10 @@ CHECKSUMS mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef mini_portile2 (2.8.9) sha256=0cd7c7f824e010c072e33f68bc02d85a00aeb6fce05bb4819c03dfd3c140c289 minitest (6.0.6) sha256=153ea36d1d987a62942382b61075745042a2b3123b1cd48f4c3675af9cc7d6f1 + mock_redis (0.55.0) sha256=1562199cb94b40775ff73b09f33346074138a6f35e1ac0b614b0404777cd41f0 + mono_logger (1.1.2) sha256=2e359def7007f5c908aadd953687991fe667995d14ae5f0d10dda76e3e8670f7 + multi_json (1.21.1) sha256=e6126a31808e3b4d19f483c775ceac34df190dffa62adfb63a165ee14ba68080 + mustermann (3.1.1) sha256=4c6170c7234d5499c345562ba7c7dfe73e1754286dcc1abb053064d66a127198 mutex_m (0.3.0) sha256=cfcb04ac16b69c4813777022fdceda24e9f798e48092a2b817eb4c0a782b0751 net-imap (0.6.4.1) sha256=29f0360d75a7efd3539f16ac1957dea5c0a51ddeceb348db4553c3120914ea0d net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3 @@ -435,8 +508,10 @@ CHECKSUMS prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193 prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85 psych (5.4.0) sha256=14f72d69a611af663d7d70e4a7b67d9eb1f3ae9f8d916b478961d5a0075ba5b7 + raabro (1.4.0) sha256=d4fa9ff5172391edb92b242eed8be802d1934b1464061ae5e70d80962c5da882 racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f rack (3.2.6) sha256=5ed78e1f73b2e25679bec7d45ee2d4483cc4146eb1be0264fc4d94cb5ef212c2 + rack-protection (4.2.1) sha256=cf6e2842df8c55f5e4d1a4be015e603e19e9bc3a7178bae58949ccbb58558bac rack-session (2.1.2) sha256=595434f8c0c3473ae7d7ac56ecda6cc6dfd9d37c0b2b5255330aa1576967ffe8 rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463 rackup (2.3.1) sha256=6c79c26753778e90983761d677a48937ee3192b3ffef6bc963c0950f94688868 @@ -448,8 +523,13 @@ CHECKSUMS rake (12.3.3) sha256=f7694adb4fe638da35452300cee6c545e9c377a0e3190018ac04d590b3c26ab3 rbs (4.0.2) sha256=af75671e66cd03434cc546622741ebf83f6197ec4328375805306330bf78ef25 rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192 + redis (5.4.1) sha256=b5e675b57ad22b15c9bcc765d5ac26f60b675408af916d31527af9bd5a81faae + redis-client (0.30.0) sha256=743f11ed42f0a41a0341554087b077479fec7e2d47a7c123fd90a12c0db5e477 + redis-namespace (1.11.0) sha256=e91a1aa2b2d888b6dea1d4ab8d39e1ae6fac3426161feb9d91dd5cca598a2239 regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835 + resque (3.0.0) sha256=ee6f02b61b2af48c587587dd6fb3b9b5eca94e348c568aed8e9d7e7872b2f713 + resque-scheduler (5.0.0) sha256=f199df7ae73b5c7972acd27c7e2f8a1f1ff4339eca5b794d0b2ba74c3d998aff rexml (3.4.1) sha256=c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587 rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d @@ -467,19 +547,23 @@ CHECKSUMS ruby-lsp (0.26.9) sha256=33a01c001c00a76b4e821efc04ed7572983430f31ca5d6f3e343d0b6ccab4129 ruby-lsp-rspec (0.1.29) sha256=798be579723376cd56b17d32373288fb1163e4cfe2024c7d068516a1cf214ee5 ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33 + rufus-scheduler (3.9.2) sha256=55fa9e4db0ff69d7f38c804f17baba0c9bce5cba39984ae3c5cf6c039d1323b9 securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1 sentry-rails (6.6.2) sentry-ruby (6.6.2) sequel (5.105.0) sha256=4191d5e5d011b7229ff8a3401ca6beac047c4d35b1ec6703376513b4b25b2e67 + sidekiq (8.1.6) sha256=be20cd051124b1a16cf97ea9157137abbd30a515c16a5ae9312d2eadd045e40f simplecov (0.22.0) sha256=fe2622c7834ff23b98066bb0a854284b2729a569ac659f82621fc22ef36213a5 simplecov-cobertura (3.1.0) sha256=6d7f38aa32c965ca2174b2e5bd88cb17138eaf629518854976ac50e628925dc5 simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246 simplecov_json_formatter (0.1.4) sha256=529418fbe8de1713ac2b2d612aa3daa56d316975d307244399fa4838c601b428 + sinatra (4.2.1) sha256=b7aeb9b11d046b552972ade834f1f9be98b185fa8444480688e3627625377080 sprockets (4.2.2) sha256=761e5a49f1c288704763f73139763564c845a8f856d52fba013458f8af1b59b1 sprockets-rails (3.5.2) sha256=a9e88e6ce9f8c912d349aa5401509165ec42326baf9e942a85de4b76dbc4119e sqlite3 (2.1.1) sha256=08ef9a277f25665bf237f16f7c68ec22b79100d1abe256e566a5e23337a62cf6 stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1 thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73 + tilt (2.7.0) sha256=0d5b9ba69f6a36490c64b0eee9f6e9aad517e20dcc848800a06eb116f08c6ab3 timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b diff --git a/sentry-rails/lib/sentry/rails/active_job.rb b/sentry-rails/lib/sentry/rails/active_job.rb index df7f27ecd..abb32b800 100644 --- a/sentry-rails/lib/sentry/rails/active_job.rb +++ b/sentry-rails/lib/sentry/rails/active_job.rb @@ -5,13 +5,62 @@ module Sentry module Rails module ActiveJobExtensions + SENTRY_PAYLOAD_KEY = "_sentry" + + USER_FIELDS_ALLOWLIST = %w[id email username].freeze + + def self.prepended(base) + base.attr_accessor :_sentry + end + def perform_now if !Sentry.initialized? || already_supported_by_sentry_integration? super else - SentryReporter.record(self) do - super + data = _sentry || {} + SentryReporter.record( + self, + trace_headers: data["trace_propagation_headers"], + user: data["user"] + ) { super } + end + end + + def serialize + payload = super + return payload if !Sentry.initialized? || already_supported_by_sentry_integration? + + begin + sentry_data = {} + if Sentry.configuration.rails.active_job_propagate_traces + headers = Sentry.get_trace_propagation_headers + sentry_data["trace_propagation_headers"] = headers if headers && !headers.empty? end + + if Sentry.configuration.send_default_pii + user = Sentry.get_current_scope.user || {} + allowed = user.each_with_object({}) do |(k, v), acc| + acc[k.to_s] = v if USER_FIELDS_ALLOWLIST.include?(k.to_s) + end + sentry_data["user"] = allowed unless allowed.empty? + end + + payload[SENTRY_PAYLOAD_KEY] = sentry_data unless sentry_data.empty? + rescue StandardError => e + Sentry.sdk_logger&.error("sentry-rails: failed to inject _sentry payload: #{e.class}: #{e.message}\n #{Array(e.backtrace).first(5).join("\n ")}") + end + + payload + end + + def deserialize(job_data) + super + return if !Sentry.initialized? || already_supported_by_sentry_integration? + + begin + self._sentry = job_data[SENTRY_PAYLOAD_KEY] + rescue StandardError => e + Sentry.sdk_logger&.error("sentry-rails: failed to extract _sentry payload: #{e.class}: #{e.message}\n #{Array(e.backtrace).first(5).join("\n ")}") end end @@ -28,19 +77,67 @@ class SentryReporter } class << self - def record(job, &block) + def producer_callback_registered? + @producer_callback_registered ||= false + end + + def producer_callback_registered! + @producer_callback_registered = true + end + + def record_producer_span(job) + return yield if !Sentry.initialized? || job.already_supported_by_sentry_integration? + + Sentry.with_child_span(op: "queue.publish", description: job.class.name) do |span| + if span + span.set_origin(SPAN_ORIGIN) + span.set_data(Sentry::Span::DataConventions::MESSAGING_MESSAGE_ID, job.job_id) + span.set_data(Sentry::Span::DataConventions::MESSAGING_DESTINATION_NAME, job.queue_name) + end + yield + end + end + + def record(job, trace_headers: nil, user: nil, &block) + # Always give this thread a fresh hub cloned from the main hub so + # the job's events are fully isolated. Save and restore whatever + # hub was on the thread before (e.g. the Rack request hub set by + # CaptureExceptions, or a stale hub left by a recycled thread-pool + # thread) so the outer context continues working correctly after + # the job finishes. + original_hub = Thread.current.thread_variable_get(Sentry::THREAD_LOCAL) + Sentry.clone_hub_to_current_thread + Sentry.with_scope do |scope| begin + scope.set_user(user) if user && !user.empty? scope.set_transaction_name(job.class.name, source: :task) + scope.set_tags(queue: job.queue_name) + scope.set_contexts(active_job: { + job_class: job.class.name, + job_id: job.job_id, + queue: job.queue_name, + provider_job_id: job.provider_job_id + }) - transaction = Sentry.start_transaction( + transaction_options = { name: scope.transaction_name, source: scope.transaction_source, op: OP_NAME, origin: SPAN_ORIGIN - ) + } + + transaction = if trace_headers && !trace_headers.empty? + continued = Sentry.continue_trace(trace_headers, **transaction_options) + Sentry.start_transaction(transaction: continued, **transaction_options) + else + Sentry.start_transaction(**transaction_options) + end - scope.set_span(transaction) if transaction + if transaction + set_messaging_data(transaction, job) + scope.set_span(transaction) + end yield.tap do finish_sentry_transaction(transaction, 200) @@ -53,6 +150,25 @@ def record(job, &block) raise end end + ensure + Thread.current.thread_variable_set(Sentry::THREAD_LOCAL, original_hub) + end + + def set_messaging_data(transaction, job) + transaction.set_data(Sentry::Span::DataConventions::MESSAGING_MESSAGE_ID, job.job_id) + transaction.set_data(Sentry::Span::DataConventions::MESSAGING_DESTINATION_NAME, job.queue_name) + transaction.set_data(Sentry::Span::DataConventions::MESSAGING_MESSAGE_RETRY_COUNT, [job.executions.to_i - 1, 0].max) + + if (latency = compute_latency(job)) + transaction.set_data(Sentry::Span::DataConventions::MESSAGING_MESSAGE_RECEIVE_LATENCY, latency) + end + end + + def compute_latency(job) + return unless job.respond_to?(:enqueued_at) && job.enqueued_at + + enqueued_time = job.enqueued_at.is_a?(String) ? Time.parse(job.enqueued_at) : job.enqueued_at + ((Time.now.to_f - enqueued_time.to_f) * 1000).round end def capture_exception(job, e) diff --git a/sentry-rails/lib/sentry/rails/configuration.rb b/sentry-rails/lib/sentry/rails/configuration.rb index a37c4446c..9e4c1e7ef 100644 --- a/sentry-rails/lib/sentry/rails/configuration.rb +++ b/sentry-rails/lib/sentry/rails/configuration.rb @@ -172,6 +172,11 @@ class Configuration # Set this option to true if you want Sentry to capture each retry failure attr_accessor :active_job_report_on_retry_error + # Whether we should inject trace propagation headers into the serialized job + # payload in order to have a connected trace between producer and consumer. + # Defaults to true. Set to false to opt out. + attr_accessor :active_job_propagate_traces + # Configuration for structured logging feature # @return [StructuredLoggingConfiguration] attr_reader :structured_logging @@ -193,6 +198,7 @@ def initialize @db_query_source_threshold_ms = 100 @active_support_logger_subscription_items = Sentry::Rails::ACTIVE_SUPPORT_LOGGER_SUBSCRIPTION_ITEMS_DEFAULT.dup @active_job_report_on_retry_error = false + @active_job_propagate_traces = true @structured_logging = StructuredLoggingConfiguration.new end end diff --git a/sentry-rails/lib/sentry/rails/railtie.rb b/sentry-rails/lib/sentry/rails/railtie.rb index a86093768..a234e95a9 100644 --- a/sentry-rails/lib/sentry/rails/railtie.rb +++ b/sentry-rails/lib/sentry/rails/railtie.rb @@ -21,6 +21,13 @@ class Railtie < ::Rails::Railtie ActiveSupport.on_load(:active_job) do require "sentry/rails/active_job" prepend Sentry::Rails::ActiveJobExtensions + + unless Sentry::Rails::ActiveJobExtensions::SentryReporter.producer_callback_registered? + around_enqueue do |job, block| + Sentry::Rails::ActiveJobExtensions::SentryReporter.record_producer_span(job, &block) + end + Sentry::Rails::ActiveJobExtensions::SentryReporter.producer_callback_registered! + end end end diff --git a/sentry-rails/spec/active_job/delayed_job_adapter_spec.rb b/sentry-rails/spec/active_job/delayed_job_adapter_spec.rb new file mode 100644 index 000000000..a807c48ea --- /dev/null +++ b/sentry-rails/spec/active_job/delayed_job_adapter_spec.rb @@ -0,0 +1,30 @@ +# frozen_string_literal: true + +require "spec_helper" + +# delayed_job 4.2+ ships an ActiveJob adapter that inherits from +# ActiveJob::QueueAdapters::AbstractAdapter, which only exists in Rails 7.2+. +# On older Rails, instantiating the adapter raises NameError, so skip the +# whole file. Bail out before loading delayed_job so old matrices don't trip +# on the gem either. +return if RAILS_VERSION < 7.2 + +# delayed_job is gated in the Gemfile by platform (skipped on JRuby). +# Matrices that don't bundle it won't have it available — rescue LoadError +# and skip the whole file so they don't blow up on the +# `include_context "delayed_job adapter"` below. +begin + require "delayed_job" + require "delayed_job_active_record" +rescue LoadError + return +end + +RSpec.describe "Sentry + ActiveJob on the delayed_job adapter", type: :job do + include ActiveSupport::Testing::TimeHelpers + include_context "active_job backend harness", adapter: :delayed_job + include_context "delayed_job adapter" + + it_behaves_like "a Sentry-instrumented ActiveJob backend" + it_behaves_like "an ActiveJob backend that supports distributed tracing" +end diff --git a/sentry-rails/spec/active_job/resque_adapter_spec.rb b/sentry-rails/spec/active_job/resque_adapter_spec.rb new file mode 100644 index 000000000..cc9b8ffe0 --- /dev/null +++ b/sentry-rails/spec/active_job/resque_adapter_spec.rb @@ -0,0 +1,31 @@ +# frozen_string_literal: true + +require "spec_helper" + +# resque 3+ ships an ActiveJob adapter that inherits from +# ActiveJob::QueueAdapters::AbstractAdapter, which only exists in Rails 7.2+. +# On older Rails, instantiating the adapter raises NameError, so skip the +# whole file. Bail out before loading resque so old matrices don't trip on +# the gem either. +return if RAILS_VERSION < 7.2 + +# resque (and mock_redis) are gated in the Gemfile by platform (skipped on +# JRuby). Matrices that don't bundle them won't have them available — +# rescue LoadError and skip the whole file so they don't blow up on the +# `include_context "resque adapter"` below. +begin + require "mock_redis" + require "resque" + require "resque-scheduler" +rescue LoadError + return +end + +RSpec.describe "Sentry + ActiveJob on the resque adapter", type: :job do + include ActiveSupport::Testing::TimeHelpers + include_context "active_job backend harness", adapter: :resque + include_context "resque adapter" + + it_behaves_like "a Sentry-instrumented ActiveJob backend" + it_behaves_like "an ActiveJob backend that supports distributed tracing" +end diff --git a/sentry-rails/spec/active_job/shared_examples/tracing/consumer_transaction.rb b/sentry-rails/spec/active_job/shared_examples/tracing/consumer_transaction.rb index 5cc2d1fb3..715a2d5b6 100644 --- a/sentry-rails/spec/active_job/shared_examples/tracing/consumer_transaction.rb +++ b/sentry-rails/spec/active_job/shared_examples/tracing/consumer_transaction.rb @@ -32,6 +32,43 @@ def perform expect(transaction.contexts.dig(:trace, :status)).to eq("ok") end + it "sets queue scope tag on the consumer transaction" do + successful_job.set(queue: "important").perform_later + drain + + transaction = sentry_events.find { |e| e.is_a?(Sentry::TransactionEvent) } + expect(transaction).not_to be_nil + expect(transaction.tags[:queue]).to eq("important") + end + + it "sets active_job context on the consumer transaction" do + successful_job.perform_later + drain + + transaction = sentry_events.find { |e| e.is_a?(Sentry::TransactionEvent) } + expect(transaction).not_to be_nil + + ctx = transaction.contexts[:active_job] + expect(ctx).not_to be_nil + expect(ctx[:job_class]).to eq(successful_job.name) + expect(ctx[:job_id]).to be_a(String).and(satisfy { |v| !v.empty? }) + expect(ctx[:queue]).to eq("default") + end + + it "sets active_job context on the error event" do + expect do + failing_job.perform_later + drain + end.to raise_error(RuntimeError, /boom from tracing spec/) + + error_event = sentry_events.find { |e| e.is_a?(Sentry::ErrorEvent) } + expect(error_event).not_to be_nil + + ctx = error_event.contexts[:active_job] + expect(ctx).not_to be_nil + expect(ctx[:job_class]).to eq(failing_job.name) + end + it "records a db.sql.active_record child span when the job performs a query" do query_job = job_fixture do def perform diff --git a/sentry-rails/spec/active_job/shared_examples/tracing/distributed_tracing.rb b/sentry-rails/spec/active_job/shared_examples/tracing/distributed_tracing.rb new file mode 100644 index 000000000..8dac36d55 --- /dev/null +++ b/sentry-rails/spec/active_job/shared_examples/tracing/distributed_tracing.rb @@ -0,0 +1,9 @@ +# frozen_string_literal: true + +RSpec.shared_examples "an ActiveJob backend that supports distributed tracing" do + it_behaves_like "an ActiveJob backend that emits a producer span on enqueue" + it_behaves_like "an ActiveJob backend that propagates trace context through the job payload" + it_behaves_like "an ActiveJob backend that records messaging span data on the consumer transaction" + it_behaves_like "an ActiveJob backend that propagates Sentry user context through job payloads" + it_behaves_like "an ActiveJob backend that isolates Sentry context per worker thread" +end diff --git a/sentry-rails/spec/active_job/shared_examples/tracing/messaging_span_data.rb b/sentry-rails/spec/active_job/shared_examples/tracing/messaging_span_data.rb new file mode 100644 index 000000000..14e023838 --- /dev/null +++ b/sentry-rails/spec/active_job/shared_examples/tracing/messaging_span_data.rb @@ -0,0 +1,76 @@ +# frozen_string_literal: true + +RSpec.shared_examples "an ActiveJob backend that records messaging span data on the consumer transaction" do + include ActiveSupport::Testing::TimeHelpers + + let(:successful_job) do + job_fixture do + def perform; end + end + end + + let(:configure_sentry) { proc { |config| config.traces_sample_rate = 1.0 } } + + it "records messaging.message.id and messaging.destination.name on the consumer transaction" do + successful_job.set(queue: "critical").perform_later + drain + + data = consumer_transaction.contexts.dig(:trace, :data) + expect(data["messaging.message.id"]).to be_a(String).and(satisfy { |v| !v.empty? }) + expect(data["messaging.destination.name"]).to eq("critical") + end + + it "records messaging.message.retry.count = 0 for non-retryable jobs" do + successful_job.perform_later + drain + + data = consumer_transaction.contexts.dig(:trace, :data) + expect(data["messaging.message.retry.count"]).to eq(0) + end + + context "when the job is retryable" do + let(:retryable_job) do + job_fixture do + retry_on StandardError, attempts: 3, wait: 0 + + def perform; end + end + end + + it "records messaging.message.retry.count = 0 on the first execution" do + retryable_job.perform_later + drain + + data = consumer_transaction.contexts.dig(:trace, :data) + expect(data["messaging.message.retry.count"]).to eq(0) + end + + it "records messaging.message.retry.count across real retried executions", skip: RAILS_VERSION < 6.0 do + retried_job = job_fixture do + retry_on StandardError, attempts: 3, wait: 0 + + def perform + raise StandardError, "trigger retry" if executions < 3 + end + end + + retried_job.perform_later + drain + + consumer_txns = transactions.select { |t| t.contexts.dig(:trace, :op) == "queue.active_job" } + retry_counts = consumer_txns.map { |t| t.contexts.dig(:trace, :data, "messaging.message.retry.count") } + expect(retry_counts).to eq([0, 0, 1]) + end + end + + it "records messaging.message.receive.latency in milliseconds", skip: RAILS_VERSION < 6.1 do + base = Time.current + + travel_to(base) { successful_job.perform_later } + travel_to(base + 5.seconds) { drain } + + latency = consumer_transaction.contexts.dig(:trace, :data, "messaging.message.receive.latency") + + expect(latency).to eq(5_000) + end +end diff --git a/sentry-rails/spec/active_job/shared_examples/tracing/producer_span.rb b/sentry-rails/spec/active_job/shared_examples/tracing/producer_span.rb new file mode 100644 index 000000000..9a52460f5 --- /dev/null +++ b/sentry-rails/spec/active_job/shared_examples/tracing/producer_span.rb @@ -0,0 +1,50 @@ +# frozen_string_literal: true + +RSpec.shared_examples "an ActiveJob backend that emits a producer span on enqueue" do + let(:successful_job) do + job_fixture do + def perform; end + end + end + + context "with traces_sample_rate = 1.0" do + let(:configure_sentry) { proc { |config| config.traces_sample_rate = 1.0 } } + + it "adds a queue.publish child span to the active parent transaction" do + within_parent_transaction do + successful_job.set(queue: "events").perform_later + end + + parent = transactions.find { |t| t.contexts.dig(:trace, :op) == "test" } + expect(parent).not_to be_nil + + publish_span = parent.spans.find { |s| s[:op] == "queue.publish" } + expect(publish_span).not_to be_nil + expect(publish_span[:description]).to eq(successful_job.name) + expect(publish_span[:origin]).to eq("auto.queue.active_job") + expect(publish_span[:data]["messaging.message.id"]).to be_a(String).and(satisfy { |v| !v.empty? }) + expect(publish_span[:data]["messaging.destination.name"]).to eq("events") + expect(publish_span[:timestamp]).not_to be_nil + end + + it "does not raise or capture an orphan span when no parent transaction is active" do + expect { successful_job.perform_later }.not_to raise_error + + orphan_publish = transactions.flat_map(&:spans).find { |s| s[:op] == "queue.publish" } + expect(orphan_publish).to be_nil + end + end + + context "with traces_sample_rate = 0" do + let(:configure_sentry) { proc { |config| config.traces_sample_rate = 0 } } + + it "does not capture a queue.publish span" do + within_parent_transaction do + successful_job.perform_later + end + + publish_spans = transactions.flat_map(&:spans).select { |s| s[:op] == "queue.publish" } + expect(publish_spans).to be_empty + end + end +end diff --git a/sentry-rails/spec/active_job/shared_examples/tracing/trace_propagation.rb b/sentry-rails/spec/active_job/shared_examples/tracing/trace_propagation.rb new file mode 100644 index 000000000..d0324afb9 --- /dev/null +++ b/sentry-rails/spec/active_job/shared_examples/tracing/trace_propagation.rb @@ -0,0 +1,82 @@ +# frozen_string_literal: true + +RSpec.shared_examples "an ActiveJob backend that propagates trace context through the job payload" do + let(:successful_job) do + job_fixture do + def perform; end + end + end + + let(:configure_sentry) { proc { |config| config.traces_sample_rate = 1.0 } } + + it "produces a consumer transaction whose trace_id matches the parent transaction" do + parent_trace_id = nil + publish_span_id = nil + + within_parent_transaction do |parent| + parent_trace_id = parent.trace_id + successful_job.perform_later + publish_span_id = parent.span_recorder.spans.find { |s| s.op == "queue.publish" }&.span_id + end + + drain + + expect(consumer_transaction).not_to be_nil + expect(consumer_transaction.contexts.dig(:trace, :trace_id)).to eq(parent_trace_id) + expect(consumer_transaction.contexts.dig(:trace, :parent_span_id)).to eq(publish_span_id) + end + + it "captures a consumer transaction without raising when no parent transaction was active at enqueue" do + expect { successful_job.perform_later }.not_to raise_error + expect { drain }.not_to raise_error + + expect(consumer_transaction).not_to be_nil + expect(consumer_transaction.contexts.dig(:trace, :trace_id)).to be_a(String) + end + + it "survives a JSON round-trip of the serialized payload" do + parent_trace_id = nil + + within_parent_transaction do |parent| + parent_trace_id = parent.trace_id + payload = successful_job.new.serialize + round_tripped = JSON.parse(JSON.generate(payload)) + ::ActiveJob::Base.execute(round_tripped) + end + + expect(consumer_transaction).not_to be_nil + expect(consumer_transaction.contexts.dig(:trace, :trace_id)).to eq(parent_trace_id) + end + + context "when active_job_propagate_traces is false" do + let(:configure_sentry) do + proc do |config| + config.traces_sample_rate = 1.0 + config.rails.active_job_propagate_traces = false + end + end + + it "does not inject trace headers into the job payload" do + within_parent_transaction do + successful_job.perform_later + end + + sentry_payload = last_enqueued_payload["_sentry"] + expect(sentry_payload&.dig("trace_propagation_headers")).to be_nil + end + + it "starts a new unconnected consumer transaction" do + parent_trace_id = nil + + within_parent_transaction do |parent| + parent_trace_id = parent.trace_id + successful_job.perform_later + end + + drain + + expect(consumer_transaction).not_to be_nil + expect(consumer_transaction.contexts.dig(:trace, :trace_id)).not_to eq(parent_trace_id) + end + end +end diff --git a/sentry-rails/spec/active_job/shared_examples/tracing/user_propagation.rb b/sentry-rails/spec/active_job/shared_examples/tracing/user_propagation.rb new file mode 100644 index 000000000..8619f743e --- /dev/null +++ b/sentry-rails/spec/active_job/shared_examples/tracing/user_propagation.rb @@ -0,0 +1,95 @@ +# frozen_string_literal: true + +RSpec.shared_examples "an ActiveJob backend that propagates Sentry user context through job payloads" do + let(:successful_job) do + job_fixture do + def perform; end + end + end + + let(:failing_job) do + job_fixture do + def perform + raise "boom from user_propagation spec" + end + end + end + + let(:full_user) do + { + id: "u1", + email: "alice@example.com", + username: "alice", + ip_address: "1.2.3.4", + segment: "vip" + } + end + + context "when send_default_pii is true" do + let(:configure_sentry) do + proc do |config| + config.traces_sample_rate = 1.0 + config.send_default_pii = true + end + end + + it "propagates only id, email, and username to the consumer transaction" do + Sentry.set_user(full_user) + + successful_job.perform_later + + # Simulate the cross-process boundary by clearing the producer scope + # before the consumer runs. Without this the consumer's with_scope + # inherits the user from the test thread and the test cannot tell + # whether propagation actually happened. + Sentry.set_user({}) + + drain + + expect(consumer_transaction).not_to be_nil + expect(consumer_transaction.user).to eq( + "id" => "u1", + "email" => "alice@example.com", + "username" => "alice" + ) + end + + it "propagates the whitelisted user to a captured error event" do + Sentry.set_user(full_user) + + failing_job.perform_later + Sentry.set_user({}) + + expect { drain }.to raise_error(RuntimeError, /boom from user_propagation spec/) + + error_event = sentry_events.find { |e| e.is_a?(Sentry::ErrorEvent) } + expect(error_event).not_to be_nil + expect(error_event.user).to eq( + "id" => "u1", + "email" => "alice@example.com", + "username" => "alice" + ) + end + end + + context "when send_default_pii is false" do + let(:configure_sentry) do + proc do |config| + config.traces_sample_rate = 1.0 + config.send_default_pii = false + end + end + + it "does not propagate user context to the consumer transaction" do + Sentry.set_user(full_user) + + successful_job.perform_later + Sentry.set_user({}) + + drain + + expect(consumer_transaction).not_to be_nil + expect(consumer_transaction.user).to eq({}) + end + end +end diff --git a/sentry-rails/spec/active_job/shared_examples/tracing/worker_hub_isolation.rb b/sentry-rails/spec/active_job/shared_examples/tracing/worker_hub_isolation.rb new file mode 100644 index 000000000..38fb12275 --- /dev/null +++ b/sentry-rails/spec/active_job/shared_examples/tracing/worker_hub_isolation.rb @@ -0,0 +1,87 @@ +# frozen_string_literal: true + +# These specs guard the hub-isolation contract around ActiveJob execution: +# inside +SentryReporter.record+ the SDK clones the main hub onto the +# current thread, runs the job under +with_scope+, and restores whatever +# hub was on the thread before. The restore matters in two real-world +# flows that are simulated below: +# +# * Inline jobs dispatched from a Rack request — the request thread +# already owns a hub (set up by +Sentry::Rack::CaptureExceptions+), +# and the rest of the request must keep seeing that hub after the +# job returns. +# * Recycled worker-pool threads — a previous job's scope must not +# leak into the next job on the same thread. +# +# We assert these properties through observable SDK output (event tags +# on the captured events / consumer transactions) +RSpec.shared_examples "an ActiveJob backend that isolates Sentry context per worker thread" do + let(:configure_sentry) { proc { |config| config.traces_sample_rate = 1.0 } } + + let(:tagging_job) do + job_fixture do + def perform + Sentry.get_current_scope.set_tags(layer: "job") + Sentry.capture_message("from-job") + end + end + end + + # Stand in for +Sentry::Rack::CaptureExceptions+: give the test thread + # its own hub cloned from main and mutate its scope, the way a live + # request would before dispatching an inline job. + before do + Sentry.clone_hub_to_current_thread + Sentry.get_current_scope.set_tags(layer: "request") + end + + it "runs the job under a fresh scope cloned from the main hub, not the caller's scope" do + tagging_job.perform_later + drain + + job_event = sentry_events.find { |e| e.is_a?(Sentry::ErrorEvent) && e.message == "from-job" } + expect(job_event).not_to be_nil + expect(job_event.tags[:layer]).to eq("job") + + expect(consumer_transaction).not_to be_nil + expect(consumer_transaction.tags[:layer]).to eq("job") + end + + it "restores the caller's hub so events captured after the job carry the caller's scope" do + tagging_job.perform_later + drain + + Sentry.capture_message("from-caller") + + caller_event = sentry_events.find { |e| e.is_a?(Sentry::ErrorEvent) && e.message == "from-caller" } + expect(caller_event).not_to be_nil + expect(caller_event.tags[:layer]).to eq("request") + end + + it "does not leak scope mutations between jobs that share a worker thread" do + job_a = job_fixture do + def perform + Sentry.get_current_scope.set_tags(run: "A") + Sentry.capture_message("job-a") + end + end + + job_b = job_fixture do + def perform + Sentry.get_current_scope.set_tags(run: "B") + Sentry.capture_message("job-b") + end + end + + job_a.perform_later + drain + job_b.perform_later + drain + + event_a = sentry_events.find { |e| e.is_a?(Sentry::ErrorEvent) && e.message == "job-a" } + event_b = sentry_events.find { |e| e.is_a?(Sentry::ErrorEvent) && e.message == "job-b" } + + expect(event_a.tags[:run]).to eq("A") + expect(event_b.tags[:run]).to eq("B") + end +end diff --git a/sentry-rails/spec/active_job/sidekiq_adapter_spec.rb b/sentry-rails/spec/active_job/sidekiq_adapter_spec.rb new file mode 100644 index 000000000..be7b15fd7 --- /dev/null +++ b/sentry-rails/spec/active_job/sidekiq_adapter_spec.rb @@ -0,0 +1,32 @@ +# frozen_string_literal: true + +require "spec_helper" + +# These specs only pass on Rails > 7.0 — older Rails/Sidekiq adapter +# combinations expose differences (e.g. enqueue payload shape, retry +# wiring) that the shared examples don't tolerate. Bail out before +# loading Sidekiq so older matrices don't trip on the gem either. +return if RAILS_VERSION <= 7.0 + +# Sidekiq is also gated in the Gemfile by Ruby version and platform. +# Matrices that don't bundle Sidekiq won't have it available — rescue +# LoadError and skip the whole file so they don't blow up on the +# `include_context "sidekiq adapter"` below. +begin + require "sidekiq" + if ::Sidekiq.respond_to?(:testing!) + ::Sidekiq.testing!(:fake) + else + require "sidekiq/testing" + end +rescue LoadError + return +end + +RSpec.describe "Sentry + ActiveJob on the sidekiq adapter", type: :job do + include_context "active_job backend harness", adapter: :sidekiq + include_context "sidekiq adapter" + + it_behaves_like "a Sentry-instrumented ActiveJob backend" + it_behaves_like "an ActiveJob backend that supports distributed tracing" +end diff --git a/sentry-rails/spec/active_job/support/delayed_job_adapter_context.rb b/sentry-rails/spec/active_job/support/delayed_job_adapter_context.rb new file mode 100644 index 000000000..38ef31aad --- /dev/null +++ b/sentry-rails/spec/active_job/support/delayed_job_adapter_context.rb @@ -0,0 +1,94 @@ +# frozen_string_literal: true + +# Adapter context for the :delayed_job ActiveJob backend. +# +# Composes with "active_job backend harness" to drive delayed_job via its +# ActiveRecord backend, reusing the dummy app's SQLite database (the +# +delayed_jobs+ table lives in spec/dummy/test_rails_app/db/schema.rb). +# No external service is required. +# +# This context deliberately does NOT require sentry-delayed_job. Loading +# it would install delayed_job's own plugin (which emits its own +# transactions / error reporting) and could register DelayedJobAdapter in +# skippable_job_adapters, short-circuiting the AJ extension under test. + +# delayed_job 4.2+ ships an ActiveJob adapter that inherits from +# ActiveJob::QueueAdapters::AbstractAdapter, which only exists in Rails +# 7.2+. Requiring delayed_job on older Rails drags that adapter in (the +# railtie pulls it during app initialization), raising NameError, so don't +# even load the gem there. The matching spec file applies the same +# Rails-version guard and skips. RAILS_VERSION isn't defined yet at +# support-load time, so read Rails.version directly. +return if ::Rails.version.to_f < 7.2 + +begin + require "delayed_job" + require "delayed_job_active_record" +rescue LoadError + # delayed_job isn't bundled on this matrix (e.g. JRuby). The matching + # spec file rescues the same LoadError and skips, so just don't define + # the context here. + return +end + +RSpec.shared_context "delayed_job adapter" do + # Instantiated once. DelayedJobAdapter itself is stateless, but we mirror + # the other adapter contexts (sidekiq, solid_queue) which memoize a + # single adapter to avoid per-example churn. + DELAYED_JOB_ADAPTER_FOR_TEST = ::ActiveJob::QueueAdapters::DelayedJobAdapter.new + + def queue_adapter_for_test + DELAYED_JOB_ADAPTER_FOR_TEST + end + + def reset_adapter(_adapter) + ::Delayed::Job.delete_all + end + + def drain(at: nil) + # Drive each enqueued Delayed::Job record straight through + # +JobWrapper#perform+ (== +ActiveJob::Base.execute+) rather than + # +Delayed::Worker#work_off+. The worker would swallow the perform + # exception (recording it on the record and rescheduling via + # delayed_job's own attempts/max_attempts machinery), but the shared + # examples rely on the worker exception propagating out of +drain+ and + # on ActiveJob — not delayed_job — owning retry semantics. + # + # Each record is destroyed *before* it runs, the way a real worker + # reserves a job: a given AJ attempt is one Delayed::Job record that + # executes exactly once. ActiveJob's +retry_on+ re-enqueues a *fresh* + # record, which the loop then picks up — so retries cascade within a + # single drain, and a final, attempt-exhausting raise leaves nothing + # runnable behind for a subsequent drain to re-run. + run = lambda do + loop do + record = ::Delayed::Job + .where("run_at IS NULL OR run_at <= ?", Time.current) + .order(Arel.sql("run_at IS NULL DESC"), :run_at, :id) + .first + break unless record + + payload = record.payload_object + record.destroy + payload.perform + end + end + + # Only wrap in travel_to when the caller explicitly asks for a future + # time (e.g. the scheduled_at example) — otherwise a nested travel_to + # from a spec that already called +travel+ would raise. + at ? travel_to(at, &run) : run.call + end + + def last_enqueued_payload + record = ::Delayed::Job.order(:id).last + return nil if record.nil? + + # delayed_job stores the AJ-on-DelayedJob wrapper (carrying the + # serialized job_data hash) YAML-encoded in the +handler+ column. The + # deserialized +payload_object+ is the JobWrapper; +job_data+ is the + # string-keyed ActiveJob payload (so callers can read + # +payload["_sentry"]+, +payload["arguments"]+, etc.). + record.payload_object.job_data + end +end diff --git a/sentry-rails/spec/active_job/support/harness.rb b/sentry-rails/spec/active_job/support/harness.rb index 4e489fb20..b9a4b9af7 100644 --- a/sentry-rails/spec/active_job/support/harness.rb +++ b/sentry-rails/spec/active_job/support/harness.rb @@ -1,50 +1,122 @@ # frozen_string_literal: true +# Backend-agnostic harness for the common ActiveJob spec suite. +# +# This file contains zero knowledge of any specific queue adapter. Each +# adapter spec composes this shared context with its own adapter shared +# context (e.g. "test adapter", "sidekiq adapter") that fills in the +# adapter-specific hooks below. +# +# Adapter selection goes through ActiveJob::TestHelper's official +# +queue_adapter_for_test+ hook. TestHelper's +before_setup+ reads it +# and installs the returned adapter as Base's +_test_adapter+, which the +# +queue_adapter+ reader prefers over the underlying +_queue_adapter+. +# This avoids fighting with the railtie/dummy-app defaults and keeps the +# harness from reaching past TestHelper into private internals. RSpec.shared_context "active_job backend harness" do |adapter:| let(:adapter) { adapter } let(:configure_sentry) { proc { } } + # Boot the dummy Rails app ONCE per example group. Each +make_basic_app+ + # call creates a new +Rails::Application+ subclass and re-runs every + # initializer — including Sidekiq's railtie (which appends two entries + # to +Sidekiq.@config_blocks+) and Rails' route-drawing (which also + # accumulates). Repeating that for every example caused per-example + # time to grow ~3× over the run, which is what pushed the + # Ruby 3.4 + Rails 8.1.3 CI matrix past the 15-min timeout. + # + # We reproduce the relevant per-example pieces of the Sentry/Rails + # railtie's +config.after_initialize+ block below (re-init Sentry, + # re-activate tracing/structured logging, re-register AJ event + # handlers) so each example still gets a fresh Sentry configuration. + before(:all) do + make_basic_app + end + around do |example| - make_basic_app(&configure_sentry) - setup_sentry_test + Sentry.init do |config| + config.release = "beta" + config.dsn = "http://12345:67890@sentry.localdomain:3000/sentry/42" + config.transport.transport_class = Sentry::DummyTransport + config.background_worker_threads = 0 + config.include_local_variables = true + configure_sentry.call(config, ::Rails.application) if configure_sentry + end - ::ActiveJob::Base.queue_adapter = adapter + # Mirror the bits of Sentry::Rails::Railtie's after_initialize hook + # that need to run AFTER Sentry.init each example — the one-time + # extensions (controller methods, streaming reporter, backtrace + # cleanup callback, etc.) were already wired up by the initial + # make_basic_app in before(:all) and persist for the rest of the + # group. + if Sentry.configuration.tracing_enabled? && Sentry.configuration.instrumenter == :sentry + Sentry::Rails::Tracing.register_subscribers(Sentry.configuration.rails.tracing_subscribers) + Sentry::Rails::Tracing.subscribe_tracing_events + Sentry::Rails::Tracing.patch_active_support_notifications + end + + if Sentry.configuration.rails.structured_logging.enabled? && Sentry.configuration.enable_logs + Sentry::Rails::StructuredLogging.attach(Sentry.configuration.rails.structured_logging) + end + + if defined?(Sentry::Rails::ActiveJobExtensions) + Sentry::Rails::ActiveJobExtensions::SentryReporter.register_event_handlers + end + + setup_sentry_test boot_adapter(adapter) - example.run + with_adapter_active { example.run } ensure reset_adapter(adapter) - teardown_sentry_test end + # ActiveJob::TestHelper hook. Returning a non-nil adapter instance + # causes TestHelper to install it as Base's +_test_adapter+ for the + # duration of each example. Adapter contexts override this. + def queue_adapter_for_test + end + + # Optional block wrapper around +example.run+. The default just yields. + # Adapter contexts override this when the adapter needs a scoped + # runtime mode active during enqueue + drain (e.g. wrapping the + # example in +Sidekiq::Testing.fake!+ so fake mode is scoped per + # example without touching global state). + def with_adapter_active(&block) + yield + end + + # Per-adapter environment setup hook. Backends extend this when they + # need to load schemas, start supervisors, or otherwise prepare the + # environment. def boot_adapter(_adapter) - # Per-adapter setup hook. Backends extend this when they need to load - # schemas, start supervisors, or otherwise prepare the environment. end + # Per-adapter environment teardown hook. Backends extend this to + # truncate tables or otherwise clean up state between examples. def reset_adapter(_adapter) - # Per-adapter teardown hook. Backends extend this to truncate tables - # or otherwise clean up state between examples. end + # Drive the adapter to completion. Each adapter context must override + # this with a strategy that drains its queue (and any retried/scheduled + # jobs cascaded by the drain) to completion. def drain(at: nil) - case adapter - when :test - if RAILS_VERSION < 6.0 - # Rails 5.2: perform_enqueued_jobs always requires a block and only runs - # jobs enqueued *inside* the block. Manually flush already-enqueued jobs. - jobs = queue_adapter.enqueued_jobs.dup - queue_adapter.enqueued_jobs.clear - jobs.each { |payload| send(:instantiate_job, payload).perform_now } - else - kwargs = at ? { at: at } : {} - perform_enqueued_jobs(**kwargs) - end - else - raise NotImplementedError, "active_job backend harness has no drain strategy for adapter: #{adapter.inspect}" - end + raise NotImplementedError, + "active_job backend harness has no drain strategy for adapter: #{adapter.inspect}. " \ + "Include the matching adapter shared context (e.g. 'test adapter', 'sidekiq adapter')." + end + + # Return the most recently enqueued job's serialized payload as a Hash + # keyed by ActiveJob's stringified field names (so callers can read + # +payload["_sentry"]+, +payload["arguments"]+, etc.). Each adapter + # context must override this since the on-the-wire shape differs per + # backend. + def last_enqueued_payload + raise NotImplementedError, + "active_job backend harness has no last_enqueued_payload accessor for adapter: #{adapter.inspect}. " \ + "Include the matching adapter shared context (e.g. 'test adapter', 'sidekiq adapter')." end def job_fixture(name = nil, &block) @@ -53,4 +125,20 @@ def job_fixture(name = nil, &block) stub_const(name, klass) klass end + + def transactions + sentry_events.select { |e| e.is_a?(Sentry::TransactionEvent) } + end + + def consumer_transaction + transactions.find { |t| t.contexts.dig(:trace, :op) == "queue.active_job" } + end + + def within_parent_transaction(name: "parent.test", op: "test") + txn = Sentry.start_transaction(name: name, op: op) + Sentry.get_current_scope.set_span(txn) if txn + yield(txn) + ensure + txn&.finish + end end diff --git a/sentry-rails/spec/active_job/support/resque_adapter_context.rb b/sentry-rails/spec/active_job/support/resque_adapter_context.rb new file mode 100644 index 000000000..79d084133 --- /dev/null +++ b/sentry-rails/spec/active_job/support/resque_adapter_context.rb @@ -0,0 +1,127 @@ +# frozen_string_literal: true + +# Adapter context for the :resque ActiveJob backend. +# +# Composes with "active_job backend harness" to drive resque entirely +# in-memory via mock_redis — no live Redis required, mirroring how the +# sidekiq context uses Sidekiq's fake mode. resque-scheduler is loaded so +# the AJ adapter's +enqueue_at+ works; ActiveJob routes both scheduled +# jobs (+wait:+) and +retry_on+ re-enqueues through +enqueue_at+, so the +# delayed schedule has to be functional for the shared retry/scheduled +# examples to pass. +# +# This context deliberately does NOT require sentry-resque. Loading it +# would install resque's own Sentry integration (its server-side error +# capture) and could register ResqueAdapter in skippable_job_adapters, +# short-circuiting the AJ extension under test. + +# resque 3+ ships an ActiveJob adapter that inherits from +# ActiveJob::QueueAdapters::AbstractAdapter, which only exists in Rails +# 7.2+. Requiring resque on older Rails drags that adapter in (it pulls it +# during app initialization), raising NameError, so don't even load the gem +# there. The matching spec file applies the same Rails-version guard and +# skips. RAILS_VERSION isn't defined yet at support-load time, so read +# Rails.version directly. +return if ::Rails.version.to_f < 7.2 + +begin + require "mock_redis" + require "resque" + require "resque-scheduler" +rescue LoadError + # resque/mock_redis isn't bundled on this matrix (e.g. JRuby). The + # matching spec file rescues the same LoadError and skips, so just + # don't define the context here. + return +end + +RSpec.shared_context "resque adapter" do + # ResqueAdapter is stateless; memoized once to mirror the other adapter + # contexts (sidekiq, solid_queue). + RESQUE_ADAPTER_FOR_TEST = ::ActiveJob::QueueAdapters::ResqueAdapter.new + + def queue_adapter_for_test + RESQUE_ADAPTER_FOR_TEST + end + + # Point resque at a fresh in-memory Redis for every example so no queue, + # delayed-schedule, or +queues+ set state leaks between examples. + # Resque memoizes its data store, so reassigning +Resque.redis+ rebuilds + # it against the new MockRedis. + def boot_adapter(_adapter) + ::Resque.redis = ::MockRedis.new + ::Resque.logger = ::Logger.new(nil) + end + + def drain(at: nil) + # resque has no in-process "run everything" helper, so we reserve and + # perform jobs ourselves. +Resque::Job#perform+ runs the job and + # re-raises any exception (after its failure hooks), which preserves + # the +expect { drain }.to raise_error(...)+ semantics the shared + # examples rely on. ActiveJob — not resque — owns retry: a failing + # +retry_on+ job re-enqueues itself through the adapter's +enqueue_at+ + # into resque-scheduler's delayed set, so each loop iteration first + # promotes any now-due delayed jobs back onto their queues before + # reserving. That cascades retries (and +wait: 0+ re-enqueues) to + # completion within a single drain. + run = lambda do + loop do + promote_due_delayed_jobs(Time.current) + job = reserve_next_job + break if job.nil? + + job.perform + end + end + + # Only wrap in travel_to when the caller explicitly asks for a future + # time (e.g. the scheduled_at example) so that delayed jobs scheduled + # in the future become due — otherwise a nested travel_to from a spec + # that already called +travel+ would raise. + at ? travel_to(at, &run) : run.call + end + + def last_enqueued_payload + # The AJ-on-resque adapter wraps the serialized AJ payload as the sole + # element of the resque job's +args+ (see ResqueAdapter#enqueue / + # JobWrapper.perform). resque pushes to the tail and pops from the + # head, so the most recently enqueued job sits at the end of its + # queue. The shared example that reads this enqueues a single job, so + # returning the tail of the first non-empty queue is sufficient. + ::Resque.queues.each do |queue| + size = ::Resque.size(queue) + next if size.zero? + + item = ::Resque.peek(queue, size - 1) + return item["args"].first if item + end + + nil + end + + private + + # Move every delayed job whose scheduled timestamp is at or before + # +up_to+ out of resque-scheduler's delayed set and back onto its + # destination queue, ready to be reserved. + def promote_due_delayed_jobs(up_to) + while (timestamp = ::Resque.next_delayed_timestamp(up_to)) + while (item = ::Resque.next_item_for_timestamp(timestamp)) + klass = ::Resque.constantize(item["class"]) + queue = item["queue"] || ::Resque.queue_from_class(klass) + ::Resque.enqueue_to(queue, klass, *item["args"]) + end + end + end + + # Reserve (pop) the next job from any non-empty queue, or nil when every + # queue is empty. + def reserve_next_job + ::Resque.queues.each do |queue| + job = ::Resque.reserve(queue) + return job if job + end + + nil + end +end diff --git a/sentry-rails/spec/active_job/support/sidekiq_adapter_context.rb b/sentry-rails/spec/active_job/support/sidekiq_adapter_context.rb new file mode 100644 index 000000000..76e99cdcf --- /dev/null +++ b/sentry-rails/spec/active_job/support/sidekiq_adapter_context.rb @@ -0,0 +1,89 @@ +# frozen_string_literal: true + +# Adapter context for the :sidekiq ActiveJob backend. +# +# Composes with "active_job backend harness" to drive Sidekiq via its +# in-memory testing mode. No Redis required: jobs are JSON-round-tripped +# into Sidekiq's class-keyed jobs hash at enqueue time and run in-process +# by drain_all. +# +# This context deliberately does NOT require sentry-sidekiq. Loading +# sentry-sidekiq would install Sidekiq's client/server middleware (which +# emits its own queue.process transactions) and register SidekiqAdapter +# in skippable_job_adapters (which short-circuits the AJ extension under +# test). +begin + require "sidekiq" + # Sidekiq 8.1+ deprecates `require "sidekiq/testing"` in favor of + # `Sidekiq.testing!`, which loads the same test API without the + # implicit side effect of activating :fake mode at require time. + if ::Sidekiq.respond_to?(:testing!) + ::Sidekiq.testing!(:fake) + else + require "sidekiq/testing" + end +rescue LoadError + # Sidekiq isn't bundled on this matrix (e.g. Rails 5.2). The matching + # spec file is gated on RAILS_VERSION so it won't try to use this + # context; skip defining it. + return +end + +RSpec.shared_context "sidekiq adapter" do + # Instantiated once. Each SidekiqAdapter.new appends blocks to + # Sidekiq's internal @config_blocks list (configure_server) and adds + # an on(:quiet) callback (configure_client). Creating a fresh + # adapter per example accumulated several hundred entries across a + # full suite run and showed up as compounding per-example slowdown. + SIDEKIQ_ADAPTER_FOR_TEST = ::ActiveJob::QueueAdapters::SidekiqAdapter.new + + def queue_adapter_for_test + SIDEKIQ_ADAPTER_FOR_TEST + end + + # Scope fake mode to this example only — the block form of +fake!+ + # uses a per-thread flag that auto-restores when the block exits, so + # parallel specs and any global Sidekiq mode set elsewhere are left + # untouched. Wrapping +example.run+ ensures both the +perform_later+ + # (enqueue) and +drain+ (consume) paths see fake mode. + def with_adapter_active(&block) + if ::Sidekiq.respond_to?(:testing!) + ::Sidekiq.testing!(:fake, &block) + else + ::Sidekiq::Testing.fake!(&block) + end + end + + def drain(at: nil) + # +drain_all+ loops +while jobs.any?+, so retried jobs (re-enqueued + # by ActiveJob's +retry_on+ during a drain pass) cascade within a + # single call. Exceptions raised by the worker propagate out — + # preserving the +expect { drain }.to raise_error(...)+ semantics + # the shared examples rely on. + sidekiq_job_class.drain_all + end + + def reset_adapter(_adapter) + sidekiq_job_class.clear_all + end + + def last_enqueued_payload + job = ::ActiveJob::QueueAdapters::SidekiqAdapter::JobWrapper.jobs.last + return nil if job.nil? + + # The AJ-on-Sidekiq adapter wraps the AJ payload as the first + # element of the Sidekiq job's args array (see + # +Sidekiq::ActiveJob::Wrapper#perform+ / + # +SidekiqAdapter::JobWrapper#perform+). + job["args"].first + end + + private + + # Sidekiq 8 renamed +Sidekiq::Worker+ to +Sidekiq::Job+ (with a + # back-compat alias). Reach for whichever is canonical on the + # installed version. + def sidekiq_job_class + defined?(::Sidekiq::Job) ? ::Sidekiq::Job : ::Sidekiq::Worker + end +end diff --git a/sentry-rails/spec/active_job/support/test_adapter_context.rb b/sentry-rails/spec/active_job/support/test_adapter_context.rb new file mode 100644 index 000000000..6b609d688 --- /dev/null +++ b/sentry-rails/spec/active_job/support/test_adapter_context.rb @@ -0,0 +1,95 @@ +# frozen_string_literal: true + +# Adapter context for the :test ActiveJob backend. +# +# Composes with "active_job backend harness". The harness owns the +# example lifecycle; this context owns everything specific to +# ActiveJob::QueueAdapters::TestAdapter (the Rails-5.2 payload- +# preservation shim, the drain loop, and the enqueued-payload +# accessor). + +# Rails 5.2's TestAdapter stores a minimal hash per enqueued job (only +# job class, args, queue) and its +instantiate_job+ recreates jobs via +# +.new(*args)+ — never calling our +deserialize+ override. That means +# the +_sentry+ payload injected by +serialize+ is silently discarded +# before the consumer ever sees it, breaking distributed-tracing +# propagation. +# +# This adapter subclass calls +job.serialize+ a second time after +super+ +# has stored the minimal hash and saves the full output alongside it. +# The drain then drives each job through +ActiveJob::Base.execute(full_payload)+, +# which goes through the normal deserialize → perform_now path and picks +# up the Sentry trace headers and user context that were captured at +# enqueue time. +class Rails52FullPayloadTestAdapter < ::ActiveJob::QueueAdapters::TestAdapter + def enqueue(job) + prev = enqueued_jobs.length + super + enqueued_jobs.last[:_sentry_full_payload] = job.serialize if enqueued_jobs.length > prev + end + + def enqueue_at(job, timestamp) + prev = enqueued_jobs.length + super + enqueued_jobs.last[:_sentry_full_payload] = job.serialize if enqueued_jobs.length > prev + end +end + +RSpec.shared_context "test adapter" do + def queue_adapter_for_test + # On Rails 5.2 swap in the augmented adapter so the drain can replay + # the full serialize payload. On Rails 6.0+ returning nil lets + # TestHelper install its own TestAdapter — the standard path. + Rails52FullPayloadTestAdapter.new if RAILS_VERSION < 6.0 + end + + def drain(at: nil) + # Loop until the queue is empty so retries (which re-enqueue during + # a drain pass) are cascaded through to completion. Both Rails 5.2's + # manual flush and Rails 6+'s +perform_enqueued_jobs(no block)+ + # operate on a snapshot, so a single pass would only run jobs that + # existed before draining started. + loop do + break if queue_adapter.enqueued_jobs.empty? + + if RAILS_VERSION < 6.1 + # Rails 5.2 and 6.0 both need a manual flush: + # - 5.2's +perform_enqueued_jobs+ always requires a block and + # only runs jobs enqueued *inside* the block, so it can't + # drain a pre-existing queue at all. + # - 6.0's +flush_enqueued_jobs+ iterates with +perform_now+ + # but doesn't remove payloads from +enqueued_jobs+ (the + # +delete(payload)+ call was only added in 6.1), so looping + # on +enqueued_jobs.empty?+ would spin forever. + # On 5.2 with Rails52FullPayloadTestAdapter, each payload also + # carries a +:_sentry_full_payload+ key with the complete + # serialize output. Drive those jobs through +Base.execute+ so + # our deserialize override runs and populates +_sentry+ + # before +perform_now+. + jobs = queue_adapter.enqueued_jobs.dup + queue_adapter.enqueued_jobs.clear + jobs.each do |payload| + if (full = payload[:_sentry_full_payload]) + ::ActiveJob::Base.execute(full) + else + send(:instantiate_job, payload).perform_now + end + end + else + kwargs = at ? { at: at } : {} + perform_enqueued_jobs(**kwargs) + end + end + end + + def last_enqueued_payload + payload = queue_adapter.enqueued_jobs.last + return nil if payload.nil? + + # On Rails < 6.0 we mirror the full serialize output under a side + # key (see Rails52FullPayloadTestAdapter above). Prefer that when + # present so callers see the same string-keyed shape they'd see on + # 6.0+. + payload[:_sentry_full_payload] || payload + end +end diff --git a/sentry-rails/spec/active_job/test_adapter_spec.rb b/sentry-rails/spec/active_job/test_adapter_spec.rb index 4d5e704de..e3093d938 100644 --- a/sentry-rails/spec/active_job/test_adapter_spec.rb +++ b/sentry-rails/spec/active_job/test_adapter_spec.rb @@ -4,6 +4,8 @@ RSpec.describe "Sentry + ActiveJob on the test adapter", type: :job do include_context "active_job backend harness", adapter: :test + include_context "test adapter" it_behaves_like "a Sentry-instrumented ActiveJob backend" + it_behaves_like "an ActiveJob backend that supports distributed tracing" end diff --git a/sentry-rails/spec/dummy/test_rails_app/app/controllers/hello_controller.rb b/sentry-rails/spec/dummy/test_rails_app/app/controllers/hello_controller.rb index 284a16053..68d996f6a 100644 --- a/sentry-rails/spec/dummy/test_rails_app/app/controllers/hello_controller.rb +++ b/sentry-rails/spec/dummy/test_rails_app/app/controllers/hello_controller.rb @@ -38,4 +38,11 @@ def with_custom_instrumentation def not_found raise ActionController::BadRequest end + + def inline_job + Sentry.get_current_scope.set_tags(layer: "request") + InlineJob.perform_now + Sentry.capture_message("from-request-after") + head :ok + end end diff --git a/sentry-rails/spec/dummy/test_rails_app/config/application.rb b/sentry-rails/spec/dummy/test_rails_app/config/application.rb index 6275220de..25f34bc18 100644 --- a/sentry-rails/spec/dummy/test_rails_app/config/application.rb +++ b/sentry-rails/spec/dummy/test_rails_app/config/application.rb @@ -115,6 +115,7 @@ def configure get "/not_found", to: "hello#not_found" get "/world", to: "hello#world" get "/with_custom_instrumentation", to: "hello#with_custom_instrumentation" + get "/inline_job", to: "hello#inline_job" resources :posts, only: [:index, :show] do member do diff --git a/sentry-rails/spec/dummy/test_rails_app/db/schema.rb b/sentry-rails/spec/dummy/test_rails_app/db/schema.rb index b73ea8e00..ad1e44921 100644 --- a/sentry-rails/spec/dummy/test_rails_app/db/schema.rb +++ b/sentry-rails/spec/dummy/test_rails_app/db/schema.rb @@ -33,6 +33,24 @@ t.integer "post_id" end + # Backs the :delayed_job ActiveJob adapter in the common ActiveJob spec + # suite (see spec/active_job/support/delayed_job_adapter_context.rb). + # Mirrors delayed_job_active_record's generator migration. + create_table "delayed_jobs", force: :cascade do |t| + t.integer "priority", default: 0, null: false + t.integer "attempts", default: 0, null: false + t.text "handler", null: false + t.text "last_error" + t.datetime "run_at" + t.datetime "locked_at" + t.datetime "failed_at" + t.string "locked_by" + t.string "queue" + t.datetime "created_at" + t.datetime "updated_at" + t.index ["priority", "run_at"], name: "delayed_jobs_priority" + end + create_table "posts", force: :cascade do |t| t.string "title" t.datetime "created_at", precision: 6, null: false diff --git a/sentry-rails/spec/sentry/rails/active_job_hub_isolation_spec.rb b/sentry-rails/spec/sentry/rails/active_job_hub_isolation_spec.rb new file mode 100644 index 000000000..cf6d0fef3 --- /dev/null +++ b/sentry-rails/spec/sentry/rails/active_job_hub_isolation_spec.rb @@ -0,0 +1,43 @@ +# frozen_string_literal: true + +require "spec_helper" + +RSpec.describe "ActiveJob hub isolation through the Rails request stack", type: :request do + let(:transport) { Sentry.get_current_client.transport } + + before do + stub_const("InlineJob", Class.new(::ActiveJob::Base) do + def perform + Sentry.get_current_scope.set_tags(layer: "job") + Sentry.capture_message("from-job") + end + end) + + make_basic_app do |config| + config.traces_sample_rate = 1.0 + end + end + + it "isolates the job's scope from the request's and restores the request hub after the job" do + get "/inline_job" + + expect(response).to have_http_status(:ok) + + events = transport.events + + job_event = events.find { |e| e.is_a?(Sentry::ErrorEvent) && e.message == "from-job" } + request_event = events.find { |e| e.is_a?(Sentry::ErrorEvent) && e.message == "from-request-after" } + consumer_transaction = events.find do |e| + e.is_a?(Sentry::TransactionEvent) && e.contexts.dig(:trace, :op) == "queue.active_job" + end + + expect(job_event).not_to be_nil + expect(job_event.tags[:layer]).to eq("job") + + expect(consumer_transaction).not_to be_nil + expect(consumer_transaction.tags[:layer]).to eq("job") + + expect(request_event).not_to be_nil + expect(request_event.tags[:layer]).to eq("request") + end +end diff --git a/sentry-rails/spec/sentry/rails/configuration_spec.rb b/sentry-rails/spec/sentry/rails/configuration_spec.rb index 7c64a12cd..6988d205d 100644 --- a/sentry-rails/spec/sentry/rails/configuration_spec.rb +++ b/sentry-rails/spec/sentry/rails/configuration_spec.rb @@ -72,6 +72,12 @@ class MySubscriber; end end end + describe "#active_job_propagate_traces" do + it "has correct default value" do + expect(subject.active_job_propagate_traces).to be(true) + end + end + describe "#structured_logging" do let(:config) { Sentry.configuration.rails } diff --git a/sentry-rails/spec/sentry/rails/tracing/active_storage_subscriber_spec.rb b/sentry-rails/spec/sentry/rails/tracing/active_storage_subscriber_spec.rb index f41b379e1..ec74550f3 100644 --- a/sentry-rails/spec/sentry/rails/tracing/active_storage_subscriber_spec.rb +++ b/sentry-rails/spec/sentry/rails/tracing/active_storage_subscriber_spec.rb @@ -44,14 +44,13 @@ request_transaction = transport.events.last.to_h expect(request_transaction[:type]).to eq("transaction") - expect(request_transaction[:spans].count).to eq(2) - - span = request_transaction[:spans][1] - expect(span[:op]).to eq("file.service_upload.active_storage") - expect(span[:origin]).to eq("auto.file.rails") - expect(span[:description]).to eq("Disk") - expect(span.dig(:data, :key)).to be_nil - expect(span[:trace_id]).to eq(request_transaction.dig(:contexts, :trace, :trace_id)) + + upload_span = request_transaction[:spans].find { |s| s[:op] == "file.service_upload.active_storage" } + expect(upload_span).not_to be_nil + expect(upload_span[:origin]).to eq("auto.file.rails") + expect(upload_span[:description]).to eq("Disk") + expect(upload_span.dig(:data, :key)).to be_nil + expect(upload_span[:trace_id]).to eq(request_transaction.dig(:contexts, :trace, :trace_id)) end end @@ -73,10 +72,10 @@ request_transaction = transport.events.last.to_h expect(request_transaction[:type]).to eq("transaction") - expect(request_transaction[:spans].count).to eq(2) - span = request_transaction[:spans][1] - expect(span.dig(:data, :key)).to eq(p.cover.key) + upload_span = request_transaction[:spans].find { |s| s[:op] == "file.service_upload.active_storage" } + expect(upload_span).not_to be_nil + expect(upload_span.dig(:data, :key)).to eq(p.cover.key) end end diff --git a/spec/apps/rails-mini/Gemfile b/spec/apps/rails-mini/Gemfile index 30350e931..000192f9b 100644 --- a/spec/apps/rails-mini/Gemfile +++ b/spec/apps/rails-mini/Gemfile @@ -13,3 +13,6 @@ gem 'sqlite3' gem 'sentry-ruby', path: Pathname(__dir__).join("../../..").realpath gem 'sentry-rails', path: Pathname(__dir__).join("../../..").realpath +gem 'sidekiq' +gem 'resque' +gem 'delayed_job_active_record' diff --git a/spec/apps/rails-mini/app.rb b/spec/apps/rails-mini/app.rb index 8c1f8db33..1a096c621 100644 --- a/spec/apps/rails-mini/app.rb +++ b/spec/apps/rails-mini/app.rb @@ -10,6 +10,13 @@ require "action_controller/railtie" require "active_record/railtie" require "active_job/railtie" +require "time" + +# Point the broker-backed adapters at Redis. Sidekiq reads REDIS_URL on +# its own; Resque does not, so wire it up explicitly. Defaults to a local +# Redis when REDIS_URL is unset (e.g. running outside Docker Compose). +redis_url = ENV.fetch("REDIS_URL", "redis://localhost:6379") +Resque.redis = redis_url if defined?(Resque) class RailsMiniApp < Rails::Application config.hosts = nil @@ -20,6 +27,29 @@ class RailsMiniApp < Rails::Application config.api_only = true config.force_ssl = false + # Select the ActiveJob queue adapter from the environment. This must be + # assigned in the application body (not inside an `initializer` block): + # ActiveJob's own `active_job.set_configs` initializer reads + # `config.active_job.queue_adapter` and applies it via an `on_load` + # hook that fires during boot, before app-defined initializers run. An + # assignment made from an initializer would therefore be a silent no-op + # and every adapter would fall back to the default :async. + SUPPORTED_ACTIVE_JOB_ADAPTERS = { + "async" => :async, + "inline" => :inline, + "sidekiq" => :sidekiq, + "resque" => :resque, + "delayed_job" => :delayed_job + }.freeze + + adapter_name = ENV.fetch("SENTRY_E2E_ACTIVE_JOB_ADAPTER", "async").to_s.downcase + unless SUPPORTED_ACTIVE_JOB_ADAPTERS.key?(adapter_name) + raise "Unsupported ActiveJob adapter: #{adapter_name}" + end + + config.active_job.queue_adapter = SUPPORTED_ACTIVE_JOB_ADAPTERS[adapter_name] + config.x.active_job_adapter_name = adapter_name + def debug_log_path @log_path ||= begin path = Pathname(__dir__).join("../../../log") @@ -211,48 +241,64 @@ def set_cors_headers class JobsController < ActionController::Base before_action :set_cors_headers - def sample_job - job = SampleJob.perform_later("Hello from Rails mini app!") + JOB_CLASSES = { + "sample" => SampleJob, + "database" => DatabaseJob, + "failing" => FailingJob + }.freeze - Sentry.logger.info("SampleJob enqueued", job_id: job.job_id) + def enqueue + job_type = params[:job_type] || params[:id] || params[:job] || "sample" + job_class = JOB_CLASSES[job_type.to_s] + raise ActionController::BadRequest.new("Unsupported job type: #{job_type}") unless job_class - render json: { - message: "SampleJob enqueued successfully", - job_id: job.job_id, - job_class: job.class.name - } - end + args = Array(params[:args] || []) + args = JSON.parse(args) if args.is_a?(String) && args.strip.start_with?("[") - def database_job - title = params[:title] || "Test Post from Job" - job = DatabaseJob.perform_later(title) + job = schedule_job(job_class, args) - Sentry.logger.info("DatabaseJob enqueued", job_id: job.job_id, post_title: title) + Sentry.logger.info( + "#{job_class.name} enqueued", + job_id: job.job_id, + job_class: job.class.name, + args: args + ) - render json: { - message: "DatabaseJob enqueued successfully", + response_body = { + message: "#{job_class.name} enqueued successfully", job_id: job.job_id, job_class: job.class.name, - post_title: title + args: args } - end - def failing_job - should_fail = params[:should_fail] != "false" - job = FailingJob.perform_later(should_fail) + if job_type.to_s == "database" + response_body[:post_title] = args[0] || "Test Post from Job" + elsif job_type.to_s == "failing" + response_body[:should_fail] = args.empty? ? true : args.first + end - Sentry.logger.info("FailingJob enqueued", job_id: job.job_id, should_fail: should_fail) + render json: response_body + end + def active_job_adapter render json: { - message: "FailingJob enqueued successfully", - job_id: job.job_id, - job_class: job.class.name, - should_fail: should_fail + adapter: Rails.configuration.x.active_job_adapter_name, + queue_adapter: ActiveJob::Base.queue_adapter.class.name } end private + def schedule_job(job_class, args) + if params[:wait_seconds].present? + job_class.set(wait: params[:wait_seconds].to_i.seconds).perform_later(*args) + elsif params[:wait_until].present? + job_class.set(wait_until: Time.parse(params[:wait_until])).perform_later(*args) + else + job_class.perform_later(*args) + end + end + def set_cors_headers response.headers['Access-Control-Allow-Origin'] = '*' response.headers['Access-Control-Allow-Methods'] = 'GET, POST, PUT, DELETE, OPTIONS' @@ -262,23 +308,45 @@ def set_cors_headers RailsMiniApp.initialize! -ActiveRecord::Schema.define do - create_table :posts, force: true do |t| - t.string :title, null: false - t.text :content - t.timestamps - end +# The web process owns schema setup. The worker (worker.rb) boots the same +# app in parallel and sets SENTRY_E2E_SKIP_DB_SETUP=true to skip this block, +# avoiding a concurrent `force: true` drop/create race on the shared SQLite +# file; it waits for these tables to appear before processing jobs. +unless ENV["SENTRY_E2E_SKIP_DB_SETUP"] == "true" + ActiveRecord::Schema.define do + create_table :posts, force: true do |t| + t.string :title, null: false + t.text :content + t.timestamps + end + + create_table :users, force: true do |t| + t.string :name, null: false + t.string :email + t.timestamps + end - create_table :users, force: true do |t| - t.string :name, null: false - t.string :email - t.timestamps + # Backing store for the :delayed_job adapter. Created unconditionally so + # the same schema works regardless of which adapter the worker uses. + create_table :delayed_jobs, force: true do |t| + t.integer :priority, default: 0, null: false + t.integer :attempts, default: 0, null: false + t.text :handler, null: false + t.text :last_error + t.datetime :run_at + t.datetime :locked_at + t.datetime :failed_at + t.string :locked_by + t.string :queue + t.timestamps null: true + end + add_index :delayed_jobs, [:priority, :run_at], name: "delayed_jobs_priority" end -end -Post.create!(title: "Welcome Post", content: "Welcome to the Rails mini app!") -Post.create!(title: "Sample Post", content: "This is a sample post for testing.") -User.create!(name: "Test User", email: "test@example.com") + Post.create!(title: "Welcome Post", content: "Welcome to the Rails mini app!") + Post.create!(title: "Sample Post", content: "This is a sample post for testing.") + User.create!(name: "Test User", email: "test@example.com") +end RailsMiniApp.routes.draw do get '/health', to: 'events#health' @@ -291,9 +359,9 @@ def set_cors_headers post '/posts', to: 'posts#create' get '/posts/:id', to: 'posts#show' - post '/jobs/sample', to: 'jobs#sample_job' - post '/jobs/database', to: 'jobs#database_job' - post '/jobs/failing', to: 'jobs#failing_job' + post '/jobs/enqueue', to: 'jobs#enqueue' + post '/jobs/:job_type', to: 'jobs#enqueue' + get '/jobs/adapter', to: 'jobs#active_job_adapter' match '*path', to: proc { |env| [200, { diff --git a/spec/apps/rails-mini/worker.rb b/spec/apps/rails-mini/worker.rb new file mode 100644 index 000000000..2ace18e6a --- /dev/null +++ b/spec/apps/rails-mini/worker.rb @@ -0,0 +1,51 @@ +# frozen_string_literal: true + +# Background worker entrypoint for the worker-based ActiveJob adapters +# (:sidekiq, :resque, :delayed_job). These adapters enqueue onto an +# external broker (Redis / the DB) and rely on a separate process to +# execute the job. The worker boots the same Rails + Sentry app as the +# web process, so the job's consumer transaction is emitted into the +# shared debug-transport log the e2e suite reads. +# +# :async and :inline run inside the web process and need no worker here. + +adapter = ENV.fetch("SENTRY_E2E_ACTIVE_JOB_ADAPTER", "async").to_s.downcase + +# The web process owns schema setup; the worker must not recreate the tables +# concurrently. Both processes share the same SQLite file. +ENV["SENTRY_E2E_SKIP_DB_SETUP"] = "true" + +# Sidekiq ships its own CLI that boots the app via -r; hand off to it +# directly instead of double-booting Rails in this process. SENTRY_E2E_SKIP_DB_SETUP +# is inherited by the exec'd process, so it skips schema setup too. +if adapter == "sidekiq" + exec("bundle", "exec", "sidekiq", "-r", "./app.rb", "-c", "2", "-q", "default") +end + +require_relative "app" + +# Wait for the web process to finish creating the schema before consuming +# jobs (the `posts` table is created in the same block as the others). +60.times do + break if ActiveRecord::Base.connection.table_exists?(:posts) + + sleep 0.5 +end + +case adapter +when "resque" + # Process every queue in-process (no fork) so the Sentry SDK state set + # up at boot stays intact while the job runs. + queues = ENV.fetch("QUEUES", "*").split(",") + ENV["FORK_PER_JOB"] ||= "false" + worker = Resque::Worker.new(*queues) + worker.work(ENV.fetch("RESQUE_INTERVAL", "0.5").to_f) +when "delayed_job" + Delayed::Worker.new(sleep_delay: 0.5, quiet: false).start +else + # :async and :inline run jobs inside the web process. Stay alive as an + # idle no-op so this stays a uniform, long-running service under process + # supervisors (mise `e2e:serve`, Docker Compose) regardless of adapter. + warn "No external worker needed for adapter: #{adapter.inspect}; idling." + sleep +end diff --git a/spec/apps/svelte-mini/src/App.svelte b/spec/apps/svelte-mini/src/App.svelte index f7a93b0a6..bc21def22 100644 --- a/spec/apps/svelte-mini/src/App.svelte +++ b/spec/apps/svelte-mini/src/App.svelte @@ -2,6 +2,9 @@ let loading = false; let result = ""; + let jobLoading = false; + let jobResult = ""; + async function triggerError() { loading = true; try { @@ -24,6 +27,29 @@ loading = false; } } + + async function triggerJob() { + jobLoading = true; + try { + const response = await fetch(`${SENTRY_E2E_RAILS_APP_URL}/jobs/sample`, { + method: "POST", + headers: { + "Content-Type": "application/json", + }, + }); + + if (response.ok) { + const data = await response.json(); + jobResult = `Job: ${JSON.stringify(data)}`; + } else { + jobResult = `Error: ${response.status} ${response.statusText}`; + } + } catch (error) { + jobResult = `Error: ${error.message}`; + } finally { + jobLoading = false; + } + }
@@ -43,6 +69,23 @@
{result}
{/if} + +

+ Click the button to enqueue an ActiveJob in the Rails app — distributed + tracing should connect this fetch, the Rails controller, the + queue.publish span, and the async-executed job: +

+ + + + {#if jobResult} +
+

Job result:

+
{jobResult}
+
+ {/if}