From 4e2e6d5ec24f450604740082778b22add3c9c856 Mon Sep 17 00:00:00 2001 From: Igor Rzegocki Date: Thu, 19 Oct 2023 11:13:01 +0200 Subject: [PATCH] add support for Ruby 2.2 --- .github/workflows/ci.yml | 38 +++++++++++++++++++++++++++++ README.md | 2 +- lib/sentry-sidekiq.rb | 1 + lib/sentry/sidekiq/error_handler.rb | 2 +- sentry-sidekiq.gemspec | 3 ++- 5 files changed, 43 insertions(+), 3 deletions(-) create mode 100644 .github/workflows/ci.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..a95e869 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,38 @@ +name: Ruby Gem CI + +on: + push: + branches: [ "master" ] + pull_request: + branches: [ "master" ] + +jobs: + test: + strategy: + fail-fast: false + matrix: + os: [ubuntu-20.04, ubuntu-latest] + ruby: ['2.2.10', '2.3.8' ] + include: + - ruby: '2.2.10' + sidekiq_version: '5.2.8' + redis_rb_version: '4.1.1' + rails_version: '5.2.8.1' + - ruby: '2.3.8' + sidekiq_version: '5.2.8' + redis_rb_version: '4.4.0' + rails_version: '5.2.8.1' + exclude: + - ruby: '2.2.10' + os: ubuntu-latest + runs-on: ${{ matrix.os }} + steps: + - name: Start Redis + uses: supercharge/redis-github-action@1.7.0 + - uses: actions/checkout@v4 + - uses: ruby/setup-ruby@v1 + with: + ruby-version: ${{ matrix.ruby }} + - run: rm -rf .git + - run: SIDEKIQ_VERSION=${{ matrix.sidekiq_version }} REDIS_RB_VERSION=${{ matrix.redis_rb_version }} RAILS_VERSION=${{ matrix.rails_version }} make build + - run: SIDEKIQ_VERSION=${{ matrix.sidekiq_version }} REDIS_RB_VERSION=${{ matrix.redis_rb_version }} RAILS_VERSION=${{ matrix.rails_version }} bundle exec rake diff --git a/README.md b/README.md index 8be4690..c40607f 100644 --- a/README.md +++ b/README.md @@ -5,4 +5,4 @@

-This is IFAD mirror of `sentry-ruby` gem with added support of legacy rubies (currently version 2.3) +This is IFAD mirror of `sentry-sidekiq` gem with added support of legacy rubies (currently versions 2.3 and 2.2) diff --git a/lib/sentry-sidekiq.rb b/lib/sentry-sidekiq.rb index 2ff2816..03bbc88 100644 --- a/lib/sentry-sidekiq.rb +++ b/lib/sentry-sidekiq.rb @@ -1,3 +1,4 @@ +require 'backports/2.3.0/numeric' require "sidekiq" require "sentry-ruby" require "sentry/integrable" diff --git a/lib/sentry/sidekiq/error_handler.rb b/lib/sentry/sidekiq/error_handler.rb index e99dc2b..a25cf81 100644 --- a/lib/sentry/sidekiq/error_handler.rb +++ b/lib/sentry/sidekiq/error_handler.rb @@ -26,7 +26,7 @@ def call(ex, context) hint: { background: false } ) ensure - scope&.clear + scope.nil? ? nil : scope.clear end private diff --git a/sentry-sidekiq.gemspec b/sentry-sidekiq.gemspec index a4b01d7..d953a9d 100644 --- a/sentry-sidekiq.gemspec +++ b/sentry-sidekiq.gemspec @@ -10,7 +10,7 @@ Gem::Specification.new do |spec| spec.homepage = "https://github.com/getsentry/sentry-ruby" spec.platform = Gem::Platform::RUBY - spec.required_ruby_version = '>= 2.3' + spec.required_ruby_version = '>= 2.2' spec.extra_rdoc_files = ["README.md", "LICENSE.txt"] spec.files = `git ls-files | grep -Ev '^(spec|benchmarks|examples)'`.split("\n") @@ -22,6 +22,7 @@ Gem::Specification.new do |spec| spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) } spec.require_paths = ["lib"] + spec.add_dependency "backports" spec.add_dependency "sentry-ruby", "~> 5.12.0" spec.add_dependency "sidekiq", ">= 3.0" end