ddtrace 0.36.0 → 0.41.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 +59 -1
- data/.gitignore +2 -0
- data/.gitlab-ci.yml +27 -0
- data/.simplecov +38 -0
- data/Appraisals +131 -6
- data/CHANGELOG.md +198 -1
- data/Rakefile +504 -467
- data/ddtrace.gemspec +7 -0
- data/docker-compose.yml +2 -2
- data/docs/DevelopmentGuide.md +16 -0
- data/docs/GettingStarted.md +192 -111
- data/lib/ddtrace.rb +4 -0
- data/lib/ddtrace/buffer.rb +154 -43
- 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/pin_setup.rb +3 -2
- data/lib/ddtrace/configuration/settings.rb +32 -4
- 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/cache/redis.rb +1 -1
- 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/event.rb +3 -1
- 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/context_composite_executor_service.rb +9 -3
- data/lib/ddtrace/contrib/concurrent_ruby/ext.rb +1 -0
- data/lib/ddtrace/contrib/configuration/settings.rb +19 -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/dalli/patcher.rb +1 -5
- data/lib/ddtrace/contrib/delayed_job/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/delayed_job/ext.rb +5 -2
- 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 +5 -2
- 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 +13 -5
- 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/grape/patcher.rb +1 -1
- data/lib/ddtrace/contrib/graphql/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/graphql/ext.rb +5 -2
- data/lib/ddtrace/contrib/graphql/patcher.rb +6 -3
- data/lib/ddtrace/contrib/grpc/configuration/settings.rb +7 -2
- data/lib/ddtrace/contrib/grpc/datadog_interceptor.rb +1 -1
- data/lib/ddtrace/contrib/grpc/datadog_interceptor/client.rb +5 -3
- data/lib/ddtrace/contrib/grpc/datadog_interceptor/server.rb +4 -0
- data/lib/ddtrace/contrib/grpc/ext.rb +5 -2
- data/lib/ddtrace/contrib/grpc/patcher.rb +1 -5
- 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 +16 -7
- 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/instrumentation.rb +1 -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 +5 -1
- data/lib/ddtrace/contrib/patcher.rb +14 -8
- 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 +10 -12
- data/lib/ddtrace/contrib/rails/ext.rb +6 -2
- data/lib/ddtrace/contrib/rails/framework.rb +14 -21
- 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 +15 -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/patcher.rb +1 -1
- 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/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 +4 -2
- 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/contrib/sucker_punch/patcher.rb +1 -1
- 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/pin.rb +25 -2
- data/lib/ddtrace/pipeline/span_filter.rb +15 -15
- data/lib/ddtrace/propagation/grpc_propagator.rb +2 -2
- 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 +18 -12
- 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 +138 -2
data/CHANGELOG.md
CHANGED
@@ -2,6 +2,198 @@
|
|
2
2
|
|
3
3
|
## [Unreleased]
|
4
4
|
|
5
|
+
## [0.41.0] - 2020-09-30
|
6
|
+
|
7
|
+
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.41.0
|
8
|
+
|
9
|
+
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.40.0...v0.41.0
|
10
|
+
|
11
|
+
### Added
|
12
|
+
|
13
|
+
- Improve duration counting using monotonic clock (#424, #1173) (@soulcutter)
|
14
|
+
|
15
|
+
### Changed
|
16
|
+
|
17
|
+
- Add peer.service tag to external services and skip tagging external services with language tag for runtime metrics (#934, #935, #1180)
|
18
|
+
- This helps support the way runtime metrics are associated with spans in the UI.
|
19
|
+
- Faster TraceBuffer for CRuby (#1172)
|
20
|
+
- Reduce memory usage during gem statup (#1090)
|
21
|
+
- Reduce memory usage of the HTTP transport (#1165)
|
22
|
+
|
23
|
+
### Fixed
|
24
|
+
|
25
|
+
- Improved prepared statement support for Sequel integrations (#1186)
|
26
|
+
- Fix Sequel instrumentation when executing literal strings (#1185) (@matchbookmac)
|
27
|
+
- Remove explicit `Logger` class verification (#1181) (@bartekbsh)
|
28
|
+
- This allows users to pass in a custom logger that does not inherit from `Logger` class.
|
29
|
+
- Correct tracer buffer metric counting (#1182)
|
30
|
+
- Fix Span#pretty_print for empty duration (#1183)
|
31
|
+
|
32
|
+
### Refactored
|
33
|
+
|
34
|
+
- Improvements to test suite & CI (#1179, #1184, #1177, #1178, #1176)
|
35
|
+
- Reduce generated Span ID range to fit in Fixnum (#1189)
|
36
|
+
|
37
|
+
## [0.40.0] - 2020-09-08
|
38
|
+
|
39
|
+
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.40.0
|
40
|
+
|
41
|
+
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.39.0...v0.40.0
|
42
|
+
|
43
|
+
### Added
|
44
|
+
|
45
|
+
- Rails `log_injection` option to auto enable log correlation (#1157)
|
46
|
+
- Que integration (#1141, #1146) (@hs-bguven)
|
47
|
+
- `Components#startup!` hook (#1151)
|
48
|
+
- Code coverage report (#1159)
|
49
|
+
- 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`.
|
50
|
+
|
51
|
+
### Changed
|
52
|
+
|
53
|
+
- Use a single top level span for Racecar consumers (#1150) (@dasch)
|
54
|
+
|
55
|
+
### Fixed
|
56
|
+
|
57
|
+
- Sinatra nested modular applications possibly leaking spans (#1035, #1145)
|
58
|
+
|
59
|
+
* **BREAKING** for nested modular Sinatra applications only:
|
60
|
+
```ruby
|
61
|
+
class Nested < Sinatra::Base
|
62
|
+
end
|
63
|
+
|
64
|
+
class TopLevel < Sinatra::Base
|
65
|
+
use Nested # Nesting happens here
|
66
|
+
end
|
67
|
+
```
|
68
|
+
* Non-breaking for classic applications nor modular non-nested applications.
|
69
|
+
|
70
|
+
Fixes issues introduced by #1015 (in 0.35.0), when we first introduced Sinatra support for modular applications.
|
71
|
+
|
72
|
+
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.
|
73
|
+
|
74
|
+
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.
|
75
|
+
|
76
|
+
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.
|
77
|
+
|
78
|
+
Please see #1145 for more information, and example screenshots on how traces for affected applications will look like.
|
79
|
+
|
80
|
+
- Rack/Rails span error propagation with `rescue_from` (#1155, #1162)
|
81
|
+
- Prevent logger recursion during startup (#1158)
|
82
|
+
- Race condition on new worker classes (#1154)
|
83
|
+
- These classes represent future work, and not being used at the moment.
|
84
|
+
|
85
|
+
### Refactored
|
86
|
+
|
87
|
+
- Run CI tests in parallel (#1156)
|
88
|
+
- Migrate minitest tests to RSpec (#1127, #1128, #1133, #1149, #1152, #1153)
|
89
|
+
- Improvements to test suite (#1134, #1148, #1163)
|
90
|
+
- Improvements to documentation (#1138)
|
91
|
+
|
92
|
+
### Removed
|
93
|
+
|
94
|
+
- **Ruby 1.9 support ended, as it transitions from Maintenance to End-Of-Life (#1137)**
|
95
|
+
- GitLab status check when not applicable (#1160)
|
96
|
+
- 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.
|
97
|
+
|
98
|
+
## [0.39.0] - 2020-08-05
|
99
|
+
|
100
|
+
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.39.0
|
101
|
+
|
102
|
+
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.38.0...v0.39.0
|
103
|
+
|
104
|
+
### Added
|
105
|
+
|
106
|
+
- JRuby 9.2 support (#1126)
|
107
|
+
- Sneakers integration (#1121) (@janz93)
|
108
|
+
|
109
|
+
### Changed
|
110
|
+
|
111
|
+
- Consistent environment variables across languages (#1115)
|
112
|
+
- Default logger level from WARN to INFO (#1120) (@gingerlime)
|
113
|
+
- This change also reduces the startup environment log message to INFO level (#1104)
|
114
|
+
|
115
|
+
### Fixed
|
116
|
+
|
117
|
+
- HTTP::StateError on error responses for http.rb (#1116, #1122) (@evan-waters)
|
118
|
+
- Startup log error when using the test adapter (#1125, #1131) (@benhutton)
|
119
|
+
- Warning message for Faraday < 1.0 (#1129) (@fledman, @tjwp)
|
120
|
+
- Propagate Rails error message to Rack span (#1124)
|
121
|
+
|
122
|
+
### Refactored
|
123
|
+
|
124
|
+
- Improved ActiveRecord documentation (#1119)
|
125
|
+
- Improvements to test suite (#1105, #1118)
|
126
|
+
|
127
|
+
## [0.38.0] - 2020-07-13
|
128
|
+
|
129
|
+
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.38.0
|
130
|
+
|
131
|
+
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.37.0...v0.38.0
|
132
|
+
|
133
|
+
### Added
|
134
|
+
|
135
|
+
- http.rb integration (#529, #853)
|
136
|
+
- Kafka integration (#1070) (@tjwp)
|
137
|
+
- Span#set_tags (#1081) (@DocX)
|
138
|
+
- retry_count tag for Sidekiq jobs (#1089) (@elyalvarado)
|
139
|
+
- Startup environment log (#1104, #1109)
|
140
|
+
- DD_SITE and DD_API_KEY configuration (#1107)
|
141
|
+
|
142
|
+
### Changed
|
143
|
+
|
144
|
+
- Auto instrument Faraday default connection (#1057)
|
145
|
+
- Sidekiq client middleware is now the same for client and server (#1099) (@drcapulet)
|
146
|
+
- Single pass SpanFilter (#1071) (@tjwp)
|
147
|
+
|
148
|
+
### Fixed
|
149
|
+
|
150
|
+
- Ensure fatal exceptions are propagated (#1100)
|
151
|
+
- Respect child_of: option in Tracer#trace (#1082) (@DocX)
|
152
|
+
- Improve Writer thread safety (#1091) (@fledman)
|
153
|
+
|
154
|
+
### Refactored
|
155
|
+
|
156
|
+
- Improvements to test suite (#1092, #1103)
|
157
|
+
|
158
|
+
## [0.37.0] - 2020-06-24
|
159
|
+
|
160
|
+
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.37.0
|
161
|
+
|
162
|
+
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.36.0...v0.37.0
|
163
|
+
|
164
|
+
### Refactored
|
165
|
+
|
166
|
+
- Documentation improvements regarding Datadog Agent defaults (#1074) (@cswatt)
|
167
|
+
- Improvements to test suite (#1043, #1051, #1062, #1075, #1076, #1086)
|
168
|
+
|
169
|
+
### Removed
|
170
|
+
|
171
|
+
- **DEPRECATION**: Deprecate Contrib::Configuration::Settings#tracer= (#1072, #1079)
|
172
|
+
- The `tracer:` option is no longer supported for integration configuration. A deprecation warning will be issued when this option is used.
|
173
|
+
- Tracer instances are dynamically created when `ddtrace` is reconfigured (through `Datadog.configure{}` calls).
|
174
|
+
|
175
|
+
A reference to a tracer instance cannot be stored as it will be replaced by a new instance during reconfiguration.
|
176
|
+
|
177
|
+
Retrieving the global tracer instance, by invoking `Datadog.tracer`, is the only safe mechanism to acquire the active tracer instance.
|
178
|
+
|
179
|
+
Allowing an integration to set its tracer instance is effectively preventing that integration from dynamically retrieving the current active tracer in the future, thus causing it to record spans in a stale tracer instance. Spans recorded in a stale tracer instance will look disconnected from their parent context.
|
180
|
+
|
181
|
+
- **BREAKING**: Remove Pin#tracer= and DeprecatedPin#tracer= (#1073)
|
182
|
+
- The `Pin` and `DeprecatedPin` are internal tools used to provide more granular configuration for integrations.
|
183
|
+
- The APIs being removed are not public nor have been externally documented. The `DeprecatedPin` specifically has been considered deprecated since 0.20.0.
|
184
|
+
- This removal is a continuation of #1079 above, thus carrying the same rationale.
|
185
|
+
|
186
|
+
### Migration
|
187
|
+
|
188
|
+
- Remove `tracer` argument provided to integrations (e.g. `c.use :rails, tracer: ...`).
|
189
|
+
- Remove `tracer` argument provided to `Pin` or `DeprecatedPin` initializers (e.g. `Pin.new(service, tracer: ...)`).
|
190
|
+
- If you require a custom tracer instance, use a global instance configuration:
|
191
|
+
```ruby
|
192
|
+
Datadog.configure do |c|
|
193
|
+
c.tracer.instance = custom_tracer
|
194
|
+
end
|
195
|
+
```
|
196
|
+
|
5
197
|
## [0.36.0] - 2020-05-27
|
6
198
|
|
7
199
|
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.36.0
|
@@ -1235,7 +1427,12 @@ Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.3.1
|
|
1235
1427
|
|
1236
1428
|
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
|
1237
1429
|
|
1238
|
-
[Unreleased]: https://github.com/DataDog/dd-trace-rb/compare/v0.
|
1430
|
+
[Unreleased]: https://github.com/DataDog/dd-trace-rb/compare/v0.41.0...master
|
1431
|
+
[0.41.0]: https://github.com/DataDog/dd-trace-rb/compare/v0.40.0...v0.41.0
|
1432
|
+
[0.40.0]: https://github.com/DataDog/dd-trace-rb/compare/v0.39.0...v0.40.0
|
1433
|
+
[0.39.0]: https://github.com/DataDog/dd-trace-rb/compare/v0.38.0...v0.39.0
|
1434
|
+
[0.38.0]: https://github.com/DataDog/dd-trace-rb/compare/v0.37.0...v0.38.0
|
1435
|
+
[0.37.0]: https://github.com/DataDog/dd-trace-rb/compare/v0.36.0...v0.37.0
|
1239
1436
|
[0.36.0]: https://github.com/DataDog/dd-trace-rb/compare/v0.35.2...v0.36.0
|
1240
1437
|
[0.35.2]: https://github.com/DataDog/dd-trace-rb/compare/v0.35.1...v0.35.2
|
1241
1438
|
[0.35.1]: https://github.com/DataDog/dd-trace-rb/compare/v0.35.0...v0.35.1
|
data/Rakefile
CHANGED
@@ -11,7 +11,7 @@ Dir.glob('tasks/*.rake').each { |r| import r }
|
|
11
11
|
desc 'Run RSpec'
|
12
12
|
# rubocop:disable Metrics/BlockLength
|
13
13
|
namespace :spec do
|
14
|
-
task all: [:main,
|
14
|
+
task all: [:main, :benchmark,
|
15
15
|
:rails, :railsredis, :railsactivejob,
|
16
16
|
:elasticsearch, :http, :redis, :sidekiq, :sinatra]
|
17
17
|
|
@@ -21,6 +21,11 @@ namespace :spec do
|
|
21
21
|
t.rspec_opts = args.to_a.join(' ')
|
22
22
|
end
|
23
23
|
|
24
|
+
RSpec::Core::RakeTask.new(:benchmark) do |t, args|
|
25
|
+
t.pattern = 'spec/ddtrace/benchmark/**/*_spec.rb'
|
26
|
+
t.rspec_opts = args.to_a.join(' ')
|
27
|
+
end
|
28
|
+
|
24
29
|
RSpec::Core::RakeTask.new(:opentracer) do |t, args|
|
25
30
|
t.pattern = 'spec/ddtrace/opentracer/**/*_spec.rb'
|
26
31
|
t.rspec_opts = args.to_a.join(' ')
|
@@ -90,9 +95,12 @@ namespace :spec do
|
|
90
95
|
:graphql,
|
91
96
|
:grpc,
|
92
97
|
:http,
|
98
|
+
:httprb,
|
99
|
+
:kafka,
|
93
100
|
:mongodb,
|
94
101
|
:mysql2,
|
95
102
|
:presto,
|
103
|
+
:que,
|
96
104
|
:racecar,
|
97
105
|
:rack,
|
98
106
|
:rake,
|
@@ -103,6 +111,7 @@ namespace :spec do
|
|
103
111
|
:shoryuken,
|
104
112
|
:sidekiq,
|
105
113
|
:sinatra,
|
114
|
+
:sneakers,
|
106
115
|
:sucker_punch,
|
107
116
|
:suite
|
108
117
|
].each do |contrib|
|
@@ -116,7 +125,7 @@ end
|
|
116
125
|
namespace :test do
|
117
126
|
task all: [:main,
|
118
127
|
:rails,
|
119
|
-
:
|
128
|
+
:monkey]
|
120
129
|
|
121
130
|
Rake::TestTask.new(:main) do |t|
|
122
131
|
t.libs << %w[test lib]
|
@@ -134,9 +143,6 @@ namespace :test do
|
|
134
143
|
end
|
135
144
|
|
136
145
|
[
|
137
|
-
:grape,
|
138
|
-
:sidekiq,
|
139
|
-
:sucker_punch
|
140
146
|
].each do |contrib|
|
141
147
|
Rake::TestTask.new(contrib) do |t|
|
142
148
|
t.libs << %w[test lib]
|
@@ -178,6 +184,21 @@ task :'release:docs' => :docs do
|
|
178
184
|
sh "aws s3 cp --recursive doc/ s3://#{S3_BUCKET}/#{S3_DIR}/docs/"
|
179
185
|
end
|
180
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
|
+
|
181
202
|
desc 'CI task; it runs all tests for current version of Ruby'
|
182
203
|
task :ci do
|
183
204
|
if Gem::Version.new(RUBY_VERSION) < Gem::Version.new(Datadog::VERSION::MINIMUM_RUBY_VERSION)
|
@@ -185,545 +206,561 @@ task :ci do
|
|
185
206
|
elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
|
186
207
|
&& Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.1.0')
|
187
208
|
# Main library
|
188
|
-
|
189
|
-
|
190
|
-
|
209
|
+
declare 'bundle exec rake test:main'
|
210
|
+
declare 'bundle exec rake spec:main'
|
211
|
+
declare 'bundle exec rake spec:contrib'
|
191
212
|
|
192
213
|
if RUBY_PLATFORM != 'java'
|
193
214
|
# Contrib minitests
|
194
|
-
|
195
|
-
sh 'bundle exec appraisal contrib-old rake test:sidekiq'
|
196
|
-
sh 'bundle exec appraisal contrib-old rake test:sucker_punch'
|
215
|
+
declare 'bundle exec appraisal contrib-old rake test:monkey'
|
197
216
|
# Contrib specs
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
|
202
|
-
|
203
|
-
|
204
|
-
|
205
|
-
|
206
|
-
|
207
|
-
|
208
|
-
|
209
|
-
|
210
|
-
|
211
|
-
|
212
|
-
|
213
|
-
|
214
|
-
|
215
|
-
|
216
|
-
|
217
|
-
|
218
|
-
|
219
|
-
|
220
|
-
|
221
|
-
|
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'
|
222
242
|
# Rails minitests
|
223
|
-
|
224
|
-
|
225
|
-
|
226
|
-
|
227
|
-
|
228
|
-
|
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'
|
229
249
|
# Rails specs
|
230
|
-
|
231
|
-
|
232
|
-
|
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'
|
233
253
|
# Rails suite specs
|
234
|
-
|
235
|
-
|
236
|
-
|
237
|
-
|
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'
|
238
258
|
end
|
239
259
|
elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
|
240
260
|
&& Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.2.0')
|
241
261
|
# Main library
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
|
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'
|
246
266
|
|
247
267
|
if RUBY_PLATFORM != 'java'
|
248
268
|
# Contrib minitests
|
249
|
-
|
250
|
-
sh 'bundle exec appraisal contrib-old rake test:sidekiq'
|
251
|
-
sh 'bundle exec appraisal contrib-old rake test:sucker_punch'
|
269
|
+
declare 'bundle exec appraisal contrib-old rake test:monkey'
|
252
270
|
# Contrib specs
|
253
|
-
|
254
|
-
|
255
|
-
|
256
|
-
|
257
|
-
|
258
|
-
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
|
267
|
-
|
268
|
-
|
269
|
-
|
270
|
-
|
271
|
-
|
272
|
-
|
273
|
-
|
274
|
-
|
275
|
-
|
276
|
-
|
277
|
-
|
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'
|
278
297
|
# Rails minitests
|
279
|
-
|
280
|
-
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
|
285
|
-
|
286
|
-
|
287
|
-
|
288
|
-
|
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'
|
289
308
|
# Rails specs
|
290
|
-
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
|
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'
|
295
314
|
# Rails suite specs
|
296
|
-
|
297
|
-
|
298
|
-
|
299
|
-
|
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'
|
300
319
|
end
|
301
320
|
elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION)\
|
302
321
|
&& Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.3.0')
|
303
322
|
# Main library
|
304
|
-
|
305
|
-
|
306
|
-
|
307
|
-
|
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'
|
308
327
|
|
309
328
|
if RUBY_PLATFORM != 'java'
|
310
329
|
# Contrib minitests
|
311
|
-
sh 'bundle exec appraisal contrib rake test:grape'
|
312
|
-
sh 'bundle exec appraisal contrib rake test:sidekiq'
|
313
|
-
sh 'bundle exec appraisal contrib rake test:sucker_punch'
|
314
330
|
# Contrib specs
|
315
|
-
|
316
|
-
|
317
|
-
|
318
|
-
|
319
|
-
|
320
|
-
|
321
|
-
|
322
|
-
|
323
|
-
|
324
|
-
|
325
|
-
|
326
|
-
|
327
|
-
|
328
|
-
|
329
|
-
|
330
|
-
|
331
|
-
|
332
|
-
|
333
|
-
|
334
|
-
|
335
|
-
|
336
|
-
|
337
|
-
|
338
|
-
|
339
|
-
|
340
|
-
|
341
|
-
|
342
|
-
|
343
|
-
|
344
|
-
|
345
|
-
|
346
|
-
|
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'
|
347
366
|
# Rails minitests
|
348
|
-
|
349
|
-
|
350
|
-
|
351
|
-
|
352
|
-
|
353
|
-
|
354
|
-
|
355
|
-
|
356
|
-
|
357
|
-
|
358
|
-
|
359
|
-
|
360
|
-
|
361
|
-
|
362
|
-
|
363
|
-
|
364
|
-
|
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'
|
365
384
|
# Rails specs
|
366
|
-
|
367
|
-
|
368
|
-
|
369
|
-
|
370
|
-
|
371
|
-
|
372
|
-
|
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'
|
373
392
|
end
|
374
393
|
elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
|
375
394
|
&& Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.4.0')
|
376
395
|
# Main library
|
377
|
-
|
378
|
-
|
379
|
-
|
380
|
-
|
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'
|
381
400
|
|
382
401
|
if RUBY_PLATFORM != 'java'
|
383
402
|
# Contrib minitests
|
384
|
-
sh 'bundle exec appraisal contrib rake test:grape'
|
385
|
-
sh 'bundle exec appraisal contrib rake test:sidekiq'
|
386
|
-
sh 'bundle exec appraisal contrib rake test:sucker_punch'
|
387
403
|
# Contrib specs
|
388
|
-
|
389
|
-
|
390
|
-
|
391
|
-
|
392
|
-
|
393
|
-
|
394
|
-
|
395
|
-
|
396
|
-
|
397
|
-
|
398
|
-
|
399
|
-
|
400
|
-
|
401
|
-
|
402
|
-
|
403
|
-
|
404
|
-
|
405
|
-
|
406
|
-
|
407
|
-
|
408
|
-
|
409
|
-
|
410
|
-
|
411
|
-
|
412
|
-
|
413
|
-
|
414
|
-
|
415
|
-
|
416
|
-
|
417
|
-
|
418
|
-
|
419
|
-
|
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'
|
420
439
|
# Contrib specs with old gem versions
|
421
|
-
|
440
|
+
declare 'bundle exec appraisal contrib-old rake spec:faraday'
|
422
441
|
# Rails minitests
|
423
|
-
|
424
|
-
|
425
|
-
|
426
|
-
|
427
|
-
|
428
|
-
|
429
|
-
|
430
|
-
|
431
|
-
|
432
|
-
|
433
|
-
|
434
|
-
|
435
|
-
|
436
|
-
|
437
|
-
|
438
|
-
|
439
|
-
|
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'
|
440
459
|
# Rails specs
|
441
|
-
|
442
|
-
|
443
|
-
|
444
|
-
|
445
|
-
|
446
|
-
|
447
|
-
|
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'
|
448
467
|
end
|
449
468
|
elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
|
450
469
|
&& Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.5.0')
|
451
470
|
# Main library
|
452
|
-
|
453
|
-
|
454
|
-
|
455
|
-
|
456
|
-
|
471
|
+
declare 'bundle exec rake test:main'
|
472
|
+
declare 'bundle exec rake spec:main'
|
473
|
+
declare 'bundle exec rake spec:contrib'
|
474
|
+
declare 'bundle exec rake spec:opentracer'
|
475
|
+
declare 'bundle exec rake spec:opentelemetry'
|
457
476
|
|
458
477
|
if RUBY_PLATFORM != 'java'
|
459
|
-
# Benchmarks
|
460
|
-
sh 'bundle exec rake benchmark'
|
461
478
|
# Contrib minitests
|
462
|
-
sh 'bundle exec appraisal contrib rake test:grape'
|
463
|
-
sh 'bundle exec appraisal contrib rake test:sidekiq'
|
464
|
-
sh 'bundle exec appraisal contrib rake test:sucker_punch'
|
465
479
|
# Contrib specs
|
466
|
-
|
467
|
-
|
468
|
-
|
469
|
-
|
470
|
-
|
471
|
-
|
472
|
-
|
473
|
-
|
474
|
-
|
475
|
-
|
476
|
-
|
477
|
-
|
478
|
-
|
479
|
-
|
480
|
-
|
481
|
-
|
482
|
-
|
483
|
-
|
484
|
-
|
485
|
-
|
486
|
-
|
487
|
-
|
488
|
-
|
489
|
-
|
490
|
-
|
491
|
-
|
492
|
-
|
493
|
-
|
494
|
-
|
495
|
-
|
496
|
-
|
497
|
-
|
480
|
+
declare 'bundle exec appraisal contrib rake spec:action_pack'
|
481
|
+
declare 'bundle exec appraisal contrib rake spec:action_view'
|
482
|
+
declare 'bundle exec appraisal contrib rake spec:active_model_serializers'
|
483
|
+
declare 'bundle exec appraisal contrib rake spec:active_record'
|
484
|
+
declare 'bundle exec appraisal contrib rake spec:active_support'
|
485
|
+
declare 'bundle exec appraisal contrib rake spec:aws'
|
486
|
+
declare 'bundle exec appraisal contrib rake spec:concurrent_ruby'
|
487
|
+
declare 'bundle exec appraisal contrib rake spec:dalli'
|
488
|
+
declare 'bundle exec appraisal contrib rake spec:delayed_job'
|
489
|
+
declare 'bundle exec appraisal contrib rake spec:elasticsearch'
|
490
|
+
declare 'bundle exec appraisal contrib rake spec:ethon'
|
491
|
+
declare 'bundle exec appraisal contrib rake spec:excon'
|
492
|
+
declare 'bundle exec appraisal contrib rake spec:faraday'
|
493
|
+
declare 'bundle exec appraisal contrib rake spec:grape'
|
494
|
+
declare 'bundle exec appraisal contrib rake spec:graphql'
|
495
|
+
declare 'bundle exec appraisal contrib rake spec:grpc'
|
496
|
+
declare 'bundle exec appraisal contrib rake spec:http'
|
497
|
+
declare 'bundle exec appraisal contrib rake spec:httprb'
|
498
|
+
declare 'bundle exec appraisal contrib rake spec:mongodb'
|
499
|
+
declare 'bundle exec appraisal contrib rake spec:mysql2'
|
500
|
+
declare 'bundle exec appraisal contrib rake spec:presto'
|
501
|
+
declare 'bundle exec appraisal contrib rake spec:que'
|
502
|
+
declare 'bundle exec appraisal contrib rake spec:racecar'
|
503
|
+
declare 'bundle exec appraisal contrib rake spec:rack'
|
504
|
+
declare 'bundle exec appraisal contrib rake spec:rake'
|
505
|
+
declare 'bundle exec appraisal contrib rake spec:redis'
|
506
|
+
declare 'bundle exec appraisal contrib rake spec:resque'
|
507
|
+
declare 'bundle exec appraisal contrib rake spec:rest_client'
|
508
|
+
declare 'bundle exec appraisal contrib rake spec:sequel'
|
509
|
+
declare 'bundle exec appraisal contrib rake spec:shoryuken'
|
510
|
+
declare 'bundle exec appraisal contrib rake spec:sidekiq'
|
511
|
+
declare 'bundle exec appraisal contrib rake spec:sinatra'
|
512
|
+
declare 'bundle exec appraisal contrib rake spec:sneakers'
|
513
|
+
declare 'bundle exec appraisal contrib rake spec:sucker_punch'
|
514
|
+
declare 'bundle exec appraisal contrib rake spec:suite'
|
498
515
|
# Contrib specs with old gem versions
|
499
|
-
|
516
|
+
declare 'bundle exec appraisal contrib-old rake spec:faraday'
|
500
517
|
# Rails minitests
|
501
518
|
# We only test Rails 5+ because older versions require Bundler < 2.0
|
502
|
-
|
503
|
-
|
504
|
-
|
505
|
-
|
506
|
-
|
507
|
-
|
519
|
+
declare 'bundle exec appraisal rails5-mysql2 rake test:rails'
|
520
|
+
declare 'bundle exec appraisal rails5-postgres rake test:rails'
|
521
|
+
declare 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
|
522
|
+
declare 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
|
523
|
+
declare 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
|
524
|
+
declare 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
|
508
525
|
# Rails specs
|
509
|
-
|
510
|
-
|
526
|
+
declare 'bundle exec appraisal rails5-mysql2 rake spec:rails'
|
527
|
+
declare 'bundle exec appraisal rails5-postgres rake spec:rails'
|
511
528
|
end
|
512
529
|
elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
|
513
530
|
&& Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.6.0')
|
514
531
|
# Main library
|
515
|
-
|
516
|
-
|
517
|
-
|
518
|
-
|
519
|
-
|
520
|
-
|
521
|
-
|
522
|
-
|
523
|
-
|
524
|
-
|
525
|
-
|
526
|
-
|
527
|
-
|
528
|
-
|
529
|
-
|
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
|
-
sh 'bundle exec appraisal rails5-postgres rake spec:rails'
|
581
|
-
# sh 'bundle exec appraisal rails6-mysql2 rake spec:action_cable' # TODO: Hangs CI jobs... fix and re-enable.
|
582
|
-
sh 'bundle exec appraisal rails6-mysql2 rake spec:rails'
|
583
|
-
sh 'bundle exec appraisal rails6-postgres rake spec:rails'
|
584
|
-
end
|
532
|
+
declare 'bundle exec rake test:main'
|
533
|
+
declare 'bundle exec rake spec:main'
|
534
|
+
declare 'bundle exec rake spec:contrib'
|
535
|
+
declare 'bundle exec rake spec:opentracer'
|
536
|
+
declare 'bundle exec rake spec:opentelemetry'
|
537
|
+
# Contrib minitests
|
538
|
+
# Contrib specs
|
539
|
+
declare 'bundle exec appraisal contrib rake spec:action_pack'
|
540
|
+
declare 'bundle exec appraisal contrib rake spec:action_view'
|
541
|
+
declare 'bundle exec appraisal contrib rake spec:active_model_serializers'
|
542
|
+
declare 'bundle exec appraisal contrib rake spec:active_record'
|
543
|
+
declare 'bundle exec appraisal contrib rake spec:active_support'
|
544
|
+
declare 'bundle exec appraisal contrib rake spec:aws'
|
545
|
+
declare 'bundle exec appraisal contrib rake spec:concurrent_ruby'
|
546
|
+
declare 'bundle exec appraisal contrib rake spec:dalli'
|
547
|
+
declare 'bundle exec appraisal contrib rake spec:delayed_job'
|
548
|
+
declare 'bundle exec appraisal contrib rake spec:elasticsearch'
|
549
|
+
declare 'bundle exec appraisal contrib rake spec:ethon'
|
550
|
+
declare 'bundle exec appraisal contrib rake spec:excon'
|
551
|
+
declare 'bundle exec appraisal contrib rake spec:faraday'
|
552
|
+
declare 'bundle exec appraisal contrib rake spec:grape'
|
553
|
+
declare 'bundle exec appraisal contrib rake spec:graphql'
|
554
|
+
declare 'bundle exec appraisal contrib rake spec:grpc' if RUBY_PLATFORM != 'java' # protobuf not supported
|
555
|
+
declare 'bundle exec appraisal contrib rake spec:http'
|
556
|
+
declare 'bundle exec appraisal contrib rake spec:httprb'
|
557
|
+
declare 'bundle exec appraisal contrib rake spec:mongodb'
|
558
|
+
declare 'bundle exec appraisal contrib rake spec:mysql2' if RUBY_PLATFORM != 'java' # built-in jdbc is used instead
|
559
|
+
declare 'bundle exec appraisal contrib rake spec:presto'
|
560
|
+
declare 'bundle exec appraisal contrib rake spec:que'
|
561
|
+
declare 'bundle exec appraisal contrib rake spec:racecar'
|
562
|
+
declare 'bundle exec appraisal contrib rake spec:rack'
|
563
|
+
declare 'bundle exec appraisal contrib rake spec:rake'
|
564
|
+
declare 'bundle exec appraisal contrib rake spec:redis'
|
565
|
+
declare 'bundle exec appraisal contrib rake spec:resque'
|
566
|
+
declare 'bundle exec appraisal contrib rake spec:rest_client'
|
567
|
+
declare 'bundle exec appraisal contrib rake spec:sequel'
|
568
|
+
declare 'bundle exec appraisal contrib rake spec:shoryuken'
|
569
|
+
declare 'bundle exec appraisal contrib rake spec:sidekiq'
|
570
|
+
declare 'bundle exec appraisal contrib rake spec:sinatra'
|
571
|
+
declare 'bundle exec appraisal contrib rake spec:sneakers'
|
572
|
+
declare 'bundle exec appraisal contrib rake spec:sucker_punch'
|
573
|
+
declare 'bundle exec appraisal contrib rake spec:suite'
|
574
|
+
# Contrib specs with old gem versions
|
575
|
+
declare 'bundle exec appraisal contrib-old rake spec:faraday'
|
576
|
+
# Rails minitests
|
577
|
+
# We only test Rails 5+ because older versions require Bundler < 2.0
|
578
|
+
declare 'bundle exec appraisal rails5-mysql2 rake test:rails'
|
579
|
+
declare 'bundle exec appraisal rails5-postgres rake test:rails'
|
580
|
+
declare 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
|
581
|
+
declare 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
|
582
|
+
declare 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
|
583
|
+
declare 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
|
584
|
+
declare 'bundle exec appraisal rails6-mysql2 rake test:rails'
|
585
|
+
declare 'bundle exec appraisal rails6-postgres rake test:rails'
|
586
|
+
declare 'bundle exec appraisal rails6-postgres-redis rake spec:railsredis'
|
587
|
+
declare 'bundle exec appraisal rails6-postgres-redis-activesupport rake spec:railsredis'
|
588
|
+
declare 'bundle exec appraisal rails6-postgres-sidekiq rake spec:railsactivejob'
|
589
|
+
declare 'bundle exec appraisal rails6-postgres rake spec:railsdisableenv'
|
590
|
+
# Rails specs
|
591
|
+
declare 'bundle exec appraisal rails5-mysql2 rake spec:action_cable'
|
592
|
+
declare 'bundle exec appraisal rails5-mysql2 rake spec:rails'
|
593
|
+
declare 'bundle exec appraisal rails5-postgres rake spec:rails'
|
594
|
+
# declare 'bundle exec appraisal rails6-mysql2 rake spec:action_cable' # TODO: Hangs CI jobs... fix and re-enable.
|
595
|
+
declare 'bundle exec appraisal rails6-mysql2 rake spec:rails'
|
596
|
+
declare 'bundle exec appraisal rails6-postgres rake spec:rails'
|
585
597
|
elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
|
586
598
|
&& Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.7.0')
|
587
599
|
# Main library
|
588
|
-
|
589
|
-
|
590
|
-
|
591
|
-
|
592
|
-
|
600
|
+
declare 'bundle exec rake test:main'
|
601
|
+
declare 'bundle exec rake spec:main'
|
602
|
+
declare 'bundle exec rake spec:contrib'
|
603
|
+
declare 'bundle exec rake spec:opentracer'
|
604
|
+
declare 'bundle exec rake spec:opentelemetry'
|
593
605
|
|
594
606
|
if RUBY_PLATFORM != 'java'
|
595
|
-
# Benchmarks
|
596
|
-
sh 'bundle exec rake benchmark'
|
597
607
|
# Contrib minitests
|
598
|
-
sh 'bundle exec appraisal contrib rake test:grape'
|
599
|
-
sh 'bundle exec appraisal contrib rake test:sidekiq'
|
600
|
-
sh 'bundle exec appraisal contrib rake test:sucker_punch'
|
601
608
|
# Contrib specs
|
602
|
-
|
603
|
-
|
604
|
-
|
605
|
-
|
606
|
-
|
607
|
-
|
608
|
-
|
609
|
-
|
610
|
-
|
611
|
-
|
612
|
-
|
613
|
-
|
614
|
-
|
615
|
-
|
616
|
-
|
617
|
-
|
618
|
-
|
619
|
-
|
620
|
-
|
621
|
-
|
622
|
-
|
623
|
-
|
624
|
-
|
625
|
-
|
626
|
-
|
627
|
-
|
628
|
-
|
629
|
-
|
630
|
-
|
631
|
-
|
632
|
-
|
633
|
-
|
609
|
+
declare 'bundle exec appraisal contrib rake spec:action_pack'
|
610
|
+
declare 'bundle exec appraisal contrib rake spec:action_view'
|
611
|
+
declare 'bundle exec appraisal contrib rake spec:active_model_serializers'
|
612
|
+
declare 'bundle exec appraisal contrib rake spec:active_record'
|
613
|
+
declare 'bundle exec appraisal contrib rake spec:active_support'
|
614
|
+
declare 'bundle exec appraisal contrib rake spec:aws'
|
615
|
+
declare 'bundle exec appraisal contrib rake spec:concurrent_ruby'
|
616
|
+
declare 'bundle exec appraisal contrib rake spec:dalli'
|
617
|
+
declare 'bundle exec appraisal contrib rake spec:delayed_job'
|
618
|
+
declare 'bundle exec appraisal contrib rake spec:elasticsearch'
|
619
|
+
declare 'bundle exec appraisal contrib rake spec:ethon'
|
620
|
+
declare 'bundle exec appraisal contrib rake spec:excon'
|
621
|
+
declare 'bundle exec appraisal contrib rake spec:faraday'
|
622
|
+
declare 'bundle exec appraisal contrib rake spec:grape'
|
623
|
+
declare 'bundle exec appraisal contrib rake spec:graphql'
|
624
|
+
declare 'bundle exec appraisal contrib rake spec:grpc'
|
625
|
+
declare 'bundle exec appraisal contrib rake spec:http'
|
626
|
+
declare 'bundle exec appraisal contrib rake spec:httprb'
|
627
|
+
declare 'bundle exec appraisal contrib rake spec:mongodb'
|
628
|
+
declare 'bundle exec appraisal contrib rake spec:mysql2'
|
629
|
+
declare 'bundle exec appraisal contrib rake spec:presto'
|
630
|
+
declare 'bundle exec appraisal contrib rake spec:que'
|
631
|
+
declare 'bundle exec appraisal contrib rake spec:racecar'
|
632
|
+
declare 'bundle exec appraisal contrib rake spec:rack'
|
633
|
+
declare 'bundle exec appraisal contrib rake spec:rake'
|
634
|
+
declare 'bundle exec appraisal contrib rake spec:redis'
|
635
|
+
declare 'bundle exec appraisal contrib rake spec:resque'
|
636
|
+
declare 'bundle exec appraisal contrib rake spec:rest_client'
|
637
|
+
declare 'bundle exec appraisal contrib rake spec:sequel'
|
638
|
+
declare 'bundle exec appraisal contrib rake spec:shoryuken'
|
639
|
+
declare 'bundle exec appraisal contrib rake spec:sidekiq'
|
640
|
+
declare 'bundle exec appraisal contrib rake spec:sinatra'
|
641
|
+
declare 'bundle exec appraisal contrib rake spec:sneakers'
|
642
|
+
declare 'bundle exec appraisal contrib rake spec:sucker_punch'
|
643
|
+
declare 'bundle exec appraisal contrib rake spec:suite'
|
634
644
|
# Contrib specs with old gem versions
|
635
|
-
|
645
|
+
declare 'bundle exec appraisal contrib-old rake spec:faraday'
|
636
646
|
# Rails minitests
|
637
647
|
# We only test Rails 5+ because older versions require Bundler < 2.0
|
638
|
-
|
639
|
-
|
640
|
-
|
641
|
-
|
642
|
-
|
643
|
-
|
644
|
-
|
645
|
-
|
646
|
-
|
647
|
-
|
648
|
-
|
649
|
-
|
648
|
+
declare 'bundle exec appraisal rails5-mysql2 rake test:rails'
|
649
|
+
declare 'bundle exec appraisal rails5-postgres rake test:rails'
|
650
|
+
declare 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
|
651
|
+
declare 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
|
652
|
+
declare 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
|
653
|
+
declare 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
|
654
|
+
declare 'bundle exec appraisal rails6-mysql2 rake test:rails'
|
655
|
+
declare 'bundle exec appraisal rails6-postgres rake test:rails'
|
656
|
+
declare 'bundle exec appraisal rails6-postgres-redis rake spec:railsredis'
|
657
|
+
declare 'bundle exec appraisal rails6-postgres-redis-activesupport rake spec:railsredis'
|
658
|
+
declare 'bundle exec appraisal rails6-postgres-sidekiq rake spec:railsactivejob'
|
659
|
+
declare 'bundle exec appraisal rails6-postgres rake spec:railsdisableenv'
|
650
660
|
# Rails specs
|
651
|
-
|
652
|
-
|
653
|
-
|
654
|
-
#
|
655
|
-
|
656
|
-
|
661
|
+
declare 'bundle exec appraisal rails5-mysql2 rake spec:action_cable'
|
662
|
+
declare 'bundle exec appraisal rails5-mysql2 rake spec:rails'
|
663
|
+
declare 'bundle exec appraisal rails5-postgres rake spec:rails'
|
664
|
+
# declare 'bundle exec appraisal rails6-mysql2 rake spec:action_cable' # TODO: Hangs CI jobs... fix and re-enable.
|
665
|
+
declare 'bundle exec appraisal rails6-mysql2 rake spec:rails'
|
666
|
+
declare 'bundle exec appraisal rails6-postgres rake spec:rails'
|
657
667
|
end
|
658
668
|
elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
|
659
669
|
# Main library
|
660
|
-
|
661
|
-
|
662
|
-
|
663
|
-
|
664
|
-
|
670
|
+
declare 'bundle exec rake test:main'
|
671
|
+
declare 'bundle exec rake spec:main'
|
672
|
+
declare 'bundle exec rake spec:contrib'
|
673
|
+
declare 'bundle exec rake spec:opentracer'
|
674
|
+
declare 'bundle exec rake spec:opentelemetry'
|
665
675
|
|
666
676
|
if RUBY_PLATFORM != 'java'
|
667
|
-
# Benchmarks
|
668
|
-
sh 'bundle exec rake benchmark'
|
669
677
|
# Contrib minitests
|
670
|
-
sh 'bundle exec appraisal contrib rake test:grape'
|
671
|
-
sh 'bundle exec appraisal contrib rake test:sidekiq'
|
672
|
-
sh 'bundle exec appraisal contrib rake test:sucker_punch'
|
673
678
|
# Contrib specs
|
674
|
-
|
675
|
-
|
676
|
-
|
677
|
-
|
678
|
-
|
679
|
-
|
680
|
-
|
681
|
-
|
682
|
-
|
683
|
-
|
684
|
-
|
685
|
-
|
686
|
-
|
687
|
-
|
688
|
-
|
689
|
-
|
690
|
-
|
691
|
-
|
692
|
-
|
693
|
-
|
694
|
-
|
695
|
-
|
696
|
-
|
697
|
-
|
698
|
-
|
699
|
-
|
700
|
-
|
701
|
-
|
702
|
-
|
703
|
-
|
704
|
-
|
705
|
-
|
679
|
+
declare 'bundle exec appraisal contrib rake spec:action_pack'
|
680
|
+
declare 'bundle exec appraisal contrib rake spec:action_view'
|
681
|
+
declare 'bundle exec appraisal contrib rake spec:active_model_serializers'
|
682
|
+
declare 'bundle exec appraisal contrib rake spec:active_record'
|
683
|
+
declare 'bundle exec appraisal contrib rake spec:active_support'
|
684
|
+
declare 'bundle exec appraisal contrib rake spec:aws'
|
685
|
+
declare 'bundle exec appraisal contrib rake spec:concurrent_ruby'
|
686
|
+
declare 'bundle exec appraisal contrib rake spec:dalli'
|
687
|
+
declare 'bundle exec appraisal contrib rake spec:delayed_job'
|
688
|
+
declare 'bundle exec appraisal contrib rake spec:elasticsearch'
|
689
|
+
declare 'bundle exec appraisal contrib rake spec:ethon'
|
690
|
+
declare 'bundle exec appraisal contrib rake spec:excon'
|
691
|
+
declare 'bundle exec appraisal contrib rake spec:faraday'
|
692
|
+
declare 'bundle exec appraisal contrib rake spec:grape'
|
693
|
+
declare 'bundle exec appraisal contrib rake spec:graphql'
|
694
|
+
declare 'bundle exec appraisal contrib rake spec:grpc'
|
695
|
+
declare 'bundle exec appraisal contrib rake spec:http'
|
696
|
+
declare 'bundle exec appraisal contrib rake spec:httprb'
|
697
|
+
declare 'bundle exec appraisal contrib rake spec:mongodb'
|
698
|
+
declare 'bundle exec appraisal contrib rake spec:mysql2'
|
699
|
+
declare 'bundle exec appraisal contrib rake spec:presto'
|
700
|
+
declare 'bundle exec appraisal contrib rake spec:que'
|
701
|
+
declare 'bundle exec appraisal contrib rake spec:racecar'
|
702
|
+
declare 'bundle exec appraisal contrib rake spec:rack'
|
703
|
+
declare 'bundle exec appraisal contrib rake spec:rake'
|
704
|
+
declare 'bundle exec appraisal contrib rake spec:redis'
|
705
|
+
declare 'bundle exec appraisal contrib rake spec:resque'
|
706
|
+
declare 'bundle exec appraisal contrib rake spec:rest_client'
|
707
|
+
declare 'bundle exec appraisal contrib rake spec:sequel'
|
708
|
+
declare 'bundle exec appraisal contrib rake spec:shoryuken'
|
709
|
+
declare 'bundle exec appraisal contrib rake spec:sidekiq'
|
710
|
+
declare 'bundle exec appraisal contrib rake spec:sinatra'
|
711
|
+
declare 'bundle exec appraisal contrib rake spec:sneakers'
|
712
|
+
declare 'bundle exec appraisal contrib rake spec:sucker_punch'
|
713
|
+
declare 'bundle exec appraisal contrib rake spec:suite'
|
706
714
|
# Contrib specs with old gem versions
|
707
|
-
|
715
|
+
declare 'bundle exec appraisal contrib-old rake spec:faraday'
|
708
716
|
# Rails minitests
|
709
717
|
# We only test Rails 5+ because older versions require Bundler < 2.0
|
710
|
-
|
711
|
-
|
712
|
-
|
713
|
-
|
714
|
-
|
715
|
-
|
716
|
-
|
717
|
-
|
718
|
-
|
719
|
-
|
720
|
-
|
721
|
-
|
718
|
+
declare 'bundle exec appraisal rails5-mysql2 rake test:rails'
|
719
|
+
declare 'bundle exec appraisal rails5-postgres rake test:rails'
|
720
|
+
declare 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
|
721
|
+
declare 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
|
722
|
+
declare 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
|
723
|
+
declare 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
|
724
|
+
declare 'bundle exec appraisal rails6-mysql2 rake test:rails'
|
725
|
+
declare 'bundle exec appraisal rails6-postgres rake test:rails'
|
726
|
+
declare 'bundle exec appraisal rails6-postgres-redis rake spec:railsredis'
|
727
|
+
declare 'bundle exec appraisal rails6-postgres-redis-activesupport rake spec:railsredis'
|
728
|
+
declare 'bundle exec appraisal rails6-postgres-sidekiq rake spec:railsactivejob'
|
729
|
+
declare 'bundle exec appraisal rails6-postgres rake spec:railsdisableenv'
|
722
730
|
# Rails specs
|
723
|
-
|
724
|
-
|
725
|
-
|
726
|
-
|
731
|
+
declare 'bundle exec appraisal rails5-mysql2 rake spec:rails'
|
732
|
+
declare 'bundle exec appraisal rails5-postgres rake spec:rails'
|
733
|
+
declare 'bundle exec appraisal rails6-mysql2 rake spec:rails'
|
734
|
+
declare 'bundle exec appraisal rails6-postgres rake spec:rails'
|
735
|
+
end
|
736
|
+
end
|
737
|
+
end
|
738
|
+
|
739
|
+
namespace :coverage do
|
740
|
+
# Generates one global report for all tracer tests
|
741
|
+
task :report do
|
742
|
+
require 'simplecov'
|
743
|
+
|
744
|
+
resultset_files = Dir["#{ENV.fetch('COVERAGE_DIR', 'coverage')}/.resultset.json"] +
|
745
|
+
Dir["#{ENV.fetch('COVERAGE_DIR', 'coverage')}/versions/**/.resultset.json"]
|
746
|
+
|
747
|
+
SimpleCov.collate resultset_files do
|
748
|
+
coverage_dir "#{ENV.fetch('COVERAGE_DIR', 'coverage')}/report"
|
749
|
+
formatter SimpleCov::Formatter::HTMLFormatter
|
750
|
+
end
|
751
|
+
end
|
752
|
+
|
753
|
+
# Generates one report for each Ruby version
|
754
|
+
task :report_per_ruby_version do
|
755
|
+
require 'simplecov'
|
756
|
+
|
757
|
+
versions = Dir["#{ENV.fetch('COVERAGE_DIR', 'coverage')}/versions/*"].map { |f| File.basename(f) }
|
758
|
+
versions.map do |version|
|
759
|
+
puts "Generating report for: #{version}"
|
760
|
+
SimpleCov.collate Dir["#{ENV.fetch('COVERAGE_DIR', 'coverage')}/versions/#{version}/**/.resultset.json"] do
|
761
|
+
coverage_dir "#{ENV.fetch('COVERAGE_DIR', 'coverage')}/report/versions/#{version}"
|
762
|
+
formatter SimpleCov::Formatter::HTMLFormatter
|
763
|
+
end
|
727
764
|
end
|
728
765
|
end
|
729
766
|
end
|