ddtrace 0.38.0 → 0.43.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (194) hide show
  1. checksums.yaml +5 -5
  2. data/.circleci/config.yml +56 -0
  3. data/.github/workflows/add-milestone-to-pull-requests.yml +42 -0
  4. data/.github/workflows/create-next-milestone.yml +20 -0
  5. data/.gitlab-ci.yml +1 -0
  6. data/.simplecov +38 -0
  7. data/Appraisals +293 -105
  8. data/CHANGELOG.md +192 -1
  9. data/CONTRIBUTING.md +2 -2
  10. data/Rakefile +554 -480
  11. data/ddtrace.gemspec +3 -0
  12. data/docs/DevelopmentGuide.md +28 -2
  13. data/docs/GettingStarted.md +207 -82
  14. data/lib/ddtrace.rb +4 -0
  15. data/lib/ddtrace/buffer.rb +259 -52
  16. data/lib/ddtrace/configuration.rb +55 -5
  17. data/lib/ddtrace/configuration/components.rb +4 -7
  18. data/lib/ddtrace/configuration/options.rb +3 -1
  19. data/lib/ddtrace/configuration/settings.rb +18 -6
  20. data/lib/ddtrace/context.rb +18 -0
  21. data/lib/ddtrace/context_provider.rb +17 -5
  22. data/lib/ddtrace/contrib/action_cable/configuration/settings.rb +7 -2
  23. data/lib/ddtrace/contrib/action_cable/ext.rb +5 -2
  24. data/lib/ddtrace/contrib/action_pack/configuration/settings.rb +7 -2
  25. data/lib/ddtrace/contrib/action_pack/ext.rb +5 -2
  26. data/lib/ddtrace/contrib/action_view/configuration/settings.rb +7 -2
  27. data/lib/ddtrace/contrib/action_view/ext.rb +5 -2
  28. data/lib/ddtrace/contrib/active_model_serializers/configuration/settings.rb +7 -2
  29. data/lib/ddtrace/contrib/active_model_serializers/ext.rb +5 -2
  30. data/lib/ddtrace/contrib/active_record/configuration/settings.rb +7 -2
  31. data/lib/ddtrace/contrib/active_record/events/sql.rb +4 -0
  32. data/lib/ddtrace/contrib/active_record/ext.rb +5 -2
  33. data/lib/ddtrace/contrib/active_support/cache/instrumentation.rb +104 -3
  34. data/lib/ddtrace/contrib/active_support/cache/patcher.rb +21 -0
  35. data/lib/ddtrace/contrib/active_support/configuration/settings.rb +7 -2
  36. data/lib/ddtrace/contrib/active_support/ext.rb +8 -2
  37. data/lib/ddtrace/contrib/active_support/notifications/event.rb +10 -0
  38. data/lib/ddtrace/contrib/active_support/notifications/subscription.rb +2 -2
  39. data/lib/ddtrace/contrib/aws/configuration/settings.rb +7 -2
  40. data/lib/ddtrace/contrib/aws/ext.rb +5 -2
  41. data/lib/ddtrace/contrib/aws/instrumentation.rb +6 -1
  42. data/lib/ddtrace/contrib/aws/patcher.rb +0 -1
  43. data/lib/ddtrace/contrib/concurrent_ruby/configuration/settings.rb +5 -0
  44. data/lib/ddtrace/contrib/concurrent_ruby/ext.rb +1 -0
  45. data/lib/ddtrace/contrib/configurable.rb +2 -0
  46. data/lib/ddtrace/contrib/configuration/resolvers/pattern_resolver.rb +4 -5
  47. data/lib/ddtrace/contrib/configuration/settings.rb +1 -0
  48. data/lib/ddtrace/contrib/cucumber/configuration/settings.rb +38 -0
  49. data/lib/ddtrace/contrib/cucumber/ext.rb +19 -0
  50. data/lib/ddtrace/contrib/cucumber/formatter.rb +104 -0
  51. data/lib/ddtrace/contrib/cucumber/instrumentation.rb +24 -0
  52. data/lib/ddtrace/contrib/cucumber/integration.rb +40 -0
  53. data/lib/ddtrace/contrib/cucumber/patcher.rb +23 -0
  54. data/lib/ddtrace/contrib/dalli/configuration/settings.rb +7 -2
  55. data/lib/ddtrace/contrib/dalli/ext.rb +5 -2
  56. data/lib/ddtrace/contrib/dalli/instrumentation.rb +4 -0
  57. data/lib/ddtrace/contrib/delayed_job/configuration/settings.rb +9 -2
  58. data/lib/ddtrace/contrib/delayed_job/ext.rb +7 -2
  59. data/lib/ddtrace/contrib/delayed_job/plugin.rb +39 -15
  60. data/lib/ddtrace/contrib/elasticsearch/configuration/settings.rb +7 -2
  61. data/lib/ddtrace/contrib/elasticsearch/ext.rb +5 -2
  62. data/lib/ddtrace/contrib/elasticsearch/patcher.rb +4 -0
  63. data/lib/ddtrace/contrib/ethon/configuration/settings.rb +7 -2
  64. data/lib/ddtrace/contrib/ethon/easy_patch.rb +4 -2
  65. data/lib/ddtrace/contrib/ethon/ext.rb +5 -2
  66. data/lib/ddtrace/contrib/ethon/multi_patch.rb +4 -0
  67. data/lib/ddtrace/contrib/excon/configuration/settings.rb +7 -2
  68. data/lib/ddtrace/contrib/excon/ext.rb +5 -2
  69. data/lib/ddtrace/contrib/excon/middleware.rb +11 -1
  70. data/lib/ddtrace/contrib/extensions.rb +1 -1
  71. data/lib/ddtrace/contrib/faraday/configuration/settings.rb +7 -2
  72. data/lib/ddtrace/contrib/faraday/ext.rb +5 -2
  73. data/lib/ddtrace/contrib/faraday/middleware.rb +4 -0
  74. data/lib/ddtrace/contrib/faraday/patcher.rb +13 -4
  75. data/lib/ddtrace/contrib/grape/configuration/settings.rb +14 -3
  76. data/lib/ddtrace/contrib/grape/endpoint.rb +24 -7
  77. data/lib/ddtrace/contrib/grape/ext.rb +5 -2
  78. data/lib/ddtrace/contrib/graphql/configuration/settings.rb +7 -2
  79. data/lib/ddtrace/contrib/graphql/ext.rb +5 -2
  80. data/lib/ddtrace/contrib/grpc/configuration/settings.rb +7 -2
  81. data/lib/ddtrace/contrib/grpc/datadog_interceptor/client.rb +5 -1
  82. data/lib/ddtrace/contrib/grpc/datadog_interceptor/server.rb +4 -0
  83. data/lib/ddtrace/contrib/grpc/ext.rb +5 -2
  84. data/lib/ddtrace/contrib/http/configuration/settings.rb +7 -2
  85. data/lib/ddtrace/contrib/http/ext.rb +5 -2
  86. data/lib/ddtrace/contrib/http/instrumentation.rb +6 -2
  87. data/lib/ddtrace/contrib/httprb/configuration/settings.rb +7 -2
  88. data/lib/ddtrace/contrib/httprb/ext.rb +5 -2
  89. data/lib/ddtrace/contrib/httprb/instrumentation.rb +8 -8
  90. data/lib/ddtrace/contrib/kafka/configuration/settings.rb +7 -2
  91. data/lib/ddtrace/contrib/kafka/event.rb +1 -1
  92. data/lib/ddtrace/contrib/kafka/ext.rb +5 -2
  93. data/lib/ddtrace/contrib/mongodb/configuration/settings.rb +7 -2
  94. data/lib/ddtrace/contrib/mongodb/ext.rb +5 -2
  95. data/lib/ddtrace/contrib/mongodb/subscribers.rb +4 -0
  96. data/lib/ddtrace/contrib/mysql2/configuration/settings.rb +7 -2
  97. data/lib/ddtrace/contrib/mysql2/ext.rb +5 -2
  98. data/lib/ddtrace/contrib/mysql2/instrumentation.rb +4 -0
  99. data/lib/ddtrace/contrib/presto/configuration/settings.rb +7 -2
  100. data/lib/ddtrace/contrib/presto/ext.rb +5 -2
  101. data/lib/ddtrace/contrib/presto/instrumentation.rb +3 -0
  102. data/lib/ddtrace/contrib/que/configuration/settings.rb +43 -0
  103. data/lib/ddtrace/contrib/que/ext.rb +30 -0
  104. data/lib/ddtrace/contrib/que/integration.rb +42 -0
  105. data/lib/ddtrace/contrib/que/patcher.rb +24 -0
  106. data/lib/ddtrace/contrib/que/tracer.rb +57 -0
  107. data/lib/ddtrace/contrib/racecar/configuration/settings.rb +7 -2
  108. data/lib/ddtrace/contrib/racecar/event.rb +4 -0
  109. data/lib/ddtrace/contrib/racecar/events.rb +2 -0
  110. data/lib/ddtrace/contrib/racecar/events/consume.rb +27 -0
  111. data/lib/ddtrace/contrib/racecar/ext.rb +6 -2
  112. data/lib/ddtrace/contrib/rack/configuration/settings.rb +7 -2
  113. data/lib/ddtrace/contrib/rack/ext.rb +5 -2
  114. data/lib/ddtrace/contrib/rack/middlewares.rb +2 -0
  115. data/lib/ddtrace/contrib/rails/configuration/settings.rb +12 -2
  116. data/lib/ddtrace/contrib/rails/ext.rb +6 -2
  117. data/lib/ddtrace/contrib/rails/log_injection.rb +81 -0
  118. data/lib/ddtrace/contrib/rails/middlewares.rb +7 -2
  119. data/lib/ddtrace/contrib/rails/patcher.rb +29 -0
  120. data/lib/ddtrace/contrib/rake/configuration/settings.rb +7 -3
  121. data/lib/ddtrace/contrib/rake/ext.rb +5 -2
  122. data/lib/ddtrace/contrib/redis/configuration/settings.rb +7 -2
  123. data/lib/ddtrace/contrib/redis/ext.rb +5 -2
  124. data/lib/ddtrace/contrib/redis/tags.rb +4 -0
  125. data/lib/ddtrace/contrib/resque/configuration/settings.rb +8 -2
  126. data/lib/ddtrace/contrib/resque/ext.rb +5 -2
  127. data/lib/ddtrace/contrib/resque/integration.rb +1 -1
  128. data/lib/ddtrace/contrib/resque/resque_job.rb +1 -1
  129. data/lib/ddtrace/contrib/rest_client/configuration/settings.rb +7 -2
  130. data/lib/ddtrace/contrib/rest_client/ext.rb +5 -2
  131. data/lib/ddtrace/contrib/rest_client/request_patch.rb +4 -0
  132. data/lib/ddtrace/contrib/rspec/configuration/settings.rb +38 -0
  133. data/lib/ddtrace/contrib/rspec/example.rb +61 -0
  134. data/lib/ddtrace/contrib/rspec/example_group.rb +61 -0
  135. data/lib/ddtrace/contrib/rspec/ext.rb +19 -0
  136. data/lib/ddtrace/contrib/rspec/integration.rb +41 -0
  137. data/lib/ddtrace/contrib/rspec/patcher.rb +25 -0
  138. data/lib/ddtrace/contrib/sequel/configuration/settings.rb +7 -2
  139. data/lib/ddtrace/contrib/sequel/database.rb +3 -1
  140. data/lib/ddtrace/contrib/sequel/dataset.rb +3 -2
  141. data/lib/ddtrace/contrib/sequel/ext.rb +6 -2
  142. data/lib/ddtrace/contrib/sequel/utils.rb +35 -6
  143. data/lib/ddtrace/contrib/shoryuken/configuration/settings.rb +8 -2
  144. data/lib/ddtrace/contrib/shoryuken/ext.rb +5 -2
  145. data/lib/ddtrace/contrib/shoryuken/tracer.rb +4 -1
  146. data/lib/ddtrace/contrib/sidekiq/configuration/settings.rb +8 -2
  147. data/lib/ddtrace/contrib/sidekiq/ext.rb +5 -2
  148. data/lib/ddtrace/contrib/sidekiq/server_tracer.rb +4 -1
  149. data/lib/ddtrace/contrib/sinatra/configuration/settings.rb +7 -2
  150. data/lib/ddtrace/contrib/sinatra/env.rb +5 -4
  151. data/lib/ddtrace/contrib/sinatra/ext.rb +5 -2
  152. data/lib/ddtrace/contrib/sinatra/tracer.rb +21 -42
  153. data/lib/ddtrace/contrib/sinatra/tracer_middleware.rb +50 -23
  154. data/lib/ddtrace/contrib/sneakers/configuration/settings.rb +33 -0
  155. data/lib/ddtrace/contrib/sneakers/ext.rb +22 -0
  156. data/lib/ddtrace/contrib/sneakers/integration.rb +41 -0
  157. data/lib/ddtrace/contrib/sneakers/patcher.rb +24 -0
  158. data/lib/ddtrace/contrib/sneakers/tracer.rb +55 -0
  159. data/lib/ddtrace/contrib/status_code_matcher.rb +67 -0
  160. data/lib/ddtrace/contrib/sucker_punch/configuration/settings.rb +7 -2
  161. data/lib/ddtrace/contrib/sucker_punch/ext.rb +5 -2
  162. data/lib/ddtrace/diagnostics/environment_logger.rb +1 -1
  163. data/lib/ddtrace/environment.rb +14 -4
  164. data/lib/ddtrace/ext/app_types.rb +1 -0
  165. data/lib/ddtrace/ext/ci.rb +265 -0
  166. data/lib/ddtrace/ext/diagnostics.rb +2 -1
  167. data/lib/ddtrace/ext/distributed.rb +8 -2
  168. data/lib/ddtrace/ext/git.rb +12 -0
  169. data/lib/ddtrace/ext/integration.rb +8 -0
  170. data/lib/ddtrace/ext/runtime.rb +2 -0
  171. data/lib/ddtrace/ext/test.rb +24 -0
  172. data/lib/ddtrace/ext/transport.rb +1 -0
  173. data/lib/ddtrace/logger.rb +1 -1
  174. data/lib/ddtrace/opentracer/distributed_headers.rb +1 -1
  175. data/lib/ddtrace/propagation/grpc_propagator.rb +18 -6
  176. data/lib/ddtrace/runtime/identity.rb +4 -5
  177. data/lib/ddtrace/runtime/metrics.rb +24 -6
  178. data/lib/ddtrace/sampler.rb +2 -2
  179. data/lib/ddtrace/sampling/rate_limiter.rb +65 -16
  180. data/lib/ddtrace/span.rb +152 -27
  181. data/lib/ddtrace/tracer.rb +25 -13
  182. data/lib/ddtrace/transport/http.rb +15 -0
  183. data/lib/ddtrace/transport/http/adapters/net.rb +8 -2
  184. data/lib/ddtrace/transport/http/adapters/test.rb +2 -0
  185. data/lib/ddtrace/transport/http/statistics.rb +14 -1
  186. data/lib/ddtrace/transport/traces.rb +7 -2
  187. data/lib/ddtrace/utils.rb +16 -13
  188. data/lib/ddtrace/utils/forking.rb +52 -0
  189. data/lib/ddtrace/version.rb +1 -1
  190. data/lib/ddtrace/workers/async.rb +2 -2
  191. data/lib/ddtrace/workers/loop.rb +1 -1
  192. data/lib/ddtrace/workers/polling.rb +1 -1
  193. data/lib/ddtrace/writer.rb +19 -1
  194. metadata +53 -6
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA256:
3
- metadata.gz: 88a2890ed343b6cfef9752a3bbeb34c4a670a86755c66f99d625fe10f9172f5f
4
- data.tar.gz: e77520aa45dad85b0a8198233dd7e1bc485db11e8d478eb606401aaa9e17f2f9
2
+ SHA1:
3
+ metadata.gz: 71b7fdfa16924489a0ab33f4d34753fb4df23e38
4
+ data.tar.gz: 122e1f6d2f7ba41a82727052a9b5ea36121c4bff
5
5
  SHA512:
6
- metadata.gz: af5e2a13d1960b68d4b4d9c39661052898ce7636eef5866447ee67cb23d2f9e4a4d98aed3be403780a5d31c7c7a588cc7821dcf8b161679e211a6d315932f1bf
7
- data.tar.gz: f0dc91d291576bec7a7b5ed7e494a09d2a976acfe7aa38999d2c8be893117757925253192f83f70317a8f60eee3d7fcc122aa8c33867409db5ade6b94f9148f4
6
+ metadata.gz: bbb7693da41ddbdedeaf7a6fbe4cbfd296e12636c39e4e1a81a30ed392e4b6ac57a10ab0654400373e3ff7150207d0fd511b95cd4367d811b2f58ed028d75187
7
+ data.tar.gz: e2450e8e4f411dcc36ba5548f1d24160571c801fb6ece09b8801e605149695f3f7a44217f8c05b059b82eb3e64c740cf10a9affb80ae39d2e1bb2b5739b4839f
@@ -162,6 +162,7 @@ orbs:
162
162
  environment:
163
163
  - BUNDLE_GEMFILE: /app/Gemfile
164
164
  - TEST_DATADOG_INTEGRATION: 1
165
+ - COVERAGE_BASE_DIR: coverage
165
166
  - *container_postgres
166
167
  - *container_presto
167
168
  - *container_mysql
@@ -170,6 +171,7 @@ orbs:
170
171
  - *container_mongo
171
172
  - *container_memcached
172
173
  - *container_agent
174
+ parallelism: 22
173
175
  steps:
174
176
  - restore_cache:
175
177
  keys:
@@ -177,7 +179,16 @@ orbs:
177
179
  - restore_cache:
178
180
  keys:
179
181
  - '{{ .Environment.CIRCLE_CACHE_VERSION }}-bundle-<<parameters.ruby_version>>-{{ checksum ".circleci/bundle_checksum" }}'
182
+ - run:
183
+ name: Set coverage report directory
184
+ command: |
185
+ # Create a unique coverage directory for this job, to avoid conflicts when merging all results
186
+ echo 'export COVERAGE_DIR="$COVERAGE_BASE_DIR/versions/$CIRCLE_JOB/$CIRCLE_NODE_INDEX"' >> $BASH_ENV
180
187
  - *step_run_all_tests
188
+ - persist_to_workspace:
189
+ root: .
190
+ paths:
191
+ - coverage
181
192
  benchmark:
182
193
  <<: *job_defaults
183
194
  parameters:
@@ -231,6 +242,38 @@ orbs:
231
242
  keys:
232
243
  - '{{ .Environment.CIRCLE_CACHE_VERSION }}-bundle-<<parameters.ruby_version>>-{{ checksum ".circleci/bundle_checksum" }}'
233
244
  - *step_rubocop
245
+ coverage:
246
+ <<: *job_defaults
247
+ parameters:
248
+ ruby_version:
249
+ description: Ruby version
250
+ type: string
251
+ image:
252
+ description: Docker image location
253
+ type: string
254
+ docker:
255
+ - <<: *container_base
256
+ image: <<parameters.image>>
257
+ environment:
258
+ - BUNDLE_GEMFILE: /app/Gemfile
259
+ steps:
260
+ - restore_cache:
261
+ keys:
262
+ - '{{ .Environment.CIRCLE_CACHE_VERSION }}-bundled-repo-<<parameters.ruby_version>>-{{ .Environment.CIRCLE_SHA1 }}'
263
+ - restore_cache:
264
+ keys:
265
+ - '{{ .Environment.CIRCLE_CACHE_VERSION }}-bundle-<<parameters.ruby_version>>-{{ checksum ".circleci/bundle_checksum" }}'
266
+ - attach_workspace:
267
+ at: /tmp/workspace
268
+ - run:
269
+ name: Generate coverage report artifact "coverage/index.html"
270
+ command: COVERAGE_DIR=/tmp/workspace/coverage bundle exec rake coverage:report
271
+ - run:
272
+ name: Generate coverage report artifact "coverage/versions/*/index.html"
273
+ command: COVERAGE_DIR=/tmp/workspace/coverage bundle exec rake coverage:report_per_ruby_version
274
+ - store_artifacts:
275
+ path: /tmp/workspace/coverage/report/
276
+ destination: coverage
234
277
  commands:
235
278
  executors:
236
279
 
@@ -339,6 +382,19 @@ workflows:
339
382
  name: lint
340
383
  requires:
341
384
  - build-2.6
385
+ - orb/coverage:
386
+ <<: *config-2_7
387
+ name: coverage
388
+ requires:
389
+ - test-2.0
390
+ - test-2.1
391
+ - test-2.2
392
+ - test-2.3
393
+ - test-2.4
394
+ - test-2.5
395
+ - test-2.6
396
+ - test-2.7
397
+ - test-jruby-9.2
342
398
  # MRI
343
399
  - orb/checkout:
344
400
  <<: *config-2_0
@@ -0,0 +1,42 @@
1
+ name: Add milestone to pull requests
2
+ on:
3
+ pull_request:
4
+ types: [closed]
5
+ branches:
6
+ - master
7
+
8
+ jobs:
9
+ add_milestone_to_merged:
10
+ if: github.event.pull_request.merged && github.event.pull_request.milestone == null
11
+ name: Add milestone to merged pull requests
12
+ runs-on: ubuntu-latest
13
+ steps:
14
+ - name: Get project milestones
15
+ id: milestones
16
+ uses: actions/github-script@0.9.0
17
+ with:
18
+ github-token: ${{secrets.GITHUB_TOKEN}}
19
+ script: |
20
+ const list = await github.issues.listMilestonesForRepo({
21
+ owner: context.repo.owner,
22
+ repo: context.repo.repo,
23
+ state: 'open'
24
+ })
25
+ // Need to manually sort because "sort by number" isn't part of the api
26
+ // highest number first
27
+ const milestones = list.data.sort((a,b) => (b.number - a.number))
28
+
29
+ return milestones.length == 0 ? null : milestones[0].number
30
+ - name: Update Pull Request
31
+ if: steps.milestones.outputs.result != null
32
+ uses: actions/github-script@0.9.0
33
+ with:
34
+ github-token: ${{secrets.GITHUB_TOKEN}}
35
+ script: |
36
+ // Confusingly, the issues api is used because pull requests are issues
37
+ await github.issues.update({
38
+ owner: context.repo.owner,
39
+ repo: context.repo.repo,
40
+ issue_number: ${{ github.event.pull_request.number }},
41
+ milestone: ${{ steps.milestones.outputs.result }},
42
+ });
@@ -0,0 +1,20 @@
1
+ name: Create next milestone
2
+ on:
3
+ milestone:
4
+ types: [closed]
5
+
6
+ jobs:
7
+ create_next_milestone:
8
+ runs-on: ubuntu-latest
9
+ steps:
10
+ - name: Get next minor version
11
+ id: semvers
12
+ uses: WyriHaximus/github-action-next-semvers@0.1.0
13
+ with:
14
+ version: ${{ github.event.milestone.title }}
15
+ - name: Create next milestone
16
+ uses: WyriHaximus/github-action-create-milestone@0.1.0
17
+ with:
18
+ title: ${{ steps.semvers.outputs.minor }}
19
+ env:
20
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -15,6 +15,7 @@ copy_to_s3:
15
15
  - if: '$CI_COMMIT_BRANCH == "master"'
16
16
  when: on_success
17
17
  - when: manual
18
+ allow_failure: true
18
19
  script:
19
20
  - export ACCESS_KEY_ID=$(aws ssm get-parameter --region us-east-1 --name ci.dd-trace-rb.secret_key_id --with-decryption --query "Parameter.Value" --out text)
20
21
  - export SECRET_ACCESS_KEY=$(aws ssm get-parameter --region us-east-1 --name ci.dd-trace-rb.secret_sec_key_id --with-decryption --query "Parameter.Value" --out text)
@@ -0,0 +1,38 @@
1
+ SimpleCov.add_group 'contrib', '/lib/ddtrace/contrib'
2
+ SimpleCov.add_group 'transport', '/lib/ddtrace/transport'
3
+ SimpleCov.add_group 'spec', '/spec/'
4
+
5
+ SimpleCov.coverage_dir ENV.fetch('COVERAGE_DIR', 'coverage')
6
+
7
+ # Each test run requires its own unique command_name.
8
+ # When running `rake spec:test_name`, the test process doesn't have access to the
9
+ # rake task process, so we have come up with unique values ourselves.
10
+ #
11
+ # The current approach is to combine the ruby engine (ruby-2.7,jruby-9.2),
12
+ # program name (rspec/test), command line arguments (--pattern spec/**/*_spec.rb),
13
+ # and the loaded gemset.
14
+ #
15
+ # This should allow us to distinguish between runs with the same tests, but different gemsets:
16
+ # * appraisal rails5-mysql2 rake spec:rails
17
+ # * appraisal rails5-postgres rake spec:rails
18
+ #
19
+ # Subsequent runs of the same exact test suite should have the same command_name.
20
+ command_line_arguments = ARGV.join(' ')
21
+ gemset_hash = Digest::MD5.hexdigest Gem.loaded_specs.values.map { |x| "#{x.name}#{x.version}" }.sort.join
22
+ ruby_engine = if defined?(RUBY_ENGINE_VERSION)
23
+ "#{RUBY_ENGINE}-#{RUBY_ENGINE_VERSION}"
24
+ else
25
+ "#{RUBY_ENGINE}-#{RUBY_VERSION}" # For Ruby < 2.3
26
+ end
27
+ SimpleCov.command_name "#{ruby_engine}:#{gemset_hash}:#{$PROGRAM_NAME} #{command_line_arguments}"
28
+
29
+ # A very large number to disable result merging timeout
30
+ SimpleCov.merge_timeout 2 ** 31
31
+
32
+ # DEV If we choose to enforce a hard minimum.
33
+ # SimpleCov.minimum_coverage 95
34
+
35
+ # DEV If we choose to enforce a maximum coverage drop.
36
+ # DEV We have to figure out where to store previous coverage data
37
+ # DEV in order to perform this comparison
38
+ # SimpleCov.maximum_coverage_drop 1
data/Appraisals CHANGED
@@ -2,6 +2,12 @@ lib = File.expand_path('../lib', __FILE__)
2
2
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
3
  require 'ddtrace/version'
4
4
 
5
+ def self.gem_cucumber(version)
6
+ appraise "cucumber#{version}" do
7
+ gem 'cucumber', ">=#{version}.0.0", "<#{version + 1}.0.0"
8
+ end
9
+ end
10
+
5
11
  if Gem::Version.new(RUBY_VERSION) < Gem::Version.new(Datadog::VERSION::MINIMUM_RUBY_VERSION)
6
12
  raise NotImplementedError, "Ruby versions < #{Datadog::VERSION::MINIMUM_RUBY_VERSION} are not supported!"
7
13
  elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
@@ -13,6 +19,7 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
13
19
  gem 'pg', '0.15.1', platform: :ruby
14
20
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
15
21
  gem 'rack-cache', '1.7.1'
22
+ gem 'lograge', '< 0.4'
16
23
  end
17
24
 
18
25
  appraise 'rails30-postgres-sidekiq' do
@@ -22,6 +29,7 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
22
29
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
23
30
  gem 'sidekiq', '4.0.0'
24
31
  gem 'rack-cache', '1.7.1'
32
+ gem 'lograge', '< 0.4'
25
33
  end
26
34
 
27
35
  appraise 'rails32-mysql2' do
@@ -31,6 +39,7 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
31
39
  gem 'activerecord-mysql-adapter', platform: :ruby
32
40
  gem 'activerecord-jdbcmysql-adapter', platform: :jruby
33
41
  gem 'rack-cache', '1.7.1'
42
+ gem 'lograge', '< 0.4'
34
43
  end
35
44
 
36
45
  appraise 'rails32-postgres' do
@@ -39,6 +48,7 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
39
48
  gem 'pg', '0.15.1', platform: :ruby
40
49
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
41
50
  gem 'rack-cache', '1.7.1'
51
+ gem 'lograge', '< 0.4'
42
52
  end
43
53
 
44
54
  appraise 'rails32-postgres-redis' do
@@ -49,6 +59,7 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
49
59
  gem 'redis-rails'
50
60
  gem 'redis', '< 4.0'
51
61
  gem 'rack-cache', '1.7.1'
62
+ gem 'lograge', '< 0.4'
52
63
  end
53
64
 
54
65
  appraise 'rails32-postgres-sidekiq' do
@@ -58,6 +69,7 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
58
69
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
59
70
  gem 'sidekiq', '4.0.0'
60
71
  gem 'rack-cache', '1.7.1'
72
+ gem 'lograge', '< 0.4'
61
73
  end
62
74
 
63
75
  appraise 'contrib-old' do
@@ -76,6 +88,7 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
76
88
  gem 'http'
77
89
  gem 'mongo', '< 2.5'
78
90
  gem 'mysql2', '0.3.21', platform: :ruby
91
+ gem 'pg', '< 1.0', platform: :ruby
79
92
  gem 'rack', '1.4.7'
80
93
  gem 'rack-cache', '1.7.1'
81
94
  gem 'rack-test', '0.7.0'
@@ -83,6 +96,7 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
83
96
  gem 'redis', '< 4.0'
84
97
  gem 'rest-client'
85
98
  gem 'resque', '< 2.0'
99
+ gem 'rspec', '>= 3.0.0'
86
100
  gem 'sequel', '~> 4.0', '< 4.37'
87
101
  gem 'sidekiq', '~> 3.5.4'
88
102
  gem 'sinatra', '1.4.5'
@@ -101,6 +115,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
101
115
  gem 'pg', '0.15.1', platform: :ruby
102
116
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
103
117
  gem 'rack-cache', '1.7.1'
118
+ gem 'lograge', '< 0.4'
104
119
  end
105
120
 
106
121
  appraise 'rails30-postgres-sidekiq' do
@@ -110,6 +125,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
110
125
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
111
126
  gem 'sidekiq', '4.0.0'
112
127
  gem 'rack-cache', '1.7.1'
128
+ gem 'lograge', '< 0.4'
113
129
  end
114
130
 
115
131
  appraise 'rails32-mysql2' do
@@ -119,6 +135,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
119
135
  gem 'activerecord-mysql-adapter', platform: :ruby
120
136
  gem 'activerecord-jdbcmysql-adapter', platform: :jruby
121
137
  gem 'rack-cache', '1.7.1'
138
+ gem 'lograge', '< 0.4'
122
139
  end
123
140
 
124
141
  appraise 'rails32-postgres' do
@@ -127,6 +144,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
127
144
  gem 'pg', '0.15.1', platform: :ruby
128
145
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
129
146
  gem 'rack-cache', '1.7.1'
147
+ gem 'lograge', '< 0.4'
130
148
  end
131
149
 
132
150
  appraise 'rails32-postgres-redis' do
@@ -137,6 +155,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
137
155
  gem 'redis-rails'
138
156
  gem 'redis', '< 4.0'
139
157
  gem 'rack-cache', '1.7.1'
158
+ gem 'lograge', '< 0.4'
140
159
  end
141
160
 
142
161
  appraise 'rails32-postgres-sidekiq' do
@@ -146,6 +165,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
146
165
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
147
166
  gem 'sidekiq', '4.0.0'
148
167
  gem 'rack-cache', '1.7.1'
168
+ gem 'lograge', '< 0.4'
149
169
  end
150
170
 
151
171
  appraise 'rails4-mysql2' do
@@ -153,6 +173,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
153
173
  gem 'mysql2', '< 1', platform: :ruby
154
174
  gem 'activerecord-jdbcmysql-adapter', platform: :jruby
155
175
  gem 'sprockets', '< 4'
176
+ gem 'lograge'
156
177
  end
157
178
 
158
179
  appraise 'rails4-postgres' do
@@ -160,6 +181,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
160
181
  gem 'pg', '< 1.0', platform: :ruby
161
182
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
162
183
  gem 'sprockets', '< 4'
184
+ gem 'lograge'
163
185
  end
164
186
 
165
187
  appraise 'rails4-postgres-redis' do
@@ -169,6 +191,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
169
191
  gem 'redis-rails'
170
192
  gem 'redis', '< 4.0'
171
193
  gem 'sprockets', '< 4'
194
+ gem 'lograge'
172
195
  end
173
196
 
174
197
  appraise 'contrib-old' do
@@ -181,13 +204,14 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
181
204
  gem 'delayed_job'
182
205
  gem 'delayed_job_active_record'
183
206
  gem 'elasticsearch-transport'
184
- gem 'presto-client', '>= 0.5.14'
207
+ gem 'presto-client', '>= 0.5.14'
185
208
  gem 'ethon'
186
209
  gem 'excon'
187
210
  gem 'hiredis'
188
211
  gem 'http'
189
212
  gem 'mongo', '< 2.5'
190
213
  gem 'mysql2', '0.3.21', platform: :ruby
214
+ gem 'pg', '< 1.0', platform: :ruby
191
215
  gem 'rack', '1.4.7'
192
216
  gem 'rack-cache', '1.7.1'
193
217
  gem 'rack-test', '0.7.0'
@@ -196,6 +220,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
196
220
  gem 'rest-client'
197
221
  gem 'resque', '< 2.0'
198
222
  gem 'ruby-kafka', '>= 0.7.10'
223
+ gem 'rspec', '>= 3.0.0'
199
224
  gem 'sequel', '~> 4.0', '< 4.37'
200
225
  gem 'shoryuken'
201
226
  gem 'sidekiq', '~> 3.5.4'
@@ -215,6 +240,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
215
240
  gem 'pg', '0.15.1', platform: :ruby
216
241
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
217
242
  gem 'rack-cache', '1.7.1'
243
+ gem 'lograge', '< 0.4'
218
244
  end
219
245
 
220
246
  appraise 'rails30-postgres-sidekiq' do
@@ -224,6 +250,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
224
250
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
225
251
  gem 'sidekiq', '4.0.0'
226
252
  gem 'rack-cache', '1.7.1'
253
+ gem 'lograge', '< 0.4'
227
254
  end
228
255
 
229
256
  appraise 'rails32-mysql2' do
@@ -233,6 +260,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
233
260
  gem 'activerecord-mysql-adapter', platform: :ruby
234
261
  gem 'activerecord-jdbcmysql-adapter', platform: :jruby
235
262
  gem 'rack-cache', '1.7.1'
263
+ gem 'lograge', '< 0.4'
236
264
  end
237
265
 
238
266
  appraise 'rails32-postgres' do
@@ -241,6 +269,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
241
269
  gem 'pg', '0.15.1', platform: :ruby
242
270
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
243
271
  gem 'rack-cache', '1.7.1'
272
+ gem 'lograge', '< 0.4'
244
273
  end
245
274
 
246
275
  appraise 'rails32-postgres-redis' do
@@ -251,6 +280,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
251
280
  gem 'redis-rails'
252
281
  gem 'redis', '< 4.0'
253
282
  gem 'rack-cache', '1.7.1'
283
+ gem 'lograge', '< 0.4'
254
284
  end
255
285
 
256
286
  appraise 'rails32-postgres-sidekiq' do
@@ -260,6 +290,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
260
290
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
261
291
  gem 'sidekiq', '4.0.0'
262
292
  gem 'rack-cache', '1.7.1'
293
+ gem 'lograge', '< 0.4'
263
294
  end
264
295
 
265
296
  appraise 'rails4-mysql2' do
@@ -267,6 +298,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
267
298
  gem 'mysql2', '< 1', platform: :ruby
268
299
  gem 'activerecord-jdbcmysql-adapter', platform: :jruby
269
300
  gem 'sprockets', '< 4'
301
+ gem 'lograge'
270
302
  end
271
303
 
272
304
  appraise 'rails4-postgres' do
@@ -274,6 +306,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
274
306
  gem 'pg', '< 1.0', platform: :ruby
275
307
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
276
308
  gem 'sprockets', '< 4'
309
+ gem 'lograge'
277
310
  end
278
311
 
279
312
  appraise 'rails4-postgres-redis' do
@@ -283,6 +316,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
283
316
  gem 'redis-rails'
284
317
  gem 'redis', '< 4.0'
285
318
  gem 'sprockets', '< 4'
319
+ gem 'lograge'
286
320
  end
287
321
 
288
322
  appraise 'rails4-postgres-sidekiq' do
@@ -292,18 +326,21 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
292
326
  gem 'sidekiq'
293
327
  gem 'activejob'
294
328
  gem 'sprockets', '< 4'
329
+ gem 'lograge'
295
330
  end
296
331
 
297
332
  appraise 'rails5-mysql2' do
298
333
  gem 'rails', '5.2.3'
299
334
  gem 'mysql2', '< 1', platform: :ruby
300
335
  gem 'sprockets', '< 4'
336
+ gem 'lograge'
301
337
  end
302
338
 
303
339
  appraise 'rails5-postgres' do
304
340
  gem 'rails', '5.2.3'
305
341
  gem 'pg', '< 1.0', platform: :ruby
306
342
  gem 'sprockets', '< 4'
343
+ gem 'lograge'
307
344
  end
308
345
 
309
346
  appraise 'rails5-postgres-redis' do
@@ -311,6 +348,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
311
348
  gem 'pg', '< 1.0', platform: :ruby
312
349
  gem 'redis', '>= 4.0.1'
313
350
  gem 'sprockets', '< 4'
351
+ gem 'lograge'
314
352
  end
315
353
 
316
354
  appraise 'rails5-postgres-redis-activesupport' do
@@ -318,6 +356,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
318
356
  gem 'pg', '< 1.0', platform: :ruby
319
357
  gem 'redis', '>= 4.0.1'
320
358
  gem 'sprockets', '< 4'
359
+ gem 'lograge'
321
360
  end
322
361
 
323
362
  appraise 'rails5-postgres-sidekiq' do
@@ -326,6 +365,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
326
365
  gem 'sidekiq'
327
366
  gem 'activejob'
328
367
  gem 'sprockets', '< 4'
368
+ gem 'lograge'
329
369
  end
330
370
 
331
371
  appraise 'contrib' do
@@ -339,6 +379,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
339
379
  gem 'delayed_job'
340
380
  gem 'delayed_job_active_record'
341
381
  gem 'elasticsearch-transport'
382
+ gem 'pg', platform: :ruby
342
383
  gem 'presto-client', '>= 0.5.14'
343
384
  gem 'ethon'
344
385
  gem 'excon'
@@ -358,13 +399,16 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
358
399
  gem 'rest-client'
359
400
  gem 'resque', '< 2.0'
360
401
  gem 'ruby-kafka', '>= 0.7.10'
402
+ gem 'rspec', '>= 3.0.0'
361
403
  gem 'sequel'
362
404
  gem 'shoryuken'
363
405
  gem 'sidekiq'
364
406
  gem 'sinatra'
407
+ gem 'sneakers', '>= 2.12.0'
365
408
  gem 'sqlite3', '~> 1.3.6'
366
409
  gem 'sucker_punch'
367
410
  gem 'typhoeus'
411
+ gem 'que', '>= 1.0.0.beta2'
368
412
  end
369
413
  end
370
414
  elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
@@ -376,6 +420,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
376
420
  gem 'pg', '0.15.1', platform: :ruby
377
421
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
378
422
  gem 'rack-cache', '1.7.1'
423
+ gem 'lograge', '< 0.4'
379
424
  end
380
425
 
381
426
  appraise 'rails30-postgres-sidekiq' do
@@ -385,6 +430,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
385
430
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
386
431
  gem 'sidekiq', '4.0.0'
387
432
  gem 'rack-cache', '1.7.1'
433
+ gem 'lograge', '< 0.4'
388
434
  end
389
435
 
390
436
  appraise 'rails32-mysql2' do
@@ -394,6 +440,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
394
440
  gem 'activerecord-mysql-adapter', platform: :ruby
395
441
  gem 'activerecord-jdbcmysql-adapter', platform: :jruby
396
442
  gem 'rack-cache', '1.7.1'
443
+ gem 'lograge', '< 0.4'
397
444
  end
398
445
 
399
446
  appraise 'rails32-postgres' do
@@ -402,6 +449,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
402
449
  gem 'pg', '0.15.1', platform: :ruby
403
450
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
404
451
  gem 'rack-cache', '1.7.1'
452
+ gem 'lograge', '< 0.4'
405
453
  end
406
454
 
407
455
  appraise 'rails32-postgres-redis' do
@@ -412,6 +460,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
412
460
  gem 'redis-rails'
413
461
  gem 'redis', '< 4.0'
414
462
  gem 'rack-cache', '1.7.1'
463
+ gem 'lograge', '< 0.4'
415
464
  end
416
465
 
417
466
  appraise 'rails32-postgres-sidekiq' do
@@ -421,6 +470,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
421
470
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
422
471
  gem 'sidekiq', '4.0.0'
423
472
  gem 'rack-cache', '1.7.1'
473
+ gem 'lograge', '< 0.4'
424
474
  end
425
475
 
426
476
  appraise 'rails4-mysql2' do
@@ -428,6 +478,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
428
478
  gem 'mysql2', '< 1', platform: :ruby
429
479
  gem 'activerecord-jdbcmysql-adapter', platform: :jruby
430
480
  gem 'sprockets', '< 4'
481
+ gem 'lograge'
431
482
  end
432
483
 
433
484
  appraise 'rails4-postgres' do
@@ -435,6 +486,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
435
486
  gem 'pg', '< 1.0', platform: :ruby
436
487
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
437
488
  gem 'sprockets', '< 4'
489
+ gem 'lograge'
438
490
  end
439
491
 
440
492
  appraise 'rails4-postgres-redis' do
@@ -444,6 +496,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
444
496
  gem 'redis-rails'
445
497
  gem 'redis', '< 4.0'
446
498
  gem 'sprockets', '< 4'
499
+ gem 'lograge'
447
500
  end
448
501
 
449
502
  appraise 'rails4-postgres-sidekiq' do
@@ -453,18 +506,21 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
453
506
  gem 'sidekiq'
454
507
  gem 'activejob'
455
508
  gem 'sprockets', '< 4'
509
+ gem 'lograge'
456
510
  end
457
511
 
458
512
  appraise 'rails5-mysql2' do
459
513
  gem 'rails', '~> 5.2.1'
460
514
  gem 'mysql2', '< 1', platform: :ruby
461
515
  gem 'sprockets', '< 4'
516
+ gem 'lograge'
462
517
  end
463
518
 
464
519
  appraise 'rails5-postgres' do
465
520
  gem 'rails', '~> 5.2.1'
466
521
  gem 'pg', '< 1.0', platform: :ruby
467
522
  gem 'sprockets', '< 4'
523
+ gem 'lograge'
468
524
  end
469
525
 
470
526
  appraise 'rails5-postgres-redis' do
@@ -472,6 +528,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
472
528
  gem 'pg', '< 1.0', platform: :ruby
473
529
  gem 'redis', '>= 4.0.1'
474
530
  gem 'sprockets', '< 4'
531
+ gem 'lograge'
475
532
  end
476
533
 
477
534
  appraise 'rails5-postgres-redis-activesupport' do
@@ -479,6 +536,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
479
536
  gem 'pg', '< 1.0', platform: :ruby
480
537
  gem 'redis', '>= 4.0.1'
481
538
  gem 'sprockets', '< 4'
539
+ gem 'lograge'
482
540
  end
483
541
 
484
542
  appraise 'rails5-postgres-sidekiq' do
@@ -487,8 +545,21 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
487
545
  gem 'sidekiq'
488
546
  gem 'activejob'
489
547
  gem 'sprockets', '< 4'
548
+ gem 'lograge'
490
549
  end
491
550
 
551
+ appraise 'resque2-redis3' do
552
+ gem 'redis', '< 4.0'
553
+ gem 'resque', '>= 2.0'
554
+ end
555
+
556
+ appraise 'resque2-redis4' do
557
+ gem 'redis', '>= 4.0'
558
+ gem 'resque', '>= 2.0'
559
+ end
560
+
561
+ (3..4).each { |v| gem_cucumber(v) }
562
+
492
563
  appraise 'contrib' do
493
564
  gem 'actionpack'
494
565
  gem 'actionview'
@@ -511,6 +582,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
511
582
  gem 'http'
512
583
  gem 'mongo', '>= 2.8.0'
513
584
  gem 'mysql2', '< 0.5', platform: :ruby
585
+ gem 'pg', platform: :ruby
514
586
  gem 'presto-client', '>= 0.5.14'
515
587
  gem 'racecar', '>= 0.3.5'
516
588
  gem 'rack', '< 2.1.0' # Locked due to grape incompatibility: https://github.com/ruby-grape/grape/issues/1980
@@ -518,15 +590,18 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
518
590
  gem 'rake', '>= 12.3'
519
591
  gem 'redis', '< 4.0'
520
592
  gem 'rest-client'
521
- gem 'resque', '< 2.0'
593
+ gem 'resque'
522
594
  gem 'ruby-kafka', '>= 0.7.10'
595
+ gem 'rspec', '>= 3.0.0'
523
596
  gem 'sequel'
524
597
  gem 'shoryuken'
525
598
  gem 'sidekiq'
526
599
  gem 'sinatra'
600
+ gem 'sneakers', '>= 2.12.0'
527
601
  gem 'sqlite3', '~> 1.3.6'
528
602
  gem 'sucker_punch'
529
603
  gem 'typhoeus'
604
+ gem 'que', '>= 1.0.0.beta2'
530
605
  end
531
606
 
532
607
  appraise 'contrib-old' do
@@ -540,12 +615,14 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
540
615
  gem 'rails', '~> 5.2.1'
541
616
  gem 'mysql2', '< 1', platform: :ruby
542
617
  gem 'sprockets', '< 4'
618
+ gem 'lograge'
543
619
  end
544
620
 
545
621
  appraise 'rails5-postgres' do
546
622
  gem 'rails', '~> 5.2.1'
547
623
  gem 'pg', '< 1.0', platform: :ruby
548
624
  gem 'sprockets', '< 4'
625
+ gem 'lograge'
549
626
  end
550
627
 
551
628
  appraise 'rails5-postgres-redis' do
@@ -553,6 +630,7 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
553
630
  gem 'pg', '< 1.0', platform: :ruby
554
631
  gem 'redis', '>= 4.0.1'
555
632
  gem 'sprockets', '< 4'
633
+ gem 'lograge'
556
634
  end
557
635
 
558
636
  appraise 'rails5-postgres-redis-activesupport' do
@@ -560,6 +638,7 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
560
638
  gem 'pg', '< 1.0', platform: :ruby
561
639
  gem 'redis', '>= 4.0.1'
562
640
  gem 'sprockets', '< 4'
641
+ gem 'lograge'
563
642
  end
564
643
 
565
644
  appraise 'rails5-postgres-sidekiq' do
@@ -568,8 +647,21 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
568
647
  gem 'sidekiq'
569
648
  gem 'activejob'
570
649
  gem 'sprockets', '< 4'
650
+ gem 'lograge'
571
651
  end
572
652
 
653
+ appraise 'resque2-redis3' do
654
+ gem 'redis', '< 4.0'
655
+ gem 'resque', '>= 2.0'
656
+ end
657
+
658
+ appraise 'resque2-redis4' do
659
+ gem 'redis', '>= 4.0'
660
+ gem 'resque', '>= 2.0'
661
+ end
662
+
663
+ (3..4).each { |v| gem_cucumber(v) }
664
+
573
665
  appraise 'contrib' do
574
666
  gem 'actionpack'
575
667
  gem 'actionview'
@@ -577,6 +669,7 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
577
669
  gem 'activerecord', '< 5.1.5'
578
670
  gem 'aws-sdk'
579
671
  gem 'concurrent-ruby'
672
+ gem 'cucumber'
580
673
  gem 'dalli'
581
674
  gem 'delayed_job'
582
675
  gem 'delayed_job_active_record'
@@ -592,6 +685,7 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
592
685
  gem 'http'
593
686
  gem 'mongo', '>= 2.8.0'
594
687
  gem 'mysql2', '< 0.5', platform: :ruby
688
+ gem 'pg', platform: :ruby
595
689
  gem 'presto-client', '>= 0.5.14'
596
690
  gem 'racecar', '>= 0.3.5'
597
691
  gem 'rack'
@@ -599,15 +693,18 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
599
693
  gem 'rake', '>= 12.3'
600
694
  gem 'redis', '< 4.0'
601
695
  gem 'rest-client'
602
- gem 'resque', '< 2.0'
696
+ gem 'resque'
603
697
  gem 'ruby-kafka', '>= 0.7.10'
698
+ gem 'rspec', '>= 3.0.0'
604
699
  gem 'sequel'
605
700
  gem 'shoryuken'
606
701
  gem 'sidekiq'
607
702
  gem 'sinatra'
703
+ gem 'sneakers', '>= 2.12.0'
608
704
  gem 'sqlite3', '~> 1.3.6'
609
705
  gem 'sucker_punch'
610
706
  gem 'typhoeus'
707
+ gem 'que', '>= 1.0.0.beta2'
611
708
  end
612
709
 
613
710
  appraise 'contrib-old' do
@@ -616,117 +713,154 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
616
713
  end
617
714
  elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
618
715
  && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.6.0')
619
- if RUBY_PLATFORM != 'java'
620
- appraise 'rails5-mysql2' do
621
- gem 'rails', '~> 5.2.1'
622
- gem 'mysql2', '< 1', platform: :ruby
623
- gem 'sprockets', '< 4'
624
- end
716
+ appraise 'rails5-mysql2' do
717
+ gem 'rails', '~> 5.2.1'
718
+ gem 'mysql2', '< 1', platform: :ruby
719
+ gem 'activerecord-jdbcmysql-adapter', platform: :jruby
720
+ gem 'sprockets', '< 4'
721
+ gem 'lograge'
722
+ end
625
723
 
626
- appraise 'rails5-postgres' do
627
- gem 'rails', '~> 5.2.1'
628
- gem 'pg', '< 1.0', platform: :ruby
629
- gem 'sprockets', '< 4'
630
- end
724
+ appraise 'rails5-postgres' do
725
+ gem 'rails', '~> 5.2.1'
726
+ gem 'pg', '< 1.0', platform: :ruby
727
+ gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
728
+ gem 'sprockets', '< 4'
729
+ gem 'lograge'
730
+ end
631
731
 
632
- appraise 'rails5-postgres-redis' do
633
- gem 'rails', '~> 5.2.1'
634
- gem 'pg', '< 1.0', platform: :ruby
635
- gem 'redis', '>= 4.0.1'
636
- gem 'sprockets', '< 4'
637
- end
732
+ appraise 'rails5-postgres-redis' do
733
+ gem 'rails', '~> 5.2.1'
734
+ gem 'pg', '< 1.0', platform: :ruby
735
+ gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
736
+ gem 'redis', '>= 4.0.1'
737
+ gem 'sprockets', '< 4'
738
+ gem 'lograge'
739
+ end
638
740
 
639
- appraise 'rails5-postgres-redis-activesupport' do
640
- gem 'rails', '~> 5.2.1'
641
- gem 'pg', '< 1.0', platform: :ruby
642
- gem 'redis', '>= 4.0.1'
643
- gem 'sprockets', '< 4'
644
- end
741
+ appraise 'rails5-postgres-redis-activesupport' do
742
+ gem 'rails', '~> 5.2.1'
743
+ gem 'pg', '< 1.0', platform: :ruby
744
+ gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
745
+ gem 'redis', '>= 4.0.1'
746
+ gem 'sprockets', '< 4'
747
+ gem 'lograge'
748
+ end
645
749
 
646
- appraise 'rails5-postgres-sidekiq' do
647
- gem 'rails', '~> 5.2.1'
648
- gem 'pg', '< 1.0', platform: :ruby
649
- gem 'sidekiq'
650
- gem 'activejob'
651
- gem 'sprockets', '< 4'
652
- end
750
+ appraise 'rails5-postgres-sidekiq' do
751
+ gem 'rails', '~> 5.2.1'
752
+ gem 'pg', '< 1.0', platform: :ruby
753
+ gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
754
+ gem 'sidekiq'
755
+ gem 'activejob'
756
+ gem 'sprockets', '< 4'
757
+ gem 'lograge'
758
+ end
653
759
 
654
- appraise 'rails6-mysql2' do
655
- gem 'rails', '~> 6.0.0'
656
- gem 'mysql2', '< 1', platform: :ruby
657
- gem 'sprockets', '< 4'
658
- end
760
+ appraise 'rails6-mysql2' do
761
+ gem 'rails', '~> 6.0.0'
762
+ gem 'mysql2', '< 1', platform: :ruby
763
+ gem 'activerecord-jdbcmysql-adapter', '>= 60', platform: :jruby # try remove >= 60
764
+ gem 'sprockets', '< 4'
765
+ gem 'lograge'
766
+ end
659
767
 
660
- appraise 'rails6-postgres' do
661
- gem 'rails', '~> 6.0.0'
662
- gem 'pg', '< 1.0', platform: :ruby
663
- gem 'sprockets', '< 4'
664
- end
768
+ appraise 'rails6-postgres' do
769
+ gem 'rails', '~> 6.0.0'
770
+ gem 'pg', '< 1.0', platform: :ruby
771
+ gem 'activerecord-jdbcpostgresql-adapter', '>= 60', platform: :jruby
772
+ gem 'sprockets', '< 4'
773
+ gem 'lograge'
774
+ end
665
775
 
666
- appraise 'rails6-postgres-redis' do
667
- gem 'rails', '~> 6.0.0'
668
- gem 'pg', '< 1.0', platform: :ruby
669
- gem 'redis', '>= 4.0.1'
670
- gem 'sprockets', '< 4'
671
- end
776
+ appraise 'rails6-postgres-redis' do
777
+ gem 'rails', '~> 6.0.0'
778
+ gem 'pg', '< 1.0', platform: :ruby
779
+ gem 'activerecord-jdbcpostgresql-adapter', '>= 60', platform: :jruby
780
+ gem 'redis', '>= 4.0.1'
781
+ gem 'sprockets', '< 4'
782
+ gem 'lograge'
783
+ end
672
784
 
673
- appraise 'rails6-postgres-redis-activesupport' do
674
- gem 'rails', '~> 6.0.0'
675
- gem 'pg', '< 1.0', platform: :ruby
676
- gem 'redis', '>= 4.0.1'
677
- gem 'sprockets', '< 4'
678
- end
785
+ appraise 'rails6-postgres-redis-activesupport' do
786
+ gem 'rails', '~> 6.0.0'
787
+ gem 'pg', '< 1.0', platform: :ruby
788
+ gem 'activerecord-jdbcpostgresql-adapter', '>= 60', platform: :jruby
789
+ gem 'redis', '>= 4.0.1'
790
+ gem 'sprockets', '< 4'
791
+ gem 'lograge'
792
+ end
679
793
 
680
- appraise 'rails6-postgres-sidekiq' do
681
- gem 'rails', '~> 6.0.0'
682
- gem 'pg', '< 1.0', platform: :ruby
683
- gem 'sidekiq'
684
- gem 'activejob'
685
- gem 'sprockets', '< 4'
686
- end
794
+ appraise 'rails6-postgres-sidekiq' do
795
+ gem 'rails', '~> 6.0.0'
796
+ gem 'pg', '< 1.0', platform: :ruby
797
+ gem 'activerecord-jdbcpostgresql-adapter', '>= 60', platform: :jruby
798
+ gem 'sidekiq'
799
+ gem 'activejob'
800
+ gem 'sprockets', '< 4'
801
+ gem 'lograge'
802
+ end
687
803
 
688
- appraise 'contrib' do
689
- gem 'actionpack'
690
- gem 'actionview'
691
- gem 'active_model_serializers', '>= 0.10.0'
692
- gem 'activerecord'
693
- gem 'aws-sdk'
694
- gem 'concurrent-ruby'
695
- gem 'dalli'
696
- gem 'delayed_job'
697
- gem 'delayed_job_active_record'
698
- gem 'elasticsearch-transport'
699
- gem 'ethon'
700
- gem 'excon'
701
- gem 'faraday'
702
- gem 'grape'
703
- gem 'graphql'
704
- gem 'grpc'
705
- gem 'hiredis'
706
- gem 'http'
707
- gem 'mongo', '>= 2.8.0'
708
- gem 'mysql2', '< 0.5', platform: :ruby
709
- gem 'presto-client', '>= 0.5.14'
710
- gem 'racecar', '>= 0.3.5'
711
- gem 'rack'
712
- gem 'rack-test'
713
- gem 'rake', '>= 12.3'
714
- gem 'redis', '< 4.0'
715
- gem 'rest-client'
716
- gem 'resque', '< 2.0'
717
- gem 'ruby-kafka', '>= 0.7.10'
718
- gem 'sequel'
719
- gem 'shoryuken'
720
- gem 'sidekiq'
721
- gem 'sinatra'
722
- gem 'sqlite3', '~> 1.4.1'
723
- gem 'sucker_punch'
724
- gem 'typhoeus'
725
- end
804
+ appraise 'resque2-redis3' do
805
+ gem 'redis', '< 4.0'
806
+ gem 'resque', '>= 2.0'
807
+ end
726
808
 
727
- appraise 'contrib-old' do
728
- gem 'faraday', '0.17'
729
- end
809
+ appraise 'resque2-redis4' do
810
+ gem 'redis', '>= 4.0'
811
+ gem 'resque', '>= 2.0'
812
+ end
813
+
814
+ (3..5).each { |v| gem_cucumber(v) }
815
+
816
+ appraise 'contrib' do
817
+ gem 'actionpack'
818
+ gem 'actionview'
819
+ gem 'active_model_serializers', '>= 0.10.0'
820
+ gem 'activerecord'
821
+ gem 'aws-sdk'
822
+ gem 'concurrent-ruby'
823
+ gem 'cucumber'
824
+ gem 'dalli'
825
+ gem 'delayed_job'
826
+ gem 'delayed_job_active_record'
827
+ gem 'elasticsearch-transport'
828
+ gem 'ethon'
829
+ gem 'excon'
830
+ gem 'faraday'
831
+ gem 'grape'
832
+ gem 'graphql'
833
+ gem 'grpc', platform: :ruby
834
+ gem 'hiredis'
835
+ gem 'http'
836
+ gem 'mongo', '>= 2.8.0'
837
+ gem 'mysql2', '< 0.5', platform: :ruby
838
+ gem 'activerecord-jdbcmysql-adapter', platform: :jruby
839
+ gem 'pg', platform: :ruby
840
+ gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
841
+ gem 'presto-client', '>= 0.5.14'
842
+ gem 'racecar', '>= 0.3.5'
843
+ gem 'rack'
844
+ gem 'rack-test'
845
+ gem 'rake', '>= 12.3'
846
+ gem 'redis', '< 4.0'
847
+ gem 'rest-client'
848
+ gem 'resque'
849
+ gem 'ruby-kafka', '>= 0.7.10'
850
+ gem 'rspec', '>= 3.0.0'
851
+ gem 'sequel'
852
+ gem 'shoryuken'
853
+ gem 'sidekiq'
854
+ gem 'sinatra'
855
+ gem 'sneakers', '>= 2.12.0'
856
+ gem 'sqlite3', '~> 1.4.1', platform: :ruby
857
+ gem 'sucker_punch'
858
+ gem 'typhoeus'
859
+ gem 'que', '>= 1.0.0.beta2'
860
+ end
861
+
862
+ appraise 'contrib-old' do
863
+ gem 'faraday', '0.17'
730
864
  end
731
865
  elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
732
866
  && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.7.0')
@@ -735,12 +869,14 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
735
869
  gem 'rails', '~> 5.2.1'
736
870
  gem 'mysql2', '< 1', platform: :ruby
737
871
  gem 'sprockets', '< 4'
872
+ gem 'lograge'
738
873
  end
739
874
 
740
875
  appraise 'rails5-postgres' do
741
876
  gem 'rails', '~> 5.2.1'
742
877
  gem 'pg', '< 1.0', platform: :ruby
743
878
  gem 'sprockets', '< 4'
879
+ gem 'lograge'
744
880
  end
745
881
 
746
882
  appraise 'rails5-postgres-redis' do
@@ -748,6 +884,7 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
748
884
  gem 'pg', '< 1.0', platform: :ruby
749
885
  gem 'redis', '>= 4.0.1'
750
886
  gem 'sprockets', '< 4'
887
+ gem 'lograge'
751
888
  end
752
889
 
753
890
  appraise 'rails5-postgres-redis-activesupport' do
@@ -755,6 +892,7 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
755
892
  gem 'pg', '< 1.0', platform: :ruby
756
893
  gem 'redis', '>= 4.0.1'
757
894
  gem 'sprockets', '< 4'
895
+ gem 'lograge'
758
896
  end
759
897
 
760
898
  appraise 'rails5-postgres-sidekiq' do
@@ -763,18 +901,21 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
763
901
  gem 'sidekiq'
764
902
  gem 'activejob'
765
903
  gem 'sprockets', '< 4'
904
+ gem 'lograge'
766
905
  end
767
906
 
768
907
  appraise 'rails6-mysql2' do
769
908
  gem 'rails', '~> 6.0.0'
770
909
  gem 'mysql2', '< 1', platform: :ruby
771
910
  gem 'sprockets', '< 4'
911
+ gem 'lograge'
772
912
  end
773
913
 
774
914
  appraise 'rails6-postgres' do
775
915
  gem 'rails', '~> 6.0.0'
776
916
  gem 'pg', '< 1.0', platform: :ruby
777
917
  gem 'sprockets', '< 4'
918
+ gem 'lograge'
778
919
  end
779
920
 
780
921
  appraise 'rails6-postgres-redis' do
@@ -782,6 +923,7 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
782
923
  gem 'pg', '< 1.0', platform: :ruby
783
924
  gem 'redis', '>= 4.0.1'
784
925
  gem 'sprockets', '< 4'
926
+ gem 'lograge'
785
927
  end
786
928
 
787
929
  appraise 'rails6-postgres-redis-activesupport' do
@@ -789,6 +931,7 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
789
931
  gem 'pg', '< 1.0', platform: :ruby
790
932
  gem 'redis', '>= 4.0.1'
791
933
  gem 'sprockets', '< 4'
934
+ gem 'lograge'
792
935
  end
793
936
 
794
937
  appraise 'rails6-postgres-sidekiq' do
@@ -797,8 +940,21 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
797
940
  gem 'sidekiq'
798
941
  gem 'activejob'
799
942
  gem 'sprockets', '< 4'
943
+ gem 'lograge'
944
+ end
945
+
946
+ appraise 'resque2-redis3' do
947
+ gem 'redis', '< 4.0'
948
+ gem 'resque', '>= 2.0'
949
+ end
950
+
951
+ appraise 'resque2-redis4' do
952
+ gem 'redis', '>= 4.0'
953
+ gem 'resque', '>= 2.0'
800
954
  end
801
955
 
956
+ (3..5).each { |v| gem_cucumber(v) }
957
+
802
958
  appraise 'contrib' do
803
959
  gem 'actionpack'
804
960
  gem 'actionview'
@@ -806,6 +962,7 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
806
962
  gem 'activerecord'
807
963
  gem 'aws-sdk'
808
964
  gem 'concurrent-ruby'
965
+ gem 'cucumber'
809
966
  gem 'dalli'
810
967
  gem 'delayed_job'
811
968
  gem 'delayed_job_active_record'
@@ -820,6 +977,7 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
820
977
  gem 'http'
821
978
  gem 'mongo', '>= 2.8.0'
822
979
  gem 'mysql2', '< 0.5', platform: :ruby
980
+ gem 'pg', platform: :ruby
823
981
  gem 'presto-client', '>= 0.5.14'
824
982
  gem 'racecar', '>= 0.3.5'
825
983
  gem 'rack'
@@ -827,15 +985,18 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
827
985
  gem 'rake', '>= 12.3'
828
986
  gem 'redis', '< 4.0'
829
987
  gem 'rest-client'
830
- gem 'resque', '< 2.0'
988
+ gem 'resque'
831
989
  gem 'ruby-kafka', '>= 0.7.10'
990
+ gem 'rspec', '>= 3.0.0'
832
991
  gem 'sequel'
833
992
  gem 'shoryuken'
834
993
  gem 'sidekiq'
835
994
  gem 'sinatra'
995
+ gem 'sneakers', '>= 2.12.0'
836
996
  gem 'sqlite3', '~> 1.4.1'
837
997
  gem 'sucker_punch'
838
998
  gem 'typhoeus'
999
+ gem 'que', '>= 1.0.0.beta2'
839
1000
  end
840
1001
 
841
1002
  appraise 'contrib-old' do
@@ -848,12 +1009,14 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
848
1009
  gem 'rails', '~> 5.2.1'
849
1010
  gem 'mysql2', '< 0.5', platform: :ruby
850
1011
  gem 'sprockets', '< 4'
1012
+ gem 'lograge'
851
1013
  end
852
1014
 
853
1015
  appraise 'rails5-postgres' do
854
1016
  gem 'rails', '~> 5.2.1'
855
1017
  gem 'pg', '< 1.0', platform: :ruby
856
1018
  gem 'sprockets', '< 4'
1019
+ gem 'lograge'
857
1020
  end
858
1021
 
859
1022
  appraise 'rails5-postgres-redis' do
@@ -862,6 +1025,7 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
862
1025
  gem 'redis-rails'
863
1026
  gem 'redis'
864
1027
  gem 'sprockets', '< 4'
1028
+ gem 'lograge'
865
1029
  end
866
1030
 
867
1031
  appraise 'rails5-postgres-redis-activesupport' do
@@ -870,6 +1034,7 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
870
1034
  gem 'redis-rails'
871
1035
  gem 'redis'
872
1036
  gem 'sprockets', '< 4'
1037
+ gem 'lograge'
873
1038
  end
874
1039
 
875
1040
  appraise 'rails5-postgres-sidekiq' do
@@ -878,18 +1043,21 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
878
1043
  gem 'sidekiq'
879
1044
  gem 'activejob'
880
1045
  gem 'sprockets', '< 4'
1046
+ gem 'lograge'
881
1047
  end
882
1048
 
883
1049
  appraise 'rails6-mysql2' do
884
1050
  gem 'rails', '~> 6.0.0'
885
1051
  gem 'mysql2', '< 0.6', platform: :ruby
886
1052
  gem 'sprockets', '< 4'
1053
+ gem 'lograge'
887
1054
  end
888
1055
 
889
1056
  appraise 'rails6-postgres' do
890
1057
  gem 'rails', '~> 6.0.0'
891
1058
  gem 'pg', '< 1.0', platform: :ruby
892
1059
  gem 'sprockets', '< 4'
1060
+ gem 'lograge'
893
1061
  end
894
1062
 
895
1063
  appraise 'rails6-postgres-redis' do
@@ -898,6 +1066,7 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
898
1066
  gem 'redis-rails'
899
1067
  gem 'redis'
900
1068
  gem 'sprockets', '< 4'
1069
+ gem 'lograge'
901
1070
  end
902
1071
 
903
1072
  appraise 'rails6-postgres-redis-activesupport' do
@@ -906,6 +1075,7 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
906
1075
  gem 'redis-rails'
907
1076
  gem 'redis'
908
1077
  gem 'sprockets', '< 4'
1078
+ gem 'lograge'
909
1079
  end
910
1080
 
911
1081
  appraise 'rails6-postgres-sidekiq' do
@@ -914,8 +1084,21 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
914
1084
  gem 'sidekiq'
915
1085
  gem 'activejob'
916
1086
  gem 'sprockets', '< 4'
1087
+ gem 'lograge'
1088
+ end
1089
+
1090
+ appraise 'resque2-redis3' do
1091
+ gem 'redis', '< 4.0'
1092
+ gem 'resque', '>= 2.0'
917
1093
  end
918
1094
 
1095
+ appraise 'resque2-redis4' do
1096
+ gem 'redis', '>= 4.0'
1097
+ gem 'resque', '>= 2.0'
1098
+ end
1099
+
1100
+ (3..5).each { |v| gem_cucumber(v) }
1101
+
919
1102
  appraise 'contrib' do
920
1103
  gem 'actionpack'
921
1104
  gem 'actionview'
@@ -923,6 +1106,7 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
923
1106
  gem 'activerecord'
924
1107
  gem 'aws-sdk'
925
1108
  gem 'concurrent-ruby'
1109
+ gem 'cucumber'
926
1110
  gem 'dalli'
927
1111
  gem 'delayed_job'
928
1112
  gem 'delayed_job_active_record'
@@ -936,6 +1120,7 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
936
1120
  gem 'http'
937
1121
  gem 'mongo', '>= 2.8.0'
938
1122
  gem 'mysql2', '< 0.5', platform: :ruby
1123
+ gem 'pg', platform: :ruby
939
1124
  gem 'presto-client', '>= 0.5.14'
940
1125
  gem 'racecar', '>= 0.3.5'
941
1126
  gem 'rack'
@@ -943,15 +1128,18 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
943
1128
  gem 'rake', '>= 12.3'
944
1129
  gem 'redis', '< 4.0'
945
1130
  gem 'rest-client'
946
- gem 'resque', '< 2.0'
1131
+ gem 'resque'
947
1132
  gem 'ruby-kafka', '>= 0.7.10'
1133
+ gem 'rspec', '>= 3.0.0'
948
1134
  gem 'sequel'
949
1135
  gem 'shoryuken'
950
1136
  gem 'sidekiq'
951
1137
  gem 'sinatra'
1138
+ gem 'sneakers', '>= 2.12.0'
952
1139
  gem 'sqlite3', '~> 1.4.1'
953
1140
  gem 'sucker_punch'
954
1141
  gem 'typhoeus'
1142
+ gem 'que', '>= 1.0.0.beta2'
955
1143
  end
956
1144
 
957
1145
  appraise 'contrib-old' do