diff --git a/.github/workflows/ci-contrib.yml b/.github/workflows/ci-contrib.yml index 1f0d0c65a5..59b88e9dd8 100644 --- a/.github/workflows/ci-contrib.yml +++ b/.github/workflows/ci-contrib.yml @@ -30,6 +30,11 @@ jobs: runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 + - name: "Test Ruby 3.4" + uses: ./.github/actions/test_gem + with: + gem: "opentelemetry-helpers-${{ matrix.gem }}" + ruby: "3.4" - name: "Test Ruby 3.3" uses: ./.github/actions/test_gem with: @@ -70,6 +75,11 @@ jobs: runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 + - name: "Test Ruby 3.4" + uses: ./.github/actions/test_gem + with: + gem: "opentelemetry-propagator-${{ matrix.gem }}" + ruby: "3.4" - name: "Test Ruby 3.3" uses: ./.github/actions/test_gem with: @@ -109,6 +119,11 @@ jobs: runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 + - name: "Test Ruby 3.4" + uses: ./.github/actions/test_gem + with: + gem: "opentelemetry-${{ matrix.gem }}" + ruby: "3.4" - name: "Test Ruby 3.3" uses: ./.github/actions/test_gem with: @@ -147,6 +162,11 @@ jobs: runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 + - name: "Test Ruby 3.4" + uses: ./.github/actions/test_gem + with: + gem: "opentelemetry-processor-${{ matrix.gem }}" + ruby: "3.4" - name: "Test Ruby 3.3" uses: ./.github/actions/test_gem with: diff --git a/.github/workflows/ci-instrumentation-with-services.yml b/.github/workflows/ci-instrumentation-with-services.yml index e30123ae71..15e3d974fa 100644 --- a/.github/workflows/ci-instrumentation-with-services.yml +++ b/.github/workflows/ci-instrumentation-with-services.yml @@ -29,6 +29,11 @@ jobs: runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 + - name: "Test Ruby 3.4" + uses: ./.github/actions/test_gem + with: + gem: "opentelemetry-instrumentation-${{ matrix.gem }}" + ruby: "3.4" - name: "Test Ruby 3.3" uses: ./.github/actions/test_gem with: @@ -76,6 +81,11 @@ jobs: runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 + - name: "Test Ruby 3.4" + uses: ./.github/actions/test_gem + with: + gem: "opentelemetry-instrumentation-${{ matrix.gem }}" + ruby: "3.4" - name: "Test Ruby 3.3" uses: ./.github/actions/test_gem with: @@ -114,6 +124,11 @@ jobs: runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 + - name: "Test Ruby 3.4" + uses: ./.github/actions/test_gem + with: + gem: "opentelemetry-instrumentation-${{ matrix.gem }}" + ruby: "3.4" - name: "Test Ruby 3.3" uses: ./.github/actions/test_gem with: @@ -168,6 +183,11 @@ jobs: runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 + - name: "Test Ruby 3.4" + uses: ./.github/actions/test_gem + with: + gem: "opentelemetry-instrumentation-${{ matrix.gem }}" + ruby: "3.4" - name: "Test Ruby 3.3" uses: ./.github/actions/test_gem with: @@ -213,6 +233,11 @@ jobs: runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 + - name: "Test Ruby 3.4" + uses: ./.github/actions/test_gem + with: + gem: "opentelemetry-instrumentation-${{ matrix.gem }}" + ruby: "3.4" - name: "Test Ruby 3.3" uses: ./.github/actions/test_gem with: @@ -255,6 +280,11 @@ jobs: runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 + - name: "Test Ruby 3.4" + uses: ./.github/actions/test_gem + with: + gem: "opentelemetry-instrumentation-${{ matrix.gem }}" + ruby: "3.4" - name: "Test Ruby 3.3" uses: ./.github/actions/test_gem with: diff --git a/.github/workflows/ci-instrumentation.yml b/.github/workflows/ci-instrumentation.yml index 491fd6e32e..841e14115d 100644 --- a/.github/workflows/ci-instrumentation.yml +++ b/.github/workflows/ci-instrumentation.yml @@ -60,6 +60,11 @@ jobs: runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 + - name: "Test Ruby 3.4" + uses: ./.github/actions/test_gem + with: + gem: "opentelemetry-instrumentation-${{ matrix.gem }}" + ruby: "3.4" - name: "Test Ruby 3.3" uses: ./.github/actions/test_gem with: diff --git a/helpers/mysql/Gemfile b/helpers/mysql/Gemfile index f649e2f64a..afb6912bfe 100644 --- a/helpers/mysql/Gemfile +++ b/helpers/mysql/Gemfile @@ -7,3 +7,10 @@ source 'https://rubygems.org' gemspec + +group :test do + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end +end diff --git a/helpers/sql-obfuscation/Gemfile b/helpers/sql-obfuscation/Gemfile index f649e2f64a..afb6912bfe 100644 --- a/helpers/sql-obfuscation/Gemfile +++ b/helpers/sql-obfuscation/Gemfile @@ -7,3 +7,10 @@ source 'https://rubygems.org' gemspec + +group :test do + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end +end diff --git a/helpers/sql/Gemfile b/helpers/sql/Gemfile index 5f1d771fac..5139c3d9ab 100644 --- a/helpers/sql/Gemfile +++ b/helpers/sql/Gemfile @@ -11,3 +11,10 @@ source 'https://rubygems.org' # then target specific versions in the Appraisals file. gemspec + +group :test do + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end +end diff --git a/instrumentation/CONTRIBUTING.md b/instrumentation/CONTRIBUTING.md index 36269d89df..9a77d6d7ad 100644 --- a/instrumentation/CONTRIBUTING.md +++ b/instrumentation/CONTRIBUTING.md @@ -353,6 +353,11 @@ If we determine the service container slows down the test suite significantly, i runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 + - name: "Test Ruby 3.4" + uses: ./.github/actions/test_gem + with: + gem: "opentelemetry-helpers-${{ matrix.gem }}" + ruby: "3.4" - name: "Test Ruby 3.3" uses: ./.github/actions/test_gem with: diff --git a/instrumentation/action_mailer/Gemfile b/instrumentation/action_mailer/Gemfile index c0f09e6f4e..39ff49aac1 100644 --- a/instrumentation/action_mailer/Gemfile +++ b/instrumentation/action_mailer/Gemfile @@ -14,4 +14,8 @@ group :test do # Add jar-dependencies gem only if the Ruby runtime is JRuby # https://github.com/jruby/jruby/issues/7262 gem 'jar-dependencies', '0.4.1', platforms: :jruby + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/action_pack/Gemfile b/instrumentation/action_pack/Gemfile index 1ff5cee48a..167e8562f4 100644 --- a/instrumentation/action_pack/Gemfile +++ b/instrumentation/action_pack/Gemfile @@ -12,4 +12,8 @@ group :test do gem 'opentelemetry-instrumentation-base', path: '../../instrumentation/base' gem 'opentelemetry-instrumentation-rack', path: '../../instrumentation/rack' gem 'pry-byebug' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/action_view/Gemfile b/instrumentation/action_view/Gemfile index 54506a58db..362b810fad 100644 --- a/instrumentation/action_view/Gemfile +++ b/instrumentation/action_view/Gemfile @@ -12,4 +12,8 @@ group :test do gem 'opentelemetry-instrumentation-base', path: '../base' gem 'opentelemetry-instrumentation-active_support', path: '../active_support' gem 'pry-byebug' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/active_job/Gemfile b/instrumentation/active_job/Gemfile index 2baf57ac47..cb4d0e9baa 100644 --- a/instrumentation/active_job/Gemfile +++ b/instrumentation/active_job/Gemfile @@ -10,4 +10,8 @@ gemspec group :test do gem 'opentelemetry-instrumentation-base', path: '../base' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/active_model_serializers/Gemfile b/instrumentation/active_model_serializers/Gemfile index 2ededff745..e4d2581d43 100644 --- a/instrumentation/active_model_serializers/Gemfile +++ b/instrumentation/active_model_serializers/Gemfile @@ -11,4 +11,8 @@ gemspec group :test do gem 'opentelemetry-instrumentation-base', path: '../base' gem 'opentelemetry-instrumentation-active_support', path: '../active_support' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/active_record/Gemfile b/instrumentation/active_record/Gemfile index 02f64ca9a7..5d3d05e157 100644 --- a/instrumentation/active_record/Gemfile +++ b/instrumentation/active_record/Gemfile @@ -12,4 +12,8 @@ group :test do gem 'byebug' gem 'opentelemetry-instrumentation-base', path: '../base' gem 'pry-byebug' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/active_storage/Gemfile b/instrumentation/active_storage/Gemfile index 2ededff745..e4d2581d43 100644 --- a/instrumentation/active_storage/Gemfile +++ b/instrumentation/active_storage/Gemfile @@ -11,4 +11,8 @@ gemspec group :test do gem 'opentelemetry-instrumentation-base', path: '../base' gem 'opentelemetry-instrumentation-active_support', path: '../active_support' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/active_support/Gemfile b/instrumentation/active_support/Gemfile index 2baf57ac47..cb4d0e9baa 100644 --- a/instrumentation/active_support/Gemfile +++ b/instrumentation/active_support/Gemfile @@ -10,4 +10,8 @@ gemspec group :test do gem 'opentelemetry-instrumentation-base', path: '../base' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/all/Gemfile b/instrumentation/all/Gemfile index 30808d5038..2142f3e97a 100644 --- a/instrumentation/all/Gemfile +++ b/instrumentation/all/Gemfile @@ -9,6 +9,11 @@ source 'https://rubygems.org' gemspec group :test do + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end + Dir.entries('../../helpers') .select { |entry| File.directory?(File.join('../../helpers', entry)) } .reject { |entry| %w[. ..].include?(entry) } # rubocop:disable Performance/CollectionLiteralInLoop diff --git a/instrumentation/aws_lambda/Gemfile b/instrumentation/aws_lambda/Gemfile index a03fdb17e2..9fe40be08f 100644 --- a/instrumentation/aws_lambda/Gemfile +++ b/instrumentation/aws_lambda/Gemfile @@ -11,4 +11,8 @@ gemspec group :test do gem 'opentelemetry-instrumentation-base', path: '../base' gem 'webrick', '~> 1.7' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/aws_lambda/test/opentelemetry/instrumentation_test.rb b/instrumentation/aws_lambda/test/opentelemetry/instrumentation_test.rb index 648a4ad62d..928419ac49 100644 --- a/instrumentation/aws_lambda/test/opentelemetry/instrumentation_test.rb +++ b/instrumentation/aws_lambda/test/opentelemetry/instrumentation_test.rb @@ -96,8 +96,7 @@ _(last_span.hex_span_id.size).must_equal 16 _(last_span.hex_trace_id.size).must_equal 32 _(last_span.trace_flags.sampled?).must_equal true - - assert_equal last_span.tracestate, { 'otel' => 'ff40ea9699e62af2-01' } + _(last_span.tracestate.to_h).must_equal({ 'otel' => 'ff40ea9699e62af2-01' }) end event_v1['headers'].delete('traceparent') event_v1['headers'].delete('tracestate') diff --git a/instrumentation/aws_sdk/Gemfile b/instrumentation/aws_sdk/Gemfile index a03fdb17e2..9fe40be08f 100644 --- a/instrumentation/aws_sdk/Gemfile +++ b/instrumentation/aws_sdk/Gemfile @@ -11,4 +11,8 @@ gemspec group :test do gem 'opentelemetry-instrumentation-base', path: '../base' gem 'webrick', '~> 1.7' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/base/Gemfile b/instrumentation/base/Gemfile index f649e2f64a..afb6912bfe 100644 --- a/instrumentation/base/Gemfile +++ b/instrumentation/base/Gemfile @@ -7,3 +7,10 @@ source 'https://rubygems.org' gemspec + +group :test do + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end +end diff --git a/instrumentation/bunny/Gemfile b/instrumentation/bunny/Gemfile index 5b7d54b645..3b0bc1bdf0 100644 --- a/instrumentation/bunny/Gemfile +++ b/instrumentation/bunny/Gemfile @@ -11,4 +11,8 @@ gemspec group :test do gem 'opentelemetry-instrumentation-base', path: '../base' gem 'pry-byebug' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/concurrent_ruby/Gemfile b/instrumentation/concurrent_ruby/Gemfile index 2baf57ac47..cb4d0e9baa 100644 --- a/instrumentation/concurrent_ruby/Gemfile +++ b/instrumentation/concurrent_ruby/Gemfile @@ -10,4 +10,8 @@ gemspec group :test do gem 'opentelemetry-instrumentation-base', path: '../base' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/dalli/Gemfile b/instrumentation/dalli/Gemfile index 036a87b29f..a3267745c8 100644 --- a/instrumentation/dalli/Gemfile +++ b/instrumentation/dalli/Gemfile @@ -11,4 +11,8 @@ gemspec group :test do gem 'opentelemetry-instrumentation-base', path: '../base' gem 'pry' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/delayed_job/Gemfile b/instrumentation/delayed_job/Gemfile index 2baf57ac47..cb4d0e9baa 100644 --- a/instrumentation/delayed_job/Gemfile +++ b/instrumentation/delayed_job/Gemfile @@ -10,4 +10,8 @@ gemspec group :test do gem 'opentelemetry-instrumentation-base', path: '../base' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/ethon/Gemfile b/instrumentation/ethon/Gemfile index 2baf57ac47..cb4d0e9baa 100644 --- a/instrumentation/ethon/Gemfile +++ b/instrumentation/ethon/Gemfile @@ -10,4 +10,8 @@ gemspec group :test do gem 'opentelemetry-instrumentation-base', path: '../base' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/excon/Gemfile b/instrumentation/excon/Gemfile index 2baf57ac47..cb4d0e9baa 100644 --- a/instrumentation/excon/Gemfile +++ b/instrumentation/excon/Gemfile @@ -10,4 +10,8 @@ gemspec group :test do gem 'opentelemetry-instrumentation-base', path: '../base' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/faraday/Gemfile b/instrumentation/faraday/Gemfile index 2baf57ac47..cb4d0e9baa 100644 --- a/instrumentation/faraday/Gemfile +++ b/instrumentation/faraday/Gemfile @@ -10,4 +10,8 @@ gemspec group :test do gem 'opentelemetry-instrumentation-base', path: '../base' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/grape/Gemfile b/instrumentation/grape/Gemfile index a97f3cccfa..b9575b5277 100644 --- a/instrumentation/grape/Gemfile +++ b/instrumentation/grape/Gemfile @@ -16,4 +16,8 @@ group :test do gem 'opentelemetry-instrumentation-base', path: '../base' gem 'opentelemetry-instrumentation-rack', path: '../rack' gem 'builder' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/graphql/Appraisals b/instrumentation/graphql/Appraisals index 05298c160c..52d9a9dd6e 100644 --- a/instrumentation/graphql/Appraisals +++ b/instrumentation/graphql/Appraisals @@ -4,33 +4,21 @@ # # SPDX-License-Identifier: Apache-2.0 -# Max compatible version of 1.x -appraise 'graphql-1.x' do - gem 'graphql', '~> 1.13' -end - -# A bug was introduced in 2.0.18 that was fixed in 2.0.19 -appraise 'graphql-2.0.18' do - gem 'graphql', '2.0.18' -end - # Max compatible version of 2.0.x -appraise 'graphql-2.0' do - gem 'graphql', '~> 2.0.27' -end -# Max compatible version of 2.1.x -appraise 'graphql-2.1' do - gem 'graphql', '~> 2.1.8' +(0..4).each do |minor_version| + appraise "graphql-2.#{minor_version}.x" do + gem 'graphql', "~> 2.#{minor_version}.0" + end end -appraise 'graphql-c_parser-2.2.x' do - gem 'graphql', '~> 2.2.1' - gem 'graphql-c_parser', '~> 1.0.7' +appraise 'graphql-c_parser-1.0.x' do + gem 'graphql', '< 2.3.1' + gem 'graphql-c_parser', '~> 1.0.0' end -appraise 'graphql-2.2.x' do - gem 'graphql', '~> 2.2.1', '< 3.0.0' +appraise 'graphql-c_parser-1.x' do + gem 'graphql-c_parser', '~> 1.1' end appraise 'graphql-c_parser-latest' do diff --git a/instrumentation/graphql/Gemfile b/instrumentation/graphql/Gemfile index 5b7d54b645..3b0bc1bdf0 100644 --- a/instrumentation/graphql/Gemfile +++ b/instrumentation/graphql/Gemfile @@ -11,4 +11,8 @@ gemspec group :test do gem 'opentelemetry-instrumentation-base', path: '../base' gem 'pry-byebug' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/graphql/test/instrumentation/graphql/instrumentation_test.rb b/instrumentation/graphql/test/instrumentation/graphql/instrumentation_test.rb index 580918fb8d..70e8c04a38 100644 --- a/instrumentation/graphql/test/instrumentation/graphql/instrumentation_test.rb +++ b/instrumentation/graphql/test/instrumentation/graphql/instrumentation_test.rb @@ -54,7 +54,7 @@ OpenTelemetry::TestHelpers.with_test_logger do |log| instrumentation.install(config) _(log.string).must_match( - /undefined method `trace_with'.*Old::Truck/ + /undefined method.*trace_with.*Old::Truck/ ) end end @@ -90,7 +90,7 @@ instrumentation.install(config) _(log.string).must_match( - /undefined method `use'.*Old::Truck/ + /undefined method.*use.*Old::Truck/ ) end end diff --git a/instrumentation/grpc/Gemfile b/instrumentation/grpc/Gemfile index 68f476d47a..f87d40ffbe 100644 --- a/instrumentation/grpc/Gemfile +++ b/instrumentation/grpc/Gemfile @@ -12,4 +12,8 @@ gemspec group :test do gem 'opentelemetry-instrumentation-base', path: '../base' gem 'pry' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/gruf/Gemfile b/instrumentation/gruf/Gemfile index a952c5002d..208227775d 100644 --- a/instrumentation/gruf/Gemfile +++ b/instrumentation/gruf/Gemfile @@ -14,4 +14,8 @@ gemspec group :test do gem 'opentelemetry-instrumentation-base', path: '../base' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/http/Gemfile b/instrumentation/http/Gemfile index 5b7d54b645..3b0bc1bdf0 100644 --- a/instrumentation/http/Gemfile +++ b/instrumentation/http/Gemfile @@ -11,4 +11,8 @@ gemspec group :test do gem 'opentelemetry-instrumentation-base', path: '../base' gem 'pry-byebug' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/http_client/Gemfile b/instrumentation/http_client/Gemfile index 5b7d54b645..3b0bc1bdf0 100644 --- a/instrumentation/http_client/Gemfile +++ b/instrumentation/http_client/Gemfile @@ -11,4 +11,8 @@ gemspec group :test do gem 'opentelemetry-instrumentation-base', path: '../base' gem 'pry-byebug' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/httpx/Gemfile b/instrumentation/httpx/Gemfile index 8b038cdcbc..88f25d67ea 100644 --- a/instrumentation/httpx/Gemfile +++ b/instrumentation/httpx/Gemfile @@ -11,4 +11,8 @@ gemspec group :test do gem 'opentelemetry-instrumentation-base', path: '../base' gem 'pry-byebug', platform: 'ruby' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/koala/Gemfile b/instrumentation/koala/Gemfile index 5b7d54b645..3b0bc1bdf0 100644 --- a/instrumentation/koala/Gemfile +++ b/instrumentation/koala/Gemfile @@ -11,4 +11,8 @@ gemspec group :test do gem 'opentelemetry-instrumentation-base', path: '../base' gem 'pry-byebug' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/lmdb/Gemfile b/instrumentation/lmdb/Gemfile index 5b7d54b645..3b0bc1bdf0 100644 --- a/instrumentation/lmdb/Gemfile +++ b/instrumentation/lmdb/Gemfile @@ -11,4 +11,8 @@ gemspec group :test do gem 'opentelemetry-instrumentation-base', path: '../base' gem 'pry-byebug' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/mongo/Gemfile b/instrumentation/mongo/Gemfile index 4c6082de3b..cb4d0e9baa 100644 --- a/instrumentation/mongo/Gemfile +++ b/instrumentation/mongo/Gemfile @@ -8,4 +8,10 @@ source 'https://rubygems.org' gemspec -gem 'opentelemetry-instrumentation-base', path: '../base' +group :test do + gem 'opentelemetry-instrumentation-base', path: '../base' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end +end diff --git a/instrumentation/mysql2/Gemfile b/instrumentation/mysql2/Gemfile index fc50ea311f..7d8ac28158 100644 --- a/instrumentation/mysql2/Gemfile +++ b/instrumentation/mysql2/Gemfile @@ -13,4 +13,9 @@ group :test, :development do gem 'opentelemetry-helpers-sql', path: '../../helpers/sql' gem 'opentelemetry-helpers-mysql', path: '../../helpers/mysql' gem 'opentelemetry-helpers-sql-obfuscation', path: '../../helpers/sql-obfuscation' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'bigdecimal' + gem 'mutex_m' + end end diff --git a/instrumentation/net_http/Gemfile b/instrumentation/net_http/Gemfile index 2baf57ac47..cb4d0e9baa 100644 --- a/instrumentation/net_http/Gemfile +++ b/instrumentation/net_http/Gemfile @@ -10,4 +10,8 @@ gemspec group :test do gem 'opentelemetry-instrumentation-base', path: '../base' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/pg/Gemfile b/instrumentation/pg/Gemfile index a298585bb3..393fb9ce53 100644 --- a/instrumentation/pg/Gemfile +++ b/instrumentation/pg/Gemfile @@ -13,4 +13,8 @@ group :test do gem 'opentelemetry-instrumentation-base', path: '../base' gem 'opentelemetry-helpers-sql', path: '../../helpers/sql' gem 'opentelemetry-helpers-sql-obfuscation', path: '../../helpers/sql-obfuscation' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/que/Gemfile b/instrumentation/que/Gemfile index 9a673d3a21..098ad1b91d 100644 --- a/instrumentation/que/Gemfile +++ b/instrumentation/que/Gemfile @@ -15,4 +15,8 @@ group :test do gem 'opentelemetry-helpers-sql-obfuscation', path: '../../helpers/sql-obfuscation' gem 'opentelemetry-instrumentation-base', path: '../base' gem 'opentelemetry-instrumentation-pg', path: '../pg' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/racecar/Gemfile b/instrumentation/racecar/Gemfile index b4aa971cf5..8b4e6610d3 100644 --- a/instrumentation/racecar/Gemfile +++ b/instrumentation/racecar/Gemfile @@ -13,6 +13,10 @@ source 'https://rubygems.org' gemspec group :development, :test do - gem 'activesupport', '~> 6' # used to test against JRuby which is only MRI 2.6 compatibile + gem 'activesupport' gem 'opentelemetry-instrumentation-base', path: '../base' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/rack/Gemfile b/instrumentation/rack/Gemfile index c8b2ad72f9..cb6872035b 100644 --- a/instrumentation/rack/Gemfile +++ b/instrumentation/rack/Gemfile @@ -12,4 +12,8 @@ group :test do gem 'opentelemetry-instrumentation-base', path: '../base' gem 'rack-test', '~> 2.1.0' gem 'pry-byebug' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/rails/Gemfile b/instrumentation/rails/Gemfile index 117177e6e0..73b3d2188c 100644 --- a/instrumentation/rails/Gemfile +++ b/instrumentation/rails/Gemfile @@ -19,4 +19,9 @@ group :test, :development do gem 'opentelemetry-instrumentation-active_support', path: '../active_support' gem 'opentelemetry-instrumentation-action_view', path: '../action_view' gem 'opentelemetry-instrumentation-rack', path: '../rack' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'drb' + gem 'mutex_m' + end end diff --git a/instrumentation/rails/test/railtie/test_helper.rb b/instrumentation/rails/test/railtie/test_helper.rb index 47fc82f4e4..d33691ce31 100644 --- a/instrumentation/rails/test/railtie/test_helper.rb +++ b/instrumentation/rails/test/railtie/test_helper.rb @@ -13,6 +13,7 @@ require 'bundler/setup' Bundler.require(:default, :development, :test) +require 'drb' require_relative '../../test/railtie/dummy/config/environment' require 'rails/test_help' diff --git a/instrumentation/rake/Gemfile b/instrumentation/rake/Gemfile index a952c5002d..208227775d 100644 --- a/instrumentation/rake/Gemfile +++ b/instrumentation/rake/Gemfile @@ -14,4 +14,8 @@ gemspec group :test do gem 'opentelemetry-instrumentation-base', path: '../base' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/rdkafka/Gemfile b/instrumentation/rdkafka/Gemfile index 2baf57ac47..cb4d0e9baa 100644 --- a/instrumentation/rdkafka/Gemfile +++ b/instrumentation/rdkafka/Gemfile @@ -10,4 +10,8 @@ gemspec group :test do gem 'opentelemetry-instrumentation-base', path: '../base' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/redis/Gemfile b/instrumentation/redis/Gemfile index 2baf57ac47..cb4d0e9baa 100644 --- a/instrumentation/redis/Gemfile +++ b/instrumentation/redis/Gemfile @@ -10,4 +10,8 @@ gemspec group :test do gem 'opentelemetry-instrumentation-base', path: '../base' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/resque/Gemfile b/instrumentation/resque/Gemfile index a340f69a9b..370add5996 100644 --- a/instrumentation/resque/Gemfile +++ b/instrumentation/resque/Gemfile @@ -12,4 +12,8 @@ group :test do gem 'activejob' gem 'opentelemetry-instrumentation-base', path: '../base' gem 'pry-byebug' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/restclient/Gemfile b/instrumentation/restclient/Gemfile index 2baf57ac47..cb4d0e9baa 100644 --- a/instrumentation/restclient/Gemfile +++ b/instrumentation/restclient/Gemfile @@ -10,4 +10,8 @@ gemspec group :test do gem 'opentelemetry-instrumentation-base', path: '../base' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/rspec/Gemfile b/instrumentation/rspec/Gemfile index 74a39f083b..1f471f53b8 100644 --- a/instrumentation/rspec/Gemfile +++ b/instrumentation/rspec/Gemfile @@ -11,4 +11,8 @@ gemspec group :test do gem 'rspec', '~> 3.0' gem 'opentelemetry-instrumentation-base', path: '../base' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/ruby_kafka/Gemfile b/instrumentation/ruby_kafka/Gemfile index 5b7d54b645..19acd43ac6 100644 --- a/instrumentation/ruby_kafka/Gemfile +++ b/instrumentation/ruby_kafka/Gemfile @@ -11,4 +11,9 @@ gemspec group :test do gem 'opentelemetry-instrumentation-base', path: '../base' gem 'pry-byebug' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'bigdecimal' + gem 'mutex_m' + end end diff --git a/instrumentation/sidekiq/Gemfile b/instrumentation/sidekiq/Gemfile index 84efc8a188..4eaed0573a 100644 --- a/instrumentation/sidekiq/Gemfile +++ b/instrumentation/sidekiq/Gemfile @@ -12,4 +12,8 @@ group :test do gem 'opentelemetry-instrumentation-base', path: '../base' gem 'opentelemetry-instrumentation-redis', path: '../redis' gem 'pry-byebug' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/sinatra/Gemfile b/instrumentation/sinatra/Gemfile index a8bfa13a1a..979b4b8d5b 100644 --- a/instrumentation/sinatra/Gemfile +++ b/instrumentation/sinatra/Gemfile @@ -11,4 +11,8 @@ gemspec group :test do gem 'opentelemetry-instrumentation-base', path: '../base' gem 'opentelemetry-instrumentation-rack', path: '../rack' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/instrumentation/trilogy/Gemfile b/instrumentation/trilogy/Gemfile index 2484ca9938..94ce08991b 100644 --- a/instrumentation/trilogy/Gemfile +++ b/instrumentation/trilogy/Gemfile @@ -14,4 +14,9 @@ group :test do gem 'opentelemetry-helpers-sql', path: '../../helpers/sql' gem 'opentelemetry-helpers-sql-obfuscation', path: '../../helpers/sql-obfuscation' gem 'opentelemetry-propagator-vitess', path: '../../propagator/vitess' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'bigdecimal' + gem 'mutex_m' + end end diff --git a/processor/baggage/Gemfile b/processor/baggage/Gemfile index 52eb0ed2ec..60fea68d1b 100644 --- a/processor/baggage/Gemfile +++ b/processor/baggage/Gemfile @@ -4,3 +4,10 @@ source 'https://rubygems.org' # Specify your gem's dependencies in opentelemetry-processor-baggage.gemspec gemspec + +group :test do + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end +end diff --git a/propagator/ottrace/Gemfile b/propagator/ottrace/Gemfile index 12150b151b..f90da05eb2 100644 --- a/propagator/ottrace/Gemfile +++ b/propagator/ottrace/Gemfile @@ -4,3 +4,10 @@ source 'https://rubygems.org' # Specify your gem's dependencies in opentelemetry-propragator-ottrace.gemspec gemspec + +group :test do + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end +end diff --git a/propagator/vitess/Gemfile b/propagator/vitess/Gemfile index b79007ade3..4e5d0180b2 100644 --- a/propagator/vitess/Gemfile +++ b/propagator/vitess/Gemfile @@ -4,3 +4,10 @@ source 'https://rubygems.org' # Specify your gem's dependencies in opentelemetry-propragator-vitess.gemspec gemspec + +group :test do + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end +end diff --git a/propagator/xray/Gemfile b/propagator/xray/Gemfile index b32179c8b2..894ba545fb 100644 --- a/propagator/xray/Gemfile +++ b/propagator/xray/Gemfile @@ -7,3 +7,10 @@ source 'https://rubygems.org' gemspec + +group :test do + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end +end diff --git a/resources/azure/Gemfile b/resources/azure/Gemfile index 6ae9e48bcd..4e5a19cc91 100644 --- a/resources/azure/Gemfile +++ b/resources/azure/Gemfile @@ -11,4 +11,8 @@ gemspec group :development, :test do gem 'byebug' unless RUBY_PLATFORM == 'java' gem 'pry' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/resources/container/Gemfile b/resources/container/Gemfile index 6ae9e48bcd..4e5a19cc91 100644 --- a/resources/container/Gemfile +++ b/resources/container/Gemfile @@ -11,4 +11,8 @@ gemspec group :development, :test do gem 'byebug' unless RUBY_PLATFORM == 'java' gem 'pry' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end diff --git a/resources/google_cloud_platform/Gemfile b/resources/google_cloud_platform/Gemfile index 6ae9e48bcd..4e5a19cc91 100644 --- a/resources/google_cloud_platform/Gemfile +++ b/resources/google_cloud_platform/Gemfile @@ -11,4 +11,8 @@ gemspec group :development, :test do gem 'byebug' unless RUBY_PLATFORM == 'java' gem 'pry' + if RUBY_VERSION >= '3.4' + gem 'base64' + gem 'mutex_m' + end end