ddtrace 0.37.0 → 0.42.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.circleci/config.yml +56 -0
- data/.gitignore +2 -0
- data/.gitlab-ci.yml +1 -0
- data/.simplecov +38 -0
- data/Appraisals +186 -11
- data/CHANGELOG.md +188 -1
- data/CONTRIBUTING.md +1 -1
- data/Rakefile +518 -482
- data/ddtrace.gemspec +3 -0
- data/docker-compose.yml +2 -2
- data/docs/DevelopmentGuide.md +26 -0
- data/docs/GettingStarted.md +188 -78
- data/lib/ddtrace.rb +4 -0
- data/lib/ddtrace/buffer.rb +259 -52
- data/lib/ddtrace/configuration.rb +39 -5
- data/lib/ddtrace/configuration/components.rb +4 -7
- data/lib/ddtrace/configuration/options.rb +3 -1
- data/lib/ddtrace/configuration/settings.rb +32 -4
- data/lib/ddtrace/context_provider.rb +6 -5
- data/lib/ddtrace/contrib/action_cable/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/action_cable/ext.rb +5 -2
- data/lib/ddtrace/contrib/action_pack/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/action_pack/ext.rb +5 -2
- data/lib/ddtrace/contrib/action_view/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/action_view/ext.rb +5 -2
- data/lib/ddtrace/contrib/active_model_serializers/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/active_model_serializers/ext.rb +5 -2
- data/lib/ddtrace/contrib/active_record/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/active_record/events/sql.rb +4 -0
- data/lib/ddtrace/contrib/active_record/ext.rb +5 -2
- data/lib/ddtrace/contrib/active_support/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/active_support/ext.rb +5 -2
- data/lib/ddtrace/contrib/active_support/notifications/subscription.rb +3 -3
- data/lib/ddtrace/contrib/aws/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/aws/ext.rb +5 -2
- data/lib/ddtrace/contrib/aws/instrumentation.rb +4 -0
- data/lib/ddtrace/contrib/concurrent_ruby/configuration/settings.rb +5 -0
- data/lib/ddtrace/contrib/concurrent_ruby/ext.rb +1 -0
- data/lib/ddtrace/contrib/configuration/settings.rb +1 -0
- data/lib/ddtrace/contrib/dalli/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/dalli/ext.rb +5 -2
- data/lib/ddtrace/contrib/dalli/instrumentation.rb +4 -0
- data/lib/ddtrace/contrib/delayed_job/configuration/settings.rb +8 -2
- data/lib/ddtrace/contrib/delayed_job/ext.rb +7 -2
- data/lib/ddtrace/contrib/delayed_job/plugin.rb +37 -15
- data/lib/ddtrace/contrib/elasticsearch/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/elasticsearch/ext.rb +5 -2
- data/lib/ddtrace/contrib/elasticsearch/patcher.rb +4 -0
- data/lib/ddtrace/contrib/ethon/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/ethon/easy_patch.rb +4 -2
- data/lib/ddtrace/contrib/ethon/ext.rb +5 -2
- data/lib/ddtrace/contrib/ethon/multi_patch.rb +4 -0
- data/lib/ddtrace/contrib/excon/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/excon/ext.rb +5 -2
- data/lib/ddtrace/contrib/excon/middleware.rb +4 -0
- data/lib/ddtrace/contrib/extensions.rb +11 -1
- data/lib/ddtrace/contrib/faraday/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/faraday/ext.rb +5 -2
- data/lib/ddtrace/contrib/faraday/middleware.rb +9 -3
- data/lib/ddtrace/contrib/faraday/patcher.rb +12 -0
- data/lib/ddtrace/contrib/grape/configuration/settings.rb +7 -3
- data/lib/ddtrace/contrib/grape/endpoint.rb +6 -4
- data/lib/ddtrace/contrib/grape/ext.rb +5 -2
- data/lib/ddtrace/contrib/graphql/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/graphql/ext.rb +5 -2
- data/lib/ddtrace/contrib/grpc/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/grpc/datadog_interceptor/client.rb +6 -4
- data/lib/ddtrace/contrib/grpc/datadog_interceptor/server.rb +4 -0
- data/lib/ddtrace/contrib/grpc/ext.rb +5 -2
- data/lib/ddtrace/contrib/http/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/http/ext.rb +5 -2
- data/lib/ddtrace/contrib/http/instrumentation.rb +4 -0
- data/lib/ddtrace/contrib/httprb/configuration/settings.rb +32 -0
- data/lib/ddtrace/contrib/httprb/ext.rb +17 -0
- data/lib/ddtrace/contrib/httprb/instrumentation.rb +163 -0
- data/lib/ddtrace/contrib/httprb/integration.rb +43 -0
- data/lib/ddtrace/contrib/httprb/patcher.rb +35 -0
- data/lib/ddtrace/contrib/kafka/configuration/settings.rb +30 -0
- data/lib/ddtrace/contrib/kafka/consumer_event.rb +14 -0
- data/lib/ddtrace/contrib/kafka/consumer_group_event.rb +14 -0
- data/lib/ddtrace/contrib/kafka/event.rb +51 -0
- data/lib/ddtrace/contrib/kafka/events.rb +44 -0
- data/lib/ddtrace/contrib/kafka/events/connection/request.rb +34 -0
- data/lib/ddtrace/contrib/kafka/events/consumer/process_batch.rb +41 -0
- data/lib/ddtrace/contrib/kafka/events/consumer/process_message.rb +39 -0
- data/lib/ddtrace/contrib/kafka/events/consumer_group/heartbeat.rb +39 -0
- data/lib/ddtrace/contrib/kafka/events/consumer_group/join_group.rb +29 -0
- data/lib/ddtrace/contrib/kafka/events/consumer_group/leave_group.rb +29 -0
- data/lib/ddtrace/contrib/kafka/events/consumer_group/sync_group.rb +29 -0
- data/lib/ddtrace/contrib/kafka/events/produce_operation/send_messages.rb +32 -0
- data/lib/ddtrace/contrib/kafka/events/producer/deliver_messages.rb +35 -0
- data/lib/ddtrace/contrib/kafka/ext.rb +41 -0
- data/lib/ddtrace/contrib/kafka/integration.rb +39 -0
- data/lib/ddtrace/contrib/kafka/patcher.rb +26 -0
- data/lib/ddtrace/contrib/mongodb/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/mongodb/ext.rb +5 -2
- data/lib/ddtrace/contrib/mongodb/subscribers.rb +4 -0
- data/lib/ddtrace/contrib/mysql2/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/mysql2/ext.rb +5 -2
- data/lib/ddtrace/contrib/mysql2/instrumentation.rb +4 -0
- data/lib/ddtrace/contrib/presto/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/presto/ext.rb +5 -2
- data/lib/ddtrace/contrib/presto/instrumentation.rb +3 -0
- data/lib/ddtrace/contrib/que/configuration/settings.rb +42 -0
- data/lib/ddtrace/contrib/que/ext.rb +30 -0
- data/lib/ddtrace/contrib/que/integration.rb +42 -0
- data/lib/ddtrace/contrib/que/patcher.rb +24 -0
- data/lib/ddtrace/contrib/que/tracer.rb +56 -0
- data/lib/ddtrace/contrib/racecar/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/racecar/event.rb +4 -0
- data/lib/ddtrace/contrib/racecar/events.rb +2 -0
- data/lib/ddtrace/contrib/racecar/events/consume.rb +27 -0
- data/lib/ddtrace/contrib/racecar/ext.rb +6 -2
- data/lib/ddtrace/contrib/rack/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/rack/ext.rb +5 -2
- data/lib/ddtrace/contrib/rack/middlewares.rb +17 -12
- data/lib/ddtrace/contrib/rails/configuration/settings.rb +12 -2
- data/lib/ddtrace/contrib/rails/ext.rb +6 -2
- data/lib/ddtrace/contrib/rails/log_injection.rb +81 -0
- data/lib/ddtrace/contrib/rails/middlewares.rb +7 -2
- data/lib/ddtrace/contrib/rails/patcher.rb +26 -0
- data/lib/ddtrace/contrib/rake/configuration/settings.rb +7 -3
- data/lib/ddtrace/contrib/rake/ext.rb +5 -2
- data/lib/ddtrace/contrib/redis/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/redis/ext.rb +5 -2
- data/lib/ddtrace/contrib/redis/tags.rb +4 -0
- data/lib/ddtrace/contrib/resque/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/resque/ext.rb +5 -2
- data/lib/ddtrace/contrib/resque/integration.rb +1 -1
- data/lib/ddtrace/contrib/rest_client/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/rest_client/ext.rb +5 -2
- data/lib/ddtrace/contrib/rest_client/request_patch.rb +6 -2
- data/lib/ddtrace/contrib/sequel/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/sequel/database.rb +3 -1
- data/lib/ddtrace/contrib/sequel/dataset.rb +3 -2
- data/lib/ddtrace/contrib/sequel/ext.rb +6 -2
- data/lib/ddtrace/contrib/sequel/utils.rb +35 -6
- data/lib/ddtrace/contrib/shoryuken/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/shoryuken/ext.rb +5 -2
- data/lib/ddtrace/contrib/sidekiq/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/sidekiq/ext.rb +6 -2
- data/lib/ddtrace/contrib/sidekiq/patcher.rb +8 -1
- data/lib/ddtrace/contrib/sidekiq/server_tracer.rb +1 -0
- data/lib/ddtrace/contrib/sinatra/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/sinatra/env.rb +5 -4
- data/lib/ddtrace/contrib/sinatra/ext.rb +5 -2
- data/lib/ddtrace/contrib/sinatra/tracer.rb +21 -42
- data/lib/ddtrace/contrib/sinatra/tracer_middleware.rb +50 -23
- data/lib/ddtrace/contrib/sneakers/configuration/settings.rb +32 -0
- data/lib/ddtrace/contrib/sneakers/ext.rb +22 -0
- data/lib/ddtrace/contrib/sneakers/integration.rb +41 -0
- data/lib/ddtrace/contrib/sneakers/patcher.rb +24 -0
- data/lib/ddtrace/contrib/sneakers/tracer.rb +58 -0
- data/lib/ddtrace/contrib/sucker_punch/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/sucker_punch/ext.rb +5 -2
- data/lib/ddtrace/diagnostics/environment_logger.rb +278 -0
- data/lib/ddtrace/environment.rb +17 -3
- data/lib/ddtrace/ext/diagnostics.rb +3 -0
- data/lib/ddtrace/ext/environment.rb +2 -0
- data/lib/ddtrace/ext/integration.rb +8 -0
- data/lib/ddtrace/ext/runtime.rb +1 -0
- data/lib/ddtrace/ext/transport.rb +1 -0
- data/lib/ddtrace/logger.rb +1 -1
- data/lib/ddtrace/opentracer/distributed_headers.rb +1 -1
- data/lib/ddtrace/pipeline/span_filter.rb +15 -15
- data/lib/ddtrace/propagation/grpc_propagator.rb +18 -6
- data/lib/ddtrace/runtime/metrics.rb +24 -6
- data/lib/ddtrace/sampler.rb +4 -2
- data/lib/ddtrace/span.rb +162 -27
- data/lib/ddtrace/tracer.rb +24 -18
- data/lib/ddtrace/transport/http.rb +15 -0
- data/lib/ddtrace/transport/http/adapters/net.rb +16 -2
- data/lib/ddtrace/transport/http/adapters/test.rb +6 -0
- data/lib/ddtrace/transport/http/adapters/unix_socket.rb +4 -0
- data/lib/ddtrace/transport/http/statistics.rb +14 -1
- data/lib/ddtrace/transport/response.rb +11 -0
- data/lib/ddtrace/transport/traces.rb +7 -2
- data/lib/ddtrace/utils.rb +7 -3
- data/lib/ddtrace/version.rb +1 -1
- data/lib/ddtrace/workers/async.rb +2 -2
- data/lib/ddtrace/workers/loop.rb +1 -1
- data/lib/ddtrace/workers/polling.rb +1 -1
- data/lib/ddtrace/workers/trace_writer.rb +3 -0
- data/lib/ddtrace/writer.rb +33 -12
- metadata +81 -2
data/CHANGELOG.md
CHANGED
@@ -2,6 +2,189 @@
|
|
2
2
|
|
3
3
|
## [Unreleased]
|
4
4
|
|
5
|
+
## [0.42.0] - 2020-10-21
|
6
|
+
|
7
|
+
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.42.0
|
8
|
+
|
9
|
+
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.41.0...v0.42.0
|
10
|
+
|
11
|
+
### Added
|
12
|
+
|
13
|
+
- Increase Resque support to include 2.0 (#1213) (@erict-square)
|
14
|
+
|
15
|
+
- Improve gRPC Propagator to support metadata array values (#1203) (@mdehoog)
|
16
|
+
|
17
|
+
- Add CPU benchmarks, diagnostics to tests (#1188, #1198)
|
18
|
+
|
19
|
+
- Access active correlation by Thread (#1200)
|
20
|
+
|
21
|
+
- Improve delayed_job instrumentation (#1187) (@norbertnytko)
|
22
|
+
|
23
|
+
### Changed
|
24
|
+
|
25
|
+
### Fixed
|
26
|
+
|
27
|
+
- Improve Rails `log_injection` option to support more Lograge formats (#1210) (@Supy)
|
28
|
+
|
29
|
+
- Fix Changelog (#1199) (@y-yagi)
|
30
|
+
|
31
|
+
### Refactored
|
32
|
+
|
33
|
+
- Refactor Trace buffer into multiple components (#1195)
|
34
|
+
|
35
|
+
## [0.41.0] - 2020-09-30
|
36
|
+
|
37
|
+
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.41.0
|
38
|
+
|
39
|
+
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.40.0...v0.41.0
|
40
|
+
|
41
|
+
### Added
|
42
|
+
|
43
|
+
- Improve duration counting using monotonic clock (#424, #1173) (@soulcutter)
|
44
|
+
|
45
|
+
### Changed
|
46
|
+
|
47
|
+
- Add peer.service tag to external services and skip tagging external services with language tag for runtime metrics (#934, #935, #1180)
|
48
|
+
- This helps support the way runtime metrics are associated with spans in the UI.
|
49
|
+
- Faster TraceBuffer for CRuby (#1172)
|
50
|
+
- Reduce memory usage during gem startup (#1090)
|
51
|
+
- Reduce memory usage of the HTTP transport (#1165)
|
52
|
+
|
53
|
+
### Fixed
|
54
|
+
|
55
|
+
- Improved prepared statement support for Sequel integrations (#1186)
|
56
|
+
- Fix Sequel instrumentation when executing literal strings (#1185) (@matchbookmac)
|
57
|
+
- Remove explicit `Logger` class verification (#1181) (@bartekbsh)
|
58
|
+
- This allows users to pass in a custom logger that does not inherit from `Logger` class.
|
59
|
+
- Correct tracer buffer metric counting (#1182)
|
60
|
+
- Fix Span#pretty_print for empty duration (#1183)
|
61
|
+
|
62
|
+
### Refactored
|
63
|
+
|
64
|
+
- Improvements to test suite & CI (#1179, #1184, #1177, #1178, #1176)
|
65
|
+
- Reduce generated Span ID range to fit in Fixnum (#1189)
|
66
|
+
|
67
|
+
## [0.40.0] - 2020-09-08
|
68
|
+
|
69
|
+
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.40.0
|
70
|
+
|
71
|
+
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.39.0...v0.40.0
|
72
|
+
|
73
|
+
### Added
|
74
|
+
|
75
|
+
- Rails `log_injection` option to auto enable log correlation (#1157)
|
76
|
+
- Que integration (#1141, #1146) (@hs-bguven)
|
77
|
+
- `Components#startup!` hook (#1151)
|
78
|
+
- Code coverage report (#1159)
|
79
|
+
- Every commit now has a `coverage` CI step that contains the code coverage report. This report can be found in the `Artifacts` tab of that CI step, under `coverage/index.html`.
|
80
|
+
|
81
|
+
### Changed
|
82
|
+
|
83
|
+
- Use a single top level span for Racecar consumers (#1150) (@dasch)
|
84
|
+
|
85
|
+
### Fixed
|
86
|
+
|
87
|
+
- Sinatra nested modular applications possibly leaking spans (#1035, #1145)
|
88
|
+
|
89
|
+
* **BREAKING** for nested modular Sinatra applications only:
|
90
|
+
```ruby
|
91
|
+
class Nested < Sinatra::Base
|
92
|
+
end
|
93
|
+
|
94
|
+
class TopLevel < Sinatra::Base
|
95
|
+
use Nested # Nesting happens here
|
96
|
+
end
|
97
|
+
```
|
98
|
+
* Non-breaking for classic applications nor modular non-nested applications.
|
99
|
+
|
100
|
+
Fixes issues introduced by #1015 (in 0.35.0), when we first introduced Sinatra support for modular applications.
|
101
|
+
|
102
|
+
The main issue we had to solve for modular support is how to handle nested applications, as only one application is actually responsible for handling the route. A naive implementation would cause the creation of nested `sinatra.request` spans, even for applications that did not handle the request. This is technically correct, as Sinatra is traversing that middleware, accruing overhead, but that does not aligned with our existing behavior of having a single `sinatra.request` span.
|
103
|
+
|
104
|
+
While trying to achieve backwards-compatibility, we had to resort to a solution that turned out brittle: `sinatra.request` spans had to start in one middleware level and finished it in another. This allowed us to only capture the `sinatra.request` for the matching route, and skip the non-matching one. This caused unexpected issues on some user setups, specially around Sinatra middleware that created spans in between the initialization and closure of `sinatra.request` spans.
|
105
|
+
|
106
|
+
This change now address these implementation issues by creating multiple `sinatra.request`, one for each traversed Sinatra application, even non-matching ones. This instrumentation is more correct, but at the cost of being a breaking change for nested modular applications.
|
107
|
+
|
108
|
+
Please see #1145 for more information, and example screenshots on how traces for affected applications will look like.
|
109
|
+
|
110
|
+
- Rack/Rails span error propagation with `rescue_from` (#1155, #1162)
|
111
|
+
- Prevent logger recursion during startup (#1158)
|
112
|
+
- Race condition on new worker classes (#1154)
|
113
|
+
- These classes represent future work, and not being used at the moment.
|
114
|
+
|
115
|
+
### Refactored
|
116
|
+
|
117
|
+
- Run CI tests in parallel (#1156)
|
118
|
+
- Migrate minitest tests to RSpec (#1127, #1128, #1133, #1149, #1152, #1153)
|
119
|
+
- Improvements to test suite (#1134, #1148, #1163)
|
120
|
+
- Improvements to documentation (#1138)
|
121
|
+
|
122
|
+
### Removed
|
123
|
+
|
124
|
+
- **Ruby 1.9 support ended, as it transitions from Maintenance to End-Of-Life (#1137)**
|
125
|
+
- GitLab status check when not applicable (#1160)
|
126
|
+
- Allows for PRs pass all status checks once again. Before this change, a `dd-gitlab/copy_to_s3` check would never leave the "Pending" status. This check tracks the deployment of a commit to an internal testing platform, which currently only happens on `master` branch or when manually triggered internally.
|
127
|
+
|
128
|
+
## [0.39.0] - 2020-08-05
|
129
|
+
|
130
|
+
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.39.0
|
131
|
+
|
132
|
+
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.38.0...v0.39.0
|
133
|
+
|
134
|
+
### Added
|
135
|
+
|
136
|
+
- JRuby 9.2 support (#1126)
|
137
|
+
- Sneakers integration (#1121) (@janz93)
|
138
|
+
|
139
|
+
### Changed
|
140
|
+
|
141
|
+
- Consistent environment variables across languages (#1115)
|
142
|
+
- Default logger level from WARN to INFO (#1120) (@gingerlime)
|
143
|
+
- This change also reduces the startup environment log message to INFO level (#1104)
|
144
|
+
|
145
|
+
### Fixed
|
146
|
+
|
147
|
+
- HTTP::StateError on error responses for http.rb (#1116, #1122) (@evan-waters)
|
148
|
+
- Startup log error when using the test adapter (#1125, #1131) (@benhutton)
|
149
|
+
- Warning message for Faraday < 1.0 (#1129) (@fledman, @tjwp)
|
150
|
+
- Propagate Rails error message to Rack span (#1124)
|
151
|
+
|
152
|
+
### Refactored
|
153
|
+
|
154
|
+
- Improved ActiveRecord documentation (#1119)
|
155
|
+
- Improvements to test suite (#1105, #1118)
|
156
|
+
|
157
|
+
## [0.38.0] - 2020-07-13
|
158
|
+
|
159
|
+
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.38.0
|
160
|
+
|
161
|
+
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.37.0...v0.38.0
|
162
|
+
|
163
|
+
### Added
|
164
|
+
|
165
|
+
- http.rb integration (#529, #853)
|
166
|
+
- Kafka integration (#1070) (@tjwp)
|
167
|
+
- Span#set_tags (#1081) (@DocX)
|
168
|
+
- retry_count tag for Sidekiq jobs (#1089) (@elyalvarado)
|
169
|
+
- Startup environment log (#1104, #1109)
|
170
|
+
- DD_SITE and DD_API_KEY configuration (#1107)
|
171
|
+
|
172
|
+
### Changed
|
173
|
+
|
174
|
+
- Auto instrument Faraday default connection (#1057)
|
175
|
+
- Sidekiq client middleware is now the same for client and server (#1099) (@drcapulet)
|
176
|
+
- Single pass SpanFilter (#1071) (@tjwp)
|
177
|
+
|
178
|
+
### Fixed
|
179
|
+
|
180
|
+
- Ensure fatal exceptions are propagated (#1100)
|
181
|
+
- Respect child_of: option in Tracer#trace (#1082) (@DocX)
|
182
|
+
- Improve Writer thread safety (#1091) (@fledman)
|
183
|
+
|
184
|
+
### Refactored
|
185
|
+
|
186
|
+
- Improvements to test suite (#1092, #1103)
|
187
|
+
|
5
188
|
## [0.37.0] - 2020-06-24
|
6
189
|
|
7
190
|
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.37.0
|
@@ -1274,7 +1457,11 @@ Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.3.1
|
|
1274
1457
|
|
1275
1458
|
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
|
1276
1459
|
|
1277
|
-
[Unreleased]: https://github.com/DataDog/dd-trace-rb/compare/v0.
|
1460
|
+
[Unreleased]: https://github.com/DataDog/dd-trace-rb/compare/v0.41.0...master
|
1461
|
+
[0.41.0]: https://github.com/DataDog/dd-trace-rb/compare/v0.40.0...v0.41.0
|
1462
|
+
[0.40.0]: https://github.com/DataDog/dd-trace-rb/compare/v0.39.0...v0.40.0
|
1463
|
+
[0.39.0]: https://github.com/DataDog/dd-trace-rb/compare/v0.38.0...v0.39.0
|
1464
|
+
[0.38.0]: https://github.com/DataDog/dd-trace-rb/compare/v0.37.0...v0.38.0
|
1278
1465
|
[0.37.0]: https://github.com/DataDog/dd-trace-rb/compare/v0.36.0...v0.37.0
|
1279
1466
|
[0.36.0]: https://github.com/DataDog/dd-trace-rb/compare/v0.35.2...v0.36.0
|
1280
1467
|
[0.35.2]: https://github.com/DataDog/dd-trace-rb/compare/v0.35.1...v0.35.2
|
data/CONTRIBUTING.md
CHANGED
@@ -56,7 +56,7 @@ We welcome code contributions to the library, which you can [submit as a pull re
|
|
56
56
|
2. **Make any changes** for your patch.
|
57
57
|
3. **Write tests** that demonstrate how the feature works or how the bug is fixed.
|
58
58
|
4. **Update any documentation** such as `docs/GettingStarted.md`, especially for new features.
|
59
|
-
5. **Submit the pull request** from your fork back to
|
59
|
+
5. **Submit the pull request** from your fork back to the latest revision of the `master` branch on https://github.com/DataDog/dd-trace-rb.
|
60
60
|
|
61
61
|
The pull request will be run through our CI pipeline, and a project member will review the changes with you. At a minimum, to be accepted and merged, pull requests must:
|
62
62
|
|
data/Rakefile
CHANGED
@@ -95,9 +95,12 @@ namespace :spec do
|
|
95
95
|
:graphql,
|
96
96
|
:grpc,
|
97
97
|
:http,
|
98
|
+
:httprb,
|
99
|
+
:kafka,
|
98
100
|
:mongodb,
|
99
101
|
:mysql2,
|
100
102
|
:presto,
|
103
|
+
:que,
|
101
104
|
:racecar,
|
102
105
|
:rack,
|
103
106
|
:rake,
|
@@ -108,6 +111,7 @@ namespace :spec do
|
|
108
111
|
:shoryuken,
|
109
112
|
:sidekiq,
|
110
113
|
:sinatra,
|
114
|
+
:sneakers,
|
111
115
|
:sucker_punch,
|
112
116
|
:suite
|
113
117
|
].each do |contrib|
|
@@ -121,7 +125,7 @@ end
|
|
121
125
|
namespace :test do
|
122
126
|
task all: [:main,
|
123
127
|
:rails,
|
124
|
-
:
|
128
|
+
:monkey]
|
125
129
|
|
126
130
|
Rake::TestTask.new(:main) do |t|
|
127
131
|
t.libs << %w[test lib]
|
@@ -139,9 +143,6 @@ namespace :test do
|
|
139
143
|
end
|
140
144
|
|
141
145
|
[
|
142
|
-
:grape,
|
143
|
-
:sidekiq,
|
144
|
-
:sucker_punch
|
145
146
|
].each do |contrib|
|
146
147
|
Rake::TestTask.new(contrib) do |t|
|
147
148
|
t.libs << %w[test lib]
|
@@ -183,6 +184,21 @@ task :'release:docs' => :docs do
|
|
183
184
|
sh "aws s3 cp --recursive doc/ s3://#{S3_BUCKET}/#{S3_DIR}/docs/"
|
184
185
|
end
|
185
186
|
|
187
|
+
# Declare a command for execution.
|
188
|
+
# Jobs are parallelized if running in CI.
|
189
|
+
def declare(*args)
|
190
|
+
total_executors = ENV.key?('CIRCLE_NODE_TOTAL') ? ENV['CIRCLE_NODE_TOTAL'].to_i : nil
|
191
|
+
current_executor = ENV.key?('CIRCLE_NODE_INDEX') ? ENV['CIRCLE_NODE_INDEX'].to_i : nil
|
192
|
+
|
193
|
+
if total_executors && current_executor && total_executors > 1
|
194
|
+
@execution_count ||= 0
|
195
|
+
@execution_count += 1
|
196
|
+
sh(*args) if @execution_count % total_executors == current_executor
|
197
|
+
else
|
198
|
+
sh(*args)
|
199
|
+
end
|
200
|
+
end
|
201
|
+
|
186
202
|
desc 'CI task; it runs all tests for current version of Ruby'
|
187
203
|
task :ci do
|
188
204
|
if Gem::Version.new(RUBY_VERSION) < Gem::Version.new(Datadog::VERSION::MINIMUM_RUBY_VERSION)
|
@@ -190,561 +206,581 @@ task :ci do
|
|
190
206
|
elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
|
191
207
|
&& Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.1.0')
|
192
208
|
# Main library
|
193
|
-
|
194
|
-
|
195
|
-
|
196
|
-
# Benchmarks
|
197
|
-
sh 'bundle exec rake spec:benchmark'
|
209
|
+
declare 'bundle exec rake test:main'
|
210
|
+
declare 'bundle exec rake spec:main'
|
211
|
+
declare 'bundle exec rake spec:contrib'
|
198
212
|
|
199
213
|
if RUBY_PLATFORM != 'java'
|
200
214
|
# Contrib minitests
|
201
|
-
|
202
|
-
sh 'bundle exec appraisal contrib-old rake test:sidekiq'
|
203
|
-
sh 'bundle exec appraisal contrib-old rake test:sucker_punch'
|
215
|
+
declare 'bundle exec appraisal contrib-old rake test:monkey'
|
204
216
|
# Contrib specs
|
205
|
-
|
206
|
-
|
207
|
-
|
208
|
-
|
209
|
-
|
210
|
-
|
211
|
-
|
212
|
-
|
213
|
-
|
214
|
-
|
215
|
-
|
216
|
-
|
217
|
-
|
218
|
-
|
219
|
-
|
220
|
-
|
221
|
-
|
222
|
-
|
223
|
-
|
224
|
-
|
225
|
-
|
226
|
-
|
227
|
-
|
228
|
-
|
217
|
+
declare 'bundle exec appraisal contrib-old rake spec:active_model_serializers'
|
218
|
+
declare 'bundle exec appraisal contrib-old rake spec:active_record'
|
219
|
+
declare 'bundle exec appraisal contrib-old rake spec:active_support'
|
220
|
+
declare 'bundle exec appraisal contrib-old rake spec:aws'
|
221
|
+
declare 'bundle exec appraisal contrib-old rake spec:concurrent_ruby'
|
222
|
+
declare 'bundle exec appraisal contrib-old rake spec:dalli'
|
223
|
+
declare 'bundle exec appraisal contrib-old rake spec:delayed_job'
|
224
|
+
declare 'bundle exec appraisal contrib-old rake spec:elasticsearch'
|
225
|
+
declare 'bundle exec appraisal contrib-old rake spec:ethon'
|
226
|
+
declare 'bundle exec appraisal contrib-old rake spec:excon'
|
227
|
+
declare 'bundle exec appraisal contrib-old rake spec:faraday'
|
228
|
+
declare 'bundle exec appraisal contrib-old rake spec:http'
|
229
|
+
declare 'bundle exec appraisal contrib-old rake spec:httprb'
|
230
|
+
declare 'bundle exec appraisal contrib-old rake spec:mongodb'
|
231
|
+
declare 'bundle exec appraisal contrib-old rake spec:mysql2'
|
232
|
+
declare 'bundle exec appraisal contrib-old rake spec:rack'
|
233
|
+
declare 'bundle exec appraisal contrib-old rake spec:rake'
|
234
|
+
declare 'bundle exec appraisal contrib-old rake spec:redis'
|
235
|
+
declare 'bundle exec appraisal contrib-old rake spec:resque'
|
236
|
+
declare 'bundle exec appraisal contrib-old rake spec:rest_client'
|
237
|
+
declare 'bundle exec appraisal contrib-old rake spec:sequel'
|
238
|
+
declare 'bundle exec appraisal contrib-old rake spec:sidekiq'
|
239
|
+
declare 'bundle exec appraisal contrib-old rake spec:sinatra'
|
240
|
+
declare 'bundle exec appraisal contrib-old rake spec:sucker_punch'
|
241
|
+
declare 'bundle exec appraisal contrib-old rake spec:suite'
|
229
242
|
# Rails minitests
|
230
|
-
|
231
|
-
|
232
|
-
|
233
|
-
|
234
|
-
|
235
|
-
|
243
|
+
declare 'bundle exec appraisal rails30-postgres rake test:rails'
|
244
|
+
declare 'bundle exec appraisal rails30-postgres rake spec:railsdisableenv'
|
245
|
+
declare 'bundle exec appraisal rails32-mysql2 rake test:rails'
|
246
|
+
declare 'bundle exec appraisal rails32-postgres rake test:rails'
|
247
|
+
declare 'bundle exec appraisal rails32-postgres-redis rake spec:railsredis'
|
248
|
+
declare 'bundle exec appraisal rails32-postgres rake spec:railsdisableenv'
|
236
249
|
# Rails specs
|
237
|
-
|
238
|
-
|
239
|
-
|
250
|
+
declare 'bundle exec appraisal rails30-postgres rake spec:rails'
|
251
|
+
declare 'bundle exec appraisal rails32-mysql2 rake spec:rails'
|
252
|
+
declare 'bundle exec appraisal rails32-postgres rake spec:rails'
|
240
253
|
# Rails suite specs
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
|
254
|
+
declare 'bundle exec appraisal rails32-postgres rake spec:action_pack'
|
255
|
+
declare 'bundle exec appraisal rails32-postgres rake spec:action_view'
|
256
|
+
declare 'bundle exec appraisal rails32-mysql2 rake spec:active_record'
|
257
|
+
declare 'bundle exec appraisal rails32-postgres rake spec:active_support'
|
245
258
|
end
|
246
259
|
elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
|
247
260
|
&& Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.2.0')
|
248
261
|
# Main library
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
# Benchmarks
|
254
|
-
sh 'bundle exec rake spec:benchmark'
|
262
|
+
declare 'bundle exec rake test:main'
|
263
|
+
declare 'bundle exec rake spec:main'
|
264
|
+
declare 'bundle exec rake spec:contrib'
|
265
|
+
declare 'bundle exec rake spec:opentracer'
|
255
266
|
|
256
267
|
if RUBY_PLATFORM != 'java'
|
257
268
|
# Contrib minitests
|
258
|
-
|
259
|
-
sh 'bundle exec appraisal contrib-old rake test:sidekiq'
|
260
|
-
sh 'bundle exec appraisal contrib-old rake test:sucker_punch'
|
269
|
+
declare 'bundle exec appraisal contrib-old rake test:monkey'
|
261
270
|
# Contrib specs
|
262
|
-
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
|
267
|
-
|
268
|
-
|
269
|
-
|
270
|
-
|
271
|
-
|
272
|
-
|
273
|
-
|
274
|
-
|
275
|
-
|
276
|
-
|
277
|
-
|
278
|
-
|
279
|
-
|
280
|
-
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
|
285
|
-
|
286
|
-
|
271
|
+
declare 'bundle exec appraisal contrib-old rake spec:active_model_serializers'
|
272
|
+
declare 'bundle exec appraisal contrib-old rake spec:active_record'
|
273
|
+
declare 'bundle exec appraisal contrib-old rake spec:active_support'
|
274
|
+
declare 'bundle exec appraisal contrib-old rake spec:aws'
|
275
|
+
declare 'bundle exec appraisal contrib-old rake spec:concurrent_ruby'
|
276
|
+
declare 'bundle exec appraisal contrib-old rake spec:dalli'
|
277
|
+
declare 'bundle exec appraisal contrib-old rake spec:delayed_job'
|
278
|
+
declare 'bundle exec appraisal contrib-old rake spec:elasticsearch'
|
279
|
+
declare 'bundle exec appraisal contrib-old rake spec:ethon'
|
280
|
+
declare 'bundle exec appraisal contrib-old rake spec:excon'
|
281
|
+
declare 'bundle exec appraisal contrib-old rake spec:faraday'
|
282
|
+
declare 'bundle exec appraisal contrib-old rake spec:http'
|
283
|
+
declare 'bundle exec appraisal contrib-old rake spec:httprb'
|
284
|
+
declare 'bundle exec appraisal contrib-old rake spec:mongodb'
|
285
|
+
declare 'bundle exec appraisal contrib-old rake spec:mysql2'
|
286
|
+
declare 'bundle exec appraisal contrib-old rake spec:presto'
|
287
|
+
declare 'bundle exec appraisal contrib-old rake spec:rack'
|
288
|
+
declare 'bundle exec appraisal contrib-old rake spec:rake'
|
289
|
+
declare 'bundle exec appraisal contrib-old rake spec:redis'
|
290
|
+
declare 'bundle exec appraisal contrib-old rake spec:resque'
|
291
|
+
declare 'bundle exec appraisal contrib-old rake spec:rest_client'
|
292
|
+
declare 'bundle exec appraisal contrib-old rake spec:sequel'
|
293
|
+
declare 'bundle exec appraisal contrib-old rake spec:sidekiq'
|
294
|
+
declare 'bundle exec appraisal contrib-old rake spec:sinatra'
|
295
|
+
declare 'bundle exec appraisal contrib-old rake spec:sucker_punch'
|
296
|
+
declare 'bundle exec appraisal contrib-old rake spec:suite'
|
287
297
|
# Rails minitests
|
288
|
-
|
289
|
-
|
290
|
-
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
|
295
|
-
|
296
|
-
|
297
|
-
|
298
|
+
declare 'bundle exec appraisal rails30-postgres rake test:rails'
|
299
|
+
declare 'bundle exec appraisal rails30-postgres rake spec:railsdisableenv'
|
300
|
+
declare 'bundle exec appraisal rails32-mysql2 rake test:rails'
|
301
|
+
declare 'bundle exec appraisal rails32-postgres rake test:rails'
|
302
|
+
declare 'bundle exec appraisal rails32-postgres-redis rake spec:railsredis'
|
303
|
+
declare 'bundle exec appraisal rails32-postgres rake spec:railsdisableenv'
|
304
|
+
declare 'bundle exec appraisal rails4-mysql2 rake test:rails'
|
305
|
+
declare 'bundle exec appraisal rails4-postgres rake test:rails'
|
306
|
+
declare 'bundle exec appraisal rails4-postgres-redis rake spec:railsredis'
|
307
|
+
declare 'bundle exec appraisal rails4-postgres rake spec:railsdisableenv'
|
298
308
|
# Rails specs
|
299
|
-
|
300
|
-
|
301
|
-
|
302
|
-
|
303
|
-
|
309
|
+
declare 'bundle exec appraisal rails30-postgres rake spec:rails'
|
310
|
+
declare 'bundle exec appraisal rails32-mysql2 rake spec:rails'
|
311
|
+
declare 'bundle exec appraisal rails32-postgres rake spec:rails'
|
312
|
+
declare 'bundle exec appraisal rails4-mysql2 rake spec:rails'
|
313
|
+
declare 'bundle exec appraisal rails4-postgres rake spec:rails'
|
304
314
|
# Rails suite specs
|
305
|
-
|
306
|
-
|
307
|
-
|
308
|
-
|
315
|
+
declare 'bundle exec appraisal rails32-postgres rake spec:action_pack'
|
316
|
+
declare 'bundle exec appraisal rails32-postgres rake spec:action_view'
|
317
|
+
declare 'bundle exec appraisal rails32-mysql2 rake spec:active_record'
|
318
|
+
declare 'bundle exec appraisal rails32-postgres rake spec:active_support'
|
309
319
|
end
|
310
320
|
elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION)\
|
311
321
|
&& Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.3.0')
|
312
322
|
# Main library
|
313
|
-
|
314
|
-
|
315
|
-
|
316
|
-
|
317
|
-
# Benchmarks
|
318
|
-
sh 'bundle exec rake spec:benchmark'
|
323
|
+
declare 'bundle exec rake test:main'
|
324
|
+
declare 'bundle exec rake spec:main'
|
325
|
+
declare 'bundle exec rake spec:contrib'
|
326
|
+
declare 'bundle exec rake spec:opentracer'
|
319
327
|
|
320
328
|
if RUBY_PLATFORM != 'java'
|
321
329
|
# Contrib minitests
|
322
|
-
sh 'bundle exec appraisal contrib rake test:grape'
|
323
|
-
sh 'bundle exec appraisal contrib rake test:sidekiq'
|
324
|
-
sh 'bundle exec appraisal contrib rake test:sucker_punch'
|
325
330
|
# Contrib specs
|
326
|
-
|
327
|
-
|
328
|
-
|
329
|
-
|
330
|
-
|
331
|
-
|
332
|
-
|
333
|
-
|
334
|
-
|
335
|
-
|
336
|
-
|
337
|
-
|
338
|
-
|
339
|
-
|
340
|
-
|
341
|
-
|
342
|
-
|
343
|
-
|
344
|
-
|
345
|
-
|
346
|
-
|
347
|
-
|
348
|
-
|
349
|
-
|
350
|
-
|
351
|
-
|
352
|
-
|
353
|
-
|
354
|
-
|
355
|
-
|
356
|
-
|
357
|
-
|
331
|
+
declare 'bundle exec appraisal contrib rake spec:action_pack'
|
332
|
+
declare 'bundle exec appraisal contrib rake spec:action_view'
|
333
|
+
declare 'bundle exec appraisal contrib rake spec:active_model_serializers'
|
334
|
+
declare 'bundle exec appraisal contrib rake spec:active_record'
|
335
|
+
declare 'bundle exec appraisal contrib rake spec:active_support'
|
336
|
+
declare 'bundle exec appraisal contrib rake spec:aws'
|
337
|
+
declare 'bundle exec appraisal contrib rake spec:concurrent_ruby'
|
338
|
+
declare 'bundle exec appraisal contrib rake spec:dalli'
|
339
|
+
declare 'bundle exec appraisal contrib rake spec:delayed_job'
|
340
|
+
declare 'bundle exec appraisal contrib rake spec:elasticsearch'
|
341
|
+
declare 'bundle exec appraisal contrib rake spec:ethon'
|
342
|
+
declare 'bundle exec appraisal contrib rake spec:excon'
|
343
|
+
declare 'bundle exec appraisal contrib rake spec:faraday'
|
344
|
+
declare 'bundle exec appraisal contrib rake spec:grape'
|
345
|
+
declare 'bundle exec appraisal contrib rake spec:graphql'
|
346
|
+
declare 'bundle exec appraisal contrib rake spec:grpc'
|
347
|
+
declare 'bundle exec appraisal contrib rake spec:http'
|
348
|
+
declare 'bundle exec appraisal contrib rake spec:httprb'
|
349
|
+
declare 'bundle exec appraisal contrib rake spec:mongodb'
|
350
|
+
declare 'bundle exec appraisal contrib rake spec:mysql2'
|
351
|
+
declare 'bundle exec appraisal contrib rake spec:presto'
|
352
|
+
declare 'bundle exec appraisal contrib rake spec:que'
|
353
|
+
declare 'bundle exec appraisal contrib rake spec:racecar'
|
354
|
+
declare 'bundle exec appraisal contrib rake spec:rack'
|
355
|
+
declare 'bundle exec appraisal contrib rake spec:rake'
|
356
|
+
declare 'bundle exec appraisal contrib rake spec:redis'
|
357
|
+
declare 'bundle exec appraisal contrib rake spec:resque'
|
358
|
+
declare 'bundle exec appraisal contrib rake spec:rest_client'
|
359
|
+
declare 'bundle exec appraisal contrib rake spec:sequel'
|
360
|
+
declare 'bundle exec appraisal contrib rake spec:shoryuken'
|
361
|
+
declare 'bundle exec appraisal contrib rake spec:sidekiq'
|
362
|
+
declare 'bundle exec appraisal contrib rake spec:sinatra'
|
363
|
+
declare 'bundle exec appraisal contrib rake spec:sneakers'
|
364
|
+
declare 'bundle exec appraisal contrib rake spec:sucker_punch'
|
365
|
+
declare 'bundle exec appraisal contrib rake spec:suite'
|
358
366
|
# Rails minitests
|
359
|
-
|
360
|
-
|
361
|
-
|
362
|
-
|
363
|
-
|
364
|
-
|
365
|
-
|
366
|
-
|
367
|
-
|
368
|
-
|
369
|
-
|
370
|
-
|
371
|
-
|
372
|
-
|
373
|
-
|
374
|
-
|
375
|
-
|
367
|
+
declare 'bundle exec appraisal rails30-postgres rake test:rails'
|
368
|
+
declare 'bundle exec appraisal rails30-postgres rake spec:railsdisableenv'
|
369
|
+
declare 'bundle exec appraisal rails32-mysql2 rake test:rails'
|
370
|
+
declare 'bundle exec appraisal rails32-postgres rake test:rails'
|
371
|
+
declare 'bundle exec appraisal rails32-postgres-redis rake spec:railsredis'
|
372
|
+
declare 'bundle exec appraisal rails32-postgres rake spec:railsdisableenv'
|
373
|
+
declare 'bundle exec appraisal rails4-mysql2 rake test:rails'
|
374
|
+
declare 'bundle exec appraisal rails4-postgres rake test:rails'
|
375
|
+
declare 'bundle exec appraisal rails4-postgres-redis rake spec:railsredis'
|
376
|
+
declare 'bundle exec appraisal rails4-postgres rake spec:railsdisableenv'
|
377
|
+
declare 'bundle exec appraisal rails4-postgres-sidekiq rake spec:railsactivejob'
|
378
|
+
declare 'bundle exec appraisal rails5-mysql2 rake test:rails'
|
379
|
+
declare 'bundle exec appraisal rails5-postgres rake test:rails'
|
380
|
+
declare 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
|
381
|
+
declare 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
|
382
|
+
declare 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
|
383
|
+
declare 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
|
376
384
|
# Rails specs
|
377
|
-
|
378
|
-
|
379
|
-
|
380
|
-
|
381
|
-
|
382
|
-
|
383
|
-
|
385
|
+
declare 'bundle exec appraisal rails30-postgres rake spec:rails'
|
386
|
+
declare 'bundle exec appraisal rails32-mysql2 rake spec:rails'
|
387
|
+
declare 'bundle exec appraisal rails32-postgres rake spec:rails'
|
388
|
+
declare 'bundle exec appraisal rails4-mysql2 rake spec:rails'
|
389
|
+
declare 'bundle exec appraisal rails4-postgres rake spec:rails'
|
390
|
+
declare 'bundle exec appraisal rails5-mysql2 rake spec:rails'
|
391
|
+
declare 'bundle exec appraisal rails5-postgres rake spec:rails'
|
384
392
|
end
|
385
393
|
elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
|
386
394
|
&& Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.4.0')
|
387
395
|
# Main library
|
388
|
-
|
389
|
-
|
390
|
-
|
391
|
-
|
392
|
-
# Benchmarks
|
393
|
-
sh 'bundle exec rake spec:benchmark'
|
396
|
+
declare 'bundle exec rake test:main'
|
397
|
+
declare 'bundle exec rake spec:main'
|
398
|
+
declare 'bundle exec rake spec:contrib'
|
399
|
+
declare 'bundle exec rake spec:opentracer'
|
394
400
|
|
395
401
|
if RUBY_PLATFORM != 'java'
|
396
402
|
# Contrib minitests
|
397
|
-
sh 'bundle exec appraisal contrib rake test:grape'
|
398
|
-
sh 'bundle exec appraisal contrib rake test:sidekiq'
|
399
|
-
sh 'bundle exec appraisal contrib rake test:sucker_punch'
|
400
403
|
# Contrib specs
|
401
|
-
|
402
|
-
|
403
|
-
|
404
|
-
|
405
|
-
|
406
|
-
|
407
|
-
|
408
|
-
|
409
|
-
|
410
|
-
|
411
|
-
|
412
|
-
|
413
|
-
|
414
|
-
|
415
|
-
|
416
|
-
|
417
|
-
|
418
|
-
|
419
|
-
|
420
|
-
|
421
|
-
|
422
|
-
|
423
|
-
|
424
|
-
|
425
|
-
|
426
|
-
|
427
|
-
|
428
|
-
|
429
|
-
|
430
|
-
|
431
|
-
|
432
|
-
|
404
|
+
declare 'bundle exec appraisal contrib rake spec:action_pack'
|
405
|
+
declare 'bundle exec appraisal contrib rake spec:action_view'
|
406
|
+
declare 'bundle exec appraisal contrib rake spec:active_model_serializers'
|
407
|
+
declare 'bundle exec appraisal contrib rake spec:active_record'
|
408
|
+
declare 'bundle exec appraisal contrib rake spec:active_support'
|
409
|
+
declare 'bundle exec appraisal contrib rake spec:aws'
|
410
|
+
declare 'bundle exec appraisal contrib rake spec:concurrent_ruby'
|
411
|
+
declare 'bundle exec appraisal contrib rake spec:dalli'
|
412
|
+
declare 'bundle exec appraisal contrib rake spec:delayed_job'
|
413
|
+
declare 'bundle exec appraisal contrib rake spec:elasticsearch'
|
414
|
+
declare 'bundle exec appraisal contrib rake spec:ethon'
|
415
|
+
declare 'bundle exec appraisal contrib rake spec:excon'
|
416
|
+
declare 'bundle exec appraisal contrib rake spec:faraday'
|
417
|
+
declare 'bundle exec appraisal contrib rake spec:grape'
|
418
|
+
declare 'bundle exec appraisal contrib rake spec:graphql'
|
419
|
+
declare 'bundle exec appraisal contrib rake spec:grpc'
|
420
|
+
declare 'bundle exec appraisal contrib rake spec:http'
|
421
|
+
declare 'bundle exec appraisal contrib rake spec:httprb'
|
422
|
+
declare 'bundle exec appraisal contrib rake spec:mongodb'
|
423
|
+
declare 'bundle exec appraisal contrib rake spec:mysql2'
|
424
|
+
declare 'bundle exec appraisal contrib rake spec:presto'
|
425
|
+
declare 'bundle exec appraisal contrib rake spec:que'
|
426
|
+
declare 'bundle exec appraisal contrib rake spec:racecar'
|
427
|
+
declare 'bundle exec appraisal contrib rake spec:rack'
|
428
|
+
declare 'bundle exec appraisal contrib rake spec:rake'
|
429
|
+
declare 'bundle exec appraisal contrib rake spec:redis'
|
430
|
+
declare 'bundle exec appraisal contrib rake spec:resque'
|
431
|
+
declare 'bundle exec appraisal contrib rake spec:rest_client'
|
432
|
+
declare 'bundle exec appraisal contrib rake spec:sequel'
|
433
|
+
declare 'bundle exec appraisal contrib rake spec:shoryuken'
|
434
|
+
declare 'bundle exec appraisal contrib rake spec:sidekiq'
|
435
|
+
declare 'bundle exec appraisal contrib rake spec:sinatra'
|
436
|
+
declare 'bundle exec appraisal contrib rake spec:sneakers'
|
437
|
+
declare 'bundle exec appraisal contrib rake spec:sucker_punch'
|
438
|
+
declare 'bundle exec appraisal contrib rake spec:suite'
|
433
439
|
# Contrib specs with old gem versions
|
434
|
-
|
440
|
+
declare 'bundle exec appraisal contrib-old rake spec:faraday'
|
435
441
|
# Rails minitests
|
436
|
-
|
437
|
-
|
438
|
-
|
439
|
-
|
440
|
-
|
441
|
-
|
442
|
-
|
443
|
-
|
444
|
-
|
445
|
-
|
446
|
-
|
447
|
-
|
448
|
-
|
449
|
-
|
450
|
-
|
451
|
-
|
452
|
-
|
442
|
+
declare 'bundle exec appraisal rails30-postgres rake test:rails'
|
443
|
+
declare 'bundle exec appraisal rails30-postgres rake spec:railsdisableenv'
|
444
|
+
declare 'bundle exec appraisal rails32-mysql2 rake test:rails'
|
445
|
+
declare 'bundle exec appraisal rails32-postgres rake test:rails'
|
446
|
+
declare 'bundle exec appraisal rails32-postgres-redis rake spec:railsredis'
|
447
|
+
declare 'bundle exec appraisal rails32-postgres rake spec:railsdisableenv'
|
448
|
+
declare 'bundle exec appraisal rails4-mysql2 rake test:rails'
|
449
|
+
declare 'bundle exec appraisal rails4-postgres rake test:rails'
|
450
|
+
declare 'bundle exec appraisal rails4-postgres-redis rake spec:railsredis'
|
451
|
+
declare 'bundle exec appraisal rails4-postgres rake spec:railsdisableenv'
|
452
|
+
declare 'bundle exec appraisal rails4-postgres-sidekiq rake spec:railsactivejob'
|
453
|
+
declare 'bundle exec appraisal rails5-mysql2 rake test:rails'
|
454
|
+
declare 'bundle exec appraisal rails5-postgres rake test:rails'
|
455
|
+
declare 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
|
456
|
+
declare 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
|
457
|
+
declare 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
|
458
|
+
declare 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
|
453
459
|
# Rails specs
|
454
|
-
|
455
|
-
|
456
|
-
|
457
|
-
|
458
|
-
|
459
|
-
|
460
|
-
|
460
|
+
declare 'bundle exec appraisal rails30-postgres rake spec:rails'
|
461
|
+
declare 'bundle exec appraisal rails32-mysql2 rake spec:rails'
|
462
|
+
declare 'bundle exec appraisal rails32-postgres rake spec:rails'
|
463
|
+
declare 'bundle exec appraisal rails4-mysql2 rake spec:rails'
|
464
|
+
declare 'bundle exec appraisal rails4-postgres rake spec:rails'
|
465
|
+
declare 'bundle exec appraisal rails5-mysql2 rake spec:rails'
|
466
|
+
declare 'bundle exec appraisal rails5-postgres rake spec:rails'
|
467
|
+
|
468
|
+
# explicitly test resque-2x compatability
|
469
|
+
declare 'bundle exec appraisal resque2-redis3 rake spec:resque'
|
470
|
+
declare 'bundle exec appraisal resque2-redis4 rake spec:resque'
|
461
471
|
end
|
462
472
|
elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
|
463
473
|
&& Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.5.0')
|
464
474
|
# Main library
|
465
|
-
|
466
|
-
|
467
|
-
|
468
|
-
|
469
|
-
|
470
|
-
# Benchmarks
|
471
|
-
sh 'bundle exec rake spec:benchmark'
|
475
|
+
declare 'bundle exec rake test:main'
|
476
|
+
declare 'bundle exec rake spec:main'
|
477
|
+
declare 'bundle exec rake spec:contrib'
|
478
|
+
declare 'bundle exec rake spec:opentracer'
|
479
|
+
declare 'bundle exec rake spec:opentelemetry'
|
472
480
|
|
473
481
|
if RUBY_PLATFORM != 'java'
|
474
|
-
# Benchmarks
|
475
|
-
sh 'bundle exec rake benchmark'
|
476
482
|
# Contrib minitests
|
477
|
-
sh 'bundle exec appraisal contrib rake test:grape'
|
478
|
-
sh 'bundle exec appraisal contrib rake test:sidekiq'
|
479
|
-
sh 'bundle exec appraisal contrib rake test:sucker_punch'
|
480
483
|
# Contrib specs
|
481
|
-
|
482
|
-
|
483
|
-
|
484
|
-
|
485
|
-
|
486
|
-
|
487
|
-
|
488
|
-
|
489
|
-
|
490
|
-
|
491
|
-
|
492
|
-
|
493
|
-
|
494
|
-
|
495
|
-
|
496
|
-
|
497
|
-
|
498
|
-
|
499
|
-
|
500
|
-
|
501
|
-
|
502
|
-
|
503
|
-
|
504
|
-
|
505
|
-
|
506
|
-
|
507
|
-
|
508
|
-
|
509
|
-
|
510
|
-
|
511
|
-
|
512
|
-
|
484
|
+
declare 'bundle exec appraisal contrib rake spec:action_pack'
|
485
|
+
declare 'bundle exec appraisal contrib rake spec:action_view'
|
486
|
+
declare 'bundle exec appraisal contrib rake spec:active_model_serializers'
|
487
|
+
declare 'bundle exec appraisal contrib rake spec:active_record'
|
488
|
+
declare 'bundle exec appraisal contrib rake spec:active_support'
|
489
|
+
declare 'bundle exec appraisal contrib rake spec:aws'
|
490
|
+
declare 'bundle exec appraisal contrib rake spec:concurrent_ruby'
|
491
|
+
declare 'bundle exec appraisal contrib rake spec:dalli'
|
492
|
+
declare 'bundle exec appraisal contrib rake spec:delayed_job'
|
493
|
+
declare 'bundle exec appraisal contrib rake spec:elasticsearch'
|
494
|
+
declare 'bundle exec appraisal contrib rake spec:ethon'
|
495
|
+
declare 'bundle exec appraisal contrib rake spec:excon'
|
496
|
+
declare 'bundle exec appraisal contrib rake spec:faraday'
|
497
|
+
declare 'bundle exec appraisal contrib rake spec:grape'
|
498
|
+
declare 'bundle exec appraisal contrib rake spec:graphql'
|
499
|
+
declare 'bundle exec appraisal contrib rake spec:grpc'
|
500
|
+
declare 'bundle exec appraisal contrib rake spec:http'
|
501
|
+
declare 'bundle exec appraisal contrib rake spec:httprb'
|
502
|
+
declare 'bundle exec appraisal contrib rake spec:mongodb'
|
503
|
+
declare 'bundle exec appraisal contrib rake spec:mysql2'
|
504
|
+
declare 'bundle exec appraisal contrib rake spec:presto'
|
505
|
+
declare 'bundle exec appraisal contrib rake spec:que'
|
506
|
+
declare 'bundle exec appraisal contrib rake spec:racecar'
|
507
|
+
declare 'bundle exec appraisal contrib rake spec:rack'
|
508
|
+
declare 'bundle exec appraisal contrib rake spec:rake'
|
509
|
+
declare 'bundle exec appraisal contrib rake spec:redis'
|
510
|
+
declare 'bundle exec appraisal contrib rake spec:resque'
|
511
|
+
declare 'bundle exec appraisal contrib rake spec:rest_client'
|
512
|
+
declare 'bundle exec appraisal contrib rake spec:sequel'
|
513
|
+
declare 'bundle exec appraisal contrib rake spec:shoryuken'
|
514
|
+
declare 'bundle exec appraisal contrib rake spec:sidekiq'
|
515
|
+
declare 'bundle exec appraisal contrib rake spec:sinatra'
|
516
|
+
declare 'bundle exec appraisal contrib rake spec:sneakers'
|
517
|
+
declare 'bundle exec appraisal contrib rake spec:sucker_punch'
|
518
|
+
declare 'bundle exec appraisal contrib rake spec:suite'
|
513
519
|
# Contrib specs with old gem versions
|
514
|
-
|
520
|
+
declare 'bundle exec appraisal contrib-old rake spec:faraday'
|
515
521
|
# Rails minitests
|
516
522
|
# We only test Rails 5+ because older versions require Bundler < 2.0
|
517
|
-
|
518
|
-
|
519
|
-
|
520
|
-
|
521
|
-
|
522
|
-
|
523
|
+
declare 'bundle exec appraisal rails5-mysql2 rake test:rails'
|
524
|
+
declare 'bundle exec appraisal rails5-postgres rake test:rails'
|
525
|
+
declare 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
|
526
|
+
declare 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
|
527
|
+
declare 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
|
528
|
+
declare 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
|
523
529
|
# Rails specs
|
524
|
-
|
525
|
-
|
530
|
+
declare 'bundle exec appraisal rails5-mysql2 rake spec:rails'
|
531
|
+
declare 'bundle exec appraisal rails5-postgres rake spec:rails'
|
532
|
+
|
533
|
+
# explicitly test resque-2x compatability
|
534
|
+
declare 'bundle exec appraisal resque2-redis3 rake spec:resque'
|
535
|
+
declare 'bundle exec appraisal resque2-redis4 rake spec:resque'
|
526
536
|
end
|
527
537
|
elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
|
528
538
|
&& Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.6.0')
|
529
539
|
# Main library
|
530
|
-
|
531
|
-
|
532
|
-
|
533
|
-
|
534
|
-
|
535
|
-
#
|
536
|
-
|
537
|
-
|
538
|
-
|
539
|
-
|
540
|
-
|
541
|
-
|
542
|
-
|
543
|
-
|
544
|
-
|
545
|
-
|
546
|
-
|
547
|
-
|
548
|
-
|
549
|
-
|
550
|
-
|
551
|
-
|
552
|
-
|
553
|
-
|
554
|
-
|
555
|
-
|
556
|
-
|
557
|
-
|
558
|
-
|
559
|
-
|
560
|
-
|
561
|
-
|
562
|
-
|
563
|
-
|
564
|
-
|
565
|
-
|
566
|
-
|
567
|
-
|
568
|
-
|
569
|
-
|
570
|
-
|
571
|
-
|
572
|
-
|
573
|
-
|
574
|
-
|
575
|
-
|
576
|
-
|
577
|
-
|
578
|
-
|
579
|
-
|
580
|
-
|
581
|
-
|
582
|
-
|
583
|
-
|
584
|
-
|
585
|
-
|
586
|
-
|
587
|
-
|
588
|
-
|
589
|
-
|
590
|
-
|
591
|
-
|
592
|
-
|
593
|
-
|
594
|
-
|
595
|
-
|
596
|
-
|
597
|
-
|
598
|
-
|
599
|
-
sh 'bundle exec appraisal rails6-mysql2 rake spec:rails'
|
600
|
-
sh 'bundle exec appraisal rails6-postgres rake spec:rails'
|
601
|
-
end
|
540
|
+
declare 'bundle exec rake test:main'
|
541
|
+
declare 'bundle exec rake spec:main'
|
542
|
+
declare 'bundle exec rake spec:contrib'
|
543
|
+
declare 'bundle exec rake spec:opentracer'
|
544
|
+
declare 'bundle exec rake spec:opentelemetry'
|
545
|
+
# Contrib minitests
|
546
|
+
# Contrib specs
|
547
|
+
declare 'bundle exec appraisal contrib rake spec:action_pack'
|
548
|
+
declare 'bundle exec appraisal contrib rake spec:action_view'
|
549
|
+
declare 'bundle exec appraisal contrib rake spec:active_model_serializers'
|
550
|
+
declare 'bundle exec appraisal contrib rake spec:active_record'
|
551
|
+
declare 'bundle exec appraisal contrib rake spec:active_support'
|
552
|
+
declare 'bundle exec appraisal contrib rake spec:aws'
|
553
|
+
declare 'bundle exec appraisal contrib rake spec:concurrent_ruby'
|
554
|
+
declare 'bundle exec appraisal contrib rake spec:dalli'
|
555
|
+
declare 'bundle exec appraisal contrib rake spec:delayed_job'
|
556
|
+
declare 'bundle exec appraisal contrib rake spec:elasticsearch'
|
557
|
+
declare 'bundle exec appraisal contrib rake spec:ethon'
|
558
|
+
declare 'bundle exec appraisal contrib rake spec:excon'
|
559
|
+
declare 'bundle exec appraisal contrib rake spec:faraday'
|
560
|
+
declare 'bundle exec appraisal contrib rake spec:grape'
|
561
|
+
declare 'bundle exec appraisal contrib rake spec:graphql'
|
562
|
+
declare 'bundle exec appraisal contrib rake spec:grpc' if RUBY_PLATFORM != 'java' # protobuf not supported
|
563
|
+
declare 'bundle exec appraisal contrib rake spec:http'
|
564
|
+
declare 'bundle exec appraisal contrib rake spec:httprb'
|
565
|
+
declare 'bundle exec appraisal contrib rake spec:mongodb'
|
566
|
+
declare 'bundle exec appraisal contrib rake spec:mysql2' if RUBY_PLATFORM != 'java' # built-in jdbc is used instead
|
567
|
+
declare 'bundle exec appraisal contrib rake spec:presto'
|
568
|
+
declare 'bundle exec appraisal contrib rake spec:que'
|
569
|
+
declare 'bundle exec appraisal contrib rake spec:racecar'
|
570
|
+
declare 'bundle exec appraisal contrib rake spec:rack'
|
571
|
+
declare 'bundle exec appraisal contrib rake spec:rake'
|
572
|
+
declare 'bundle exec appraisal contrib rake spec:redis'
|
573
|
+
declare 'bundle exec appraisal contrib rake spec:resque'
|
574
|
+
declare 'bundle exec appraisal contrib rake spec:rest_client'
|
575
|
+
declare 'bundle exec appraisal contrib rake spec:sequel'
|
576
|
+
declare 'bundle exec appraisal contrib rake spec:shoryuken'
|
577
|
+
declare 'bundle exec appraisal contrib rake spec:sidekiq'
|
578
|
+
declare 'bundle exec appraisal contrib rake spec:sinatra'
|
579
|
+
declare 'bundle exec appraisal contrib rake spec:sneakers'
|
580
|
+
declare 'bundle exec appraisal contrib rake spec:sucker_punch'
|
581
|
+
declare 'bundle exec appraisal contrib rake spec:suite'
|
582
|
+
# Contrib specs with old gem versions
|
583
|
+
declare 'bundle exec appraisal contrib-old rake spec:faraday'
|
584
|
+
# Rails minitests
|
585
|
+
# We only test Rails 5+ because older versions require Bundler < 2.0
|
586
|
+
declare 'bundle exec appraisal rails5-mysql2 rake test:rails'
|
587
|
+
declare 'bundle exec appraisal rails5-postgres rake test:rails'
|
588
|
+
declare 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
|
589
|
+
declare 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
|
590
|
+
declare 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
|
591
|
+
declare 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
|
592
|
+
declare 'bundle exec appraisal rails6-mysql2 rake test:rails'
|
593
|
+
declare 'bundle exec appraisal rails6-postgres rake test:rails'
|
594
|
+
declare 'bundle exec appraisal rails6-postgres-redis rake spec:railsredis'
|
595
|
+
declare 'bundle exec appraisal rails6-postgres-redis-activesupport rake spec:railsredis'
|
596
|
+
declare 'bundle exec appraisal rails6-postgres-sidekiq rake spec:railsactivejob'
|
597
|
+
declare 'bundle exec appraisal rails6-postgres rake spec:railsdisableenv'
|
598
|
+
# Rails specs
|
599
|
+
declare 'bundle exec appraisal rails5-mysql2 rake spec:action_cable'
|
600
|
+
declare 'bundle exec appraisal rails5-mysql2 rake spec:rails'
|
601
|
+
declare 'bundle exec appraisal rails5-postgres rake spec:rails'
|
602
|
+
# declare 'bundle exec appraisal rails6-mysql2 rake spec:action_cable' # TODO: Hangs CI jobs... fix and re-enable.
|
603
|
+
declare 'bundle exec appraisal rails6-mysql2 rake spec:rails'
|
604
|
+
declare 'bundle exec appraisal rails6-postgres rake spec:rails'
|
605
|
+
|
606
|
+
# explicitly test resque-2x compatability
|
607
|
+
declare 'bundle exec appraisal resque2-redis3 rake spec:resque'
|
608
|
+
declare 'bundle exec appraisal resque2-redis4 rake spec:resque'
|
602
609
|
elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
|
603
610
|
&& Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.7.0')
|
604
611
|
# Main library
|
605
|
-
|
606
|
-
|
607
|
-
|
608
|
-
|
609
|
-
|
610
|
-
# Benchmarks
|
611
|
-
sh 'bundle exec rake spec:benchmark'
|
612
|
+
declare 'bundle exec rake test:main'
|
613
|
+
declare 'bundle exec rake spec:main'
|
614
|
+
declare 'bundle exec rake spec:contrib'
|
615
|
+
declare 'bundle exec rake spec:opentracer'
|
616
|
+
declare 'bundle exec rake spec:opentelemetry'
|
612
617
|
|
613
618
|
if RUBY_PLATFORM != 'java'
|
614
|
-
# Benchmarks
|
615
|
-
sh 'bundle exec rake benchmark'
|
616
619
|
# Contrib minitests
|
617
|
-
sh 'bundle exec appraisal contrib rake test:grape'
|
618
|
-
sh 'bundle exec appraisal contrib rake test:sidekiq'
|
619
|
-
sh 'bundle exec appraisal contrib rake test:sucker_punch'
|
620
620
|
# Contrib specs
|
621
|
-
|
622
|
-
|
623
|
-
|
624
|
-
|
625
|
-
|
626
|
-
|
627
|
-
|
628
|
-
|
629
|
-
|
630
|
-
|
631
|
-
|
632
|
-
|
633
|
-
|
634
|
-
|
635
|
-
|
636
|
-
|
637
|
-
|
638
|
-
|
639
|
-
|
640
|
-
|
641
|
-
|
642
|
-
|
643
|
-
|
644
|
-
|
645
|
-
|
646
|
-
|
647
|
-
|
648
|
-
|
649
|
-
|
650
|
-
|
651
|
-
|
652
|
-
|
621
|
+
declare 'bundle exec appraisal contrib rake spec:action_pack'
|
622
|
+
declare 'bundle exec appraisal contrib rake spec:action_view'
|
623
|
+
declare 'bundle exec appraisal contrib rake spec:active_model_serializers'
|
624
|
+
declare 'bundle exec appraisal contrib rake spec:active_record'
|
625
|
+
declare 'bundle exec appraisal contrib rake spec:active_support'
|
626
|
+
declare 'bundle exec appraisal contrib rake spec:aws'
|
627
|
+
declare 'bundle exec appraisal contrib rake spec:concurrent_ruby'
|
628
|
+
declare 'bundle exec appraisal contrib rake spec:dalli'
|
629
|
+
declare 'bundle exec appraisal contrib rake spec:delayed_job'
|
630
|
+
declare 'bundle exec appraisal contrib rake spec:elasticsearch'
|
631
|
+
declare 'bundle exec appraisal contrib rake spec:ethon'
|
632
|
+
declare 'bundle exec appraisal contrib rake spec:excon'
|
633
|
+
declare 'bundle exec appraisal contrib rake spec:faraday'
|
634
|
+
declare 'bundle exec appraisal contrib rake spec:grape'
|
635
|
+
declare 'bundle exec appraisal contrib rake spec:graphql'
|
636
|
+
declare 'bundle exec appraisal contrib rake spec:grpc'
|
637
|
+
declare 'bundle exec appraisal contrib rake spec:http'
|
638
|
+
declare 'bundle exec appraisal contrib rake spec:httprb'
|
639
|
+
declare 'bundle exec appraisal contrib rake spec:mongodb'
|
640
|
+
declare 'bundle exec appraisal contrib rake spec:mysql2'
|
641
|
+
declare 'bundle exec appraisal contrib rake spec:presto'
|
642
|
+
declare 'bundle exec appraisal contrib rake spec:que'
|
643
|
+
declare 'bundle exec appraisal contrib rake spec:racecar'
|
644
|
+
declare 'bundle exec appraisal contrib rake spec:rack'
|
645
|
+
declare 'bundle exec appraisal contrib rake spec:rake'
|
646
|
+
declare 'bundle exec appraisal contrib rake spec:redis'
|
647
|
+
declare 'bundle exec appraisal contrib rake spec:resque'
|
648
|
+
declare 'bundle exec appraisal contrib rake spec:rest_client'
|
649
|
+
declare 'bundle exec appraisal contrib rake spec:sequel'
|
650
|
+
declare 'bundle exec appraisal contrib rake spec:shoryuken'
|
651
|
+
declare 'bundle exec appraisal contrib rake spec:sidekiq'
|
652
|
+
declare 'bundle exec appraisal contrib rake spec:sinatra'
|
653
|
+
declare 'bundle exec appraisal contrib rake spec:sneakers'
|
654
|
+
declare 'bundle exec appraisal contrib rake spec:sucker_punch'
|
655
|
+
declare 'bundle exec appraisal contrib rake spec:suite'
|
653
656
|
# Contrib specs with old gem versions
|
654
|
-
|
657
|
+
declare 'bundle exec appraisal contrib-old rake spec:faraday'
|
655
658
|
# Rails minitests
|
656
659
|
# We only test Rails 5+ because older versions require Bundler < 2.0
|
657
|
-
|
658
|
-
|
659
|
-
|
660
|
-
|
661
|
-
|
662
|
-
|
663
|
-
|
664
|
-
|
665
|
-
|
666
|
-
|
667
|
-
|
668
|
-
|
660
|
+
declare 'bundle exec appraisal rails5-mysql2 rake test:rails'
|
661
|
+
declare 'bundle exec appraisal rails5-postgres rake test:rails'
|
662
|
+
declare 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
|
663
|
+
declare 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
|
664
|
+
declare 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
|
665
|
+
declare 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
|
666
|
+
declare 'bundle exec appraisal rails6-mysql2 rake test:rails'
|
667
|
+
declare 'bundle exec appraisal rails6-postgres rake test:rails'
|
668
|
+
declare 'bundle exec appraisal rails6-postgres-redis rake spec:railsredis'
|
669
|
+
declare 'bundle exec appraisal rails6-postgres-redis-activesupport rake spec:railsredis'
|
670
|
+
declare 'bundle exec appraisal rails6-postgres-sidekiq rake spec:railsactivejob'
|
671
|
+
declare 'bundle exec appraisal rails6-postgres rake spec:railsdisableenv'
|
669
672
|
# Rails specs
|
670
|
-
|
671
|
-
|
672
|
-
|
673
|
-
#
|
674
|
-
|
675
|
-
|
673
|
+
declare 'bundle exec appraisal rails5-mysql2 rake spec:action_cable'
|
674
|
+
declare 'bundle exec appraisal rails5-mysql2 rake spec:rails'
|
675
|
+
declare 'bundle exec appraisal rails5-postgres rake spec:rails'
|
676
|
+
# declare 'bundle exec appraisal rails6-mysql2 rake spec:action_cable' # TODO: Hangs CI jobs... fix and re-enable.
|
677
|
+
declare 'bundle exec appraisal rails6-mysql2 rake spec:rails'
|
678
|
+
declare 'bundle exec appraisal rails6-postgres rake spec:rails'
|
679
|
+
|
680
|
+
# explicitly test resque-2x compatability
|
681
|
+
declare 'bundle exec appraisal resque2-redis3 rake spec:resque'
|
682
|
+
declare 'bundle exec appraisal resque2-redis4 rake spec:resque'
|
676
683
|
end
|
677
684
|
elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
|
678
685
|
# Main library
|
679
|
-
|
680
|
-
|
681
|
-
|
682
|
-
|
683
|
-
|
684
|
-
# Benchmarks
|
685
|
-
sh 'bundle exec rake spec:benchmark'
|
686
|
+
declare 'bundle exec rake test:main'
|
687
|
+
declare 'bundle exec rake spec:main'
|
688
|
+
declare 'bundle exec rake spec:contrib'
|
689
|
+
declare 'bundle exec rake spec:opentracer'
|
690
|
+
declare 'bundle exec rake spec:opentelemetry'
|
686
691
|
|
687
692
|
if RUBY_PLATFORM != 'java'
|
688
|
-
# Benchmarks
|
689
|
-
sh 'bundle exec rake benchmark'
|
690
693
|
# Contrib minitests
|
691
|
-
sh 'bundle exec appraisal contrib rake test:grape'
|
692
|
-
sh 'bundle exec appraisal contrib rake test:sidekiq'
|
693
|
-
sh 'bundle exec appraisal contrib rake test:sucker_punch'
|
694
694
|
# Contrib specs
|
695
|
-
|
696
|
-
|
697
|
-
|
698
|
-
|
699
|
-
|
700
|
-
|
701
|
-
|
702
|
-
|
703
|
-
|
704
|
-
|
705
|
-
|
706
|
-
|
707
|
-
|
708
|
-
|
709
|
-
|
710
|
-
|
711
|
-
|
712
|
-
|
713
|
-
|
714
|
-
|
715
|
-
|
716
|
-
|
717
|
-
|
718
|
-
|
719
|
-
|
720
|
-
|
721
|
-
|
722
|
-
|
723
|
-
|
724
|
-
|
725
|
-
|
726
|
-
|
695
|
+
declare 'bundle exec appraisal contrib rake spec:action_pack'
|
696
|
+
declare 'bundle exec appraisal contrib rake spec:action_view'
|
697
|
+
declare 'bundle exec appraisal contrib rake spec:active_model_serializers'
|
698
|
+
declare 'bundle exec appraisal contrib rake spec:active_record'
|
699
|
+
declare 'bundle exec appraisal contrib rake spec:active_support'
|
700
|
+
declare 'bundle exec appraisal contrib rake spec:aws'
|
701
|
+
declare 'bundle exec appraisal contrib rake spec:concurrent_ruby'
|
702
|
+
declare 'bundle exec appraisal contrib rake spec:dalli'
|
703
|
+
declare 'bundle exec appraisal contrib rake spec:delayed_job'
|
704
|
+
declare 'bundle exec appraisal contrib rake spec:elasticsearch'
|
705
|
+
declare 'bundle exec appraisal contrib rake spec:ethon'
|
706
|
+
declare 'bundle exec appraisal contrib rake spec:excon'
|
707
|
+
declare 'bundle exec appraisal contrib rake spec:faraday'
|
708
|
+
declare 'bundle exec appraisal contrib rake spec:grape'
|
709
|
+
declare 'bundle exec appraisal contrib rake spec:graphql'
|
710
|
+
declare 'bundle exec appraisal contrib rake spec:grpc'
|
711
|
+
declare 'bundle exec appraisal contrib rake spec:http'
|
712
|
+
declare 'bundle exec appraisal contrib rake spec:httprb'
|
713
|
+
declare 'bundle exec appraisal contrib rake spec:mongodb'
|
714
|
+
declare 'bundle exec appraisal contrib rake spec:mysql2'
|
715
|
+
declare 'bundle exec appraisal contrib rake spec:presto'
|
716
|
+
declare 'bundle exec appraisal contrib rake spec:que'
|
717
|
+
declare 'bundle exec appraisal contrib rake spec:racecar'
|
718
|
+
declare 'bundle exec appraisal contrib rake spec:rack'
|
719
|
+
declare 'bundle exec appraisal contrib rake spec:rake'
|
720
|
+
declare 'bundle exec appraisal contrib rake spec:redis'
|
721
|
+
declare 'bundle exec appraisal contrib rake spec:resque'
|
722
|
+
declare 'bundle exec appraisal contrib rake spec:rest_client'
|
723
|
+
declare 'bundle exec appraisal contrib rake spec:sequel'
|
724
|
+
declare 'bundle exec appraisal contrib rake spec:shoryuken'
|
725
|
+
declare 'bundle exec appraisal contrib rake spec:sidekiq'
|
726
|
+
declare 'bundle exec appraisal contrib rake spec:sinatra'
|
727
|
+
declare 'bundle exec appraisal contrib rake spec:sneakers'
|
728
|
+
declare 'bundle exec appraisal contrib rake spec:sucker_punch'
|
729
|
+
declare 'bundle exec appraisal contrib rake spec:suite'
|
727
730
|
# Contrib specs with old gem versions
|
728
|
-
|
731
|
+
declare 'bundle exec appraisal contrib-old rake spec:faraday'
|
729
732
|
# Rails minitests
|
730
733
|
# We only test Rails 5+ because older versions require Bundler < 2.0
|
731
|
-
|
732
|
-
|
733
|
-
|
734
|
-
|
735
|
-
|
736
|
-
|
737
|
-
|
738
|
-
|
739
|
-
|
740
|
-
|
741
|
-
|
742
|
-
|
734
|
+
declare 'bundle exec appraisal rails5-mysql2 rake test:rails'
|
735
|
+
declare 'bundle exec appraisal rails5-postgres rake test:rails'
|
736
|
+
declare 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
|
737
|
+
declare 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
|
738
|
+
declare 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
|
739
|
+
declare 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
|
740
|
+
declare 'bundle exec appraisal rails6-mysql2 rake test:rails'
|
741
|
+
declare 'bundle exec appraisal rails6-postgres rake test:rails'
|
742
|
+
declare 'bundle exec appraisal rails6-postgres-redis rake spec:railsredis'
|
743
|
+
declare 'bundle exec appraisal rails6-postgres-redis-activesupport rake spec:railsredis'
|
744
|
+
declare 'bundle exec appraisal rails6-postgres-sidekiq rake spec:railsactivejob'
|
745
|
+
declare 'bundle exec appraisal rails6-postgres rake spec:railsdisableenv'
|
743
746
|
# Rails specs
|
744
|
-
|
745
|
-
|
746
|
-
|
747
|
-
|
747
|
+
declare 'bundle exec appraisal rails5-mysql2 rake spec:rails'
|
748
|
+
declare 'bundle exec appraisal rails5-postgres rake spec:rails'
|
749
|
+
declare 'bundle exec appraisal rails6-mysql2 rake spec:rails'
|
750
|
+
declare 'bundle exec appraisal rails6-postgres rake spec:rails'
|
751
|
+
|
752
|
+
# explicitly test resque-2x compatability
|
753
|
+
declare 'bundle exec appraisal resque2-redis3 rake spec:resque'
|
754
|
+
declare 'bundle exec appraisal resque2-redis4 rake spec:resque'
|
755
|
+
end
|
756
|
+
end
|
757
|
+
end
|
758
|
+
|
759
|
+
namespace :coverage do
|
760
|
+
# Generates one global report for all tracer tests
|
761
|
+
task :report do
|
762
|
+
require 'simplecov'
|
763
|
+
|
764
|
+
resultset_files = Dir["#{ENV.fetch('COVERAGE_DIR', 'coverage')}/.resultset.json"] +
|
765
|
+
Dir["#{ENV.fetch('COVERAGE_DIR', 'coverage')}/versions/**/.resultset.json"]
|
766
|
+
|
767
|
+
SimpleCov.collate resultset_files do
|
768
|
+
coverage_dir "#{ENV.fetch('COVERAGE_DIR', 'coverage')}/report"
|
769
|
+
formatter SimpleCov::Formatter::HTMLFormatter
|
770
|
+
end
|
771
|
+
end
|
772
|
+
|
773
|
+
# Generates one report for each Ruby version
|
774
|
+
task :report_per_ruby_version do
|
775
|
+
require 'simplecov'
|
776
|
+
|
777
|
+
versions = Dir["#{ENV.fetch('COVERAGE_DIR', 'coverage')}/versions/*"].map { |f| File.basename(f) }
|
778
|
+
versions.map do |version|
|
779
|
+
puts "Generating report for: #{version}"
|
780
|
+
SimpleCov.collate Dir["#{ENV.fetch('COVERAGE_DIR', 'coverage')}/versions/#{version}/**/.resultset.json"] do
|
781
|
+
coverage_dir "#{ENV.fetch('COVERAGE_DIR', 'coverage')}/report/versions/#{version}"
|
782
|
+
formatter SimpleCov::Formatter::HTMLFormatter
|
783
|
+
end
|
748
784
|
end
|
749
785
|
end
|
750
786
|
end
|