ddtrace 0.36.0 → 0.41.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (197) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +59 -1
  3. data/.gitignore +2 -0
  4. data/.gitlab-ci.yml +27 -0
  5. data/.simplecov +38 -0
  6. data/Appraisals +131 -6
  7. data/CHANGELOG.md +198 -1
  8. data/Rakefile +504 -467
  9. data/ddtrace.gemspec +7 -0
  10. data/docker-compose.yml +2 -2
  11. data/docs/DevelopmentGuide.md +16 -0
  12. data/docs/GettingStarted.md +192 -111
  13. data/lib/ddtrace.rb +4 -0
  14. data/lib/ddtrace/buffer.rb +154 -43
  15. data/lib/ddtrace/configuration.rb +39 -5
  16. data/lib/ddtrace/configuration/components.rb +4 -7
  17. data/lib/ddtrace/configuration/options.rb +3 -1
  18. data/lib/ddtrace/configuration/pin_setup.rb +3 -2
  19. data/lib/ddtrace/configuration/settings.rb +32 -4
  20. data/lib/ddtrace/contrib/action_cable/configuration/settings.rb +7 -2
  21. data/lib/ddtrace/contrib/action_cable/ext.rb +5 -2
  22. data/lib/ddtrace/contrib/action_pack/configuration/settings.rb +7 -2
  23. data/lib/ddtrace/contrib/action_pack/ext.rb +5 -2
  24. data/lib/ddtrace/contrib/action_view/configuration/settings.rb +7 -2
  25. data/lib/ddtrace/contrib/action_view/ext.rb +5 -2
  26. data/lib/ddtrace/contrib/active_model_serializers/configuration/settings.rb +7 -2
  27. data/lib/ddtrace/contrib/active_model_serializers/ext.rb +5 -2
  28. data/lib/ddtrace/contrib/active_record/configuration/settings.rb +7 -2
  29. data/lib/ddtrace/contrib/active_record/events/sql.rb +4 -0
  30. data/lib/ddtrace/contrib/active_record/ext.rb +5 -2
  31. data/lib/ddtrace/contrib/active_support/cache/redis.rb +1 -1
  32. data/lib/ddtrace/contrib/active_support/configuration/settings.rb +7 -2
  33. data/lib/ddtrace/contrib/active_support/ext.rb +5 -2
  34. data/lib/ddtrace/contrib/active_support/notifications/event.rb +3 -1
  35. data/lib/ddtrace/contrib/active_support/notifications/subscription.rb +3 -3
  36. data/lib/ddtrace/contrib/aws/configuration/settings.rb +7 -2
  37. data/lib/ddtrace/contrib/aws/ext.rb +5 -2
  38. data/lib/ddtrace/contrib/aws/instrumentation.rb +4 -0
  39. data/lib/ddtrace/contrib/concurrent_ruby/configuration/settings.rb +5 -0
  40. data/lib/ddtrace/contrib/concurrent_ruby/context_composite_executor_service.rb +9 -3
  41. data/lib/ddtrace/contrib/concurrent_ruby/ext.rb +1 -0
  42. data/lib/ddtrace/contrib/configuration/settings.rb +19 -0
  43. data/lib/ddtrace/contrib/dalli/configuration/settings.rb +7 -2
  44. data/lib/ddtrace/contrib/dalli/ext.rb +5 -2
  45. data/lib/ddtrace/contrib/dalli/instrumentation.rb +4 -0
  46. data/lib/ddtrace/contrib/dalli/patcher.rb +1 -5
  47. data/lib/ddtrace/contrib/delayed_job/configuration/settings.rb +7 -2
  48. data/lib/ddtrace/contrib/delayed_job/ext.rb +5 -2
  49. data/lib/ddtrace/contrib/elasticsearch/configuration/settings.rb +7 -2
  50. data/lib/ddtrace/contrib/elasticsearch/ext.rb +5 -2
  51. data/lib/ddtrace/contrib/elasticsearch/patcher.rb +5 -2
  52. data/lib/ddtrace/contrib/ethon/configuration/settings.rb +7 -2
  53. data/lib/ddtrace/contrib/ethon/easy_patch.rb +4 -2
  54. data/lib/ddtrace/contrib/ethon/ext.rb +5 -2
  55. data/lib/ddtrace/contrib/ethon/multi_patch.rb +4 -0
  56. data/lib/ddtrace/contrib/excon/configuration/settings.rb +7 -2
  57. data/lib/ddtrace/contrib/excon/ext.rb +5 -2
  58. data/lib/ddtrace/contrib/excon/middleware.rb +4 -0
  59. data/lib/ddtrace/contrib/extensions.rb +11 -1
  60. data/lib/ddtrace/contrib/faraday/configuration/settings.rb +7 -2
  61. data/lib/ddtrace/contrib/faraday/ext.rb +5 -2
  62. data/lib/ddtrace/contrib/faraday/middleware.rb +9 -3
  63. data/lib/ddtrace/contrib/faraday/patcher.rb +13 -5
  64. data/lib/ddtrace/contrib/grape/configuration/settings.rb +7 -3
  65. data/lib/ddtrace/contrib/grape/endpoint.rb +6 -4
  66. data/lib/ddtrace/contrib/grape/ext.rb +5 -2
  67. data/lib/ddtrace/contrib/grape/patcher.rb +1 -1
  68. data/lib/ddtrace/contrib/graphql/configuration/settings.rb +7 -2
  69. data/lib/ddtrace/contrib/graphql/ext.rb +5 -2
  70. data/lib/ddtrace/contrib/graphql/patcher.rb +6 -3
  71. data/lib/ddtrace/contrib/grpc/configuration/settings.rb +7 -2
  72. data/lib/ddtrace/contrib/grpc/datadog_interceptor.rb +1 -1
  73. data/lib/ddtrace/contrib/grpc/datadog_interceptor/client.rb +5 -3
  74. data/lib/ddtrace/contrib/grpc/datadog_interceptor/server.rb +4 -0
  75. data/lib/ddtrace/contrib/grpc/ext.rb +5 -2
  76. data/lib/ddtrace/contrib/grpc/patcher.rb +1 -5
  77. data/lib/ddtrace/contrib/http/configuration/settings.rb +7 -2
  78. data/lib/ddtrace/contrib/http/ext.rb +5 -2
  79. data/lib/ddtrace/contrib/http/instrumentation.rb +16 -7
  80. data/lib/ddtrace/contrib/httprb/configuration/settings.rb +32 -0
  81. data/lib/ddtrace/contrib/httprb/ext.rb +17 -0
  82. data/lib/ddtrace/contrib/httprb/instrumentation.rb +163 -0
  83. data/lib/ddtrace/contrib/httprb/integration.rb +43 -0
  84. data/lib/ddtrace/contrib/httprb/patcher.rb +35 -0
  85. data/lib/ddtrace/contrib/kafka/configuration/settings.rb +30 -0
  86. data/lib/ddtrace/contrib/kafka/consumer_event.rb +14 -0
  87. data/lib/ddtrace/contrib/kafka/consumer_group_event.rb +14 -0
  88. data/lib/ddtrace/contrib/kafka/event.rb +51 -0
  89. data/lib/ddtrace/contrib/kafka/events.rb +44 -0
  90. data/lib/ddtrace/contrib/kafka/events/connection/request.rb +34 -0
  91. data/lib/ddtrace/contrib/kafka/events/consumer/process_batch.rb +41 -0
  92. data/lib/ddtrace/contrib/kafka/events/consumer/process_message.rb +39 -0
  93. data/lib/ddtrace/contrib/kafka/events/consumer_group/heartbeat.rb +39 -0
  94. data/lib/ddtrace/contrib/kafka/events/consumer_group/join_group.rb +29 -0
  95. data/lib/ddtrace/contrib/kafka/events/consumer_group/leave_group.rb +29 -0
  96. data/lib/ddtrace/contrib/kafka/events/consumer_group/sync_group.rb +29 -0
  97. data/lib/ddtrace/contrib/kafka/events/produce_operation/send_messages.rb +32 -0
  98. data/lib/ddtrace/contrib/kafka/events/producer/deliver_messages.rb +35 -0
  99. data/lib/ddtrace/contrib/kafka/ext.rb +41 -0
  100. data/lib/ddtrace/contrib/kafka/integration.rb +39 -0
  101. data/lib/ddtrace/contrib/kafka/patcher.rb +26 -0
  102. data/lib/ddtrace/contrib/mongodb/configuration/settings.rb +7 -2
  103. data/lib/ddtrace/contrib/mongodb/ext.rb +5 -2
  104. data/lib/ddtrace/contrib/mongodb/instrumentation.rb +1 -2
  105. data/lib/ddtrace/contrib/mongodb/subscribers.rb +4 -0
  106. data/lib/ddtrace/contrib/mysql2/configuration/settings.rb +7 -2
  107. data/lib/ddtrace/contrib/mysql2/ext.rb +5 -2
  108. data/lib/ddtrace/contrib/mysql2/instrumentation.rb +5 -1
  109. data/lib/ddtrace/contrib/patcher.rb +14 -8
  110. data/lib/ddtrace/contrib/presto/configuration/settings.rb +7 -2
  111. data/lib/ddtrace/contrib/presto/ext.rb +5 -2
  112. data/lib/ddtrace/contrib/presto/instrumentation.rb +3 -0
  113. data/lib/ddtrace/contrib/que/configuration/settings.rb +42 -0
  114. data/lib/ddtrace/contrib/que/ext.rb +30 -0
  115. data/lib/ddtrace/contrib/que/integration.rb +42 -0
  116. data/lib/ddtrace/contrib/que/patcher.rb +24 -0
  117. data/lib/ddtrace/contrib/que/tracer.rb +56 -0
  118. data/lib/ddtrace/contrib/racecar/configuration/settings.rb +7 -2
  119. data/lib/ddtrace/contrib/racecar/event.rb +4 -0
  120. data/lib/ddtrace/contrib/racecar/events.rb +2 -0
  121. data/lib/ddtrace/contrib/racecar/events/consume.rb +27 -0
  122. data/lib/ddtrace/contrib/racecar/ext.rb +6 -2
  123. data/lib/ddtrace/contrib/rack/configuration/settings.rb +7 -2
  124. data/lib/ddtrace/contrib/rack/ext.rb +5 -2
  125. data/lib/ddtrace/contrib/rack/middlewares.rb +17 -12
  126. data/lib/ddtrace/contrib/rails/configuration/settings.rb +10 -12
  127. data/lib/ddtrace/contrib/rails/ext.rb +6 -2
  128. data/lib/ddtrace/contrib/rails/framework.rb +14 -21
  129. data/lib/ddtrace/contrib/rails/log_injection.rb +81 -0
  130. data/lib/ddtrace/contrib/rails/middlewares.rb +7 -2
  131. data/lib/ddtrace/contrib/rails/patcher.rb +15 -0
  132. data/lib/ddtrace/contrib/rake/configuration/settings.rb +7 -3
  133. data/lib/ddtrace/contrib/rake/ext.rb +5 -2
  134. data/lib/ddtrace/contrib/redis/configuration/settings.rb +7 -2
  135. data/lib/ddtrace/contrib/redis/ext.rb +5 -2
  136. data/lib/ddtrace/contrib/redis/patcher.rb +1 -1
  137. data/lib/ddtrace/contrib/redis/tags.rb +4 -0
  138. data/lib/ddtrace/contrib/resque/configuration/settings.rb +7 -2
  139. data/lib/ddtrace/contrib/resque/ext.rb +5 -2
  140. data/lib/ddtrace/contrib/rest_client/configuration/settings.rb +7 -2
  141. data/lib/ddtrace/contrib/rest_client/ext.rb +5 -2
  142. data/lib/ddtrace/contrib/rest_client/request_patch.rb +6 -2
  143. data/lib/ddtrace/contrib/sequel/configuration/settings.rb +7 -2
  144. data/lib/ddtrace/contrib/sequel/database.rb +4 -2
  145. data/lib/ddtrace/contrib/sequel/dataset.rb +3 -2
  146. data/lib/ddtrace/contrib/sequel/ext.rb +6 -2
  147. data/lib/ddtrace/contrib/sequel/utils.rb +35 -6
  148. data/lib/ddtrace/contrib/shoryuken/configuration/settings.rb +7 -2
  149. data/lib/ddtrace/contrib/shoryuken/ext.rb +5 -2
  150. data/lib/ddtrace/contrib/sidekiq/configuration/settings.rb +7 -2
  151. data/lib/ddtrace/contrib/sidekiq/ext.rb +6 -2
  152. data/lib/ddtrace/contrib/sidekiq/patcher.rb +8 -1
  153. data/lib/ddtrace/contrib/sidekiq/server_tracer.rb +1 -0
  154. data/lib/ddtrace/contrib/sinatra/configuration/settings.rb +7 -2
  155. data/lib/ddtrace/contrib/sinatra/env.rb +5 -4
  156. data/lib/ddtrace/contrib/sinatra/ext.rb +5 -2
  157. data/lib/ddtrace/contrib/sinatra/tracer.rb +21 -42
  158. data/lib/ddtrace/contrib/sinatra/tracer_middleware.rb +50 -23
  159. data/lib/ddtrace/contrib/sneakers/configuration/settings.rb +32 -0
  160. data/lib/ddtrace/contrib/sneakers/ext.rb +22 -0
  161. data/lib/ddtrace/contrib/sneakers/integration.rb +41 -0
  162. data/lib/ddtrace/contrib/sneakers/patcher.rb +24 -0
  163. data/lib/ddtrace/contrib/sneakers/tracer.rb +58 -0
  164. data/lib/ddtrace/contrib/sucker_punch/configuration/settings.rb +7 -2
  165. data/lib/ddtrace/contrib/sucker_punch/ext.rb +5 -2
  166. data/lib/ddtrace/contrib/sucker_punch/patcher.rb +1 -1
  167. data/lib/ddtrace/diagnostics/environment_logger.rb +278 -0
  168. data/lib/ddtrace/environment.rb +17 -3
  169. data/lib/ddtrace/ext/diagnostics.rb +3 -0
  170. data/lib/ddtrace/ext/environment.rb +2 -0
  171. data/lib/ddtrace/ext/integration.rb +8 -0
  172. data/lib/ddtrace/ext/runtime.rb +1 -0
  173. data/lib/ddtrace/ext/transport.rb +1 -0
  174. data/lib/ddtrace/logger.rb +1 -1
  175. data/lib/ddtrace/opentracer/distributed_headers.rb +1 -1
  176. data/lib/ddtrace/pin.rb +25 -2
  177. data/lib/ddtrace/pipeline/span_filter.rb +15 -15
  178. data/lib/ddtrace/propagation/grpc_propagator.rb +2 -2
  179. data/lib/ddtrace/runtime/metrics.rb +24 -6
  180. data/lib/ddtrace/sampler.rb +4 -2
  181. data/lib/ddtrace/span.rb +162 -27
  182. data/lib/ddtrace/tracer.rb +18 -12
  183. data/lib/ddtrace/transport/http.rb +15 -0
  184. data/lib/ddtrace/transport/http/adapters/net.rb +16 -2
  185. data/lib/ddtrace/transport/http/adapters/test.rb +6 -0
  186. data/lib/ddtrace/transport/http/adapters/unix_socket.rb +4 -0
  187. data/lib/ddtrace/transport/http/statistics.rb +14 -1
  188. data/lib/ddtrace/transport/response.rb +11 -0
  189. data/lib/ddtrace/transport/traces.rb +7 -2
  190. data/lib/ddtrace/utils.rb +7 -3
  191. data/lib/ddtrace/version.rb +1 -1
  192. data/lib/ddtrace/workers/async.rb +2 -2
  193. data/lib/ddtrace/workers/loop.rb +1 -1
  194. data/lib/ddtrace/workers/polling.rb +1 -1
  195. data/lib/ddtrace/workers/trace_writer.rb +3 -0
  196. data/lib/ddtrace/writer.rb +33 -12
  197. metadata +138 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d7736a0630cef1812e8e2a69fa420a97913cf9c1c47e1c173e0039c6e12558f0
4
- data.tar.gz: 4eb212df3b7c240a3d8ddf83555fe862cffad98208c037d2cab4120c9a6a7217
3
+ metadata.gz: 0bbda933f09b8f29d20edc57d6825f6491158161b7e5164252deb006931e0e7d
4
+ data.tar.gz: b3aaa6718e835fbfe97db64faa62f82b2f3ff76aefadb53cb27fb9b236b842e3
5
5
  SHA512:
6
- metadata.gz: 8fc864b6eb9180e82c5362f45b3ffe05d4d5e4a845372a158293c8514e9b574d59930f84fdea86f534f50faf9cca15167ad25a2b8985699143d2f3b78578b919
7
- data.tar.gz: e1cd1855fcf6b31579b84c93a2477a47c87d8a9fdbd0361de59be09969825eb5afd0daa79802036d03c04a3b747a7cff214e74b5053d3108b0fd8b86dd97efff
6
+ metadata.gz: 60d239de8c63091ede6a810127ad580629428b96181982cf543e77f45a89087dfdd238b98418fe72f0e27ebefae6d5f730208c5f6149541dfe1d1c6923579826
7
+ data.tar.gz: 1d3657bc28458d0b50d0c2c68d3397b20ef6b2d4c2a0adf2ec834f701fd2c7701bcdac7f6fbce913743482e5eb2492a6409baf7c9c37c3467677ead705fd752e
@@ -54,7 +54,9 @@ step_rubocop: &step_rubocop
54
54
  step_appraisal_install: &step_appraisal_install
55
55
  run:
56
56
  name: Install Appraisal gems
57
- command: bundle exec appraisal install
57
+ command: |
58
+ bundle exec appraisal clean # Ensure we fetch the latest version of dependencies
59
+ bundle exec appraisal install
58
60
  step_compute_bundle_checksum: &step_compute_bundle_checksum
59
61
  run:
60
62
  name: Compute bundle checksum
@@ -160,6 +162,7 @@ orbs:
160
162
  environment:
161
163
  - BUNDLE_GEMFILE: /app/Gemfile
162
164
  - TEST_DATADOG_INTEGRATION: 1
165
+ - COVERAGE_BASE_DIR: coverage
163
166
  - *container_postgres
164
167
  - *container_presto
165
168
  - *container_mysql
@@ -168,6 +171,7 @@ orbs:
168
171
  - *container_mongo
169
172
  - *container_memcached
170
173
  - *container_agent
174
+ parallelism: 22
171
175
  steps:
172
176
  - restore_cache:
173
177
  keys:
@@ -175,7 +179,16 @@ orbs:
175
179
  - restore_cache:
176
180
  keys:
177
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
178
187
  - *step_run_all_tests
188
+ - persist_to_workspace:
189
+ root: .
190
+ paths:
191
+ - coverage
179
192
  benchmark:
180
193
  <<: *job_defaults
181
194
  parameters:
@@ -229,6 +242,38 @@ orbs:
229
242
  keys:
230
243
  - '{{ .Environment.CIRCLE_CACHE_VERSION }}-bundle-<<parameters.ruby_version>>-{{ checksum ".circleci/bundle_checksum" }}'
231
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
232
277
  commands:
233
278
  executors:
234
279
 
@@ -337,6 +382,19 @@ workflows:
337
382
  name: lint
338
383
  requires:
339
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
340
398
  # MRI
341
399
  - orb/checkout:
342
400
  <<: *config-2_0
data/.gitignore CHANGED
@@ -50,6 +50,8 @@ build-iPhoneSimulator/
50
50
 
51
51
  # unless supporting rvm < 1.11.0 or doing something fancy, ignore this:
52
52
  .rvmrc
53
+ # Ignore local variables
54
+ .envrc
53
55
 
54
56
  # lock files
55
57
  Gemfile.lock
@@ -0,0 +1,27 @@
1
+ stages:
2
+ - deploy
3
+
4
+ variables:
5
+ INDEX_FILE: index.txt
6
+
7
+ .common: &common
8
+ tags: [ "runner:main", "size:large" ]
9
+
10
+ copy_to_s3:
11
+ <<: *common
12
+ stage: deploy
13
+ image: registry.gitlab.com/gitlab-org/cloud-deploy/aws-base:latest
14
+ rules:
15
+ - if: '$CI_COMMIT_BRANCH == "master"'
16
+ when: on_success
17
+ - when: manual
18
+ allow_failure: true
19
+ script:
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)
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)
22
+ - export AWS_ACCESS_KEY_ID=$ACCESS_KEY_ID
23
+ - export AWS_SECRET_ACCESS_KEY=$SECRET_ACCESS_KEY
24
+ - echo $CI_COMMIT_REF_NAME >> $INDEX_FILE
25
+ - echo $CI_COMMIT_SHA >> $INDEX_FILE
26
+ - echo $GITLAB_USER_NAME >> $INDEX_FILE
27
+ - aws s3 cp $INDEX_FILE s3://datadog-reliability-env/ruby/$INDEX_FILE
@@ -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
@@ -13,6 +13,7 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
13
13
  gem 'pg', '0.15.1', platform: :ruby
14
14
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
15
15
  gem 'rack-cache', '1.7.1'
16
+ gem 'lograge', '< 0.4'
16
17
  end
17
18
 
18
19
  appraise 'rails30-postgres-sidekiq' do
@@ -22,6 +23,7 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
22
23
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
23
24
  gem 'sidekiq', '4.0.0'
24
25
  gem 'rack-cache', '1.7.1'
26
+ gem 'lograge', '< 0.4'
25
27
  end
26
28
 
27
29
  appraise 'rails32-mysql2' do
@@ -31,6 +33,7 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
31
33
  gem 'activerecord-mysql-adapter', platform: :ruby
32
34
  gem 'activerecord-jdbcmysql-adapter', platform: :jruby
33
35
  gem 'rack-cache', '1.7.1'
36
+ gem 'lograge', '< 0.4'
34
37
  end
35
38
 
36
39
  appraise 'rails32-postgres' do
@@ -39,6 +42,7 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
39
42
  gem 'pg', '0.15.1', platform: :ruby
40
43
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
41
44
  gem 'rack-cache', '1.7.1'
45
+ gem 'lograge', '< 0.4'
42
46
  end
43
47
 
44
48
  appraise 'rails32-postgres-redis' do
@@ -49,6 +53,7 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
49
53
  gem 'redis-rails'
50
54
  gem 'redis', '< 4.0'
51
55
  gem 'rack-cache', '1.7.1'
56
+ gem 'lograge', '< 0.4'
52
57
  end
53
58
 
54
59
  appraise 'rails32-postgres-sidekiq' do
@@ -58,6 +63,7 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
58
63
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
59
64
  gem 'sidekiq', '4.0.0'
60
65
  gem 'rack-cache', '1.7.1'
66
+ gem 'lograge', '< 0.4'
61
67
  end
62
68
 
63
69
  appraise 'contrib-old' do
@@ -73,8 +79,10 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
73
79
  gem 'ethon'
74
80
  gem 'excon'
75
81
  gem 'hiredis'
82
+ gem 'http'
76
83
  gem 'mongo', '< 2.5'
77
84
  gem 'mysql2', '0.3.21', platform: :ruby
85
+ gem 'pg', '< 1.0', platform: :ruby
78
86
  gem 'rack', '1.4.7'
79
87
  gem 'rack-cache', '1.7.1'
80
88
  gem 'rack-test', '0.7.0'
@@ -100,6 +108,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
100
108
  gem 'pg', '0.15.1', platform: :ruby
101
109
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
102
110
  gem 'rack-cache', '1.7.1'
111
+ gem 'lograge', '< 0.4'
103
112
  end
104
113
 
105
114
  appraise 'rails30-postgres-sidekiq' do
@@ -109,6 +118,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
109
118
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
110
119
  gem 'sidekiq', '4.0.0'
111
120
  gem 'rack-cache', '1.7.1'
121
+ gem 'lograge', '< 0.4'
112
122
  end
113
123
 
114
124
  appraise 'rails32-mysql2' do
@@ -118,6 +128,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
118
128
  gem 'activerecord-mysql-adapter', platform: :ruby
119
129
  gem 'activerecord-jdbcmysql-adapter', platform: :jruby
120
130
  gem 'rack-cache', '1.7.1'
131
+ gem 'lograge', '< 0.4'
121
132
  end
122
133
 
123
134
  appraise 'rails32-postgres' do
@@ -126,6 +137,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
126
137
  gem 'pg', '0.15.1', platform: :ruby
127
138
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
128
139
  gem 'rack-cache', '1.7.1'
140
+ gem 'lograge', '< 0.4'
129
141
  end
130
142
 
131
143
  appraise 'rails32-postgres-redis' do
@@ -136,6 +148,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
136
148
  gem 'redis-rails'
137
149
  gem 'redis', '< 4.0'
138
150
  gem 'rack-cache', '1.7.1'
151
+ gem 'lograge', '< 0.4'
139
152
  end
140
153
 
141
154
  appraise 'rails32-postgres-sidekiq' do
@@ -145,6 +158,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
145
158
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
146
159
  gem 'sidekiq', '4.0.0'
147
160
  gem 'rack-cache', '1.7.1'
161
+ gem 'lograge', '< 0.4'
148
162
  end
149
163
 
150
164
  appraise 'rails4-mysql2' do
@@ -152,6 +166,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
152
166
  gem 'mysql2', '< 1', platform: :ruby
153
167
  gem 'activerecord-jdbcmysql-adapter', platform: :jruby
154
168
  gem 'sprockets', '< 4'
169
+ gem 'lograge'
155
170
  end
156
171
 
157
172
  appraise 'rails4-postgres' do
@@ -159,6 +174,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
159
174
  gem 'pg', '< 1.0', platform: :ruby
160
175
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
161
176
  gem 'sprockets', '< 4'
177
+ gem 'lograge'
162
178
  end
163
179
 
164
180
  appraise 'rails4-postgres-redis' do
@@ -168,6 +184,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
168
184
  gem 'redis-rails'
169
185
  gem 'redis', '< 4.0'
170
186
  gem 'sprockets', '< 4'
187
+ gem 'lograge'
171
188
  end
172
189
 
173
190
  appraise 'contrib-old' do
@@ -180,12 +197,14 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
180
197
  gem 'delayed_job'
181
198
  gem 'delayed_job_active_record'
182
199
  gem 'elasticsearch-transport'
183
- gem 'presto-client', '>= 0.5.14'
200
+ gem 'presto-client', '>= 0.5.14'
184
201
  gem 'ethon'
185
202
  gem 'excon'
186
203
  gem 'hiredis'
204
+ gem 'http'
187
205
  gem 'mongo', '< 2.5'
188
206
  gem 'mysql2', '0.3.21', platform: :ruby
207
+ gem 'pg', '< 1.0', platform: :ruby
189
208
  gem 'rack', '1.4.7'
190
209
  gem 'rack-cache', '1.7.1'
191
210
  gem 'rack-test', '0.7.0'
@@ -193,6 +212,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
193
212
  gem 'redis', '< 4.0'
194
213
  gem 'rest-client'
195
214
  gem 'resque', '< 2.0'
215
+ gem 'ruby-kafka', '>= 0.7.10'
196
216
  gem 'sequel', '~> 4.0', '< 4.37'
197
217
  gem 'shoryuken'
198
218
  gem 'sidekiq', '~> 3.5.4'
@@ -212,6 +232,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
212
232
  gem 'pg', '0.15.1', platform: :ruby
213
233
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
214
234
  gem 'rack-cache', '1.7.1'
235
+ gem 'lograge', '< 0.4'
215
236
  end
216
237
 
217
238
  appraise 'rails30-postgres-sidekiq' do
@@ -221,6 +242,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
221
242
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
222
243
  gem 'sidekiq', '4.0.0'
223
244
  gem 'rack-cache', '1.7.1'
245
+ gem 'lograge', '< 0.4'
224
246
  end
225
247
 
226
248
  appraise 'rails32-mysql2' do
@@ -230,6 +252,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
230
252
  gem 'activerecord-mysql-adapter', platform: :ruby
231
253
  gem 'activerecord-jdbcmysql-adapter', platform: :jruby
232
254
  gem 'rack-cache', '1.7.1'
255
+ gem 'lograge', '< 0.4'
233
256
  end
234
257
 
235
258
  appraise 'rails32-postgres' do
@@ -238,6 +261,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
238
261
  gem 'pg', '0.15.1', platform: :ruby
239
262
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
240
263
  gem 'rack-cache', '1.7.1'
264
+ gem 'lograge', '< 0.4'
241
265
  end
242
266
 
243
267
  appraise 'rails32-postgres-redis' do
@@ -248,6 +272,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
248
272
  gem 'redis-rails'
249
273
  gem 'redis', '< 4.0'
250
274
  gem 'rack-cache', '1.7.1'
275
+ gem 'lograge', '< 0.4'
251
276
  end
252
277
 
253
278
  appraise 'rails32-postgres-sidekiq' do
@@ -257,6 +282,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
257
282
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
258
283
  gem 'sidekiq', '4.0.0'
259
284
  gem 'rack-cache', '1.7.1'
285
+ gem 'lograge', '< 0.4'
260
286
  end
261
287
 
262
288
  appraise 'rails4-mysql2' do
@@ -264,6 +290,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
264
290
  gem 'mysql2', '< 1', platform: :ruby
265
291
  gem 'activerecord-jdbcmysql-adapter', platform: :jruby
266
292
  gem 'sprockets', '< 4'
293
+ gem 'lograge'
267
294
  end
268
295
 
269
296
  appraise 'rails4-postgres' do
@@ -271,6 +298,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
271
298
  gem 'pg', '< 1.0', platform: :ruby
272
299
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
273
300
  gem 'sprockets', '< 4'
301
+ gem 'lograge'
274
302
  end
275
303
 
276
304
  appraise 'rails4-postgres-redis' do
@@ -280,6 +308,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
280
308
  gem 'redis-rails'
281
309
  gem 'redis', '< 4.0'
282
310
  gem 'sprockets', '< 4'
311
+ gem 'lograge'
283
312
  end
284
313
 
285
314
  appraise 'rails4-postgres-sidekiq' do
@@ -289,18 +318,21 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
289
318
  gem 'sidekiq'
290
319
  gem 'activejob'
291
320
  gem 'sprockets', '< 4'
321
+ gem 'lograge'
292
322
  end
293
323
 
294
324
  appraise 'rails5-mysql2' do
295
325
  gem 'rails', '5.2.3'
296
326
  gem 'mysql2', '< 1', platform: :ruby
297
327
  gem 'sprockets', '< 4'
328
+ gem 'lograge'
298
329
  end
299
330
 
300
331
  appraise 'rails5-postgres' do
301
332
  gem 'rails', '5.2.3'
302
333
  gem 'pg', '< 1.0', platform: :ruby
303
334
  gem 'sprockets', '< 4'
335
+ gem 'lograge'
304
336
  end
305
337
 
306
338
  appraise 'rails5-postgres-redis' do
@@ -308,6 +340,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
308
340
  gem 'pg', '< 1.0', platform: :ruby
309
341
  gem 'redis', '>= 4.0.1'
310
342
  gem 'sprockets', '< 4'
343
+ gem 'lograge'
311
344
  end
312
345
 
313
346
  appraise 'rails5-postgres-redis-activesupport' do
@@ -315,6 +348,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
315
348
  gem 'pg', '< 1.0', platform: :ruby
316
349
  gem 'redis', '>= 4.0.1'
317
350
  gem 'sprockets', '< 4'
351
+ gem 'lograge'
318
352
  end
319
353
 
320
354
  appraise 'rails5-postgres-sidekiq' do
@@ -323,6 +357,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
323
357
  gem 'sidekiq'
324
358
  gem 'activejob'
325
359
  gem 'sprockets', '< 4'
360
+ gem 'lograge'
326
361
  end
327
362
 
328
363
  appraise 'contrib' do
@@ -336,6 +371,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
336
371
  gem 'delayed_job'
337
372
  gem 'delayed_job_active_record'
338
373
  gem 'elasticsearch-transport'
374
+ gem 'pg', platform: :ruby
339
375
  gem 'presto-client', '>= 0.5.14'
340
376
  gem 'ethon'
341
377
  gem 'excon'
@@ -344,6 +380,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
344
380
  gem 'graphql', '< 1.9.4'
345
381
  gem 'grpc', '~> 1.21.0' # Last version to support Ruby < 2.3
346
382
  gem 'hiredis'
383
+ gem 'http'
347
384
  gem 'mongo', '>= 2.8.0'
348
385
  gem 'mysql2', '< 0.5', platform: :ruby
349
386
  gem 'racecar', '>= 0.3.5'
@@ -353,13 +390,16 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
353
390
  gem 'redis', '< 4.0'
354
391
  gem 'rest-client'
355
392
  gem 'resque', '< 2.0'
393
+ gem 'ruby-kafka', '>= 0.7.10'
356
394
  gem 'sequel'
357
395
  gem 'shoryuken'
358
396
  gem 'sidekiq'
359
397
  gem 'sinatra'
398
+ gem 'sneakers', '>= 2.12.0'
360
399
  gem 'sqlite3', '~> 1.3.6'
361
400
  gem 'sucker_punch'
362
401
  gem 'typhoeus'
402
+ gem 'que', '>= 1.0.0.beta2'
363
403
  end
364
404
  end
365
405
  elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
@@ -371,6 +411,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
371
411
  gem 'pg', '0.15.1', platform: :ruby
372
412
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
373
413
  gem 'rack-cache', '1.7.1'
414
+ gem 'lograge', '< 0.4'
374
415
  end
375
416
 
376
417
  appraise 'rails30-postgres-sidekiq' do
@@ -380,6 +421,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
380
421
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
381
422
  gem 'sidekiq', '4.0.0'
382
423
  gem 'rack-cache', '1.7.1'
424
+ gem 'lograge', '< 0.4'
383
425
  end
384
426
 
385
427
  appraise 'rails32-mysql2' do
@@ -389,6 +431,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
389
431
  gem 'activerecord-mysql-adapter', platform: :ruby
390
432
  gem 'activerecord-jdbcmysql-adapter', platform: :jruby
391
433
  gem 'rack-cache', '1.7.1'
434
+ gem 'lograge', '< 0.4'
392
435
  end
393
436
 
394
437
  appraise 'rails32-postgres' do
@@ -397,6 +440,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
397
440
  gem 'pg', '0.15.1', platform: :ruby
398
441
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
399
442
  gem 'rack-cache', '1.7.1'
443
+ gem 'lograge', '< 0.4'
400
444
  end
401
445
 
402
446
  appraise 'rails32-postgres-redis' do
@@ -407,6 +451,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
407
451
  gem 'redis-rails'
408
452
  gem 'redis', '< 4.0'
409
453
  gem 'rack-cache', '1.7.1'
454
+ gem 'lograge', '< 0.4'
410
455
  end
411
456
 
412
457
  appraise 'rails32-postgres-sidekiq' do
@@ -416,6 +461,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
416
461
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
417
462
  gem 'sidekiq', '4.0.0'
418
463
  gem 'rack-cache', '1.7.1'
464
+ gem 'lograge', '< 0.4'
419
465
  end
420
466
 
421
467
  appraise 'rails4-mysql2' do
@@ -423,6 +469,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
423
469
  gem 'mysql2', '< 1', platform: :ruby
424
470
  gem 'activerecord-jdbcmysql-adapter', platform: :jruby
425
471
  gem 'sprockets', '< 4'
472
+ gem 'lograge'
426
473
  end
427
474
 
428
475
  appraise 'rails4-postgres' do
@@ -430,6 +477,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
430
477
  gem 'pg', '< 1.0', platform: :ruby
431
478
  gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
432
479
  gem 'sprockets', '< 4'
480
+ gem 'lograge'
433
481
  end
434
482
 
435
483
  appraise 'rails4-postgres-redis' do
@@ -439,6 +487,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
439
487
  gem 'redis-rails'
440
488
  gem 'redis', '< 4.0'
441
489
  gem 'sprockets', '< 4'
490
+ gem 'lograge'
442
491
  end
443
492
 
444
493
  appraise 'rails4-postgres-sidekiq' do
@@ -448,18 +497,21 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
448
497
  gem 'sidekiq'
449
498
  gem 'activejob'
450
499
  gem 'sprockets', '< 4'
500
+ gem 'lograge'
451
501
  end
452
502
 
453
503
  appraise 'rails5-mysql2' do
454
504
  gem 'rails', '~> 5.2.1'
455
505
  gem 'mysql2', '< 1', platform: :ruby
456
506
  gem 'sprockets', '< 4'
507
+ gem 'lograge'
457
508
  end
458
509
 
459
510
  appraise 'rails5-postgres' do
460
511
  gem 'rails', '~> 5.2.1'
461
512
  gem 'pg', '< 1.0', platform: :ruby
462
513
  gem 'sprockets', '< 4'
514
+ gem 'lograge'
463
515
  end
464
516
 
465
517
  appraise 'rails5-postgres-redis' do
@@ -467,6 +519,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
467
519
  gem 'pg', '< 1.0', platform: :ruby
468
520
  gem 'redis', '>= 4.0.1'
469
521
  gem 'sprockets', '< 4'
522
+ gem 'lograge'
470
523
  end
471
524
 
472
525
  appraise 'rails5-postgres-redis-activesupport' do
@@ -474,6 +527,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
474
527
  gem 'pg', '< 1.0', platform: :ruby
475
528
  gem 'redis', '>= 4.0.1'
476
529
  gem 'sprockets', '< 4'
530
+ gem 'lograge'
477
531
  end
478
532
 
479
533
  appraise 'rails5-postgres-sidekiq' do
@@ -482,6 +536,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
482
536
  gem 'sidekiq'
483
537
  gem 'activejob'
484
538
  gem 'sprockets', '< 4'
539
+ gem 'lograge'
485
540
  end
486
541
 
487
542
  appraise 'contrib' do
@@ -503,8 +558,10 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
503
558
  gem 'grpc'
504
559
  gem 'google-protobuf', '~> 3.11.0' # Last version to support Ruby < 2.5
505
560
  gem 'hiredis'
561
+ gem 'http'
506
562
  gem 'mongo', '>= 2.8.0'
507
563
  gem 'mysql2', '< 0.5', platform: :ruby
564
+ gem 'pg', platform: :ruby
508
565
  gem 'presto-client', '>= 0.5.14'
509
566
  gem 'racecar', '>= 0.3.5'
510
567
  gem 'rack', '< 2.1.0' # Locked due to grape incompatibility: https://github.com/ruby-grape/grape/issues/1980
@@ -513,13 +570,16 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
513
570
  gem 'redis', '< 4.0'
514
571
  gem 'rest-client'
515
572
  gem 'resque', '< 2.0'
573
+ gem 'ruby-kafka', '>= 0.7.10'
516
574
  gem 'sequel'
517
575
  gem 'shoryuken'
518
576
  gem 'sidekiq'
519
577
  gem 'sinatra'
578
+ gem 'sneakers', '>= 2.12.0'
520
579
  gem 'sqlite3', '~> 1.3.6'
521
580
  gem 'sucker_punch'
522
581
  gem 'typhoeus'
582
+ gem 'que', '>= 1.0.0.beta2'
523
583
  end
524
584
 
525
585
  appraise 'contrib-old' do
@@ -533,12 +593,14 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
533
593
  gem 'rails', '~> 5.2.1'
534
594
  gem 'mysql2', '< 1', platform: :ruby
535
595
  gem 'sprockets', '< 4'
596
+ gem 'lograge'
536
597
  end
537
598
 
538
599
  appraise 'rails5-postgres' do
539
600
  gem 'rails', '~> 5.2.1'
540
601
  gem 'pg', '< 1.0', platform: :ruby
541
602
  gem 'sprockets', '< 4'
603
+ gem 'lograge'
542
604
  end
543
605
 
544
606
  appraise 'rails5-postgres-redis' do
@@ -546,6 +608,7 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
546
608
  gem 'pg', '< 1.0', platform: :ruby
547
609
  gem 'redis', '>= 4.0.1'
548
610
  gem 'sprockets', '< 4'
611
+ gem 'lograge'
549
612
  end
550
613
 
551
614
  appraise 'rails5-postgres-redis-activesupport' do
@@ -553,6 +616,7 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
553
616
  gem 'pg', '< 1.0', platform: :ruby
554
617
  gem 'redis', '>= 4.0.1'
555
618
  gem 'sprockets', '< 4'
619
+ gem 'lograge'
556
620
  end
557
621
 
558
622
  appraise 'rails5-postgres-sidekiq' do
@@ -561,6 +625,7 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
561
625
  gem 'sidekiq'
562
626
  gem 'activejob'
563
627
  gem 'sprockets', '< 4'
628
+ gem 'lograge'
564
629
  end
565
630
 
566
631
  appraise 'contrib' do
@@ -582,8 +647,10 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
582
647
  gem 'grpc'
583
648
  gem 'google-protobuf', '~> 3.11.0' # Last version to support Ruby < 2.5
584
649
  gem 'hiredis'
650
+ gem 'http'
585
651
  gem 'mongo', '>= 2.8.0'
586
652
  gem 'mysql2', '< 0.5', platform: :ruby
653
+ gem 'pg', platform: :ruby
587
654
  gem 'presto-client', '>= 0.5.14'
588
655
  gem 'racecar', '>= 0.3.5'
589
656
  gem 'rack'
@@ -592,13 +659,16 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
592
659
  gem 'redis', '< 4.0'
593
660
  gem 'rest-client'
594
661
  gem 'resque', '< 2.0'
662
+ gem 'ruby-kafka', '>= 0.7.10'
595
663
  gem 'sequel'
596
664
  gem 'shoryuken'
597
665
  gem 'sidekiq'
598
666
  gem 'sinatra'
667
+ gem 'sneakers', '>= 2.12.0'
599
668
  gem 'sqlite3', '~> 1.3.6'
600
669
  gem 'sucker_punch'
601
670
  gem 'typhoeus'
671
+ gem 'que', '>= 1.0.0.beta2'
602
672
  end
603
673
 
604
674
  appraise 'contrib-old' do
@@ -607,73 +677,92 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
607
677
  end
608
678
  elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
609
679
  && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.6.0')
610
- if RUBY_PLATFORM != 'java'
611
680
  appraise 'rails5-mysql2' do
612
681
  gem 'rails', '~> 5.2.1'
613
682
  gem 'mysql2', '< 1', platform: :ruby
683
+ gem 'activerecord-jdbcmysql-adapter', platform: :jruby
614
684
  gem 'sprockets', '< 4'
685
+ gem 'lograge'
615
686
  end
616
687
 
617
688
  appraise 'rails5-postgres' do
618
689
  gem 'rails', '~> 5.2.1'
619
690
  gem 'pg', '< 1.0', platform: :ruby
691
+ gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
620
692
  gem 'sprockets', '< 4'
693
+ gem 'lograge'
621
694
  end
622
695
 
623
696
  appraise 'rails5-postgres-redis' do
624
697
  gem 'rails', '~> 5.2.1'
625
698
  gem 'pg', '< 1.0', platform: :ruby
699
+ gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
626
700
  gem 'redis', '>= 4.0.1'
627
701
  gem 'sprockets', '< 4'
702
+ gem 'lograge'
628
703
  end
629
704
 
630
705
  appraise 'rails5-postgres-redis-activesupport' do
631
706
  gem 'rails', '~> 5.2.1'
632
707
  gem 'pg', '< 1.0', platform: :ruby
708
+ gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
633
709
  gem 'redis', '>= 4.0.1'
634
710
  gem 'sprockets', '< 4'
711
+ gem 'lograge'
635
712
  end
636
713
 
637
714
  appraise 'rails5-postgres-sidekiq' do
638
715
  gem 'rails', '~> 5.2.1'
639
716
  gem 'pg', '< 1.0', platform: :ruby
717
+ gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
640
718
  gem 'sidekiq'
641
719
  gem 'activejob'
642
720
  gem 'sprockets', '< 4'
721
+ gem 'lograge'
643
722
  end
644
723
 
645
724
  appraise 'rails6-mysql2' do
646
725
  gem 'rails', '~> 6.0.0'
647
726
  gem 'mysql2', '< 1', platform: :ruby
727
+ gem 'activerecord-jdbcmysql-adapter', '>= 60', platform: :jruby # try remove >= 60
648
728
  gem 'sprockets', '< 4'
729
+ gem 'lograge'
649
730
  end
650
731
 
651
732
  appraise 'rails6-postgres' do
652
733
  gem 'rails', '~> 6.0.0'
653
734
  gem 'pg', '< 1.0', platform: :ruby
735
+ gem 'activerecord-jdbcpostgresql-adapter', '>= 60', platform: :jruby
654
736
  gem 'sprockets', '< 4'
737
+ gem 'lograge'
655
738
  end
656
739
 
657
740
  appraise 'rails6-postgres-redis' do
658
741
  gem 'rails', '~> 6.0.0'
659
742
  gem 'pg', '< 1.0', platform: :ruby
743
+ gem 'activerecord-jdbcpostgresql-adapter', '>= 60', platform: :jruby
660
744
  gem 'redis', '>= 4.0.1'
661
745
  gem 'sprockets', '< 4'
746
+ gem 'lograge'
662
747
  end
663
748
 
664
749
  appraise 'rails6-postgres-redis-activesupport' do
665
750
  gem 'rails', '~> 6.0.0'
666
751
  gem 'pg', '< 1.0', platform: :ruby
752
+ gem 'activerecord-jdbcpostgresql-adapter', '>= 60', platform: :jruby
667
753
  gem 'redis', '>= 4.0.1'
668
754
  gem 'sprockets', '< 4'
755
+ gem 'lograge'
669
756
  end
670
757
 
671
758
  appraise 'rails6-postgres-sidekiq' do
672
759
  gem 'rails', '~> 6.0.0'
673
760
  gem 'pg', '< 1.0', platform: :ruby
761
+ gem 'activerecord-jdbcpostgresql-adapter', '>= 60', platform: :jruby
674
762
  gem 'sidekiq'
675
763
  gem 'activejob'
676
764
  gem 'sprockets', '< 4'
765
+ gem 'lograge'
677
766
  end
678
767
 
679
768
  appraise 'contrib' do
@@ -692,11 +781,15 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
692
781
  gem 'faraday'
693
782
  gem 'grape'
694
783
  gem 'graphql'
695
- gem 'grpc'
784
+ gem 'grpc', platform: :ruby
696
785
  gem 'hiredis'
786
+ gem 'http'
697
787
  gem 'mongo', '>= 2.8.0'
698
788
  gem 'mysql2', '< 0.5', platform: :ruby
699
- gem 'presto-client', '>= 0.5.14'
789
+ gem 'activerecord-jdbcmysql-adapter', platform: :jruby
790
+ gem 'pg', platform: :ruby
791
+ gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
792
+ gem 'presto-client', '>= 0.5.14'
700
793
  gem 'racecar', '>= 0.3.5'
701
794
  gem 'rack'
702
795
  gem 'rack-test'
@@ -704,19 +797,21 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
704
797
  gem 'redis', '< 4.0'
705
798
  gem 'rest-client'
706
799
  gem 'resque', '< 2.0'
800
+ gem 'ruby-kafka', '>= 0.7.10'
707
801
  gem 'sequel'
708
802
  gem 'shoryuken'
709
803
  gem 'sidekiq'
710
804
  gem 'sinatra'
711
- gem 'sqlite3', '~> 1.4.1'
805
+ gem 'sneakers', '>= 2.12.0'
806
+ gem 'sqlite3', '~> 1.4.1', platform: :ruby
712
807
  gem 'sucker_punch'
713
808
  gem 'typhoeus'
809
+ gem 'que', '>= 1.0.0.beta2'
714
810
  end
715
811
 
716
812
  appraise 'contrib-old' do
717
813
  gem 'faraday', '0.17'
718
814
  end
719
- end
720
815
  elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
721
816
  && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.7.0')
722
817
  if RUBY_PLATFORM != 'java'
@@ -724,12 +819,14 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
724
819
  gem 'rails', '~> 5.2.1'
725
820
  gem 'mysql2', '< 1', platform: :ruby
726
821
  gem 'sprockets', '< 4'
822
+ gem 'lograge'
727
823
  end
728
824
 
729
825
  appraise 'rails5-postgres' do
730
826
  gem 'rails', '~> 5.2.1'
731
827
  gem 'pg', '< 1.0', platform: :ruby
732
828
  gem 'sprockets', '< 4'
829
+ gem 'lograge'
733
830
  end
734
831
 
735
832
  appraise 'rails5-postgres-redis' do
@@ -737,6 +834,7 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
737
834
  gem 'pg', '< 1.0', platform: :ruby
738
835
  gem 'redis', '>= 4.0.1'
739
836
  gem 'sprockets', '< 4'
837
+ gem 'lograge'
740
838
  end
741
839
 
742
840
  appraise 'rails5-postgres-redis-activesupport' do
@@ -744,6 +842,7 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
744
842
  gem 'pg', '< 1.0', platform: :ruby
745
843
  gem 'redis', '>= 4.0.1'
746
844
  gem 'sprockets', '< 4'
845
+ gem 'lograge'
747
846
  end
748
847
 
749
848
  appraise 'rails5-postgres-sidekiq' do
@@ -752,18 +851,21 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
752
851
  gem 'sidekiq'
753
852
  gem 'activejob'
754
853
  gem 'sprockets', '< 4'
854
+ gem 'lograge'
755
855
  end
756
856
 
757
857
  appraise 'rails6-mysql2' do
758
858
  gem 'rails', '~> 6.0.0'
759
859
  gem 'mysql2', '< 1', platform: :ruby
760
860
  gem 'sprockets', '< 4'
861
+ gem 'lograge'
761
862
  end
762
863
 
763
864
  appraise 'rails6-postgres' do
764
865
  gem 'rails', '~> 6.0.0'
765
866
  gem 'pg', '< 1.0', platform: :ruby
766
867
  gem 'sprockets', '< 4'
868
+ gem 'lograge'
767
869
  end
768
870
 
769
871
  appraise 'rails6-postgres-redis' do
@@ -771,6 +873,7 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
771
873
  gem 'pg', '< 1.0', platform: :ruby
772
874
  gem 'redis', '>= 4.0.1'
773
875
  gem 'sprockets', '< 4'
876
+ gem 'lograge'
774
877
  end
775
878
 
776
879
  appraise 'rails6-postgres-redis-activesupport' do
@@ -778,6 +881,7 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
778
881
  gem 'pg', '< 1.0', platform: :ruby
779
882
  gem 'redis', '>= 4.0.1'
780
883
  gem 'sprockets', '< 4'
884
+ gem 'lograge'
781
885
  end
782
886
 
783
887
  appraise 'rails6-postgres-sidekiq' do
@@ -786,6 +890,7 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
786
890
  gem 'sidekiq'
787
891
  gem 'activejob'
788
892
  gem 'sprockets', '< 4'
893
+ gem 'lograge'
789
894
  end
790
895
 
791
896
  appraise 'contrib' do
@@ -806,8 +911,10 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
806
911
  gem 'graphql'
807
912
  gem 'grpc'
808
913
  gem 'hiredis'
914
+ gem 'http'
809
915
  gem 'mongo', '>= 2.8.0'
810
916
  gem 'mysql2', '< 0.5', platform: :ruby
917
+ gem 'pg', platform: :ruby
811
918
  gem 'presto-client', '>= 0.5.14'
812
919
  gem 'racecar', '>= 0.3.5'
813
920
  gem 'rack'
@@ -816,13 +923,16 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
816
923
  gem 'redis', '< 4.0'
817
924
  gem 'rest-client'
818
925
  gem 'resque', '< 2.0'
926
+ gem 'ruby-kafka', '>= 0.7.10'
819
927
  gem 'sequel'
820
928
  gem 'shoryuken'
821
929
  gem 'sidekiq'
822
930
  gem 'sinatra'
931
+ gem 'sneakers', '>= 2.12.0'
823
932
  gem 'sqlite3', '~> 1.4.1'
824
933
  gem 'sucker_punch'
825
934
  gem 'typhoeus'
935
+ gem 'que', '>= 1.0.0.beta2'
826
936
  end
827
937
 
828
938
  appraise 'contrib-old' do
@@ -835,12 +945,14 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
835
945
  gem 'rails', '~> 5.2.1'
836
946
  gem 'mysql2', '< 0.5', platform: :ruby
837
947
  gem 'sprockets', '< 4'
948
+ gem 'lograge'
838
949
  end
839
950
 
840
951
  appraise 'rails5-postgres' do
841
952
  gem 'rails', '~> 5.2.1'
842
953
  gem 'pg', '< 1.0', platform: :ruby
843
954
  gem 'sprockets', '< 4'
955
+ gem 'lograge'
844
956
  end
845
957
 
846
958
  appraise 'rails5-postgres-redis' do
@@ -849,6 +961,7 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
849
961
  gem 'redis-rails'
850
962
  gem 'redis'
851
963
  gem 'sprockets', '< 4'
964
+ gem 'lograge'
852
965
  end
853
966
 
854
967
  appraise 'rails5-postgres-redis-activesupport' do
@@ -857,6 +970,7 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
857
970
  gem 'redis-rails'
858
971
  gem 'redis'
859
972
  gem 'sprockets', '< 4'
973
+ gem 'lograge'
860
974
  end
861
975
 
862
976
  appraise 'rails5-postgres-sidekiq' do
@@ -865,18 +979,21 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
865
979
  gem 'sidekiq'
866
980
  gem 'activejob'
867
981
  gem 'sprockets', '< 4'
982
+ gem 'lograge'
868
983
  end
869
984
 
870
985
  appraise 'rails6-mysql2' do
871
986
  gem 'rails', '~> 6.0.0'
872
987
  gem 'mysql2', '< 0.6', platform: :ruby
873
988
  gem 'sprockets', '< 4'
989
+ gem 'lograge'
874
990
  end
875
991
 
876
992
  appraise 'rails6-postgres' do
877
993
  gem 'rails', '~> 6.0.0'
878
994
  gem 'pg', '< 1.0', platform: :ruby
879
995
  gem 'sprockets', '< 4'
996
+ gem 'lograge'
880
997
  end
881
998
 
882
999
  appraise 'rails6-postgres-redis' do
@@ -885,6 +1002,7 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
885
1002
  gem 'redis-rails'
886
1003
  gem 'redis'
887
1004
  gem 'sprockets', '< 4'
1005
+ gem 'lograge'
888
1006
  end
889
1007
 
890
1008
  appraise 'rails6-postgres-redis-activesupport' do
@@ -893,6 +1011,7 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
893
1011
  gem 'redis-rails'
894
1012
  gem 'redis'
895
1013
  gem 'sprockets', '< 4'
1014
+ gem 'lograge'
896
1015
  end
897
1016
 
898
1017
  appraise 'rails6-postgres-sidekiq' do
@@ -901,6 +1020,7 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
901
1020
  gem 'sidekiq'
902
1021
  gem 'activejob'
903
1022
  gem 'sprockets', '< 4'
1023
+ gem 'lograge'
904
1024
  end
905
1025
 
906
1026
  appraise 'contrib' do
@@ -920,8 +1040,10 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
920
1040
  gem 'graphql'
921
1041
  gem 'grpc'
922
1042
  gem 'hiredis'
1043
+ gem 'http'
923
1044
  gem 'mongo', '>= 2.8.0'
924
1045
  gem 'mysql2', '< 0.5', platform: :ruby
1046
+ gem 'pg', platform: :ruby
925
1047
  gem 'presto-client', '>= 0.5.14'
926
1048
  gem 'racecar', '>= 0.3.5'
927
1049
  gem 'rack'
@@ -930,13 +1052,16 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
930
1052
  gem 'redis', '< 4.0'
931
1053
  gem 'rest-client'
932
1054
  gem 'resque', '< 2.0'
1055
+ gem 'ruby-kafka', '>= 0.7.10'
933
1056
  gem 'sequel'
934
1057
  gem 'shoryuken'
935
1058
  gem 'sidekiq'
936
1059
  gem 'sinatra'
1060
+ gem 'sneakers', '>= 2.12.0'
937
1061
  gem 'sqlite3', '~> 1.4.1'
938
1062
  gem 'sucker_punch'
939
1063
  gem 'typhoeus'
1064
+ gem 'que', '>= 1.0.0.beta2'
940
1065
  end
941
1066
 
942
1067
  appraise 'contrib-old' do