diff --git a/Matrixfile b/Matrixfile index 9d2e8529dab..a7f355eedf3 100644 --- a/Matrixfile +++ b/Matrixfile @@ -168,7 +168,9 @@ 'contrib' => '✅ 2.5 / ✅ 2.6 / ✅ 2.7 / ✅ 3.0 / ✅ 3.1 / ✅ 3.2 / ✅ 3.3 / ✅ 3.4 / ✅ jruby' }, 'sneakers' => { - 'contrib' => '✅ 2.5 / ✅ 2.6 / ✅ 2.7 / ✅ 3.0 / ✅ 3.1 / ✅ 3.2 / ✅ 3.3 / ✅ 3.4 / ✅ jruby' + 'kicks-latest' => '✅ 2.5 / ✅ 2.6 / ✅ 2.7 / ✅ 3.0 / ✅ 3.1 / ✅ 3.2 / ✅ 3.3 / ✅ 3.4 / ✅ jruby', + 'kicks-min' => '✅ 2.5 / ✅ 2.6 / ✅ 2.7 / ✅ 3.0 / ✅ 3.1 / ✅ 3.2 / ✅ 3.3 / ✅ 3.4 / ✅ jruby', + 'sneakers-min' => '✅ 2.5 / ✅ 2.6 / ✅ 2.7 / ✅ 3.0 / ✅ 3.1 / ✅ 3.2 / ✅ 3.3 / ✅ 3.4 / ✅ jruby', }, 'stripe' => { 'stripe-latest' => '✅ 2.5 / ✅ 2.6 / ✅ 2.7 / ✅ 3.0 / ✅ 3.1 / ✅ 3.2 / ✅ 3.3 / ✅ 3.4 / ✅ jruby', diff --git a/appraisal/generate.rb b/appraisal/generate.rb index 934a408f01a..1fa61d5ba88 100644 --- a/appraisal/generate.rb +++ b/appraisal/generate.rb @@ -49,12 +49,15 @@ # Builds a matrix of versions to test for a given integration -# `range`: the range of versions to test -# `gem` : optional, gem name to test (gem name can be different from the integration name) -# `min` : optional, minimum version to test -# `meta` : optional, additional metadata (development dependencies, etc.) for the group -def build_coverage_matrix(integration, range, gem: nil, min: nil, meta: {}) - gem ||= integration +# @param [String] integration the name of the integration to test +# @param [Range, Integer] range the range of major versions to test, or a single major version to test +# @param [String] gem optional, gem name to test (gem name can be different from the integration name) +# @param [String] min optional, minimum version to test +# @param [Boolean] latest optional, whether to test the latest version +# @param [Hash] meta optional, additional metadata (development dependencies, etc.) for the group +def build_coverage_matrix(integration, range, gem: integration, min: nil, latest: true, meta: {}) + # Allow single version to be passed easily + range = range..range if range.is_a?(Integer) if min appraise "#{integration}-min" do @@ -70,12 +73,14 @@ def build_coverage_matrix(integration, range, gem: nil, min: nil, meta: {}) end end - appraise "#{integration}-latest" do - # The latest group declares dependencies without version constraints, - # still requires being updated to pick up the next major version and - # committing the changes to lockfiles. - gem gem - meta.each { |k, v| v ? gem(k, v) : gem(k) } + if latest + appraise "#{integration}-latest" do + # The latest group declares dependencies without version constraints, + # still requires being updated to pick up the next major version and + # committing the changes to lockfiles. + gem gem + meta.each { |k, v| v ? gem(k, v) : gem(k) } + end end end diff --git a/appraisal/jruby-9.2.rb b/appraisal/jruby-9.2.rb index 5e4073d035f..6ec8ab53a0e 100644 --- a/appraisal/jruby-9.2.rb +++ b/appraisal/jruby-9.2.rb @@ -202,6 +202,8 @@ build_coverage_matrix('stripe', 7..12, min: '5.15.0') build_coverage_matrix('opensearch', 2..3, gem: 'opensearch-ruby') build_coverage_matrix('elasticsearch', 7..8) +build_coverage_matrix('kicks', [], min: '3.0.0') +build_coverage_matrix('sneakers', [], min: '2.12.0', latest: false) # Sneakers is not receiving updates anymore and 2.12.0 is the last version appraise 'relational_db' do gem 'activerecord', '~> 5' diff --git a/appraisal/jruby-9.3.rb b/appraisal/jruby-9.3.rb index f51344a8562..35d6eb24b15 100644 --- a/appraisal/jruby-9.3.rb +++ b/appraisal/jruby-9.3.rb @@ -175,6 +175,8 @@ build_coverage_matrix('stripe', 7..12, min: '5.15.0') build_coverage_matrix('opensearch', 2..3, gem: 'opensearch-ruby') build_coverage_matrix('elasticsearch', 7..8) +build_coverage_matrix('kicks', [], min: '3.0.0') +build_coverage_matrix('sneakers', [], min: '2.12.0', latest: false) # Sneakers is not receiving updates anymore and 2.12.0 is the last version appraise 'relational_db' do gem 'activerecord', '~> 6.0.0' diff --git a/appraisal/jruby-9.4.rb b/appraisal/jruby-9.4.rb index 947d54885cb..15e75ea1420 100644 --- a/appraisal/jruby-9.4.rb +++ b/appraisal/jruby-9.4.rb @@ -79,6 +79,8 @@ build_coverage_matrix('stripe', 7..12, min: '5.15.0') build_coverage_matrix('opensearch', 2..3, gem: 'opensearch-ruby') build_coverage_matrix('elasticsearch', 7..8) +build_coverage_matrix('kicks', [], min: '3.0.0') +build_coverage_matrix('sneakers', [], min: '2.12.0', latest: false) # Sneakers is not receiving updates anymore and 2.12.0 is the last version appraise 'relational_db' do gem 'activerecord', '~> 6.1.0' diff --git a/appraisal/ruby-2.5.rb b/appraisal/ruby-2.5.rb index 502c998055d..c570a275d14 100644 --- a/appraisal/ruby-2.5.rb +++ b/appraisal/ruby-2.5.rb @@ -221,6 +221,8 @@ build_coverage_matrix('stripe', 7..12, min: '5.15.0') build_coverage_matrix('opensearch', 2..3, gem: 'opensearch-ruby') build_coverage_matrix('elasticsearch', 7..8) +build_coverage_matrix('kicks', [], min: '3.0.0') +build_coverage_matrix('sneakers', [], min: '2.12.0', latest: false) # Sneakers is not receiving updates anymore and 2.12.0 is the last version appraise 'relational_db' do gem 'activerecord', '~> 5' diff --git a/appraisal/ruby-2.6.rb b/appraisal/ruby-2.6.rb index c89e19893c9..163fa904e03 100644 --- a/appraisal/ruby-2.6.rb +++ b/appraisal/ruby-2.6.rb @@ -174,6 +174,8 @@ build_coverage_matrix('stripe', 7..12, min: '5.15.0') build_coverage_matrix('opensearch', 2..3, gem: 'opensearch-ruby') build_coverage_matrix('elasticsearch', 7..8) +build_coverage_matrix('kicks', [], min: '3.0.0') +build_coverage_matrix('sneakers', [], min: '2.12.0', latest: false) # Sneakers is not receiving updates anymore and 2.12.0 is the last version appraise 'relational_db' do gem 'activerecord', '~> 6.0.0' diff --git a/appraisal/ruby-2.7.rb b/appraisal/ruby-2.7.rb index 88b3b0f1e98..56535fac17d 100644 --- a/appraisal/ruby-2.7.rb +++ b/appraisal/ruby-2.7.rb @@ -174,6 +174,8 @@ build_coverage_matrix('stripe', 7..12, min: '5.15.0') build_coverage_matrix('opensearch', 2..3, gem: 'opensearch-ruby') build_coverage_matrix('elasticsearch', 7..8) +build_coverage_matrix('kicks', [], min: '3.0.0') +build_coverage_matrix('sneakers', [], min: '2.12.0', latest: false) # Sneakers is not receiving updates anymore and 2.12.0 is the last version appraise 'relational_db' do gem 'activerecord', '~> 6.1.0' diff --git a/appraisal/ruby-3.0.rb b/appraisal/ruby-3.0.rb index ac024429e2f..20aea0ba53e 100644 --- a/appraisal/ruby-3.0.rb +++ b/appraisal/ruby-3.0.rb @@ -95,6 +95,8 @@ build_coverage_matrix('stripe', 7..12, min: '5.15.0') build_coverage_matrix('opensearch', 2..3, gem: 'opensearch-ruby') build_coverage_matrix('elasticsearch', 7..8) +build_coverage_matrix('kicks', [], min: '3.0.0') +build_coverage_matrix('sneakers', [], min: '2.12.0', latest: false) # Sneakers is not receiving updates anymore and 2.12.0 is the last version appraise 'relational_db' do gem 'activerecord', '~> 7' diff --git a/appraisal/ruby-3.1.rb b/appraisal/ruby-3.1.rb index ac024429e2f..20aea0ba53e 100644 --- a/appraisal/ruby-3.1.rb +++ b/appraisal/ruby-3.1.rb @@ -95,6 +95,8 @@ build_coverage_matrix('stripe', 7..12, min: '5.15.0') build_coverage_matrix('opensearch', 2..3, gem: 'opensearch-ruby') build_coverage_matrix('elasticsearch', 7..8) +build_coverage_matrix('kicks', [], min: '3.0.0') +build_coverage_matrix('sneakers', [], min: '2.12.0', latest: false) # Sneakers is not receiving updates anymore and 2.12.0 is the last version appraise 'relational_db' do gem 'activerecord', '~> 7' diff --git a/appraisal/ruby-3.2.rb b/appraisal/ruby-3.2.rb index ac024429e2f..20aea0ba53e 100644 --- a/appraisal/ruby-3.2.rb +++ b/appraisal/ruby-3.2.rb @@ -95,6 +95,8 @@ build_coverage_matrix('stripe', 7..12, min: '5.15.0') build_coverage_matrix('opensearch', 2..3, gem: 'opensearch-ruby') build_coverage_matrix('elasticsearch', 7..8) +build_coverage_matrix('kicks', [], min: '3.0.0') +build_coverage_matrix('sneakers', [], min: '2.12.0', latest: false) # Sneakers is not receiving updates anymore and 2.12.0 is the last version appraise 'relational_db' do gem 'activerecord', '~> 7' diff --git a/appraisal/ruby-3.3.rb b/appraisal/ruby-3.3.rb index c7fffc3b558..0353dfc8134 100644 --- a/appraisal/ruby-3.3.rb +++ b/appraisal/ruby-3.3.rb @@ -95,6 +95,8 @@ build_coverage_matrix('stripe', 7..12, min: '5.15.0') build_coverage_matrix('opensearch', 2..3, gem: 'opensearch-ruby') build_coverage_matrix('elasticsearch', 7..8) +build_coverage_matrix('kicks', [], min: '3.0.0') +build_coverage_matrix('sneakers', [], min: '2.12.0', latest: false) # Sneakers is not receiving updates anymore and 2.12.0 is the last version appraise 'relational_db' do gem 'activerecord', '~> 7' @@ -131,7 +133,6 @@ gem 'roda', '>= 2.0.0' gem 'semantic_logger', '~> 4.0' gem 'sidekiq', '~> 7' - gem 'sneakers', '>= 2.12.0' gem 'sucker_punch' gem 'que', '>= 1.0.0' end diff --git a/appraisal/ruby-3.4.rb b/appraisal/ruby-3.4.rb index 17a81807b66..bfd050c76ae 100644 --- a/appraisal/ruby-3.4.rb +++ b/appraisal/ruby-3.4.rb @@ -95,6 +95,8 @@ build_coverage_matrix('stripe', 7..12, min: '5.15.0') build_coverage_matrix('opensearch', 2..3, gem: 'opensearch-ruby') build_coverage_matrix('elasticsearch', 7..8) +build_coverage_matrix('kicks', [], min: '3.0.0') +build_coverage_matrix('sneakers', [], min: '2.12.0', latest: false) # Sneakers is not receiving updates anymore and 2.12.0 is the last version appraise 'relational_db' do # ActiveRecord locked because tests are failing with 7.1, which was attempted as a part of Ruby 3.4 testing in CI. diff --git a/docs/Compatibility.md b/docs/Compatibility.md index 6dbcf8e5e12..3fb4ed272b1 100644 --- a/docs/Compatibility.md +++ b/docs/Compatibility.md @@ -91,6 +91,7 @@ For a list of available integrations, and their configuration options, refer to | httpclient | `httpclient` | `>= 2.2` | `>= 2.2` | [Link][23] | [Link](https://github.com/nahi/httpclient) | | httpx | `httpx` | `>= 0.11` | `>= 0.11` | [Link][24] | [Link](https://gitlab.com/honeyryderchuck/httpx) | | Kafka | `ruby-kafka` | `>= 0.7.10` | `>= 0.7.10` | [Link][25] | [Link](https://github.com/zendesk/ruby-kafka) | +| Kicks | `kicks` | `>= 3.0.0` | `>= 3.0.0` | [Link][55] | [Link](https://github.com/ruby-amqp/kicks) | | Makara (via Active Record) | `makara` | `>= 0.3.5` | `>= 0.3.5` | [Link][8] | [Link](https://github.com/instacart/makara) | | MongoDB | `mongo` | `>= 2.1` | `>= 2.1` | [Link][26] | [Link](https://github.com/mongodb/mongo-ruby-driver) | | MySQL2 | `mysql2` | `>= 0.3.21` | *gem not available* | [Link][27] | [Link](https://github.com/brianmario/mysql2) | @@ -269,3 +270,5 @@ new release of 1.21.0 (or 1.20.1). Those bugfixes will not be backported as patc [53]: https://docs.datadoghq.com/agent/basic_agent_usage/?tab=agentv6v7 [54]: https://docs.datadoghq.com/agent/basic_agent_usage/?tab=agentv5 + +[55]: https://docs.datadoghq.com/tracing/trace_collection/dd_libraries/ruby#kicks diff --git a/docs/GettingStarted.md b/docs/GettingStarted.md index 9262b29bcb4..f8e4336b76e 100644 --- a/docs/GettingStarted.md +++ b/docs/GettingStarted.md @@ -1112,6 +1112,32 @@ end | --------- | ------------------------------- | ------ | -------------------------------------------- | ------- | | `enabled` | `DD_TRACE_KAFKA_ENABLED` | `Bool` | Whether the integration should create spans. | `true` | +### Kicks + +The Kicks integration is a server-side middleware which will trace job executions. + +
+Kicks is a continuation of Sneakers and both cannot be active at the same time, as they share their Ruby class namespace. Configurations to the Sneakers integration will be safely merged with any Kicks configuration. +
+ +You can enable it through `Datadog.configure`: + +```ruby +require 'datadog' + +Datadog.configure do |c| + c.tracing.instrument :kicks, **options +end +``` + +`options` are the following keyword arguments: + +| Key | Env Var | Type | Description | Default | +| ---------- | - | ----- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- | +| `enabled` | `DD_TRACE_SNEAKERS_ENABLED` | `Bool` | Whether the integration should create spans. | `true` | +| `tag_body` | | `Bool` | Enable tagging of job message. `true` for on, `false` for off. | `false` | +| `on_error` | | `Proc` | Custom error handler invoked when a job raises an error. Provided `span` and `error` as arguments. Sets error on the span by default. Useful for ignoring transient errors. | `proc { \|span, error\| span.set_error(error) unless span.nil? }` | + ### MongoDB The integration traces any `Command` that is sent from the [MongoDB Ruby Driver](https://github.com/mongodb/mongo-ruby-driver) to a MongoDB cluster. By extension, Object Document Mappers (ODM) such as Mongoid are automatically instrumented if they use the official Ruby driver. To activate the integration, simply: @@ -1935,6 +1961,10 @@ end The Sneakers integration is a server-side middleware which will trace job executions. +
+Kicks is a continuation of Sneakers and both cannot be active at the same time, as they share their Ruby class namespace. Configurations to the Sneakers integration will be safely merged with any Kicks configuration. +
+ You can enable it through `Datadog.configure`: ```ruby diff --git a/gemfiles/jruby_9.2_kicks_latest.gemfile b/gemfiles/jruby_9.2_kicks_latest.gemfile new file mode 100644 index 00000000000..236759cabfd --- /dev/null +++ b/gemfiles/jruby_9.2_kicks_latest.gemfile @@ -0,0 +1,36 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-debugger-jruby" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "kicks" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/jruby_9.2_kicks_min.gemfile b/gemfiles/jruby_9.2_kicks_min.gemfile new file mode 100644 index 00000000000..9ab510707e6 --- /dev/null +++ b/gemfiles/jruby_9.2_kicks_min.gemfile @@ -0,0 +1,36 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-debugger-jruby" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "kicks", "= 3.0.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/jruby_9.2_sneakers_min.gemfile b/gemfiles/jruby_9.2_sneakers_min.gemfile new file mode 100644 index 00000000000..c19a29bfa14 --- /dev/null +++ b/gemfiles/jruby_9.2_sneakers_min.gemfile @@ -0,0 +1,36 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-debugger-jruby" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "sneakers", "= 2.12.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/jruby_9.3_kicks_latest.gemfile b/gemfiles/jruby_9.3_kicks_latest.gemfile new file mode 100644 index 00000000000..4cb81370126 --- /dev/null +++ b/gemfiles/jruby_9.3_kicks_latest.gemfile @@ -0,0 +1,40 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-debugger-jruby" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "rubocop", "~> 1.50.0", require: false +gem "rubocop-packaging", "~> 0.5.2", require: false +gem "rubocop-performance", "~> 1.9", require: false +gem "rubocop-rspec", ["~> 2.20", "< 2.21"], require: false +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "kicks" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/jruby_9.3_kicks_min.gemfile b/gemfiles/jruby_9.3_kicks_min.gemfile new file mode 100644 index 00000000000..796c33759c7 --- /dev/null +++ b/gemfiles/jruby_9.3_kicks_min.gemfile @@ -0,0 +1,40 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-debugger-jruby" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "rubocop", "~> 1.50.0", require: false +gem "rubocop-packaging", "~> 0.5.2", require: false +gem "rubocop-performance", "~> 1.9", require: false +gem "rubocop-rspec", ["~> 2.20", "< 2.21"], require: false +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "kicks", "= 3.0.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/jruby_9.3_sneakers_min.gemfile b/gemfiles/jruby_9.3_sneakers_min.gemfile new file mode 100644 index 00000000000..b275c33b6ae --- /dev/null +++ b/gemfiles/jruby_9.3_sneakers_min.gemfile @@ -0,0 +1,40 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-debugger-jruby" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "rubocop", "~> 1.50.0", require: false +gem "rubocop-packaging", "~> 0.5.2", require: false +gem "rubocop-performance", "~> 1.9", require: false +gem "rubocop-rspec", ["~> 2.20", "< 2.21"], require: false +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "sneakers", "= 2.12.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/jruby_9.4_kicks_latest.gemfile b/gemfiles/jruby_9.4_kicks_latest.gemfile new file mode 100644 index 00000000000..325cde4397d --- /dev/null +++ b/gemfiles/jruby_9.4_kicks_latest.gemfile @@ -0,0 +1,41 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-debugger-jruby" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "rubocop", "~> 1.50.0", require: false +gem "rubocop-packaging", "~> 0.5.2", require: false +gem "rubocop-performance", "~> 1.9", require: false +gem "rubocop-rspec", ["~> 2.20", "< 2.21"], require: false +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "webrick", ">= 1.7.0" +gem "kicks" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/jruby_9.4_kicks_min.gemfile b/gemfiles/jruby_9.4_kicks_min.gemfile new file mode 100644 index 00000000000..df73805228f --- /dev/null +++ b/gemfiles/jruby_9.4_kicks_min.gemfile @@ -0,0 +1,41 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-debugger-jruby" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "rubocop", "~> 1.50.0", require: false +gem "rubocop-packaging", "~> 0.5.2", require: false +gem "rubocop-performance", "~> 1.9", require: false +gem "rubocop-rspec", ["~> 2.20", "< 2.21"], require: false +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "webrick", ">= 1.7.0" +gem "kicks", "= 3.0.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/jruby_9.4_sneakers_min.gemfile b/gemfiles/jruby_9.4_sneakers_min.gemfile new file mode 100644 index 00000000000..9f1e3d472a1 --- /dev/null +++ b/gemfiles/jruby_9.4_sneakers_min.gemfile @@ -0,0 +1,41 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-debugger-jruby" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "rubocop", "~> 1.50.0", require: false +gem "rubocop-packaging", "~> 0.5.2", require: false +gem "rubocop-performance", "~> 1.9", require: false +gem "rubocop-rspec", ["~> 2.20", "< 2.21"], require: false +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "webrick", ">= 1.7.0" +gem "sneakers", "= 2.12.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_2.5_kicks_latest.gemfile b/gemfiles/ruby_2.5_kicks_latest.gemfile new file mode 100644 index 00000000000..6dd3fb25a72 --- /dev/null +++ b/gemfiles/ruby_2.5_kicks_latest.gemfile @@ -0,0 +1,39 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "extlz4", "~> 0.3", ">= 0.3.3" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1", "< 3.19.2"] +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-nav" +gem "pry-stack_explorer" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "kicks" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_2.5_kicks_min.gemfile b/gemfiles/ruby_2.5_kicks_min.gemfile new file mode 100644 index 00000000000..4118282afc2 --- /dev/null +++ b/gemfiles/ruby_2.5_kicks_min.gemfile @@ -0,0 +1,39 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "extlz4", "~> 0.3", ">= 0.3.3" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1", "< 3.19.2"] +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-nav" +gem "pry-stack_explorer" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "kicks", "= 3.0.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_2.5_sneakers_min.gemfile b/gemfiles/ruby_2.5_sneakers_min.gemfile new file mode 100644 index 00000000000..e0425d4ec93 --- /dev/null +++ b/gemfiles/ruby_2.5_sneakers_min.gemfile @@ -0,0 +1,39 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "extlz4", "~> 0.3", ">= 0.3.3" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1", "< 3.19.2"] +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-nav" +gem "pry-stack_explorer" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "sneakers", "= 2.12.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_2.6_kicks_latest.gemfile b/gemfiles/ruby_2.6_kicks_latest.gemfile new file mode 100644 index 00000000000..a2fbc89e2ec --- /dev/null +++ b/gemfiles/ruby_2.6_kicks_latest.gemfile @@ -0,0 +1,43 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "extlz4", "~> 0.3", ">= 0.3.3" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1", "< 3.19.2"] +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-byebug" +gem "pry-stack_explorer" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "rubocop", "~> 1.50.0", require: false +gem "rubocop-packaging", "~> 0.5.2", require: false +gem "rubocop-performance", "~> 1.9", require: false +gem "rubocop-rspec", ["~> 2.20", "< 2.21"], require: false +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "kicks" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_2.6_kicks_min.gemfile b/gemfiles/ruby_2.6_kicks_min.gemfile new file mode 100644 index 00000000000..9b9d050951a --- /dev/null +++ b/gemfiles/ruby_2.6_kicks_min.gemfile @@ -0,0 +1,43 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "extlz4", "~> 0.3", ">= 0.3.3" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1", "< 3.19.2"] +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-byebug" +gem "pry-stack_explorer" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "rubocop", "~> 1.50.0", require: false +gem "rubocop-packaging", "~> 0.5.2", require: false +gem "rubocop-performance", "~> 1.9", require: false +gem "rubocop-rspec", ["~> 2.20", "< 2.21"], require: false +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "kicks", "= 3.0.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_2.6_sneakers_min.gemfile b/gemfiles/ruby_2.6_sneakers_min.gemfile new file mode 100644 index 00000000000..11a85b445e3 --- /dev/null +++ b/gemfiles/ruby_2.6_sneakers_min.gemfile @@ -0,0 +1,43 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "extlz4", "~> 0.3", ">= 0.3.3" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1", "< 3.19.2"] +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-byebug" +gem "pry-stack_explorer" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "rubocop", "~> 1.50.0", require: false +gem "rubocop-packaging", "~> 0.5.2", require: false +gem "rubocop-performance", "~> 1.9", require: false +gem "rubocop-rspec", ["~> 2.20", "< 2.21"], require: false +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "sneakers", "= 2.12.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_2.7_kicks_latest.gemfile b/gemfiles/ruby_2.7_kicks_latest.gemfile new file mode 100644 index 00000000000..72276856425 --- /dev/null +++ b/gemfiles/ruby_2.7_kicks_latest.gemfile @@ -0,0 +1,43 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "extlz4", "~> 0.3", ">= 0.3.3" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-byebug" +gem "pry-stack_explorer" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "rubocop", "~> 1.50.0", require: false +gem "rubocop-packaging", "~> 0.5.2", require: false +gem "rubocop-performance", "~> 1.9", require: false +gem "rubocop-rspec", ["~> 2.20", "< 2.21"], require: false +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "kicks" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_2.7_kicks_min.gemfile b/gemfiles/ruby_2.7_kicks_min.gemfile new file mode 100644 index 00000000000..39906e77ff2 --- /dev/null +++ b/gemfiles/ruby_2.7_kicks_min.gemfile @@ -0,0 +1,43 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "extlz4", "~> 0.3", ">= 0.3.3" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-byebug" +gem "pry-stack_explorer" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "rubocop", "~> 1.50.0", require: false +gem "rubocop-packaging", "~> 0.5.2", require: false +gem "rubocop-performance", "~> 1.9", require: false +gem "rubocop-rspec", ["~> 2.20", "< 2.21"], require: false +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "kicks", "= 3.0.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_2.7_sneakers_min.gemfile b/gemfiles/ruby_2.7_sneakers_min.gemfile new file mode 100644 index 00000000000..f0188c0e339 --- /dev/null +++ b/gemfiles/ruby_2.7_sneakers_min.gemfile @@ -0,0 +1,43 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "extlz4", "~> 0.3", ">= 0.3.3" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-byebug" +gem "pry-stack_explorer" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "rubocop", "~> 1.50.0", require: false +gem "rubocop-packaging", "~> 0.5.2", require: false +gem "rubocop-performance", "~> 1.9", require: false +gem "rubocop-rspec", ["~> 2.20", "< 2.21"], require: false +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "sneakers", "= 2.12.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.0_kicks_latest.gemfile b/gemfiles/ruby_3.0_kicks_latest.gemfile new file mode 100644 index 00000000000..5f7a1be6801 --- /dev/null +++ b/gemfiles/ruby_3.0_kicks_latest.gemfile @@ -0,0 +1,44 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "extlz4", "~> 0.3", ">= 0.3.3" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-byebug" +gem "pry-stack_explorer" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "rubocop", "~> 1.50.0", require: false +gem "rubocop-packaging", "~> 0.5.2", require: false +gem "rubocop-performance", "~> 1.9", require: false +gem "rubocop-rspec", ["~> 2.20", "< 2.21"], require: false +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "webrick", ">= 1.7.0" +gem "kicks" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.0_kicks_min.gemfile b/gemfiles/ruby_3.0_kicks_min.gemfile new file mode 100644 index 00000000000..70867647a62 --- /dev/null +++ b/gemfiles/ruby_3.0_kicks_min.gemfile @@ -0,0 +1,44 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "extlz4", "~> 0.3", ">= 0.3.3" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-byebug" +gem "pry-stack_explorer" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "rubocop", "~> 1.50.0", require: false +gem "rubocop-packaging", "~> 0.5.2", require: false +gem "rubocop-performance", "~> 1.9", require: false +gem "rubocop-rspec", ["~> 2.20", "< 2.21"], require: false +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "webrick", ">= 1.7.0" +gem "kicks", "= 3.0.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.0_sneakers_min.gemfile b/gemfiles/ruby_3.0_sneakers_min.gemfile new file mode 100644 index 00000000000..49d75fa9144 --- /dev/null +++ b/gemfiles/ruby_3.0_sneakers_min.gemfile @@ -0,0 +1,44 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "extlz4", "~> 0.3", ">= 0.3.3" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-byebug" +gem "pry-stack_explorer" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "rubocop", "~> 1.50.0", require: false +gem "rubocop-packaging", "~> 0.5.2", require: false +gem "rubocop-performance", "~> 1.9", require: false +gem "rubocop-rspec", ["~> 2.20", "< 2.21"], require: false +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "webrick", ">= 1.7.0" +gem "sneakers", "= 2.12.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.1_kicks_latest.gemfile b/gemfiles/ruby_3.1_kicks_latest.gemfile new file mode 100644 index 00000000000..5f7a1be6801 --- /dev/null +++ b/gemfiles/ruby_3.1_kicks_latest.gemfile @@ -0,0 +1,44 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "extlz4", "~> 0.3", ">= 0.3.3" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-byebug" +gem "pry-stack_explorer" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "rubocop", "~> 1.50.0", require: false +gem "rubocop-packaging", "~> 0.5.2", require: false +gem "rubocop-performance", "~> 1.9", require: false +gem "rubocop-rspec", ["~> 2.20", "< 2.21"], require: false +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "webrick", ">= 1.7.0" +gem "kicks" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.1_kicks_min.gemfile b/gemfiles/ruby_3.1_kicks_min.gemfile new file mode 100644 index 00000000000..70867647a62 --- /dev/null +++ b/gemfiles/ruby_3.1_kicks_min.gemfile @@ -0,0 +1,44 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "extlz4", "~> 0.3", ">= 0.3.3" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-byebug" +gem "pry-stack_explorer" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "rubocop", "~> 1.50.0", require: false +gem "rubocop-packaging", "~> 0.5.2", require: false +gem "rubocop-performance", "~> 1.9", require: false +gem "rubocop-rspec", ["~> 2.20", "< 2.21"], require: false +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "webrick", ">= 1.7.0" +gem "kicks", "= 3.0.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.1_sneakers_min.gemfile b/gemfiles/ruby_3.1_sneakers_min.gemfile new file mode 100644 index 00000000000..49d75fa9144 --- /dev/null +++ b/gemfiles/ruby_3.1_sneakers_min.gemfile @@ -0,0 +1,44 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "extlz4", "~> 0.3", ">= 0.3.3" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-byebug" +gem "pry-stack_explorer" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "rubocop", "~> 1.50.0", require: false +gem "rubocop-packaging", "~> 0.5.2", require: false +gem "rubocop-performance", "~> 1.9", require: false +gem "rubocop-rspec", ["~> 2.20", "< 2.21"], require: false +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "webrick", ">= 1.7.0" +gem "sneakers", "= 2.12.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.2_kicks_latest.gemfile b/gemfiles/ruby_3.2_kicks_latest.gemfile new file mode 100644 index 00000000000..64f56dfc13a --- /dev/null +++ b/gemfiles/ruby_3.2_kicks_latest.gemfile @@ -0,0 +1,43 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "extlz4", "~> 0.3", ">= 0.3.3" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-stack_explorer" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "rubocop", "~> 1.50.0", require: false +gem "rubocop-packaging", "~> 0.5.2", require: false +gem "rubocop-performance", "~> 1.9", require: false +gem "rubocop-rspec", ["~> 2.20", "< 2.21"], require: false +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "webrick", ">= 1.7.0" +gem "kicks" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.2_kicks_min.gemfile b/gemfiles/ruby_3.2_kicks_min.gemfile new file mode 100644 index 00000000000..ab3b79ba24a --- /dev/null +++ b/gemfiles/ruby_3.2_kicks_min.gemfile @@ -0,0 +1,43 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "extlz4", "~> 0.3", ">= 0.3.3" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-stack_explorer" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "rubocop", "~> 1.50.0", require: false +gem "rubocop-packaging", "~> 0.5.2", require: false +gem "rubocop-performance", "~> 1.9", require: false +gem "rubocop-rspec", ["~> 2.20", "< 2.21"], require: false +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "webrick", ">= 1.7.0" +gem "kicks", "= 3.0.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.2_sneakers_min.gemfile b/gemfiles/ruby_3.2_sneakers_min.gemfile new file mode 100644 index 00000000000..06398c48e74 --- /dev/null +++ b/gemfiles/ruby_3.2_sneakers_min.gemfile @@ -0,0 +1,43 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "extlz4", "~> 0.3", ">= 0.3.3" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-stack_explorer" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "rubocop", "~> 1.50.0", require: false +gem "rubocop-packaging", "~> 0.5.2", require: false +gem "rubocop-performance", "~> 1.9", require: false +gem "rubocop-rspec", ["~> 2.20", "< 2.21"], require: false +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "webrick", ">= 1.7.0" +gem "sneakers", "= 2.12.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.3_contrib.gemfile b/gemfiles/ruby_3.3_contrib.gemfile index 6dab61251d9..099bf566d4d 100644 --- a/gemfiles/ruby_3.3_contrib.gemfile +++ b/gemfiles/ruby_3.3_contrib.gemfile @@ -38,7 +38,6 @@ gem "resque" gem "roda", ">= 2.0.0" gem "semantic_logger", "~> 4.0" gem "sidekiq", "~> 7" -gem "sneakers", ">= 2.12.0" gem "sucker_punch" gem "que", ">= 1.0.0" diff --git a/gemfiles/ruby_3.3_contrib.gemfile.lock b/gemfiles/ruby_3.3_contrib.gemfile.lock index 9ef671f2146..4468d20166a 100644 --- a/gemfiles/ruby_3.3_contrib.gemfile.lock +++ b/gemfiles/ruby_3.3_contrib.gemfile.lock @@ -11,7 +11,6 @@ GEM remote: https://rubygems.org/ specs: addressable (2.4.0) - amq-protocol (2.3.2) ast (2.4.2) benchmark-ips (2.12.0) benchmark-memory (0.1.2) @@ -19,9 +18,6 @@ GEM binding_of_caller (1.0.0) debug_inspector (>= 0.0.1) bson (4.15.0) - bunny (2.20.3) - amq-protocol (~> 2.3, >= 2.3.1) - sorted_set (~> 1, >= 1.0.2) climate_control (0.2.0) coderay (1.1.3) concurrent-ruby (1.2.2) @@ -32,7 +28,7 @@ GEM datadog-ruby_core_source (3.3.7) debug_inspector (1.1.0) diff-lcs (1.5.0) - docile (1.4.0) + docile (1.4.1) dogstatsd-ruby (5.5.0) extlz4 (0.3.3) ffi (1.17.1-aarch64-linux-gnu) @@ -87,7 +83,6 @@ GEM rake (12.3.3) rake-compiler (1.2.1) rake - rbtree (0.4.6) redis (5.0.6) redis-client (>= 0.9.0) redis-client (0.14.1) @@ -149,42 +144,28 @@ GEM ruby2_keywords (0.0.5) semantic_logger (4.13.0) concurrent-ruby (~> 1.0) - serverengine (2.1.1) - sigdump (~> 0.2.2) - set (1.0.3) sidekiq (7.1.0) concurrent-ruby (< 2) connection_pool (>= 2.3.0) rack (>= 2.2.4) redis-client (>= 0.14.0) - sigdump (0.2.4) - simplecov (0.21.2) + simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) simplecov_json_formatter (~> 0.1) simplecov-cobertura (2.1.0) rexml simplecov (~> 0.19) - simplecov-html (0.12.3) + simplecov-html (0.13.1) simplecov_json_formatter (0.1.4) sinatra (3.0.6) mustermann (~> 3.0) rack (~> 2.2, >= 2.2.4) rack-protection (= 3.0.6) tilt (~> 2.0) - sneakers (2.12.0) - bunny (~> 2.14) - concurrent-ruby (~> 1.0) - rake (~> 12.3) - serverengine (~> 2.1.0) - thor - sorted_set (1.0.3) - rbtree - set (~> 1.0) strscan (3.1.0) sucker_punch (3.1.0) concurrent-ruby (~> 1.0) - thor (1.2.2) tilt (2.1.0) unicode-display_width (2.4.2) warning (1.3.0) @@ -234,7 +215,6 @@ DEPENDENCIES sidekiq (~> 7) simplecov simplecov-cobertura (~> 2.1.0) - sneakers (>= 2.12.0) sucker_punch warning (~> 1) webmock (>= 3.10.0) diff --git a/gemfiles/ruby_3.3_kicks_latest.gemfile b/gemfiles/ruby_3.3_kicks_latest.gemfile new file mode 100644 index 00000000000..64f56dfc13a --- /dev/null +++ b/gemfiles/ruby_3.3_kicks_latest.gemfile @@ -0,0 +1,43 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "extlz4", "~> 0.3", ">= 0.3.3" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-stack_explorer" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "rubocop", "~> 1.50.0", require: false +gem "rubocop-packaging", "~> 0.5.2", require: false +gem "rubocop-performance", "~> 1.9", require: false +gem "rubocop-rspec", ["~> 2.20", "< 2.21"], require: false +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "webrick", ">= 1.7.0" +gem "kicks" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.3_kicks_min.gemfile b/gemfiles/ruby_3.3_kicks_min.gemfile new file mode 100644 index 00000000000..ab3b79ba24a --- /dev/null +++ b/gemfiles/ruby_3.3_kicks_min.gemfile @@ -0,0 +1,43 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "extlz4", "~> 0.3", ">= 0.3.3" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-stack_explorer" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "rubocop", "~> 1.50.0", require: false +gem "rubocop-packaging", "~> 0.5.2", require: false +gem "rubocop-performance", "~> 1.9", require: false +gem "rubocop-rspec", ["~> 2.20", "< 2.21"], require: false +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "webrick", ">= 1.7.0" +gem "kicks", "= 3.0.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.3_sneakers_min.gemfile b/gemfiles/ruby_3.3_sneakers_min.gemfile new file mode 100644 index 00000000000..06398c48e74 --- /dev/null +++ b/gemfiles/ruby_3.3_sneakers_min.gemfile @@ -0,0 +1,43 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "extlz4", "~> 0.3", ">= 0.3.3" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-stack_explorer" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "rubocop", "~> 1.50.0", require: false +gem "rubocop-packaging", "~> 0.5.2", require: false +gem "rubocop-performance", "~> 1.9", require: false +gem "rubocop-rspec", ["~> 2.20", "< 2.21"], require: false +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "webrick", ">= 1.7.0" +gem "sneakers", "= 2.12.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.4_kicks_latest.gemfile b/gemfiles/ruby_3.4_kicks_latest.gemfile new file mode 100644 index 00000000000..cd40a1ded0b --- /dev/null +++ b/gemfiles/ruby_3.4_kicks_latest.gemfile @@ -0,0 +1,46 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "base64" +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "bigdecimal" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "extlz4", "~> 0.3", ">= 0.3.3" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "mutex_m" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-stack_explorer" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "rubocop", "~> 1.50.0", require: false +gem "rubocop-packaging", "~> 0.5.2", require: false +gem "rubocop-performance", "~> 1.9", require: false +gem "rubocop-rspec", ["~> 2.20", "< 2.21"], require: false +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "webrick", ">= 1.8.2" +gem "kicks" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.4_kicks_min.gemfile b/gemfiles/ruby_3.4_kicks_min.gemfile new file mode 100644 index 00000000000..dd50233cbd7 --- /dev/null +++ b/gemfiles/ruby_3.4_kicks_min.gemfile @@ -0,0 +1,46 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "base64" +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "bigdecimal" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "extlz4", "~> 0.3", ">= 0.3.3" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "mutex_m" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-stack_explorer" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "rubocop", "~> 1.50.0", require: false +gem "rubocop-packaging", "~> 0.5.2", require: false +gem "rubocop-performance", "~> 1.9", require: false +gem "rubocop-rspec", ["~> 2.20", "< 2.21"], require: false +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "webrick", ">= 1.8.2" +gem "kicks", "= 3.0.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.4_sneakers_min.gemfile b/gemfiles/ruby_3.4_sneakers_min.gemfile new file mode 100644 index 00000000000..ec948b0bd41 --- /dev/null +++ b/gemfiles/ruby_3.4_sneakers_min.gemfile @@ -0,0 +1,46 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "base64" +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "bigdecimal" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "extlz4", "~> 0.3", ">= 0.3.3" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "json-schema", "< 3" +gem "memory_profiler", "~> 0.9" +gem "mutex_m" +gem "os", "~> 1.1" +gem "pimpmychangelog", ">= 0.1.2" +gem "pry" +gem "pry-stack_explorer" +gem "rake", ">= 10.5" +gem "rake-compiler", "~> 1.1", ">= 1.1.1" +gem "rspec", "~> 3.13" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "rubocop", "~> 1.50.0", require: false +gem "rubocop-packaging", "~> 0.5.2", require: false +gem "rubocop-performance", "~> 1.9", require: false +gem "rubocop-rspec", ["~> 2.20", "< 2.21"], require: false +gem "simplecov" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "webrick", ">= 1.8.2" +gem "sneakers", "= 2.12.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/lib/datadog/tracing/contrib/registerable.rb b/lib/datadog/tracing/contrib/registerable.rb index b9f4f936d66..997b1923a88 100644 --- a/lib/datadog/tracing/contrib/registerable.rb +++ b/lib/datadog/tracing/contrib/registerable.rb @@ -33,6 +33,17 @@ module ClassMethods def register_as(name, registry: Contrib::REGISTRY, auto_patch: false, **options) registry.add(name, new(name, **options), auto_patch) end + + # Registers this `alias_name` in the global tracer registry as an alias of `original_name`. + # Using `alias_name` or `original_name` become interchangeable. + # The configuration object is shared between the two names. + # The patcher will only run once if both are activated. + def register_as_alias(original_name, alias_name, registry: Contrib::REGISTRY) + original = registry[original_name] + raise ArgumentError, "integration '#{original_name}' not registered" unless original + + registry.add(alias_name, original, false) + end end # Instance methods for registerable behavior diff --git a/lib/datadog/tracing/contrib/sneakers/integration.rb b/lib/datadog/tracing/contrib/sneakers/integration.rb index 1b3b8f71a5e..fd12abda1e1 100644 --- a/lib/datadog/tracing/contrib/sneakers/integration.rb +++ b/lib/datadog/tracing/contrib/sneakers/integration.rb @@ -13,13 +13,25 @@ module Sneakers class Integration include Contrib::Integration - MINIMUM_VERSION = Gem::Version.new('2.12.0') + MINIMUM_SNEAKERS_VERSION = Gem::Version.new('2.12.0') + # All versions are supported. Kicks first version is 3.0.0. + MINIMUM_KICKS_VERSION = Gem::Version.new('3.0.0') # @public_api Changing the integration name or integration options can cause breaking changes register_as :sneakers, auto_patch: true - + register_as_alias :sneakers, :kicks + + # Sneakers development continues in the Kicks gem. + # The **only** thing that has changed is the gem name, + # even the file naming and module namespacing are the same (require 'sneakers', `::Sneakers`). + # + # The last version of Sneakers is 2.12.0. + # The first version of Kicks is 3.0.0. We currently support all versions of Kicks. + # + # @see https://github.com/jondot/sneakers/commit/9780692624c666b6db8266d2d5710f709cb0f2e2 def self.version - Gem.loaded_specs['sneakers'] && Gem.loaded_specs['sneakers'].version + Gem.loaded_specs['sneakers'] && Gem.loaded_specs['sneakers'].version || \ + Gem.loaded_specs['kicks'] && Gem.loaded_specs['kicks'].version end def self.loaded? @@ -27,7 +39,7 @@ def self.loaded? end def self.compatible? - super && version >= MINIMUM_VERSION + super && version >= MINIMUM_SNEAKERS_VERSION end def new_configuration diff --git a/sig/datadog/tracing/contrib/registerable.rbs b/sig/datadog/tracing/contrib/registerable.rbs index f08abbfd1e5..78201994c6d 100644 --- a/sig/datadog/tracing/contrib/registerable.rbs +++ b/sig/datadog/tracing/contrib/registerable.rbs @@ -5,6 +5,8 @@ module Datadog def self.included: (untyped base) -> untyped module ClassMethods def register_as: (untyped name, ?registry: untyped, ?auto_patch: bool, **untyped options) -> untyped + + def register_as_alias: (Symbol original_name, Symbol alias_name, registry: Registry) -> void end module InstanceMethods attr_reader name: untyped diff --git a/spec/datadog/tracing/contrib/registerable_spec.rb b/spec/datadog/tracing/contrib/registerable_spec.rb index a3d5ef7a1ae..5a0cf6ff057 100644 --- a/spec/datadog/tracing/contrib/registerable_spec.rb +++ b/spec/datadog/tracing/contrib/registerable_spec.rb @@ -58,6 +58,44 @@ end end end + + describe '#register_as_alias' do + subject(:register_as_alias) { registerable_class.register_as_alias(:original, :alias, **options) } + + context 'when a registry' do + context 'is provided' do + let(:options) { { registry: registry } } + let(:registry) { Datadog::Tracing::Contrib::Registry.new } + + context 'with the original integration not registered' do + it { expect { register_as_alias }.to raise_error(ArgumentError) } + end + + context 'with the original integration registered' do + before { registerable_class.register_as(:original, registry: registry) } + + it 'creates an alias to the original integration object' do + register_as_alias + expect(registry[:alias]).to be(registry[:original]) + end + end + end + + context 'is not provided' do + let(:options) { {} } + let(:registry) { Datadog::Tracing::Contrib::Registry.new } + + before { registerable_class.register_as(:original, registry: registry) } + + it 'invokes the global Datadog.registry' do + stub_const('Datadog::Tracing::Contrib::REGISTRY', registry) + + register_as_alias + expect(registry[:alias]).to be(registry[:original]) + end + end + end + end end describe 'instance behavior' do diff --git a/spec/datadog/tracing/contrib/sneakers/integration_spec.rb b/spec/datadog/tracing/contrib/sneakers/integration_spec.rb index 3a553a48c42..169dbbdcc8c 100644 --- a/spec/datadog/tracing/contrib/sneakers/integration_spec.rb +++ b/spec/datadog/tracing/contrib/sneakers/integration_spec.rb @@ -9,12 +9,17 @@ subject(:version) { described_class.version } context 'when the "sneakers" gem is loaded' do - include_context 'loaded gems', sneakers: described_class::MINIMUM_VERSION + include_context 'loaded gems', sneakers: described_class::MINIMUM_SNEAKERS_VERSION it { is_expected.to be_a_kind_of(Gem::Version) } end - context 'when "sneakers" gem is not loaded' do - include_context 'loaded gems', sneakers: nil + context 'when the "kicks" gem is loaded' do + include_context 'loaded gems', kicks: described_class::MINIMUM_KICKS_VERSION + it { is_expected.to be_a_kind_of(Gem::Version) } + end + + context 'when neither gem is not loaded' do + include_context 'loaded gems', sneakers: nil, kicks: nil it { is_expected.to be nil } end end @@ -40,18 +45,32 @@ context 'when "sneakers" gem is loaded with a version' do context 'that is less than the minimum' do - include_context 'loaded gems', sneakers: decrement_gem_version(described_class::MINIMUM_VERSION) + include_context 'loaded gems', + sneakers: decrement_gem_version(described_class::MINIMUM_SNEAKERS_VERSION), + kicks: nil + it { is_expected.to be false } + end + + context 'that meets the minimum version' do + include_context 'loaded gems', sneakers: described_class::MINIMUM_SNEAKERS_VERSION, kicks: nil + it { is_expected.to be true } + end + end + + context 'when "kicks" gem is loaded with a version' do + context 'that is less than the minimum' do + include_context 'loaded gems', sneakers: nil, kicks: decrement_gem_version(described_class::MINIMUM_KICKS_VERSION) it { is_expected.to be false } end context 'that meets the minimum version' do - include_context 'loaded gems', sneakers: described_class::MINIMUM_VERSION + include_context 'loaded gems', sneakers: nil, kicks: described_class::MINIMUM_KICKS_VERSION it { is_expected.to be true } end end - context 'when gem is not loaded' do - include_context 'loaded gems', sneakers: nil + context 'when neither gem is not loaded' do + include_context 'loaded gems', sneakers: nil, kicks: nil it { is_expected.to be false } end end diff --git a/spec/datadog/tracing/contrib/sneakers/tracer_spec.rb b/spec/datadog/tracing/contrib/sneakers/tracer_spec.rb index 8798eb6a36b..0e04f022365 100644 --- a/spec/datadog/tracing/contrib/sneakers/tracer_spec.rb +++ b/spec/datadog/tracing/contrib/sneakers/tracer_spec.rb @@ -62,7 +62,7 @@ def work_with_params(_msg, _delivery_info, _metadata) let(:delivery_info) { double } let(:message) { Sneakers::ContentType.deserialize('{"foo":"bar"}', 'application/json') } let(:handler) { Object.new } - let(:metadata) { double } + let(:metadata) { { content_type: 'application/json' } } let(:routing_key) { 'something' } let(:consumer) { double('Consumer') } @@ -72,7 +72,6 @@ def work_with_params(_msg, _delivery_info, _metadata) allow(delivery_info).to receive(:routing_key).and_return(routing_key) allow(delivery_info).to receive(:consumer).and_return(consumer) allow(consumer).to receive(:queue).and_return(queue) - allow(metadata).to receive(:[]).with(:content_type).and_return('application/json') end it do