ddtrace 0.40.0 → 0.45.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 (150) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +148 -130
  3. data/.circleci/images/primary/Dockerfile-3.0.0 +73 -0
  4. data/.github/workflows/add-milestone-to-pull-requests.yml +42 -0
  5. data/.github/workflows/create-next-milestone.yml +20 -0
  6. data/.simplecov +3 -0
  7. data/Appraisals +414 -135
  8. data/CHANGELOG.md +1112 -342
  9. data/CONTRIBUTING.md +2 -2
  10. data/Gemfile +4 -2
  11. data/README.md +1 -0
  12. data/Rakefile +231 -29
  13. data/ddtrace.gemspec +8 -8
  14. data/docker-compose.yml +30 -0
  15. data/docs/DevelopmentGuide.md +12 -2
  16. data/docs/GettingStarted.md +187 -16
  17. data/lib/ddtrace.rb +10 -0
  18. data/lib/ddtrace/auto_instrument.rb +3 -0
  19. data/lib/ddtrace/auto_instrument_base.rb +6 -0
  20. data/lib/ddtrace/buffer.rb +259 -52
  21. data/lib/ddtrace/configuration.rb +19 -0
  22. data/lib/ddtrace/configuration/options.rb +3 -1
  23. data/lib/ddtrace/configuration/settings.rb +9 -3
  24. data/lib/ddtrace/context.rb +18 -0
  25. data/lib/ddtrace/context_provider.rb +17 -5
  26. data/lib/ddtrace/contrib/action_cable/integration.rb +7 -0
  27. data/lib/ddtrace/contrib/action_pack/integration.rb +7 -0
  28. data/lib/ddtrace/contrib/action_view/event.rb +0 -4
  29. data/lib/ddtrace/contrib/action_view/events/render_partial.rb +1 -0
  30. data/lib/ddtrace/contrib/action_view/events/render_template.rb +1 -0
  31. data/lib/ddtrace/contrib/action_view/integration.rb +7 -0
  32. data/lib/ddtrace/contrib/active_record/events/sql.rb +4 -0
  33. data/lib/ddtrace/contrib/active_record/integration.rb +7 -0
  34. data/lib/ddtrace/contrib/active_record/utils.rb +67 -21
  35. data/lib/ddtrace/contrib/active_support/cache/instrumentation.rb +104 -3
  36. data/lib/ddtrace/contrib/active_support/cache/patcher.rb +21 -0
  37. data/lib/ddtrace/contrib/active_support/ext.rb +3 -0
  38. data/lib/ddtrace/contrib/active_support/integration.rb +7 -1
  39. data/lib/ddtrace/contrib/active_support/notifications/event.rb +10 -0
  40. data/lib/ddtrace/contrib/active_support/notifications/subscription.rb +2 -2
  41. data/lib/ddtrace/contrib/auto_instrument.rb +48 -0
  42. data/lib/ddtrace/contrib/aws/instrumentation.rb +6 -1
  43. data/lib/ddtrace/contrib/aws/patcher.rb +0 -1
  44. data/lib/ddtrace/contrib/aws/services.rb +1 -0
  45. data/lib/ddtrace/contrib/configurable.rb +2 -0
  46. data/lib/ddtrace/contrib/configuration/resolvers/pattern_resolver.rb +6 -5
  47. data/lib/ddtrace/contrib/cucumber/configuration/settings.rb +38 -0
  48. data/lib/ddtrace/contrib/cucumber/ext.rb +19 -0
  49. data/lib/ddtrace/contrib/cucumber/formatter.rb +104 -0
  50. data/lib/ddtrace/contrib/cucumber/instrumentation.rb +24 -0
  51. data/lib/ddtrace/contrib/cucumber/integration.rb +45 -0
  52. data/lib/ddtrace/contrib/cucumber/patcher.rb +23 -0
  53. data/lib/ddtrace/contrib/dalli/instrumentation.rb +4 -0
  54. data/lib/ddtrace/contrib/delayed_job/configuration/settings.rb +2 -0
  55. data/lib/ddtrace/contrib/delayed_job/ext.rb +2 -0
  56. data/lib/ddtrace/contrib/delayed_job/plugin.rb +39 -15
  57. data/lib/ddtrace/contrib/elasticsearch/patcher.rb +4 -0
  58. data/lib/ddtrace/contrib/ethon/easy_patch.rb +10 -7
  59. data/lib/ddtrace/contrib/ethon/ext.rb +1 -0
  60. data/lib/ddtrace/contrib/ethon/multi_patch.rb +4 -0
  61. data/lib/ddtrace/contrib/excon/middleware.rb +11 -1
  62. data/lib/ddtrace/contrib/extensions.rb +27 -1
  63. data/lib/ddtrace/contrib/faraday/middleware.rb +4 -0
  64. data/lib/ddtrace/contrib/faraday/patcher.rb +1 -1
  65. data/lib/ddtrace/contrib/grape/configuration/settings.rb +7 -0
  66. data/lib/ddtrace/contrib/grape/endpoint.rb +53 -18
  67. data/lib/ddtrace/contrib/grape/ext.rb +1 -0
  68. data/lib/ddtrace/contrib/grpc/datadog_interceptor/client.rb +5 -1
  69. data/lib/ddtrace/contrib/grpc/datadog_interceptor/server.rb +4 -0
  70. data/lib/ddtrace/contrib/http/instrumentation.rb +6 -2
  71. data/lib/ddtrace/contrib/httpclient/configuration/settings.rb +32 -0
  72. data/lib/ddtrace/contrib/httpclient/ext.rb +17 -0
  73. data/lib/ddtrace/contrib/httpclient/instrumentation.rb +152 -0
  74. data/lib/ddtrace/contrib/httpclient/integration.rb +43 -0
  75. data/lib/ddtrace/contrib/httpclient/patcher.rb +35 -0
  76. data/lib/ddtrace/contrib/httprb/instrumentation.rb +6 -3
  77. data/lib/ddtrace/contrib/kafka/event.rb +1 -1
  78. data/lib/ddtrace/contrib/mongodb/subscribers.rb +4 -0
  79. data/lib/ddtrace/contrib/mysql2/instrumentation.rb +4 -0
  80. data/lib/ddtrace/contrib/patchable.rb +18 -7
  81. data/lib/ddtrace/contrib/presto/instrumentation.rb +3 -0
  82. data/lib/ddtrace/contrib/qless/configuration/settings.rb +35 -0
  83. data/lib/ddtrace/contrib/qless/ext.rb +20 -0
  84. data/lib/ddtrace/contrib/qless/integration.rb +38 -0
  85. data/lib/ddtrace/contrib/qless/patcher.rb +35 -0
  86. data/lib/ddtrace/contrib/qless/qless_job.rb +72 -0
  87. data/lib/ddtrace/contrib/qless/tracer_cleaner.rb +32 -0
  88. data/lib/ddtrace/contrib/que/configuration/settings.rb +1 -0
  89. data/lib/ddtrace/contrib/que/tracer.rb +2 -1
  90. data/lib/ddtrace/contrib/racecar/event.rb +4 -0
  91. data/lib/ddtrace/contrib/rack/integration.rb +7 -0
  92. data/lib/ddtrace/contrib/rack/middlewares.rb +1 -1
  93. data/lib/ddtrace/contrib/rack/request_queue.rb +6 -1
  94. data/lib/ddtrace/contrib/rails/auto_instrument_railtie.rb +10 -0
  95. data/lib/ddtrace/contrib/rails/patcher.rb +19 -5
  96. data/lib/ddtrace/contrib/rails/utils.rb +4 -0
  97. data/lib/ddtrace/contrib/rake/integration.rb +1 -1
  98. data/lib/ddtrace/contrib/redis/configuration/resolver.rb +3 -1
  99. data/lib/ddtrace/contrib/redis/configuration/settings.rb +5 -0
  100. data/lib/ddtrace/contrib/redis/ext.rb +1 -0
  101. data/lib/ddtrace/contrib/redis/patcher.rb +20 -3
  102. data/lib/ddtrace/contrib/redis/quantize.rb +27 -0
  103. data/lib/ddtrace/contrib/redis/tags.rb +9 -1
  104. data/lib/ddtrace/contrib/resque/configuration/settings.rb +1 -0
  105. data/lib/ddtrace/contrib/resque/integration.rb +1 -1
  106. data/lib/ddtrace/contrib/resque/resque_job.rb +1 -1
  107. data/lib/ddtrace/contrib/rest_client/request_patch.rb +4 -0
  108. data/lib/ddtrace/contrib/rspec/configuration/settings.rb +38 -0
  109. data/lib/ddtrace/contrib/rspec/example.rb +61 -0
  110. data/lib/ddtrace/contrib/rspec/example_group.rb +61 -0
  111. data/lib/ddtrace/contrib/rspec/ext.rb +19 -0
  112. data/lib/ddtrace/contrib/rspec/integration.rb +46 -0
  113. data/lib/ddtrace/contrib/rspec/patcher.rb +25 -0
  114. data/lib/ddtrace/contrib/sequel/database.rb +3 -1
  115. data/lib/ddtrace/contrib/sequel/dataset.rb +3 -2
  116. data/lib/ddtrace/contrib/sequel/ext.rb +1 -0
  117. data/lib/ddtrace/contrib/sequel/utils.rb +16 -5
  118. data/lib/ddtrace/contrib/shoryuken/configuration/settings.rb +1 -0
  119. data/lib/ddtrace/contrib/shoryuken/tracer.rb +4 -1
  120. data/lib/ddtrace/contrib/sidekiq/configuration/settings.rb +1 -0
  121. data/lib/ddtrace/contrib/sidekiq/server_tracer.rb +4 -1
  122. data/lib/ddtrace/contrib/sinatra/tracer_middleware.rb +2 -2
  123. data/lib/ddtrace/contrib/sneakers/configuration/settings.rb +1 -0
  124. data/lib/ddtrace/contrib/sneakers/tracer.rb +17 -20
  125. data/lib/ddtrace/contrib/status_code_matcher.rb +67 -0
  126. data/lib/ddtrace/ext/app_types.rb +1 -0
  127. data/lib/ddtrace/ext/ci.rb +297 -0
  128. data/lib/ddtrace/ext/distributed.rb +8 -2
  129. data/lib/ddtrace/ext/git.rb +11 -0
  130. data/lib/ddtrace/ext/integration.rb +8 -0
  131. data/lib/ddtrace/ext/runtime.rb +2 -0
  132. data/lib/ddtrace/ext/test.rb +24 -0
  133. data/lib/ddtrace/opentracer/distributed_headers.rb +1 -1
  134. data/lib/ddtrace/propagation/grpc_propagator.rb +18 -6
  135. data/lib/ddtrace/propagation/http_propagator.rb +17 -2
  136. data/lib/ddtrace/runtime/identity.rb +4 -5
  137. data/lib/ddtrace/runtime/metrics.rb +6 -2
  138. data/lib/ddtrace/sampler.rb +2 -2
  139. data/lib/ddtrace/sampling/rate_limiter.rb +65 -16
  140. data/lib/ddtrace/span.rb +152 -27
  141. data/lib/ddtrace/tracer.rb +25 -13
  142. data/lib/ddtrace/transport/http/adapters/net.rb +8 -2
  143. data/lib/ddtrace/transport/http/statistics.rb +14 -1
  144. data/lib/ddtrace/transport/traces.rb +7 -2
  145. data/lib/ddtrace/utils.rb +16 -13
  146. data/lib/ddtrace/utils/forking.rb +52 -0
  147. data/lib/ddtrace/version.rb +1 -1
  148. data/lib/ddtrace/workers/runtime_metrics.rb +7 -3
  149. data/lib/ddtrace/writer.rb +19 -1
  150. metadata +111 -19
@@ -0,0 +1,73 @@
1
+ # https://hub.docker.com/layers/ruby/library/ruby/3.0.0/images/sha256-9719b7df964602b114a5e9319bd0a3ce2d4d44ccb7ea4d1702fa1ef9742a8f84
2
+ FROM ruby@sha256:9719b7df964602b114a5e9319bd0a3ce2d4d44ccb7ea4d1702fa1ef9742a8f84
3
+
4
+ # Make apt non-interactive
5
+ RUN echo 'APT::Get::Assume-Yes "true";' > /etc/apt/apt.conf.d/90circleci \
6
+ && echo 'DPkg::Options "--force-confnew";' >> /etc/apt/apt.conf.d/90circleci
7
+
8
+ ENV DEBIAN_FRONTEND=noninteractive
9
+
10
+ # Install required packages
11
+ RUN set -ex; \
12
+ apt-get update; \
13
+ mkdir -p /usr/share/man/man1; \
14
+ apt-get install -y --no-install-recommends \
15
+ git mercurial xvfb \
16
+ locales sudo openssh-client ca-certificates tar gzip parallel \
17
+ net-tools netcat unzip zip bzip2 gnupg curl wget \
18
+ tzdata rsync vim; \
19
+ rm -rf /var/lib/apt/lists/*;
20
+
21
+ # Set timezone to UTC by default
22
+ RUN ln -sf /usr/share/zoneinfo/Etc/UTC /etc/localtime
23
+
24
+ # Set language
25
+ RUN locale-gen en_US.UTF-8
26
+ ENV LANG en_US.UTF-8
27
+ ENV LANGUAGE en_US:en
28
+
29
+ # Install jq
30
+ RUN JQ_URL="https://circle-downloads.s3.amazonaws.com/circleci-images/cache/linux-amd64/jq-latest" \
31
+ && curl --silent --show-error --location --fail --retry 3 --output /usr/bin/jq $JQ_URL \
32
+ && chmod +x /usr/bin/jq \
33
+ && jq --version
34
+
35
+ # Install Docker
36
+ RUN set -ex \
37
+ && export DOCKER_VERSION=$(curl --silent --fail --retry 3 https://download.docker.com/linux/static/stable/x86_64/ | grep -o -e 'docker-[.0-9]*-ce\.tgz' | sort -r | head -n 1) \
38
+ && DOCKER_URL="https://download.docker.com/linux/static/stable/x86_64/${DOCKER_VERSION}" \
39
+ && echo Docker URL: $DOCKER_URL \
40
+ && curl --silent --show-error --location --fail --retry 3 --output /tmp/docker.tgz "${DOCKER_URL}" \
41
+ && ls -lha /tmp/docker.tgz \
42
+ && tar -xz -C /tmp -f /tmp/docker.tgz \
43
+ && mv /tmp/docker/* /usr/bin \
44
+ && rm -rf /tmp/docker /tmp/docker.tgz \
45
+ && which docker \
46
+ && (docker version || true)
47
+
48
+ # Install Docker Compose
49
+ RUN COMPOSE_URL="https://circle-downloads.s3.amazonaws.com/circleci-images/cache/linux-amd64/docker-compose-latest" \
50
+ && curl --silent --show-error --location --fail --retry 3 --output /usr/bin/docker-compose $COMPOSE_URL \
51
+ && chmod +x /usr/bin/docker-compose \
52
+ && docker-compose version
53
+
54
+ # Install Dockerize
55
+ RUN DOCKERIZE_URL="https://circle-downloads.s3.amazonaws.com/circleci-images/cache/linux-amd64/dockerize-latest.tar.gz" \
56
+ && curl --silent --show-error --location --fail --retry 3 --output /tmp/dockerize-linux-amd64.tar.gz $DOCKERIZE_URL \
57
+ && tar -C /usr/local/bin -xzvf /tmp/dockerize-linux-amd64.tar.gz \
58
+ && rm -rf /tmp/dockerize-linux-amd64.tar.gz \
59
+ && dockerize --version
60
+
61
+ # Install RubyGems
62
+ RUN gem update --system
63
+ RUN mkdir -p "$GEM_HOME" && chmod -R 777 "$GEM_HOME"
64
+
65
+ # Upgrade RubyGems and Bundler
66
+ RUN gem update --system
67
+ RUN gem install bundler
68
+ ENV BUNDLE_SILENCE_ROOT_WARNING 1
69
+
70
+ RUN mkdir /app
71
+ WORKDIR /app
72
+
73
+ CMD ["/bin/sh"]
@@ -0,0 +1,42 @@
1
+ name: Add milestone to pull requests
2
+ on:
3
+ pull_request_target:
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 }}
data/.simplecov CHANGED
@@ -2,6 +2,9 @@ SimpleCov.add_group 'contrib', '/lib/ddtrace/contrib'
2
2
  SimpleCov.add_group 'transport', '/lib/ddtrace/transport'
3
3
  SimpleCov.add_group 'spec', '/spec/'
4
4
 
5
+ # Exclude code not maintained by this project
6
+ SimpleCov.add_filter %r{/vendor/}
7
+
5
8
  SimpleCov.coverage_dir ENV.fetch('COVERAGE_DIR', 'coverage')
6
9
 
7
10
  # Each test run requires its own unique command_name.
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) \
@@ -33,6 +39,7 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
33
39
  gem 'activerecord-mysql-adapter', platform: :ruby
34
40
  gem 'activerecord-jdbcmysql-adapter', platform: :jruby
35
41
  gem 'rack-cache', '1.7.1'
42
+ gem 'sqlite3', '~> 1.3.5'
36
43
  gem 'lograge', '< 0.4'
37
44
  end
38
45
 
@@ -80,6 +87,7 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
80
87
  gem 'excon'
81
88
  gem 'hiredis'
82
89
  gem 'http'
90
+ gem 'httpclient'
83
91
  gem 'mongo', '< 2.5'
84
92
  gem 'mysql2', '0.3.21', platform: :ruby
85
93
  gem 'pg', '< 1.0', platform: :ruby
@@ -90,6 +98,7 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
90
98
  gem 'redis', '< 4.0'
91
99
  gem 'rest-client'
92
100
  gem 'resque', '< 2.0'
101
+ gem 'rspec', '>= 3.0.0'
93
102
  gem 'sequel', '~> 4.0', '< 4.37'
94
103
  gem 'sidekiq', '~> 3.5.4'
95
104
  gem 'sinatra', '1.4.5'
@@ -128,6 +137,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
128
137
  gem 'activerecord-mysql-adapter', platform: :ruby
129
138
  gem 'activerecord-jdbcmysql-adapter', platform: :jruby
130
139
  gem 'rack-cache', '1.7.1'
140
+ gem 'sqlite3', '~> 1.3.5'
131
141
  gem 'lograge', '< 0.4'
132
142
  end
133
143
 
@@ -202,6 +212,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
202
212
  gem 'excon'
203
213
  gem 'hiredis'
204
214
  gem 'http'
215
+ gem 'httpclient'
205
216
  gem 'mongo', '< 2.5'
206
217
  gem 'mysql2', '0.3.21', platform: :ruby
207
218
  gem 'pg', '< 1.0', platform: :ruby
@@ -213,6 +224,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
213
224
  gem 'rest-client'
214
225
  gem 'resque', '< 2.0'
215
226
  gem 'ruby-kafka', '>= 0.7.10'
227
+ gem 'rspec', '>= 3.0.0'
216
228
  gem 'sequel', '~> 4.0', '< 4.37'
217
229
  gem 'shoryuken'
218
230
  gem 'sidekiq', '~> 3.5.4'
@@ -252,6 +264,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
252
264
  gem 'activerecord-mysql-adapter', platform: :ruby
253
265
  gem 'activerecord-jdbcmysql-adapter', platform: :jruby
254
266
  gem 'rack-cache', '1.7.1'
267
+ gem 'sqlite3', '~> 1.3.5'
255
268
  gem 'lograge', '< 0.4'
256
269
  end
257
270
 
@@ -377,12 +390,14 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
377
390
  gem 'excon'
378
391
  gem 'faraday'
379
392
  gem 'grape'
380
- gem 'graphql', '< 1.9.4'
393
+ gem 'graphql', '>= 1.12.0'
381
394
  gem 'grpc', '~> 1.21.0' # Last version to support Ruby < 2.3
382
395
  gem 'hiredis'
383
396
  gem 'http'
397
+ gem 'httpclient'
384
398
  gem 'mongo', '>= 2.8.0'
385
399
  gem 'mysql2', '< 0.5', platform: :ruby
400
+ gem 'qless'
386
401
  gem 'racecar', '>= 0.3.5'
387
402
  gem 'rack', '< 2.1.0' # Locked due to grape incompatibility: https://github.com/ruby-grape/grape/issues/1980
388
403
  gem 'rack-test'
@@ -391,6 +406,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
391
406
  gem 'rest-client'
392
407
  gem 'resque', '< 2.0'
393
408
  gem 'ruby-kafka', '>= 0.7.10'
409
+ gem 'rspec', '>= 3.0.0'
394
410
  gem 'sequel'
395
411
  gem 'shoryuken'
396
412
  gem 'sidekiq'
@@ -431,6 +447,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
431
447
  gem 'activerecord-mysql-adapter', platform: :ruby
432
448
  gem 'activerecord-jdbcmysql-adapter', platform: :jruby
433
449
  gem 'rack-cache', '1.7.1'
450
+ gem 'sqlite3', '~> 1.3.5'
434
451
  gem 'lograge', '< 0.4'
435
452
  end
436
453
 
@@ -539,6 +556,18 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
539
556
  gem 'lograge'
540
557
  end
541
558
 
559
+ appraise 'resque2-redis3' do
560
+ gem 'redis', '< 4.0'
561
+ gem 'resque', '>= 2.0'
562
+ end
563
+
564
+ appraise 'resque2-redis4' do
565
+ gem 'redis', '>= 4.0'
566
+ gem 'resque', '>= 2.0'
567
+ end
568
+
569
+ (3..4).each { |v| gem_cucumber(v) }
570
+
542
571
  appraise 'contrib' do
543
572
  gem 'actionpack'
544
573
  gem 'actionview'
@@ -554,23 +583,26 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
554
583
  gem 'excon'
555
584
  gem 'faraday'
556
585
  gem 'grape'
557
- gem 'graphql'
586
+ gem 'graphql', '>= 1.12.0'
558
587
  gem 'grpc'
559
588
  gem 'google-protobuf', '~> 3.11.0' # Last version to support Ruby < 2.5
560
589
  gem 'hiredis'
561
590
  gem 'http'
591
+ gem 'httpclient'
562
592
  gem 'mongo', '>= 2.8.0'
563
593
  gem 'mysql2', '< 0.5', platform: :ruby
564
594
  gem 'pg', platform: :ruby
565
595
  gem 'presto-client', '>= 0.5.14'
596
+ gem 'qless'
566
597
  gem 'racecar', '>= 0.3.5'
567
598
  gem 'rack', '< 2.1.0' # Locked due to grape incompatibility: https://github.com/ruby-grape/grape/issues/1980
568
599
  gem 'rack-test'
569
600
  gem 'rake', '>= 12.3'
570
601
  gem 'redis', '< 4.0'
571
602
  gem 'rest-client'
572
- gem 'resque', '< 2.0'
603
+ gem 'resque'
573
604
  gem 'ruby-kafka', '>= 0.7.10'
605
+ gem 'rspec', '>= 3.0.0'
574
606
  gem 'sequel'
575
607
  gem 'shoryuken'
576
608
  gem 'sidekiq'
@@ -628,6 +660,18 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
628
660
  gem 'lograge'
629
661
  end
630
662
 
663
+ appraise 'resque2-redis3' do
664
+ gem 'redis', '< 4.0'
665
+ gem 'resque', '>= 2.0'
666
+ end
667
+
668
+ appraise 'resque2-redis4' do
669
+ gem 'redis', '>= 4.0'
670
+ gem 'resque', '>= 2.0'
671
+ end
672
+
673
+ (3..4).each { |v| gem_cucumber(v) }
674
+
631
675
  appraise 'contrib' do
632
676
  gem 'actionpack'
633
677
  gem 'actionview'
@@ -635,6 +679,7 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
635
679
  gem 'activerecord', '< 5.1.5'
636
680
  gem 'aws-sdk'
637
681
  gem 'concurrent-ruby'
682
+ gem 'cucumber'
638
683
  gem 'dalli'
639
684
  gem 'delayed_job'
640
685
  gem 'delayed_job_active_record'
@@ -643,23 +688,26 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
643
688
  gem 'excon'
644
689
  gem 'faraday'
645
690
  gem 'grape'
646
- gem 'graphql'
691
+ gem 'graphql', '>= 1.12.0'
647
692
  gem 'grpc'
648
693
  gem 'google-protobuf', '~> 3.11.0' # Last version to support Ruby < 2.5
649
694
  gem 'hiredis'
650
695
  gem 'http'
696
+ gem 'httpclient'
651
697
  gem 'mongo', '>= 2.8.0'
652
698
  gem 'mysql2', '< 0.5', platform: :ruby
653
699
  gem 'pg', platform: :ruby
654
700
  gem 'presto-client', '>= 0.5.14'
701
+ gem 'qless'
655
702
  gem 'racecar', '>= 0.3.5'
656
703
  gem 'rack'
657
704
  gem 'rack-test'
658
705
  gem 'rake', '>= 12.3'
659
706
  gem 'redis', '< 4.0'
660
707
  gem 'rest-client'
661
- gem 'resque', '< 2.0'
708
+ gem 'resque'
662
709
  gem 'ruby-kafka', '>= 0.7.10'
710
+ gem 'rspec', '>= 3.0.0'
663
711
  gem 'sequel'
664
712
  gem 'shoryuken'
665
713
  gem 'sidekiq'
@@ -677,10 +725,198 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
677
725
  end
678
726
  elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
679
727
  && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.6.0')
728
+ appraise 'rails5-mysql2' do
729
+ gem 'rails', '~> 5.2.1'
730
+ gem 'mysql2', '< 1', platform: :ruby
731
+ gem 'activerecord-jdbcmysql-adapter', platform: :jruby
732
+ gem 'sprockets', '< 4'
733
+ gem 'lograge'
734
+ end
735
+
736
+ appraise 'rails5-postgres' do
737
+ gem 'rails', '~> 5.2.1'
738
+ gem 'pg', '< 1.0', platform: :ruby
739
+ gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
740
+ gem 'sprockets', '< 4'
741
+ gem 'lograge'
742
+ end
743
+
744
+ appraise 'rails5-postgres-redis' do
745
+ gem 'rails', '~> 5.2.1'
746
+ gem 'pg', '< 1.0', platform: :ruby
747
+ gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
748
+ gem 'redis', '>= 4.0.1'
749
+ gem 'sprockets', '< 4'
750
+ gem 'lograge'
751
+ end
752
+
753
+ appraise 'rails5-postgres-redis-activesupport' do
754
+ gem 'rails', '~> 5.2.1'
755
+ gem 'pg', '< 1.0', platform: :ruby
756
+ gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
757
+ gem 'redis', '>= 4.0.1'
758
+ gem 'sprockets', '< 4'
759
+ gem 'lograge'
760
+ end
761
+
762
+ appraise 'rails5-postgres-sidekiq' do
763
+ gem 'rails', '~> 5.2.1'
764
+ gem 'pg', '< 1.0', platform: :ruby
765
+ gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
766
+ gem 'sidekiq'
767
+ gem 'activejob'
768
+ gem 'sprockets', '< 4'
769
+ gem 'lograge'
770
+ end
771
+
772
+ appraise 'rails6-mysql2' do
773
+ gem 'rails', '~> 6.0.0'
774
+ gem 'mysql2', '< 1', platform: :ruby
775
+ gem 'activerecord-jdbcmysql-adapter', '>= 60', platform: :jruby # try remove >= 60
776
+ gem 'sprockets', '< 4'
777
+ gem 'lograge'
778
+ end
779
+
780
+ appraise 'rails6-postgres' do
781
+ gem 'rails', '~> 6.0.0'
782
+ gem 'pg', '< 1.0', platform: :ruby
783
+ gem 'activerecord-jdbcpostgresql-adapter', '>= 60', platform: :jruby
784
+ gem 'sprockets', '< 4'
785
+ gem 'lograge'
786
+ end
787
+
788
+ appraise 'rails6-postgres-redis' do
789
+ gem 'rails', '~> 6.0.0'
790
+ gem 'pg', '< 1.0', platform: :ruby
791
+ gem 'activerecord-jdbcpostgresql-adapter', '>= 60', platform: :jruby
792
+ gem 'redis', '>= 4.0.1'
793
+ gem 'sprockets', '< 4'
794
+ gem 'lograge'
795
+ end
796
+
797
+ appraise 'rails6-postgres-redis-activesupport' do
798
+ gem 'rails', '~> 6.0.0'
799
+ gem 'pg', '< 1.0', platform: :ruby
800
+ gem 'activerecord-jdbcpostgresql-adapter', '>= 60', platform: :jruby
801
+ gem 'redis', '>= 4.0.1'
802
+ gem 'sprockets', '< 4'
803
+ gem 'lograge'
804
+ end
805
+
806
+ appraise 'rails6-postgres-sidekiq' do
807
+ gem 'rails', '~> 6.0.0'
808
+ gem 'pg', '< 1.0', platform: :ruby
809
+ gem 'activerecord-jdbcpostgresql-adapter', '>= 60', platform: :jruby
810
+ gem 'sidekiq'
811
+ gem 'activejob'
812
+ gem 'sprockets', '< 4'
813
+ gem 'lograge'
814
+ end
815
+
816
+ appraise 'rails61-mysql2' do
817
+ gem 'rails', '~> 6.1.0'
818
+ gem 'mysql2', '~> 0.5', platform: :ruby
819
+ gem 'activerecord-jdbcmysql-adapter', '>= 61', platform: :jruby
820
+ gem 'sprockets', '< 4'
821
+ gem 'lograge', '~> 0.11'
822
+ end
823
+
824
+ appraise 'rails61-postgres' do
825
+ gem 'rails', '~> 6.1.0'
826
+ gem 'pg', '>= 1.1', platform: :ruby
827
+ gem 'activerecord-jdbcpostgresql-adapter', '>= 61', platform: :jruby
828
+ gem 'sprockets', '< 4'
829
+ gem 'lograge', '~> 0.11'
830
+ end
831
+
832
+ appraise 'rails61-postgres-redis' do
833
+ gem 'rails', '~> 6.1.0'
834
+ gem 'pg', '>= 1.1', platform: :ruby
835
+ gem 'activerecord-jdbcpostgresql-adapter', '>= 61', platform: :jruby
836
+ gem 'redis', '>= 4.2.5'
837
+ gem 'sprockets', '< 4'
838
+ gem 'lograge', '~> 0.11'
839
+ end
840
+
841
+ appraise 'rails61-postgres-sidekiq' do
842
+ gem 'rails', '~> 6.1.0'
843
+ gem 'pg', '>= 1.1', platform: :ruby
844
+ gem 'activerecord-jdbcpostgresql-adapter', '>= 61', platform: :jruby
845
+ gem 'sidekiq', '>= 6.1.2'
846
+ gem 'sprockets', '< 4'
847
+ gem 'lograge', '~> 0.11'
848
+ end
849
+
850
+ appraise 'resque2-redis3' do
851
+ gem 'redis', '< 4.0'
852
+ gem 'resque', '>= 2.0'
853
+ end
854
+
855
+ appraise 'resque2-redis4' do
856
+ gem 'redis', '>= 4.0'
857
+ gem 'resque', '>= 2.0'
858
+ end
859
+
860
+ (3..5).each { |v| gem_cucumber(v) }
861
+
862
+ appraise 'contrib' do
863
+ gem 'actionpack'
864
+ gem 'actionview'
865
+ gem 'active_model_serializers', '>= 0.10.0'
866
+ gem 'activerecord'
867
+ gem 'aws-sdk'
868
+ gem 'concurrent-ruby'
869
+ gem 'cucumber'
870
+ gem 'dalli'
871
+ gem 'delayed_job'
872
+ gem 'delayed_job_active_record'
873
+ gem 'elasticsearch-transport'
874
+ gem 'ethon'
875
+ gem 'excon'
876
+ gem 'faraday'
877
+ gem 'grape'
878
+ gem 'graphql', '>= 1.12.0'
879
+ gem 'grpc', platform: :ruby
880
+ gem 'hiredis'
881
+ gem 'http'
882
+ gem 'httpclient'
883
+ gem 'mongo', '>= 2.8.0'
884
+ gem 'mysql2', '< 1', platform: :ruby
885
+ gem 'activerecord-jdbcmysql-adapter', '>= 60.2', platform: :jruby
886
+ gem 'pg', platform: :ruby
887
+ gem 'activerecord-jdbcpostgresql-adapter', '>= 60.2', platform: :jruby
888
+ gem 'presto-client', '>= 0.5.14'
889
+ gem 'qless'
890
+ gem 'racecar', '>= 0.3.5'
891
+ gem 'rack'
892
+ gem 'rack-test'
893
+ gem 'rake', '>= 12.3'
894
+ gem 'redis', '< 4.0'
895
+ gem 'rest-client'
896
+ gem 'resque'
897
+ gem 'ruby-kafka', '>= 0.7.10'
898
+ gem 'rspec', '>= 3.0.0'
899
+ gem 'sequel'
900
+ gem 'shoryuken'
901
+ gem 'sidekiq'
902
+ gem 'sinatra'
903
+ gem 'sneakers', '>= 2.12.0'
904
+ gem 'sqlite3', '~> 1.4.1', platform: :ruby
905
+ gem 'jdbc-sqlite3', '>= 3.28', platform: :jruby
906
+ gem 'sucker_punch'
907
+ gem 'typhoeus'
908
+ gem 'que', '>= 1.0.0.beta2'
909
+ end
910
+
911
+ appraise 'contrib-old' do
912
+ gem 'faraday', '0.17'
913
+ end
914
+ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
915
+ && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.7.0')
916
+ if RUBY_PLATFORM != 'java'
680
917
  appraise 'rails5-mysql2' do
681
918
  gem 'rails', '~> 5.2.1'
682
919
  gem 'mysql2', '< 1', platform: :ruby
683
- gem 'activerecord-jdbcmysql-adapter', platform: :jruby
684
920
  gem 'sprockets', '< 4'
685
921
  gem 'lograge'
686
922
  end
@@ -688,7 +924,6 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
688
924
  appraise 'rails5-postgres' do
689
925
  gem 'rails', '~> 5.2.1'
690
926
  gem 'pg', '< 1.0', platform: :ruby
691
- gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
692
927
  gem 'sprockets', '< 4'
693
928
  gem 'lograge'
694
929
  end
@@ -696,7 +931,6 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
696
931
  appraise 'rails5-postgres-redis' do
697
932
  gem 'rails', '~> 5.2.1'
698
933
  gem 'pg', '< 1.0', platform: :ruby
699
- gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
700
934
  gem 'redis', '>= 4.0.1'
701
935
  gem 'sprockets', '< 4'
702
936
  gem 'lograge'
@@ -705,7 +939,6 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
705
939
  appraise 'rails5-postgres-redis-activesupport' do
706
940
  gem 'rails', '~> 5.2.1'
707
941
  gem 'pg', '< 1.0', platform: :ruby
708
- gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
709
942
  gem 'redis', '>= 4.0.1'
710
943
  gem 'sprockets', '< 4'
711
944
  gem 'lograge'
@@ -714,7 +947,6 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
714
947
  appraise 'rails5-postgres-sidekiq' do
715
948
  gem 'rails', '~> 5.2.1'
716
949
  gem 'pg', '< 1.0', platform: :ruby
717
- gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
718
950
  gem 'sidekiq'
719
951
  gem 'activejob'
720
952
  gem 'sprockets', '< 4'
@@ -724,7 +956,6 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
724
956
  appraise 'rails6-mysql2' do
725
957
  gem 'rails', '~> 6.0.0'
726
958
  gem 'mysql2', '< 1', platform: :ruby
727
- gem 'activerecord-jdbcmysql-adapter', '>= 60', platform: :jruby # try remove >= 60
728
959
  gem 'sprockets', '< 4'
729
960
  gem 'lograge'
730
961
  end
@@ -732,7 +963,6 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
732
963
  appraise 'rails6-postgres' do
733
964
  gem 'rails', '~> 6.0.0'
734
965
  gem 'pg', '< 1.0', platform: :ruby
735
- gem 'activerecord-jdbcpostgresql-adapter', '>= 60', platform: :jruby
736
966
  gem 'sprockets', '< 4'
737
967
  gem 'lograge'
738
968
  end
@@ -740,7 +970,6 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
740
970
  appraise 'rails6-postgres-redis' do
741
971
  gem 'rails', '~> 6.0.0'
742
972
  gem 'pg', '< 1.0', platform: :ruby
743
- gem 'activerecord-jdbcpostgresql-adapter', '>= 60', platform: :jruby
744
973
  gem 'redis', '>= 4.0.1'
745
974
  gem 'sprockets', '< 4'
746
975
  gem 'lograge'
@@ -749,7 +978,6 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
749
978
  appraise 'rails6-postgres-redis-activesupport' do
750
979
  gem 'rails', '~> 6.0.0'
751
980
  gem 'pg', '< 1.0', platform: :ruby
752
- gem 'activerecord-jdbcpostgresql-adapter', '>= 60', platform: :jruby
753
981
  gem 'redis', '>= 4.0.1'
754
982
  gem 'sprockets', '< 4'
755
983
  gem 'lograge'
@@ -758,140 +986,53 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
758
986
  appraise 'rails6-postgres-sidekiq' do
759
987
  gem 'rails', '~> 6.0.0'
760
988
  gem 'pg', '< 1.0', platform: :ruby
761
- gem 'activerecord-jdbcpostgresql-adapter', '>= 60', platform: :jruby
762
989
  gem 'sidekiq'
763
990
  gem 'activejob'
764
991
  gem 'sprockets', '< 4'
765
992
  gem 'lograge'
766
993
  end
767
994
 
768
- appraise 'contrib' do
769
- gem 'actionpack'
770
- gem 'actionview'
771
- gem 'active_model_serializers', '>= 0.10.0'
772
- gem 'activerecord'
773
- gem 'aws-sdk'
774
- gem 'concurrent-ruby'
775
- gem 'dalli'
776
- gem 'delayed_job'
777
- gem 'delayed_job_active_record'
778
- gem 'elasticsearch-transport'
779
- gem 'ethon'
780
- gem 'excon'
781
- gem 'faraday'
782
- gem 'grape'
783
- gem 'graphql'
784
- gem 'grpc', platform: :ruby
785
- gem 'hiredis'
786
- gem 'http'
787
- gem 'mongo', '>= 2.8.0'
788
- gem 'mysql2', '< 0.5', platform: :ruby
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'
793
- gem 'racecar', '>= 0.3.5'
794
- gem 'rack'
795
- gem 'rack-test'
796
- gem 'rake', '>= 12.3'
797
- gem 'redis', '< 4.0'
798
- gem 'rest-client'
799
- gem 'resque', '< 2.0'
800
- gem 'ruby-kafka', '>= 0.7.10'
801
- gem 'sequel'
802
- gem 'shoryuken'
803
- gem 'sidekiq'
804
- gem 'sinatra'
805
- gem 'sneakers', '>= 2.12.0'
806
- gem 'sqlite3', '~> 1.4.1', platform: :ruby
807
- gem 'sucker_punch'
808
- gem 'typhoeus'
809
- gem 'que', '>= 1.0.0.beta2'
810
- end
811
-
812
- appraise 'contrib-old' do
813
- gem 'faraday', '0.17'
814
- end
815
- elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
816
- && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.7.0')
817
- if RUBY_PLATFORM != 'java'
818
- appraise 'rails5-mysql2' do
819
- gem 'rails', '~> 5.2.1'
820
- gem 'mysql2', '< 1', platform: :ruby
821
- gem 'sprockets', '< 4'
822
- gem 'lograge'
823
- end
824
-
825
- appraise 'rails5-postgres' do
826
- gem 'rails', '~> 5.2.1'
827
- gem 'pg', '< 1.0', platform: :ruby
828
- gem 'sprockets', '< 4'
829
- gem 'lograge'
830
- end
831
-
832
- appraise 'rails5-postgres-redis' do
833
- gem 'rails', '~> 5.2.1'
834
- gem 'pg', '< 1.0', platform: :ruby
835
- gem 'redis', '>= 4.0.1'
836
- gem 'sprockets', '< 4'
837
- gem 'lograge'
838
- end
839
-
840
- appraise 'rails5-postgres-redis-activesupport' do
841
- gem 'rails', '~> 5.2.1'
842
- gem 'pg', '< 1.0', platform: :ruby
843
- gem 'redis', '>= 4.0.1'
995
+ appraise 'rails61-mysql2' do
996
+ gem 'rails', '~> 6.1.0'
997
+ gem 'mysql2', '~> 0.5', platform: :ruby
844
998
  gem 'sprockets', '< 4'
845
- gem 'lograge'
999
+ gem 'lograge', '~> 0.11'
846
1000
  end
847
1001
 
848
- appraise 'rails5-postgres-sidekiq' do
849
- gem 'rails', '~> 5.2.1'
850
- gem 'pg', '< 1.0', platform: :ruby
851
- gem 'sidekiq'
852
- gem 'activejob'
1002
+ appraise 'rails61-postgres' do
1003
+ gem 'rails', '~> 6.1.0'
1004
+ gem 'pg', '>= 1.1', platform: :ruby
853
1005
  gem 'sprockets', '< 4'
854
- gem 'lograge'
1006
+ gem 'lograge', '~> 0.11'
855
1007
  end
856
1008
 
857
- appraise 'rails6-mysql2' do
858
- gem 'rails', '~> 6.0.0'
859
- gem 'mysql2', '< 1', platform: :ruby
1009
+ appraise 'rails61-postgres-redis' do
1010
+ gem 'rails', '~> 6.1.0'
1011
+ gem 'pg', '>= 1.1', platform: :ruby
1012
+ gem 'redis', '>= 4.2.5'
860
1013
  gem 'sprockets', '< 4'
861
- gem 'lograge'
1014
+ gem 'lograge', '~> 0.11'
862
1015
  end
863
1016
 
864
- appraise 'rails6-postgres' do
865
- gem 'rails', '~> 6.0.0'
866
- gem 'pg', '< 1.0', platform: :ruby
1017
+ appraise 'rails61-postgres-sidekiq' do
1018
+ gem 'rails', '~> 6.1.0'
1019
+ gem 'pg', '>= 1.1', platform: :ruby
1020
+ gem 'sidekiq', '>= 6.1.2'
867
1021
  gem 'sprockets', '< 4'
868
- gem 'lograge'
1022
+ gem 'lograge', '~> 0.11'
869
1023
  end
870
1024
 
871
- appraise 'rails6-postgres-redis' do
872
- gem 'rails', '~> 6.0.0'
873
- gem 'pg', '< 1.0', platform: :ruby
874
- gem 'redis', '>= 4.0.1'
875
- gem 'sprockets', '< 4'
876
- gem 'lograge'
1025
+ appraise 'resque2-redis3' do
1026
+ gem 'redis', '< 4.0'
1027
+ gem 'resque', '>= 2.0'
877
1028
  end
878
1029
 
879
- appraise 'rails6-postgres-redis-activesupport' do
880
- gem 'rails', '~> 6.0.0'
881
- gem 'pg', '< 1.0', platform: :ruby
882
- gem 'redis', '>= 4.0.1'
883
- gem 'sprockets', '< 4'
884
- gem 'lograge'
1030
+ appraise 'resque2-redis4' do
1031
+ gem 'redis', '>= 4.0'
1032
+ gem 'resque', '>= 2.0'
885
1033
  end
886
1034
 
887
- appraise 'rails6-postgres-sidekiq' do
888
- gem 'rails', '~> 6.0.0'
889
- gem 'pg', '< 1.0', platform: :ruby
890
- gem 'sidekiq'
891
- gem 'activejob'
892
- gem 'sprockets', '< 4'
893
- gem 'lograge'
894
- end
1035
+ (3..5).each { |v| gem_cucumber(v) }
895
1036
 
896
1037
  appraise 'contrib' do
897
1038
  gem 'actionpack'
@@ -900,6 +1041,7 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
900
1041
  gem 'activerecord'
901
1042
  gem 'aws-sdk'
902
1043
  gem 'concurrent-ruby'
1044
+ gem 'cucumber'
903
1045
  gem 'dalli'
904
1046
  gem 'delayed_job'
905
1047
  gem 'delayed_job_active_record'
@@ -908,22 +1050,25 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
908
1050
  gem 'excon'
909
1051
  gem 'faraday'
910
1052
  gem 'grape'
911
- gem 'graphql'
1053
+ gem 'graphql', '>= 1.12.0'
912
1054
  gem 'grpc'
913
1055
  gem 'hiredis'
914
1056
  gem 'http'
1057
+ gem 'httpclient'
915
1058
  gem 'mongo', '>= 2.8.0'
916
- gem 'mysql2', '< 0.5', platform: :ruby
1059
+ gem 'mysql2', '< 1', platform: :ruby
917
1060
  gem 'pg', platform: :ruby
918
1061
  gem 'presto-client', '>= 0.5.14'
1062
+ gem 'qless'
919
1063
  gem 'racecar', '>= 0.3.5'
920
1064
  gem 'rack'
921
1065
  gem 'rack-test'
922
1066
  gem 'rake', '>= 12.3'
923
1067
  gem 'redis', '< 4.0'
924
1068
  gem 'rest-client'
925
- gem 'resque', '< 2.0'
1069
+ gem 'resque'
926
1070
  gem 'ruby-kafka', '>= 0.7.10'
1071
+ gem 'rspec', '>= 3.0.0'
927
1072
  gem 'sequel'
928
1073
  gem 'shoryuken'
929
1074
  gem 'sidekiq'
@@ -939,11 +1084,12 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
939
1084
  gem 'faraday', '0.17'
940
1085
  end
941
1086
  end
942
- elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
1087
+ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION) \
1088
+ && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('3.0.0')
943
1089
  if RUBY_PLATFORM != 'java'
944
1090
  appraise 'rails5-mysql2' do
945
1091
  gem 'rails', '~> 5.2.1'
946
- gem 'mysql2', '< 0.5', platform: :ruby
1092
+ gem 'mysql2', '< 1', platform: :ruby
947
1093
  gem 'sprockets', '< 4'
948
1094
  gem 'lograge'
949
1095
  end
@@ -984,7 +1130,7 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
984
1130
 
985
1131
  appraise 'rails6-mysql2' do
986
1132
  gem 'rails', '~> 6.0.0'
987
- gem 'mysql2', '< 0.6', platform: :ruby
1133
+ gem 'mysql2', '< 1', platform: :ruby
988
1134
  gem 'sprockets', '< 4'
989
1135
  gem 'lograge'
990
1136
  end
@@ -1023,6 +1169,48 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
1023
1169
  gem 'lograge'
1024
1170
  end
1025
1171
 
1172
+ appraise 'rails61-mysql2' do
1173
+ gem 'rails', '~> 6.1.0'
1174
+ gem 'mysql2', '~> 0.5', platform: :ruby
1175
+ gem 'sprockets', '< 4'
1176
+ gem 'lograge', '~> 0.11'
1177
+ end
1178
+
1179
+ appraise 'rails61-postgres' do
1180
+ gem 'rails', '~> 6.1.0'
1181
+ gem 'pg', '>= 1.1', platform: :ruby
1182
+ gem 'sprockets', '< 4'
1183
+ gem 'lograge', '~> 0.11'
1184
+ end
1185
+
1186
+ appraise 'rails61-postgres-redis' do
1187
+ gem 'rails', '~> 6.1.0'
1188
+ gem 'pg', '>= 1.1', platform: :ruby
1189
+ gem 'redis', '>= 4.2.5'
1190
+ gem 'sprockets', '< 4'
1191
+ gem 'lograge', '~> 0.11'
1192
+ end
1193
+
1194
+ appraise 'rails61-postgres-sidekiq' do
1195
+ gem 'rails', '~> 6.1.0'
1196
+ gem 'pg', '>= 1.1', platform: :ruby
1197
+ gem 'sidekiq', '>= 6.1.2'
1198
+ gem 'sprockets', '< 4'
1199
+ gem 'lograge', '~> 0.11'
1200
+ end
1201
+
1202
+ appraise 'resque2-redis3' do
1203
+ gem 'redis', '< 4.0'
1204
+ gem 'resque', '>= 2.0'
1205
+ end
1206
+
1207
+ appraise 'resque2-redis4' do
1208
+ gem 'redis', '>= 4.0'
1209
+ gem 'resque', '>= 2.0'
1210
+ end
1211
+
1212
+ (3..5).each { |v| gem_cucumber(v) }
1213
+
1026
1214
  appraise 'contrib' do
1027
1215
  gem 'actionpack'
1028
1216
  gem 'actionview'
@@ -1030,6 +1218,7 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
1030
1218
  gem 'activerecord'
1031
1219
  gem 'aws-sdk'
1032
1220
  gem 'concurrent-ruby'
1221
+ gem 'cucumber'
1033
1222
  gem 'dalli'
1034
1223
  gem 'delayed_job'
1035
1224
  gem 'delayed_job_active_record'
@@ -1037,22 +1226,25 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
1037
1226
  gem 'ethon'
1038
1227
  gem 'excon'
1039
1228
  gem 'grape'
1040
- gem 'graphql'
1229
+ gem 'graphql', '>= 1.12.0'
1041
1230
  gem 'grpc'
1042
1231
  gem 'hiredis'
1043
1232
  gem 'http'
1233
+ gem 'httpclient'
1044
1234
  gem 'mongo', '>= 2.8.0'
1045
- gem 'mysql2', '< 0.5', platform: :ruby
1235
+ gem 'mysql2', '< 1', platform: :ruby
1046
1236
  gem 'pg', platform: :ruby
1047
1237
  gem 'presto-client', '>= 0.5.14'
1238
+ gem 'qless'
1048
1239
  gem 'racecar', '>= 0.3.5'
1049
1240
  gem 'rack'
1050
1241
  gem 'rack-test'
1051
1242
  gem 'rake', '>= 12.3'
1052
1243
  gem 'redis', '< 4.0'
1053
1244
  gem 'rest-client'
1054
- gem 'resque', '< 2.0'
1245
+ gem 'resque'
1055
1246
  gem 'ruby-kafka', '>= 0.7.10'
1247
+ gem 'rspec', '>= 3.0.0'
1056
1248
  gem 'sequel'
1057
1249
  gem 'shoryuken'
1058
1250
  gem 'sidekiq'
@@ -1068,4 +1260,91 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
1068
1260
  gem 'faraday', '0.17'
1069
1261
  end
1070
1262
  end
1263
+ elsif Gem::Version.new('3.0.0') <= Gem::Version.new(RUBY_VERSION)
1264
+ appraise 'rails61-mysql2' do
1265
+ gem 'rails', '~> 6.1.0'
1266
+ gem 'mysql2', '~> 0.5', platform: :ruby
1267
+ gem 'sprockets', '< 4'
1268
+ gem 'lograge', '~> 0.11'
1269
+ end
1270
+
1271
+ appraise 'rails61-postgres' do
1272
+ gem 'rails', '~> 6.1.0'
1273
+ gem 'pg', '>= 1.1', platform: :ruby
1274
+ gem 'sprockets', '< 4'
1275
+ gem 'lograge', '~> 0.11'
1276
+ end
1277
+
1278
+ appraise 'rails61-postgres-redis' do
1279
+ gem 'rails', '~> 6.1.0'
1280
+ gem 'pg', '>= 1.1', platform: :ruby
1281
+ gem 'redis', '>= 4.2.5'
1282
+ gem 'sprockets', '< 4'
1283
+ gem 'lograge', '~> 0.11'
1284
+ end
1285
+
1286
+ appraise 'rails61-postgres-sidekiq' do
1287
+ gem 'rails', '~> 6.1.0'
1288
+ gem 'pg', '>= 1.1', platform: :ruby
1289
+ gem 'sidekiq', '>= 6.1.2'
1290
+ gem 'sprockets', '< 4'
1291
+ gem 'lograge', '~> 0.11'
1292
+ end
1293
+
1294
+ appraise 'resque2-redis3' do
1295
+ gem 'redis', '< 4.0'
1296
+ gem 'resque', '>= 2.0'
1297
+ end
1298
+
1299
+ appraise 'resque2-redis4' do
1300
+ gem 'redis', '>= 4.0'
1301
+ gem 'resque', '>= 2.0'
1302
+ end
1303
+
1304
+ (3..5).each { |v| gem_cucumber(v) }
1305
+
1306
+ appraise 'contrib' do
1307
+ gem 'actionpack'
1308
+ gem 'actionview'
1309
+ gem 'active_model_serializers', '>= 0.10.0'
1310
+ gem 'activerecord'
1311
+ gem 'aws-sdk'
1312
+ gem 'concurrent-ruby'
1313
+ gem 'cucumber'
1314
+ gem 'dalli'
1315
+ gem 'delayed_job'
1316
+ gem 'delayed_job_active_record'
1317
+ gem 'elasticsearch-transport'
1318
+ gem 'ethon'
1319
+ gem 'excon'
1320
+ gem 'grape'
1321
+ gem 'graphql', '>= 1.12.0'
1322
+ # gem 'grpc' # Pending 3.0 support by transient protobuf dependency https://github.com/protocolbuffers/protobuf/issues/7922
1323
+ gem 'hiredis'
1324
+ gem 'http'
1325
+ gem 'httpclient'
1326
+ gem 'mongo', '>= 2.8.0'
1327
+ gem 'mysql2', '>= 0.5.3', platform: :ruby
1328
+ gem 'pg', '>= 1.1', platform: :ruby
1329
+ gem 'presto-client', '>= 0.5.14'
1330
+ gem 'qless'
1331
+ # gem 'racecar', '>= 0.3.5' # Pending release of our fix: https://github.com/appsignal/rdkafka-ruby/pull/144
1332
+ gem 'rack'
1333
+ gem 'rack-test'
1334
+ gem 'rake', '>= 12.3'
1335
+ gem 'redis', '< 4.0'
1336
+ gem 'rest-client'
1337
+ gem 'resque'
1338
+ gem 'ruby-kafka', '>= 0.7.10'
1339
+ gem 'rspec', '>= 3.0.0'
1340
+ gem 'sequel'
1341
+ gem 'shoryuken'
1342
+ gem 'sidekiq'
1343
+ gem 'sinatra'
1344
+ gem 'sneakers', '>= 2.12.0'
1345
+ gem 'sqlite3', '>= 1.4.2'
1346
+ gem 'sucker_punch'
1347
+ gem 'typhoeus'
1348
+ gem 'que', '>= 1.0.0.beta2'
1349
+ end
1071
1350
  end