diff --git a/.github/dependency_filters.yml b/.github/dependency_filters.yml new file mode 100644 index 00000000000..b3c3aa1b287 --- /dev/null +++ b/.github/dependency_filters.yml @@ -0,0 +1,9 @@ +dependencies: + - Gemfile + - Appraisals + - datadog.gemspec + - tasks/appraisal.rake + - .github/workflows/lock-dependency.yml + - lib/datadog/version.rb + - appraisal/** + - gemfiles/** diff --git a/.github/workflows/add-milestone-to-pull-requests.yml b/.github/workflows/add-milestone-to-pull-requests.yml index b6c829c2a0e..50731476d0e 100644 --- a/.github/workflows/add-milestone-to-pull-requests.yml +++ b/.github/workflows/add-milestone-to-pull-requests.yml @@ -14,7 +14,7 @@ jobs: steps: - name: Checkout code # Checks out the branch that the pull request is merged into - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: ref: ${{ github.event.pull_request.base.ref }} diff --git a/.github/workflows/build-gem.yml b/.github/workflows/build-gem.yml index b82986029d7..5beb70f45d3 100644 --- a/.github/workflows/build-gem.yml +++ b/.github/workflows/build-gem.yml @@ -60,7 +60,7 @@ jobs: run: | find pkg - name: Upload artifact - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: 'datadog-gem-${{ matrix.type }}-gha${{ github.run_id }}-g${{ github.sha }}' path: 'pkg/*.gem' @@ -77,7 +77,7 @@ jobs: - build steps: - name: Download artifact - uses: actions/download-artifact@v3 + uses: actions/download-artifact@v4 with: name: 'datadog-gem-${{ matrix.type }}-gha${{ github.run_id }}-g${{ github.sha }}' path: 'pkg' @@ -103,7 +103,7 @@ jobs: if: ${{ inputs.push }} steps: - name: Download artifact - uses: actions/download-artifact@v3 + uses: actions/download-artifact@v4 with: name: 'datadog-gem-${{ matrix.type }}-gha${{ github.run_id }}-g${{ github.sha }}' path: 'pkg' diff --git a/.github/workflows/lock-dependency.yml b/.github/workflows/lock-dependency.yml new file mode 100644 index 00000000000..b226b135bc2 --- /dev/null +++ b/.github/workflows/lock-dependency.yml @@ -0,0 +1,128 @@ +name: Lock Dependency + +# TODO: Make this job mandatory +# TODO: Make this on workflow_dispatch + +on: + # Limitation about `paths` types: + # > https://docs.github.com/en/actions/writing-workflows/workflow-syntax-for-github-actions#git-diff-comparisons + push: + branches-ignore: + - master + - release + - '*-stable' + pull_request: + # Run this job when a PR is opened, covering the scenario where branch is ready and pushed before PR is opened. + types: + - opened + + +# TODO: Improve concurrency between push event and pull_request event +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +jobs: + pr: + name: Pull Request attached + runs-on: ubuntu-latest + outputs: + pr_found: ${{ steps.pr.outputs.pr_found }} + pr_base_ref: ${{ steps.pr.outputs.pr.base.ref }} + steps: + # Limitation with pull_request trigger: https://github.com/8BitJonny/gh-get-current-pr/tree/3.0.0/?tab=readme-ov-file#limitations + - uses: 8BitJonny/gh-get-current-pr@3.0.0 + id: pr + with: + filterOutClosed: true # Don't trigger on commits with closed PRs, including merges into `master`. + + dependency: + name: Depenedency changes + needs: pr + if: ${{ needs.pr.outputs.pr_found == 'true' }} + runs-on: ubuntu-latest + outputs: + changes: ${{ steps.changes.outputs.dependencies }} + steps: + - uses: actions/checkout@v4 + - uses: dorny/paths-filter@v3 + id: changes + with: + # This is the best effort to get the diff comparison. + # The result remains time-sensitive since the `base` is constantly changing and + # the PR cannot be guaranteed to be up-to-date. + # + # Unless enable `Require branches to be up to date before merging` in the repository rule settings + base: ${{ needs.pr.outputs.pr_base_ref }} + filters: .github/dependency_filters.yml + + lock: + runs-on: ubuntu-latest + needs: dependency + if: ${{ needs.dependency.outputs.changes == 'true' }} + strategy: + fail-fast: false + matrix: + engine: + # ADD NEW RUBIES HERE + - name: ruby + version: '3.4' + - name: ruby + version: '3.3' + - name: ruby + version: '3.2' + - name: ruby + version: '3.1' + - name: ruby + version: '3.0' + - name: ruby + version: '2.7' + - name: ruby + version: '2.6' + - name: ruby + version: '2.5' + - name: jruby + version: '9.4' + - name: jruby + version: '9.3' + - name: jruby + version: '9.2' + container: + image: ghcr.io/datadog/images-rb/engines/${{ matrix.engine.name }}:${{ matrix.engine.version }} + env: + BUNDLE_WITHOUT: check + steps: + - uses: actions/checkout@v4 + - run: | + ruby -v + gem -v + bundler -v + - run: bundle install + + # TODO: Migrate away from `appraisal` + - run: bundle exec appraisal generate + - run: bundle exec rake dependency:lock + - uses: actions/upload-artifact@v4 + with: + name: lock-dependency-${{ github.run_id }}-${{ matrix.engine.name }}-${{ matrix.engine.version }} + path: gemfiles/${{ matrix.engine.name }}_${{ matrix.engine.version }}* + + # TODO: Change token to trigger workflow automation + # > New commit by GITHUB_TOKEN does not trigger workflow automation to prevent infinite loop + commit: + name: Commit changes + needs: lock + runs-on: ubuntu-latest + permissions: + contents: write + steps: + - uses: actions/checkout@v4 + - uses: actions/download-artifact@v4 + with: + path: gemfiles + pattern: lock-dependency-${{ github.run_id }}-* + merge-multiple: true + - uses: stefanzweifel/git-auto-commit-action@v5 + with: + file_pattern: 'gemfiles/*' + commit_message: "[🤖] Lock Dependency: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}" diff --git a/.github/workflows/pull-request-labeler.yml b/.github/workflows/pull-request-labeler.yml index 869d0d63323..c4cf689fdec 100644 --- a/.github/workflows/pull-request-labeler.yml +++ b/.github/workflows/pull-request-labeler.yml @@ -9,8 +9,7 @@ jobs: pull-requests: write runs-on: ubuntu-latest steps: - - uses: kachkaev/labeler@d89797c51d07680aec17049cc6790e9d323d9a93 # actions/labeler@v4 + https://github.com/actions/labeler/pull/316 + - uses: actions/labeler@v5 with: repo-token: "${{ secrets.GITHUB_TOKEN }}" configuration-path: .github/labeler.yml - dot: true # From https://github.com/actions/labeler/pull/316 \ No newline at end of file diff --git a/.github/workflows/system-tests.yml b/.github/workflows/system-tests.yml index 5a58e401e51..d04490e171a 100644 --- a/.github/workflows/system-tests.yml +++ b/.github/workflows/system-tests.yml @@ -376,7 +376,7 @@ jobs: - name: Log in to the Container registry run: | echo ${{ secrets.GITHUB_TOKEN }} | docker login ${{ env.REGISTRY }} -u ${{ github.actor }} --password-stdin - - uses: actions/delete-package-versions@v4 + - uses: actions/delete-package-versions@v5 with: package-version-ids: 'gha${{ github.run_id }}-g${{ github.sha }}' package-name: 'system-tests/${{ matrix.image }}' diff --git a/.github/workflows/yard.yml b/.github/workflows/yard.yml index b17da55156e..3a303388763 100644 --- a/.github/workflows/yard.yml +++ b/.github/workflows/yard.yml @@ -38,12 +38,12 @@ jobs: - name: Generate YARD documentation run: bundle exec rake docs --rakefile=tasks/yard.rake - name: Setup Pages - uses: actions/configure-pages@v3 + uses: actions/configure-pages@v5 - name: Upload artifact - uses: actions/upload-pages-artifact@v1 + uses: actions/upload-pages-artifact@v3 with: # Upload generated YARD directory path: 'doc/' - name: Deploy to GitHub Pages id: deployment - uses: actions/deploy-pages@v2 + uses: actions/deploy-pages@v4 diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml index 99797623fbf..ca95277508c 100644 --- a/.rubocop_todo.yml +++ b/.rubocop_todo.yml @@ -131,3 +131,4 @@ Style/ClassVars: - 'spec/datadog/tracing/contrib/rails/support/rails4.rb' - 'spec/datadog/tracing/contrib/rails/support/rails5.rb' - 'spec/datadog/tracing/contrib/rails/support/rails6.rb' + - 'spec/datadog/tracing/contrib/rails/support/rails7.rb' diff --git a/Appraisals b/Appraisals index b312f409b3e..ef649f43103 100644 --- a/Appraisals +++ b/Appraisals @@ -52,7 +52,7 @@ def build_coverage_matrix(integration, range, gem: nil, min: nil, meta: {}) if min appraise "#{integration}-min" do - gem gem, "= #{n}" + gem gem, "= #{min}" meta.each { |k, v| gem k, v } end end diff --git a/Matrixfile b/Matrixfile index b76c14e12be..731c269e92a 100644 --- a/Matrixfile +++ b/Matrixfile @@ -27,7 +27,10 @@ 'opentelemetry' => '❌ 2.5 / ✅ 2.6 / ✅ 2.7 / ✅ 3.0 / ✅ 3.1 / ✅ 3.2 / ✅ 3.3 / ✅ 3.4 / ❌ jruby' }, 'action_pack' => { - 'activesupport' => '✅ 2.5 / ✅ 2.6 / ✅ 2.7 / ✅ 3.0 / ✅ 3.1 / ✅ 3.2 / ✅ 3.3 / ✅ 3.4 / ✅ jruby', + 'rails5-mysql2' => '✅ 2.5 / ✅ 2.6 / ✅ 2.7 / ❌ 3.0 / ❌ 3.1 / ❌ 3.2 / ❌ 3.3 / ❌ 3.4 / ✅ jruby', + 'rails6-mysql2' => '❌ 2.5 / ❌ 2.6 / ❌ 2.7 / ❌ 3.0 / ❌ 3.1 / ❌ 3.2 / ❌ 3.3 / ❌ 3.4 / ✅ jruby', + 'rails7' => '❌ 2.5 / ❌ 2.6 / ❌ 2.7 / ✅ 3.0 / ✅ 3.1 / ✅ 3.2 / ✅ 3.3 / ✅ 3.4 / ❌ jruby', + 'rails71' => '❌ 2.5 / ❌ 2.6 / ❌ 2.7 / ✅ 3.0 / ✅ 3.1 / ✅ 3.2 / ✅ 3.3 / ✅ 3.4 / ❌ jruby', }, 'action_view' => { 'activesupport' => '✅ 2.5 / ✅ 2.6 / ✅ 2.7 / ✅ 3.0 / ✅ 3.1 / ✅ 3.2 / ✅ 3.3 / ✅ 3.4 / ✅ jruby', @@ -173,6 +176,8 @@ 'stripe-9' => '✅ 2.5 / ✅ 2.6 / ✅ 2.7 / ✅ 3.0 / ✅ 3.1 / ✅ 3.2 / ✅ 3.3 / ✅ 3.4 / ✅ jruby', 'stripe-8' => '✅ 2.5 / ✅ 2.6 / ✅ 2.7 / ✅ 3.0 / ✅ 3.1 / ✅ 3.2 / ✅ 3.3 / ✅ 3.4 / ✅ jruby', 'stripe-7' => '✅ 2.5 / ✅ 2.6 / ✅ 2.7 / ✅ 3.0 / ✅ 3.1 / ✅ 3.2 / ✅ 3.3 / ✅ 3.4 / ✅ jruby', + # TODO: Add stripe-5 and stripe-6 + 'stripe-min' => '✅ 2.5 / ✅ 2.6 / ✅ 2.7 / ✅ 3.0 / ✅ 3.1 / ✅ 3.2 / ✅ 3.3 / ✅ 3.4 / ✅ jruby', # 5.15.0 }, 'sucker_punch' => { 'contrib' => '✅ 2.5 / ✅ 2.6 / ✅ 2.7 / ✅ 3.0 / ✅ 3.1 / ✅ 3.2 / ✅ 3.3 / ✅ 3.4 / ✅ jruby' diff --git a/appraisal/jruby-9.2.rb b/appraisal/jruby-9.2.rb index cd3a5619f49..ed8c523b69f 100644 --- a/appraisal/jruby-9.2.rb +++ b/appraisal/jruby-9.2.rb @@ -189,7 +189,7 @@ gem 'typhoeus' end -build_coverage_matrix('stripe', 7..12) +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) diff --git a/appraisal/jruby-9.3.rb b/appraisal/jruby-9.3.rb index 3a98ded6920..6556d4f81bb 100644 --- a/appraisal/jruby-9.3.rb +++ b/appraisal/jruby-9.3.rb @@ -162,7 +162,7 @@ gem 'typhoeus' end -build_coverage_matrix('stripe', 7..12) +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) diff --git a/appraisal/jruby-9.4.rb b/appraisal/jruby-9.4.rb index 1968306e239..2bf7c0d5698 100644 --- a/appraisal/jruby-9.4.rb +++ b/appraisal/jruby-9.4.rb @@ -66,7 +66,7 @@ gem 'typhoeus' end -build_coverage_matrix('stripe', 7..12) +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) diff --git a/appraisal/ruby-2.5.rb b/appraisal/ruby-2.5.rb index 2e8d2cf9772..d0ff148a8d1 100644 --- a/appraisal/ruby-2.5.rb +++ b/appraisal/ruby-2.5.rb @@ -209,7 +209,7 @@ gem 'typhoeus' end -build_coverage_matrix('stripe', 7..12) +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) diff --git a/appraisal/ruby-2.6.rb b/appraisal/ruby-2.6.rb index 312a76cdba9..8cfe29e6fab 100644 --- a/appraisal/ruby-2.6.rb +++ b/appraisal/ruby-2.6.rb @@ -162,7 +162,7 @@ gem 'typhoeus' end -build_coverage_matrix('stripe', 7..12) +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) @@ -189,6 +189,10 @@ gem 'ruby-kafka', '>= 0.7.10' end +appraise 'actionpack-5.0' do + gem 'rails', '~> 5.0' +end + appraise 'contrib' do gem 'concurrent-ruby' gem 'dalli', '>= 3.0.0' diff --git a/appraisal/ruby-2.7.rb b/appraisal/ruby-2.7.rb index 4e02ac9adc2..e7c203513b7 100644 --- a/appraisal/ruby-2.7.rb +++ b/appraisal/ruby-2.7.rb @@ -162,7 +162,7 @@ gem 'typhoeus' end -build_coverage_matrix('stripe', 7..12) +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) diff --git a/appraisal/ruby-3.0.rb b/appraisal/ruby-3.0.rb index 7dcd32e7a3f..7cec314f6aa 100644 --- a/appraisal/ruby-3.0.rb +++ b/appraisal/ruby-3.0.rb @@ -50,6 +50,14 @@ gem 'net-smtp' end +appraise 'rails7' do + gem 'rails', '~> 7.0.0' +end + +appraise 'rails71' do + gem 'rails', '~> 7.1.0' +end + appraise 'resque2-redis3' do gem 'redis', '< 4.0' gem 'resque', '>= 2.0' @@ -75,7 +83,7 @@ gem 'typhoeus' end -build_coverage_matrix('stripe', 7..12) +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) diff --git a/appraisal/ruby-3.1.rb b/appraisal/ruby-3.1.rb index 7dcd32e7a3f..7cec314f6aa 100644 --- a/appraisal/ruby-3.1.rb +++ b/appraisal/ruby-3.1.rb @@ -50,6 +50,14 @@ gem 'net-smtp' end +appraise 'rails7' do + gem 'rails', '~> 7.0.0' +end + +appraise 'rails71' do + gem 'rails', '~> 7.1.0' +end + appraise 'resque2-redis3' do gem 'redis', '< 4.0' gem 'resque', '>= 2.0' @@ -75,7 +83,7 @@ gem 'typhoeus' end -build_coverage_matrix('stripe', 7..12) +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) diff --git a/appraisal/ruby-3.2.rb b/appraisal/ruby-3.2.rb index 7dcd32e7a3f..7cec314f6aa 100644 --- a/appraisal/ruby-3.2.rb +++ b/appraisal/ruby-3.2.rb @@ -50,6 +50,14 @@ gem 'net-smtp' end +appraise 'rails7' do + gem 'rails', '~> 7.0.0' +end + +appraise 'rails71' do + gem 'rails', '~> 7.1.0' +end + appraise 'resque2-redis3' do gem 'redis', '< 4.0' gem 'resque', '>= 2.0' @@ -75,7 +83,7 @@ gem 'typhoeus' end -build_coverage_matrix('stripe', 7..12) +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) diff --git a/appraisal/ruby-3.3.rb b/appraisal/ruby-3.3.rb index 6bdd3958304..e10aa99feb1 100644 --- a/appraisal/ruby-3.3.rb +++ b/appraisal/ruby-3.3.rb @@ -50,6 +50,14 @@ gem 'net-smtp' end +appraise 'rails7' do + gem 'rails', '~> 7.0.0' +end + +appraise 'rails71' do + gem 'rails', '~> 7.1.0' +end + appraise 'resque2-redis3' do gem 'redis', '< 4.0' gem 'resque', '>= 2.0' @@ -75,7 +83,7 @@ gem 'typhoeus' end -build_coverage_matrix('stripe', 7..12) +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) diff --git a/appraisal/ruby-3.4.rb b/appraisal/ruby-3.4.rb index e38331b9dba..8c2b0c4c35f 100644 --- a/appraisal/ruby-3.4.rb +++ b/appraisal/ruby-3.4.rb @@ -50,6 +50,14 @@ gem 'net-smtp' end +appraise 'rails7' do + gem 'rails', '~> 7.0.0' +end + +appraise 'rails71' do + gem 'rails', '~> 7.1.0' +end + appraise 'resque2-redis3' do gem 'redis', '< 4.0' gem 'resque', '>= 2.0' @@ -75,7 +83,7 @@ gem 'typhoeus' end -build_coverage_matrix('stripe', 7..12) +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) diff --git a/benchmarks/profiler_sample_serialize.rb b/benchmarks/profiler_sample_serialize.rb index 1b02f1de623..08b67c410a4 100644 --- a/benchmarks/profiler_sample_serialize.rb +++ b/benchmarks/profiler_sample_serialize.rb @@ -34,7 +34,7 @@ def create_profiler def run_benchmark Benchmark.ips do |x| - benchmark_time = VALIDATE_BENCHMARK_MODE ? { time: 0.01, warmup: 0 } : { time: 10, warmup: 2 } + benchmark_time = VALIDATE_BENCHMARK_MODE ? { time: 0.01, warmup: 0 } : { time: 60, warmup: 2 } x.config( **benchmark_time, ) diff --git a/gemfiles/jruby_9.2_stripe_min.gemfile b/gemfiles/jruby_9.2_stripe_min.gemfile new file mode 100644 index 00000000000..4186657ff5b --- /dev/null +++ b/gemfiles/jruby_9.2_stripe_min.gemfile @@ -0,0 +1,40 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "appraisal", "~> 2.4.0" +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "builder" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +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.12" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "simplecov", git: "https://github.com/DataDog/simplecov", ref: "3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "rexml", ">= 3.2.7" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "ffi", "~> 1.16.3", require: false +gem "stripe", "= 5.15.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/jruby_9.2_stripe_min.gemfile.lock b/gemfiles/jruby_9.2_stripe_min.gemfile.lock new file mode 100644 index 00000000000..b2f9c525ce8 --- /dev/null +++ b/gemfiles/jruby_9.2_stripe_min.gemfile.lock @@ -0,0 +1,136 @@ +GIT + remote: https://github.com/DataDog/simplecov + revision: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + ref: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + specs: + simplecov (0.21.2) + docile (~> 1.1) + simplecov-html (~> 0.11) + simplecov_json_formatter (~> 0.1) + +PATH + remote: .. + specs: + datadog (2.3.0) + debase-ruby_core_source (= 3.3.1) + libdatadog (~> 12.0.0.1.0) + libddwaf (~> 1.14.0.0.0) + msgpack + +GEM + remote: https://rubygems.org/ + specs: + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + appraisal (2.4.1) + bundler + rake + thor (>= 0.14.0) + benchmark-ips (2.14.0) + benchmark-memory (0.1.2) + memory_profiler (~> 0.9) + bigdecimal (3.1.8-java) + builder (3.3.0) + climate_control (0.2.0) + coderay (1.1.3) + concurrent-ruby (1.3.4) + crack (1.0.0) + bigdecimal + rexml + debase-ruby_core_source (3.3.1) + diff-lcs (1.5.1) + docile (1.4.1) + dogstatsd-ruby (5.6.1) + ffi (1.16.3-java) + hashdiff (1.1.1) + json-schema (2.8.1) + addressable (>= 2.4) + libdatadog (12.0.0.1.0) + libddwaf (1.14.0.0.0-java) + ffi (~> 1.0) + memory_profiler (0.9.14) + method_source (1.1.0) + msgpack (1.7.2-java) + os (1.1.4) + pimpmychangelog (0.1.3) + pry (0.14.2-java) + coderay (~> 1.1) + method_source (~> 1.0) + spoon (~> 0.0) + pry-debugger-jruby (2.1.1-java) + pry (>= 0.13, < 0.15) + ruby-debug-base (>= 0.10.4, < 0.12) + public_suffix (4.0.7) + rake (13.2.1) + rake-compiler (1.2.7) + rake + rexml (3.3.7) + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-collection_matchers (1.2.1) + rspec-expectations (>= 2.99.0.beta1) + rspec-core (3.13.1) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.3) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.1) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-support (3.13.1) + rspec-wait (0.0.10) + rspec (>= 3.0) + rspec_junit_formatter (0.6.0) + rspec-core (>= 2, < 4, != 2.12.0) + ruby-debug-base (0.11.0-java) + simplecov-cobertura (2.1.0) + rexml + simplecov (~> 0.19) + simplecov-html (0.13.1) + simplecov_json_formatter (0.1.4) + spoon (0.0.6) + ffi + stripe (5.15.0) + thor (1.2.2) + warning (1.4.0) + webmock (3.23.1) + addressable (>= 2.8.0) + crack (>= 0.3.2) + hashdiff (>= 0.4.0, < 2.0.0) + +PLATFORMS + universal-java-1.8 + +DEPENDENCIES + appraisal (~> 2.4.0) + benchmark-ips (~> 2.8) + benchmark-memory (< 0.2) + builder + climate_control (~> 0.2.0) + concurrent-ruby + datadog! + dogstatsd-ruby (>= 3.3.0, != 5.1.0, != 5.0.1, != 5.0.0) + ffi (~> 1.16.3) + json-schema (< 3) + memory_profiler (~> 0.9) + os (~> 1.1) + pimpmychangelog (>= 0.1.2) + pry + pry-debugger-jruby + rake (>= 10.5) + rake-compiler (~> 1.1, >= 1.1.1) + rexml (>= 3.2.7) + rspec (~> 3.12) + rspec-collection_matchers (~> 1.1) + rspec-wait (~> 0) + rspec_junit_formatter (>= 0.5.1) + simplecov! + simplecov-cobertura (~> 2.1.0) + stripe (= 5.15.0) + warning (~> 1) + webmock (>= 3.10.0) + +BUNDLED WITH + 2.3.26 diff --git a/gemfiles/jruby_9.3_stripe_min.gemfile b/gemfiles/jruby_9.3_stripe_min.gemfile new file mode 100644 index 00000000000..b9d758f7833 --- /dev/null +++ b/gemfiles/jruby_9.3_stripe_min.gemfile @@ -0,0 +1,44 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "appraisal", "~> 2.4.0" +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "builder" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +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.12" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "simplecov", git: "https://github.com/DataDog/simplecov", ref: "3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "rexml", ">= 3.2.7" +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 "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "ffi", "~> 1.16.3", require: false +gem "stripe", "= 5.15.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/jruby_9.3_stripe_min.gemfile.lock b/gemfiles/jruby_9.3_stripe_min.gemfile.lock new file mode 100644 index 00000000000..0c363830263 --- /dev/null +++ b/gemfiles/jruby_9.3_stripe_min.gemfile.lock @@ -0,0 +1,173 @@ +GIT + remote: https://github.com/DataDog/simplecov + revision: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + ref: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + specs: + simplecov (0.21.2) + docile (~> 1.1) + simplecov-html (~> 0.11) + simplecov_json_formatter (~> 0.1) + +PATH + remote: .. + specs: + datadog (2.3.0) + debase-ruby_core_source (= 3.3.1) + libdatadog (~> 12.0.0.1.0) + libddwaf (~> 1.14.0.0.0) + msgpack + +GEM + remote: https://rubygems.org/ + specs: + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + appraisal (2.4.1) + bundler + rake + thor (>= 0.14.0) + ast (2.4.2) + benchmark-ips (2.14.0) + benchmark-memory (0.1.2) + memory_profiler (~> 0.9) + bigdecimal (3.1.8-java) + builder (3.3.0) + climate_control (0.2.0) + coderay (1.1.3) + concurrent-ruby (1.3.4) + crack (1.0.0) + bigdecimal + rexml + debase-ruby_core_source (3.3.1) + diff-lcs (1.5.1) + docile (1.4.1) + dogstatsd-ruby (5.6.1) + ffi (1.16.3-java) + hashdiff (1.1.1) + json (2.7.2-java) + json-schema (2.8.1) + addressable (>= 2.4) + libdatadog (12.0.0.1.0) + libddwaf (1.14.0.0.0-java) + ffi (~> 1.0) + memory_profiler (0.9.14) + method_source (1.1.0) + msgpack (1.7.2-java) + os (1.1.4) + parallel (1.24.0) + parser (3.3.5.0) + ast (~> 2.4.1) + racc + pimpmychangelog (0.1.3) + pry (0.14.2-java) + coderay (~> 1.1) + method_source (~> 1.0) + spoon (~> 0.0) + pry-debugger-jruby (2.1.1-java) + pry (>= 0.13, < 0.15) + ruby-debug-base (>= 0.10.4, < 0.12) + public_suffix (5.1.1) + racc (1.8.1-java) + rainbow (3.1.1) + rake (13.2.1) + rake-compiler (1.2.7) + rake + regexp_parser (2.9.2) + rexml (3.3.7) + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-collection_matchers (1.2.1) + rspec-expectations (>= 2.99.0.beta1) + rspec-core (3.13.1) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.3) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.1) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-support (3.13.1) + rspec-wait (0.0.10) + rspec (>= 3.0) + rspec_junit_formatter (0.6.0) + rspec-core (>= 2, < 4, != 2.12.0) + rubocop (1.50.2) + json (~> 2.3) + parallel (~> 1.10) + parser (>= 3.2.0.0) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 1.8, < 3.0) + rexml (>= 3.2.5, < 4.0) + rubocop-ast (>= 1.28.0, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 3.0) + rubocop-ast (1.30.0) + parser (>= 3.2.1.0) + rubocop-capybara (2.18.0) + rubocop (~> 1.41) + rubocop-packaging (0.5.2) + rubocop (>= 1.33, < 2.0) + rubocop-performance (1.17.1) + rubocop (>= 1.7.0, < 2.0) + rubocop-ast (>= 0.4.0) + rubocop-rspec (2.20.0) + rubocop (~> 1.33) + rubocop-capybara (~> 2.17) + ruby-debug-base (0.11.0-java) + ruby-progressbar (1.13.0) + simplecov-cobertura (2.1.0) + rexml + simplecov (~> 0.19) + simplecov-html (0.13.1) + simplecov_json_formatter (0.1.4) + spoon (0.0.6) + ffi + stripe (5.15.0) + thor (1.3.2) + unicode-display_width (2.6.0) + warning (1.4.0) + webmock (3.23.1) + addressable (>= 2.8.0) + crack (>= 0.3.2) + hashdiff (>= 0.4.0, < 2.0.0) + +PLATFORMS + universal-java-11 + +DEPENDENCIES + appraisal (~> 2.4.0) + benchmark-ips (~> 2.8) + benchmark-memory (< 0.2) + builder + climate_control (~> 0.2.0) + concurrent-ruby + datadog! + dogstatsd-ruby (>= 3.3.0, != 5.1.0, != 5.0.1, != 5.0.0) + ffi (~> 1.16.3) + json-schema (< 3) + memory_profiler (~> 0.9) + os (~> 1.1) + pimpmychangelog (>= 0.1.2) + pry + pry-debugger-jruby + rake (>= 10.5) + rake-compiler (~> 1.1, >= 1.1.1) + rexml (>= 3.2.7) + rspec (~> 3.12) + rspec-collection_matchers (~> 1.1) + rspec-wait (~> 0) + rspec_junit_formatter (>= 0.5.1) + rubocop (~> 1.50.0) + rubocop-packaging (~> 0.5.2) + rubocop-performance (~> 1.9) + rubocop-rspec (~> 2.20, < 2.21) + simplecov! + simplecov-cobertura (~> 2.1.0) + stripe (= 5.15.0) + warning (~> 1) + webmock (>= 3.10.0) + +BUNDLED WITH + 2.3.26 diff --git a/gemfiles/jruby_9.4_stripe_min.gemfile b/gemfiles/jruby_9.4_stripe_min.gemfile new file mode 100644 index 00000000000..cfc1a46b497 --- /dev/null +++ b/gemfiles/jruby_9.4_stripe_min.gemfile @@ -0,0 +1,45 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "appraisal", "~> 2.4.0" +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "builder" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +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.12" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "simplecov", git: "https://github.com/DataDog/simplecov", ref: "3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "rexml", ">= 3.2.7" +gem "webrick", ">= 1.7.0" +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 "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "ffi", "~> 1.16.3", require: false +gem "stripe", "= 5.15.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/jruby_9.4_stripe_min.gemfile.lock b/gemfiles/jruby_9.4_stripe_min.gemfile.lock new file mode 100644 index 00000000000..15cba605b48 --- /dev/null +++ b/gemfiles/jruby_9.4_stripe_min.gemfile.lock @@ -0,0 +1,175 @@ +GIT + remote: https://github.com/DataDog/simplecov + revision: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + ref: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + specs: + simplecov (0.21.2) + docile (~> 1.1) + simplecov-html (~> 0.11) + simplecov_json_formatter (~> 0.1) + +PATH + remote: .. + specs: + datadog (2.3.0) + debase-ruby_core_source (= 3.3.1) + libdatadog (~> 12.0.0.1.0) + libddwaf (~> 1.14.0.0.0) + msgpack + +GEM + remote: https://rubygems.org/ + specs: + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + appraisal (2.4.1) + bundler + rake + thor (>= 0.14.0) + ast (2.4.2) + benchmark-ips (2.14.0) + benchmark-memory (0.1.2) + memory_profiler (~> 0.9) + bigdecimal (3.1.8-java) + builder (3.3.0) + climate_control (0.2.0) + coderay (1.1.3) + concurrent-ruby (1.3.4) + crack (1.0.0) + bigdecimal + rexml + debase-ruby_core_source (3.3.1) + diff-lcs (1.5.1) + docile (1.4.1) + dogstatsd-ruby (5.6.1) + ffi (1.16.3-java) + hashdiff (1.1.1) + json (2.7.2-java) + json-schema (2.8.1) + addressable (>= 2.4) + libdatadog (12.0.0.1.0) + libddwaf (1.14.0.0.0-java) + ffi (~> 1.0) + memory_profiler (0.9.14) + method_source (1.1.0) + msgpack (1.7.2-java) + os (1.1.4) + parallel (1.26.3) + parser (3.3.5.0) + ast (~> 2.4.1) + racc + pimpmychangelog (0.1.3) + pry (0.14.2-java) + coderay (~> 1.1) + method_source (~> 1.0) + spoon (~> 0.0) + pry-debugger-jruby (2.1.1-java) + pry (>= 0.13, < 0.15) + ruby-debug-base (>= 0.10.4, < 0.12) + public_suffix (6.0.1) + racc (1.8.1-java) + rainbow (3.1.1) + rake (13.2.1) + rake-compiler (1.2.7) + rake + regexp_parser (2.9.2) + rexml (3.3.7) + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-collection_matchers (1.2.1) + rspec-expectations (>= 2.99.0.beta1) + rspec-core (3.13.1) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.3) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.1) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-support (3.13.1) + rspec-wait (0.0.10) + rspec (>= 3.0) + rspec_junit_formatter (0.6.0) + rspec-core (>= 2, < 4, != 2.12.0) + rubocop (1.50.2) + json (~> 2.3) + parallel (~> 1.10) + parser (>= 3.2.0.0) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 1.8, < 3.0) + rexml (>= 3.2.5, < 4.0) + rubocop-ast (>= 1.28.0, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 3.0) + rubocop-ast (1.32.3) + parser (>= 3.3.1.0) + rubocop-capybara (2.21.0) + rubocop (~> 1.41) + rubocop-packaging (0.5.2) + rubocop (>= 1.33, < 2.0) + rubocop-performance (1.22.1) + rubocop (>= 1.48.1, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) + rubocop-rspec (2.20.0) + rubocop (~> 1.33) + rubocop-capybara (~> 2.17) + ruby-debug-base (0.11.0-java) + ruby-progressbar (1.13.0) + simplecov-cobertura (2.1.0) + rexml + simplecov (~> 0.19) + simplecov-html (0.13.1) + simplecov_json_formatter (0.1.4) + spoon (0.0.6) + ffi + stripe (5.15.0) + thor (1.3.2) + unicode-display_width (2.6.0) + warning (1.4.0) + webmock (3.23.1) + addressable (>= 2.8.0) + crack (>= 0.3.2) + hashdiff (>= 0.4.0, < 2.0.0) + webrick (1.8.1) + +PLATFORMS + universal-java-11 + +DEPENDENCIES + appraisal (~> 2.4.0) + benchmark-ips (~> 2.8) + benchmark-memory (< 0.2) + builder + climate_control (~> 0.2.0) + concurrent-ruby + datadog! + dogstatsd-ruby (>= 3.3.0, != 5.1.0, != 5.0.1, != 5.0.0) + ffi (~> 1.16.3) + json-schema (< 3) + memory_profiler (~> 0.9) + os (~> 1.1) + pimpmychangelog (>= 0.1.2) + pry + pry-debugger-jruby + rake (>= 10.5) + rake-compiler (~> 1.1, >= 1.1.1) + rexml (>= 3.2.7) + rspec (~> 3.12) + rspec-collection_matchers (~> 1.1) + rspec-wait (~> 0) + rspec_junit_formatter (>= 0.5.1) + rubocop (~> 1.50.0) + rubocop-packaging (~> 0.5.2) + rubocop-performance (~> 1.9) + rubocop-rspec (~> 2.20, < 2.21) + simplecov! + simplecov-cobertura (~> 2.1.0) + stripe (= 5.15.0) + warning (~> 1) + webmock (>= 3.10.0) + webrick (>= 1.7.0) + +BUNDLED WITH + 2.3.26 diff --git a/gemfiles/ruby_2.5_stripe_min.gemfile b/gemfiles/ruby_2.5_stripe_min.gemfile new file mode 100644 index 00000000000..ee85c7b28f5 --- /dev/null +++ b/gemfiles/ruby_2.5_stripe_min.gemfile @@ -0,0 +1,43 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "appraisal", "~> 2.4.0" +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "builder" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "extlz4", "~> 0.3", ">= 0.3.3" +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.12" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "simplecov", git: "https://github.com/DataDog/simplecov", ref: "3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "rexml", ">= 3.2.7" +gem "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1", "< 3.19.2"] +gem "ffi", "~> 1.16.3", require: false +gem "stripe", "= 5.15.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_2.5_stripe_min.gemfile.lock b/gemfiles/ruby_2.5_stripe_min.gemfile.lock new file mode 100644 index 00000000000..b752d9f8688 --- /dev/null +++ b/gemfiles/ruby_2.5_stripe_min.gemfile.lock @@ -0,0 +1,147 @@ +GIT + remote: https://github.com/DataDog/simplecov + revision: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + ref: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + specs: + simplecov (0.21.2) + docile (~> 1.1) + simplecov-html (~> 0.11) + simplecov_json_formatter (~> 0.1) + +PATH + remote: .. + specs: + datadog (2.3.0) + debase-ruby_core_source (= 3.3.1) + libdatadog (~> 12.0.0.1.0) + libddwaf (~> 1.14.0.0.0) + msgpack + +GEM + remote: https://rubygems.org/ + specs: + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + appraisal (2.4.1) + bundler + rake + thor (>= 0.14.0) + benchmark-ips (2.14.0) + benchmark-memory (0.1.2) + memory_profiler (~> 0.9) + bigdecimal (3.1.8) + binding_of_caller (0.8.0) + debug_inspector (>= 0.0.1) + builder (3.3.0) + climate_control (0.2.0) + coderay (1.1.3) + concurrent-ruby (1.3.4) + crack (1.0.0) + bigdecimal + rexml + debase-ruby_core_source (3.3.1) + debug_inspector (1.2.0) + diff-lcs (1.5.1) + docile (1.4.1) + dogstatsd-ruby (5.6.1) + extlz4 (0.3.4) + ffi (1.16.3) + google-protobuf (3.19.1) + google-protobuf (3.19.1-x86_64-linux) + hashdiff (1.1.1) + json-schema (2.8.1) + addressable (>= 2.4) + libdatadog (12.0.0.1.0-aarch64-linux) + libdatadog (12.0.0.1.0-x86_64-linux) + libddwaf (1.14.0.0.0-aarch64-linux) + ffi (~> 1.0) + libddwaf (1.14.0.0.0-x86_64-linux) + ffi (~> 1.0) + memory_profiler (0.9.14) + method_source (1.1.0) + msgpack (1.7.2) + os (1.1.4) + pimpmychangelog (0.1.3) + pry (0.14.2) + coderay (~> 1.1) + method_source (~> 1.0) + pry-nav (1.0.0) + pry (>= 0.9.10, < 0.15) + pry-stack_explorer (0.4.13) + binding_of_caller (~> 0.7) + pry (~> 0.13) + public_suffix (4.0.7) + rake (13.2.1) + rake-compiler (1.2.7) + rake + rexml (3.3.7) + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-collection_matchers (1.2.1) + rspec-expectations (>= 2.99.0.beta1) + rspec-core (3.13.1) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.3) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.1) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-support (3.13.1) + rspec-wait (0.0.10) + rspec (>= 3.0) + rspec_junit_formatter (0.6.0) + rspec-core (>= 2, < 4, != 2.12.0) + simplecov-cobertura (2.1.0) + rexml + simplecov (~> 0.19) + simplecov-html (0.13.1) + simplecov_json_formatter (0.1.4) + stripe (5.15.0) + thor (1.2.2) + warning (1.4.0) + webmock (3.23.1) + addressable (>= 2.8.0) + crack (>= 0.3.2) + hashdiff (>= 0.4.0, < 2.0.0) + +PLATFORMS + aarch64-linux + x86_64-linux + +DEPENDENCIES + appraisal (~> 2.4.0) + benchmark-ips (~> 2.8) + benchmark-memory (< 0.2) + builder + climate_control (~> 0.2.0) + concurrent-ruby + datadog! + dogstatsd-ruby (>= 3.3.0, != 5.1.0, != 5.0.1, != 5.0.0) + extlz4 (~> 0.3, >= 0.3.3) + ffi (~> 1.16.3) + google-protobuf (~> 3.0, < 3.19.2, != 3.7.1, != 3.7.0) + json-schema (< 3) + memory_profiler (~> 0.9) + os (~> 1.1) + pimpmychangelog (>= 0.1.2) + pry + pry-nav + pry-stack_explorer + rake (>= 10.5) + rake-compiler (~> 1.1, >= 1.1.1) + rexml (>= 3.2.7) + rspec (~> 3.12) + rspec-collection_matchers (~> 1.1) + rspec-wait (~> 0) + rspec_junit_formatter (>= 0.5.1) + simplecov! + simplecov-cobertura (~> 2.1.0) + stripe (= 5.15.0) + warning (~> 1) + webmock (>= 3.10.0) + +BUNDLED WITH + 2.3.26 diff --git a/gemfiles/ruby_2.6_stripe_min.gemfile b/gemfiles/ruby_2.6_stripe_min.gemfile new file mode 100644 index 00000000000..d6308d3fbc6 --- /dev/null +++ b/gemfiles/ruby_2.6_stripe_min.gemfile @@ -0,0 +1,47 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "appraisal", "~> 2.4.0" +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "builder" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "extlz4", "~> 0.3", ">= 0.3.3" +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.12" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "simplecov", git: "https://github.com/DataDog/simplecov", ref: "3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "rexml", ">= 3.2.7" +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 "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1", "< 3.19.2"] +gem "ffi", "~> 1.16.3", require: false +gem "stripe", "= 5.15.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_2.6_stripe_min.gemfile.lock b/gemfiles/ruby_2.6_stripe_min.gemfile.lock new file mode 100644 index 00000000000..f0f84de0d5c --- /dev/null +++ b/gemfiles/ruby_2.6_stripe_min.gemfile.lock @@ -0,0 +1,186 @@ +GIT + remote: https://github.com/DataDog/simplecov + revision: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + ref: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + specs: + simplecov (0.21.2) + docile (~> 1.1) + simplecov-html (~> 0.11) + simplecov_json_formatter (~> 0.1) + +PATH + remote: .. + specs: + datadog (2.3.0) + debase-ruby_core_source (= 3.3.1) + libdatadog (~> 12.0.0.1.0) + libddwaf (~> 1.14.0.0.0) + msgpack + +GEM + remote: https://rubygems.org/ + specs: + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + appraisal (2.4.1) + bundler + rake + thor (>= 0.14.0) + ast (2.4.2) + benchmark-ips (2.14.0) + benchmark-memory (0.1.2) + memory_profiler (~> 0.9) + bigdecimal (3.1.8) + binding_of_caller (1.0.1) + debug_inspector (>= 1.2.0) + builder (3.3.0) + byebug (11.1.3) + climate_control (0.2.0) + coderay (1.1.3) + concurrent-ruby (1.3.4) + crack (1.0.0) + bigdecimal + rexml + debase-ruby_core_source (3.3.1) + debug_inspector (1.2.0) + diff-lcs (1.5.1) + docile (1.4.1) + dogstatsd-ruby (5.6.1) + extlz4 (0.3.4) + ffi (1.16.3) + google-protobuf (3.19.1) + google-protobuf (3.19.1-x86_64-linux) + hashdiff (1.1.1) + json (2.7.2) + json-schema (2.8.1) + addressable (>= 2.4) + libdatadog (12.0.0.1.0-aarch64-linux) + libdatadog (12.0.0.1.0-x86_64-linux) + libddwaf (1.14.0.0.0-aarch64-linux) + ffi (~> 1.0) + libddwaf (1.14.0.0.0-x86_64-linux) + ffi (~> 1.0) + memory_profiler (0.9.14) + method_source (1.1.0) + msgpack (1.7.2) + os (1.1.4) + parallel (1.24.0) + parser (3.3.5.0) + ast (~> 2.4.1) + racc + pimpmychangelog (0.1.3) + pry (0.14.2) + coderay (~> 1.1) + method_source (~> 1.0) + pry-byebug (3.8.0) + byebug (~> 11.0) + pry (~> 0.10) + pry-stack_explorer (0.6.1) + binding_of_caller (~> 1.0) + pry (~> 0.13) + public_suffix (5.1.1) + racc (1.8.1) + rainbow (3.1.1) + rake (13.2.1) + rake-compiler (1.2.7) + rake + regexp_parser (2.9.2) + rexml (3.3.7) + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-collection_matchers (1.2.1) + rspec-expectations (>= 2.99.0.beta1) + rspec-core (3.13.1) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.3) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.1) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-support (3.13.1) + rspec-wait (0.0.10) + rspec (>= 3.0) + rspec_junit_formatter (0.6.0) + rspec-core (>= 2, < 4, != 2.12.0) + rubocop (1.50.2) + json (~> 2.3) + parallel (~> 1.10) + parser (>= 3.2.0.0) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 1.8, < 3.0) + rexml (>= 3.2.5, < 4.0) + rubocop-ast (>= 1.28.0, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 3.0) + rubocop-ast (1.30.0) + parser (>= 3.2.1.0) + rubocop-capybara (2.18.0) + rubocop (~> 1.41) + rubocop-packaging (0.5.2) + rubocop (>= 1.33, < 2.0) + rubocop-performance (1.17.1) + rubocop (>= 1.7.0, < 2.0) + rubocop-ast (>= 0.4.0) + rubocop-rspec (2.20.0) + rubocop (~> 1.33) + rubocop-capybara (~> 2.17) + ruby-progressbar (1.13.0) + simplecov-cobertura (2.1.0) + rexml + simplecov (~> 0.19) + simplecov-html (0.13.1) + simplecov_json_formatter (0.1.4) + stripe (5.15.0) + thor (1.3.2) + unicode-display_width (2.6.0) + warning (1.4.0) + webmock (3.23.1) + addressable (>= 2.8.0) + crack (>= 0.3.2) + hashdiff (>= 0.4.0, < 2.0.0) + +PLATFORMS + aarch64-linux + x86_64-linux + +DEPENDENCIES + appraisal (~> 2.4.0) + benchmark-ips (~> 2.8) + benchmark-memory (< 0.2) + builder + climate_control (~> 0.2.0) + concurrent-ruby + datadog! + dogstatsd-ruby (>= 3.3.0, != 5.1.0, != 5.0.1, != 5.0.0) + extlz4 (~> 0.3, >= 0.3.3) + ffi (~> 1.16.3) + google-protobuf (~> 3.0, < 3.19.2, != 3.7.1, != 3.7.0) + json-schema (< 3) + memory_profiler (~> 0.9) + os (~> 1.1) + pimpmychangelog (>= 0.1.2) + pry + pry-byebug + pry-stack_explorer + rake (>= 10.5) + rake-compiler (~> 1.1, >= 1.1.1) + rexml (>= 3.2.7) + rspec (~> 3.12) + rspec-collection_matchers (~> 1.1) + rspec-wait (~> 0) + rspec_junit_formatter (>= 0.5.1) + rubocop (~> 1.50.0) + rubocop-packaging (~> 0.5.2) + rubocop-performance (~> 1.9) + rubocop-rspec (~> 2.20, < 2.21) + simplecov! + simplecov-cobertura (~> 2.1.0) + stripe (= 5.15.0) + warning (~> 1) + webmock (>= 3.10.0) + +BUNDLED WITH + 2.3.26 diff --git a/gemfiles/ruby_2.7_stripe_min.gemfile b/gemfiles/ruby_2.7_stripe_min.gemfile new file mode 100644 index 00000000000..dfc03a39795 --- /dev/null +++ b/gemfiles/ruby_2.7_stripe_min.gemfile @@ -0,0 +1,47 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "appraisal", "~> 2.4.0" +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "builder" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "extlz4", "~> 0.3", ">= 0.3.3" +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.12" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "simplecov", git: "https://github.com/DataDog/simplecov", ref: "3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "rexml", ">= 3.2.7" +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 "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "ffi", "~> 1.16.3", require: false +gem "stripe", "= 5.15.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_2.7_stripe_min.gemfile.lock b/gemfiles/ruby_2.7_stripe_min.gemfile.lock new file mode 100644 index 00000000000..0875469be3b --- /dev/null +++ b/gemfiles/ruby_2.7_stripe_min.gemfile.lock @@ -0,0 +1,186 @@ +GIT + remote: https://github.com/DataDog/simplecov + revision: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + ref: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + specs: + simplecov (0.21.2) + docile (~> 1.1) + simplecov-html (~> 0.11) + simplecov_json_formatter (~> 0.1) + +PATH + remote: .. + specs: + datadog (2.3.0) + debase-ruby_core_source (= 3.3.1) + libdatadog (~> 12.0.0.1.0) + libddwaf (~> 1.14.0.0.0) + msgpack + +GEM + remote: https://rubygems.org/ + specs: + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + appraisal (2.4.1) + bundler + rake + thor (>= 0.14.0) + ast (2.4.2) + benchmark-ips (2.14.0) + benchmark-memory (0.1.2) + memory_profiler (~> 0.9) + bigdecimal (3.1.8) + binding_of_caller (1.0.1) + debug_inspector (>= 1.2.0) + builder (3.3.0) + byebug (11.1.3) + climate_control (0.2.0) + coderay (1.1.3) + concurrent-ruby (1.3.4) + crack (1.0.0) + bigdecimal + rexml + debase-ruby_core_source (3.3.1) + debug_inspector (1.2.0) + diff-lcs (1.5.1) + docile (1.4.1) + dogstatsd-ruby (5.6.1) + extlz4 (0.3.4) + ffi (1.16.3) + google-protobuf (3.25.5-aarch64-linux) + google-protobuf (3.25.5-x86_64-linux) + hashdiff (1.1.1) + json (2.7.2) + json-schema (2.8.1) + addressable (>= 2.4) + libdatadog (12.0.0.1.0-aarch64-linux) + libdatadog (12.0.0.1.0-x86_64-linux) + libddwaf (1.14.0.0.0-aarch64-linux) + ffi (~> 1.0) + libddwaf (1.14.0.0.0-x86_64-linux) + ffi (~> 1.0) + memory_profiler (0.9.14) + method_source (1.1.0) + msgpack (1.7.2) + os (1.1.4) + parallel (1.26.3) + parser (3.3.5.0) + ast (~> 2.4.1) + racc + pimpmychangelog (0.1.3) + pry (0.14.2) + coderay (~> 1.1) + method_source (~> 1.0) + pry-byebug (3.10.1) + byebug (~> 11.0) + pry (>= 0.13, < 0.15) + pry-stack_explorer (0.6.1) + binding_of_caller (~> 1.0) + pry (~> 0.13) + public_suffix (5.1.1) + racc (1.8.1) + rainbow (3.1.1) + rake (13.2.1) + rake-compiler (1.2.7) + rake + regexp_parser (2.9.2) + rexml (3.3.7) + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-collection_matchers (1.2.1) + rspec-expectations (>= 2.99.0.beta1) + rspec-core (3.13.1) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.3) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.1) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-support (3.13.1) + rspec-wait (0.0.10) + rspec (>= 3.0) + rspec_junit_formatter (0.6.0) + rspec-core (>= 2, < 4, != 2.12.0) + rubocop (1.50.2) + json (~> 2.3) + parallel (~> 1.10) + parser (>= 3.2.0.0) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 1.8, < 3.0) + rexml (>= 3.2.5, < 4.0) + rubocop-ast (>= 1.28.0, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 3.0) + rubocop-ast (1.32.3) + parser (>= 3.3.1.0) + rubocop-capybara (2.21.0) + rubocop (~> 1.41) + rubocop-packaging (0.5.2) + rubocop (>= 1.33, < 2.0) + rubocop-performance (1.22.1) + rubocop (>= 1.48.1, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) + rubocop-rspec (2.20.0) + rubocop (~> 1.33) + rubocop-capybara (~> 2.17) + ruby-progressbar (1.13.0) + simplecov-cobertura (2.1.0) + rexml + simplecov (~> 0.19) + simplecov-html (0.13.1) + simplecov_json_formatter (0.1.4) + stripe (5.15.0) + thor (1.3.2) + unicode-display_width (2.6.0) + warning (1.4.0) + webmock (3.23.1) + addressable (>= 2.8.0) + crack (>= 0.3.2) + hashdiff (>= 0.4.0, < 2.0.0) + +PLATFORMS + aarch64-linux + x86_64-linux + +DEPENDENCIES + appraisal (~> 2.4.0) + benchmark-ips (~> 2.8) + benchmark-memory (< 0.2) + builder + climate_control (~> 0.2.0) + concurrent-ruby + datadog! + dogstatsd-ruby (>= 3.3.0, != 5.1.0, != 5.0.1, != 5.0.0) + extlz4 (~> 0.3, >= 0.3.3) + ffi (~> 1.16.3) + google-protobuf (~> 3.0, != 3.7.1, != 3.7.0) + json-schema (< 3) + memory_profiler (~> 0.9) + os (~> 1.1) + pimpmychangelog (>= 0.1.2) + pry + pry-byebug + pry-stack_explorer + rake (>= 10.5) + rake-compiler (~> 1.1, >= 1.1.1) + rexml (>= 3.2.7) + rspec (~> 3.12) + rspec-collection_matchers (~> 1.1) + rspec-wait (~> 0) + rspec_junit_formatter (>= 0.5.1) + rubocop (~> 1.50.0) + rubocop-packaging (~> 0.5.2) + rubocop-performance (~> 1.9) + rubocop-rspec (~> 2.20, < 2.21) + simplecov! + simplecov-cobertura (~> 2.1.0) + stripe (= 5.15.0) + warning (~> 1) + webmock (>= 3.10.0) + +BUNDLED WITH + 2.3.26 diff --git a/gemfiles/ruby_3.0_rails7.gemfile b/gemfiles/ruby_3.0_rails7.gemfile new file mode 100644 index 00000000000..ecc0e84be0d --- /dev/null +++ b/gemfiles/ruby_3.0_rails7.gemfile @@ -0,0 +1,49 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "appraisal", "~> 2.4.0" +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "builder" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "extlz4", "~> 0.3", ">= 0.3.3" +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.12" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "simplecov", git: "https://github.com/DataDog/simplecov", ref: "3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "rexml", ">= 3.2.7" +gem "webrick", ">= 1.7.0" +gem "yard", "~> 0.9" +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 "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "ffi", "~> 1.16.3", require: false +gem "rails", "~> 7.0.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.0_rails7.gemfile.lock b/gemfiles/ruby_3.0_rails7.gemfile.lock new file mode 100644 index 00000000000..55dc302e9a0 --- /dev/null +++ b/gemfiles/ruby_3.0_rails7.gemfile.lock @@ -0,0 +1,326 @@ +GIT + remote: https://github.com/DataDog/simplecov + revision: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + ref: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + specs: + simplecov (0.21.2) + docile (~> 1.1) + simplecov-html (~> 0.11) + simplecov_json_formatter (~> 0.1) + +PATH + remote: .. + specs: + datadog (2.3.0) + debase-ruby_core_source (= 3.3.1) + libdatadog (~> 12.0.0.1.0) + libddwaf (~> 1.14.0.0.0) + msgpack + +GEM + remote: https://rubygems.org/ + specs: + actioncable (7.0.8.4) + actionpack (= 7.0.8.4) + activesupport (= 7.0.8.4) + nio4r (~> 2.0) + websocket-driver (>= 0.6.1) + actionmailbox (7.0.8.4) + actionpack (= 7.0.8.4) + activejob (= 7.0.8.4) + activerecord (= 7.0.8.4) + activestorage (= 7.0.8.4) + activesupport (= 7.0.8.4) + mail (>= 2.7.1) + net-imap + net-pop + net-smtp + actionmailer (7.0.8.4) + actionpack (= 7.0.8.4) + actionview (= 7.0.8.4) + activejob (= 7.0.8.4) + activesupport (= 7.0.8.4) + mail (~> 2.5, >= 2.5.4) + net-imap + net-pop + net-smtp + rails-dom-testing (~> 2.0) + actionpack (7.0.8.4) + actionview (= 7.0.8.4) + activesupport (= 7.0.8.4) + rack (~> 2.0, >= 2.2.4) + rack-test (>= 0.6.3) + rails-dom-testing (~> 2.0) + rails-html-sanitizer (~> 1.0, >= 1.2.0) + actiontext (7.0.8.4) + actionpack (= 7.0.8.4) + activerecord (= 7.0.8.4) + activestorage (= 7.0.8.4) + activesupport (= 7.0.8.4) + globalid (>= 0.6.0) + nokogiri (>= 1.8.5) + actionview (7.0.8.4) + activesupport (= 7.0.8.4) + builder (~> 3.1) + erubi (~> 1.4) + rails-dom-testing (~> 2.0) + rails-html-sanitizer (~> 1.1, >= 1.2.0) + activejob (7.0.8.4) + activesupport (= 7.0.8.4) + globalid (>= 0.3.6) + activemodel (7.0.8.4) + activesupport (= 7.0.8.4) + activerecord (7.0.8.4) + activemodel (= 7.0.8.4) + activesupport (= 7.0.8.4) + activestorage (7.0.8.4) + actionpack (= 7.0.8.4) + activejob (= 7.0.8.4) + activerecord (= 7.0.8.4) + activesupport (= 7.0.8.4) + marcel (~> 1.0) + mini_mime (>= 1.1.0) + activesupport (7.0.8.4) + concurrent-ruby (~> 1.0, >= 1.0.2) + i18n (>= 1.6, < 2) + minitest (>= 5.1) + tzinfo (~> 2.0) + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + appraisal (2.4.1) + bundler + rake + thor (>= 0.14.0) + ast (2.4.2) + benchmark-ips (2.13.0) + benchmark-memory (0.1.2) + memory_profiler (~> 0.9) + bigdecimal (3.1.8) + binding_of_caller (1.0.1) + debug_inspector (>= 1.2.0) + builder (3.3.0) + byebug (11.1.3) + climate_control (0.2.0) + coderay (1.1.3) + concurrent-ruby (1.3.4) + crack (1.0.0) + bigdecimal + rexml + crass (1.0.6) + date (3.3.4) + debase-ruby_core_source (3.3.1) + debug_inspector (1.2.0) + diff-lcs (1.5.1) + docile (1.4.1) + dogstatsd-ruby (5.6.1) + erubi (1.13.0) + extlz4 (0.3.4) + ffi (1.16.3) + globalid (1.2.1) + activesupport (>= 6.1) + google-protobuf (3.25.4-aarch64-linux) + google-protobuf (3.25.4-x86_64-linux) + hashdiff (1.1.1) + i18n (1.14.5) + concurrent-ruby (~> 1.0) + json (2.7.2) + json-schema (2.8.1) + addressable (>= 2.4) + libdatadog (12.0.0.1.0-aarch64-linux) + libdatadog (12.0.0.1.0-x86_64-linux) + libddwaf (1.14.0.0.0-aarch64-linux) + ffi (~> 1.0) + libddwaf (1.14.0.0.0-x86_64-linux) + ffi (~> 1.0) + loofah (2.22.0) + crass (~> 1.0.2) + nokogiri (>= 1.12.0) + mail (2.8.1) + mini_mime (>= 0.1.1) + net-imap + net-pop + net-smtp + marcel (1.0.4) + memory_profiler (0.9.14) + method_source (1.1.0) + mini_mime (1.1.5) + minitest (5.25.1) + msgpack (1.7.2) + net-imap (0.4.14) + date + net-protocol + net-pop (0.1.2) + net-protocol + net-protocol (0.2.2) + timeout + net-smtp (0.5.0) + net-protocol + nio4r (2.7.3) + nokogiri (1.16.7-aarch64-linux) + racc (~> 1.4) + nokogiri (1.16.7-x86_64-linux) + racc (~> 1.4) + os (1.1.4) + parallel (1.26.3) + parser (3.3.4.2) + ast (~> 2.4.1) + racc + pimpmychangelog (0.1.3) + pry (0.14.2) + coderay (~> 1.1) + method_source (~> 1.0) + pry-byebug (3.10.1) + byebug (~> 11.0) + pry (>= 0.13, < 0.15) + pry-stack_explorer (0.6.1) + binding_of_caller (~> 1.0) + pry (~> 0.13) + public_suffix (6.0.1) + racc (1.8.1) + rack (2.2.9) + rack-test (2.1.0) + rack (>= 1.3) + rails (7.0.8.4) + actioncable (= 7.0.8.4) + actionmailbox (= 7.0.8.4) + actionmailer (= 7.0.8.4) + actionpack (= 7.0.8.4) + actiontext (= 7.0.8.4) + actionview (= 7.0.8.4) + activejob (= 7.0.8.4) + activemodel (= 7.0.8.4) + activerecord (= 7.0.8.4) + activestorage (= 7.0.8.4) + activesupport (= 7.0.8.4) + bundler (>= 1.15.0) + railties (= 7.0.8.4) + rails-dom-testing (2.2.0) + activesupport (>= 5.0.0) + minitest + nokogiri (>= 1.6) + rails-html-sanitizer (1.6.0) + loofah (~> 2.21) + nokogiri (~> 1.14) + railties (7.0.8.4) + actionpack (= 7.0.8.4) + activesupport (= 7.0.8.4) + method_source + rake (>= 12.2) + thor (~> 1.0) + zeitwerk (~> 2.5) + rainbow (3.1.1) + rake (13.2.1) + rake-compiler (1.2.7) + rake + regexp_parser (2.9.2) + rexml (3.3.6) + strscan + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-collection_matchers (1.2.1) + rspec-expectations (>= 2.99.0.beta1) + rspec-core (3.13.0) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.2) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.1) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-support (3.13.1) + rspec-wait (0.0.10) + rspec (>= 3.0) + rspec_junit_formatter (0.6.0) + rspec-core (>= 2, < 4, != 2.12.0) + rubocop (1.50.2) + json (~> 2.3) + parallel (~> 1.10) + parser (>= 3.2.0.0) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 1.8, < 3.0) + rexml (>= 3.2.5, < 4.0) + rubocop-ast (>= 1.28.0, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 3.0) + rubocop-ast (1.32.1) + parser (>= 3.3.1.0) + rubocop-capybara (2.21.0) + rubocop (~> 1.41) + rubocop-packaging (0.5.2) + rubocop (>= 1.33, < 2.0) + rubocop-performance (1.21.1) + rubocop (>= 1.48.1, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) + rubocop-rspec (2.20.0) + rubocop (~> 1.33) + rubocop-capybara (~> 2.17) + ruby-progressbar (1.13.0) + simplecov-cobertura (2.1.0) + rexml + simplecov (~> 0.19) + simplecov-html (0.12.3) + simplecov_json_formatter (0.1.4) + strscan (3.1.0) + thor (1.3.1) + timeout (0.4.1) + tzinfo (2.0.6) + concurrent-ruby (~> 1.0) + unicode-display_width (2.5.0) + warning (1.4.0) + webmock (3.23.1) + addressable (>= 2.8.0) + crack (>= 0.3.2) + hashdiff (>= 0.4.0, < 2.0.0) + webrick (1.8.1) + websocket-driver (0.7.6) + websocket-extensions (>= 0.1.0) + websocket-extensions (0.1.5) + yard (0.9.36) + zeitwerk (2.6.17) + +PLATFORMS + aarch64-linux + x86_64-linux + +DEPENDENCIES + appraisal (~> 2.4.0) + benchmark-ips (~> 2.8) + benchmark-memory (< 0.2) + builder + climate_control (~> 0.2.0) + concurrent-ruby + datadog! + dogstatsd-ruby (>= 3.3.0, != 5.1.0, != 5.0.1, != 5.0.0) + extlz4 (~> 0.3, >= 0.3.3) + ffi (~> 1.16.3) + google-protobuf (~> 3.0, != 3.7.1, != 3.7.0) + json-schema (< 3) + memory_profiler (~> 0.9) + os (~> 1.1) + pimpmychangelog (>= 0.1.2) + pry + pry-byebug + pry-stack_explorer + rails (~> 7.0.0) + rake (>= 10.5) + rake-compiler (~> 1.1, >= 1.1.1) + rexml (>= 3.2.7) + rspec (~> 3.12) + rspec-collection_matchers (~> 1.1) + rspec-wait (~> 0) + rspec_junit_formatter (>= 0.5.1) + rubocop (~> 1.50.0) + rubocop-packaging (~> 0.5.2) + rubocop-performance (~> 1.9) + rubocop-rspec (~> 2.20, < 2.21) + simplecov! + simplecov-cobertura (~> 2.1.0) + warning (~> 1) + webmock (>= 3.10.0) + webrick (>= 1.7.0) + yard (~> 0.9) + +BUNDLED WITH + 2.3.26 diff --git a/gemfiles/ruby_3.0_rails71.gemfile b/gemfiles/ruby_3.0_rails71.gemfile new file mode 100644 index 00000000000..029e84b7b45 --- /dev/null +++ b/gemfiles/ruby_3.0_rails71.gemfile @@ -0,0 +1,49 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "appraisal", "~> 2.4.0" +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "builder" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "extlz4", "~> 0.3", ">= 0.3.3" +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.12" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "simplecov", git: "https://github.com/DataDog/simplecov", ref: "3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "rexml", ">= 3.2.7" +gem "webrick", ">= 1.7.0" +gem "yard", "~> 0.9" +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 "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "ffi", "~> 1.16.3", require: false +gem "rails", "~> 7.1.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.0_rails71.gemfile.lock b/gemfiles/ruby_3.0_rails71.gemfile.lock new file mode 100644 index 00000000000..d81449167fd --- /dev/null +++ b/gemfiles/ruby_3.0_rails71.gemfile.lock @@ -0,0 +1,356 @@ +GIT + remote: https://github.com/DataDog/simplecov + revision: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + ref: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + specs: + simplecov (0.21.2) + docile (~> 1.1) + simplecov-html (~> 0.11) + simplecov_json_formatter (~> 0.1) + +PATH + remote: .. + specs: + datadog (2.3.0) + debase-ruby_core_source (= 3.3.1) + libdatadog (~> 12.0.0.1.0) + libddwaf (~> 1.14.0.0.0) + msgpack + +GEM + remote: https://rubygems.org/ + specs: + actioncable (7.1.3.4) + actionpack (= 7.1.3.4) + activesupport (= 7.1.3.4) + nio4r (~> 2.0) + websocket-driver (>= 0.6.1) + zeitwerk (~> 2.6) + actionmailbox (7.1.3.4) + actionpack (= 7.1.3.4) + activejob (= 7.1.3.4) + activerecord (= 7.1.3.4) + activestorage (= 7.1.3.4) + activesupport (= 7.1.3.4) + mail (>= 2.7.1) + net-imap + net-pop + net-smtp + actionmailer (7.1.3.4) + actionpack (= 7.1.3.4) + actionview (= 7.1.3.4) + activejob (= 7.1.3.4) + activesupport (= 7.1.3.4) + mail (~> 2.5, >= 2.5.4) + net-imap + net-pop + net-smtp + rails-dom-testing (~> 2.2) + actionpack (7.1.3.4) + actionview (= 7.1.3.4) + activesupport (= 7.1.3.4) + nokogiri (>= 1.8.5) + racc + rack (>= 2.2.4) + rack-session (>= 1.0.1) + rack-test (>= 0.6.3) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + actiontext (7.1.3.4) + actionpack (= 7.1.3.4) + activerecord (= 7.1.3.4) + activestorage (= 7.1.3.4) + activesupport (= 7.1.3.4) + globalid (>= 0.6.0) + nokogiri (>= 1.8.5) + actionview (7.1.3.4) + activesupport (= 7.1.3.4) + builder (~> 3.1) + erubi (~> 1.11) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + activejob (7.1.3.4) + activesupport (= 7.1.3.4) + globalid (>= 0.3.6) + activemodel (7.1.3.4) + activesupport (= 7.1.3.4) + activerecord (7.1.3.4) + activemodel (= 7.1.3.4) + activesupport (= 7.1.3.4) + timeout (>= 0.4.0) + activestorage (7.1.3.4) + actionpack (= 7.1.3.4) + activejob (= 7.1.3.4) + activerecord (= 7.1.3.4) + activesupport (= 7.1.3.4) + marcel (~> 1.0) + activesupport (7.1.3.4) + base64 + bigdecimal + concurrent-ruby (~> 1.0, >= 1.0.2) + connection_pool (>= 2.2.5) + drb + i18n (>= 1.6, < 2) + minitest (>= 5.1) + mutex_m + tzinfo (~> 2.0) + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + appraisal (2.4.1) + bundler + rake + thor (>= 0.14.0) + ast (2.4.2) + base64 (0.2.0) + benchmark-ips (2.13.0) + benchmark-memory (0.1.2) + memory_profiler (~> 0.9) + bigdecimal (3.1.8) + binding_of_caller (1.0.1) + debug_inspector (>= 1.2.0) + builder (3.3.0) + byebug (11.1.3) + climate_control (0.2.0) + coderay (1.1.3) + concurrent-ruby (1.3.4) + connection_pool (2.4.1) + crack (1.0.0) + bigdecimal + rexml + crass (1.0.6) + date (3.3.4) + debase-ruby_core_source (3.3.1) + debug_inspector (1.2.0) + diff-lcs (1.5.1) + docile (1.4.1) + dogstatsd-ruby (5.6.1) + drb (2.2.1) + erubi (1.13.0) + extlz4 (0.3.4) + ffi (1.16.3) + globalid (1.2.1) + activesupport (>= 6.1) + google-protobuf (3.25.4-aarch64-linux) + google-protobuf (3.25.4-x86_64-linux) + hashdiff (1.1.1) + i18n (1.14.5) + concurrent-ruby (~> 1.0) + io-console (0.7.2) + irb (1.14.0) + rdoc (>= 4.0.0) + reline (>= 0.4.2) + json (2.7.2) + json-schema (2.8.1) + addressable (>= 2.4) + libdatadog (12.0.0.1.0-aarch64-linux) + libdatadog (12.0.0.1.0-x86_64-linux) + libddwaf (1.14.0.0.0-aarch64-linux) + ffi (~> 1.0) + libddwaf (1.14.0.0.0-x86_64-linux) + ffi (~> 1.0) + loofah (2.22.0) + crass (~> 1.0.2) + nokogiri (>= 1.12.0) + mail (2.8.1) + mini_mime (>= 0.1.1) + net-imap + net-pop + net-smtp + marcel (1.0.4) + memory_profiler (0.9.14) + method_source (1.1.0) + mini_mime (1.1.5) + minitest (5.25.1) + msgpack (1.7.2) + mutex_m (0.2.0) + net-imap (0.4.14) + date + net-protocol + net-pop (0.1.2) + net-protocol + net-protocol (0.2.2) + timeout + net-smtp (0.5.0) + net-protocol + nio4r (2.7.3) + nokogiri (1.16.7-aarch64-linux) + racc (~> 1.4) + nokogiri (1.16.7-x86_64-linux) + racc (~> 1.4) + os (1.1.4) + parallel (1.26.3) + parser (3.3.4.2) + ast (~> 2.4.1) + racc + pimpmychangelog (0.1.3) + pry (0.14.2) + coderay (~> 1.1) + method_source (~> 1.0) + pry-byebug (3.10.1) + byebug (~> 11.0) + pry (>= 0.13, < 0.15) + pry-stack_explorer (0.6.1) + binding_of_caller (~> 1.0) + pry (~> 0.13) + psych (5.1.2) + stringio + public_suffix (6.0.1) + racc (1.8.1) + rack (3.1.7) + rack-session (2.0.0) + rack (>= 3.0.0) + rack-test (2.1.0) + rack (>= 1.3) + rackup (2.1.0) + rack (>= 3) + webrick (~> 1.8) + rails (7.1.3.4) + actioncable (= 7.1.3.4) + actionmailbox (= 7.1.3.4) + actionmailer (= 7.1.3.4) + actionpack (= 7.1.3.4) + actiontext (= 7.1.3.4) + actionview (= 7.1.3.4) + activejob (= 7.1.3.4) + activemodel (= 7.1.3.4) + activerecord (= 7.1.3.4) + activestorage (= 7.1.3.4) + activesupport (= 7.1.3.4) + bundler (>= 1.15.0) + railties (= 7.1.3.4) + rails-dom-testing (2.2.0) + activesupport (>= 5.0.0) + minitest + nokogiri (>= 1.6) + rails-html-sanitizer (1.6.0) + loofah (~> 2.21) + nokogiri (~> 1.14) + railties (7.1.3.4) + actionpack (= 7.1.3.4) + activesupport (= 7.1.3.4) + irb + rackup (>= 1.0.0) + rake (>= 12.2) + thor (~> 1.0, >= 1.2.2) + zeitwerk (~> 2.6) + rainbow (3.1.1) + rake (13.2.1) + rake-compiler (1.2.7) + rake + rdoc (6.7.0) + psych (>= 4.0.0) + regexp_parser (2.9.2) + reline (0.5.9) + io-console (~> 0.5) + rexml (3.3.6) + strscan + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-collection_matchers (1.2.1) + rspec-expectations (>= 2.99.0.beta1) + rspec-core (3.13.0) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.2) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.1) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-support (3.13.1) + rspec-wait (0.0.10) + rspec (>= 3.0) + rspec_junit_formatter (0.6.0) + rspec-core (>= 2, < 4, != 2.12.0) + rubocop (1.50.2) + json (~> 2.3) + parallel (~> 1.10) + parser (>= 3.2.0.0) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 1.8, < 3.0) + rexml (>= 3.2.5, < 4.0) + rubocop-ast (>= 1.28.0, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 3.0) + rubocop-ast (1.32.1) + parser (>= 3.3.1.0) + rubocop-capybara (2.21.0) + rubocop (~> 1.41) + rubocop-packaging (0.5.2) + rubocop (>= 1.33, < 2.0) + rubocop-performance (1.21.1) + rubocop (>= 1.48.1, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) + rubocop-rspec (2.20.0) + rubocop (~> 1.33) + rubocop-capybara (~> 2.17) + ruby-progressbar (1.13.0) + simplecov-cobertura (2.1.0) + rexml + simplecov (~> 0.19) + simplecov-html (0.12.3) + simplecov_json_formatter (0.1.4) + stringio (3.1.1) + strscan (3.1.0) + thor (1.3.1) + timeout (0.4.1) + tzinfo (2.0.6) + concurrent-ruby (~> 1.0) + unicode-display_width (2.5.0) + warning (1.4.0) + webmock (3.23.1) + addressable (>= 2.8.0) + crack (>= 0.3.2) + hashdiff (>= 0.4.0, < 2.0.0) + webrick (1.8.1) + websocket-driver (0.7.6) + websocket-extensions (>= 0.1.0) + websocket-extensions (0.1.5) + yard (0.9.36) + zeitwerk (2.6.17) + +PLATFORMS + aarch64-linux + x86_64-linux + +DEPENDENCIES + appraisal (~> 2.4.0) + benchmark-ips (~> 2.8) + benchmark-memory (< 0.2) + builder + climate_control (~> 0.2.0) + concurrent-ruby + datadog! + dogstatsd-ruby (>= 3.3.0, != 5.1.0, != 5.0.1, != 5.0.0) + extlz4 (~> 0.3, >= 0.3.3) + ffi (~> 1.16.3) + google-protobuf (~> 3.0, != 3.7.1, != 3.7.0) + json-schema (< 3) + memory_profiler (~> 0.9) + os (~> 1.1) + pimpmychangelog (>= 0.1.2) + pry + pry-byebug + pry-stack_explorer + rails (~> 7.1.0) + rake (>= 10.5) + rake-compiler (~> 1.1, >= 1.1.1) + rexml (>= 3.2.7) + rspec (~> 3.12) + rspec-collection_matchers (~> 1.1) + rspec-wait (~> 0) + rspec_junit_formatter (>= 0.5.1) + rubocop (~> 1.50.0) + rubocop-packaging (~> 0.5.2) + rubocop-performance (~> 1.9) + rubocop-rspec (~> 2.20, < 2.21) + simplecov! + simplecov-cobertura (~> 2.1.0) + warning (~> 1) + webmock (>= 3.10.0) + webrick (>= 1.7.0) + yard (~> 0.9) + +BUNDLED WITH + 2.3.26 diff --git a/gemfiles/ruby_3.0_stripe_min.gemfile b/gemfiles/ruby_3.0_stripe_min.gemfile new file mode 100644 index 00000000000..582cd38479b --- /dev/null +++ b/gemfiles/ruby_3.0_stripe_min.gemfile @@ -0,0 +1,48 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "appraisal", "~> 2.4.0" +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "builder" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "extlz4", "~> 0.3", ">= 0.3.3" +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.12" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "simplecov", git: "https://github.com/DataDog/simplecov", ref: "3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "rexml", ">= 3.2.7" +gem "webrick", ">= 1.7.0" +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 "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "ffi", "~> 1.16.3", require: false +gem "stripe", "= 5.15.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.0_stripe_min.gemfile.lock b/gemfiles/ruby_3.0_stripe_min.gemfile.lock new file mode 100644 index 00000000000..b2ace19edf5 --- /dev/null +++ b/gemfiles/ruby_3.0_stripe_min.gemfile.lock @@ -0,0 +1,188 @@ +GIT + remote: https://github.com/DataDog/simplecov + revision: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + ref: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + specs: + simplecov (0.21.2) + docile (~> 1.1) + simplecov-html (~> 0.11) + simplecov_json_formatter (~> 0.1) + +PATH + remote: .. + specs: + datadog (2.3.0) + debase-ruby_core_source (= 3.3.1) + libdatadog (~> 12.0.0.1.0) + libddwaf (~> 1.14.0.0.0) + msgpack + +GEM + remote: https://rubygems.org/ + specs: + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + appraisal (2.4.1) + bundler + rake + thor (>= 0.14.0) + ast (2.4.2) + benchmark-ips (2.14.0) + benchmark-memory (0.1.2) + memory_profiler (~> 0.9) + bigdecimal (3.1.8) + binding_of_caller (1.0.1) + debug_inspector (>= 1.2.0) + builder (3.3.0) + byebug (11.1.3) + climate_control (0.2.0) + coderay (1.1.3) + concurrent-ruby (1.3.4) + crack (1.0.0) + bigdecimal + rexml + debase-ruby_core_source (3.3.1) + debug_inspector (1.2.0) + diff-lcs (1.5.1) + docile (1.4.1) + dogstatsd-ruby (5.6.1) + extlz4 (0.3.4) + ffi (1.16.3) + google-protobuf (3.25.5-aarch64-linux) + google-protobuf (3.25.5-x86_64-linux) + hashdiff (1.1.1) + json (2.7.2) + json-schema (2.8.1) + addressable (>= 2.4) + libdatadog (12.0.0.1.0-aarch64-linux) + libdatadog (12.0.0.1.0-x86_64-linux) + libddwaf (1.14.0.0.0-aarch64-linux) + ffi (~> 1.0) + libddwaf (1.14.0.0.0-x86_64-linux) + ffi (~> 1.0) + memory_profiler (0.9.14) + method_source (1.1.0) + msgpack (1.7.2) + os (1.1.4) + parallel (1.26.3) + parser (3.3.5.0) + ast (~> 2.4.1) + racc + pimpmychangelog (0.1.3) + pry (0.14.2) + coderay (~> 1.1) + method_source (~> 1.0) + pry-byebug (3.10.1) + byebug (~> 11.0) + pry (>= 0.13, < 0.15) + pry-stack_explorer (0.6.1) + binding_of_caller (~> 1.0) + pry (~> 0.13) + public_suffix (6.0.1) + racc (1.8.1) + rainbow (3.1.1) + rake (13.2.1) + rake-compiler (1.2.7) + rake + regexp_parser (2.9.2) + rexml (3.3.7) + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-collection_matchers (1.2.1) + rspec-expectations (>= 2.99.0.beta1) + rspec-core (3.13.1) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.3) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.1) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-support (3.13.1) + rspec-wait (0.0.10) + rspec (>= 3.0) + rspec_junit_formatter (0.6.0) + rspec-core (>= 2, < 4, != 2.12.0) + rubocop (1.50.2) + json (~> 2.3) + parallel (~> 1.10) + parser (>= 3.2.0.0) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 1.8, < 3.0) + rexml (>= 3.2.5, < 4.0) + rubocop-ast (>= 1.28.0, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 3.0) + rubocop-ast (1.32.3) + parser (>= 3.3.1.0) + rubocop-capybara (2.21.0) + rubocop (~> 1.41) + rubocop-packaging (0.5.2) + rubocop (>= 1.33, < 2.0) + rubocop-performance (1.22.1) + rubocop (>= 1.48.1, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) + rubocop-rspec (2.20.0) + rubocop (~> 1.33) + rubocop-capybara (~> 2.17) + ruby-progressbar (1.13.0) + simplecov-cobertura (2.1.0) + rexml + simplecov (~> 0.19) + simplecov-html (0.13.1) + simplecov_json_formatter (0.1.4) + stripe (5.15.0) + thor (1.3.2) + unicode-display_width (2.6.0) + warning (1.4.0) + webmock (3.23.1) + addressable (>= 2.8.0) + crack (>= 0.3.2) + hashdiff (>= 0.4.0, < 2.0.0) + webrick (1.8.1) + +PLATFORMS + aarch64-linux + x86_64-linux + +DEPENDENCIES + appraisal (~> 2.4.0) + benchmark-ips (~> 2.8) + benchmark-memory (< 0.2) + builder + climate_control (~> 0.2.0) + concurrent-ruby + datadog! + dogstatsd-ruby (>= 3.3.0, != 5.1.0, != 5.0.1, != 5.0.0) + extlz4 (~> 0.3, >= 0.3.3) + ffi (~> 1.16.3) + google-protobuf (~> 3.0, != 3.7.1, != 3.7.0) + json-schema (< 3) + memory_profiler (~> 0.9) + os (~> 1.1) + pimpmychangelog (>= 0.1.2) + pry + pry-byebug + pry-stack_explorer + rake (>= 10.5) + rake-compiler (~> 1.1, >= 1.1.1) + rexml (>= 3.2.7) + rspec (~> 3.12) + rspec-collection_matchers (~> 1.1) + rspec-wait (~> 0) + rspec_junit_formatter (>= 0.5.1) + rubocop (~> 1.50.0) + rubocop-packaging (~> 0.5.2) + rubocop-performance (~> 1.9) + rubocop-rspec (~> 2.20, < 2.21) + simplecov! + simplecov-cobertura (~> 2.1.0) + stripe (= 5.15.0) + warning (~> 1) + webmock (>= 3.10.0) + webrick (>= 1.7.0) + +BUNDLED WITH + 2.3.26 diff --git a/gemfiles/ruby_3.1_rails7.gemfile b/gemfiles/ruby_3.1_rails7.gemfile new file mode 100644 index 00000000000..ecc0e84be0d --- /dev/null +++ b/gemfiles/ruby_3.1_rails7.gemfile @@ -0,0 +1,49 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "appraisal", "~> 2.4.0" +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "builder" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "extlz4", "~> 0.3", ">= 0.3.3" +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.12" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "simplecov", git: "https://github.com/DataDog/simplecov", ref: "3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "rexml", ">= 3.2.7" +gem "webrick", ">= 1.7.0" +gem "yard", "~> 0.9" +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 "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "ffi", "~> 1.16.3", require: false +gem "rails", "~> 7.0.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.1_rails7.gemfile.lock b/gemfiles/ruby_3.1_rails7.gemfile.lock new file mode 100644 index 00000000000..55dc302e9a0 --- /dev/null +++ b/gemfiles/ruby_3.1_rails7.gemfile.lock @@ -0,0 +1,326 @@ +GIT + remote: https://github.com/DataDog/simplecov + revision: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + ref: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + specs: + simplecov (0.21.2) + docile (~> 1.1) + simplecov-html (~> 0.11) + simplecov_json_formatter (~> 0.1) + +PATH + remote: .. + specs: + datadog (2.3.0) + debase-ruby_core_source (= 3.3.1) + libdatadog (~> 12.0.0.1.0) + libddwaf (~> 1.14.0.0.0) + msgpack + +GEM + remote: https://rubygems.org/ + specs: + actioncable (7.0.8.4) + actionpack (= 7.0.8.4) + activesupport (= 7.0.8.4) + nio4r (~> 2.0) + websocket-driver (>= 0.6.1) + actionmailbox (7.0.8.4) + actionpack (= 7.0.8.4) + activejob (= 7.0.8.4) + activerecord (= 7.0.8.4) + activestorage (= 7.0.8.4) + activesupport (= 7.0.8.4) + mail (>= 2.7.1) + net-imap + net-pop + net-smtp + actionmailer (7.0.8.4) + actionpack (= 7.0.8.4) + actionview (= 7.0.8.4) + activejob (= 7.0.8.4) + activesupport (= 7.0.8.4) + mail (~> 2.5, >= 2.5.4) + net-imap + net-pop + net-smtp + rails-dom-testing (~> 2.0) + actionpack (7.0.8.4) + actionview (= 7.0.8.4) + activesupport (= 7.0.8.4) + rack (~> 2.0, >= 2.2.4) + rack-test (>= 0.6.3) + rails-dom-testing (~> 2.0) + rails-html-sanitizer (~> 1.0, >= 1.2.0) + actiontext (7.0.8.4) + actionpack (= 7.0.8.4) + activerecord (= 7.0.8.4) + activestorage (= 7.0.8.4) + activesupport (= 7.0.8.4) + globalid (>= 0.6.0) + nokogiri (>= 1.8.5) + actionview (7.0.8.4) + activesupport (= 7.0.8.4) + builder (~> 3.1) + erubi (~> 1.4) + rails-dom-testing (~> 2.0) + rails-html-sanitizer (~> 1.1, >= 1.2.0) + activejob (7.0.8.4) + activesupport (= 7.0.8.4) + globalid (>= 0.3.6) + activemodel (7.0.8.4) + activesupport (= 7.0.8.4) + activerecord (7.0.8.4) + activemodel (= 7.0.8.4) + activesupport (= 7.0.8.4) + activestorage (7.0.8.4) + actionpack (= 7.0.8.4) + activejob (= 7.0.8.4) + activerecord (= 7.0.8.4) + activesupport (= 7.0.8.4) + marcel (~> 1.0) + mini_mime (>= 1.1.0) + activesupport (7.0.8.4) + concurrent-ruby (~> 1.0, >= 1.0.2) + i18n (>= 1.6, < 2) + minitest (>= 5.1) + tzinfo (~> 2.0) + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + appraisal (2.4.1) + bundler + rake + thor (>= 0.14.0) + ast (2.4.2) + benchmark-ips (2.13.0) + benchmark-memory (0.1.2) + memory_profiler (~> 0.9) + bigdecimal (3.1.8) + binding_of_caller (1.0.1) + debug_inspector (>= 1.2.0) + builder (3.3.0) + byebug (11.1.3) + climate_control (0.2.0) + coderay (1.1.3) + concurrent-ruby (1.3.4) + crack (1.0.0) + bigdecimal + rexml + crass (1.0.6) + date (3.3.4) + debase-ruby_core_source (3.3.1) + debug_inspector (1.2.0) + diff-lcs (1.5.1) + docile (1.4.1) + dogstatsd-ruby (5.6.1) + erubi (1.13.0) + extlz4 (0.3.4) + ffi (1.16.3) + globalid (1.2.1) + activesupport (>= 6.1) + google-protobuf (3.25.4-aarch64-linux) + google-protobuf (3.25.4-x86_64-linux) + hashdiff (1.1.1) + i18n (1.14.5) + concurrent-ruby (~> 1.0) + json (2.7.2) + json-schema (2.8.1) + addressable (>= 2.4) + libdatadog (12.0.0.1.0-aarch64-linux) + libdatadog (12.0.0.1.0-x86_64-linux) + libddwaf (1.14.0.0.0-aarch64-linux) + ffi (~> 1.0) + libddwaf (1.14.0.0.0-x86_64-linux) + ffi (~> 1.0) + loofah (2.22.0) + crass (~> 1.0.2) + nokogiri (>= 1.12.0) + mail (2.8.1) + mini_mime (>= 0.1.1) + net-imap + net-pop + net-smtp + marcel (1.0.4) + memory_profiler (0.9.14) + method_source (1.1.0) + mini_mime (1.1.5) + minitest (5.25.1) + msgpack (1.7.2) + net-imap (0.4.14) + date + net-protocol + net-pop (0.1.2) + net-protocol + net-protocol (0.2.2) + timeout + net-smtp (0.5.0) + net-protocol + nio4r (2.7.3) + nokogiri (1.16.7-aarch64-linux) + racc (~> 1.4) + nokogiri (1.16.7-x86_64-linux) + racc (~> 1.4) + os (1.1.4) + parallel (1.26.3) + parser (3.3.4.2) + ast (~> 2.4.1) + racc + pimpmychangelog (0.1.3) + pry (0.14.2) + coderay (~> 1.1) + method_source (~> 1.0) + pry-byebug (3.10.1) + byebug (~> 11.0) + pry (>= 0.13, < 0.15) + pry-stack_explorer (0.6.1) + binding_of_caller (~> 1.0) + pry (~> 0.13) + public_suffix (6.0.1) + racc (1.8.1) + rack (2.2.9) + rack-test (2.1.0) + rack (>= 1.3) + rails (7.0.8.4) + actioncable (= 7.0.8.4) + actionmailbox (= 7.0.8.4) + actionmailer (= 7.0.8.4) + actionpack (= 7.0.8.4) + actiontext (= 7.0.8.4) + actionview (= 7.0.8.4) + activejob (= 7.0.8.4) + activemodel (= 7.0.8.4) + activerecord (= 7.0.8.4) + activestorage (= 7.0.8.4) + activesupport (= 7.0.8.4) + bundler (>= 1.15.0) + railties (= 7.0.8.4) + rails-dom-testing (2.2.0) + activesupport (>= 5.0.0) + minitest + nokogiri (>= 1.6) + rails-html-sanitizer (1.6.0) + loofah (~> 2.21) + nokogiri (~> 1.14) + railties (7.0.8.4) + actionpack (= 7.0.8.4) + activesupport (= 7.0.8.4) + method_source + rake (>= 12.2) + thor (~> 1.0) + zeitwerk (~> 2.5) + rainbow (3.1.1) + rake (13.2.1) + rake-compiler (1.2.7) + rake + regexp_parser (2.9.2) + rexml (3.3.6) + strscan + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-collection_matchers (1.2.1) + rspec-expectations (>= 2.99.0.beta1) + rspec-core (3.13.0) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.2) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.1) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-support (3.13.1) + rspec-wait (0.0.10) + rspec (>= 3.0) + rspec_junit_formatter (0.6.0) + rspec-core (>= 2, < 4, != 2.12.0) + rubocop (1.50.2) + json (~> 2.3) + parallel (~> 1.10) + parser (>= 3.2.0.0) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 1.8, < 3.0) + rexml (>= 3.2.5, < 4.0) + rubocop-ast (>= 1.28.0, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 3.0) + rubocop-ast (1.32.1) + parser (>= 3.3.1.0) + rubocop-capybara (2.21.0) + rubocop (~> 1.41) + rubocop-packaging (0.5.2) + rubocop (>= 1.33, < 2.0) + rubocop-performance (1.21.1) + rubocop (>= 1.48.1, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) + rubocop-rspec (2.20.0) + rubocop (~> 1.33) + rubocop-capybara (~> 2.17) + ruby-progressbar (1.13.0) + simplecov-cobertura (2.1.0) + rexml + simplecov (~> 0.19) + simplecov-html (0.12.3) + simplecov_json_formatter (0.1.4) + strscan (3.1.0) + thor (1.3.1) + timeout (0.4.1) + tzinfo (2.0.6) + concurrent-ruby (~> 1.0) + unicode-display_width (2.5.0) + warning (1.4.0) + webmock (3.23.1) + addressable (>= 2.8.0) + crack (>= 0.3.2) + hashdiff (>= 0.4.0, < 2.0.0) + webrick (1.8.1) + websocket-driver (0.7.6) + websocket-extensions (>= 0.1.0) + websocket-extensions (0.1.5) + yard (0.9.36) + zeitwerk (2.6.17) + +PLATFORMS + aarch64-linux + x86_64-linux + +DEPENDENCIES + appraisal (~> 2.4.0) + benchmark-ips (~> 2.8) + benchmark-memory (< 0.2) + builder + climate_control (~> 0.2.0) + concurrent-ruby + datadog! + dogstatsd-ruby (>= 3.3.0, != 5.1.0, != 5.0.1, != 5.0.0) + extlz4 (~> 0.3, >= 0.3.3) + ffi (~> 1.16.3) + google-protobuf (~> 3.0, != 3.7.1, != 3.7.0) + json-schema (< 3) + memory_profiler (~> 0.9) + os (~> 1.1) + pimpmychangelog (>= 0.1.2) + pry + pry-byebug + pry-stack_explorer + rails (~> 7.0.0) + rake (>= 10.5) + rake-compiler (~> 1.1, >= 1.1.1) + rexml (>= 3.2.7) + rspec (~> 3.12) + rspec-collection_matchers (~> 1.1) + rspec-wait (~> 0) + rspec_junit_formatter (>= 0.5.1) + rubocop (~> 1.50.0) + rubocop-packaging (~> 0.5.2) + rubocop-performance (~> 1.9) + rubocop-rspec (~> 2.20, < 2.21) + simplecov! + simplecov-cobertura (~> 2.1.0) + warning (~> 1) + webmock (>= 3.10.0) + webrick (>= 1.7.0) + yard (~> 0.9) + +BUNDLED WITH + 2.3.26 diff --git a/gemfiles/ruby_3.1_rails71.gemfile b/gemfiles/ruby_3.1_rails71.gemfile new file mode 100644 index 00000000000..029e84b7b45 --- /dev/null +++ b/gemfiles/ruby_3.1_rails71.gemfile @@ -0,0 +1,49 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "appraisal", "~> 2.4.0" +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "builder" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "extlz4", "~> 0.3", ">= 0.3.3" +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.12" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "simplecov", git: "https://github.com/DataDog/simplecov", ref: "3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "rexml", ">= 3.2.7" +gem "webrick", ">= 1.7.0" +gem "yard", "~> 0.9" +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 "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "ffi", "~> 1.16.3", require: false +gem "rails", "~> 7.1.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.1_rails71.gemfile.lock b/gemfiles/ruby_3.1_rails71.gemfile.lock new file mode 100644 index 00000000000..d81449167fd --- /dev/null +++ b/gemfiles/ruby_3.1_rails71.gemfile.lock @@ -0,0 +1,356 @@ +GIT + remote: https://github.com/DataDog/simplecov + revision: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + ref: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + specs: + simplecov (0.21.2) + docile (~> 1.1) + simplecov-html (~> 0.11) + simplecov_json_formatter (~> 0.1) + +PATH + remote: .. + specs: + datadog (2.3.0) + debase-ruby_core_source (= 3.3.1) + libdatadog (~> 12.0.0.1.0) + libddwaf (~> 1.14.0.0.0) + msgpack + +GEM + remote: https://rubygems.org/ + specs: + actioncable (7.1.3.4) + actionpack (= 7.1.3.4) + activesupport (= 7.1.3.4) + nio4r (~> 2.0) + websocket-driver (>= 0.6.1) + zeitwerk (~> 2.6) + actionmailbox (7.1.3.4) + actionpack (= 7.1.3.4) + activejob (= 7.1.3.4) + activerecord (= 7.1.3.4) + activestorage (= 7.1.3.4) + activesupport (= 7.1.3.4) + mail (>= 2.7.1) + net-imap + net-pop + net-smtp + actionmailer (7.1.3.4) + actionpack (= 7.1.3.4) + actionview (= 7.1.3.4) + activejob (= 7.1.3.4) + activesupport (= 7.1.3.4) + mail (~> 2.5, >= 2.5.4) + net-imap + net-pop + net-smtp + rails-dom-testing (~> 2.2) + actionpack (7.1.3.4) + actionview (= 7.1.3.4) + activesupport (= 7.1.3.4) + nokogiri (>= 1.8.5) + racc + rack (>= 2.2.4) + rack-session (>= 1.0.1) + rack-test (>= 0.6.3) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + actiontext (7.1.3.4) + actionpack (= 7.1.3.4) + activerecord (= 7.1.3.4) + activestorage (= 7.1.3.4) + activesupport (= 7.1.3.4) + globalid (>= 0.6.0) + nokogiri (>= 1.8.5) + actionview (7.1.3.4) + activesupport (= 7.1.3.4) + builder (~> 3.1) + erubi (~> 1.11) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + activejob (7.1.3.4) + activesupport (= 7.1.3.4) + globalid (>= 0.3.6) + activemodel (7.1.3.4) + activesupport (= 7.1.3.4) + activerecord (7.1.3.4) + activemodel (= 7.1.3.4) + activesupport (= 7.1.3.4) + timeout (>= 0.4.0) + activestorage (7.1.3.4) + actionpack (= 7.1.3.4) + activejob (= 7.1.3.4) + activerecord (= 7.1.3.4) + activesupport (= 7.1.3.4) + marcel (~> 1.0) + activesupport (7.1.3.4) + base64 + bigdecimal + concurrent-ruby (~> 1.0, >= 1.0.2) + connection_pool (>= 2.2.5) + drb + i18n (>= 1.6, < 2) + minitest (>= 5.1) + mutex_m + tzinfo (~> 2.0) + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + appraisal (2.4.1) + bundler + rake + thor (>= 0.14.0) + ast (2.4.2) + base64 (0.2.0) + benchmark-ips (2.13.0) + benchmark-memory (0.1.2) + memory_profiler (~> 0.9) + bigdecimal (3.1.8) + binding_of_caller (1.0.1) + debug_inspector (>= 1.2.0) + builder (3.3.0) + byebug (11.1.3) + climate_control (0.2.0) + coderay (1.1.3) + concurrent-ruby (1.3.4) + connection_pool (2.4.1) + crack (1.0.0) + bigdecimal + rexml + crass (1.0.6) + date (3.3.4) + debase-ruby_core_source (3.3.1) + debug_inspector (1.2.0) + diff-lcs (1.5.1) + docile (1.4.1) + dogstatsd-ruby (5.6.1) + drb (2.2.1) + erubi (1.13.0) + extlz4 (0.3.4) + ffi (1.16.3) + globalid (1.2.1) + activesupport (>= 6.1) + google-protobuf (3.25.4-aarch64-linux) + google-protobuf (3.25.4-x86_64-linux) + hashdiff (1.1.1) + i18n (1.14.5) + concurrent-ruby (~> 1.0) + io-console (0.7.2) + irb (1.14.0) + rdoc (>= 4.0.0) + reline (>= 0.4.2) + json (2.7.2) + json-schema (2.8.1) + addressable (>= 2.4) + libdatadog (12.0.0.1.0-aarch64-linux) + libdatadog (12.0.0.1.0-x86_64-linux) + libddwaf (1.14.0.0.0-aarch64-linux) + ffi (~> 1.0) + libddwaf (1.14.0.0.0-x86_64-linux) + ffi (~> 1.0) + loofah (2.22.0) + crass (~> 1.0.2) + nokogiri (>= 1.12.0) + mail (2.8.1) + mini_mime (>= 0.1.1) + net-imap + net-pop + net-smtp + marcel (1.0.4) + memory_profiler (0.9.14) + method_source (1.1.0) + mini_mime (1.1.5) + minitest (5.25.1) + msgpack (1.7.2) + mutex_m (0.2.0) + net-imap (0.4.14) + date + net-protocol + net-pop (0.1.2) + net-protocol + net-protocol (0.2.2) + timeout + net-smtp (0.5.0) + net-protocol + nio4r (2.7.3) + nokogiri (1.16.7-aarch64-linux) + racc (~> 1.4) + nokogiri (1.16.7-x86_64-linux) + racc (~> 1.4) + os (1.1.4) + parallel (1.26.3) + parser (3.3.4.2) + ast (~> 2.4.1) + racc + pimpmychangelog (0.1.3) + pry (0.14.2) + coderay (~> 1.1) + method_source (~> 1.0) + pry-byebug (3.10.1) + byebug (~> 11.0) + pry (>= 0.13, < 0.15) + pry-stack_explorer (0.6.1) + binding_of_caller (~> 1.0) + pry (~> 0.13) + psych (5.1.2) + stringio + public_suffix (6.0.1) + racc (1.8.1) + rack (3.1.7) + rack-session (2.0.0) + rack (>= 3.0.0) + rack-test (2.1.0) + rack (>= 1.3) + rackup (2.1.0) + rack (>= 3) + webrick (~> 1.8) + rails (7.1.3.4) + actioncable (= 7.1.3.4) + actionmailbox (= 7.1.3.4) + actionmailer (= 7.1.3.4) + actionpack (= 7.1.3.4) + actiontext (= 7.1.3.4) + actionview (= 7.1.3.4) + activejob (= 7.1.3.4) + activemodel (= 7.1.3.4) + activerecord (= 7.1.3.4) + activestorage (= 7.1.3.4) + activesupport (= 7.1.3.4) + bundler (>= 1.15.0) + railties (= 7.1.3.4) + rails-dom-testing (2.2.0) + activesupport (>= 5.0.0) + minitest + nokogiri (>= 1.6) + rails-html-sanitizer (1.6.0) + loofah (~> 2.21) + nokogiri (~> 1.14) + railties (7.1.3.4) + actionpack (= 7.1.3.4) + activesupport (= 7.1.3.4) + irb + rackup (>= 1.0.0) + rake (>= 12.2) + thor (~> 1.0, >= 1.2.2) + zeitwerk (~> 2.6) + rainbow (3.1.1) + rake (13.2.1) + rake-compiler (1.2.7) + rake + rdoc (6.7.0) + psych (>= 4.0.0) + regexp_parser (2.9.2) + reline (0.5.9) + io-console (~> 0.5) + rexml (3.3.6) + strscan + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-collection_matchers (1.2.1) + rspec-expectations (>= 2.99.0.beta1) + rspec-core (3.13.0) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.2) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.1) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-support (3.13.1) + rspec-wait (0.0.10) + rspec (>= 3.0) + rspec_junit_formatter (0.6.0) + rspec-core (>= 2, < 4, != 2.12.0) + rubocop (1.50.2) + json (~> 2.3) + parallel (~> 1.10) + parser (>= 3.2.0.0) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 1.8, < 3.0) + rexml (>= 3.2.5, < 4.0) + rubocop-ast (>= 1.28.0, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 3.0) + rubocop-ast (1.32.1) + parser (>= 3.3.1.0) + rubocop-capybara (2.21.0) + rubocop (~> 1.41) + rubocop-packaging (0.5.2) + rubocop (>= 1.33, < 2.0) + rubocop-performance (1.21.1) + rubocop (>= 1.48.1, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) + rubocop-rspec (2.20.0) + rubocop (~> 1.33) + rubocop-capybara (~> 2.17) + ruby-progressbar (1.13.0) + simplecov-cobertura (2.1.0) + rexml + simplecov (~> 0.19) + simplecov-html (0.12.3) + simplecov_json_formatter (0.1.4) + stringio (3.1.1) + strscan (3.1.0) + thor (1.3.1) + timeout (0.4.1) + tzinfo (2.0.6) + concurrent-ruby (~> 1.0) + unicode-display_width (2.5.0) + warning (1.4.0) + webmock (3.23.1) + addressable (>= 2.8.0) + crack (>= 0.3.2) + hashdiff (>= 0.4.0, < 2.0.0) + webrick (1.8.1) + websocket-driver (0.7.6) + websocket-extensions (>= 0.1.0) + websocket-extensions (0.1.5) + yard (0.9.36) + zeitwerk (2.6.17) + +PLATFORMS + aarch64-linux + x86_64-linux + +DEPENDENCIES + appraisal (~> 2.4.0) + benchmark-ips (~> 2.8) + benchmark-memory (< 0.2) + builder + climate_control (~> 0.2.0) + concurrent-ruby + datadog! + dogstatsd-ruby (>= 3.3.0, != 5.1.0, != 5.0.1, != 5.0.0) + extlz4 (~> 0.3, >= 0.3.3) + ffi (~> 1.16.3) + google-protobuf (~> 3.0, != 3.7.1, != 3.7.0) + json-schema (< 3) + memory_profiler (~> 0.9) + os (~> 1.1) + pimpmychangelog (>= 0.1.2) + pry + pry-byebug + pry-stack_explorer + rails (~> 7.1.0) + rake (>= 10.5) + rake-compiler (~> 1.1, >= 1.1.1) + rexml (>= 3.2.7) + rspec (~> 3.12) + rspec-collection_matchers (~> 1.1) + rspec-wait (~> 0) + rspec_junit_formatter (>= 0.5.1) + rubocop (~> 1.50.0) + rubocop-packaging (~> 0.5.2) + rubocop-performance (~> 1.9) + rubocop-rspec (~> 2.20, < 2.21) + simplecov! + simplecov-cobertura (~> 2.1.0) + warning (~> 1) + webmock (>= 3.10.0) + webrick (>= 1.7.0) + yard (~> 0.9) + +BUNDLED WITH + 2.3.26 diff --git a/gemfiles/ruby_3.1_stripe_min.gemfile b/gemfiles/ruby_3.1_stripe_min.gemfile new file mode 100644 index 00000000000..582cd38479b --- /dev/null +++ b/gemfiles/ruby_3.1_stripe_min.gemfile @@ -0,0 +1,48 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "appraisal", "~> 2.4.0" +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "builder" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "extlz4", "~> 0.3", ">= 0.3.3" +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.12" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "simplecov", git: "https://github.com/DataDog/simplecov", ref: "3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "rexml", ">= 3.2.7" +gem "webrick", ">= 1.7.0" +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 "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "ffi", "~> 1.16.3", require: false +gem "stripe", "= 5.15.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.1_stripe_min.gemfile.lock b/gemfiles/ruby_3.1_stripe_min.gemfile.lock new file mode 100644 index 00000000000..b2ace19edf5 --- /dev/null +++ b/gemfiles/ruby_3.1_stripe_min.gemfile.lock @@ -0,0 +1,188 @@ +GIT + remote: https://github.com/DataDog/simplecov + revision: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + ref: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + specs: + simplecov (0.21.2) + docile (~> 1.1) + simplecov-html (~> 0.11) + simplecov_json_formatter (~> 0.1) + +PATH + remote: .. + specs: + datadog (2.3.0) + debase-ruby_core_source (= 3.3.1) + libdatadog (~> 12.0.0.1.0) + libddwaf (~> 1.14.0.0.0) + msgpack + +GEM + remote: https://rubygems.org/ + specs: + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + appraisal (2.4.1) + bundler + rake + thor (>= 0.14.0) + ast (2.4.2) + benchmark-ips (2.14.0) + benchmark-memory (0.1.2) + memory_profiler (~> 0.9) + bigdecimal (3.1.8) + binding_of_caller (1.0.1) + debug_inspector (>= 1.2.0) + builder (3.3.0) + byebug (11.1.3) + climate_control (0.2.0) + coderay (1.1.3) + concurrent-ruby (1.3.4) + crack (1.0.0) + bigdecimal + rexml + debase-ruby_core_source (3.3.1) + debug_inspector (1.2.0) + diff-lcs (1.5.1) + docile (1.4.1) + dogstatsd-ruby (5.6.1) + extlz4 (0.3.4) + ffi (1.16.3) + google-protobuf (3.25.5-aarch64-linux) + google-protobuf (3.25.5-x86_64-linux) + hashdiff (1.1.1) + json (2.7.2) + json-schema (2.8.1) + addressable (>= 2.4) + libdatadog (12.0.0.1.0-aarch64-linux) + libdatadog (12.0.0.1.0-x86_64-linux) + libddwaf (1.14.0.0.0-aarch64-linux) + ffi (~> 1.0) + libddwaf (1.14.0.0.0-x86_64-linux) + ffi (~> 1.0) + memory_profiler (0.9.14) + method_source (1.1.0) + msgpack (1.7.2) + os (1.1.4) + parallel (1.26.3) + parser (3.3.5.0) + ast (~> 2.4.1) + racc + pimpmychangelog (0.1.3) + pry (0.14.2) + coderay (~> 1.1) + method_source (~> 1.0) + pry-byebug (3.10.1) + byebug (~> 11.0) + pry (>= 0.13, < 0.15) + pry-stack_explorer (0.6.1) + binding_of_caller (~> 1.0) + pry (~> 0.13) + public_suffix (6.0.1) + racc (1.8.1) + rainbow (3.1.1) + rake (13.2.1) + rake-compiler (1.2.7) + rake + regexp_parser (2.9.2) + rexml (3.3.7) + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-collection_matchers (1.2.1) + rspec-expectations (>= 2.99.0.beta1) + rspec-core (3.13.1) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.3) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.1) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-support (3.13.1) + rspec-wait (0.0.10) + rspec (>= 3.0) + rspec_junit_formatter (0.6.0) + rspec-core (>= 2, < 4, != 2.12.0) + rubocop (1.50.2) + json (~> 2.3) + parallel (~> 1.10) + parser (>= 3.2.0.0) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 1.8, < 3.0) + rexml (>= 3.2.5, < 4.0) + rubocop-ast (>= 1.28.0, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 3.0) + rubocop-ast (1.32.3) + parser (>= 3.3.1.0) + rubocop-capybara (2.21.0) + rubocop (~> 1.41) + rubocop-packaging (0.5.2) + rubocop (>= 1.33, < 2.0) + rubocop-performance (1.22.1) + rubocop (>= 1.48.1, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) + rubocop-rspec (2.20.0) + rubocop (~> 1.33) + rubocop-capybara (~> 2.17) + ruby-progressbar (1.13.0) + simplecov-cobertura (2.1.0) + rexml + simplecov (~> 0.19) + simplecov-html (0.13.1) + simplecov_json_formatter (0.1.4) + stripe (5.15.0) + thor (1.3.2) + unicode-display_width (2.6.0) + warning (1.4.0) + webmock (3.23.1) + addressable (>= 2.8.0) + crack (>= 0.3.2) + hashdiff (>= 0.4.0, < 2.0.0) + webrick (1.8.1) + +PLATFORMS + aarch64-linux + x86_64-linux + +DEPENDENCIES + appraisal (~> 2.4.0) + benchmark-ips (~> 2.8) + benchmark-memory (< 0.2) + builder + climate_control (~> 0.2.0) + concurrent-ruby + datadog! + dogstatsd-ruby (>= 3.3.0, != 5.1.0, != 5.0.1, != 5.0.0) + extlz4 (~> 0.3, >= 0.3.3) + ffi (~> 1.16.3) + google-protobuf (~> 3.0, != 3.7.1, != 3.7.0) + json-schema (< 3) + memory_profiler (~> 0.9) + os (~> 1.1) + pimpmychangelog (>= 0.1.2) + pry + pry-byebug + pry-stack_explorer + rake (>= 10.5) + rake-compiler (~> 1.1, >= 1.1.1) + rexml (>= 3.2.7) + rspec (~> 3.12) + rspec-collection_matchers (~> 1.1) + rspec-wait (~> 0) + rspec_junit_formatter (>= 0.5.1) + rubocop (~> 1.50.0) + rubocop-packaging (~> 0.5.2) + rubocop-performance (~> 1.9) + rubocop-rspec (~> 2.20, < 2.21) + simplecov! + simplecov-cobertura (~> 2.1.0) + stripe (= 5.15.0) + warning (~> 1) + webmock (>= 3.10.0) + webrick (>= 1.7.0) + +BUNDLED WITH + 2.3.26 diff --git a/gemfiles/ruby_3.2_rails7.gemfile b/gemfiles/ruby_3.2_rails7.gemfile new file mode 100644 index 00000000000..2c90032f074 --- /dev/null +++ b/gemfiles/ruby_3.2_rails7.gemfile @@ -0,0 +1,48 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "appraisal", "~> 2.4.0" +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "builder" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "extlz4", "~> 0.3", ">= 0.3.3" +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.12" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "simplecov", git: "https://github.com/DataDog/simplecov", ref: "3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "rexml", ">= 3.2.7" +gem "webrick", ">= 1.7.0" +gem "yard", "~> 0.9" +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 "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "ffi", "~> 1.16.3", require: false +gem "rails", "~> 7.0.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.2_rails7.gemfile.lock b/gemfiles/ruby_3.2_rails7.gemfile.lock new file mode 100644 index 00000000000..a02275f4b5d --- /dev/null +++ b/gemfiles/ruby_3.2_rails7.gemfile.lock @@ -0,0 +1,321 @@ +GIT + remote: https://github.com/DataDog/simplecov + revision: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + ref: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + specs: + simplecov (0.21.2) + docile (~> 1.1) + simplecov-html (~> 0.11) + simplecov_json_formatter (~> 0.1) + +PATH + remote: .. + specs: + datadog (2.3.0) + debase-ruby_core_source (= 3.3.1) + libdatadog (~> 12.0.0.1.0) + libddwaf (~> 1.14.0.0.0) + msgpack + +GEM + remote: https://rubygems.org/ + specs: + actioncable (7.0.8.4) + actionpack (= 7.0.8.4) + activesupport (= 7.0.8.4) + nio4r (~> 2.0) + websocket-driver (>= 0.6.1) + actionmailbox (7.0.8.4) + actionpack (= 7.0.8.4) + activejob (= 7.0.8.4) + activerecord (= 7.0.8.4) + activestorage (= 7.0.8.4) + activesupport (= 7.0.8.4) + mail (>= 2.7.1) + net-imap + net-pop + net-smtp + actionmailer (7.0.8.4) + actionpack (= 7.0.8.4) + actionview (= 7.0.8.4) + activejob (= 7.0.8.4) + activesupport (= 7.0.8.4) + mail (~> 2.5, >= 2.5.4) + net-imap + net-pop + net-smtp + rails-dom-testing (~> 2.0) + actionpack (7.0.8.4) + actionview (= 7.0.8.4) + activesupport (= 7.0.8.4) + rack (~> 2.0, >= 2.2.4) + rack-test (>= 0.6.3) + rails-dom-testing (~> 2.0) + rails-html-sanitizer (~> 1.0, >= 1.2.0) + actiontext (7.0.8.4) + actionpack (= 7.0.8.4) + activerecord (= 7.0.8.4) + activestorage (= 7.0.8.4) + activesupport (= 7.0.8.4) + globalid (>= 0.6.0) + nokogiri (>= 1.8.5) + actionview (7.0.8.4) + activesupport (= 7.0.8.4) + builder (~> 3.1) + erubi (~> 1.4) + rails-dom-testing (~> 2.0) + rails-html-sanitizer (~> 1.1, >= 1.2.0) + activejob (7.0.8.4) + activesupport (= 7.0.8.4) + globalid (>= 0.3.6) + activemodel (7.0.8.4) + activesupport (= 7.0.8.4) + activerecord (7.0.8.4) + activemodel (= 7.0.8.4) + activesupport (= 7.0.8.4) + activestorage (7.0.8.4) + actionpack (= 7.0.8.4) + activejob (= 7.0.8.4) + activerecord (= 7.0.8.4) + activesupport (= 7.0.8.4) + marcel (~> 1.0) + mini_mime (>= 1.1.0) + activesupport (7.0.8.4) + concurrent-ruby (~> 1.0, >= 1.0.2) + i18n (>= 1.6, < 2) + minitest (>= 5.1) + tzinfo (~> 2.0) + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + appraisal (2.4.1) + bundler + rake + thor (>= 0.14.0) + ast (2.4.2) + benchmark-ips (2.13.0) + benchmark-memory (0.1.2) + memory_profiler (~> 0.9) + bigdecimal (3.1.8) + binding_of_caller (1.0.1) + debug_inspector (>= 1.2.0) + builder (3.3.0) + climate_control (0.2.0) + coderay (1.1.3) + concurrent-ruby (1.3.4) + crack (1.0.0) + bigdecimal + rexml + crass (1.0.6) + date (3.3.4) + debase-ruby_core_source (3.3.1) + debug_inspector (1.2.0) + diff-lcs (1.5.1) + docile (1.4.1) + dogstatsd-ruby (5.6.1) + erubi (1.13.0) + extlz4 (0.3.4) + ffi (1.16.3) + globalid (1.2.1) + activesupport (>= 6.1) + google-protobuf (3.25.4-aarch64-linux) + google-protobuf (3.25.4-x86_64-linux) + hashdiff (1.1.1) + i18n (1.14.5) + concurrent-ruby (~> 1.0) + json (2.7.2) + json-schema (2.8.1) + addressable (>= 2.4) + libdatadog (12.0.0.1.0-aarch64-linux) + libdatadog (12.0.0.1.0-x86_64-linux) + libddwaf (1.14.0.0.0-aarch64-linux) + ffi (~> 1.0) + libddwaf (1.14.0.0.0-x86_64-linux) + ffi (~> 1.0) + loofah (2.22.0) + crass (~> 1.0.2) + nokogiri (>= 1.12.0) + mail (2.8.1) + mini_mime (>= 0.1.1) + net-imap + net-pop + net-smtp + marcel (1.0.4) + memory_profiler (0.9.14) + method_source (1.1.0) + mini_mime (1.1.5) + minitest (5.25.1) + msgpack (1.7.2) + net-imap (0.4.14) + date + net-protocol + net-pop (0.1.2) + net-protocol + net-protocol (0.2.2) + timeout + net-smtp (0.5.0) + net-protocol + nio4r (2.7.3) + nokogiri (1.16.7-aarch64-linux) + racc (~> 1.4) + nokogiri (1.16.7-x86_64-linux) + racc (~> 1.4) + os (1.1.4) + parallel (1.26.3) + parser (3.3.4.2) + ast (~> 2.4.1) + racc + pimpmychangelog (0.1.3) + pry (0.14.2) + coderay (~> 1.1) + method_source (~> 1.0) + pry-stack_explorer (0.6.1) + binding_of_caller (~> 1.0) + pry (~> 0.13) + public_suffix (6.0.1) + racc (1.8.1) + rack (2.2.9) + rack-test (2.1.0) + rack (>= 1.3) + rails (7.0.8.4) + actioncable (= 7.0.8.4) + actionmailbox (= 7.0.8.4) + actionmailer (= 7.0.8.4) + actionpack (= 7.0.8.4) + actiontext (= 7.0.8.4) + actionview (= 7.0.8.4) + activejob (= 7.0.8.4) + activemodel (= 7.0.8.4) + activerecord (= 7.0.8.4) + activestorage (= 7.0.8.4) + activesupport (= 7.0.8.4) + bundler (>= 1.15.0) + railties (= 7.0.8.4) + rails-dom-testing (2.2.0) + activesupport (>= 5.0.0) + minitest + nokogiri (>= 1.6) + rails-html-sanitizer (1.6.0) + loofah (~> 2.21) + nokogiri (~> 1.14) + railties (7.0.8.4) + actionpack (= 7.0.8.4) + activesupport (= 7.0.8.4) + method_source + rake (>= 12.2) + thor (~> 1.0) + zeitwerk (~> 2.5) + rainbow (3.1.1) + rake (13.2.1) + rake-compiler (1.2.7) + rake + regexp_parser (2.9.2) + rexml (3.3.6) + strscan + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-collection_matchers (1.2.1) + rspec-expectations (>= 2.99.0.beta1) + rspec-core (3.13.0) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.2) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.1) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-support (3.13.1) + rspec-wait (0.0.10) + rspec (>= 3.0) + rspec_junit_formatter (0.6.0) + rspec-core (>= 2, < 4, != 2.12.0) + rubocop (1.50.2) + json (~> 2.3) + parallel (~> 1.10) + parser (>= 3.2.0.0) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 1.8, < 3.0) + rexml (>= 3.2.5, < 4.0) + rubocop-ast (>= 1.28.0, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 3.0) + rubocop-ast (1.32.1) + parser (>= 3.3.1.0) + rubocop-capybara (2.21.0) + rubocop (~> 1.41) + rubocop-packaging (0.5.2) + rubocop (>= 1.33, < 2.0) + rubocop-performance (1.21.1) + rubocop (>= 1.48.1, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) + rubocop-rspec (2.20.0) + rubocop (~> 1.33) + rubocop-capybara (~> 2.17) + ruby-progressbar (1.13.0) + simplecov-cobertura (2.1.0) + rexml + simplecov (~> 0.19) + simplecov-html (0.12.3) + simplecov_json_formatter (0.1.4) + strscan (3.1.0) + thor (1.3.1) + timeout (0.4.1) + tzinfo (2.0.6) + concurrent-ruby (~> 1.0) + unicode-display_width (2.5.0) + warning (1.4.0) + webmock (3.23.1) + addressable (>= 2.8.0) + crack (>= 0.3.2) + hashdiff (>= 0.4.0, < 2.0.0) + webrick (1.8.1) + websocket-driver (0.7.6) + websocket-extensions (>= 0.1.0) + websocket-extensions (0.1.5) + yard (0.9.36) + zeitwerk (2.6.17) + +PLATFORMS + aarch64-linux + x86_64-linux + +DEPENDENCIES + appraisal (~> 2.4.0) + benchmark-ips (~> 2.8) + benchmark-memory (< 0.2) + builder + climate_control (~> 0.2.0) + concurrent-ruby + datadog! + dogstatsd-ruby (>= 3.3.0, != 5.1.0, != 5.0.1, != 5.0.0) + extlz4 (~> 0.3, >= 0.3.3) + ffi (~> 1.16.3) + google-protobuf (~> 3.0, != 3.7.1, != 3.7.0) + json-schema (< 3) + memory_profiler (~> 0.9) + os (~> 1.1) + pimpmychangelog (>= 0.1.2) + pry + pry-stack_explorer + rails (~> 7.0.0) + rake (>= 10.5) + rake-compiler (~> 1.1, >= 1.1.1) + rexml (>= 3.2.7) + rspec (~> 3.12) + rspec-collection_matchers (~> 1.1) + rspec-wait (~> 0) + rspec_junit_formatter (>= 0.5.1) + rubocop (~> 1.50.0) + rubocop-packaging (~> 0.5.2) + rubocop-performance (~> 1.9) + rubocop-rspec (~> 2.20, < 2.21) + simplecov! + simplecov-cobertura (~> 2.1.0) + warning (~> 1) + webmock (>= 3.10.0) + webrick (>= 1.7.0) + yard (~> 0.9) + +BUNDLED WITH + 2.3.26 diff --git a/gemfiles/ruby_3.2_rails71.gemfile b/gemfiles/ruby_3.2_rails71.gemfile new file mode 100644 index 00000000000..77d66c84b11 --- /dev/null +++ b/gemfiles/ruby_3.2_rails71.gemfile @@ -0,0 +1,48 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "appraisal", "~> 2.4.0" +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "builder" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "extlz4", "~> 0.3", ">= 0.3.3" +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.12" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "simplecov", git: "https://github.com/DataDog/simplecov", ref: "3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "rexml", ">= 3.2.7" +gem "webrick", ">= 1.7.0" +gem "yard", "~> 0.9" +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 "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "ffi", "~> 1.16.3", require: false +gem "rails", "~> 7.1.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.2_rails71.gemfile.lock b/gemfiles/ruby_3.2_rails71.gemfile.lock new file mode 100644 index 00000000000..db7b3876e27 --- /dev/null +++ b/gemfiles/ruby_3.2_rails71.gemfile.lock @@ -0,0 +1,351 @@ +GIT + remote: https://github.com/DataDog/simplecov + revision: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + ref: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + specs: + simplecov (0.21.2) + docile (~> 1.1) + simplecov-html (~> 0.11) + simplecov_json_formatter (~> 0.1) + +PATH + remote: .. + specs: + datadog (2.3.0) + debase-ruby_core_source (= 3.3.1) + libdatadog (~> 12.0.0.1.0) + libddwaf (~> 1.14.0.0.0) + msgpack + +GEM + remote: https://rubygems.org/ + specs: + actioncable (7.1.3.4) + actionpack (= 7.1.3.4) + activesupport (= 7.1.3.4) + nio4r (~> 2.0) + websocket-driver (>= 0.6.1) + zeitwerk (~> 2.6) + actionmailbox (7.1.3.4) + actionpack (= 7.1.3.4) + activejob (= 7.1.3.4) + activerecord (= 7.1.3.4) + activestorage (= 7.1.3.4) + activesupport (= 7.1.3.4) + mail (>= 2.7.1) + net-imap + net-pop + net-smtp + actionmailer (7.1.3.4) + actionpack (= 7.1.3.4) + actionview (= 7.1.3.4) + activejob (= 7.1.3.4) + activesupport (= 7.1.3.4) + mail (~> 2.5, >= 2.5.4) + net-imap + net-pop + net-smtp + rails-dom-testing (~> 2.2) + actionpack (7.1.3.4) + actionview (= 7.1.3.4) + activesupport (= 7.1.3.4) + nokogiri (>= 1.8.5) + racc + rack (>= 2.2.4) + rack-session (>= 1.0.1) + rack-test (>= 0.6.3) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + actiontext (7.1.3.4) + actionpack (= 7.1.3.4) + activerecord (= 7.1.3.4) + activestorage (= 7.1.3.4) + activesupport (= 7.1.3.4) + globalid (>= 0.6.0) + nokogiri (>= 1.8.5) + actionview (7.1.3.4) + activesupport (= 7.1.3.4) + builder (~> 3.1) + erubi (~> 1.11) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + activejob (7.1.3.4) + activesupport (= 7.1.3.4) + globalid (>= 0.3.6) + activemodel (7.1.3.4) + activesupport (= 7.1.3.4) + activerecord (7.1.3.4) + activemodel (= 7.1.3.4) + activesupport (= 7.1.3.4) + timeout (>= 0.4.0) + activestorage (7.1.3.4) + actionpack (= 7.1.3.4) + activejob (= 7.1.3.4) + activerecord (= 7.1.3.4) + activesupport (= 7.1.3.4) + marcel (~> 1.0) + activesupport (7.1.3.4) + base64 + bigdecimal + concurrent-ruby (~> 1.0, >= 1.0.2) + connection_pool (>= 2.2.5) + drb + i18n (>= 1.6, < 2) + minitest (>= 5.1) + mutex_m + tzinfo (~> 2.0) + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + appraisal (2.4.1) + bundler + rake + thor (>= 0.14.0) + ast (2.4.2) + base64 (0.2.0) + benchmark-ips (2.13.0) + benchmark-memory (0.1.2) + memory_profiler (~> 0.9) + bigdecimal (3.1.8) + binding_of_caller (1.0.1) + debug_inspector (>= 1.2.0) + builder (3.3.0) + climate_control (0.2.0) + coderay (1.1.3) + concurrent-ruby (1.3.4) + connection_pool (2.4.1) + crack (1.0.0) + bigdecimal + rexml + crass (1.0.6) + date (3.3.4) + debase-ruby_core_source (3.3.1) + debug_inspector (1.2.0) + diff-lcs (1.5.1) + docile (1.4.1) + dogstatsd-ruby (5.6.1) + drb (2.2.1) + erubi (1.13.0) + extlz4 (0.3.4) + ffi (1.16.3) + globalid (1.2.1) + activesupport (>= 6.1) + google-protobuf (3.25.4-aarch64-linux) + google-protobuf (3.25.4-x86_64-linux) + hashdiff (1.1.1) + i18n (1.14.5) + concurrent-ruby (~> 1.0) + io-console (0.7.2) + irb (1.14.0) + rdoc (>= 4.0.0) + reline (>= 0.4.2) + json (2.7.2) + json-schema (2.8.1) + addressable (>= 2.4) + libdatadog (12.0.0.1.0-aarch64-linux) + libdatadog (12.0.0.1.0-x86_64-linux) + libddwaf (1.14.0.0.0-aarch64-linux) + ffi (~> 1.0) + libddwaf (1.14.0.0.0-x86_64-linux) + ffi (~> 1.0) + loofah (2.22.0) + crass (~> 1.0.2) + nokogiri (>= 1.12.0) + mail (2.8.1) + mini_mime (>= 0.1.1) + net-imap + net-pop + net-smtp + marcel (1.0.4) + memory_profiler (0.9.14) + method_source (1.1.0) + mini_mime (1.1.5) + minitest (5.25.1) + msgpack (1.7.2) + mutex_m (0.2.0) + net-imap (0.4.14) + date + net-protocol + net-pop (0.1.2) + net-protocol + net-protocol (0.2.2) + timeout + net-smtp (0.5.0) + net-protocol + nio4r (2.7.3) + nokogiri (1.16.7-aarch64-linux) + racc (~> 1.4) + nokogiri (1.16.7-x86_64-linux) + racc (~> 1.4) + os (1.1.4) + parallel (1.26.3) + parser (3.3.4.2) + ast (~> 2.4.1) + racc + pimpmychangelog (0.1.3) + pry (0.14.2) + coderay (~> 1.1) + method_source (~> 1.0) + pry-stack_explorer (0.6.1) + binding_of_caller (~> 1.0) + pry (~> 0.13) + psych (5.1.2) + stringio + public_suffix (6.0.1) + racc (1.8.1) + rack (3.1.7) + rack-session (2.0.0) + rack (>= 3.0.0) + rack-test (2.1.0) + rack (>= 1.3) + rackup (2.1.0) + rack (>= 3) + webrick (~> 1.8) + rails (7.1.3.4) + actioncable (= 7.1.3.4) + actionmailbox (= 7.1.3.4) + actionmailer (= 7.1.3.4) + actionpack (= 7.1.3.4) + actiontext (= 7.1.3.4) + actionview (= 7.1.3.4) + activejob (= 7.1.3.4) + activemodel (= 7.1.3.4) + activerecord (= 7.1.3.4) + activestorage (= 7.1.3.4) + activesupport (= 7.1.3.4) + bundler (>= 1.15.0) + railties (= 7.1.3.4) + rails-dom-testing (2.2.0) + activesupport (>= 5.0.0) + minitest + nokogiri (>= 1.6) + rails-html-sanitizer (1.6.0) + loofah (~> 2.21) + nokogiri (~> 1.14) + railties (7.1.3.4) + actionpack (= 7.1.3.4) + activesupport (= 7.1.3.4) + irb + rackup (>= 1.0.0) + rake (>= 12.2) + thor (~> 1.0, >= 1.2.2) + zeitwerk (~> 2.6) + rainbow (3.1.1) + rake (13.2.1) + rake-compiler (1.2.7) + rake + rdoc (6.7.0) + psych (>= 4.0.0) + regexp_parser (2.9.2) + reline (0.5.9) + io-console (~> 0.5) + rexml (3.3.6) + strscan + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-collection_matchers (1.2.1) + rspec-expectations (>= 2.99.0.beta1) + rspec-core (3.13.0) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.2) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.1) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-support (3.13.1) + rspec-wait (0.0.10) + rspec (>= 3.0) + rspec_junit_formatter (0.6.0) + rspec-core (>= 2, < 4, != 2.12.0) + rubocop (1.50.2) + json (~> 2.3) + parallel (~> 1.10) + parser (>= 3.2.0.0) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 1.8, < 3.0) + rexml (>= 3.2.5, < 4.0) + rubocop-ast (>= 1.28.0, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 3.0) + rubocop-ast (1.32.1) + parser (>= 3.3.1.0) + rubocop-capybara (2.21.0) + rubocop (~> 1.41) + rubocop-packaging (0.5.2) + rubocop (>= 1.33, < 2.0) + rubocop-performance (1.21.1) + rubocop (>= 1.48.1, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) + rubocop-rspec (2.20.0) + rubocop (~> 1.33) + rubocop-capybara (~> 2.17) + ruby-progressbar (1.13.0) + simplecov-cobertura (2.1.0) + rexml + simplecov (~> 0.19) + simplecov-html (0.12.3) + simplecov_json_formatter (0.1.4) + stringio (3.1.1) + strscan (3.1.0) + thor (1.3.1) + timeout (0.4.1) + tzinfo (2.0.6) + concurrent-ruby (~> 1.0) + unicode-display_width (2.5.0) + warning (1.4.0) + webmock (3.23.1) + addressable (>= 2.8.0) + crack (>= 0.3.2) + hashdiff (>= 0.4.0, < 2.0.0) + webrick (1.8.1) + websocket-driver (0.7.6) + websocket-extensions (>= 0.1.0) + websocket-extensions (0.1.5) + yard (0.9.36) + zeitwerk (2.6.17) + +PLATFORMS + aarch64-linux + x86_64-linux + +DEPENDENCIES + appraisal (~> 2.4.0) + benchmark-ips (~> 2.8) + benchmark-memory (< 0.2) + builder + climate_control (~> 0.2.0) + concurrent-ruby + datadog! + dogstatsd-ruby (>= 3.3.0, != 5.1.0, != 5.0.1, != 5.0.0) + extlz4 (~> 0.3, >= 0.3.3) + ffi (~> 1.16.3) + google-protobuf (~> 3.0, != 3.7.1, != 3.7.0) + json-schema (< 3) + memory_profiler (~> 0.9) + os (~> 1.1) + pimpmychangelog (>= 0.1.2) + pry + pry-stack_explorer + rails (~> 7.1.0) + rake (>= 10.5) + rake-compiler (~> 1.1, >= 1.1.1) + rexml (>= 3.2.7) + rspec (~> 3.12) + rspec-collection_matchers (~> 1.1) + rspec-wait (~> 0) + rspec_junit_formatter (>= 0.5.1) + rubocop (~> 1.50.0) + rubocop-packaging (~> 0.5.2) + rubocop-performance (~> 1.9) + rubocop-rspec (~> 2.20, < 2.21) + simplecov! + simplecov-cobertura (~> 2.1.0) + warning (~> 1) + webmock (>= 3.10.0) + webrick (>= 1.7.0) + yard (~> 0.9) + +BUNDLED WITH + 2.3.26 diff --git a/gemfiles/ruby_3.2_stripe_min.gemfile b/gemfiles/ruby_3.2_stripe_min.gemfile new file mode 100644 index 00000000000..7bfa9ebd6c0 --- /dev/null +++ b/gemfiles/ruby_3.2_stripe_min.gemfile @@ -0,0 +1,47 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "appraisal", "~> 2.4.0" +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "builder" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "extlz4", "~> 0.3", ">= 0.3.3" +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.12" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "simplecov", git: "https://github.com/DataDog/simplecov", ref: "3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "rexml", ">= 3.2.7" +gem "webrick", ">= 1.7.0" +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 "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "ffi", "~> 1.16.3", require: false +gem "stripe", "= 5.15.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.2_stripe_min.gemfile.lock b/gemfiles/ruby_3.2_stripe_min.gemfile.lock new file mode 100644 index 00000000000..1094a376640 --- /dev/null +++ b/gemfiles/ruby_3.2_stripe_min.gemfile.lock @@ -0,0 +1,183 @@ +GIT + remote: https://github.com/DataDog/simplecov + revision: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + ref: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + specs: + simplecov (0.21.2) + docile (~> 1.1) + simplecov-html (~> 0.11) + simplecov_json_formatter (~> 0.1) + +PATH + remote: .. + specs: + datadog (2.3.0) + debase-ruby_core_source (= 3.3.1) + libdatadog (~> 12.0.0.1.0) + libddwaf (~> 1.14.0.0.0) + msgpack + +GEM + remote: https://rubygems.org/ + specs: + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + appraisal (2.4.1) + bundler + rake + thor (>= 0.14.0) + ast (2.4.2) + benchmark-ips (2.14.0) + benchmark-memory (0.1.2) + memory_profiler (~> 0.9) + bigdecimal (3.1.8) + binding_of_caller (1.0.1) + debug_inspector (>= 1.2.0) + builder (3.3.0) + climate_control (0.2.0) + coderay (1.1.3) + concurrent-ruby (1.3.4) + crack (1.0.0) + bigdecimal + rexml + debase-ruby_core_source (3.3.1) + debug_inspector (1.2.0) + diff-lcs (1.5.1) + docile (1.4.1) + dogstatsd-ruby (5.6.1) + extlz4 (0.3.4) + ffi (1.16.3) + google-protobuf (3.25.5-aarch64-linux) + google-protobuf (3.25.5-x86_64-linux) + hashdiff (1.1.1) + json (2.7.2) + json-schema (2.8.1) + addressable (>= 2.4) + libdatadog (12.0.0.1.0-aarch64-linux) + libdatadog (12.0.0.1.0-x86_64-linux) + libddwaf (1.14.0.0.0-aarch64-linux) + ffi (~> 1.0) + libddwaf (1.14.0.0.0-x86_64-linux) + ffi (~> 1.0) + memory_profiler (0.9.14) + method_source (1.1.0) + msgpack (1.7.2) + os (1.1.4) + parallel (1.26.3) + parser (3.3.5.0) + ast (~> 2.4.1) + racc + pimpmychangelog (0.1.3) + pry (0.14.2) + coderay (~> 1.1) + method_source (~> 1.0) + pry-stack_explorer (0.6.1) + binding_of_caller (~> 1.0) + pry (~> 0.13) + public_suffix (6.0.1) + racc (1.8.1) + rainbow (3.1.1) + rake (13.2.1) + rake-compiler (1.2.7) + rake + regexp_parser (2.9.2) + rexml (3.3.7) + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-collection_matchers (1.2.1) + rspec-expectations (>= 2.99.0.beta1) + rspec-core (3.13.1) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.3) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.1) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-support (3.13.1) + rspec-wait (0.0.10) + rspec (>= 3.0) + rspec_junit_formatter (0.6.0) + rspec-core (>= 2, < 4, != 2.12.0) + rubocop (1.50.2) + json (~> 2.3) + parallel (~> 1.10) + parser (>= 3.2.0.0) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 1.8, < 3.0) + rexml (>= 3.2.5, < 4.0) + rubocop-ast (>= 1.28.0, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 3.0) + rubocop-ast (1.32.3) + parser (>= 3.3.1.0) + rubocop-capybara (2.21.0) + rubocop (~> 1.41) + rubocop-packaging (0.5.2) + rubocop (>= 1.33, < 2.0) + rubocop-performance (1.22.1) + rubocop (>= 1.48.1, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) + rubocop-rspec (2.20.0) + rubocop (~> 1.33) + rubocop-capybara (~> 2.17) + ruby-progressbar (1.13.0) + simplecov-cobertura (2.1.0) + rexml + simplecov (~> 0.19) + simplecov-html (0.13.1) + simplecov_json_formatter (0.1.4) + stripe (5.15.0) + thor (1.3.2) + unicode-display_width (2.6.0) + warning (1.4.0) + webmock (3.23.1) + addressable (>= 2.8.0) + crack (>= 0.3.2) + hashdiff (>= 0.4.0, < 2.0.0) + webrick (1.8.1) + +PLATFORMS + aarch64-linux + x86_64-linux + +DEPENDENCIES + appraisal (~> 2.4.0) + benchmark-ips (~> 2.8) + benchmark-memory (< 0.2) + builder + climate_control (~> 0.2.0) + concurrent-ruby + datadog! + dogstatsd-ruby (>= 3.3.0, != 5.1.0, != 5.0.1, != 5.0.0) + extlz4 (~> 0.3, >= 0.3.3) + ffi (~> 1.16.3) + google-protobuf (~> 3.0, != 3.7.1, != 3.7.0) + json-schema (< 3) + memory_profiler (~> 0.9) + os (~> 1.1) + pimpmychangelog (>= 0.1.2) + pry + pry-stack_explorer + rake (>= 10.5) + rake-compiler (~> 1.1, >= 1.1.1) + rexml (>= 3.2.7) + rspec (~> 3.12) + rspec-collection_matchers (~> 1.1) + rspec-wait (~> 0) + rspec_junit_formatter (>= 0.5.1) + rubocop (~> 1.50.0) + rubocop-packaging (~> 0.5.2) + rubocop-performance (~> 1.9) + rubocop-rspec (~> 2.20, < 2.21) + simplecov! + simplecov-cobertura (~> 2.1.0) + stripe (= 5.15.0) + warning (~> 1) + webmock (>= 3.10.0) + webrick (>= 1.7.0) + +BUNDLED WITH + 2.3.26 diff --git a/gemfiles/ruby_3.3_rails7.gemfile b/gemfiles/ruby_3.3_rails7.gemfile new file mode 100644 index 00000000000..2c90032f074 --- /dev/null +++ b/gemfiles/ruby_3.3_rails7.gemfile @@ -0,0 +1,48 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "appraisal", "~> 2.4.0" +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "builder" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "extlz4", "~> 0.3", ">= 0.3.3" +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.12" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "simplecov", git: "https://github.com/DataDog/simplecov", ref: "3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "rexml", ">= 3.2.7" +gem "webrick", ">= 1.7.0" +gem "yard", "~> 0.9" +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 "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "ffi", "~> 1.16.3", require: false +gem "rails", "~> 7.0.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.3_rails7.gemfile.lock b/gemfiles/ruby_3.3_rails7.gemfile.lock new file mode 100644 index 00000000000..a02275f4b5d --- /dev/null +++ b/gemfiles/ruby_3.3_rails7.gemfile.lock @@ -0,0 +1,321 @@ +GIT + remote: https://github.com/DataDog/simplecov + revision: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + ref: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + specs: + simplecov (0.21.2) + docile (~> 1.1) + simplecov-html (~> 0.11) + simplecov_json_formatter (~> 0.1) + +PATH + remote: .. + specs: + datadog (2.3.0) + debase-ruby_core_source (= 3.3.1) + libdatadog (~> 12.0.0.1.0) + libddwaf (~> 1.14.0.0.0) + msgpack + +GEM + remote: https://rubygems.org/ + specs: + actioncable (7.0.8.4) + actionpack (= 7.0.8.4) + activesupport (= 7.0.8.4) + nio4r (~> 2.0) + websocket-driver (>= 0.6.1) + actionmailbox (7.0.8.4) + actionpack (= 7.0.8.4) + activejob (= 7.0.8.4) + activerecord (= 7.0.8.4) + activestorage (= 7.0.8.4) + activesupport (= 7.0.8.4) + mail (>= 2.7.1) + net-imap + net-pop + net-smtp + actionmailer (7.0.8.4) + actionpack (= 7.0.8.4) + actionview (= 7.0.8.4) + activejob (= 7.0.8.4) + activesupport (= 7.0.8.4) + mail (~> 2.5, >= 2.5.4) + net-imap + net-pop + net-smtp + rails-dom-testing (~> 2.0) + actionpack (7.0.8.4) + actionview (= 7.0.8.4) + activesupport (= 7.0.8.4) + rack (~> 2.0, >= 2.2.4) + rack-test (>= 0.6.3) + rails-dom-testing (~> 2.0) + rails-html-sanitizer (~> 1.0, >= 1.2.0) + actiontext (7.0.8.4) + actionpack (= 7.0.8.4) + activerecord (= 7.0.8.4) + activestorage (= 7.0.8.4) + activesupport (= 7.0.8.4) + globalid (>= 0.6.0) + nokogiri (>= 1.8.5) + actionview (7.0.8.4) + activesupport (= 7.0.8.4) + builder (~> 3.1) + erubi (~> 1.4) + rails-dom-testing (~> 2.0) + rails-html-sanitizer (~> 1.1, >= 1.2.0) + activejob (7.0.8.4) + activesupport (= 7.0.8.4) + globalid (>= 0.3.6) + activemodel (7.0.8.4) + activesupport (= 7.0.8.4) + activerecord (7.0.8.4) + activemodel (= 7.0.8.4) + activesupport (= 7.0.8.4) + activestorage (7.0.8.4) + actionpack (= 7.0.8.4) + activejob (= 7.0.8.4) + activerecord (= 7.0.8.4) + activesupport (= 7.0.8.4) + marcel (~> 1.0) + mini_mime (>= 1.1.0) + activesupport (7.0.8.4) + concurrent-ruby (~> 1.0, >= 1.0.2) + i18n (>= 1.6, < 2) + minitest (>= 5.1) + tzinfo (~> 2.0) + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + appraisal (2.4.1) + bundler + rake + thor (>= 0.14.0) + ast (2.4.2) + benchmark-ips (2.13.0) + benchmark-memory (0.1.2) + memory_profiler (~> 0.9) + bigdecimal (3.1.8) + binding_of_caller (1.0.1) + debug_inspector (>= 1.2.0) + builder (3.3.0) + climate_control (0.2.0) + coderay (1.1.3) + concurrent-ruby (1.3.4) + crack (1.0.0) + bigdecimal + rexml + crass (1.0.6) + date (3.3.4) + debase-ruby_core_source (3.3.1) + debug_inspector (1.2.0) + diff-lcs (1.5.1) + docile (1.4.1) + dogstatsd-ruby (5.6.1) + erubi (1.13.0) + extlz4 (0.3.4) + ffi (1.16.3) + globalid (1.2.1) + activesupport (>= 6.1) + google-protobuf (3.25.4-aarch64-linux) + google-protobuf (3.25.4-x86_64-linux) + hashdiff (1.1.1) + i18n (1.14.5) + concurrent-ruby (~> 1.0) + json (2.7.2) + json-schema (2.8.1) + addressable (>= 2.4) + libdatadog (12.0.0.1.0-aarch64-linux) + libdatadog (12.0.0.1.0-x86_64-linux) + libddwaf (1.14.0.0.0-aarch64-linux) + ffi (~> 1.0) + libddwaf (1.14.0.0.0-x86_64-linux) + ffi (~> 1.0) + loofah (2.22.0) + crass (~> 1.0.2) + nokogiri (>= 1.12.0) + mail (2.8.1) + mini_mime (>= 0.1.1) + net-imap + net-pop + net-smtp + marcel (1.0.4) + memory_profiler (0.9.14) + method_source (1.1.0) + mini_mime (1.1.5) + minitest (5.25.1) + msgpack (1.7.2) + net-imap (0.4.14) + date + net-protocol + net-pop (0.1.2) + net-protocol + net-protocol (0.2.2) + timeout + net-smtp (0.5.0) + net-protocol + nio4r (2.7.3) + nokogiri (1.16.7-aarch64-linux) + racc (~> 1.4) + nokogiri (1.16.7-x86_64-linux) + racc (~> 1.4) + os (1.1.4) + parallel (1.26.3) + parser (3.3.4.2) + ast (~> 2.4.1) + racc + pimpmychangelog (0.1.3) + pry (0.14.2) + coderay (~> 1.1) + method_source (~> 1.0) + pry-stack_explorer (0.6.1) + binding_of_caller (~> 1.0) + pry (~> 0.13) + public_suffix (6.0.1) + racc (1.8.1) + rack (2.2.9) + rack-test (2.1.0) + rack (>= 1.3) + rails (7.0.8.4) + actioncable (= 7.0.8.4) + actionmailbox (= 7.0.8.4) + actionmailer (= 7.0.8.4) + actionpack (= 7.0.8.4) + actiontext (= 7.0.8.4) + actionview (= 7.0.8.4) + activejob (= 7.0.8.4) + activemodel (= 7.0.8.4) + activerecord (= 7.0.8.4) + activestorage (= 7.0.8.4) + activesupport (= 7.0.8.4) + bundler (>= 1.15.0) + railties (= 7.0.8.4) + rails-dom-testing (2.2.0) + activesupport (>= 5.0.0) + minitest + nokogiri (>= 1.6) + rails-html-sanitizer (1.6.0) + loofah (~> 2.21) + nokogiri (~> 1.14) + railties (7.0.8.4) + actionpack (= 7.0.8.4) + activesupport (= 7.0.8.4) + method_source + rake (>= 12.2) + thor (~> 1.0) + zeitwerk (~> 2.5) + rainbow (3.1.1) + rake (13.2.1) + rake-compiler (1.2.7) + rake + regexp_parser (2.9.2) + rexml (3.3.6) + strscan + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-collection_matchers (1.2.1) + rspec-expectations (>= 2.99.0.beta1) + rspec-core (3.13.0) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.2) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.1) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-support (3.13.1) + rspec-wait (0.0.10) + rspec (>= 3.0) + rspec_junit_formatter (0.6.0) + rspec-core (>= 2, < 4, != 2.12.0) + rubocop (1.50.2) + json (~> 2.3) + parallel (~> 1.10) + parser (>= 3.2.0.0) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 1.8, < 3.0) + rexml (>= 3.2.5, < 4.0) + rubocop-ast (>= 1.28.0, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 3.0) + rubocop-ast (1.32.1) + parser (>= 3.3.1.0) + rubocop-capybara (2.21.0) + rubocop (~> 1.41) + rubocop-packaging (0.5.2) + rubocop (>= 1.33, < 2.0) + rubocop-performance (1.21.1) + rubocop (>= 1.48.1, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) + rubocop-rspec (2.20.0) + rubocop (~> 1.33) + rubocop-capybara (~> 2.17) + ruby-progressbar (1.13.0) + simplecov-cobertura (2.1.0) + rexml + simplecov (~> 0.19) + simplecov-html (0.12.3) + simplecov_json_formatter (0.1.4) + strscan (3.1.0) + thor (1.3.1) + timeout (0.4.1) + tzinfo (2.0.6) + concurrent-ruby (~> 1.0) + unicode-display_width (2.5.0) + warning (1.4.0) + webmock (3.23.1) + addressable (>= 2.8.0) + crack (>= 0.3.2) + hashdiff (>= 0.4.0, < 2.0.0) + webrick (1.8.1) + websocket-driver (0.7.6) + websocket-extensions (>= 0.1.0) + websocket-extensions (0.1.5) + yard (0.9.36) + zeitwerk (2.6.17) + +PLATFORMS + aarch64-linux + x86_64-linux + +DEPENDENCIES + appraisal (~> 2.4.0) + benchmark-ips (~> 2.8) + benchmark-memory (< 0.2) + builder + climate_control (~> 0.2.0) + concurrent-ruby + datadog! + dogstatsd-ruby (>= 3.3.0, != 5.1.0, != 5.0.1, != 5.0.0) + extlz4 (~> 0.3, >= 0.3.3) + ffi (~> 1.16.3) + google-protobuf (~> 3.0, != 3.7.1, != 3.7.0) + json-schema (< 3) + memory_profiler (~> 0.9) + os (~> 1.1) + pimpmychangelog (>= 0.1.2) + pry + pry-stack_explorer + rails (~> 7.0.0) + rake (>= 10.5) + rake-compiler (~> 1.1, >= 1.1.1) + rexml (>= 3.2.7) + rspec (~> 3.12) + rspec-collection_matchers (~> 1.1) + rspec-wait (~> 0) + rspec_junit_formatter (>= 0.5.1) + rubocop (~> 1.50.0) + rubocop-packaging (~> 0.5.2) + rubocop-performance (~> 1.9) + rubocop-rspec (~> 2.20, < 2.21) + simplecov! + simplecov-cobertura (~> 2.1.0) + warning (~> 1) + webmock (>= 3.10.0) + webrick (>= 1.7.0) + yard (~> 0.9) + +BUNDLED WITH + 2.3.26 diff --git a/gemfiles/ruby_3.3_rails71.gemfile b/gemfiles/ruby_3.3_rails71.gemfile new file mode 100644 index 00000000000..77d66c84b11 --- /dev/null +++ b/gemfiles/ruby_3.3_rails71.gemfile @@ -0,0 +1,48 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "appraisal", "~> 2.4.0" +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "builder" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "extlz4", "~> 0.3", ">= 0.3.3" +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.12" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "simplecov", git: "https://github.com/DataDog/simplecov", ref: "3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "rexml", ">= 3.2.7" +gem "webrick", ">= 1.7.0" +gem "yard", "~> 0.9" +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 "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "ffi", "~> 1.16.3", require: false +gem "rails", "~> 7.1.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.3_rails71.gemfile.lock b/gemfiles/ruby_3.3_rails71.gemfile.lock new file mode 100644 index 00000000000..db7b3876e27 --- /dev/null +++ b/gemfiles/ruby_3.3_rails71.gemfile.lock @@ -0,0 +1,351 @@ +GIT + remote: https://github.com/DataDog/simplecov + revision: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + ref: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + specs: + simplecov (0.21.2) + docile (~> 1.1) + simplecov-html (~> 0.11) + simplecov_json_formatter (~> 0.1) + +PATH + remote: .. + specs: + datadog (2.3.0) + debase-ruby_core_source (= 3.3.1) + libdatadog (~> 12.0.0.1.0) + libddwaf (~> 1.14.0.0.0) + msgpack + +GEM + remote: https://rubygems.org/ + specs: + actioncable (7.1.3.4) + actionpack (= 7.1.3.4) + activesupport (= 7.1.3.4) + nio4r (~> 2.0) + websocket-driver (>= 0.6.1) + zeitwerk (~> 2.6) + actionmailbox (7.1.3.4) + actionpack (= 7.1.3.4) + activejob (= 7.1.3.4) + activerecord (= 7.1.3.4) + activestorage (= 7.1.3.4) + activesupport (= 7.1.3.4) + mail (>= 2.7.1) + net-imap + net-pop + net-smtp + actionmailer (7.1.3.4) + actionpack (= 7.1.3.4) + actionview (= 7.1.3.4) + activejob (= 7.1.3.4) + activesupport (= 7.1.3.4) + mail (~> 2.5, >= 2.5.4) + net-imap + net-pop + net-smtp + rails-dom-testing (~> 2.2) + actionpack (7.1.3.4) + actionview (= 7.1.3.4) + activesupport (= 7.1.3.4) + nokogiri (>= 1.8.5) + racc + rack (>= 2.2.4) + rack-session (>= 1.0.1) + rack-test (>= 0.6.3) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + actiontext (7.1.3.4) + actionpack (= 7.1.3.4) + activerecord (= 7.1.3.4) + activestorage (= 7.1.3.4) + activesupport (= 7.1.3.4) + globalid (>= 0.6.0) + nokogiri (>= 1.8.5) + actionview (7.1.3.4) + activesupport (= 7.1.3.4) + builder (~> 3.1) + erubi (~> 1.11) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + activejob (7.1.3.4) + activesupport (= 7.1.3.4) + globalid (>= 0.3.6) + activemodel (7.1.3.4) + activesupport (= 7.1.3.4) + activerecord (7.1.3.4) + activemodel (= 7.1.3.4) + activesupport (= 7.1.3.4) + timeout (>= 0.4.0) + activestorage (7.1.3.4) + actionpack (= 7.1.3.4) + activejob (= 7.1.3.4) + activerecord (= 7.1.3.4) + activesupport (= 7.1.3.4) + marcel (~> 1.0) + activesupport (7.1.3.4) + base64 + bigdecimal + concurrent-ruby (~> 1.0, >= 1.0.2) + connection_pool (>= 2.2.5) + drb + i18n (>= 1.6, < 2) + minitest (>= 5.1) + mutex_m + tzinfo (~> 2.0) + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + appraisal (2.4.1) + bundler + rake + thor (>= 0.14.0) + ast (2.4.2) + base64 (0.2.0) + benchmark-ips (2.13.0) + benchmark-memory (0.1.2) + memory_profiler (~> 0.9) + bigdecimal (3.1.8) + binding_of_caller (1.0.1) + debug_inspector (>= 1.2.0) + builder (3.3.0) + climate_control (0.2.0) + coderay (1.1.3) + concurrent-ruby (1.3.4) + connection_pool (2.4.1) + crack (1.0.0) + bigdecimal + rexml + crass (1.0.6) + date (3.3.4) + debase-ruby_core_source (3.3.1) + debug_inspector (1.2.0) + diff-lcs (1.5.1) + docile (1.4.1) + dogstatsd-ruby (5.6.1) + drb (2.2.1) + erubi (1.13.0) + extlz4 (0.3.4) + ffi (1.16.3) + globalid (1.2.1) + activesupport (>= 6.1) + google-protobuf (3.25.4-aarch64-linux) + google-protobuf (3.25.4-x86_64-linux) + hashdiff (1.1.1) + i18n (1.14.5) + concurrent-ruby (~> 1.0) + io-console (0.7.2) + irb (1.14.0) + rdoc (>= 4.0.0) + reline (>= 0.4.2) + json (2.7.2) + json-schema (2.8.1) + addressable (>= 2.4) + libdatadog (12.0.0.1.0-aarch64-linux) + libdatadog (12.0.0.1.0-x86_64-linux) + libddwaf (1.14.0.0.0-aarch64-linux) + ffi (~> 1.0) + libddwaf (1.14.0.0.0-x86_64-linux) + ffi (~> 1.0) + loofah (2.22.0) + crass (~> 1.0.2) + nokogiri (>= 1.12.0) + mail (2.8.1) + mini_mime (>= 0.1.1) + net-imap + net-pop + net-smtp + marcel (1.0.4) + memory_profiler (0.9.14) + method_source (1.1.0) + mini_mime (1.1.5) + minitest (5.25.1) + msgpack (1.7.2) + mutex_m (0.2.0) + net-imap (0.4.14) + date + net-protocol + net-pop (0.1.2) + net-protocol + net-protocol (0.2.2) + timeout + net-smtp (0.5.0) + net-protocol + nio4r (2.7.3) + nokogiri (1.16.7-aarch64-linux) + racc (~> 1.4) + nokogiri (1.16.7-x86_64-linux) + racc (~> 1.4) + os (1.1.4) + parallel (1.26.3) + parser (3.3.4.2) + ast (~> 2.4.1) + racc + pimpmychangelog (0.1.3) + pry (0.14.2) + coderay (~> 1.1) + method_source (~> 1.0) + pry-stack_explorer (0.6.1) + binding_of_caller (~> 1.0) + pry (~> 0.13) + psych (5.1.2) + stringio + public_suffix (6.0.1) + racc (1.8.1) + rack (3.1.7) + rack-session (2.0.0) + rack (>= 3.0.0) + rack-test (2.1.0) + rack (>= 1.3) + rackup (2.1.0) + rack (>= 3) + webrick (~> 1.8) + rails (7.1.3.4) + actioncable (= 7.1.3.4) + actionmailbox (= 7.1.3.4) + actionmailer (= 7.1.3.4) + actionpack (= 7.1.3.4) + actiontext (= 7.1.3.4) + actionview (= 7.1.3.4) + activejob (= 7.1.3.4) + activemodel (= 7.1.3.4) + activerecord (= 7.1.3.4) + activestorage (= 7.1.3.4) + activesupport (= 7.1.3.4) + bundler (>= 1.15.0) + railties (= 7.1.3.4) + rails-dom-testing (2.2.0) + activesupport (>= 5.0.0) + minitest + nokogiri (>= 1.6) + rails-html-sanitizer (1.6.0) + loofah (~> 2.21) + nokogiri (~> 1.14) + railties (7.1.3.4) + actionpack (= 7.1.3.4) + activesupport (= 7.1.3.4) + irb + rackup (>= 1.0.0) + rake (>= 12.2) + thor (~> 1.0, >= 1.2.2) + zeitwerk (~> 2.6) + rainbow (3.1.1) + rake (13.2.1) + rake-compiler (1.2.7) + rake + rdoc (6.7.0) + psych (>= 4.0.0) + regexp_parser (2.9.2) + reline (0.5.9) + io-console (~> 0.5) + rexml (3.3.6) + strscan + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-collection_matchers (1.2.1) + rspec-expectations (>= 2.99.0.beta1) + rspec-core (3.13.0) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.2) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.1) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-support (3.13.1) + rspec-wait (0.0.10) + rspec (>= 3.0) + rspec_junit_formatter (0.6.0) + rspec-core (>= 2, < 4, != 2.12.0) + rubocop (1.50.2) + json (~> 2.3) + parallel (~> 1.10) + parser (>= 3.2.0.0) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 1.8, < 3.0) + rexml (>= 3.2.5, < 4.0) + rubocop-ast (>= 1.28.0, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 3.0) + rubocop-ast (1.32.1) + parser (>= 3.3.1.0) + rubocop-capybara (2.21.0) + rubocop (~> 1.41) + rubocop-packaging (0.5.2) + rubocop (>= 1.33, < 2.0) + rubocop-performance (1.21.1) + rubocop (>= 1.48.1, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) + rubocop-rspec (2.20.0) + rubocop (~> 1.33) + rubocop-capybara (~> 2.17) + ruby-progressbar (1.13.0) + simplecov-cobertura (2.1.0) + rexml + simplecov (~> 0.19) + simplecov-html (0.12.3) + simplecov_json_formatter (0.1.4) + stringio (3.1.1) + strscan (3.1.0) + thor (1.3.1) + timeout (0.4.1) + tzinfo (2.0.6) + concurrent-ruby (~> 1.0) + unicode-display_width (2.5.0) + warning (1.4.0) + webmock (3.23.1) + addressable (>= 2.8.0) + crack (>= 0.3.2) + hashdiff (>= 0.4.0, < 2.0.0) + webrick (1.8.1) + websocket-driver (0.7.6) + websocket-extensions (>= 0.1.0) + websocket-extensions (0.1.5) + yard (0.9.36) + zeitwerk (2.6.17) + +PLATFORMS + aarch64-linux + x86_64-linux + +DEPENDENCIES + appraisal (~> 2.4.0) + benchmark-ips (~> 2.8) + benchmark-memory (< 0.2) + builder + climate_control (~> 0.2.0) + concurrent-ruby + datadog! + dogstatsd-ruby (>= 3.3.0, != 5.1.0, != 5.0.1, != 5.0.0) + extlz4 (~> 0.3, >= 0.3.3) + ffi (~> 1.16.3) + google-protobuf (~> 3.0, != 3.7.1, != 3.7.0) + json-schema (< 3) + memory_profiler (~> 0.9) + os (~> 1.1) + pimpmychangelog (>= 0.1.2) + pry + pry-stack_explorer + rails (~> 7.1.0) + rake (>= 10.5) + rake-compiler (~> 1.1, >= 1.1.1) + rexml (>= 3.2.7) + rspec (~> 3.12) + rspec-collection_matchers (~> 1.1) + rspec-wait (~> 0) + rspec_junit_formatter (>= 0.5.1) + rubocop (~> 1.50.0) + rubocop-packaging (~> 0.5.2) + rubocop-performance (~> 1.9) + rubocop-rspec (~> 2.20, < 2.21) + simplecov! + simplecov-cobertura (~> 2.1.0) + warning (~> 1) + webmock (>= 3.10.0) + webrick (>= 1.7.0) + yard (~> 0.9) + +BUNDLED WITH + 2.3.26 diff --git a/gemfiles/ruby_3.3_stripe_min.gemfile b/gemfiles/ruby_3.3_stripe_min.gemfile new file mode 100644 index 00000000000..7bfa9ebd6c0 --- /dev/null +++ b/gemfiles/ruby_3.3_stripe_min.gemfile @@ -0,0 +1,47 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "appraisal", "~> 2.4.0" +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "builder" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "extlz4", "~> 0.3", ">= 0.3.3" +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.12" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "simplecov", git: "https://github.com/DataDog/simplecov", ref: "3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "rexml", ">= 3.2.7" +gem "webrick", ">= 1.7.0" +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 "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "ffi", "~> 1.16.3", require: false +gem "stripe", "= 5.15.0" + +group :check do + +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.3_stripe_min.gemfile.lock b/gemfiles/ruby_3.3_stripe_min.gemfile.lock new file mode 100644 index 00000000000..1094a376640 --- /dev/null +++ b/gemfiles/ruby_3.3_stripe_min.gemfile.lock @@ -0,0 +1,183 @@ +GIT + remote: https://github.com/DataDog/simplecov + revision: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + ref: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + specs: + simplecov (0.21.2) + docile (~> 1.1) + simplecov-html (~> 0.11) + simplecov_json_formatter (~> 0.1) + +PATH + remote: .. + specs: + datadog (2.3.0) + debase-ruby_core_source (= 3.3.1) + libdatadog (~> 12.0.0.1.0) + libddwaf (~> 1.14.0.0.0) + msgpack + +GEM + remote: https://rubygems.org/ + specs: + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + appraisal (2.4.1) + bundler + rake + thor (>= 0.14.0) + ast (2.4.2) + benchmark-ips (2.14.0) + benchmark-memory (0.1.2) + memory_profiler (~> 0.9) + bigdecimal (3.1.8) + binding_of_caller (1.0.1) + debug_inspector (>= 1.2.0) + builder (3.3.0) + climate_control (0.2.0) + coderay (1.1.3) + concurrent-ruby (1.3.4) + crack (1.0.0) + bigdecimal + rexml + debase-ruby_core_source (3.3.1) + debug_inspector (1.2.0) + diff-lcs (1.5.1) + docile (1.4.1) + dogstatsd-ruby (5.6.1) + extlz4 (0.3.4) + ffi (1.16.3) + google-protobuf (3.25.5-aarch64-linux) + google-protobuf (3.25.5-x86_64-linux) + hashdiff (1.1.1) + json (2.7.2) + json-schema (2.8.1) + addressable (>= 2.4) + libdatadog (12.0.0.1.0-aarch64-linux) + libdatadog (12.0.0.1.0-x86_64-linux) + libddwaf (1.14.0.0.0-aarch64-linux) + ffi (~> 1.0) + libddwaf (1.14.0.0.0-x86_64-linux) + ffi (~> 1.0) + memory_profiler (0.9.14) + method_source (1.1.0) + msgpack (1.7.2) + os (1.1.4) + parallel (1.26.3) + parser (3.3.5.0) + ast (~> 2.4.1) + racc + pimpmychangelog (0.1.3) + pry (0.14.2) + coderay (~> 1.1) + method_source (~> 1.0) + pry-stack_explorer (0.6.1) + binding_of_caller (~> 1.0) + pry (~> 0.13) + public_suffix (6.0.1) + racc (1.8.1) + rainbow (3.1.1) + rake (13.2.1) + rake-compiler (1.2.7) + rake + regexp_parser (2.9.2) + rexml (3.3.7) + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-collection_matchers (1.2.1) + rspec-expectations (>= 2.99.0.beta1) + rspec-core (3.13.1) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.3) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.1) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-support (3.13.1) + rspec-wait (0.0.10) + rspec (>= 3.0) + rspec_junit_formatter (0.6.0) + rspec-core (>= 2, < 4, != 2.12.0) + rubocop (1.50.2) + json (~> 2.3) + parallel (~> 1.10) + parser (>= 3.2.0.0) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 1.8, < 3.0) + rexml (>= 3.2.5, < 4.0) + rubocop-ast (>= 1.28.0, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 3.0) + rubocop-ast (1.32.3) + parser (>= 3.3.1.0) + rubocop-capybara (2.21.0) + rubocop (~> 1.41) + rubocop-packaging (0.5.2) + rubocop (>= 1.33, < 2.0) + rubocop-performance (1.22.1) + rubocop (>= 1.48.1, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) + rubocop-rspec (2.20.0) + rubocop (~> 1.33) + rubocop-capybara (~> 2.17) + ruby-progressbar (1.13.0) + simplecov-cobertura (2.1.0) + rexml + simplecov (~> 0.19) + simplecov-html (0.13.1) + simplecov_json_formatter (0.1.4) + stripe (5.15.0) + thor (1.3.2) + unicode-display_width (2.6.0) + warning (1.4.0) + webmock (3.23.1) + addressable (>= 2.8.0) + crack (>= 0.3.2) + hashdiff (>= 0.4.0, < 2.0.0) + webrick (1.8.1) + +PLATFORMS + aarch64-linux + x86_64-linux + +DEPENDENCIES + appraisal (~> 2.4.0) + benchmark-ips (~> 2.8) + benchmark-memory (< 0.2) + builder + climate_control (~> 0.2.0) + concurrent-ruby + datadog! + dogstatsd-ruby (>= 3.3.0, != 5.1.0, != 5.0.1, != 5.0.0) + extlz4 (~> 0.3, >= 0.3.3) + ffi (~> 1.16.3) + google-protobuf (~> 3.0, != 3.7.1, != 3.7.0) + json-schema (< 3) + memory_profiler (~> 0.9) + os (~> 1.1) + pimpmychangelog (>= 0.1.2) + pry + pry-stack_explorer + rake (>= 10.5) + rake-compiler (~> 1.1, >= 1.1.1) + rexml (>= 3.2.7) + rspec (~> 3.12) + rspec-collection_matchers (~> 1.1) + rspec-wait (~> 0) + rspec_junit_formatter (>= 0.5.1) + rubocop (~> 1.50.0) + rubocop-packaging (~> 0.5.2) + rubocop-performance (~> 1.9) + rubocop-rspec (~> 2.20, < 2.21) + simplecov! + simplecov-cobertura (~> 2.1.0) + stripe (= 5.15.0) + warning (~> 1) + webmock (>= 3.10.0) + webrick (>= 1.7.0) + +BUNDLED WITH + 2.3.26 diff --git a/gemfiles/ruby_3.4_rails7.gemfile b/gemfiles/ruby_3.4_rails7.gemfile new file mode 100644 index 00000000000..42fe17bfc2c --- /dev/null +++ b/gemfiles/ruby_3.4_rails7.gemfile @@ -0,0 +1,48 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "appraisal", "~> 2.4.0" +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "builder" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "extlz4", "~> 0.3", ">= 0.3.3" +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.12" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "simplecov", git: "https://github.com/DataDog/simplecov", ref: "3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "rexml", ">= 3.2.7" +gem "webrick", git: "https://github.com/ruby/webrick.git", ref: "0c600e169bd4ae267cb5eeb6197277c848323bbe" +gem "yard", "~> 0.9" +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 "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "ffi", "~> 1.16.3", require: false +gem "rails", "~> 7.0.0" + +group :check do + gem "ruby_memcheck", ">= 3" +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.4_rails7.gemfile.lock b/gemfiles/ruby_3.4_rails7.gemfile.lock new file mode 100644 index 00000000000..0635a6f755b --- /dev/null +++ b/gemfiles/ruby_3.4_rails7.gemfile.lock @@ -0,0 +1,332 @@ +GIT + remote: https://github.com/DataDog/simplecov + revision: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + ref: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + specs: + simplecov (0.21.2) + docile (~> 1.1) + simplecov-html (~> 0.11) + simplecov_json_formatter (~> 0.1) + +GIT + remote: https://github.com/ruby/webrick.git + revision: 0c600e169bd4ae267cb5eeb6197277c848323bbe + ref: 0c600e169bd4ae267cb5eeb6197277c848323bbe + specs: + webrick (1.8.1) + +PATH + remote: .. + specs: + datadog (2.3.0) + debase-ruby_core_source (= 3.3.1) + libdatadog (~> 12.0.0.1.0) + libddwaf (~> 1.14.0.0.0) + msgpack + +GEM + remote: https://rubygems.org/ + specs: + actioncable (7.0.8.4) + actionpack (= 7.0.8.4) + activesupport (= 7.0.8.4) + nio4r (~> 2.0) + websocket-driver (>= 0.6.1) + actionmailbox (7.0.8.4) + actionpack (= 7.0.8.4) + activejob (= 7.0.8.4) + activerecord (= 7.0.8.4) + activestorage (= 7.0.8.4) + activesupport (= 7.0.8.4) + mail (>= 2.7.1) + net-imap + net-pop + net-smtp + actionmailer (7.0.8.4) + actionpack (= 7.0.8.4) + actionview (= 7.0.8.4) + activejob (= 7.0.8.4) + activesupport (= 7.0.8.4) + mail (~> 2.5, >= 2.5.4) + net-imap + net-pop + net-smtp + rails-dom-testing (~> 2.0) + actionpack (7.0.8.4) + actionview (= 7.0.8.4) + activesupport (= 7.0.8.4) + rack (~> 2.0, >= 2.2.4) + rack-test (>= 0.6.3) + rails-dom-testing (~> 2.0) + rails-html-sanitizer (~> 1.0, >= 1.2.0) + actiontext (7.0.8.4) + actionpack (= 7.0.8.4) + activerecord (= 7.0.8.4) + activestorage (= 7.0.8.4) + activesupport (= 7.0.8.4) + globalid (>= 0.6.0) + nokogiri (>= 1.8.5) + actionview (7.0.8.4) + activesupport (= 7.0.8.4) + builder (~> 3.1) + erubi (~> 1.4) + rails-dom-testing (~> 2.0) + rails-html-sanitizer (~> 1.1, >= 1.2.0) + activejob (7.0.8.4) + activesupport (= 7.0.8.4) + globalid (>= 0.3.6) + activemodel (7.0.8.4) + activesupport (= 7.0.8.4) + activerecord (7.0.8.4) + activemodel (= 7.0.8.4) + activesupport (= 7.0.8.4) + activestorage (7.0.8.4) + actionpack (= 7.0.8.4) + activejob (= 7.0.8.4) + activerecord (= 7.0.8.4) + activesupport (= 7.0.8.4) + marcel (~> 1.0) + mini_mime (>= 1.1.0) + activesupport (7.0.8.4) + concurrent-ruby (~> 1.0, >= 1.0.2) + i18n (>= 1.6, < 2) + minitest (>= 5.1) + tzinfo (~> 2.0) + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + appraisal (2.4.1) + bundler + rake + thor (>= 0.14.0) + ast (2.4.2) + benchmark-ips (2.13.0) + benchmark-memory (0.1.2) + memory_profiler (~> 0.9) + bigdecimal (3.1.8) + binding_of_caller (1.0.1) + debug_inspector (>= 1.2.0) + builder (3.3.0) + climate_control (0.2.0) + coderay (1.1.3) + concurrent-ruby (1.3.4) + crack (1.0.0) + bigdecimal + rexml + crass (1.0.6) + date (3.3.4) + debase-ruby_core_source (3.3.1) + debug_inspector (1.2.0) + diff-lcs (1.5.1) + docile (1.4.1) + dogstatsd-ruby (5.6.1) + erubi (1.13.0) + extlz4 (0.3.4) + ffi (1.16.3) + globalid (1.2.1) + activesupport (>= 6.1) + google-protobuf (3.25.4) + hashdiff (1.1.1) + i18n (1.14.5) + concurrent-ruby (~> 1.0) + json (2.7.2) + json-schema (2.8.1) + addressable (>= 2.4) + libdatadog (12.0.0.1.0) + libdatadog (12.0.0.1.0-aarch64-linux) + libdatadog (12.0.0.1.0-x86_64-linux) + libddwaf (1.14.0.0.0) + ffi (~> 1.0) + libddwaf (1.14.0.0.0-aarch64-linux) + ffi (~> 1.0) + libddwaf (1.14.0.0.0-x86_64-linux) + ffi (~> 1.0) + loofah (2.22.0) + crass (~> 1.0.2) + nokogiri (>= 1.12.0) + mail (2.8.1) + mini_mime (>= 0.1.1) + net-imap + net-pop + net-smtp + marcel (1.0.4) + memory_profiler (0.9.14) + method_source (1.1.0) + mini_mime (1.1.5) + mini_portile2 (2.8.7) + minitest (5.25.1) + msgpack (1.7.2) + net-imap (0.4.14) + date + net-protocol + net-pop (0.1.2) + net-protocol + net-protocol (0.2.2) + timeout + net-smtp (0.5.0) + nio4r (2.7.3) + nokogiri (1.16.7) + mini_portile2 (~> 2.8.2) + racc (~> 1.4) + os (1.1.4) + parallel (1.26.3) + parser (3.3.4.2) + ast (~> 2.4.1) + racc + pimpmychangelog (0.1.3) + pry (0.14.2) + coderay (~> 1.1) + method_source (~> 1.0) + pry-stack_explorer (0.6.1) + binding_of_caller (~> 1.0) + pry (~> 0.13) + public_suffix (6.0.1) + racc (1.8.1) + rack (2.2.9) + rack-test (2.1.0) + rack (>= 1.3) + rails (7.0.8.4) + actioncable (= 7.0.8.4) + actionmailbox (= 7.0.8.4) + actionmailer (= 7.0.8.4) + actionpack (= 7.0.8.4) + actiontext (= 7.0.8.4) + actionview (= 7.0.8.4) + activejob (= 7.0.8.4) + activemodel (= 7.0.8.4) + activerecord (= 7.0.8.4) + activestorage (= 7.0.8.4) + activesupport (= 7.0.8.4) + bundler (>= 1.15.0) + railties (= 7.0.8.4) + rails-dom-testing (2.2.0) + activesupport (>= 5.0.0) + minitest + nokogiri (>= 1.6) + rails-html-sanitizer (1.6.0) + loofah (~> 2.21) + nokogiri (~> 1.14) + railties (7.0.8.4) + actionpack (= 7.0.8.4) + activesupport (= 7.0.8.4) + method_source + rake (>= 12.2) + thor (~> 1.0) + zeitwerk (~> 2.5) + rainbow (3.1.1) + rake (13.2.1) + rake-compiler (1.2.7) + rake + regexp_parser (2.9.2) + rexml (3.3.6) + strscan + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-collection_matchers (1.2.1) + rspec-expectations (>= 2.99.0.beta1) + rspec-core (3.13.0) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.2) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.1) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-support (3.13.1) + rspec-wait (0.0.10) + rspec (>= 3.0) + rspec_junit_formatter (0.6.0) + rspec-core (>= 2, < 4, != 2.12.0) + rubocop (1.50.2) + json (~> 2.3) + parallel (~> 1.10) + parser (>= 3.2.0.0) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 1.8, < 3.0) + rexml (>= 3.2.5, < 4.0) + rubocop-ast (>= 1.28.0, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 3.0) + rubocop-ast (1.32.1) + parser (>= 3.3.1.0) + rubocop-capybara (2.21.0) + rubocop (~> 1.41) + rubocop-packaging (0.5.2) + rubocop (>= 1.33, < 2.0) + rubocop-performance (1.21.1) + rubocop (>= 1.48.1, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) + rubocop-rspec (2.20.0) + rubocop (~> 1.33) + rubocop-capybara (~> 2.17) + ruby-progressbar (1.13.0) + ruby_memcheck (3.0.0) + nokogiri + simplecov-cobertura (2.1.0) + rexml + simplecov (~> 0.19) + simplecov-html (0.12.3) + simplecov_json_formatter (0.1.4) + strscan (3.1.1) + thor (1.3.1) + timeout (0.4.1) + tzinfo (2.0.6) + concurrent-ruby (~> 1.0) + unicode-display_width (2.5.0) + warning (1.4.0) + webmock (3.23.1) + addressable (>= 2.8.0) + crack (>= 0.3.2) + hashdiff (>= 0.4.0, < 2.0.0) + websocket-driver (0.7.6) + websocket-extensions (>= 0.1.0) + websocket-extensions (0.1.5) + yard (0.9.36) + zeitwerk (2.6.17) + +PLATFORMS + aarch64-linux + ruby + x86_64-linux + +DEPENDENCIES + appraisal (~> 2.4.0) + benchmark-ips (~> 2.8) + benchmark-memory (< 0.2) + builder + climate_control (~> 0.2.0) + concurrent-ruby + datadog! + dogstatsd-ruby (>= 3.3.0, != 5.1.0, != 5.0.1, != 5.0.0) + extlz4 (~> 0.3, >= 0.3.3) + ffi (~> 1.16.3) + google-protobuf (~> 3.0, != 3.7.1, != 3.7.0) + json-schema (< 3) + memory_profiler (~> 0.9) + os (~> 1.1) + pimpmychangelog (>= 0.1.2) + pry + pry-stack_explorer + rails (~> 7.0.0) + rake (>= 10.5) + rake-compiler (~> 1.1, >= 1.1.1) + rexml (>= 3.2.7) + rspec (~> 3.12) + rspec-collection_matchers (~> 1.1) + rspec-wait (~> 0) + rspec_junit_formatter (>= 0.5.1) + rubocop (~> 1.50.0) + rubocop-packaging (~> 0.5.2) + rubocop-performance (~> 1.9) + rubocop-rspec (~> 2.20, < 2.21) + ruby_memcheck (>= 3) + simplecov! + simplecov-cobertura (~> 2.1.0) + warning (~> 1) + webmock (>= 3.10.0) + webrick! + yard (~> 0.9) + +BUNDLED WITH + 2.3.26 diff --git a/gemfiles/ruby_3.4_rails71.gemfile b/gemfiles/ruby_3.4_rails71.gemfile new file mode 100644 index 00000000000..c197c00841b --- /dev/null +++ b/gemfiles/ruby_3.4_rails71.gemfile @@ -0,0 +1,48 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "appraisal", "~> 2.4.0" +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "builder" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "extlz4", "~> 0.3", ">= 0.3.3" +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.12" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "simplecov", git: "https://github.com/DataDog/simplecov", ref: "3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "rexml", ">= 3.2.7" +gem "webrick", git: "https://github.com/ruby/webrick.git", ref: "0c600e169bd4ae267cb5eeb6197277c848323bbe" +gem "yard", "~> 0.9" +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 "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "ffi", "~> 1.16.3", require: false +gem "rails", "~> 7.1.0" + +group :check do + gem "ruby_memcheck", ">= 3" +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.4_rails71.gemfile.lock b/gemfiles/ruby_3.4_rails71.gemfile.lock new file mode 100644 index 00000000000..72ba81dc60a --- /dev/null +++ b/gemfiles/ruby_3.4_rails71.gemfile.lock @@ -0,0 +1,362 @@ +GIT + remote: https://github.com/DataDog/simplecov + revision: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + ref: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + specs: + simplecov (0.21.2) + docile (~> 1.1) + simplecov-html (~> 0.11) + simplecov_json_formatter (~> 0.1) + +GIT + remote: https://github.com/ruby/webrick.git + revision: 0c600e169bd4ae267cb5eeb6197277c848323bbe + ref: 0c600e169bd4ae267cb5eeb6197277c848323bbe + specs: + webrick (1.8.1) + +PATH + remote: .. + specs: + datadog (2.3.0) + debase-ruby_core_source (= 3.3.1) + libdatadog (~> 12.0.0.1.0) + libddwaf (~> 1.14.0.0.0) + msgpack + +GEM + remote: https://rubygems.org/ + specs: + actioncable (7.1.3.4) + actionpack (= 7.1.3.4) + activesupport (= 7.1.3.4) + nio4r (~> 2.0) + websocket-driver (>= 0.6.1) + zeitwerk (~> 2.6) + actionmailbox (7.1.3.4) + actionpack (= 7.1.3.4) + activejob (= 7.1.3.4) + activerecord (= 7.1.3.4) + activestorage (= 7.1.3.4) + activesupport (= 7.1.3.4) + mail (>= 2.7.1) + net-imap + net-pop + net-smtp + actionmailer (7.1.3.4) + actionpack (= 7.1.3.4) + actionview (= 7.1.3.4) + activejob (= 7.1.3.4) + activesupport (= 7.1.3.4) + mail (~> 2.5, >= 2.5.4) + net-imap + net-pop + net-smtp + rails-dom-testing (~> 2.2) + actionpack (7.1.3.4) + actionview (= 7.1.3.4) + activesupport (= 7.1.3.4) + nokogiri (>= 1.8.5) + racc + rack (>= 2.2.4) + rack-session (>= 1.0.1) + rack-test (>= 0.6.3) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + actiontext (7.1.3.4) + actionpack (= 7.1.3.4) + activerecord (= 7.1.3.4) + activestorage (= 7.1.3.4) + activesupport (= 7.1.3.4) + globalid (>= 0.6.0) + nokogiri (>= 1.8.5) + actionview (7.1.3.4) + activesupport (= 7.1.3.4) + builder (~> 3.1) + erubi (~> 1.11) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + activejob (7.1.3.4) + activesupport (= 7.1.3.4) + globalid (>= 0.3.6) + activemodel (7.1.3.4) + activesupport (= 7.1.3.4) + activerecord (7.1.3.4) + activemodel (= 7.1.3.4) + activesupport (= 7.1.3.4) + timeout (>= 0.4.0) + activestorage (7.1.3.4) + actionpack (= 7.1.3.4) + activejob (= 7.1.3.4) + activerecord (= 7.1.3.4) + activesupport (= 7.1.3.4) + marcel (~> 1.0) + activesupport (7.1.3.4) + base64 + bigdecimal + concurrent-ruby (~> 1.0, >= 1.0.2) + connection_pool (>= 2.2.5) + drb + i18n (>= 1.6, < 2) + minitest (>= 5.1) + mutex_m + tzinfo (~> 2.0) + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + appraisal (2.4.1) + bundler + rake + thor (>= 0.14.0) + ast (2.4.2) + base64 (0.2.0) + benchmark-ips (2.13.0) + benchmark-memory (0.1.2) + memory_profiler (~> 0.9) + bigdecimal (3.1.8) + binding_of_caller (1.0.1) + debug_inspector (>= 1.2.0) + builder (3.3.0) + climate_control (0.2.0) + coderay (1.1.3) + concurrent-ruby (1.3.4) + connection_pool (2.4.1) + crack (1.0.0) + bigdecimal + rexml + crass (1.0.6) + date (3.3.4) + debase-ruby_core_source (3.3.1) + debug_inspector (1.2.0) + diff-lcs (1.5.1) + docile (1.4.1) + dogstatsd-ruby (5.6.1) + drb (2.2.1) + erubi (1.13.0) + extlz4 (0.3.4) + ffi (1.16.3) + globalid (1.2.1) + activesupport (>= 6.1) + google-protobuf (3.25.4) + hashdiff (1.1.1) + i18n (1.14.5) + concurrent-ruby (~> 1.0) + io-console (0.7.2) + irb (1.14.0) + rdoc (>= 4.0.0) + reline (>= 0.4.2) + json (2.7.2) + json-schema (2.8.1) + addressable (>= 2.4) + libdatadog (12.0.0.1.0) + libdatadog (12.0.0.1.0-aarch64-linux) + libdatadog (12.0.0.1.0-x86_64-linux) + libddwaf (1.14.0.0.0) + ffi (~> 1.0) + libddwaf (1.14.0.0.0-aarch64-linux) + ffi (~> 1.0) + libddwaf (1.14.0.0.0-x86_64-linux) + ffi (~> 1.0) + loofah (2.22.0) + crass (~> 1.0.2) + nokogiri (>= 1.12.0) + mail (2.8.1) + mini_mime (>= 0.1.1) + net-imap + net-pop + net-smtp + marcel (1.0.4) + memory_profiler (0.9.14) + method_source (1.1.0) + mini_mime (1.1.5) + mini_portile2 (2.8.7) + minitest (5.25.1) + msgpack (1.7.2) + mutex_m (0.2.0) + net-imap (0.4.14) + date + net-protocol + net-pop (0.1.2) + net-protocol + net-protocol (0.2.2) + timeout + net-smtp (0.5.0) + nio4r (2.7.3) + nokogiri (1.16.7) + mini_portile2 (~> 2.8.2) + racc (~> 1.4) + os (1.1.4) + parallel (1.26.3) + parser (3.3.4.2) + ast (~> 2.4.1) + racc + pimpmychangelog (0.1.3) + pry (0.14.2) + coderay (~> 1.1) + method_source (~> 1.0) + pry-stack_explorer (0.6.1) + binding_of_caller (~> 1.0) + pry (~> 0.13) + psych (5.1.2) + stringio + public_suffix (6.0.1) + racc (1.8.1) + rack (3.1.7) + rack-session (2.0.0) + rack (>= 3.0.0) + rack-test (2.1.0) + rack (>= 1.3) + rackup (2.1.0) + rack (>= 3) + webrick (~> 1.8) + rails (7.1.3.4) + actioncable (= 7.1.3.4) + actionmailbox (= 7.1.3.4) + actionmailer (= 7.1.3.4) + actionpack (= 7.1.3.4) + actiontext (= 7.1.3.4) + actionview (= 7.1.3.4) + activejob (= 7.1.3.4) + activemodel (= 7.1.3.4) + activerecord (= 7.1.3.4) + activestorage (= 7.1.3.4) + activesupport (= 7.1.3.4) + bundler (>= 1.15.0) + railties (= 7.1.3.4) + rails-dom-testing (2.2.0) + activesupport (>= 5.0.0) + minitest + nokogiri (>= 1.6) + rails-html-sanitizer (1.6.0) + loofah (~> 2.21) + nokogiri (~> 1.14) + railties (7.1.3.4) + actionpack (= 7.1.3.4) + activesupport (= 7.1.3.4) + irb + rackup (>= 1.0.0) + rake (>= 12.2) + thor (~> 1.0, >= 1.2.2) + zeitwerk (~> 2.6) + rainbow (3.1.1) + rake (13.2.1) + rake-compiler (1.2.7) + rake + rdoc (6.7.0) + psych (>= 4.0.0) + regexp_parser (2.9.2) + reline (0.5.9) + io-console (~> 0.5) + rexml (3.3.6) + strscan + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-collection_matchers (1.2.1) + rspec-expectations (>= 2.99.0.beta1) + rspec-core (3.13.0) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.2) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.1) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-support (3.13.1) + rspec-wait (0.0.10) + rspec (>= 3.0) + rspec_junit_formatter (0.6.0) + rspec-core (>= 2, < 4, != 2.12.0) + rubocop (1.50.2) + json (~> 2.3) + parallel (~> 1.10) + parser (>= 3.2.0.0) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 1.8, < 3.0) + rexml (>= 3.2.5, < 4.0) + rubocop-ast (>= 1.28.0, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 3.0) + rubocop-ast (1.32.1) + parser (>= 3.3.1.0) + rubocop-capybara (2.21.0) + rubocop (~> 1.41) + rubocop-packaging (0.5.2) + rubocop (>= 1.33, < 2.0) + rubocop-performance (1.21.1) + rubocop (>= 1.48.1, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) + rubocop-rspec (2.20.0) + rubocop (~> 1.33) + rubocop-capybara (~> 2.17) + ruby-progressbar (1.13.0) + ruby_memcheck (3.0.0) + nokogiri + simplecov-cobertura (2.1.0) + rexml + simplecov (~> 0.19) + simplecov-html (0.12.3) + simplecov_json_formatter (0.1.4) + stringio (3.1.1) + strscan (3.1.1) + thor (1.3.1) + timeout (0.4.1) + tzinfo (2.0.6) + concurrent-ruby (~> 1.0) + unicode-display_width (2.5.0) + warning (1.4.0) + webmock (3.23.1) + addressable (>= 2.8.0) + crack (>= 0.3.2) + hashdiff (>= 0.4.0, < 2.0.0) + websocket-driver (0.7.6) + websocket-extensions (>= 0.1.0) + websocket-extensions (0.1.5) + yard (0.9.36) + zeitwerk (2.6.17) + +PLATFORMS + aarch64-linux + ruby + x86_64-linux + +DEPENDENCIES + appraisal (~> 2.4.0) + benchmark-ips (~> 2.8) + benchmark-memory (< 0.2) + builder + climate_control (~> 0.2.0) + concurrent-ruby + datadog! + dogstatsd-ruby (>= 3.3.0, != 5.1.0, != 5.0.1, != 5.0.0) + extlz4 (~> 0.3, >= 0.3.3) + ffi (~> 1.16.3) + google-protobuf (~> 3.0, != 3.7.1, != 3.7.0) + json-schema (< 3) + memory_profiler (~> 0.9) + os (~> 1.1) + pimpmychangelog (>= 0.1.2) + pry + pry-stack_explorer + rails (~> 7.1.0) + rake (>= 10.5) + rake-compiler (~> 1.1, >= 1.1.1) + rexml (>= 3.2.7) + rspec (~> 3.12) + rspec-collection_matchers (~> 1.1) + rspec-wait (~> 0) + rspec_junit_formatter (>= 0.5.1) + rubocop (~> 1.50.0) + rubocop-packaging (~> 0.5.2) + rubocop-performance (~> 1.9) + rubocop-rspec (~> 2.20, < 2.21) + ruby_memcheck (>= 3) + simplecov! + simplecov-cobertura (~> 2.1.0) + warning (~> 1) + webmock (>= 3.10.0) + webrick! + yard (~> 0.9) + +BUNDLED WITH + 2.3.26 diff --git a/gemfiles/ruby_3.4_stripe_min.gemfile b/gemfiles/ruby_3.4_stripe_min.gemfile new file mode 100644 index 00000000000..b7991e779e6 --- /dev/null +++ b/gemfiles/ruby_3.4_stripe_min.gemfile @@ -0,0 +1,47 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "appraisal", "~> 2.4.0" +gem "benchmark-ips", "~> 2.8" +gem "benchmark-memory", "< 0.2" +gem "builder" +gem "climate_control", "~> 0.2.0" +gem "concurrent-ruby" +gem "extlz4", "~> 0.3", ">= 0.3.3" +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.12" +gem "rspec-collection_matchers", "~> 1.1" +gem "rspec-wait", "~> 0" +gem "rspec_junit_formatter", ">= 0.5.1" +gem "simplecov", git: "https://github.com/DataDog/simplecov", ref: "3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db" +gem "simplecov-cobertura", "~> 2.1.0" +gem "warning", "~> 1" +gem "webmock", ">= 3.10.0" +gem "rexml", ">= 3.2.7" +gem "webrick", git: "https://github.com/ruby/webrick.git", ref: "0c600e169bd4ae267cb5eeb6197277c848323bbe" +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 "dogstatsd-ruby", ">= 3.3.0", "!= 5.0.0", "!= 5.0.1", "!= 5.1.0" +gem "google-protobuf", ["~> 3.0", "!= 3.7.0", "!= 3.7.1"] +gem "ffi", "~> 1.16.3", require: false +gem "stripe", "= 5.15.0" + +group :check do + gem "ruby_memcheck", ">= 3" +end + +group :dev do + +end + +gemspec path: "../" diff --git a/gemfiles/ruby_3.4_stripe_min.gemfile.lock b/gemfiles/ruby_3.4_stripe_min.gemfile.lock new file mode 100644 index 00000000000..7a420afc101 --- /dev/null +++ b/gemfiles/ruby_3.4_stripe_min.gemfile.lock @@ -0,0 +1,195 @@ +GIT + remote: https://github.com/DataDog/simplecov + revision: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + ref: 3bb6b7ee58bf4b1954ca205f50dd44d6f41c57db + specs: + simplecov (0.21.2) + docile (~> 1.1) + simplecov-html (~> 0.11) + simplecov_json_formatter (~> 0.1) + +GIT + remote: https://github.com/ruby/webrick.git + revision: 0c600e169bd4ae267cb5eeb6197277c848323bbe + ref: 0c600e169bd4ae267cb5eeb6197277c848323bbe + specs: + webrick (1.8.1) + +PATH + remote: .. + specs: + datadog (2.3.0) + debase-ruby_core_source (= 3.3.1) + libdatadog (~> 12.0.0.1.0) + libddwaf (~> 1.14.0.0.0) + msgpack + +GEM + remote: https://rubygems.org/ + specs: + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + appraisal (2.4.1) + bundler + rake + thor (>= 0.14.0) + ast (2.4.2) + benchmark-ips (2.14.0) + benchmark-memory (0.1.2) + memory_profiler (~> 0.9) + bigdecimal (3.1.8) + binding_of_caller (1.0.1) + debug_inspector (>= 1.2.0) + builder (3.3.0) + climate_control (0.2.0) + coderay (1.1.3) + concurrent-ruby (1.3.4) + crack (1.0.0) + bigdecimal + rexml + debase-ruby_core_source (3.3.1) + debug_inspector (1.2.0) + diff-lcs (1.5.1) + docile (1.4.1) + dogstatsd-ruby (5.6.1) + extlz4 (0.3.4) + ffi (1.16.3) + google-protobuf (3.25.5) + hashdiff (1.1.1) + json (2.7.2) + json-schema (2.8.1) + addressable (>= 2.4) + libdatadog (12.0.0.1.0-aarch64-linux) + libdatadog (12.0.0.1.0-x86_64-linux) + libddwaf (1.14.0.0.0-aarch64-linux) + ffi (~> 1.0) + libddwaf (1.14.0.0.0-x86_64-linux) + ffi (~> 1.0) + memory_profiler (0.9.14) + method_source (1.1.0) + mini_portile2 (2.8.7) + msgpack (1.7.2) + nokogiri (1.16.7) + mini_portile2 (~> 2.8.2) + racc (~> 1.4) + os (1.1.4) + parallel (1.26.3) + parser (3.3.5.0) + ast (~> 2.4.1) + racc + pimpmychangelog (0.1.3) + pry (0.14.2) + coderay (~> 1.1) + method_source (~> 1.0) + pry-stack_explorer (0.6.1) + binding_of_caller (~> 1.0) + pry (~> 0.13) + public_suffix (6.0.1) + racc (1.8.1) + rainbow (3.1.1) + rake (13.2.1) + rake-compiler (1.2.7) + rake + regexp_parser (2.9.2) + rexml (3.3.7) + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-collection_matchers (1.2.1) + rspec-expectations (>= 2.99.0.beta1) + rspec-core (3.13.1) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.3) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-mocks (3.13.1) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-support (3.13.1) + rspec-wait (0.0.10) + rspec (>= 3.0) + rspec_junit_formatter (0.6.0) + rspec-core (>= 2, < 4, != 2.12.0) + rubocop (1.50.2) + json (~> 2.3) + parallel (~> 1.10) + parser (>= 3.2.0.0) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 1.8, < 3.0) + rexml (>= 3.2.5, < 4.0) + rubocop-ast (>= 1.28.0, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 3.0) + rubocop-ast (1.32.3) + parser (>= 3.3.1.0) + rubocop-capybara (2.21.0) + rubocop (~> 1.41) + rubocop-packaging (0.5.2) + rubocop (>= 1.33, < 2.0) + rubocop-performance (1.22.1) + rubocop (>= 1.48.1, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) + rubocop-rspec (2.20.0) + rubocop (~> 1.33) + rubocop-capybara (~> 2.17) + ruby-progressbar (1.13.0) + ruby_memcheck (3.0.0) + nokogiri + simplecov-cobertura (2.1.0) + rexml + simplecov (~> 0.19) + simplecov-html (0.13.1) + simplecov_json_formatter (0.1.4) + stripe (5.15.0) + thor (1.3.2) + unicode-display_width (2.6.0) + warning (1.4.0) + webmock (3.23.1) + addressable (>= 2.8.0) + crack (>= 0.3.2) + hashdiff (>= 0.4.0, < 2.0.0) + +PLATFORMS + aarch64-linux + x86_64-linux + +DEPENDENCIES + appraisal (~> 2.4.0) + benchmark-ips (~> 2.8) + benchmark-memory (< 0.2) + builder + climate_control (~> 0.2.0) + concurrent-ruby + datadog! + dogstatsd-ruby (>= 3.3.0, != 5.1.0, != 5.0.1, != 5.0.0) + extlz4 (~> 0.3, >= 0.3.3) + ffi (~> 1.16.3) + google-protobuf (~> 3.0, != 3.7.1, != 3.7.0) + json-schema (< 3) + memory_profiler (~> 0.9) + os (~> 1.1) + pimpmychangelog (>= 0.1.2) + pry + pry-stack_explorer + rake (>= 10.5) + rake-compiler (~> 1.1, >= 1.1.1) + rexml (>= 3.2.7) + rspec (~> 3.12) + rspec-collection_matchers (~> 1.1) + rspec-wait (~> 0) + rspec_junit_formatter (>= 0.5.1) + rubocop (~> 1.50.0) + rubocop-packaging (~> 0.5.2) + rubocop-performance (~> 1.9) + rubocop-rspec (~> 2.20, < 2.21) + ruby_memcheck (>= 3) + simplecov! + simplecov-cobertura (~> 2.1.0) + stripe (= 5.15.0) + warning (~> 1) + webmock (>= 3.10.0) + webrick! + +BUNDLED WITH + 2.3.26 diff --git a/lib/datadog/di/redactor.rb b/lib/datadog/di/redactor.rb index 0c3bdb52f66..1a3fc15c73e 100644 --- a/lib/datadog/di/redactor.rb +++ b/lib/datadog/di/redactor.rb @@ -72,10 +72,13 @@ def redacted_type_names_regexp if name.start_with?("::") # :: prefix is redundant, all names are expected to be # fully-qualified. - name = name[2...name.length] + # + # Defaulting to empty string is for steep. + name = name[2...name.length] || "" end if name.end_with?("*") - name = name[0..-2] + # Defaulting to empty string is for steep. + name = name[0..-2] || "" suffix = ".*" else suffix = "" diff --git a/lib/datadog/di/serializer.rb b/lib/datadog/di/serializer.rb index 8a6a0165c22..7958302dc86 100644 --- a/lib/datadog/di/serializer.rb +++ b/lib/datadog/di/serializer.rb @@ -60,21 +60,23 @@ def serialize_args(args, kwargs) # of executed code. def serialize_vars(vars) vars.each_with_object({}) do |(k, v), agg| - agg[k] = serialize_value(k, v) + agg[k] = serialize_value(v, name: k) end end - private - # Serializes a single named value. # - # The name is necessary to perform sensitive data redaction. + # The name is needed to perform sensitive data redaction. + # + # In some cases, the value being serialized does not have a name + # (for example, it is the return value of a method). + # In this case +name+ can be nil. # # Returns a data structure comprised of only values of basic types # (integers, strings, arrays, hashes). # # Respects string length, collection size and traversal depth limits. - def serialize_value(name, value, depth: settings.dynamic_instrumentation.max_capture_depth) + def serialize_value(value, name: nil, depth: settings.dynamic_instrumentation.max_capture_depth) if redactor.redact_type?(value) return {type: class_name(value.class), notCapturedReason: "redactedType"} end @@ -109,7 +111,7 @@ def serialize_value(name, value, depth: settings.dynamic_instrumentation.max_cap value = value[0...max] || [] end entries = value.map do |elt| - serialize_value(nil, elt, depth: depth - 1) + serialize_value(elt, depth: depth - 1) end serialized.update(elements: entries) end @@ -126,7 +128,7 @@ def serialize_value(name, value, depth: settings.dynamic_instrumentation.max_cap break end cur += 1 - entries << [serialize_value(nil, k, depth: depth - 1), serialize_value(k, v, depth: depth - 1)] + entries << [serialize_value(k, depth: depth - 1), serialize_value(v, name: k, depth: depth - 1)] end serialized.update(entries: entries) end @@ -166,7 +168,7 @@ def serialize_value(name, value, depth: settings.dynamic_instrumentation.max_cap break end cur += 1 - fields[ivar] = serialize_value(ivar, value.instance_variable_get(ivar), depth: depth - 1) + fields[ivar] = serialize_value(value.instance_variable_get(ivar), name: ivar, depth: depth - 1) end serialized.update(fields: fields) end @@ -174,6 +176,8 @@ def serialize_value(name, value, depth: settings.dynamic_instrumentation.max_cap serialized end + private + # Returns the name for the specified class object. # # Ruby can have nameless classes, e.g. Class.new is a class object diff --git a/lib/datadog/tracing/contrib/action_pack/action_dispatch/instrumentation.rb b/lib/datadog/tracing/contrib/action_pack/action_dispatch/instrumentation.rb new file mode 100644 index 00000000000..d18ff8e2ca1 --- /dev/null +++ b/lib/datadog/tracing/contrib/action_pack/action_dispatch/instrumentation.rb @@ -0,0 +1,78 @@ +# frozen_string_literal: true + +require_relative '../../../metadata/ext' + +module Datadog + module Tracing + module Contrib + module ActionPack + module ActionDispatch + # Instrumentation for ActionDispatch components + module Instrumentation + module_function + + def set_http_route_tags(route_spec, script_name) + return unless Tracing.enabled? + + return unless route_spec + + request_trace = Tracing.active_trace + return unless request_trace + + request_trace.set_tag(Tracing::Metadata::Ext::HTTP::TAG_ROUTE, route_spec.to_s.gsub(/\(.:format\)\z/, '')) + + if script_name && !script_name.empty? + request_trace.set_tag(Tracing::Metadata::Ext::HTTP::TAG_ROUTE_PATH, script_name) + end + end + + def dispatcher_route?(route) + return true if route.dispatcher? + + # in Rails 4 there is no #rack_app method on the app + return true if route.app.respond_to?(:rack_app) && !route.app.rack_app.nil? + + false + end + + # Instrumentation for ActionDispatch::Journey components + module Journey + # Instrumentation for ActionDispatch::Journey::Router for Rails versions older than 7.1 + module Router + def find_routes(req) + result = super + + # result is an array of [match, parameters, route] tuples + routes = result.map(&:last) + + routes.each do |route| + if Instrumentation.dispatcher_route?(route) + Instrumentation.set_http_route_tags(route.path.spec, req.env['SCRIPT_NAME']) + break + end + end + + result + end + end + + # Since Rails 7.1 `Router#find_routes` makes the route computation lazy + # https://github.com/rails/rails/commit/35b280fcc2d5d474f9f2be3aca3ae7aa6bba66eb + module LazyRouter + def find_routes(req) + super do |match, parameters, route| + if Instrumentation.dispatcher_route?(route) + Instrumentation.set_http_route_tags(route.path.spec, req.env['SCRIPT_NAME']) + end + + yield [match, parameters, route] + end + end + end + end + end + end + end + end + end +end diff --git a/lib/datadog/tracing/contrib/action_pack/action_dispatch/patcher.rb b/lib/datadog/tracing/contrib/action_pack/action_dispatch/patcher.rb new file mode 100644 index 00000000000..bb371f81d2d --- /dev/null +++ b/lib/datadog/tracing/contrib/action_pack/action_dispatch/patcher.rb @@ -0,0 +1,33 @@ +# frozen_string_literal: true + +require_relative '../../patcher' +require_relative 'instrumentation' + +module Datadog + module Tracing + module Contrib + module ActionPack + module ActionDispatch + # Patcher for ActionController components + module Patcher + include Contrib::Patcher + + module_function + + def target_version + Integration.version + end + + def patch + if ::ActionPack.gem_version >= Gem::Version.new('7.1') + ::ActionDispatch::Journey::Router.prepend(ActionDispatch::Instrumentation::Journey::LazyRouter) + else + ::ActionDispatch::Journey::Router.prepend(ActionDispatch::Instrumentation::Journey::Router) + end + end + end + end + end + end + end +end diff --git a/lib/datadog/tracing/contrib/action_pack/patcher.rb b/lib/datadog/tracing/contrib/action_pack/patcher.rb index c124718921d..ebab1741813 100644 --- a/lib/datadog/tracing/contrib/action_pack/patcher.rb +++ b/lib/datadog/tracing/contrib/action_pack/patcher.rb @@ -2,6 +2,7 @@ require_relative '../patcher' require_relative 'action_controller/patcher' +require_relative 'action_dispatch/patcher' module Datadog module Tracing @@ -19,6 +20,7 @@ def target_version def patch ActionController::Patcher.patch + ActionDispatch::Patcher.patch end end end diff --git a/lib/datadog/tracing/contrib/grape/endpoint.rb b/lib/datadog/tracing/contrib/grape/endpoint.rb index 292f32d0726..1473585a422 100644 --- a/lib/datadog/tracing/contrib/grape/endpoint.rb +++ b/lib/datadog/tracing/contrib/grape/endpoint.rb @@ -42,6 +42,7 @@ def endpoint_start_process(_name, _start, _finish, _id, payload) # collect endpoint details endpoint = payload.fetch(:endpoint) + env = payload.fetch(:env) api_view = api_view(endpoint.options[:for]) request_method = endpoint.options.fetch(:method).first path = endpoint_expand_path(endpoint) @@ -62,6 +63,18 @@ def endpoint_start_process(_name, _start, _finish, _id, payload) span.set_tag(Tracing::Metadata::Ext::TAG_COMPONENT, Ext::TAG_COMPONENT) span.set_tag(Tracing::Metadata::Ext::TAG_OPERATION, Ext::TAG_OPERATION_ENDPOINT_RUN) + if (grape_route = env['grape.routing_args']) && grape_route[:route_info] + trace.set_tag( + Tracing::Metadata::Ext::HTTP::TAG_ROUTE, + # here we are removing the format from the path: + # e.g. /path/to/resource(.json) => /path/to/resource + # e.g. /path/to/resource(.:format) => /path/to/resource + grape_route[:route_info].path&.gsub(/\(\.:?\w+\)\z/, '') + ) + + trace.set_tag(Tracing::Metadata::Ext::HTTP::TAG_ROUTE_PATH, env['SCRIPT_NAME']) + end + Thread.current[KEY_RUN] = true rescue StandardError => e Datadog.logger.error(e.message) diff --git a/lib/datadog/tracing/contrib/rack/middlewares.rb b/lib/datadog/tracing/contrib/rack/middlewares.rb index 6ac74e13719..fc2662c95ca 100644 --- a/lib/datadog/tracing/contrib/rack/middlewares.rb +++ b/lib/datadog/tracing/contrib/rack/middlewares.rb @@ -138,6 +138,29 @@ def set_request_tags!(trace, request_span, env, status, headers, response, origi request_span.set_tag(Tracing::Metadata::Ext::TAG_OPERATION, Ext::TAG_OPERATION_REQUEST) request_span.set_tag(Tracing::Metadata::Ext::TAG_KIND, Tracing::Metadata::Ext::SpanKind::TAG_SERVER) + if status != 404 && (last_route = trace.get_tag(Tracing::Metadata::Ext::HTTP::TAG_ROUTE)) + last_script_name = trace.get_tag(Tracing::Metadata::Ext::HTTP::TAG_ROUTE_PATH) || '' + + # If the last_script_name is empty but the env['SCRIPT_NAME'] is NOT empty + # then the current rack request was not routed and must be accounted for + # which only happens in pure nested rack requests i.e /rack/rack/hello/world + # + # To account for the unaccounted nested rack requests of /rack/hello/world, + # we use 'PATH_INFO knowing that rack cannot have named parameters + if last_script_name == '' && env['SCRIPT_NAME'] && env['SCRIPT_NAME'] != '' + last_script_name = last_route + last_route = env['PATH_INFO'] + end + + # Clear the route and route path tags from the request trace to avoid possibility of misplacement + trace.clear_tag(Tracing::Metadata::Ext::HTTP::TAG_ROUTE) + trace.clear_tag(Tracing::Metadata::Ext::HTTP::TAG_ROUTE_PATH) + + # Ensure tags are placed in rack.request span as desired + request_span.set_tag(Tracing::Metadata::Ext::HTTP::TAG_ROUTE, last_script_name + last_route) + request_span.clear_tag(Tracing::Metadata::Ext::HTTP::TAG_ROUTE_PATH) + end + # Set analytics sample rate if Contrib::Analytics.enabled?(configuration[:analytics_enabled]) Contrib::Analytics.set_sample_rate(request_span, configuration[:analytics_sample_rate]) @@ -195,6 +218,10 @@ def set_request_tags!(trace, request_span, env, status, headers, response, origi request_span.set_tag(Tracing::Metadata::Ext::HTTP::TAG_USER_AGENT, user_agent) end + if request_span.get_tag(Tracing::Metadata::Ext::HTTP::TAG_ROUTE).nil? && status != 404 + request_span.set_tag(Tracing::Metadata::Ext::HTTP::TAG_ROUTE, env['PATH_INFO']) + end + HeaderTagging.tag_request_headers(request_span, request_header_collection, configuration) HeaderTagging.tag_response_headers(request_span, headers, configuration) if headers diff --git a/lib/datadog/tracing/contrib/sinatra/tracer.rb b/lib/datadog/tracing/contrib/sinatra/tracer.rb index 4c535c0c8c8..36b823933e8 100644 --- a/lib/datadog/tracing/contrib/sinatra/tracer.rb +++ b/lib/datadog/tracing/contrib/sinatra/tracer.rb @@ -69,6 +69,10 @@ def route_eval trace.resource = span.resource + _, path = env['sinatra.route'].split(' ', 2) + trace.set_tag(Tracing::Metadata::Ext::HTTP::TAG_ROUTE, path) + trace.set_tag(Tracing::Metadata::Ext::HTTP::TAG_ROUTE_PATH, env['SCRIPT_NAME']) + sinatra_request_span = Sinatra::Env.datadog_span(env) sinatra_request_span.resource = span.resource diff --git a/lib/datadog/tracing/contrib/stripe/request.rb b/lib/datadog/tracing/contrib/stripe/request.rb index a05a52cd4c2..ac295b3af4c 100644 --- a/lib/datadog/tracing/contrib/stripe/request.rb +++ b/lib/datadog/tracing/contrib/stripe/request.rb @@ -47,8 +47,9 @@ def tag_span(span, event) # Measure service stats Contrib::Analytics.set_measured(span) - - span.set_tag(Ext::TAG_REQUEST_ID, event.request_id) + # `5.38.0` Add request_id to RequestEndEvent + # https://github.com/stripe/stripe-ruby/blob/master/CHANGELOG.md#5380---2021-08-10 + span.set_tag(Ext::TAG_REQUEST_ID, event.request_id) if event.respond_to?(:request_id) span.set_tag(Ext::TAG_REQUEST_HTTP_STATUS, event.http_status.to_s) span.set_tag(Ext::TAG_REQUEST_METHOD, event.method) span.set_tag(Ext::TAG_REQUEST_PATH, event.path) diff --git a/lib/datadog/tracing/metadata/ext.rb b/lib/datadog/tracing/metadata/ext.rb index 02b87b86877..95cf3d4e7f0 100644 --- a/lib/datadog/tracing/metadata/ext.rb +++ b/lib/datadog/tracing/metadata/ext.rb @@ -87,6 +87,8 @@ module HTTP TAG_STATUS_CODE = 'http.status_code' TAG_USER_AGENT = 'http.useragent' TAG_URL = 'http.url' + TAG_ROUTE = 'http.route' + TAG_ROUTE_PATH = 'http.route.path' TYPE_INBOUND = AppTypes::TYPE_WEB.freeze TYPE_OUTBOUND = 'http' TYPE_PROXY = 'proxy' diff --git a/sig/datadog/core/configuration/settings.rbs b/sig/datadog/core/configuration/settings.rbs index fe07d63c6db..48d9617ac7c 100644 --- a/sig/datadog/core/configuration/settings.rbs +++ b/sig/datadog/core/configuration/settings.rbs @@ -54,6 +54,44 @@ module Datadog def templates: () -> _TemplatesBlock end + interface _DI + def enabled: () -> bool + + def enabled=: (bool) -> void + + def untargeted_trace_points: () -> bool + + def untargeted_trace_points=: (bool) -> void + + def propagate_all_exceptions: () -> bool + + def propagate_all_exceptions=: (bool) -> void + + def redacted_identifiers: () -> Array[String] + + def redacted_identifiers=: (Array[String]) -> void + + def redacted_type_names: () -> Array[String] + + def redacted_type_names=: (Array[String]) -> void + + def max_capture_depth: () -> Integer + + def max_capture_depth=: (Integer) -> void + + def max_capture_collection_size: () -> Integer + + def max_capture_collection_size=: (Integer) -> void + + def max_capture_string_length: () -> Integer + + def max_capture_string_length=: (Integer) -> void + + def max_capture_attribute_count: () -> Integer + + def max_capture_attribute_count=: (Integer) -> void + end + interface _TemplatesBlock def html=: (::String) -> void @@ -84,6 +122,8 @@ module Datadog def appsec: (?untyped? options) -> Datadog::Core::Configuration::Settings::_AppSec + def dynamic_instrumentation: (?untyped? options) -> Datadog::Core::Configuration::Settings::_DI + def remote: (?untyped? options) -> Datadog::Core::Configuration::Settings::_Remote end end diff --git a/sig/datadog/di/redactor.rbs b/sig/datadog/di/redactor.rbs index b568e4d139f..5337bd3d0a2 100644 --- a/sig/datadog/di/redactor.rbs +++ b/sig/datadog/di/redactor.rbs @@ -9,7 +9,7 @@ module Datadog def initialize: (untyped settings) -> void - attr_reader settings: untyped + attr_reader settings: Datadog::Core::Configuration::Settings def redact_identifier?: (String name) -> (true | false) diff --git a/sig/datadog/di/serializer.rbs b/sig/datadog/di/serializer.rbs index e3060f5e959..aaaf674148e 100644 --- a/sig/datadog/di/serializer.rbs +++ b/sig/datadog/di/serializer.rbs @@ -7,14 +7,15 @@ module Datadog def initialize: (untyped settings, untyped redactor) -> void - attr_reader settings: untyped + attr_reader settings: Datadog::Core::Configuration::Settings - attr_reader redactor: untyped + attr_reader redactor: Datadog::DI::Redactor + def serialize_args: (untyped args, untyped kwargs) -> untyped def serialize_vars: (untyped vars) -> untyped private - def serialize_value: (untyped name, untyped value, ?depth: untyped) -> ({ type: untyped, notCapturedReason: "redactedType" } | { type: untyped, notCapturedReason: "redactedIdent" } | untyped) + def serialize_value: (untyped value, ?name: String, ?depth: untyped) -> ({ type: untyped, notCapturedReason: "redactedType" } | { type: untyped, notCapturedReason: "redactedIdent" } | untyped) def class_name: (untyped cls) -> untyped end end diff --git a/sig/datadog/tracing/contrib/action_pack/action_dispatch/instrumentation.rbs b/sig/datadog/tracing/contrib/action_pack/action_dispatch/instrumentation.rbs new file mode 100644 index 00000000000..87364b3d313 --- /dev/null +++ b/sig/datadog/tracing/contrib/action_pack/action_dispatch/instrumentation.rbs @@ -0,0 +1,21 @@ +module Datadog + module Tracing + module Contrib + module ActionPack + module ActionDispatch + module Instrumentation + def self?.set_http_route_tag: (untyped http_route) -> (nil | untyped) + module Journey + module Router + def find_routes: (untyped req) -> untyped + end + module LazyRouter + def serve: (untyped req) -> untyped + end + end + end + end + end + end + end +end diff --git a/sig/datadog/tracing/contrib/action_pack/action_dispatch/patcher.rbs b/sig/datadog/tracing/contrib/action_pack/action_dispatch/patcher.rbs new file mode 100644 index 00000000000..c4ade81bee1 --- /dev/null +++ b/sig/datadog/tracing/contrib/action_pack/action_dispatch/patcher.rbs @@ -0,0 +1,17 @@ +module Datadog + module Tracing + module Contrib + module ActionPack + module ActionDispatch + module Patcher + include Contrib::Patcher + + def self?.target_version: () -> untyped + + def self?.patch: () -> untyped + end + end + end + end + end +end diff --git a/sig/datadog/tracing/metadata/ext.rbs b/sig/datadog/tracing/metadata/ext.rbs index aeca3b827a1..9820be2b123 100644 --- a/sig/datadog/tracing/metadata/ext.rbs +++ b/sig/datadog/tracing/metadata/ext.rbs @@ -45,6 +45,7 @@ module Datadog TAG_STATUS_CODE: ::String TAG_USER_AGENT: ::String TAG_URL: ::String + TAG_ROUTE: ::String TYPE_INBOUND: untyped TYPE_OUTBOUND: ::String TYPE_PROXY: ::String diff --git a/spec/datadog/di/serializer_spec.rb b/spec/datadog/di/serializer_spec.rb index c32974c478c..a19d02b79e7 100644 --- a/spec/datadog/di/serializer_spec.rb +++ b/spec/datadog/di/serializer_spec.rb @@ -62,6 +62,49 @@ class DISerializerSpecTestClass; end described_class.new(settings, redactor) end + describe "#serialize_value" do + let(:serialized) do + serializer.serialize_value(value, **options) + end + + def self.define_cases(cases) + cases.each do |c| + value = c.fetch(:input) + expected = c.fetch(:expected) + var_name = c[:var_name] + + context c.fetch(:name) do + let(:value) { value } + + let(:options) do + {name: var_name} + end + + it "serializes as expected" do + expect(serialized).to eq(expected) + end + end + end + end + + cases = [ + {name: "nil value", input: nil, expected: {type: "NilClass", isNull: true}}, + {name: "true value", input: true, expected: {type: "TrueClass", value: "true"}}, + {name: "false value", input: false, expected: {type: "FalseClass", value: "false"}}, + {name: "int value", input: 42, expected: {type: "Integer", value: "42"}}, + {name: "bigint value", input: 420000000000000000000042, expected: {type: "Integer", value: "420000000000000000000042"}}, + {name: "float value", input: 42.02, expected: {type: "Float", value: "42.02"}}, + {name: "string value", input: "x", expected: {type: "String", value: "x"}}, + {name: "symbol value", input: :x, expected: {type: "Symbol", value: "x"}}, + {name: "redacted identifier in predefined list", input: "123", var_name: "password", + expected: {type: "String", notCapturedReason: "redactedIdent"}}, + {name: "variable name given and is not a redacted identifier", input: "123", var_name: "normal", + expected: {type: "String", value: "123"}}, + ] + + define_cases(cases) + end + describe "#serialize_vars" do let(:serialized) do serializer.serialize_vars(vars) @@ -83,14 +126,6 @@ def self.define_cases(cases) end cases = [ - {name: "nil value", input: {a: nil}, expected: {a: {type: "NilClass", isNull: true}}}, - {name: "true value", input: {a: true}, expected: {a: {type: "TrueClass", value: "true"}}}, - {name: "false value", input: {a: false}, expected: {a: {type: "FalseClass", value: "false"}}}, - {name: "int value", input: {a: 42}, expected: {a: {type: "Integer", value: "42"}}}, - {name: "bigint value", input: {a: 420000000000000000000042}, expected: {a: {type: "Integer", value: "420000000000000000000042"}}}, - {name: "float value", input: {a: 42.02}, expected: {a: {type: "Float", value: "42.02"}}}, - {name: "string value", input: {a: "x"}, expected: {a: {type: "String", value: "x"}}}, - {name: "symbol value", input: {a: :x}, expected: {a: {type: "Symbol", value: "x"}}}, {name: "redacted value in predefined list", input: {password: "123"}, expected: {password: {type: "String", notCapturedReason: "redactedIdent"}}}, {name: "redacted type", input: {value: DISerializerSpecSensitiveType.new}, diff --git a/spec/datadog/tracing/contrib/action_pack/action_dispatch/instrumentation_spec.rb b/spec/datadog/tracing/contrib/action_pack/action_dispatch/instrumentation_spec.rb new file mode 100644 index 00000000000..4927478b802 --- /dev/null +++ b/spec/datadog/tracing/contrib/action_pack/action_dispatch/instrumentation_spec.rb @@ -0,0 +1,60 @@ +require 'datadog/tracing/contrib/support/spec_helper' + +require 'datadog' +require 'datadog/tracing/contrib/action_pack/action_dispatch/instrumentation' + +RSpec.describe Datadog::Tracing::Contrib::ActionPack::ActionDispatch::Instrumentation do + describe '::set_http_route_tags' do + let(:tracing_enabled) { true } + + before do + expect(Datadog::Tracing).to receive(:enabled?).and_return(tracing_enabled) + end + + context 'when tracing is disabled' do + let(:tracing_enabled) { false } + + it 'sets no tags' do + Datadog::Tracing.trace('rack.request') do |_span, trace| + described_class.set_http_route_tags('/users/:id', '/auth') + + expect(trace.send(:meta)).not_to have_key('http.route') + expect(trace.send(:meta)).not_to have_key('http.route.path') + end + end + end + + it 'sets http.route and http.route.path tags on existing trace' do + Datadog::Tracing.trace('rack.request') do |_span, trace| + described_class.set_http_route_tags('/users/:id(.:format)', '/auth') + + expect(trace.send(:meta).fetch('http.route')).to eq('/users/:id') + expect(trace.send(:meta).fetch('http.route.path')).to eq('/auth') + end + end + + it 'sets no http.route.path when script name is nil' do + Datadog::Tracing.trace('rack.request') do |_span, trace| + described_class.set_http_route_tags('/users/:id(.:format)', nil) + + expect(trace.send(:meta).fetch('http.route')).to eq('/users/:id') + expect(trace.send(:meta)).not_to have_key('http.route.path') + end + end + + it 'sets no tags when route spec is nil' do + Datadog::Tracing.trace('rack.request') do |_span, trace| + described_class.set_http_route_tags(nil, '/auth') + + expect(trace.send(:meta)).not_to have_key('http.route') + expect(trace.send(:meta)).not_to have_key('http.route.path') + end + end + + it 'does not create new traces when no active trace is present' do + described_class.set_http_route_tags('/users/:id', '/auth') + + expect(traces).to be_empty + end + end +end diff --git a/spec/datadog/tracing/contrib/action_pack/action_dispatch/journey/router_spec.rb b/spec/datadog/tracing/contrib/action_pack/action_dispatch/journey/router_spec.rb new file mode 100644 index 00000000000..1a7610ca71a --- /dev/null +++ b/spec/datadog/tracing/contrib/action_pack/action_dispatch/journey/router_spec.rb @@ -0,0 +1,249 @@ +require 'datadog/tracing/contrib/support/spec_helper' +require 'datadog/tracing/contrib/action_pack/action_dispatch/instrumentation' + +require 'action_pack' +require 'action_controller/railtie' +require 'action_view/railtie' +require 'rails/test_unit/railtie' + +require 'spec/datadog/tracing/contrib/rails/support/configuration' +require 'spec/datadog/tracing/contrib/rails/support/application' + +RSpec.describe 'Datadog::Tracing::Contrib::ActionPack::ActionDispatch::Journey::Router' do + let(:no_db) { true } + + include Rack::Test::Methods + include_context 'Rails test application' + + after do + Datadog.configuration.tracing[:action_pack].reset! + Datadog.registry[:rack].reset_configuration! + end + + describe '#find_routes' do + before do + engine.routes.append do + get '/sign-in' => 'tokens#create' + end + + auth_engine = engine + rack_status_app = rack_app.new + + rails_test_application.instance.routes.append do + namespace :api, defaults: { format: :json } do + resources :users, only: %i[show] + + mount auth_engine => '/auth' + + match '/status', to: rack_status_app, via: :get + end + + get '/items/:id', to: 'items#by_id', id: /\d+/ + get '/items/:slug', to: 'items#by_slug', id: /(\w-)+/ + + get 'books(/:category)', to: 'books#index' + get 'books/*section/:title', to: 'books#show' + end + end + + let(:rack_app) do + stub_const( + 'RackStatusApp', + Class.new do + def call(_env) + [200, { 'Content-Type' => 'text/plain' }, ['OK']] + end + end + ) + end + + let(:controllers) { [users_controller, items_controller, books_controller] } + + let(:users_controller) do + stub_const( + 'Api::UsersController', + Class.new(ActionController::Base) do + def show + head :ok + end + end + ) + end + + let(:items_controller) do + stub_const( + 'ItemsController', + Class.new(ActionController::Base) do + def by_id + head :ok + end + + def by_slug + head :ok + end + end + ) + end + + let(:books_controller) do + stub_const( + 'BooksController', + Class.new(ActionController::Base) do + def index + head :ok + end + + def show + head :ok + end + end + ) + end + + let(:status_controller) do + stub_const( + 'StatusesController', + Class.new(ActionController::Base) do + def show + head :ok + end + end + ) + end + + let(:engine) do + stub_const('AuthEngine', Module.new) + + stub_const( + 'AuthEngine::TokensController', + Class.new(ActionController::Base) do + def create + head :ok + end + end + ) + + stub_const( + 'AuthEngine::Engine', + Class.new(::Rails::Engine) do + isolate_namespace AuthEngine + end + ) + end + + context 'with default configuration' do + before do + Datadog.configure do |c| + c.tracing.instrument :rack + c.tracing.instrument :action_pack + end + + clear_traces! + end + + it 'sets http.route when requesting a known route' do + get '/api/users/1' + + request_span = spans.first + + expect(last_response).to be_ok + expect(request_span.name).to eq('rack.request') + expect(request_span.tags.fetch('http.route')).to eq('/api/users/:id') + expect(request_span.tags).not_to have_key('http.route.path') + end + + it 'sets http.route correctly for ambiguous route with constraints' do + get '/items/1' + + request_span = spans.first + + expect(last_response).to be_ok + expect(request_span.name).to eq('rack.request') + expect(request_span.tags.fetch('http.route')).to eq('/items/:id') + expect(request_span.tags).not_to have_key('http.route.path') + end + + it 'sets http.route correctly for ambiguous route with constraints, case two' do + get '/items/something' + + request_span = spans.first + + expect(last_response).to be_ok + expect(request_span.name).to eq('rack.request') + expect(request_span.tags.fetch('http.route')).to eq('/items/:slug') + expect(request_span.tags).not_to have_key('http.route.path') + end + + it 'sets http.route correctly for routes with globbing' do + get 'books/some/section/title' + + request_span = spans.first + + expect(last_response).to be_ok + expect(request_span.name).to eq('rack.request') + expect(request_span.tags.fetch('http.route')).to eq('/books/*section/:title') + expect(request_span.tags).not_to have_key('http.route.path') + end + + it 'sets http.route correctly for routes with optional parameter' do + get 'books/some-category' + + request_span = spans.first + + expect(last_response).to be_ok + expect(request_span.name).to eq('rack.request') + expect(request_span.tags.fetch('http.route')).to eq('/books(/:category)') + expect(request_span.tags).not_to have_key('http.route.path') + end + + it 'sets http.route and http.route.path for rails engine routes' do + get '/api/auth/sign-in' + + request_span = spans.first + + expect(last_response).to be_ok + expect(request_span.name).to eq('rack.request') + expect(request_span.tags.fetch('http.route')).to eq('/api/auth/sign-in') + expect(request_span.tags).not_to have_key('http.route.path') + end + + it 'sets http.route for a route to a rack app' do + get '/api/status' + + request_span = spans.first + + expect(last_response).to be_ok + expect(request_span.name).to eq('rack.request') + expect(request_span.tags.fetch('http.route')).to eq('/api/status') + expect(request_span.tags).not_to have_key('http.route.path') + end + + it 'does not set http.route when requesting an unknown route' do + get '/nope' + + request_span = spans.first + + expect(last_response).to be_not_found + expect(request_span.name).to eq('rack.request') + expect(request_span.tags).not_to have_key('http.route') + expect(request_span.tags).not_to have_key('http.route.path') + end + end + + context 'when tracing is disabled' do + before do + Datadog.configure do |c| + c.tracing.enabled = false + end + + clear_traces! + end + + it 'does not set http.route' do + get '/api/users/1' + + expect(traces).to be_empty + end + end + end +end diff --git a/spec/datadog/tracing/contrib/grape/tracer_spec.rb b/spec/datadog/tracing/contrib/grape/tracer_spec.rb index f4f71c6d9ba..ee94ea02c7d 100644 --- a/spec/datadog/tracing/contrib/grape/tracer_spec.rb +++ b/spec/datadog/tracing/contrib/grape/tracer_spec.rb @@ -13,6 +13,7 @@ let(:render_span) { spans.find { |x| x.name == Datadog::Tracing::Contrib::Grape::Ext::SPAN_ENDPOINT_RENDER } } let(:run_span) { spans.find { |x| x.name == Datadog::Tracing::Contrib::Grape::Ext::SPAN_ENDPOINT_RUN } } + let(:rack_span) { sorted_spans.reverse.find { |x| x.name == Datadog::Tracing::Contrib::Rack::Ext::SPAN_REQUEST } } let(:run_filter_span) { spans.find { |x| x.name == Datadog::Tracing::Contrib::Grape::Ext::SPAN_ENDPOINT_RUN_FILTERS } } let(:span) { spans.last } @@ -198,6 +199,9 @@ .to eq('endpoint_run') expect(run_span.get_tag('http.status_code')).to eq('200') + + expect(trace.send(:meta).fetch(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)) + .to eq('/base/success') end end @@ -265,6 +269,9 @@ .to eq('endpoint_run') expect(run_span.get_tag('http.status_code')).to eq('200') + + expect(trace.send(:meta).fetch(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)) + .to eq('/filtered/before_after') end end end @@ -296,6 +303,8 @@ expect(span.get_tag(Datadog::Tracing::Metadata::Ext::TAG_OPERATION)) .to eq('endpoint_run') expect(span.get_tag('http.status_code')).to eq('405') + expect(trace.send(:meta).fetch(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)) + .to eq('/base/hard_failure') end end end @@ -353,6 +362,9 @@ .to eq('endpoint_run') # Status code has not been set yet at this instrumentation point expect(run_span.get_tag('http.status_code')).to be_nil + + expect(trace.send(:meta).fetch(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)) + .to eq('/base/hard_failure') end end @@ -402,6 +414,8 @@ expect(run_span.get_tag(Datadog::Tracing::Metadata::Ext::TAG_COMPONENT)).to eq('grape') expect(run_span.get_tag(Datadog::Tracing::Metadata::Ext::TAG_OPERATION)) .to eq('endpoint_run') + expect(trace.send(:meta).fetch(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)) + .to eq('/filtered_exception/before') end end end @@ -419,6 +433,8 @@ expect(span.get_tag(Datadog::Tracing::Metadata::Ext::TAG_OPERATION)) .to eq('endpoint_run') expect(span.get_tag('http.status_code')).to eq('405') + expect(trace.send(:meta).fetch(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)) + .to eq('/base/soft_failure') end context 'and error_responses' do @@ -435,6 +451,8 @@ expect(span.get_tag(Datadog::Tracing::Metadata::Ext::TAG_OPERATION)) .to eq('endpoint_run') expect(span.get_tag('http.status_code')).to eq('405') + expect(trace.send(:meta).fetch(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)) + .to eq('/base/soft_failure') end end @@ -452,6 +470,8 @@ expect(span.get_tag(Datadog::Tracing::Metadata::Ext::TAG_OPERATION)) .to eq('endpoint_run') expect(span.get_tag('http.status_code')).to eq('405') + expect(trace.send(:meta).fetch(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)) + .to eq('/base/soft_failure') end end @@ -469,6 +489,8 @@ expect(span.get_tag(Datadog::Tracing::Metadata::Ext::TAG_OPERATION)) .to eq('endpoint_run') expect(span.get_tag('http.status_code')).to eq('405') + expect(trace.send(:meta).fetch(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)) + .to eq('/base/soft_failure') end end @@ -486,6 +508,9 @@ expect(span.get_tag(Datadog::Tracing::Metadata::Ext::TAG_OPERATION)) .to eq('endpoint_run') expect(span.get_tag('http.status_code')).to eq('405') + + expect(trace.send(:meta).fetch(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)) + .to eq('/base/soft_failure') end end end @@ -535,6 +560,9 @@ .to eq('endpoint_run') expect(run_span.get_tag('http.status_code')).to eq('500') + + expect(trace.send(:meta).fetch(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)) + .to eq('/base/soft_failure') end end end @@ -583,6 +611,9 @@ expect(run_span.get_tag(Datadog::Tracing::Contrib::Grape::Ext::TAG_ROUTE_PATH)).to eq('/widgets') expect(run_span.get_tag(Datadog::Tracing::Contrib::Grape::Ext::TAG_ROUTE_METHOD)).to eq('GET') + + expect(trace.send(:meta).fetch(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)) + .to eq('/widgets') end end @@ -629,6 +660,9 @@ expect(run_span.get_tag(Datadog::Tracing::Contrib::Grape::Ext::TAG_ROUTE_PATH)).to eq('/widgets') expect(run_span.get_tag(Datadog::Tracing::Contrib::Grape::Ext::TAG_ROUTE_METHOD)).to eq('POST') + + expect(trace.send(:meta).fetch(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)) + .to eq('/widgets') end end @@ -665,6 +699,9 @@ expect(run_span.get_tag(Datadog::Tracing::Contrib::Grape::Ext::TAG_ROUTE_PATH)).to eq('/nested/widgets') expect(run_span.get_tag(Datadog::Tracing::Contrib::Grape::Ext::TAG_ROUTE_METHOD)).to eq('GET') + + expect(trace.send(:meta).fetch(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)) + .to eq('/nested/widgets') end end end @@ -751,7 +788,6 @@ expect(run_span.get_tag(Datadog::Tracing::Metadata::Ext::HTTP::TAG_METHOD)).to eq('GET') expect(run_span.get_tag(Datadog::Tracing::Metadata::Ext::HTTP::TAG_URL)).to eq('/success') - expect(run_span.get_tag(Datadog::Tracing::Contrib::Grape::Ext::TAG_ROUTE_PATH)).to eq('/success') expect(run_span.get_tag(Datadog::Tracing::Contrib::Grape::Ext::TAG_ROUTE_METHOD)).to eq('GET') expect(rack_span.name).to eq('rack.request') @@ -760,6 +796,7 @@ expect(rack_span.resource).to eq('RackTestingAPI GET /success') expect(rack_span).to_not have_error expect(rack_span).to be_root_span + expect(rack_span.get_tag(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)).to eq('/api/success') end end @@ -825,6 +862,8 @@ expect(rack_span.resource).to eq('RackTestingAPI GET /hard_failure') expect(rack_span).to have_error expect(rack_span).to be_root_span + expect(rack_span.get_tag(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)) + .to eq('/api/hard_failure') end end @@ -846,6 +885,8 @@ expect(span.resource).to eq('GET 404') expect(span).to_not have_error expect(span).to be_root_span + expect(span.get_tag(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)) + .to be_nil end end @@ -860,6 +901,10 @@ run_span = spans.find { |s| s.name == 'grape.endpoint_run' } expect(run_span.name).to eq('grape.endpoint_run') expect(run_span.resource).to eq('RackTestingAPI GET /span_resource_rack/span_resource') + + rack_span = spans.find { |x| x.name == Datadog::Tracing::Contrib::Rack::Ext::SPAN_REQUEST } + expect(rack_span.get_tag(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)) + .to eq('/api/span_resource_rack/span_resource') end it 'sets the trace resource before calling the endpoint' do diff --git a/spec/datadog/tracing/contrib/rack/http_route_spec.rb b/spec/datadog/tracing/contrib/rack/http_route_spec.rb new file mode 100644 index 00000000000..d5d943c7c2c --- /dev/null +++ b/spec/datadog/tracing/contrib/rack/http_route_spec.rb @@ -0,0 +1,73 @@ +require 'datadog/tracing/contrib/support/spec_helper' + +require 'rack/test' + +require 'datadog' +require 'datadog/tracing/contrib/rack/middlewares' + +RSpec.describe 'Rack testing for http.route' do + include Rack::Test::Methods + + around(:suite) do |example| + Datadog.configure do |c| + c.tracing.instrument :rack + end + + example.run + ensure + Datadog.configuration.tracing[:rack].reset! + end + + let(:app) do + app = rack_app + + Rack::Builder.new do + use Datadog::Tracing::Contrib::Rack::TraceMiddleware + + map('/') { run app } + map('/rack') { run app } + end.to_app + end + + let(:rack_app) do + Rack::Builder.new do + map '/hello/world' do + run ->(_env) { [200, { 'content-type' => 'text/plain' }, 'hello world'] } + end + + map '/hello/:id' do + run ->(_env) { [200, { 'content-type' => 'text/plain' }, "hello #{params[:id]}"] } + end + end + end + + it 'sets http.route tag on request to base route' do + response = get('/hello/world') + + expect(response).to be_ok + expect(request_span.get_tag(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)) + .to eq('/hello/world') + end + + it 'sets http.route tag on request to nested app route' do + response = get('/rack/hello/world') + + expect(response).to be_ok + expect(request_span.get_tag(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)) + .to eq('/rack/hello/world') + end + + it 'sets no http.route tag when response status is 404' do + response = get('/no_route') + + expect(response).to be_not_found + expect(request_span.get_tag(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)) + .to be_nil + end + + def request_span + spans.detect do |span| + span.name == Datadog::Tracing::Contrib::Rack::Ext::SPAN_REQUEST + end + end +end diff --git a/spec/datadog/tracing/contrib/rails/rack_spec.rb b/spec/datadog/tracing/contrib/rails/rack_spec.rb index f0b58c89231..9967decb34d 100644 --- a/spec/datadog/tracing/contrib/rails/rack_spec.rb +++ b/spec/datadog/tracing/contrib/rails/rack_spec.rb @@ -151,6 +151,8 @@ def internal_server_error .to eq('rack') expect(request_span.get_tag(Datadog::Tracing::Metadata::Ext::TAG_OPERATION)) .to eq('request') + expect(request_span.get_tag(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)) + .to eq('/full') expect(controller_span.name).to eq('rails.action_controller') expect(controller_span.type).to eq('web') @@ -387,6 +389,8 @@ def internal_server_error .to eq('rack') expect(request_span.get_tag(Datadog::Tracing::Metadata::Ext::TAG_OPERATION)) .to eq('request') + expect(request_span.get_tag(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)) + .to eq('/error') expect(controller_span.name).to eq('rails.action_controller') expect(controller_span).to have_error @@ -422,6 +426,8 @@ def internal_server_error .to eq('rack') expect(request_span.get_tag(Datadog::Tracing::Metadata::Ext::TAG_OPERATION)) .to eq('request') + expect(request_span.get_tag(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)) + .to eq('/soft_error') expect(controller_span.name).to eq('rails.action_controller') expect(controller_span).to have_error @@ -460,6 +466,8 @@ def internal_server_error .to eq('rack') expect(request_span.get_tag(Datadog::Tracing::Metadata::Ext::TAG_OPERATION)) .to eq('request') + expect(request_span.get_tag(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)) + .to eq('/sub_error') expect(controller_span.name).to eq('rails.action_controller') expect(controller_span).to have_error @@ -573,6 +581,7 @@ def internal_server_error request_span = spans[0] expect(trace.resource).to eq('GET 404') + expect(trace.send(:meta)).not_to have_key('http.route') expect(request_span.name).to eq('rack.request') expect(request_span.type).to eq('web') @@ -599,6 +608,7 @@ def internal_server_error request_span = spans[0] expect(trace.resource).to eq('TestController#explicitly_not_found') + expect(trace.send(:meta).fetch('http.route')).to eq('/explicitly_not_found') expect(request_span.name).to eq('rack.request') expect(request_span.type).to eq('web') diff --git a/spec/datadog/tracing/contrib/rails/support/deprecation.rb b/spec/datadog/tracing/contrib/rails/support/deprecation.rb index 095cd45bfcc..5724fa9a582 100644 --- a/spec/datadog/tracing/contrib/rails/support/deprecation.rb +++ b/spec/datadog/tracing/contrib/rails/support/deprecation.rb @@ -4,5 +4,11 @@ def raise_on_rails_deprecation! # was introduced that allows fine grain configuration # of which warnings are allowed, in case we need # such feature. - ActiveSupport::Deprecation.behavior = :raise + # + # In Rails 7.1 calling ActiveSupport::Deprecation.behavior= is deprecated + if defined?(Rails) && Rails.gem_version >= Gem::Version.new(7.1) + Rails.deprecator.behavior = :raise + else + ActiveSupport::Deprecation.behavior = :raise + end end diff --git a/spec/datadog/tracing/contrib/rails/support/rails5.rb b/spec/datadog/tracing/contrib/rails/support/rails5.rb index 8eb099e4624..8b149a4d48e 100644 --- a/spec/datadog/tracing/contrib/rails/support/rails5.rb +++ b/spec/datadog/tracing/contrib/rails/support/rails5.rb @@ -36,14 +36,16 @@ def config.database_configuration instance_eval(&during_init) - config.active_job.queue_adapter = :inline - if ENV['USE_SIDEKIQ'] - config.active_job.queue_adapter = :sidekiq - # add Sidekiq middleware - Sidekiq::Testing.server_middleware do |chain| - chain.add( - Datadog::Tracing::Contrib::Sidekiq::ServerTracer - ) + if defined?(ActiveJob) + config.active_job.queue_adapter = :inline + if ENV['USE_SIDEKIQ'] + config.active_job.queue_adapter = :sidekiq + # add Sidekiq middleware + Sidekiq::Testing.server_middleware do |chain| + chain.add( + Datadog::Tracing::Contrib::Sidekiq::ServerTracer + ) + end end end end @@ -64,11 +66,13 @@ def config.database_configuration end end - Rails.application.config.active_job.queue_adapter = if ENV['USE_SIDEKIQ'] - :sidekiq - else - :inline - end + if Rails.application.config.respond_to?(:active_job) + Rails.application.config.active_job.queue_adapter = if ENV['USE_SIDEKIQ'] + :sidekiq + else + :inline + end + end before_test_init.call initialize! @@ -91,7 +95,7 @@ def config.database_configuration append_controllers! # Force connection to initialize, and dump some spans - application_record.connection + application_record&.connection # Skip default Rails exception page rendering. # This avoid polluting the trace under test diff --git a/spec/datadog/tracing/contrib/rails/support/rails6.rb b/spec/datadog/tracing/contrib/rails/support/rails6.rb index 4289f553bdb..212f9c9a81b 100644 --- a/spec/datadog/tracing/contrib/rails/support/rails6.rb +++ b/spec/datadog/tracing/contrib/rails/support/rails6.rb @@ -39,14 +39,16 @@ def config.database_configuration instance_eval(&during_init) - config.active_job.queue_adapter = :inline - if ENV['USE_SIDEKIQ'] - config.active_job.queue_adapter = :sidekiq - # add Sidekiq middleware - Sidekiq::Testing.server_middleware do |chain| - chain.add( - Datadog::Tracing::Contrib::Sidekiq::ServerTracer - ) + if config.respond_to?(:active_job) + config.active_job.queue_adapter = :inline + if ENV['USE_SIDEKIQ'] + config.active_job.queue_adapter = :sidekiq + # add Sidekiq middleware + Sidekiq::Testing.server_middleware do |chain| + chain.add( + Datadog::Tracing::Contrib::Sidekiq::ServerTracer + ) + end end end end @@ -67,11 +69,13 @@ def config.database_configuration end end - Rails.application.config.active_job.queue_adapter = if ENV['USE_SIDEKIQ'] - :sidekiq - else - :inline - end + if Rails.application.config.respond_to?(:active_job) + Rails.application.config.active_job.queue_adapter = if ENV['USE_SIDEKIQ'] + :sidekiq + else + :inline + end + end Rails.application.config.file_watcher = Class.new(ActiveSupport::FileUpdateChecker) do # When running in full application mode, Rails tries to monitor @@ -181,13 +185,11 @@ def reset_rails_configuration! # TODO: Remove this side-effect on missing log entries Lograge.remove_existing_log_subscriptions if defined?(::Lograge) - if Module.const_defined?(:ActiveRecord) - reset_class_variable(ActiveRecord::Railtie::Configuration, :@@options) + reset_class_variable(ActiveRecord::Railtie::Configuration, :@@options) if Module.const_defined?(:ActiveRecord) - # After `deep_dup`, the sentinel `NULL_OPTION` is inadvertently changed. We restore it here. - if Rails::VERSION::MINOR < 1 - ActiveRecord::Railtie.config.action_view.finalize_compiled_template_methods = ActionView::Railtie::NULL_OPTION - end + # After `deep_dup`, the sentinel `NULL_OPTION` is inadvertently changed. We restore it here. + if Rails::VERSION::MINOR < 1 + ActionView::Railtie.config.action_view.finalize_compiled_template_methods = ActionView::Railtie::NULL_OPTION end reset_class_variable(ActiveSupport::Dependencies, :@@autoload_paths) diff --git a/spec/datadog/tracing/contrib/rails/support/rails7.rb b/spec/datadog/tracing/contrib/rails/support/rails7.rb new file mode 100644 index 00000000000..63c20326dbe --- /dev/null +++ b/spec/datadog/tracing/contrib/rails/support/rails7.rb @@ -0,0 +1,213 @@ +# Loaded by the `bin/rails` script in a real Rails application +require 'rails/command' + +# We may not always want to require rails/all, especially when we don't have a database. +# require is already done where Rails test application is used, manually or through rails_helper. + +if ENV['USE_SIDEKIQ'] + require 'sidekiq/testing' + require 'datadog/tracing/contrib/sidekiq/server_tracer' +end + +RSpec.shared_context 'Rails 7 test application' do + let(:rails_base_application) do + klass = Class.new(Rails::Application) do + def config.database_configuration + parsed = super + raise parsed.to_yaml # Replace this line to add custom connections to the hash from database.yml + end + end + during_init = initialize_block + + klass.send(:define_method, :initialize) do |*args| + super(*args) + redis_cache = + if Gem.loaded_specs['redis-activesupport'] + [:redis_store, { url: ENV['REDIS_URL'] }] + else + [:redis_cache_store, { url: ENV['REDIS_URL'] }] + end + file_cache = [:file_store, '/tmp/datadog-rb/cache/'] + + config.load_defaults '7.0' + config.secret_key_base = 'f624861242e4ccf20eacb6bb48a886da' + config.active_record.cache_versioning = false if Gem.loaded_specs['redis-activesupport'] + config.cache_store = ENV['REDIS_URL'] ? redis_cache : file_cache + config.eager_load = false + config.consider_all_requests_local = true + config.hosts.clear # Allow requests for any hostname during tests + config.active_support.remove_deprecated_time_with_zone_name = false + + instance_eval(&during_init) + + if config.respond_to?(:active_job) + config.active_job.queue_adapter = :inline + if ENV['USE_SIDEKIQ'] + config.active_job.queue_adapter = :sidekiq + # add Sidekiq middleware + Sidekiq::Testing.server_middleware do |chain| + chain.add( + Datadog::Tracing::Contrib::Sidekiq::ServerTracer + ) + end + end + end + end + + before_test_init = before_test_initialize_block + after_test_init = after_test_initialize_block + + klass.send(:define_method, :test_initialize!) do + # we want to disable explicit instrumentation + # when testing auto patching + if ENV['TEST_AUTO_INSTRUMENT'] == 'true' + require 'datadog/auto_instrument' + else + # Enables the auto-instrumentation for the testing application + Datadog.configure do |c| + c.tracing.instrument :rails + c.tracing.instrument :redis if Gem.loaded_specs['redis'] && defined?(::Redis) + end + end + + if Rails.application.config.respond_to?(:active_job) + Rails.application.config.active_job.queue_adapter = ENV['USE_SIDEKIQ'] ? :sidekiq : :inline + end + + Rails.application.config.file_watcher = Class.new(ActiveSupport::FileUpdateChecker) do + # When running in full application mode, Rails tries to monitor + # the file system for changes. This causes issues when using + # {ActionView::FixtureResolver} to mock the filesystem for templates + # as this test resolver wasn't meant to work with a full application. + # + # Because {ActionView::FixtureResolver} doesn't have a complete filesystem, + # it sets its base path to '', which later in the file watcher gets translated to: + # "Monitor '**/*' for changes", which means monitoring the whole system, causing + # many "permission denied errors". + # + # This method removes the blank path ('') created by {ActionView::FixtureResolver} + # in order to allow the file watcher to skip monitoring the "filesystem changes" + # of the in-memory fixtures. + def initialize(files, dirs = {}, &block) + dirs = dirs.delete('') if dirs.include?('') + + super(files, dirs, &block) + end + end + + before_test_init.call + initialize! + after_test_init.call + end + Class.new(klass) + end + + let(:before_test_initialize_block) do + proc do + append_routes! + end + end + + let(:after_test_initialize_block) do + proc do + # Rails autoloader recommends controllers to be loaded + # after initialization. This will be enforced when `zeitwerk` + # becomes the only supported autoloader. + append_controllers! + + # Force connection to initialize, and dump some spans + application_record.connection unless (defined? no_db) && no_db + + # Skip default Rails exception page rendering. + # This avoid polluting the trace under test + # with render and partial_render templates for the + # error page. + # + # We could completely disable the {DebugExceptions} middleware, + # but that affects Rails' internal error propagation logic. + # render_for_browser_request(request, wrapper) + allow_any_instance_of(::ActionDispatch::DebugExceptions).to receive(:render_exception) do |this, env, exception| + wrapper = ::ActionDispatch::ExceptionWrapper.new(env, exception) + + this.send(:render, wrapper.status_code, 'Test error response body', 'text/plain') + end + end + end + + around do |example| + reset_rails_configuration! + + example.run + ensure + reset_rails_configuration! + + # Push this to base when Rails 3 removed + # Reset references stored in the Rails class + Rails.app_class = nil + Rails.cache = nil + end + + def append_routes! + # Make sure to load controllers first + # otherwise routes won't draw properly. + test_routes = routes + + rails_test_application.instance.routes.append do + test_routes.each do |k, v| + # no-dd-sa + if k.is_a?(Array) + send(k.first, k.last => v) + else + get k => v + end + end + end + + # ActionText requires ApplicationController to be loaded since Rails 6 + example = self + ActiveSupport.on_load(:action_text_content) do + example.stub_const('ApplicationController', Class.new(ActionController::Base)) + end + end + + def append_controllers! + controllers + end + + # Rails leaves a bunch of global class configuration on Rails::Railtie::Configuration in class variables + # We need to reset these so they don't carry over between example runs + def reset_rails_configuration! + # Reset autoloaded constants + ActiveSupport::Dependencies.clear if Rails.application + + # TODO: Remove this side-effect on missing log entries + Lograge.remove_existing_log_subscriptions if defined?(::Lograge) + + reset_class_variable(ActiveRecord::Railtie::Configuration, :@@options) if Module.const_defined?(:ActiveRecord) + + ActiveSupport::Dependencies.autoload_paths = [] + ActiveSupport::Dependencies.autoload_once_paths = [] + ActiveSupport::Dependencies._eager_load_paths = Set.new + ActiveSupport::Dependencies._autoloaded_tracked_classes = Set.new + + Rails::Railtie::Configuration.class_variable_set(:@@eager_load_namespaces, nil) + Rails::Railtie::Configuration.class_variable_set(:@@watchable_files, nil) + Rails::Railtie::Configuration.class_variable_set(:@@watchable_dirs, nil) + if Rails::Railtie::Configuration.class_variable_defined?(:@@app_middleware) + Rails::Railtie::Configuration.class_variable_set(:@@app_middleware, Rails::Configuration::MiddlewareStackProxy.new) + end + Rails::Railtie::Configuration.class_variable_set(:@@app_generators, nil) + Rails::Railtie::Configuration.class_variable_set(:@@to_prepare_blocks, nil) + end + + # Resets configuration that needs to be restored to its original value + # between each run of a Rails application. + def reset_class_variable(clazz, variable) + value = Datadog::Tracing::Contrib::Rails::Test::Configuration.fetch( + "#{clazz}.#{variable}", + clazz.class_variable_get(variable) + ) + + clazz.class_variable_set(variable, value.deep_dup) + end +end diff --git a/spec/datadog/tracing/contrib/sinatra/multi_app_spec.rb b/spec/datadog/tracing/contrib/sinatra/multi_app_spec.rb index 0007524bfcd..edf09d60dd0 100644 --- a/spec/datadog/tracing/contrib/sinatra/multi_app_spec.rb +++ b/spec/datadog/tracing/contrib/sinatra/multi_app_spec.rb @@ -78,7 +78,6 @@ end expect(span.resource).to eq('GET /endpoint') - expect(span.get_tag(Datadog::Tracing::Contrib::Sinatra::Ext::TAG_ROUTE_PATH)).to eq('/endpoint') expect(span.get_tag(Datadog::Tracing::Contrib::Sinatra::Ext::TAG_SCRIPT_NAME)).to eq('/one') end end diff --git a/spec/datadog/tracing/contrib/sinatra/tracer_spec.rb b/spec/datadog/tracing/contrib/sinatra/tracer_spec.rb index 68e1bc3816a..c89148a126f 100644 --- a/spec/datadog/tracing/contrib/sinatra/tracer_spec.rb +++ b/spec/datadog/tracing/contrib/sinatra/tracer_spec.rb @@ -124,6 +124,8 @@ it do is_expected.to be_ok + expect(rack_span.get_tag(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)).to eq('/') + expect(span.resource).to eq('GET /') expect(span.get_tag(Datadog::Tracing::Metadata::Ext::HTTP::TAG_URL)).to eq('/') end @@ -136,6 +138,8 @@ it do expect(response).to be_ok + expect(rack_span.get_tag(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)).to eq('/wildcard/*') + expect(span.resource).to eq('GET /wildcard/*') expect(span.get_tag(Datadog::Tracing::Metadata::Ext::HTTP::TAG_URL)).to eq('/wildcard/1/2/3') # expect(span.get_tag(Datadog::Tracing::Contrib::Sinatra::Ext::TAG_ROUTE_PATH)).to eq('/wildcard/*') @@ -156,6 +160,10 @@ expect(response).to be_ok end + it 'sets http.route on the rack span' do + expect(rack_span.get_tag(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)).to eq('/erb') + end + describe 'the sinatra.request span' do subject(:span) { request_span } @@ -210,6 +218,10 @@ expect(spans).to have(5).items end + it 'sets http.route on the rack span' do + expect(rack_span.get_tag(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)).to eq('/erb_literal') + end + describe 'the sinatra.request span' do it do expect(span.resource).to eq('GET /erb_literal') @@ -271,6 +283,8 @@ expect(span).to_not have_error_type expect(span).to_not have_error_message expect(span.status).to eq(1) + + expect(rack_span.get_tag(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)).to eq('/server_error') end end @@ -283,6 +297,8 @@ expect(span).to have_error_type('RuntimeError') expect(span).to have_error_message('test error') expect(span.status).to eq(1) + + expect(rack_span.get_tag(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE)).to eq('/error') end end @@ -296,6 +312,8 @@ expect(trace.resource).to eq('GET') + expect(rack_span.tags).not_to have_key(Datadog::Tracing::Metadata::Ext::HTTP::TAG_ROUTE) + expect(span.service).to eq(tracer.default_service) expect(span.resource).to eq('GET') expect(span.get_tag(Datadog::Tracing::Metadata::Ext::HTTP::TAG_METHOD)).to eq('GET') diff --git a/spec/datadog/tracing/contrib/stripe/request_spec.rb b/spec/datadog/tracing/contrib/stripe/request_spec.rb index 5159d07bde3..2a8f522c1ea 100644 --- a/spec/datadog/tracing/contrib/stripe/request_spec.rb +++ b/spec/datadog/tracing/contrib/stripe/request_spec.rb @@ -41,7 +41,9 @@ expect(spans).to have(1).items expect(span.name).to eq('stripe.request') expect(span.resource).to eq('stripe.request') - expect(span.get_tag('stripe.request.id')).to eq('abc-123-def-456') + if Gem::Version.new(Stripe::VERSION) >= Gem::Version.new('5.38.0') + expect(span.get_tag('stripe.request.id')).to eq('abc-123-def-456') + end expect(span.get_tag('stripe.request.http_status')).to eq('200') expect(span.get_tag('stripe.request.method')).to eq('get') expect(span.get_tag('stripe.request.path')).to eq('/v1/customers/cus_123') @@ -69,7 +71,9 @@ def object_name expect(spans).to have(1).items expect(span.name).to eq('stripe.request') expect(span.resource).to eq('stripe.customer') - expect(span.get_tag('stripe.request.id')).to eq('abc-123-def-456') + if Gem::Version.new(Stripe::VERSION) >= Gem::Version.new('5.38.0') + expect(span.get_tag('stripe.request.id')).to eq('abc-123-def-456') + end expect(span.get_tag('stripe.request.http_status')).to eq('200') expect(span.get_tag('stripe.request.method')).to eq('get') expect(span.get_tag('stripe.request.path')).to eq('/v1/customers/cus_123') diff --git a/tasks/appraisal_conversion.rb b/tasks/appraisal_conversion.rb new file mode 100644 index 00000000000..685c544911f --- /dev/null +++ b/tasks/appraisal_conversion.rb @@ -0,0 +1,49 @@ +require 'pathname' + +# This module translates our custom mapping between appraisal and bundler. +# +# It cannot be included into `Appraisal` file, because it was invoked via `instance_eval`. +module AppraisalConversion + module_function + + @gemfile_dir = 'gemfiles' + @definition_dir = 'appraisal' + + def to_bundle_gemfile(group) + gemfile = "#{runtime_identifier}_#{group}.gemfile".tr('-', '_') + path = root_path.join(gemfile_dir, gemfile) + + if path.exist? + path.to_s + else + raise "Gemfile not found at #{path}" + end + end + + def definition + path = root_path.join(@definition_dir, "#{runtime_identifier}.rb") + + if path.exist? + path.to_s + else + raise "Definition not found at #{path}" + end + end + + def runtime_identifier + major, minor, = Gem::Version.new(RUBY_ENGINE_VERSION).segments + "#{RUBY_ENGINE}-#{major}.#{minor}" + end + + def gemfile_pattern + root_path + gemfile_dir + "#{runtime_identifier.tr('-', '_')}_*.gemfile" + end + + def gemfile_dir + @gemfile_dir + end + + def root_path + Pathname.pwd + end +end diff --git a/tasks/dependency.rake b/tasks/dependency.rake new file mode 100644 index 00000000000..4af85eb1e9f --- /dev/null +++ b/tasks/dependency.rake @@ -0,0 +1,49 @@ +require 'open3' + +require_relative 'appraisal_conversion' + +task :dep => :dependency +task :dependency => %w[dependency:lock] +namespace :dependency do + # rubocop:disable Style/MultilineBlockChain + Dir.glob(AppraisalConversion.gemfile_pattern).each do |gemfile| + # desc "Lock the dependencies for #{gemfile}" + task gemfile do + Bundler.with_unbundled_env do + command = +'bundle lock' + command << ' --add-platform x86_64-linux aarch64-linux' unless RUBY_PLATFORM == 'java' + output, = Open3.capture2e({ 'BUNDLE_GEMFILE' => gemfile.to_s }, command) + + puts output + end + end + end.tap do |gemfiles| + desc "Lock the dependencies for #{AppraisalConversion.runtime_identifier}" + # WHY can't we use `multitask :lock => gemfiles` here? + # + # Running bundler in parallel has various race conditions + # + # Race condition with the file system, particularly worse with JRuby. + # For instance, `Errno::ENOENT: No such file or directory - bundle` is raised with JRuby 9.2 + + # Even with CRuby, `simplcov` declaration with `github` in Gemfile causes + # race condition for the local gem cache with the following error: + + # ``` + # [/usr/local/bundle/bundler/gems/simplecov-3bb6b7ee58bf/simplecov.gemspec] isn't a Gem::Specification (NilClass instead). + # ``` + + # and + + # ``` + # fatal: Unable to create '/usr/local/bundle/bundler/gems/simplecov-3bb6b7ee58bf/.git/index.lock': File exists. + # Another git process seems to be running in this repository, e.g. + # an editor opened by 'git commit'. Please make sure all processes + # are terminated then try again. If it still fails, a git process + # may have crashed in this repository earlier: + # remove the file manually to continue. + # ``` + task :lock => gemfiles + end + # rubocop:enable Style/MultilineBlockChain +end diff --git a/tasks/edge.rake b/tasks/edge.rake index aee5e675150..5ee9766ccff 100644 --- a/tasks/edge.rake +++ b/tasks/edge.rake @@ -1,47 +1,6 @@ -# frozen_string_literal: true - require 'open3' -require 'pathname' - -# This module translates our custom mapping between appraisal and bundler. -# -# It cannot be included into `Appraisal` file, because it was invoked via `instance_eval`. -module AppraisalConversion - module_function - - @gemfile_dir = 'gemfiles' - @definition_dir = 'appraisal' - - def to_bundle_gemfile(group) - gemfile = "#{runtime_identifier}_#{group}.gemfile".tr('-', '_') - path = root_path.join(@gemfile_dir, gemfile) - - if path.exist? - path.to_s - else - raise "Gemfile not found at #{path}" - end - end - - def definition - path = root_path.join(@definition_dir, "#{runtime_identifier}.rb") - if path.exist? - path.to_s - else - raise "Definition not found at #{path}" - end - end - - def runtime_identifier - major, minor, = Gem::Version.new(RUBY_ENGINE_VERSION).segments - "#{RUBY_ENGINE}-#{major}.#{minor}" - end - - def root_path - Pathname.pwd - end -end +require_relative 'appraisal_conversion' # rubocop:disable Metrics/BlockLength namespace :edge do