ddtrace 0.39.0 → 0.44.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (146) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +142 -115
  3. data/.circleci/images/primary/Dockerfile-3.0.0 +73 -0
  4. data/.github/workflows/add-milestone-to-pull-requests.yml +42 -0
  5. data/.github/workflows/create-next-milestone.yml +20 -0
  6. data/.gitlab-ci.yml +1 -0
  7. data/.simplecov +41 -0
  8. data/Appraisals +476 -120
  9. data/CHANGELOG.md +1115 -325
  10. data/CONTRIBUTING.md +2 -2
  11. data/Gemfile +4 -2
  12. data/Rakefile +665 -477
  13. data/ddtrace.gemspec +8 -8
  14. data/docker-compose.yml +30 -0
  15. data/docs/DevelopmentGuide.md +28 -2
  16. data/docs/GettingStarted.md +170 -41
  17. data/lib/ddtrace.rb +4 -0
  18. data/lib/ddtrace/buffer.rb +259 -52
  19. data/lib/ddtrace/configuration.rb +55 -5
  20. data/lib/ddtrace/configuration/components.rb +4 -7
  21. data/lib/ddtrace/configuration/options.rb +3 -1
  22. data/lib/ddtrace/configuration/settings.rb +9 -3
  23. data/lib/ddtrace/context.rb +18 -0
  24. data/lib/ddtrace/context_provider.rb +17 -5
  25. data/lib/ddtrace/contrib/action_pack/action_controller/instrumentation.rb +0 -7
  26. data/lib/ddtrace/contrib/action_view/event.rb +0 -4
  27. data/lib/ddtrace/contrib/action_view/events/render_partial.rb +1 -0
  28. data/lib/ddtrace/contrib/action_view/events/render_template.rb +1 -0
  29. data/lib/ddtrace/contrib/active_record/events/sql.rb +4 -0
  30. data/lib/ddtrace/contrib/active_record/utils.rb +11 -1
  31. data/lib/ddtrace/contrib/active_support/cache/instrumentation.rb +104 -3
  32. data/lib/ddtrace/contrib/active_support/cache/patcher.rb +21 -0
  33. data/lib/ddtrace/contrib/active_support/ext.rb +3 -0
  34. data/lib/ddtrace/contrib/active_support/notifications/event.rb +10 -0
  35. data/lib/ddtrace/contrib/active_support/notifications/subscription.rb +2 -2
  36. data/lib/ddtrace/contrib/aws/instrumentation.rb +6 -1
  37. data/lib/ddtrace/contrib/aws/patcher.rb +0 -1
  38. data/lib/ddtrace/contrib/aws/services.rb +1 -0
  39. data/lib/ddtrace/contrib/configurable.rb +2 -0
  40. data/lib/ddtrace/contrib/configuration/resolvers/pattern_resolver.rb +6 -5
  41. data/lib/ddtrace/contrib/cucumber/configuration/settings.rb +38 -0
  42. data/lib/ddtrace/contrib/cucumber/ext.rb +19 -0
  43. data/lib/ddtrace/contrib/cucumber/formatter.rb +104 -0
  44. data/lib/ddtrace/contrib/cucumber/instrumentation.rb +24 -0
  45. data/lib/ddtrace/contrib/cucumber/integration.rb +40 -0
  46. data/lib/ddtrace/contrib/cucumber/patcher.rb +23 -0
  47. data/lib/ddtrace/contrib/dalli/instrumentation.rb +4 -0
  48. data/lib/ddtrace/contrib/delayed_job/configuration/settings.rb +2 -0
  49. data/lib/ddtrace/contrib/delayed_job/ext.rb +2 -0
  50. data/lib/ddtrace/contrib/delayed_job/plugin.rb +39 -15
  51. data/lib/ddtrace/contrib/elasticsearch/patcher.rb +4 -0
  52. data/lib/ddtrace/contrib/ethon/easy_patch.rb +5 -3
  53. data/lib/ddtrace/contrib/ethon/ext.rb +1 -0
  54. data/lib/ddtrace/contrib/ethon/multi_patch.rb +4 -0
  55. data/lib/ddtrace/contrib/excon/middleware.rb +11 -1
  56. data/lib/ddtrace/contrib/faraday/middleware.rb +4 -0
  57. data/lib/ddtrace/contrib/faraday/patcher.rb +1 -1
  58. data/lib/ddtrace/contrib/grape/configuration/settings.rb +7 -0
  59. data/lib/ddtrace/contrib/grape/endpoint.rb +53 -18
  60. data/lib/ddtrace/contrib/grape/ext.rb +1 -0
  61. data/lib/ddtrace/contrib/grpc/datadog_interceptor/client.rb +5 -1
  62. data/lib/ddtrace/contrib/grpc/datadog_interceptor/server.rb +4 -0
  63. data/lib/ddtrace/contrib/http/instrumentation.rb +6 -2
  64. data/lib/ddtrace/contrib/httprb/instrumentation.rb +6 -3
  65. data/lib/ddtrace/contrib/kafka/event.rb +1 -1
  66. data/lib/ddtrace/contrib/mongodb/subscribers.rb +4 -0
  67. data/lib/ddtrace/contrib/mysql2/instrumentation.rb +4 -0
  68. data/lib/ddtrace/contrib/presto/instrumentation.rb +3 -0
  69. data/lib/ddtrace/contrib/qless/configuration/settings.rb +35 -0
  70. data/lib/ddtrace/contrib/qless/ext.rb +20 -0
  71. data/lib/ddtrace/contrib/qless/integration.rb +38 -0
  72. data/lib/ddtrace/contrib/qless/patcher.rb +35 -0
  73. data/lib/ddtrace/contrib/qless/qless_job.rb +72 -0
  74. data/lib/ddtrace/contrib/qless/tracer_cleaner.rb +32 -0
  75. data/lib/ddtrace/contrib/que/configuration/settings.rb +43 -0
  76. data/lib/ddtrace/contrib/que/ext.rb +30 -0
  77. data/lib/ddtrace/contrib/que/integration.rb +42 -0
  78. data/lib/ddtrace/contrib/que/patcher.rb +24 -0
  79. data/lib/ddtrace/contrib/que/tracer.rb +57 -0
  80. data/lib/ddtrace/contrib/racecar/event.rb +4 -0
  81. data/lib/ddtrace/contrib/racecar/events.rb +2 -0
  82. data/lib/ddtrace/contrib/racecar/events/consume.rb +27 -0
  83. data/lib/ddtrace/contrib/racecar/ext.rb +1 -0
  84. data/lib/ddtrace/contrib/rack/middlewares.rb +2 -0
  85. data/lib/ddtrace/contrib/rails/configuration/settings.rb +5 -0
  86. data/lib/ddtrace/contrib/rails/ext.rb +1 -0
  87. data/lib/ddtrace/contrib/rails/log_injection.rb +81 -0
  88. data/lib/ddtrace/contrib/rails/middlewares.rb +7 -2
  89. data/lib/ddtrace/contrib/rails/patcher.rb +29 -0
  90. data/lib/ddtrace/contrib/redis/configuration/resolver.rb +3 -1
  91. data/lib/ddtrace/contrib/redis/configuration/settings.rb +5 -0
  92. data/lib/ddtrace/contrib/redis/ext.rb +1 -0
  93. data/lib/ddtrace/contrib/redis/patcher.rb +20 -3
  94. data/lib/ddtrace/contrib/redis/quantize.rb +27 -0
  95. data/lib/ddtrace/contrib/redis/tags.rb +9 -1
  96. data/lib/ddtrace/contrib/resque/configuration/settings.rb +1 -0
  97. data/lib/ddtrace/contrib/resque/integration.rb +1 -1
  98. data/lib/ddtrace/contrib/resque/resque_job.rb +1 -1
  99. data/lib/ddtrace/contrib/rest_client/request_patch.rb +4 -0
  100. data/lib/ddtrace/contrib/rspec/configuration/settings.rb +38 -0
  101. data/lib/ddtrace/contrib/rspec/example.rb +61 -0
  102. data/lib/ddtrace/contrib/rspec/example_group.rb +61 -0
  103. data/lib/ddtrace/contrib/rspec/ext.rb +19 -0
  104. data/lib/ddtrace/contrib/rspec/integration.rb +41 -0
  105. data/lib/ddtrace/contrib/rspec/patcher.rb +25 -0
  106. data/lib/ddtrace/contrib/sequel/database.rb +3 -1
  107. data/lib/ddtrace/contrib/sequel/dataset.rb +3 -2
  108. data/lib/ddtrace/contrib/sequel/ext.rb +1 -0
  109. data/lib/ddtrace/contrib/sequel/utils.rb +16 -5
  110. data/lib/ddtrace/contrib/shoryuken/configuration/settings.rb +1 -0
  111. data/lib/ddtrace/contrib/shoryuken/tracer.rb +4 -1
  112. data/lib/ddtrace/contrib/sidekiq/configuration/settings.rb +1 -0
  113. data/lib/ddtrace/contrib/sidekiq/server_tracer.rb +4 -1
  114. data/lib/ddtrace/contrib/sinatra/env.rb +5 -4
  115. data/lib/ddtrace/contrib/sinatra/tracer.rb +21 -42
  116. data/lib/ddtrace/contrib/sinatra/tracer_middleware.rb +50 -23
  117. data/lib/ddtrace/contrib/sneakers/configuration/settings.rb +1 -0
  118. data/lib/ddtrace/contrib/sneakers/tracer.rb +17 -20
  119. data/lib/ddtrace/contrib/status_code_matcher.rb +67 -0
  120. data/lib/ddtrace/ext/app_types.rb +1 -0
  121. data/lib/ddtrace/ext/ci.rb +264 -0
  122. data/lib/ddtrace/ext/distributed.rb +8 -2
  123. data/lib/ddtrace/ext/git.rb +12 -0
  124. data/lib/ddtrace/ext/integration.rb +8 -0
  125. data/lib/ddtrace/ext/runtime.rb +2 -0
  126. data/lib/ddtrace/ext/test.rb +24 -0
  127. data/lib/ddtrace/opentracer/distributed_headers.rb +1 -1
  128. data/lib/ddtrace/propagation/grpc_propagator.rb +18 -6
  129. data/lib/ddtrace/runtime/identity.rb +4 -5
  130. data/lib/ddtrace/runtime/metrics.rb +6 -2
  131. data/lib/ddtrace/sampler.rb +2 -2
  132. data/lib/ddtrace/sampling/rate_limiter.rb +65 -16
  133. data/lib/ddtrace/span.rb +152 -27
  134. data/lib/ddtrace/tracer.rb +25 -13
  135. data/lib/ddtrace/transport/http/adapters/net.rb +8 -2
  136. data/lib/ddtrace/transport/http/statistics.rb +14 -1
  137. data/lib/ddtrace/transport/traces.rb +7 -2
  138. data/lib/ddtrace/utils.rb +16 -13
  139. data/lib/ddtrace/utils/forking.rb +52 -0
  140. data/lib/ddtrace/version.rb +1 -1
  141. data/lib/ddtrace/workers/async.rb +2 -2
  142. data/lib/ddtrace/workers/loop.rb +1 -1
  143. data/lib/ddtrace/workers/polling.rb +1 -1
  144. data/lib/ddtrace/workers/runtime_metrics.rb +7 -3
  145. data/lib/ddtrace/writer.rb +19 -1
  146. metadata +147 -42
@@ -56,7 +56,7 @@ We welcome code contributions to the library, which you can [submit as a pull re
56
56
  2. **Make any changes** for your patch.
57
57
  3. **Write tests** that demonstrate how the feature works or how the bug is fixed.
58
58
  4. **Update any documentation** such as `docs/GettingStarted.md`, especially for new features.
59
- 5. **Submit the pull request** from your fork back to https://github.com/DataDog/dd-trace-rb. Bugs should merge back to `master`, and new features should merge back to the latest `dev` branch (e.g. `0.24-dev`).
59
+ 5. **Submit the pull request** from your fork back to the latest revision of the `master` branch on https://github.com/DataDog/dd-trace-rb.
60
60
 
61
61
  The pull request will be run through our CI pipeline, and a project member will review the changes with you. At a minimum, to be accepted and merged, pull requests must:
62
62
 
@@ -76,7 +76,7 @@ We also recommend that you share in your description:
76
76
 
77
77
  Pull requests will be reviewed and added to [our Community project](https://github.com/DataDog/dd-trace-rb/projects/2).
78
78
 
79
- For more information on common topics such as debugging locally, or how to write new integrations, check out [our development guide](https://github.com/DataDog/dd-trace-rb/docs/DevelopmentGuide.md). If at any point you have a question or need assistance with your pull request, feel free to mention a project member! We're always happy to help contributors with their pull requests.
79
+ For more information on common topics such as debugging locally, or how to write new integrations, check out [our development guide](https://github.com/DataDog/dd-trace-rb/blob/master/docs/DevelopmentGuide.md). If at any point you have a question or need assistance with your pull request, feel free to mention a project member! We're always happy to help contributors with their pull requests.
80
80
 
81
81
  ## Final word
82
82
 
data/Gemfile CHANGED
@@ -2,6 +2,8 @@ source 'https://rubygems.org'
2
2
 
3
3
  gemspec
4
4
 
5
- # Add debugger for pry that's compatible with 0.10.4
6
- gem 'pry-nav', git: 'https://github.com/nixme/pry-nav.git', branch: 'master'
5
+ if RUBY_VERSION >= '3.0.0'
6
+ gem 'webrick', '>= 1.7.0' # No longer bundled by default since Ruby 3.0
7
+ end
8
+
7
9
  # This file was generated by Appraisal
data/Rakefile CHANGED
@@ -85,6 +85,7 @@ namespace :spec do
85
85
  :active_support,
86
86
  :aws,
87
87
  :concurrent_ruby,
88
+ :cucumber,
88
89
  :dalli,
89
90
  :delayed_job,
90
91
  :elasticsearch,
@@ -100,12 +101,15 @@ namespace :spec do
100
101
  :mongodb,
101
102
  :mysql2,
102
103
  :presto,
104
+ :qless,
105
+ :que,
103
106
  :racecar,
104
107
  :rack,
105
108
  :rake,
106
109
  :redis,
107
110
  :resque,
108
111
  :rest_client,
112
+ :rspec,
109
113
  :sequel,
110
114
  :shoryuken,
111
115
  :sidekiq,
@@ -142,8 +146,6 @@ namespace :test do
142
146
  end
143
147
 
144
148
  [
145
- :grape,
146
- :sucker_punch
147
149
  ].each do |contrib|
148
150
  Rake::TestTask.new(contrib) do |t|
149
151
  t.libs << %w[test lib]
@@ -185,6 +187,21 @@ task :'release:docs' => :docs do
185
187
  sh "aws s3 cp --recursive doc/ s3://#{S3_BUCKET}/#{S3_DIR}/docs/"
186
188
  end
187
189
 
190
+ # Declare a command for execution.
191
+ # Jobs are parallelized if running in CI.
192
+ def declare(*args)
193
+ total_executors = ENV.key?('CIRCLE_NODE_TOTAL') ? ENV['CIRCLE_NODE_TOTAL'].to_i : nil
194
+ current_executor = ENV.key?('CIRCLE_NODE_INDEX') ? ENV['CIRCLE_NODE_INDEX'].to_i : nil
195
+
196
+ if total_executors && current_executor && total_executors > 1
197
+ @execution_count ||= 0
198
+ @execution_count += 1
199
+ sh(*args) if @execution_count % total_executors == current_executor
200
+ else
201
+ sh(*args)
202
+ end
203
+ end
204
+
188
205
  desc 'CI task; it runs all tests for current version of Ruby'
189
206
  task :ci do
190
207
  if Gem::Version.new(RUBY_VERSION) < Gem::Version.new(Datadog::VERSION::MINIMUM_RUBY_VERSION)
@@ -192,564 +209,735 @@ task :ci do
192
209
  elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
193
210
  && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.1.0')
194
211
  # Main library
195
- sh 'bundle exec rake test:main'
196
- sh 'bundle exec rake spec:main'
197
- sh 'bundle exec rake spec:contrib'
198
- # Benchmarks
199
- sh 'bundle exec rake spec:benchmark'
212
+ declare 'bundle exec rake test:main'
213
+ declare 'bundle exec rake spec:main'
214
+ declare 'bundle exec rake spec:contrib'
200
215
 
201
216
  if RUBY_PLATFORM != 'java'
202
217
  # Contrib minitests
203
- sh 'bundle exec appraisal contrib-old rake test:monkey'
204
- sh 'bundle exec appraisal contrib-old rake test:sucker_punch'
218
+ declare 'bundle exec appraisal contrib-old rake test:monkey'
205
219
  # Contrib specs
206
- sh 'bundle exec appraisal contrib-old rake spec:active_model_serializers'
207
- sh 'bundle exec appraisal contrib-old rake spec:active_record'
208
- sh 'bundle exec appraisal contrib-old rake spec:active_support'
209
- sh 'bundle exec appraisal contrib-old rake spec:aws'
210
- sh 'bundle exec appraisal contrib-old rake spec:concurrent_ruby'
211
- sh 'bundle exec appraisal contrib-old rake spec:dalli'
212
- sh 'bundle exec appraisal contrib-old rake spec:delayed_job'
213
- sh 'bundle exec appraisal contrib-old rake spec:elasticsearch'
214
- sh 'bundle exec appraisal contrib-old rake spec:ethon'
215
- sh 'bundle exec appraisal contrib-old rake spec:excon'
216
- sh 'bundle exec appraisal contrib-old rake spec:faraday'
217
- sh 'bundle exec appraisal contrib-old rake spec:http'
218
- sh 'bundle exec appraisal contrib-old rake spec:httprb'
219
- sh 'bundle exec appraisal contrib-old rake spec:mongodb'
220
- sh 'bundle exec appraisal contrib-old rake spec:mysql2'
221
- sh 'bundle exec appraisal contrib-old rake spec:rack'
222
- sh 'bundle exec appraisal contrib-old rake spec:rake'
223
- sh 'bundle exec appraisal contrib-old rake spec:redis'
224
- sh 'bundle exec appraisal contrib-old rake spec:resque'
225
- sh 'bundle exec appraisal contrib-old rake spec:rest_client'
226
- sh 'bundle exec appraisal contrib-old rake spec:sequel'
227
- sh 'bundle exec appraisal contrib-old rake spec:sidekiq'
228
- sh 'bundle exec appraisal contrib-old rake spec:sinatra'
229
- sh 'bundle exec appraisal contrib-old rake spec:sucker_punch'
230
- sh 'bundle exec appraisal contrib-old rake spec:suite'
220
+ declare 'bundle exec appraisal contrib-old rake spec:active_model_serializers'
221
+ declare 'bundle exec appraisal contrib-old rake spec:active_record'
222
+ declare 'bundle exec appraisal contrib-old rake spec:active_support'
223
+ declare 'bundle exec appraisal contrib-old rake spec:aws'
224
+ declare 'bundle exec appraisal contrib-old rake spec:concurrent_ruby'
225
+ declare 'bundle exec appraisal contrib-old rake spec:dalli'
226
+ declare 'bundle exec appraisal contrib-old rake spec:delayed_job'
227
+ declare 'bundle exec appraisal contrib-old rake spec:elasticsearch'
228
+ declare 'bundle exec appraisal contrib-old rake spec:ethon'
229
+ declare 'bundle exec appraisal contrib-old rake spec:excon'
230
+ declare 'bundle exec appraisal contrib-old rake spec:faraday'
231
+ declare 'bundle exec appraisal contrib-old rake spec:http'
232
+ declare 'bundle exec appraisal contrib-old rake spec:httprb'
233
+ declare 'bundle exec appraisal contrib-old rake spec:mongodb'
234
+ declare 'bundle exec appraisal contrib-old rake spec:mysql2'
235
+ declare 'bundle exec appraisal contrib-old rake spec:rack'
236
+ declare 'bundle exec appraisal contrib-old rake spec:rake'
237
+ declare 'bundle exec appraisal contrib-old rake spec:redis'
238
+ declare 'bundle exec appraisal contrib-old rake spec:resque'
239
+ declare 'bundle exec appraisal contrib-old rake spec:rest_client'
240
+ declare 'bundle exec appraisal contrib-old rake spec:rspec'
241
+ declare 'bundle exec appraisal contrib-old rake spec:sequel'
242
+ declare 'bundle exec appraisal contrib-old rake spec:sidekiq'
243
+ declare 'bundle exec appraisal contrib-old rake spec:sinatra'
244
+ declare 'bundle exec appraisal contrib-old rake spec:sucker_punch'
245
+ declare 'bundle exec appraisal contrib-old rake spec:suite'
231
246
  # Rails minitests
232
- sh 'bundle exec appraisal rails30-postgres rake test:rails'
233
- sh 'bundle exec appraisal rails30-postgres rake spec:railsdisableenv'
234
- sh 'bundle exec appraisal rails32-mysql2 rake test:rails'
235
- sh 'bundle exec appraisal rails32-postgres rake test:rails'
236
- sh 'bundle exec appraisal rails32-postgres-redis rake spec:railsredis'
237
- sh 'bundle exec appraisal rails32-postgres rake spec:railsdisableenv'
247
+ declare 'bundle exec appraisal rails30-postgres rake test:rails'
248
+ declare 'bundle exec appraisal rails30-postgres rake spec:railsdisableenv'
249
+ declare 'bundle exec appraisal rails32-mysql2 rake test:rails'
250
+ declare 'bundle exec appraisal rails32-postgres rake test:rails'
251
+ declare 'bundle exec appraisal rails32-postgres-redis rake spec:railsredis'
252
+ declare 'bundle exec appraisal rails32-postgres rake spec:railsdisableenv'
238
253
  # Rails specs
239
- sh 'bundle exec appraisal rails30-postgres rake spec:rails'
240
- sh 'bundle exec appraisal rails32-mysql2 rake spec:rails'
241
- sh 'bundle exec appraisal rails32-postgres rake spec:rails'
254
+ declare 'bundle exec appraisal rails30-postgres rake spec:rails'
255
+ declare 'bundle exec appraisal rails32-mysql2 rake spec:rails'
256
+ declare 'bundle exec appraisal rails32-postgres rake spec:rails'
242
257
  # Rails suite specs
243
- sh 'bundle exec appraisal rails32-postgres rake spec:action_pack'
244
- sh 'bundle exec appraisal rails32-postgres rake spec:action_view'
245
- sh 'bundle exec appraisal rails32-mysql2 rake spec:active_record'
246
- sh 'bundle exec appraisal rails32-postgres rake spec:active_support'
258
+ declare 'bundle exec appraisal rails32-postgres rake spec:action_pack'
259
+ declare 'bundle exec appraisal rails32-postgres rake spec:action_view'
260
+ declare 'bundle exec appraisal rails32-mysql2 rake spec:active_record'
261
+ declare 'bundle exec appraisal rails32-postgres rake spec:active_support'
247
262
  end
248
263
  elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
249
264
  && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.2.0')
250
265
  # Main library
251
- sh 'bundle exec rake test:main'
252
- sh 'bundle exec rake spec:main'
253
- sh 'bundle exec rake spec:contrib'
254
- sh 'bundle exec rake spec:opentracer'
255
- # Benchmarks
256
- sh 'bundle exec rake spec:benchmark'
266
+ declare 'bundle exec rake test:main'
267
+ declare 'bundle exec rake spec:main'
268
+ declare 'bundle exec rake spec:contrib'
269
+ declare 'bundle exec rake spec:opentracer'
257
270
 
258
271
  if RUBY_PLATFORM != 'java'
259
272
  # Contrib minitests
260
- sh 'bundle exec appraisal contrib-old rake test:monkey'
261
- sh 'bundle exec appraisal contrib-old rake test:sucker_punch'
273
+ declare 'bundle exec appraisal contrib-old rake test:monkey'
262
274
  # Contrib specs
263
- sh 'bundle exec appraisal contrib-old rake spec:active_model_serializers'
264
- sh 'bundle exec appraisal contrib-old rake spec:active_record'
265
- sh 'bundle exec appraisal contrib-old rake spec:active_support'
266
- sh 'bundle exec appraisal contrib-old rake spec:aws'
267
- sh 'bundle exec appraisal contrib-old rake spec:concurrent_ruby'
268
- sh 'bundle exec appraisal contrib-old rake spec:dalli'
269
- sh 'bundle exec appraisal contrib-old rake spec:delayed_job'
270
- sh 'bundle exec appraisal contrib-old rake spec:elasticsearch'
271
- sh 'bundle exec appraisal contrib-old rake spec:ethon'
272
- sh 'bundle exec appraisal contrib-old rake spec:excon'
273
- sh 'bundle exec appraisal contrib-old rake spec:faraday'
274
- sh 'bundle exec appraisal contrib-old rake spec:http'
275
- sh 'bundle exec appraisal contrib-old rake spec:httprb'
276
- sh 'bundle exec appraisal contrib-old rake spec:mongodb'
277
- sh 'bundle exec appraisal contrib-old rake spec:mysql2'
278
- sh 'bundle exec appraisal contrib-old rake spec:presto'
279
- sh 'bundle exec appraisal contrib-old rake spec:rack'
280
- sh 'bundle exec appraisal contrib-old rake spec:rake'
281
- sh 'bundle exec appraisal contrib-old rake spec:redis'
282
- sh 'bundle exec appraisal contrib-old rake spec:resque'
283
- sh 'bundle exec appraisal contrib-old rake spec:rest_client'
284
- sh 'bundle exec appraisal contrib-old rake spec:sequel'
285
- sh 'bundle exec appraisal contrib-old rake spec:sidekiq'
286
- sh 'bundle exec appraisal contrib-old rake spec:sinatra'
287
- sh 'bundle exec appraisal contrib-old rake spec:sucker_punch'
288
- sh 'bundle exec appraisal contrib-old rake spec:suite'
275
+ declare 'bundle exec appraisal contrib-old rake spec:active_model_serializers'
276
+ declare 'bundle exec appraisal contrib-old rake spec:active_record'
277
+ declare 'bundle exec appraisal contrib-old rake spec:active_support'
278
+ declare 'bundle exec appraisal contrib-old rake spec:aws'
279
+ declare 'bundle exec appraisal contrib-old rake spec:concurrent_ruby'
280
+ declare 'bundle exec appraisal contrib-old rake spec:dalli'
281
+ declare 'bundle exec appraisal contrib-old rake spec:delayed_job'
282
+ declare 'bundle exec appraisal contrib-old rake spec:elasticsearch'
283
+ declare 'bundle exec appraisal contrib-old rake spec:ethon'
284
+ declare 'bundle exec appraisal contrib-old rake spec:excon'
285
+ declare 'bundle exec appraisal contrib-old rake spec:faraday'
286
+ declare 'bundle exec appraisal contrib-old rake spec:http'
287
+ declare 'bundle exec appraisal contrib-old rake spec:httprb'
288
+ declare 'bundle exec appraisal contrib-old rake spec:kafka'
289
+ declare 'bundle exec appraisal contrib-old rake spec:mongodb'
290
+ declare 'bundle exec appraisal contrib-old rake spec:mysql2'
291
+ declare 'bundle exec appraisal contrib-old rake spec:presto'
292
+ declare 'bundle exec appraisal contrib-old rake spec:rack'
293
+ declare 'bundle exec appraisal contrib-old rake spec:rake'
294
+ declare 'bundle exec appraisal contrib-old rake spec:redis'
295
+ declare 'bundle exec appraisal contrib-old rake spec:resque'
296
+ declare 'bundle exec appraisal contrib-old rake spec:rest_client'
297
+ declare 'bundle exec appraisal contrib-old rake spec:rspec'
298
+ declare 'bundle exec appraisal contrib-old rake spec:sequel'
299
+ declare 'bundle exec appraisal contrib-old rake spec:sidekiq'
300
+ declare 'bundle exec appraisal contrib-old rake spec:sinatra'
301
+ declare 'bundle exec appraisal contrib-old rake spec:sucker_punch'
302
+ declare 'bundle exec appraisal contrib-old rake spec:suite'
289
303
  # Rails minitests
290
- sh 'bundle exec appraisal rails30-postgres rake test:rails'
291
- sh 'bundle exec appraisal rails30-postgres rake spec:railsdisableenv'
292
- sh 'bundle exec appraisal rails32-mysql2 rake test:rails'
293
- sh 'bundle exec appraisal rails32-postgres rake test:rails'
294
- sh 'bundle exec appraisal rails32-postgres-redis rake spec:railsredis'
295
- sh 'bundle exec appraisal rails32-postgres rake spec:railsdisableenv'
296
- sh 'bundle exec appraisal rails4-mysql2 rake test:rails'
297
- sh 'bundle exec appraisal rails4-postgres rake test:rails'
298
- sh 'bundle exec appraisal rails4-postgres-redis rake spec:railsredis'
299
- sh 'bundle exec appraisal rails4-postgres rake spec:railsdisableenv'
304
+ declare 'bundle exec appraisal rails30-postgres rake test:rails'
305
+ declare 'bundle exec appraisal rails30-postgres rake spec:railsdisableenv'
306
+ declare 'bundle exec appraisal rails32-mysql2 rake test:rails'
307
+ declare 'bundle exec appraisal rails32-postgres rake test:rails'
308
+ declare 'bundle exec appraisal rails32-postgres-redis rake spec:railsredis'
309
+ declare 'bundle exec appraisal rails32-postgres rake spec:railsdisableenv'
310
+ declare 'bundle exec appraisal rails4-mysql2 rake test:rails'
311
+ declare 'bundle exec appraisal rails4-postgres rake test:rails'
312
+ declare 'bundle exec appraisal rails4-postgres-redis rake spec:railsredis'
313
+ declare 'bundle exec appraisal rails4-postgres rake spec:railsdisableenv'
300
314
  # Rails specs
301
- sh 'bundle exec appraisal rails30-postgres rake spec:rails'
302
- sh 'bundle exec appraisal rails32-mysql2 rake spec:rails'
303
- sh 'bundle exec appraisal rails32-postgres rake spec:rails'
304
- sh 'bundle exec appraisal rails4-mysql2 rake spec:rails'
305
- sh 'bundle exec appraisal rails4-postgres rake spec:rails'
315
+ declare 'bundle exec appraisal rails30-postgres rake spec:rails'
316
+ declare 'bundle exec appraisal rails32-mysql2 rake spec:rails'
317
+ declare 'bundle exec appraisal rails32-postgres rake spec:rails'
318
+ declare 'bundle exec appraisal rails4-mysql2 rake spec:rails'
319
+ declare 'bundle exec appraisal rails4-postgres rake spec:rails'
306
320
  # Rails suite specs
307
- sh 'bundle exec appraisal rails32-postgres rake spec:action_pack'
308
- sh 'bundle exec appraisal rails32-postgres rake spec:action_view'
309
- sh 'bundle exec appraisal rails32-mysql2 rake spec:active_record'
310
- sh 'bundle exec appraisal rails32-postgres rake spec:active_support'
321
+ declare 'bundle exec appraisal rails32-postgres rake spec:action_pack'
322
+ declare 'bundle exec appraisal rails32-postgres rake spec:action_view'
323
+ declare 'bundle exec appraisal rails32-mysql2 rake spec:active_record'
324
+ declare 'bundle exec appraisal rails32-postgres rake spec:active_support'
311
325
  end
312
326
  elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION)\
313
327
  && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.3.0')
314
328
  # Main library
315
- sh 'bundle exec rake test:main'
316
- sh 'bundle exec rake spec:main'
317
- sh 'bundle exec rake spec:contrib'
318
- sh 'bundle exec rake spec:opentracer'
319
- # Benchmarks
320
- sh 'bundle exec rake spec:benchmark'
329
+ declare 'bundle exec rake test:main'
330
+ declare 'bundle exec rake spec:main'
331
+ declare 'bundle exec rake spec:contrib'
332
+ declare 'bundle exec rake spec:opentracer'
321
333
 
322
334
  if RUBY_PLATFORM != 'java'
323
335
  # Contrib minitests
324
- sh 'bundle exec appraisal contrib rake test:grape'
325
- sh 'bundle exec appraisal contrib rake test:sucker_punch'
326
336
  # Contrib specs
327
- sh 'bundle exec appraisal contrib rake spec:action_pack'
328
- sh 'bundle exec appraisal contrib rake spec:action_view'
329
- sh 'bundle exec appraisal contrib rake spec:active_model_serializers'
330
- sh 'bundle exec appraisal contrib rake spec:active_record'
331
- sh 'bundle exec appraisal contrib rake spec:active_support'
332
- sh 'bundle exec appraisal contrib rake spec:aws'
333
- sh 'bundle exec appraisal contrib rake spec:concurrent_ruby'
334
- sh 'bundle exec appraisal contrib rake spec:dalli'
335
- sh 'bundle exec appraisal contrib rake spec:delayed_job'
336
- sh 'bundle exec appraisal contrib rake spec:elasticsearch'
337
- sh 'bundle exec appraisal contrib rake spec:ethon'
338
- sh 'bundle exec appraisal contrib rake spec:excon'
339
- sh 'bundle exec appraisal contrib rake spec:faraday'
340
- sh 'bundle exec appraisal contrib rake spec:grape'
341
- sh 'bundle exec appraisal contrib rake spec:graphql'
342
- sh 'bundle exec appraisal contrib rake spec:grpc'
343
- sh 'bundle exec appraisal contrib rake spec:http'
344
- sh 'bundle exec appraisal contrib rake spec:httprb'
345
- sh 'bundle exec appraisal contrib rake spec:mongodb'
346
- sh 'bundle exec appraisal contrib rake spec:mysql2'
347
- sh 'bundle exec appraisal contrib rake spec:presto'
348
- sh 'bundle exec appraisal contrib rake spec:racecar'
349
- sh 'bundle exec appraisal contrib rake spec:rack'
350
- sh 'bundle exec appraisal contrib rake spec:rake'
351
- sh 'bundle exec appraisal contrib rake spec:redis'
352
- sh 'bundle exec appraisal contrib rake spec:resque'
353
- sh 'bundle exec appraisal contrib rake spec:rest_client'
354
- sh 'bundle exec appraisal contrib rake spec:sequel'
355
- sh 'bundle exec appraisal contrib rake spec:shoryuken'
356
- sh 'bundle exec appraisal contrib rake spec:sidekiq'
357
- sh 'bundle exec appraisal contrib rake spec:sinatra'
358
- sh 'bundle exec appraisal contrib rake spec:sneakers'
359
- sh 'bundle exec appraisal contrib rake spec:sucker_punch'
360
- sh 'bundle exec appraisal contrib rake spec:suite'
337
+ declare 'bundle exec appraisal contrib rake spec:action_pack'
338
+ declare 'bundle exec appraisal contrib rake spec:action_view'
339
+ declare 'bundle exec appraisal contrib rake spec:active_model_serializers'
340
+ declare 'bundle exec appraisal contrib rake spec:active_record'
341
+ declare 'bundle exec appraisal contrib rake spec:active_support'
342
+ declare 'bundle exec appraisal contrib rake spec:aws'
343
+ declare 'bundle exec appraisal contrib rake spec:concurrent_ruby'
344
+ declare 'bundle exec appraisal contrib rake spec:dalli'
345
+ declare 'bundle exec appraisal contrib rake spec:delayed_job'
346
+ declare 'bundle exec appraisal contrib rake spec:elasticsearch'
347
+ declare 'bundle exec appraisal contrib rake spec:ethon'
348
+ declare 'bundle exec appraisal contrib rake spec:excon'
349
+ declare 'bundle exec appraisal contrib rake spec:faraday'
350
+ declare 'bundle exec appraisal contrib rake spec:grape'
351
+ declare 'bundle exec appraisal contrib rake spec:graphql'
352
+ declare 'bundle exec appraisal contrib rake spec:grpc'
353
+ declare 'bundle exec appraisal contrib rake spec:http'
354
+ declare 'bundle exec appraisal contrib rake spec:httprb'
355
+ declare 'bundle exec appraisal contrib rake spec:kafka'
356
+ declare 'bundle exec appraisal contrib rake spec:mongodb'
357
+ declare 'bundle exec appraisal contrib rake spec:mysql2'
358
+ declare 'bundle exec appraisal contrib rake spec:presto'
359
+ declare 'bundle exec appraisal contrib rake spec:qless'
360
+ declare 'bundle exec appraisal contrib rake spec:que'
361
+ declare 'bundle exec appraisal contrib rake spec:racecar'
362
+ declare 'bundle exec appraisal contrib rake spec:rack'
363
+ declare 'bundle exec appraisal contrib rake spec:rake'
364
+ declare 'bundle exec appraisal contrib rake spec:redis'
365
+ declare 'bundle exec appraisal contrib rake spec:resque'
366
+ declare 'bundle exec appraisal contrib rake spec:rest_client'
367
+ declare 'bundle exec appraisal contrib rake spec:rspec'
368
+ declare 'bundle exec appraisal contrib rake spec:sequel'
369
+ declare 'bundle exec appraisal contrib rake spec:shoryuken'
370
+ declare 'bundle exec appraisal contrib rake spec:sidekiq'
371
+ declare 'bundle exec appraisal contrib rake spec:sinatra'
372
+ declare 'bundle exec appraisal contrib rake spec:sneakers'
373
+ declare 'bundle exec appraisal contrib rake spec:sucker_punch'
374
+ declare 'bundle exec appraisal contrib rake spec:suite'
361
375
  # Rails minitests
362
- sh 'bundle exec appraisal rails30-postgres rake test:rails'
363
- sh 'bundle exec appraisal rails30-postgres rake spec:railsdisableenv'
364
- sh 'bundle exec appraisal rails32-mysql2 rake test:rails'
365
- sh 'bundle exec appraisal rails32-postgres rake test:rails'
366
- sh 'bundle exec appraisal rails32-postgres-redis rake spec:railsredis'
367
- sh 'bundle exec appraisal rails32-postgres rake spec:railsdisableenv'
368
- sh 'bundle exec appraisal rails4-mysql2 rake test:rails'
369
- sh 'bundle exec appraisal rails4-postgres rake test:rails'
370
- sh 'bundle exec appraisal rails4-postgres-redis rake spec:railsredis'
371
- sh 'bundle exec appraisal rails4-postgres rake spec:railsdisableenv'
372
- sh 'bundle exec appraisal rails4-postgres-sidekiq rake spec:railsactivejob'
373
- sh 'bundle exec appraisal rails5-mysql2 rake test:rails'
374
- sh 'bundle exec appraisal rails5-postgres rake test:rails'
375
- sh 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
376
- sh 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
377
- sh 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
378
- sh 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
376
+ declare 'bundle exec appraisal rails30-postgres rake test:rails'
377
+ declare 'bundle exec appraisal rails30-postgres rake spec:railsdisableenv'
378
+ declare 'bundle exec appraisal rails32-mysql2 rake test:rails'
379
+ declare 'bundle exec appraisal rails32-postgres rake test:rails'
380
+ declare 'bundle exec appraisal rails32-postgres-redis rake spec:railsredis'
381
+ declare 'bundle exec appraisal rails32-postgres rake spec:railsdisableenv'
382
+ declare 'bundle exec appraisal rails4-mysql2 rake test:rails'
383
+ declare 'bundle exec appraisal rails4-postgres rake test:rails'
384
+ declare 'bundle exec appraisal rails4-postgres-redis rake spec:railsredis'
385
+ declare 'bundle exec appraisal rails4-postgres rake spec:railsdisableenv'
386
+ declare 'bundle exec appraisal rails4-postgres-sidekiq rake spec:railsactivejob'
387
+ declare 'bundle exec appraisal rails5-mysql2 rake test:rails'
388
+ declare 'bundle exec appraisal rails5-postgres rake test:rails'
389
+ declare 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
390
+ declare 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
391
+ declare 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
392
+ declare 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
379
393
  # Rails specs
380
- sh 'bundle exec appraisal rails30-postgres rake spec:rails'
381
- sh 'bundle exec appraisal rails32-mysql2 rake spec:rails'
382
- sh 'bundle exec appraisal rails32-postgres rake spec:rails'
383
- sh 'bundle exec appraisal rails4-mysql2 rake spec:rails'
384
- sh 'bundle exec appraisal rails4-postgres rake spec:rails'
385
- sh 'bundle exec appraisal rails5-mysql2 rake spec:rails'
386
- sh 'bundle exec appraisal rails5-postgres rake spec:rails'
394
+ declare 'bundle exec appraisal rails30-postgres rake spec:rails'
395
+ declare 'bundle exec appraisal rails32-mysql2 rake spec:rails'
396
+ declare 'bundle exec appraisal rails32-postgres rake spec:rails'
397
+ declare 'bundle exec appraisal rails4-mysql2 rake spec:rails'
398
+ declare 'bundle exec appraisal rails4-postgres rake spec:rails'
399
+ declare 'bundle exec appraisal rails5-mysql2 rake spec:rails'
400
+ declare 'bundle exec appraisal rails5-postgres rake spec:rails'
387
401
  end
388
402
  elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
389
403
  && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.4.0')
390
404
  # Main library
391
- sh 'bundle exec rake test:main'
392
- sh 'bundle exec rake spec:main'
393
- sh 'bundle exec rake spec:contrib'
394
- sh 'bundle exec rake spec:opentracer'
395
- # Benchmarks
396
- sh 'bundle exec rake spec:benchmark'
405
+ declare 'bundle exec rake test:main'
406
+ declare 'bundle exec rake spec:main'
407
+ declare 'bundle exec rake spec:contrib'
408
+ declare 'bundle exec rake spec:opentracer'
397
409
 
398
410
  if RUBY_PLATFORM != 'java'
399
411
  # Contrib minitests
400
- sh 'bundle exec appraisal contrib rake test:grape'
401
- sh 'bundle exec appraisal contrib rake test:sucker_punch'
402
412
  # Contrib specs
403
- sh 'bundle exec appraisal contrib rake spec:action_pack'
404
- sh 'bundle exec appraisal contrib rake spec:action_view'
405
- sh 'bundle exec appraisal contrib rake spec:active_model_serializers'
406
- sh 'bundle exec appraisal contrib rake spec:active_record'
407
- sh 'bundle exec appraisal contrib rake spec:active_support'
408
- sh 'bundle exec appraisal contrib rake spec:aws'
409
- sh 'bundle exec appraisal contrib rake spec:concurrent_ruby'
410
- sh 'bundle exec appraisal contrib rake spec:dalli'
411
- sh 'bundle exec appraisal contrib rake spec:delayed_job'
412
- sh 'bundle exec appraisal contrib rake spec:elasticsearch'
413
- sh 'bundle exec appraisal contrib rake spec:ethon'
414
- sh 'bundle exec appraisal contrib rake spec:excon'
415
- sh 'bundle exec appraisal contrib rake spec:faraday'
416
- sh 'bundle exec appraisal contrib rake spec:grape'
417
- sh 'bundle exec appraisal contrib rake spec:graphql'
418
- sh 'bundle exec appraisal contrib rake spec:grpc'
419
- sh 'bundle exec appraisal contrib rake spec:http'
420
- sh 'bundle exec appraisal contrib rake spec:httprb'
421
- sh 'bundle exec appraisal contrib rake spec:mongodb'
422
- sh 'bundle exec appraisal contrib rake spec:mysql2'
423
- sh 'bundle exec appraisal contrib rake spec:presto'
424
- sh 'bundle exec appraisal contrib rake spec:racecar'
425
- sh 'bundle exec appraisal contrib rake spec:rack'
426
- sh 'bundle exec appraisal contrib rake spec:rake'
427
- sh 'bundle exec appraisal contrib rake spec:redis'
428
- sh 'bundle exec appraisal contrib rake spec:resque'
429
- sh 'bundle exec appraisal contrib rake spec:rest_client'
430
- sh 'bundle exec appraisal contrib rake spec:sequel'
431
- sh 'bundle exec appraisal contrib rake spec:shoryuken'
432
- sh 'bundle exec appraisal contrib rake spec:sidekiq'
433
- sh 'bundle exec appraisal contrib rake spec:sinatra'
434
- sh 'bundle exec appraisal contrib rake spec:sneakers'
435
- sh 'bundle exec appraisal contrib rake spec:sucker_punch'
436
- sh 'bundle exec appraisal contrib rake spec:suite'
413
+ declare 'bundle exec appraisal contrib rake spec:action_pack'
414
+ declare 'bundle exec appraisal contrib rake spec:action_view'
415
+ declare 'bundle exec appraisal contrib rake spec:active_model_serializers'
416
+ declare 'bundle exec appraisal contrib rake spec:active_record'
417
+ declare 'bundle exec appraisal contrib rake spec:active_support'
418
+ declare 'bundle exec appraisal contrib rake spec:aws'
419
+ declare 'bundle exec appraisal contrib rake spec:concurrent_ruby'
420
+ declare 'bundle exec appraisal contrib rake spec:dalli'
421
+ declare 'bundle exec appraisal contrib rake spec:delayed_job'
422
+ declare 'bundle exec appraisal contrib rake spec:elasticsearch'
423
+ declare 'bundle exec appraisal contrib rake spec:ethon'
424
+ declare 'bundle exec appraisal contrib rake spec:excon'
425
+ declare 'bundle exec appraisal contrib rake spec:faraday'
426
+ declare 'bundle exec appraisal contrib rake spec:grape'
427
+ declare 'bundle exec appraisal contrib rake spec:graphql'
428
+ declare 'bundle exec appraisal contrib rake spec:grpc'
429
+ declare 'bundle exec appraisal contrib rake spec:http'
430
+ declare 'bundle exec appraisal contrib rake spec:httprb'
431
+ declare 'bundle exec appraisal contrib rake spec:kafka'
432
+ declare 'bundle exec appraisal contrib rake spec:mongodb'
433
+ declare 'bundle exec appraisal contrib rake spec:mysql2'
434
+ declare 'bundle exec appraisal contrib rake spec:presto'
435
+ declare 'bundle exec appraisal contrib rake spec:que'
436
+ declare 'bundle exec appraisal contrib rake spec:racecar'
437
+ declare 'bundle exec appraisal contrib rake spec:rack'
438
+ declare 'bundle exec appraisal contrib rake spec:rake'
439
+ declare 'bundle exec appraisal contrib rake spec:redis'
440
+ declare 'bundle exec appraisal contrib rake spec:resque'
441
+ declare 'bundle exec appraisal contrib rake spec:rest_client'
442
+ declare 'bundle exec appraisal contrib rake spec:rspec'
443
+ declare 'bundle exec appraisal contrib rake spec:sequel'
444
+ declare 'bundle exec appraisal contrib rake spec:shoryuken'
445
+ declare 'bundle exec appraisal contrib rake spec:sidekiq'
446
+ declare 'bundle exec appraisal contrib rake spec:sinatra'
447
+ declare 'bundle exec appraisal contrib rake spec:sneakers'
448
+ declare 'bundle exec appraisal contrib rake spec:sucker_punch'
449
+ declare 'bundle exec appraisal contrib rake spec:suite'
437
450
  # Contrib specs with old gem versions
438
- sh 'bundle exec appraisal contrib-old rake spec:faraday'
451
+ declare 'bundle exec appraisal contrib-old rake spec:faraday'
439
452
  # Rails minitests
440
- sh 'bundle exec appraisal rails30-postgres rake test:rails'
441
- sh 'bundle exec appraisal rails30-postgres rake spec:railsdisableenv'
442
- sh 'bundle exec appraisal rails32-mysql2 rake test:rails'
443
- sh 'bundle exec appraisal rails32-postgres rake test:rails'
444
- sh 'bundle exec appraisal rails32-postgres-redis rake spec:railsredis'
445
- sh 'bundle exec appraisal rails32-postgres rake spec:railsdisableenv'
446
- sh 'bundle exec appraisal rails4-mysql2 rake test:rails'
447
- sh 'bundle exec appraisal rails4-postgres rake test:rails'
448
- sh 'bundle exec appraisal rails4-postgres-redis rake spec:railsredis'
449
- sh 'bundle exec appraisal rails4-postgres rake spec:railsdisableenv'
450
- sh 'bundle exec appraisal rails4-postgres-sidekiq rake spec:railsactivejob'
451
- sh 'bundle exec appraisal rails5-mysql2 rake test:rails'
452
- sh 'bundle exec appraisal rails5-postgres rake test:rails'
453
- sh 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
454
- sh 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
455
- sh 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
456
- sh 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
453
+ declare 'bundle exec appraisal rails30-postgres rake test:rails'
454
+ declare 'bundle exec appraisal rails30-postgres rake spec:railsdisableenv'
455
+ declare 'bundle exec appraisal rails32-mysql2 rake test:rails'
456
+ declare 'bundle exec appraisal rails32-postgres rake test:rails'
457
+ declare 'bundle exec appraisal rails32-postgres-redis rake spec:railsredis'
458
+ declare 'bundle exec appraisal rails32-postgres rake spec:railsdisableenv'
459
+ declare 'bundle exec appraisal rails4-mysql2 rake test:rails'
460
+ declare 'bundle exec appraisal rails4-postgres rake test:rails'
461
+ declare 'bundle exec appraisal rails4-postgres-redis rake spec:railsredis'
462
+ declare 'bundle exec appraisal rails4-postgres rake spec:railsdisableenv'
463
+ declare 'bundle exec appraisal rails4-postgres-sidekiq rake spec:railsactivejob'
464
+ declare 'bundle exec appraisal rails5-mysql2 rake test:rails'
465
+ declare 'bundle exec appraisal rails5-postgres rake test:rails'
466
+ declare 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
467
+ declare 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
468
+ declare 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
469
+ declare 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
457
470
  # Rails specs
458
- sh 'bundle exec appraisal rails30-postgres rake spec:rails'
459
- sh 'bundle exec appraisal rails32-mysql2 rake spec:rails'
460
- sh 'bundle exec appraisal rails32-postgres rake spec:rails'
461
- sh 'bundle exec appraisal rails4-mysql2 rake spec:rails'
462
- sh 'bundle exec appraisal rails4-postgres rake spec:rails'
463
- sh 'bundle exec appraisal rails5-mysql2 rake spec:rails'
464
- sh 'bundle exec appraisal rails5-postgres rake spec:rails'
471
+ declare 'bundle exec appraisal rails30-postgres rake spec:rails'
472
+ declare 'bundle exec appraisal rails32-mysql2 rake spec:rails'
473
+ declare 'bundle exec appraisal rails32-postgres rake spec:rails'
474
+ declare 'bundle exec appraisal rails4-mysql2 rake spec:rails'
475
+ declare 'bundle exec appraisal rails4-postgres rake spec:rails'
476
+ declare 'bundle exec appraisal rails5-mysql2 rake spec:rails'
477
+ declare 'bundle exec appraisal rails5-postgres rake spec:rails'
478
+
479
+ # explicitly test resque-2x compatability
480
+ declare 'bundle exec appraisal resque2-redis3 rake spec:resque'
481
+ declare 'bundle exec appraisal resque2-redis4 rake spec:resque'
465
482
  end
466
483
  elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
467
484
  && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.5.0')
468
485
  # Main library
469
- sh 'bundle exec rake test:main'
470
- sh 'bundle exec rake spec:main'
471
- sh 'bundle exec rake spec:contrib'
472
- sh 'bundle exec rake spec:opentracer'
473
- sh 'bundle exec rake spec:opentelemetry'
474
- # Benchmarks
475
- sh 'bundle exec rake spec:benchmark'
486
+ declare 'bundle exec rake test:main'
487
+ declare 'bundle exec rake spec:main'
488
+ declare 'bundle exec rake spec:contrib'
489
+ declare 'bundle exec rake spec:opentracer'
490
+ declare 'bundle exec rake spec:opentelemetry'
476
491
 
477
492
  if RUBY_PLATFORM != 'java'
478
- # Benchmarks
479
- sh 'bundle exec rake benchmark'
480
493
  # Contrib minitests
481
- sh 'bundle exec appraisal contrib rake test:grape'
482
- sh 'bundle exec appraisal contrib rake test:sucker_punch'
483
494
  # Contrib specs
484
- sh 'bundle exec appraisal contrib rake spec:action_pack'
485
- sh 'bundle exec appraisal contrib rake spec:action_view'
486
- sh 'bundle exec appraisal contrib rake spec:active_model_serializers'
487
- sh 'bundle exec appraisal contrib rake spec:active_record'
488
- sh 'bundle exec appraisal contrib rake spec:active_support'
489
- sh 'bundle exec appraisal contrib rake spec:aws'
490
- sh 'bundle exec appraisal contrib rake spec:concurrent_ruby'
491
- sh 'bundle exec appraisal contrib rake spec:dalli'
492
- sh 'bundle exec appraisal contrib rake spec:delayed_job'
493
- sh 'bundle exec appraisal contrib rake spec:elasticsearch'
494
- sh 'bundle exec appraisal contrib rake spec:ethon'
495
- sh 'bundle exec appraisal contrib rake spec:excon'
496
- sh 'bundle exec appraisal contrib rake spec:faraday'
497
- sh 'bundle exec appraisal contrib rake spec:grape'
498
- sh 'bundle exec appraisal contrib rake spec:graphql'
499
- sh 'bundle exec appraisal contrib rake spec:grpc'
500
- sh 'bundle exec appraisal contrib rake spec:http'
501
- sh 'bundle exec appraisal contrib rake spec:httprb'
502
- sh 'bundle exec appraisal contrib rake spec:mongodb'
503
- sh 'bundle exec appraisal contrib rake spec:mysql2'
504
- sh 'bundle exec appraisal contrib rake spec:presto'
505
- sh 'bundle exec appraisal contrib rake spec:racecar'
506
- sh 'bundle exec appraisal contrib rake spec:rack'
507
- sh 'bundle exec appraisal contrib rake spec:rake'
508
- sh 'bundle exec appraisal contrib rake spec:redis'
509
- sh 'bundle exec appraisal contrib rake spec:resque'
510
- sh 'bundle exec appraisal contrib rake spec:rest_client'
511
- sh 'bundle exec appraisal contrib rake spec:sequel'
512
- sh 'bundle exec appraisal contrib rake spec:shoryuken'
513
- sh 'bundle exec appraisal contrib rake spec:sidekiq'
514
- sh 'bundle exec appraisal contrib rake spec:sinatra'
515
- sh 'bundle exec appraisal contrib rake spec:sneakers'
516
- sh 'bundle exec appraisal contrib rake spec:sucker_punch'
517
- sh 'bundle exec appraisal contrib rake spec:suite'
495
+ declare 'bundle exec appraisal contrib rake spec:action_pack'
496
+ declare 'bundle exec appraisal contrib rake spec:action_view'
497
+ declare 'bundle exec appraisal contrib rake spec:active_model_serializers'
498
+ declare 'bundle exec appraisal contrib rake spec:active_record'
499
+ declare 'bundle exec appraisal contrib rake spec:active_support'
500
+ declare 'bundle exec appraisal contrib rake spec:aws'
501
+ declare 'bundle exec appraisal contrib rake spec:concurrent_ruby'
502
+ declare 'bundle exec appraisal contrib rake spec:dalli'
503
+ declare 'bundle exec appraisal contrib rake spec:delayed_job'
504
+ declare 'bundle exec appraisal contrib rake spec:elasticsearch'
505
+ declare 'bundle exec appraisal contrib rake spec:ethon'
506
+ declare 'bundle exec appraisal contrib rake spec:excon'
507
+ declare 'bundle exec appraisal contrib rake spec:faraday'
508
+ declare 'bundle exec appraisal contrib rake spec:grape'
509
+ declare 'bundle exec appraisal contrib rake spec:graphql'
510
+ declare 'bundle exec appraisal contrib rake spec:grpc'
511
+ declare 'bundle exec appraisal contrib rake spec:http'
512
+ declare 'bundle exec appraisal contrib rake spec:httprb'
513
+ declare 'bundle exec appraisal contrib rake spec:kafka'
514
+ declare 'bundle exec appraisal contrib rake spec:mongodb'
515
+ declare 'bundle exec appraisal contrib rake spec:mysql2'
516
+ declare 'bundle exec appraisal contrib rake spec:presto'
517
+ declare 'bundle exec appraisal contrib rake spec:que'
518
+ declare 'bundle exec appraisal contrib rake spec:racecar'
519
+ declare 'bundle exec appraisal contrib rake spec:rack'
520
+ declare 'bundle exec appraisal contrib rake spec:rake'
521
+ declare 'bundle exec appraisal contrib rake spec:redis'
522
+ declare 'bundle exec appraisal contrib rake spec:resque'
523
+ declare 'bundle exec appraisal contrib rake spec:rest_client'
524
+ declare 'bundle exec appraisal contrib rake spec:rspec'
525
+ declare 'bundle exec appraisal contrib rake spec:sequel'
526
+ declare 'bundle exec appraisal contrib rake spec:shoryuken'
527
+ declare 'bundle exec appraisal contrib rake spec:sidekiq'
528
+ declare 'bundle exec appraisal contrib rake spec:sinatra'
529
+ declare 'bundle exec appraisal contrib rake spec:sneakers'
530
+ declare 'bundle exec appraisal contrib rake spec:sucker_punch'
531
+ declare 'bundle exec appraisal contrib rake spec:suite'
518
532
  # Contrib specs with old gem versions
519
- sh 'bundle exec appraisal contrib-old rake spec:faraday'
533
+ declare 'bundle exec appraisal contrib-old rake spec:faraday'
520
534
  # Rails minitests
521
535
  # We only test Rails 5+ because older versions require Bundler < 2.0
522
- sh 'bundle exec appraisal rails5-mysql2 rake test:rails'
523
- sh 'bundle exec appraisal rails5-postgres rake test:rails'
524
- sh 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
525
- sh 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
526
- sh 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
527
- sh 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
536
+ declare 'bundle exec appraisal rails5-mysql2 rake test:rails'
537
+ declare 'bundle exec appraisal rails5-postgres rake test:rails'
538
+ declare 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
539
+ declare 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
540
+ declare 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
541
+ declare 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
528
542
  # Rails specs
529
- sh 'bundle exec appraisal rails5-mysql2 rake spec:rails'
530
- sh 'bundle exec appraisal rails5-postgres rake spec:rails'
543
+ declare 'bundle exec appraisal rails5-mysql2 rake spec:rails'
544
+ declare 'bundle exec appraisal rails5-postgres rake spec:rails'
545
+
546
+ # explicitly test resque-2x compatability
547
+ declare 'bundle exec appraisal resque2-redis3 rake spec:resque'
548
+ declare 'bundle exec appraisal resque2-redis4 rake spec:resque'
549
+
550
+ # explicitly test cucumber compatibility
551
+ declare 'bundle exec appraisal cucumber3 rake spec:cucumber'
552
+ declare 'bundle exec appraisal cucumber4 rake spec:cucumber'
531
553
  end
532
554
  elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
533
555
  && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.6.0')
534
556
  # Main library
535
- sh 'bundle exec rake test:main'
536
- sh 'bundle exec rake spec:main'
537
- sh 'bundle exec rake spec:contrib'
538
- sh 'bundle exec rake spec:opentracer'
539
- sh 'bundle exec rake spec:opentelemetry'
540
- # Benchmarks
541
- sh 'bundle exec rake spec:benchmark' if RUBY_PLATFORM != 'java' # Too slow due to repeated JVM instantiation
542
- sh 'bundle exec rake benchmark'
557
+ declare 'bundle exec rake test:main'
558
+ declare 'bundle exec rake spec:main'
559
+ declare 'bundle exec rake spec:contrib'
560
+ declare 'bundle exec rake spec:opentracer'
561
+ declare 'bundle exec rake spec:opentelemetry'
543
562
  # Contrib minitests
544
- sh 'bundle exec appraisal contrib rake test:grape'
545
- sh 'bundle exec appraisal contrib rake test:sucker_punch'
546
563
  # Contrib specs
547
- sh 'bundle exec appraisal contrib rake spec:action_pack'
548
- sh 'bundle exec appraisal contrib rake spec:action_view'
549
- sh 'bundle exec appraisal contrib rake spec:active_model_serializers'
550
- sh 'bundle exec appraisal contrib rake spec:active_record'
551
- sh 'bundle exec appraisal contrib rake spec:active_support'
552
- sh 'bundle exec appraisal contrib rake spec:aws'
553
- sh 'bundle exec appraisal contrib rake spec:concurrent_ruby'
554
- sh 'bundle exec appraisal contrib rake spec:dalli'
555
- sh 'bundle exec appraisal contrib rake spec:delayed_job'
556
- sh 'bundle exec appraisal contrib rake spec:elasticsearch'
557
- sh 'bundle exec appraisal contrib rake spec:ethon'
558
- sh 'bundle exec appraisal contrib rake spec:excon'
559
- sh 'bundle exec appraisal contrib rake spec:faraday'
560
- sh 'bundle exec appraisal contrib rake spec:grape'
561
- sh 'bundle exec appraisal contrib rake spec:graphql'
562
- sh 'bundle exec appraisal contrib rake spec:grpc' if RUBY_PLATFORM != 'java' # protobuf not supported
563
- sh 'bundle exec appraisal contrib rake spec:http'
564
- sh 'bundle exec appraisal contrib rake spec:httprb'
565
- sh 'bundle exec appraisal contrib rake spec:mongodb'
566
- sh 'bundle exec appraisal contrib rake spec:mysql2' if RUBY_PLATFORM != 'java' # built-in jdbc is used instead
567
- sh 'bundle exec appraisal contrib rake spec:presto'
568
- sh 'bundle exec appraisal contrib rake spec:racecar'
569
- sh 'bundle exec appraisal contrib rake spec:rack'
570
- sh 'bundle exec appraisal contrib rake spec:rake'
571
- sh 'bundle exec appraisal contrib rake spec:redis'
572
- sh 'bundle exec appraisal contrib rake spec:resque'
573
- sh 'bundle exec appraisal contrib rake spec:rest_client'
574
- sh 'bundle exec appraisal contrib rake spec:sequel'
575
- sh 'bundle exec appraisal contrib rake spec:shoryuken'
576
- sh 'bundle exec appraisal contrib rake spec:sidekiq'
577
- sh 'bundle exec appraisal contrib rake spec:sinatra'
578
- sh 'bundle exec appraisal contrib rake spec:sneakers'
579
- sh 'bundle exec appraisal contrib rake spec:sucker_punch'
580
- sh 'bundle exec appraisal contrib rake spec:suite'
564
+ declare 'bundle exec appraisal contrib rake spec:action_pack'
565
+ declare 'bundle exec appraisal contrib rake spec:action_view'
566
+ declare 'bundle exec appraisal contrib rake spec:active_model_serializers'
567
+ declare 'bundle exec appraisal contrib rake spec:active_record'
568
+ declare 'bundle exec appraisal contrib rake spec:active_support'
569
+ declare 'bundle exec appraisal contrib rake spec:aws'
570
+ declare 'bundle exec appraisal contrib rake spec:concurrent_ruby'
571
+ declare 'bundle exec appraisal contrib rake spec:cucumber'
572
+ declare 'bundle exec appraisal contrib rake spec:dalli'
573
+ declare 'bundle exec appraisal contrib rake spec:delayed_job'
574
+ declare 'bundle exec appraisal contrib rake spec:elasticsearch'
575
+ declare 'bundle exec appraisal contrib rake spec:ethon'
576
+ declare 'bundle exec appraisal contrib rake spec:excon'
577
+ declare 'bundle exec appraisal contrib rake spec:faraday'
578
+ declare 'bundle exec appraisal contrib rake spec:grape'
579
+ declare 'bundle exec appraisal contrib rake spec:graphql'
580
+ declare 'bundle exec appraisal contrib rake spec:grpc' if RUBY_PLATFORM != 'java' # protobuf not supported
581
+ declare 'bundle exec appraisal contrib rake spec:http'
582
+ declare 'bundle exec appraisal contrib rake spec:httprb'
583
+ declare 'bundle exec appraisal contrib rake spec:kafka'
584
+ declare 'bundle exec appraisal contrib rake spec:mongodb'
585
+ declare 'bundle exec appraisal contrib rake spec:mysql2' if RUBY_PLATFORM != 'java' # built-in jdbc is used instead
586
+ declare 'bundle exec appraisal contrib rake spec:presto'
587
+ declare 'bundle exec appraisal contrib rake spec:qless'
588
+ declare 'bundle exec appraisal contrib rake spec:que'
589
+ declare 'bundle exec appraisal contrib rake spec:racecar'
590
+ declare 'bundle exec appraisal contrib rake spec:rack'
591
+ declare 'bundle exec appraisal contrib rake spec:rake'
592
+ declare 'bundle exec appraisal contrib rake spec:redis'
593
+ declare 'bundle exec appraisal contrib rake spec:resque'
594
+ declare 'bundle exec appraisal contrib rake spec:rest_client'
595
+ declare 'bundle exec appraisal contrib rake spec:rspec'
596
+ declare 'bundle exec appraisal contrib rake spec:sequel'
597
+ declare 'bundle exec appraisal contrib rake spec:shoryuken'
598
+ declare 'bundle exec appraisal contrib rake spec:sidekiq'
599
+ declare 'bundle exec appraisal contrib rake spec:sinatra'
600
+ declare 'bundle exec appraisal contrib rake spec:sneakers'
601
+ declare 'bundle exec appraisal contrib rake spec:sucker_punch'
602
+ declare 'bundle exec appraisal contrib rake spec:suite'
581
603
  # Contrib specs with old gem versions
582
- sh 'bundle exec appraisal contrib-old rake spec:faraday'
604
+ declare 'bundle exec appraisal contrib-old rake spec:faraday'
583
605
  # Rails minitests
584
606
  # We only test Rails 5+ because older versions require Bundler < 2.0
585
- sh 'bundle exec appraisal rails5-mysql2 rake test:rails'
586
- sh 'bundle exec appraisal rails5-postgres rake test:rails'
587
- sh 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
588
- sh 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
589
- sh 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
590
- sh 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
591
- sh 'bundle exec appraisal rails6-mysql2 rake test:rails'
592
- sh 'bundle exec appraisal rails6-postgres rake test:rails'
593
- sh 'bundle exec appraisal rails6-postgres-redis rake spec:railsredis'
594
- sh 'bundle exec appraisal rails6-postgres-redis-activesupport rake spec:railsredis'
595
- sh 'bundle exec appraisal rails6-postgres-sidekiq rake spec:railsactivejob'
596
- sh 'bundle exec appraisal rails6-postgres rake spec:railsdisableenv'
607
+ declare 'bundle exec appraisal rails5-mysql2 rake test:rails'
608
+ declare 'bundle exec appraisal rails5-postgres rake test:rails'
609
+ declare 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
610
+ declare 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
611
+ declare 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
612
+ declare 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
613
+ declare 'bundle exec appraisal rails6-mysql2 rake test:rails'
614
+ declare 'bundle exec appraisal rails6-postgres rake test:rails'
615
+ declare 'bundle exec appraisal rails6-postgres-redis rake spec:railsredis'
616
+ declare 'bundle exec appraisal rails6-postgres-redis-activesupport rake spec:railsredis'
617
+ declare 'bundle exec appraisal rails6-postgres-sidekiq rake spec:railsactivejob'
618
+ declare 'bundle exec appraisal rails6-postgres rake spec:railsdisableenv'
597
619
  # Rails specs
598
- sh 'bundle exec appraisal rails5-mysql2 rake spec:action_cable'
599
- sh 'bundle exec appraisal rails5-mysql2 rake spec:rails'
600
- sh 'bundle exec appraisal rails5-postgres rake spec:rails'
601
- # sh 'bundle exec appraisal rails6-mysql2 rake spec:action_cable' # TODO: Hangs CI jobs... fix and re-enable.
602
- sh 'bundle exec appraisal rails6-mysql2 rake spec:rails'
603
- sh 'bundle exec appraisal rails6-postgres rake spec:rails'
620
+ declare 'bundle exec appraisal rails5-mysql2 rake spec:action_cable'
621
+ declare 'bundle exec appraisal rails5-mysql2 rake spec:rails'
622
+ declare 'bundle exec appraisal rails5-postgres rake spec:rails'
623
+ declare 'bundle exec appraisal rails6-mysql2 rake spec:action_cable'
624
+ declare 'bundle exec appraisal rails6-mysql2 rake spec:rails'
625
+ declare 'bundle exec appraisal rails6-postgres rake spec:rails'
626
+ declare 'bundle exec appraisal rails61-mysql2 rake spec:action_cable'
627
+ declare 'bundle exec appraisal rails61-mysql2 rake spec:rails'
628
+ declare 'bundle exec appraisal rails61-mysql2 rake test:rails'
629
+ declare 'bundle exec appraisal rails61-postgres rake spec:rails'
630
+ declare 'bundle exec appraisal rails61-postgres rake spec:railsdisableenv'
631
+ declare 'bundle exec appraisal rails61-postgres rake test:rails'
632
+ declare 'bundle exec appraisal rails61-postgres-redis rake spec:railsredis'
633
+ declare 'bundle exec appraisal rails61-postgres-sidekiq rake spec:railsactivejob'
634
+
635
+ # explicitly test resque-2x compatability
636
+ declare 'bundle exec appraisal resque2-redis3 rake spec:resque'
637
+ declare 'bundle exec appraisal resque2-redis4 rake spec:resque'
638
+
639
+ # explicitly test cucumber compatibility
640
+ declare 'bundle exec appraisal cucumber3 rake spec:cucumber'
641
+ declare 'bundle exec appraisal cucumber4 rake spec:cucumber'
642
+ declare 'bundle exec appraisal cucumber5 rake spec:cucumber'
604
643
  elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
605
644
  && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.7.0')
606
645
  # Main library
607
- sh 'bundle exec rake test:main'
608
- sh 'bundle exec rake spec:main'
609
- sh 'bundle exec rake spec:contrib'
610
- sh 'bundle exec rake spec:opentracer'
611
- sh 'bundle exec rake spec:opentelemetry'
612
- # Benchmarks
613
- sh 'bundle exec rake spec:benchmark'
646
+ declare 'bundle exec rake test:main'
647
+ declare 'bundle exec rake spec:main'
648
+ declare 'bundle exec rake spec:contrib'
649
+ declare 'bundle exec rake spec:opentracer'
650
+ declare 'bundle exec rake spec:opentelemetry'
614
651
 
615
652
  if RUBY_PLATFORM != 'java'
616
- # Benchmarks
617
- sh 'bundle exec rake benchmark'
618
653
  # Contrib minitests
619
- sh 'bundle exec appraisal contrib rake test:grape'
620
- sh 'bundle exec appraisal contrib rake test:sucker_punch'
621
654
  # Contrib specs
622
- sh 'bundle exec appraisal contrib rake spec:action_pack'
623
- sh 'bundle exec appraisal contrib rake spec:action_view'
624
- sh 'bundle exec appraisal contrib rake spec:active_model_serializers'
625
- sh 'bundle exec appraisal contrib rake spec:active_record'
626
- sh 'bundle exec appraisal contrib rake spec:active_support'
627
- sh 'bundle exec appraisal contrib rake spec:aws'
628
- sh 'bundle exec appraisal contrib rake spec:concurrent_ruby'
629
- sh 'bundle exec appraisal contrib rake spec:dalli'
630
- sh 'bundle exec appraisal contrib rake spec:delayed_job'
631
- sh 'bundle exec appraisal contrib rake spec:elasticsearch'
632
- sh 'bundle exec appraisal contrib rake spec:ethon'
633
- sh 'bundle exec appraisal contrib rake spec:excon'
634
- sh 'bundle exec appraisal contrib rake spec:faraday'
635
- sh 'bundle exec appraisal contrib rake spec:grape'
636
- sh 'bundle exec appraisal contrib rake spec:graphql'
637
- sh 'bundle exec appraisal contrib rake spec:grpc'
638
- sh 'bundle exec appraisal contrib rake spec:http'
639
- sh 'bundle exec appraisal contrib rake spec:httprb'
640
- sh 'bundle exec appraisal contrib rake spec:mongodb'
641
- sh 'bundle exec appraisal contrib rake spec:mysql2'
642
- sh 'bundle exec appraisal contrib rake spec:presto'
643
- sh 'bundle exec appraisal contrib rake spec:racecar'
644
- sh 'bundle exec appraisal contrib rake spec:rack'
645
- sh 'bundle exec appraisal contrib rake spec:rake'
646
- sh 'bundle exec appraisal contrib rake spec:redis'
647
- sh 'bundle exec appraisal contrib rake spec:resque'
648
- sh 'bundle exec appraisal contrib rake spec:rest_client'
649
- sh 'bundle exec appraisal contrib rake spec:sequel'
650
- sh 'bundle exec appraisal contrib rake spec:shoryuken'
651
- sh 'bundle exec appraisal contrib rake spec:sidekiq'
652
- sh 'bundle exec appraisal contrib rake spec:sinatra'
653
- sh 'bundle exec appraisal contrib rake spec:sneakers'
654
- sh 'bundle exec appraisal contrib rake spec:sucker_punch'
655
- sh 'bundle exec appraisal contrib rake spec:suite'
655
+ declare 'bundle exec appraisal contrib rake spec:action_pack'
656
+ declare 'bundle exec appraisal contrib rake spec:action_view'
657
+ declare 'bundle exec appraisal contrib rake spec:active_model_serializers'
658
+ declare 'bundle exec appraisal contrib rake spec:active_record'
659
+ declare 'bundle exec appraisal contrib rake spec:active_support'
660
+ declare 'bundle exec appraisal contrib rake spec:aws'
661
+ declare 'bundle exec appraisal contrib rake spec:concurrent_ruby'
662
+ declare 'bundle exec appraisal contrib rake spec:cucumber'
663
+ declare 'bundle exec appraisal contrib rake spec:dalli'
664
+ declare 'bundle exec appraisal contrib rake spec:delayed_job'
665
+ declare 'bundle exec appraisal contrib rake spec:elasticsearch'
666
+ declare 'bundle exec appraisal contrib rake spec:ethon'
667
+ declare 'bundle exec appraisal contrib rake spec:excon'
668
+ declare 'bundle exec appraisal contrib rake spec:faraday'
669
+ declare 'bundle exec appraisal contrib rake spec:grape'
670
+ declare 'bundle exec appraisal contrib rake spec:graphql'
671
+ declare 'bundle exec appraisal contrib rake spec:grpc'
672
+ declare 'bundle exec appraisal contrib rake spec:http'
673
+ declare 'bundle exec appraisal contrib rake spec:httprb'
674
+ declare 'bundle exec appraisal contrib rake spec:kafka'
675
+ declare 'bundle exec appraisal contrib rake spec:mongodb'
676
+ declare 'bundle exec appraisal contrib rake spec:mysql2'
677
+ declare 'bundle exec appraisal contrib rake spec:presto'
678
+ declare 'bundle exec appraisal contrib rake spec:qless'
679
+ declare 'bundle exec appraisal contrib rake spec:que'
680
+ declare 'bundle exec appraisal contrib rake spec:racecar'
681
+ declare 'bundle exec appraisal contrib rake spec:rack'
682
+ declare 'bundle exec appraisal contrib rake spec:rake'
683
+ declare 'bundle exec appraisal contrib rake spec:redis'
684
+ declare 'bundle exec appraisal contrib rake spec:resque'
685
+ declare 'bundle exec appraisal contrib rake spec:rest_client'
686
+ declare 'bundle exec appraisal contrib rake spec:rspec'
687
+ declare 'bundle exec appraisal contrib rake spec:sequel'
688
+ declare 'bundle exec appraisal contrib rake spec:shoryuken'
689
+ declare 'bundle exec appraisal contrib rake spec:sidekiq'
690
+ declare 'bundle exec appraisal contrib rake spec:sinatra'
691
+ declare 'bundle exec appraisal contrib rake spec:sneakers'
692
+ declare 'bundle exec appraisal contrib rake spec:sucker_punch'
693
+ declare 'bundle exec appraisal contrib rake spec:suite'
694
+
656
695
  # Contrib specs with old gem versions
657
- sh 'bundle exec appraisal contrib-old rake spec:faraday'
696
+ declare 'bundle exec appraisal contrib-old rake spec:faraday'
658
697
  # Rails minitests
659
698
  # We only test Rails 5+ because older versions require Bundler < 2.0
660
- sh 'bundle exec appraisal rails5-mysql2 rake test:rails'
661
- sh 'bundle exec appraisal rails5-postgres rake test:rails'
662
- sh 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
663
- sh 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
664
- sh 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
665
- sh 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
666
- sh 'bundle exec appraisal rails6-mysql2 rake test:rails'
667
- sh 'bundle exec appraisal rails6-postgres rake test:rails'
668
- sh 'bundle exec appraisal rails6-postgres-redis rake spec:railsredis'
669
- sh 'bundle exec appraisal rails6-postgres-redis-activesupport rake spec:railsredis'
670
- sh 'bundle exec appraisal rails6-postgres-sidekiq rake spec:railsactivejob'
671
- sh 'bundle exec appraisal rails6-postgres rake spec:railsdisableenv'
699
+ declare 'bundle exec appraisal rails5-mysql2 rake test:rails'
700
+ declare 'bundle exec appraisal rails5-postgres rake test:rails'
701
+ declare 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
702
+ declare 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
703
+ declare 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
704
+ declare 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
705
+ declare 'bundle exec appraisal rails6-mysql2 rake test:rails'
706
+ declare 'bundle exec appraisal rails6-postgres rake test:rails'
707
+ declare 'bundle exec appraisal rails6-postgres-redis rake spec:railsredis'
708
+ declare 'bundle exec appraisal rails6-postgres-redis-activesupport rake spec:railsredis'
709
+ declare 'bundle exec appraisal rails6-postgres-sidekiq rake spec:railsactivejob'
710
+ declare 'bundle exec appraisal rails6-postgres rake spec:railsdisableenv'
672
711
  # Rails specs
673
- sh 'bundle exec appraisal rails5-mysql2 rake spec:action_cable'
674
- sh 'bundle exec appraisal rails5-mysql2 rake spec:rails'
675
- sh 'bundle exec appraisal rails5-postgres rake spec:rails'
676
- # sh 'bundle exec appraisal rails6-mysql2 rake spec:action_cable' # TODO: Hangs CI jobs... fix and re-enable.
677
- sh 'bundle exec appraisal rails6-mysql2 rake spec:rails'
678
- sh 'bundle exec appraisal rails6-postgres rake spec:rails'
712
+ declare 'bundle exec appraisal rails5-mysql2 rake spec:action_cable'
713
+ declare 'bundle exec appraisal rails5-mysql2 rake spec:rails'
714
+ declare 'bundle exec appraisal rails5-postgres rake spec:rails'
715
+ declare 'bundle exec appraisal rails6-mysql2 rake spec:action_cable'
716
+ declare 'bundle exec appraisal rails6-mysql2 rake spec:rails'
717
+ declare 'bundle exec appraisal rails6-postgres rake spec:rails'
718
+ declare 'bundle exec appraisal rails61-mysql2 rake spec:action_cable'
719
+ declare 'bundle exec appraisal rails61-mysql2 rake spec:rails'
720
+ declare 'bundle exec appraisal rails61-mysql2 rake test:rails'
721
+ declare 'bundle exec appraisal rails61-postgres rake spec:rails'
722
+ declare 'bundle exec appraisal rails61-postgres rake spec:railsdisableenv'
723
+ declare 'bundle exec appraisal rails61-postgres rake test:rails'
724
+ declare 'bundle exec appraisal rails61-postgres-redis rake spec:railsredis'
725
+ declare 'bundle exec appraisal rails61-postgres-sidekiq rake spec:railsactivejob'
726
+
727
+ # explicitly test resque-2x compatability
728
+ declare 'bundle exec appraisal resque2-redis3 rake spec:resque'
729
+ declare 'bundle exec appraisal resque2-redis4 rake spec:resque'
730
+
731
+ # explicitly test cucumber compatibility
732
+ declare 'bundle exec appraisal cucumber3 rake spec:cucumber'
733
+ declare 'bundle exec appraisal cucumber4 rake spec:cucumber'
734
+ declare 'bundle exec appraisal cucumber5 rake spec:cucumber'
679
735
  end
680
- elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
736
+ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION) \
737
+ && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('3.0.0')
681
738
  # Main library
682
- sh 'bundle exec rake test:main'
683
- sh 'bundle exec rake spec:main'
684
- sh 'bundle exec rake spec:contrib'
685
- sh 'bundle exec rake spec:opentracer'
686
- sh 'bundle exec rake spec:opentelemetry'
687
- # Benchmarks
688
- sh 'bundle exec rake spec:benchmark'
739
+ declare 'bundle exec rake test:main'
740
+ declare 'bundle exec rake spec:main'
741
+ declare 'bundle exec rake spec:contrib'
742
+ declare 'bundle exec rake spec:opentracer'
743
+ declare 'bundle exec rake spec:opentelemetry'
689
744
 
690
745
  if RUBY_PLATFORM != 'java'
691
- # Benchmarks
692
- sh 'bundle exec rake benchmark'
693
746
  # Contrib minitests
694
- sh 'bundle exec appraisal contrib rake test:grape'
695
- sh 'bundle exec appraisal contrib rake test:sucker_punch'
696
747
  # Contrib specs
697
- sh 'bundle exec appraisal contrib rake spec:action_pack'
698
- sh 'bundle exec appraisal contrib rake spec:action_view'
699
- sh 'bundle exec appraisal contrib rake spec:active_model_serializers'
700
- sh 'bundle exec appraisal contrib rake spec:active_record'
701
- sh 'bundle exec appraisal contrib rake spec:active_support'
702
- sh 'bundle exec appraisal contrib rake spec:aws'
703
- sh 'bundle exec appraisal contrib rake spec:concurrent_ruby'
704
- sh 'bundle exec appraisal contrib rake spec:dalli'
705
- sh 'bundle exec appraisal contrib rake spec:delayed_job'
706
- sh 'bundle exec appraisal contrib rake spec:elasticsearch'
707
- sh 'bundle exec appraisal contrib rake spec:ethon'
708
- sh 'bundle exec appraisal contrib rake spec:excon'
709
- sh 'bundle exec appraisal contrib rake spec:faraday'
710
- sh 'bundle exec appraisal contrib rake spec:grape'
711
- sh 'bundle exec appraisal contrib rake spec:graphql'
712
- sh 'bundle exec appraisal contrib rake spec:grpc'
713
- sh 'bundle exec appraisal contrib rake spec:http'
714
- sh 'bundle exec appraisal contrib rake spec:httprb'
715
- sh 'bundle exec appraisal contrib rake spec:mongodb'
716
- sh 'bundle exec appraisal contrib rake spec:mysql2'
717
- sh 'bundle exec appraisal contrib rake spec:presto'
718
- sh 'bundle exec appraisal contrib rake spec:racecar'
719
- sh 'bundle exec appraisal contrib rake spec:rack'
720
- sh 'bundle exec appraisal contrib rake spec:rake'
721
- sh 'bundle exec appraisal contrib rake spec:redis'
722
- sh 'bundle exec appraisal contrib rake spec:resque'
723
- sh 'bundle exec appraisal contrib rake spec:rest_client'
724
- sh 'bundle exec appraisal contrib rake spec:sequel'
725
- sh 'bundle exec appraisal contrib rake spec:shoryuken'
726
- sh 'bundle exec appraisal contrib rake spec:sidekiq'
727
- sh 'bundle exec appraisal contrib rake spec:sinatra'
728
- sh 'bundle exec appraisal contrib rake spec:sneakers'
729
- sh 'bundle exec appraisal contrib rake spec:sucker_punch'
730
- sh 'bundle exec appraisal contrib rake spec:suite'
748
+ declare 'bundle exec appraisal contrib rake spec:action_pack'
749
+ declare 'bundle exec appraisal contrib rake spec:action_view'
750
+ declare 'bundle exec appraisal contrib rake spec:active_model_serializers'
751
+ declare 'bundle exec appraisal contrib rake spec:active_record'
752
+ declare 'bundle exec appraisal contrib rake spec:active_support'
753
+ declare 'bundle exec appraisal contrib rake spec:aws'
754
+ declare 'bundle exec appraisal contrib rake spec:concurrent_ruby'
755
+ declare 'bundle exec appraisal contrib rake spec:cucumber'
756
+ declare 'bundle exec appraisal contrib rake spec:dalli'
757
+ declare 'bundle exec appraisal contrib rake spec:delayed_job'
758
+ declare 'bundle exec appraisal contrib rake spec:elasticsearch'
759
+ declare 'bundle exec appraisal contrib rake spec:ethon'
760
+ declare 'bundle exec appraisal contrib rake spec:excon'
761
+ declare 'bundle exec appraisal contrib rake spec:faraday'
762
+ declare 'bundle exec appraisal contrib rake spec:grape'
763
+ declare 'bundle exec appraisal contrib rake spec:graphql'
764
+ declare 'bundle exec appraisal contrib rake spec:grpc'
765
+ declare 'bundle exec appraisal contrib rake spec:http'
766
+ declare 'bundle exec appraisal contrib rake spec:httprb'
767
+ declare 'bundle exec appraisal contrib rake spec:kafka'
768
+ declare 'bundle exec appraisal contrib rake spec:mongodb'
769
+ declare 'bundle exec appraisal contrib rake spec:mysql2'
770
+ declare 'bundle exec appraisal contrib rake spec:presto'
771
+ declare 'bundle exec appraisal contrib rake spec:qless'
772
+ declare 'bundle exec appraisal contrib rake spec:que'
773
+ declare 'bundle exec appraisal contrib rake spec:racecar'
774
+ declare 'bundle exec appraisal contrib rake spec:rack'
775
+ declare 'bundle exec appraisal contrib rake spec:rake'
776
+ declare 'bundle exec appraisal contrib rake spec:redis'
777
+ declare 'bundle exec appraisal contrib rake spec:resque'
778
+ declare 'bundle exec appraisal contrib rake spec:rest_client'
779
+ declare 'bundle exec appraisal contrib rake spec:rspec'
780
+ declare 'bundle exec appraisal contrib rake spec:sequel'
781
+ declare 'bundle exec appraisal contrib rake spec:shoryuken'
782
+ declare 'bundle exec appraisal contrib rake spec:sidekiq'
783
+ declare 'bundle exec appraisal contrib rake spec:sinatra'
784
+ declare 'bundle exec appraisal contrib rake spec:sneakers'
785
+ declare 'bundle exec appraisal contrib rake spec:sucker_punch'
786
+ declare 'bundle exec appraisal contrib rake spec:suite'
787
+
731
788
  # Contrib specs with old gem versions
732
- sh 'bundle exec appraisal contrib-old rake spec:faraday'
789
+ declare 'bundle exec appraisal contrib-old rake spec:faraday'
733
790
  # Rails minitests
734
791
  # We only test Rails 5+ because older versions require Bundler < 2.0
735
- sh 'bundle exec appraisal rails5-mysql2 rake test:rails'
736
- sh 'bundle exec appraisal rails5-postgres rake test:rails'
737
- sh 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
738
- sh 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
739
- sh 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
740
- sh 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
741
- sh 'bundle exec appraisal rails6-mysql2 rake test:rails'
742
- sh 'bundle exec appraisal rails6-postgres rake test:rails'
743
- sh 'bundle exec appraisal rails6-postgres-redis rake spec:railsredis'
744
- sh 'bundle exec appraisal rails6-postgres-redis-activesupport rake spec:railsredis'
745
- sh 'bundle exec appraisal rails6-postgres-sidekiq rake spec:railsactivejob'
746
- sh 'bundle exec appraisal rails6-postgres rake spec:railsdisableenv'
792
+ declare 'bundle exec appraisal rails5-mysql2 rake test:rails'
793
+ declare 'bundle exec appraisal rails5-postgres rake test:rails'
794
+ declare 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
795
+ declare 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
796
+ declare 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
797
+ declare 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
798
+ declare 'bundle exec appraisal rails6-mysql2 rake test:rails'
799
+ declare 'bundle exec appraisal rails6-postgres rake test:rails'
800
+ declare 'bundle exec appraisal rails6-postgres-redis rake spec:railsredis'
801
+ declare 'bundle exec appraisal rails6-postgres-redis-activesupport rake spec:railsredis'
802
+ declare 'bundle exec appraisal rails6-postgres-sidekiq rake spec:railsactivejob'
803
+ declare 'bundle exec appraisal rails6-postgres rake spec:railsdisableenv'
747
804
  # Rails specs
748
- sh 'bundle exec appraisal rails5-mysql2 rake spec:rails'
749
- sh 'bundle exec appraisal rails5-postgres rake spec:rails'
750
- sh 'bundle exec appraisal rails6-mysql2 rake spec:rails'
751
- sh 'bundle exec appraisal rails6-postgres rake spec:rails'
805
+ declare 'bundle exec appraisal rails5-mysql2 rake spec:rails'
806
+ declare 'bundle exec appraisal rails5-postgres rake spec:rails'
807
+ declare 'bundle exec appraisal rails6-mysql2 rake spec:action_cable'
808
+ declare 'bundle exec appraisal rails6-mysql2 rake spec:rails'
809
+ declare 'bundle exec appraisal rails6-postgres rake spec:rails'
810
+ declare 'bundle exec appraisal rails61-mysql2 rake spec:action_cable'
811
+ declare 'bundle exec appraisal rails61-mysql2 rake spec:rails'
812
+ declare 'bundle exec appraisal rails61-mysql2 rake test:rails'
813
+ declare 'bundle exec appraisal rails61-postgres rake spec:rails'
814
+ declare 'bundle exec appraisal rails61-postgres rake spec:railsdisableenv'
815
+ declare 'bundle exec appraisal rails61-postgres rake test:rails'
816
+ declare 'bundle exec appraisal rails61-postgres-redis rake spec:railsredis'
817
+ declare 'bundle exec appraisal rails61-postgres-sidekiq rake spec:railsactivejob'
818
+
819
+ # explicitly test resque-2x compatability
820
+ declare 'bundle exec appraisal resque2-redis3 rake spec:resque'
821
+ declare 'bundle exec appraisal resque2-redis4 rake spec:resque'
822
+
823
+ # explicitly test cucumber compatibility
824
+ declare 'bundle exec appraisal cucumber3 rake spec:cucumber'
825
+ declare 'bundle exec appraisal cucumber4 rake spec:cucumber'
826
+ declare 'bundle exec appraisal cucumber5 rake spec:cucumber'
752
827
  end
828
+ elsif Gem::Version.new('3.0.0') <= Gem::Version.new(RUBY_VERSION)
829
+ # Main library
830
+ declare 'bundle exec rake test:main'
831
+ declare 'bundle exec rake spec:main'
832
+ declare 'bundle exec rake spec:contrib'
833
+ declare 'bundle exec rake spec:opentracer'
834
+ declare 'bundle exec rake spec:opentelemetry'
835
+
836
+ if RUBY_PLATFORM != 'java'
837
+ # Contrib minitests
838
+ # Contrib specs
839
+ declare 'bundle exec appraisal contrib rake spec:action_pack'
840
+ declare 'bundle exec appraisal contrib rake spec:action_view'
841
+ declare 'bundle exec appraisal contrib rake spec:active_model_serializers'
842
+ declare 'bundle exec appraisal contrib rake spec:active_record'
843
+ declare 'bundle exec appraisal contrib rake spec:active_support'
844
+ declare 'bundle exec appraisal contrib rake spec:aws'
845
+ declare 'bundle exec appraisal contrib rake spec:concurrent_ruby'
846
+ declare 'bundle exec appraisal contrib rake spec:cucumber'
847
+ declare 'bundle exec appraisal contrib rake spec:dalli'
848
+ declare 'bundle exec appraisal contrib rake spec:delayed_job'
849
+ declare 'bundle exec appraisal contrib rake spec:elasticsearch'
850
+ declare 'bundle exec appraisal contrib rake spec:ethon'
851
+ declare 'bundle exec appraisal contrib rake spec:excon'
852
+ declare 'bundle exec appraisal contrib rake spec:faraday'
853
+ declare 'bundle exec appraisal contrib rake spec:grape'
854
+ declare 'bundle exec appraisal contrib rake spec:graphql'
855
+ # declare 'bundle exec appraisal contrib rake spec:grpc' # Pending https://github.com/protocolbuffers/protobuf/issues/7922
856
+ declare 'bundle exec appraisal contrib rake spec:http'
857
+ declare 'bundle exec appraisal contrib rake spec:httprb'
858
+ declare 'bundle exec appraisal contrib rake spec:kafka'
859
+ declare 'bundle exec appraisal contrib rake spec:mongodb'
860
+ declare 'bundle exec appraisal contrib rake spec:mysql2'
861
+ declare 'bundle exec appraisal contrib rake spec:presto'
862
+ declare 'bundle exec appraisal contrib rake spec:qless'
863
+ declare 'bundle exec appraisal contrib rake spec:que'
864
+ # declare 'bundle exec appraisal contrib rake spec:racecar' # Pending release of our fix: https://github.com/appsignal/rdkafka-ruby/pull/144
865
+ declare 'bundle exec appraisal contrib rake spec:rack'
866
+ declare 'bundle exec appraisal contrib rake spec:rake'
867
+ declare 'bundle exec appraisal contrib rake spec:redis'
868
+ declare 'bundle exec appraisal contrib rake spec:resque'
869
+ declare 'bundle exec appraisal contrib rake spec:rest_client'
870
+ declare 'bundle exec appraisal contrib rake spec:rspec'
871
+ declare 'bundle exec appraisal contrib rake spec:sequel'
872
+ declare 'bundle exec appraisal contrib rake spec:shoryuken'
873
+ declare 'bundle exec appraisal contrib rake spec:sidekiq'
874
+ declare 'bundle exec appraisal contrib rake spec:sinatra'
875
+ declare 'bundle exec appraisal contrib rake spec:sneakers'
876
+ declare 'bundle exec appraisal contrib rake spec:sucker_punch'
877
+ declare 'bundle exec appraisal contrib rake spec:suite'
878
+
879
+ # Rails
880
+ declare 'bundle exec appraisal rails61-mysql2 rake spec:action_cable'
881
+ declare 'bundle exec appraisal rails61-mysql2 rake spec:rails'
882
+ declare 'bundle exec appraisal rails61-mysql2 rake test:rails'
883
+ declare 'bundle exec appraisal rails61-postgres rake spec:rails'
884
+ declare 'bundle exec appraisal rails61-postgres rake spec:railsdisableenv'
885
+ declare 'bundle exec appraisal rails61-postgres rake test:rails'
886
+ declare 'bundle exec appraisal rails61-postgres-redis rake spec:railsredis'
887
+ declare 'bundle exec appraisal rails61-postgres-sidekiq rake spec:railsactivejob'
888
+
889
+ # explicitly test resque-2x compatability
890
+ declare 'bundle exec appraisal resque2-redis3 rake spec:resque'
891
+ declare 'bundle exec appraisal resque2-redis4 rake spec:resque'
892
+
893
+ # explicitly test cucumber compatibility
894
+ declare 'bundle exec appraisal cucumber3 rake spec:cucumber'
895
+ declare 'bundle exec appraisal cucumber4 rake spec:cucumber'
896
+ declare 'bundle exec appraisal cucumber5 rake spec:cucumber'
897
+ end
898
+ end
899
+ end
900
+
901
+ namespace :coverage do
902
+ # Generates one global report for all tracer tests
903
+ task :report do
904
+ require 'simplecov'
905
+
906
+ resultset_files = Dir["#{ENV.fetch('COVERAGE_DIR', 'coverage')}/.resultset.json"] +
907
+ Dir["#{ENV.fetch('COVERAGE_DIR', 'coverage')}/versions/**/.resultset.json"]
908
+
909
+ SimpleCov.collate resultset_files do
910
+ coverage_dir "#{ENV.fetch('COVERAGE_DIR', 'coverage')}/report"
911
+ if ENV['CI'] == 'true'
912
+ require 'codecov'
913
+ formatter SimpleCov::Formatter::MultiFormatter.new([SimpleCov::Formatter::HTMLFormatter,
914
+ SimpleCov::Formatter::Codecov])
915
+ else
916
+ formatter SimpleCov::Formatter::HTMLFormatter
917
+ end
918
+ end
919
+ end
920
+
921
+ # Generates one report for each Ruby version
922
+ task :report_per_ruby_version do
923
+ require 'simplecov'
924
+
925
+ versions = Dir["#{ENV.fetch('COVERAGE_DIR', 'coverage')}/versions/*"].map { |f| File.basename(f) }
926
+ versions.map do |version|
927
+ puts "Generating report for: #{version}"
928
+ SimpleCov.collate Dir["#{ENV.fetch('COVERAGE_DIR', 'coverage')}/versions/#{version}/**/.resultset.json"] do
929
+ coverage_dir "#{ENV.fetch('COVERAGE_DIR', 'coverage')}/report/versions/#{version}"
930
+ formatter SimpleCov::Formatter::HTMLFormatter
931
+ end
932
+ end
933
+ end
934
+ end
935
+
936
+ namespace :changelog do
937
+ task :format do
938
+ require 'pimpmychangelog'
939
+
940
+ PimpMyChangelog::CLI.run!
753
941
  end
754
942
  end
755
943