ddtrace 0.33.0 → 0.33.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +12 -1
  3. data/docs/GettingStarted.md +14 -14
  4. data/lib/ddtrace/contrib/action_cable/integration.rb +4 -2
  5. data/lib/ddtrace/contrib/action_pack/integration.rb +4 -2
  6. data/lib/ddtrace/contrib/action_view/integration.rb +4 -2
  7. data/lib/ddtrace/contrib/active_model_serializers/integration.rb +5 -2
  8. data/lib/ddtrace/contrib/active_record/integration.rb +4 -2
  9. data/lib/ddtrace/contrib/active_support/integration.rb +4 -2
  10. data/lib/ddtrace/contrib/aws/integration.rb +4 -2
  11. data/lib/ddtrace/contrib/concurrent_ruby/integration.rb +4 -2
  12. data/lib/ddtrace/contrib/dalli/integration.rb +4 -2
  13. data/lib/ddtrace/contrib/delayed_job/integration.rb +4 -2
  14. data/lib/ddtrace/contrib/elasticsearch/integration.rb +4 -2
  15. data/lib/ddtrace/contrib/ethon/integration.rb +5 -2
  16. data/lib/ddtrace/contrib/excon/integration.rb +4 -2
  17. data/lib/ddtrace/contrib/faraday/integration.rb +4 -2
  18. data/lib/ddtrace/contrib/grape/integration.rb +5 -2
  19. data/lib/ddtrace/contrib/graphql/integration.rb +5 -2
  20. data/lib/ddtrace/contrib/grpc/integration.rb +4 -2
  21. data/lib/ddtrace/contrib/http/integration.rb +5 -1
  22. data/lib/ddtrace/contrib/mongodb/integration.rb +4 -2
  23. data/lib/ddtrace/contrib/mysql2/integration.rb +4 -2
  24. data/lib/ddtrace/contrib/patchable.rb +1 -1
  25. data/lib/ddtrace/contrib/presto/integration.rb +4 -2
  26. data/lib/ddtrace/contrib/racecar/integration.rb +5 -2
  27. data/lib/ddtrace/contrib/rack/integration.rb +4 -2
  28. data/lib/ddtrace/contrib/rails/ext.rb +1 -0
  29. data/lib/ddtrace/contrib/rails/integration.rb +7 -3
  30. data/lib/ddtrace/contrib/rake/integration.rb +4 -2
  31. data/lib/ddtrace/contrib/redis/integration.rb +4 -2
  32. data/lib/ddtrace/contrib/resque/integration.rb +6 -2
  33. data/lib/ddtrace/contrib/rest_client/integration.rb +5 -2
  34. data/lib/ddtrace/contrib/sequel/integration.rb +4 -2
  35. data/lib/ddtrace/contrib/shoryuken/integration.rb +4 -2
  36. data/lib/ddtrace/contrib/sidekiq/integration.rb +4 -2
  37. data/lib/ddtrace/contrib/sinatra/integration.rb +4 -2
  38. data/lib/ddtrace/contrib/sucker_punch/integration.rb +4 -2
  39. data/lib/ddtrace/version.rb +1 -1
  40. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 378dbfa934d235e1fef7eec26aded395a1663f50
4
- data.tar.gz: 66f5d0aa2f1f92a0ca34c5db63e1050abb6d064d
3
+ metadata.gz: 33ff362e900442906880aa11ec5077bbd2c42f69
4
+ data.tar.gz: 40570d3fd448bbf79b7e3a2e0743b8e06fca8b0d
5
5
  SHA512:
6
- metadata.gz: a9e34459216332d23f79bc78c6b2bec203f8e86a486853afb9844db587395c237a84bd4242feb41354d726130bd30701c6f6db60638b2f06ed60db7cad87b386
7
- data.tar.gz: 10da81ee9b31d0125fb94ab6451e1e244183a352d042312264a0989496a4c87daeaefb9c5b802a96557075807f2168a6e23767d5e7c429f38fb4e040d5ebc48d
6
+ metadata.gz: c44f64e9663103f0512e6c70dc27c737acdbd9924593896c2bb300b0d4ea098574c1716e31e1c48d43f42b81259598ceb54c8597b913c6494caa523232bd674a
7
+ data.tar.gz: f35c0db584c395eda20691b1fdd19373eed39625521d314819e1dfd74e237f2b869945792f7ccecf55c5a0b4d4004e5e06939a8d2845b644739dd403b38b49c7
@@ -2,6 +2,16 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [0.33.1] - 2020-03-09
6
+
7
+ Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.33.1
8
+
9
+ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.33.0...v0.33.1
10
+
11
+ ### Fixed
12
+
13
+ - NoMethodError when activating instrumentation for non-existent library (#964, #966) (@roccoblues, @brafales)
14
+
5
15
  ## [0.33.0] - 2020-03-05
6
16
 
7
17
  Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.33.0
@@ -1109,7 +1119,8 @@ Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.3.1
1109
1119
 
1110
1120
  Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
1111
1121
 
1112
- [Unreleased]: https://github.com/DataDog/dd-trace-rb/compare/v0.33.0...master
1122
+ [Unreleased]: https://github.com/DataDog/dd-trace-rb/compare/v0.33.1...master
1123
+ [0.33.1]: https://github.com/DataDog/dd-trace-rb/compare/v0.33.0...v0.33.1
1113
1124
  [0.33.0]: https://github.com/DataDog/dd-trace-rb/compare/v0.32.0...v0.33.0
1114
1125
  [0.32.0]: https://github.com/DataDog/dd-trace-rb/compare/v0.31.1...v0.32.0
1115
1126
  [0.31.1]: https://github.com/DataDog/dd-trace-rb/compare/v0.31.0...v0.31.1
@@ -328,37 +328,37 @@ For a list of available integrations, and their configuration options, please re
328
328
  | Name | Key | Versions Supported | How to configure | Gem source |
329
329
  | ------------------------ | -------------------------- | ------------------------ | ----------------------------------- | ------------------------------------------------------------------------------ |
330
330
  | Action Cable | `action_cable` | `>= 5.0` | *[Link](#action-cable)* | *[Link](https://github.com/rails/rails/tree/master/actioncable)* |
331
- | Action View | `action_view` | `>= 3.2` | *[Link](#action-view)* | *[Link](https://github.com/rails/rails/tree/master/actionview)* |
331
+ | Action View | `action_view` | `>= 3.0` | *[Link](#action-view)* | *[Link](https://github.com/rails/rails/tree/master/actionview)* |
332
332
  | Active Model Serializers | `active_model_serializers` | `>= 0.9` | *[Link](#active-model-serializers)* | *[Link](https://github.com/rails-api/active_model_serializers)* |
333
- | Action Pack | `action_pack` | `>= 3.2` | *[Link](#action-pack)* | *[Link](https://github.com/rails/rails/tree/master/actionpack)* |
334
- | Active Record | `active_record` | `>= 3.2` | *[Link](#active-record)* | *[Link](https://github.com/rails/rails/tree/master/activerecord)* |
335
- | Active Support | `active_support` | `>= 3.2` | *[Link](#active-support)* | *[Link](https://github.com/rails/rails/tree/master/activesupport)* |
333
+ | Action Pack | `action_pack` | `>= 3.0` | *[Link](#action-pack)* | *[Link](https://github.com/rails/rails/tree/master/actionpack)* |
334
+ | Active Record | `active_record` | `>= 3.0` | *[Link](#active-record)* | *[Link](https://github.com/rails/rails/tree/master/activerecord)* |
335
+ | Active Support | `active_support` | `>= 3.0` | *[Link](#active-support)* | *[Link](https://github.com/rails/rails/tree/master/activesupport)* |
336
336
  | AWS | `aws` | `>= 2.0` | *[Link](#aws)* | *[Link](https://github.com/aws/aws-sdk-ruby)* |
337
337
  | Concurrent Ruby | `concurrent_ruby` | `>= 0.9` | *[Link](#concurrent-ruby)* | *[Link](https://github.com/ruby-concurrency/concurrent-ruby)* |
338
- | Dalli | `dalli` | `>= 2.7` | *[Link](#dalli)* | *[Link](https://github.com/petergoldstein/dalli)* |
338
+ | Dalli | `dalli` | `>= 2.0` | *[Link](#dalli)* | *[Link](https://github.com/petergoldstein/dalli)* |
339
339
  | DelayedJob | `delayed_job` | `>= 4.1` | *[Link](#delayedjob)* | *[Link](https://github.com/collectiveidea/delayed_job)* |
340
- | Elasticsearch | `elasticsearch` | `>= 6.0` | *[Link](#elasticsearch)* | *[Link](https://github.com/elastic/elasticsearch-ruby)* |
341
- | Ethon | `ethon` | `>= 0.11.0` | *[Link](#ethon)* | *[Link](https://github.com/typhoeus/ethon)* |
342
- | Excon | `excon` | `>= 0.62` | *[Link](#excon)* | *[Link](https://github.com/excon/excon)* |
340
+ | Elasticsearch | `elasticsearch` | `>= 1.0` | *[Link](#elasticsearch)* | *[Link](https://github.com/elastic/elasticsearch-ruby)* |
341
+ | Ethon | `ethon` | `>= 0.11` | *[Link](#ethon)* | *[Link](https://github.com/typhoeus/ethon)* |
342
+ | Excon | `excon` | `>= 0.50` | *[Link](#excon)* | *[Link](https://github.com/excon/excon)* |
343
343
  | Faraday | `faraday` | `>= 0.14` | *[Link](#faraday)* | *[Link](https://github.com/lostisland/faraday)* |
344
344
  | Grape | `grape` | `>= 1.0` | *[Link](#grape)* | *[Link](https://github.com/ruby-grape/grape)* |
345
345
  | GraphQL | `graphql` | `>= 1.7.9` | *[Link](#graphql)* | *[Link](https://github.com/rmosolgo/graphql-ruby)* |
346
- | gRPC | `grpc` | `>= 1.10` | *[Link](#grpc)* | *[Link](https://github.com/grpc/grpc/tree/master/src/rubyc)* |
347
- | MongoDB | `mongo` | `>= 2.0` | *[Link](#mongodb)* | *[Link](https://github.com/mongodb/mongo-ruby-driver)* |
346
+ | gRPC | `grpc` | `>= 1.7` | *[Link](#grpc)* | *[Link](https://github.com/grpc/grpc/tree/master/src/rubyc)* |
347
+ | MongoDB | `mongo` | `>= 2.1` | *[Link](#mongodb)* | *[Link](https://github.com/mongodb/mongo-ruby-driver)* |
348
348
  | MySQL2 | `mysql2` | `>= 0.3.21` | *[Link](#mysql2)* | *[Link](https://github.com/brianmario/mysql2)* |
349
349
  | Net/HTTP | `http` | *(Any supported Ruby)* | *[Link](#nethttp)* | *[Link](https://ruby-doc.org/stdlib-2.4.0/libdoc/net/http/rdoc/Net/HTTP.html)* |
350
350
  | Presto | `presto` | `>= 0.5.14` | *[Link](#presto)* | *[Link](https://github.com/treasure-data/presto-client-ruby)* |
351
351
  | Racecar | `racecar` | `>= 0.3.5` | *[Link](#racecar)* | *[Link](https://github.com/zendesk/racecar)* |
352
- | Rack | `rack` | `>= 1.1.0` | *[Link](#rack)* | *[Link](https://github.com/rack/rack)* |
353
- | Rails | `rails` | `>= 3.2` | *[Link](#rails)* | *[Link](https://github.com/rails/rails)* |
352
+ | Rack | `rack` | `>= 1.1` | *[Link](#rack)* | *[Link](https://github.com/rack/rack)* |
353
+ | Rails | `rails` | `>= 3.0` | *[Link](#rails)* | *[Link](https://github.com/rails/rails)* |
354
354
  | Rake | `rake` | `>= 12.0` | *[Link](#rake)* | *[Link](https://github.com/ruby/rake)* |
355
355
  | Redis | `redis` | `>= 3.2` | *[Link](#redis)* | *[Link](https://github.com/redis/redis-rb)* |
356
356
  | Resque | `resque` | `>= 1.0, < 2.0` | *[Link](#resque)* | *[Link](https://github.com/resque/resque)* |
357
357
  | Rest Client | `rest-client` | `>= 1.8` | *[Link](#rest-client)* | *[Link](https://github.com/rest-client/rest-client)* |
358
358
  | Sequel | `sequel` | `>= 3.41` | *[Link](#sequel)* | *[Link](https://github.com/jeremyevans/sequel)* |
359
- | Shoryuken | `shoryuken` | `>= 4.0.2` | *[Link](#shoryuken)* | *[Link](https://github.com/phstc/shoryuken)* |
359
+ | Shoryuken | `shoryuken` | `>= 3.2` | *[Link](#shoryuken)* | *[Link](https://github.com/phstc/shoryuken)* |
360
360
  | Sidekiq | `sidekiq` | `>= 3.5.4` | *[Link](#sidekiq)* | *[Link](https://github.com/mperham/sidekiq)* |
361
- | Sinatra | `sinatra` | `>= 1.4.5` | *[Link](#sinatra)* | *[Link](https://github.com/sinatra/sinatra)* |
361
+ | Sinatra | `sinatra` | `>= 1.4` | *[Link](#sinatra)* | *[Link](https://github.com/sinatra/sinatra)* |
362
362
  | Sucker Punch | `sucker_punch` | `>= 2.0` | *[Link](#sucker-punch)* | *[Link](https://github.com/brandonhilkert/sucker_punch)* |
363
363
 
364
364
  ### Action Cable
@@ -9,6 +9,8 @@ module Datadog
9
9
  class Integration
10
10
  include Contrib::Integration
11
11
 
12
+ MINIMUM_VERSION = Gem::Version.new('5.0.0')
13
+
12
14
  register_as :action_cable, auto_patch: false
13
15
 
14
16
  def self.version
@@ -16,11 +18,11 @@ module Datadog
16
18
  end
17
19
 
18
20
  def self.loaded?
19
- defined?(::ActionCable)
21
+ !defined?(::ActionCable).nil?
20
22
  end
21
23
 
22
24
  def self.compatible?
23
- super && Rails::Integration.compatible?
25
+ super && version >= MINIMUM_VERSION
24
26
  end
25
27
 
26
28
  def default_configuration
@@ -9,6 +9,8 @@ module Datadog
9
9
  class Integration
10
10
  include Contrib::Integration
11
11
 
12
+ MINIMUM_VERSION = Gem::Version.new('3.0')
13
+
12
14
  register_as :action_pack, auto_patch: false
13
15
 
14
16
  def self.version
@@ -16,11 +18,11 @@ module Datadog
16
18
  end
17
19
 
18
20
  def self.loaded?
19
- defined?(::ActionPack)
21
+ !defined?(::ActionPack).nil?
20
22
  end
21
23
 
22
24
  def self.compatible?
23
- super && version >= Gem::Version.new('3.0')
25
+ super && version >= MINIMUM_VERSION
24
26
  end
25
27
 
26
28
  def default_configuration
@@ -9,6 +9,8 @@ module Datadog
9
9
  class Integration
10
10
  include Contrib::Integration
11
11
 
12
+ MINIMUM_VERSION = Gem::Version.new('3.0')
13
+
12
14
  register_as :action_view, auto_patch: false
13
15
 
14
16
  def self.version
@@ -23,11 +25,11 @@ module Datadog
23
25
  end
24
26
 
25
27
  def self.loaded?
26
- defined?(::ActionView)
28
+ !defined?(::ActionView).nil?
27
29
  end
28
30
 
29
31
  def self.compatible?
30
- super && version >= Gem::Version.new('3.0')
32
+ super && version >= MINIMUM_VERSION
31
33
  end
32
34
 
33
35
  def default_configuration
@@ -9,6 +9,8 @@ module Datadog
9
9
  class Integration
10
10
  include Contrib::Integration
11
11
 
12
+ MINIMUM_VERSION = Gem::Version.new('0.9.0')
13
+
12
14
  register_as :active_model_serializers
13
15
 
14
16
  def self.version
@@ -17,11 +19,12 @@ module Datadog
17
19
  end
18
20
 
19
21
  def self.loaded?
20
- defined?(::ActiveModel::Serializer) && defined?(::ActiveSupport::Notifications)
22
+ !defined?(::ActiveModel::Serializer).nil? \
23
+ && !defined?(::ActiveSupport::Notifications).nil?
21
24
  end
22
25
 
23
26
  def self.compatible?
24
- super && version >= Gem::Version.new('0.9.0')
27
+ super && version >= MINIMUM_VERSION
25
28
  end
26
29
 
27
30
  def default_configuration
@@ -13,6 +13,8 @@ module Datadog
13
13
  class Integration
14
14
  include Contrib::Integration
15
15
 
16
+ MINIMUM_VERSION = Gem::Version.new('3.0')
17
+
16
18
  register_as :active_record, auto_patch: false
17
19
 
18
20
  def self.version
@@ -20,11 +22,11 @@ module Datadog
20
22
  end
21
23
 
22
24
  def self.loaded?
23
- defined?(::ActiveRecord)
25
+ !defined?(::ActiveRecord).nil?
24
26
  end
25
27
 
26
28
  def self.compatible?
27
- super && version >= Gem::Version.new('3.0')
29
+ super && version >= MINIMUM_VERSION
28
30
  end
29
31
 
30
32
  def default_configuration
@@ -11,6 +11,8 @@ module Datadog
11
11
  class Integration
12
12
  include Contrib::Integration
13
13
 
14
+ MINIMUM_VERSION = Gem::Version.new('3.0')
15
+
14
16
  register_as :active_support, auto_patch: false
15
17
 
16
18
  def self.version
@@ -18,11 +20,11 @@ module Datadog
18
20
  end
19
21
 
20
22
  def self.loaded?
21
- defined?(::ActiveSupport)
23
+ !defined?(::ActiveSupport).nil?
22
24
  end
23
25
 
24
26
  def self.compatible?
25
- super && version >= Gem::Version.new('3.0')
27
+ super && version >= MINIMUM_VERSION
26
28
  end
27
29
 
28
30
  def default_configuration
@@ -9,6 +9,8 @@ module Datadog
9
9
  class Integration
10
10
  include Contrib::Integration
11
11
 
12
+ MINIMUM_VERSION = Gem::Version.new('2.0')
13
+
12
14
  register_as :aws, auto_patch: true
13
15
 
14
16
  def self.version
@@ -20,11 +22,11 @@ module Datadog
20
22
  end
21
23
 
22
24
  def self.loaded?
23
- defined?(::Seahorse::Client::Base)
25
+ !defined?(::Seahorse::Client::Base).nil?
24
26
  end
25
27
 
26
28
  def self.compatible?
27
- super && version >= Gem::Version.new('2.0')
29
+ super && version >= MINIMUM_VERSION
28
30
  end
29
31
 
30
32
  def default_configuration
@@ -9,6 +9,8 @@ module Datadog
9
9
  class Integration
10
10
  include Contrib::Integration
11
11
 
12
+ MINIMUM_VERSION = Gem::Version.new('0.9')
13
+
12
14
  register_as :concurrent_ruby
13
15
 
14
16
  def self.version
@@ -16,11 +18,11 @@ module Datadog
16
18
  end
17
19
 
18
20
  def self.loaded?
19
- defined?(::Concurrent::Future)
21
+ !defined?(::Concurrent::Future).nil?
20
22
  end
21
23
 
22
24
  def self.compatible?
23
- super && version >= Gem::Version.new('0.9')
25
+ super && version >= MINIMUM_VERSION
24
26
  end
25
27
 
26
28
  def default_configuration
@@ -9,6 +9,8 @@ module Datadog
9
9
  class Integration
10
10
  include Contrib::Integration
11
11
 
12
+ MINIMUM_VERSION = Gem::Version.new('2.0.0')
13
+
12
14
  register_as :dalli, auto_patch: true
13
15
 
14
16
  def self.version
@@ -16,11 +18,11 @@ module Datadog
16
18
  end
17
19
 
18
20
  def self.loaded?
19
- defined?(::Dalli)
21
+ !defined?(::Dalli).nil?
20
22
  end
21
23
 
22
24
  def self.compatible?
23
- super && version > Gem::Version.new('2.0.0')
25
+ super && version >= MINIMUM_VERSION
24
26
  end
25
27
 
26
28
  def default_configuration
@@ -9,6 +9,8 @@ module Datadog
9
9
  class Integration
10
10
  include Contrib::Integration
11
11
 
12
+ MINIMUM_VERSION = Gem::Version.new('4.1')
13
+
12
14
  register_as :delayed_job
13
15
 
14
16
  def self.version
@@ -16,11 +18,11 @@ module Datadog
16
18
  end
17
19
 
18
20
  def self.loaded?
19
- defined?(::Delayed)
21
+ !defined?(::Delayed).nil?
20
22
  end
21
23
 
22
24
  def self.compatible?
23
- super && version >= Gem::Version.new('4.1')
25
+ super && version >= MINIMUM_VERSION
24
26
  end
25
27
 
26
28
  def default_configuration
@@ -9,6 +9,8 @@ module Datadog
9
9
  class Integration
10
10
  include Contrib::Integration
11
11
 
12
+ MINIMUM_VERSION = Gem::Version.new('1.0.0')
13
+
12
14
  register_as :elasticsearch, auto_patch: true
13
15
 
14
16
  def self.version
@@ -17,11 +19,11 @@ module Datadog
17
19
  end
18
20
 
19
21
  def self.loaded?
20
- defined?(::Elasticsearch::Transport)
22
+ !defined?(::Elasticsearch::Transport).nil?
21
23
  end
22
24
 
23
25
  def self.compatible?
24
- super && version >= Gem::Version.new('1.0.0')
26
+ super && version >= MINIMUM_VERSION
25
27
  end
26
28
 
27
29
  def default_configuration
@@ -8,6 +8,9 @@ module Datadog
8
8
  # Description of Ethon integration
9
9
  class Integration
10
10
  include Contrib::Integration
11
+
12
+ MINIMUM_VERSION = Gem::Version.new('0.11.0')
13
+
11
14
  register_as :ethon
12
15
 
13
16
  def self.version
@@ -15,11 +18,11 @@ module Datadog
15
18
  end
16
19
 
17
20
  def self.loaded?
18
- defined?(::Ethon::Easy)
21
+ !defined?(::Ethon::Easy).nil?
19
22
  end
20
23
 
21
24
  def self.compatible?
22
- super && version >= Gem::Version.new('0.11.0')
25
+ super && version >= MINIMUM_VERSION
23
26
  end
24
27
 
25
28
  def default_configuration
@@ -9,6 +9,8 @@ module Datadog
9
9
  class Integration
10
10
  include Contrib::Integration
11
11
 
12
+ MINIMUM_VERSION = Gem::Version.new('0.50.0')
13
+
12
14
  register_as :excon
13
15
 
14
16
  def self.version
@@ -16,11 +18,11 @@ module Datadog
16
18
  end
17
19
 
18
20
  def self.loaded?
19
- defined?(::Excon)
21
+ !defined?(::Excon).nil?
20
22
  end
21
23
 
22
24
  def self.compatible?
23
- super && version >= Gem::Version.new('0.62')
25
+ super && version >= MINIMUM_VERSION
24
26
  end
25
27
 
26
28
  def default_configuration
@@ -9,6 +9,8 @@ module Datadog
9
9
  class Integration
10
10
  include Contrib::Integration
11
11
 
12
+ MINIMUM_VERSION = Gem::Version.new('0.14.0')
13
+
12
14
  register_as :faraday, auto_patch: true
13
15
 
14
16
  def self.version
@@ -16,11 +18,11 @@ module Datadog
16
18
  end
17
19
 
18
20
  def self.loaded?
19
- defined?(::Faraday)
21
+ !defined?(::Faraday).nil?
20
22
  end
21
23
 
22
24
  def self.compatible?
23
- super && version >= Gem::Version.new('0.14.0')
25
+ super && version >= MINIMUM_VERSION
24
26
  end
25
27
 
26
28
  def default_configuration
@@ -9,6 +9,8 @@ module Datadog
9
9
  class Integration
10
10
  include Contrib::Integration
11
11
 
12
+ MINIMUM_VERSION = Gem::Version.new('1.0')
13
+
12
14
  register_as :grape, auto_patch: true
13
15
 
14
16
  def self.version
@@ -16,11 +18,12 @@ module Datadog
16
18
  end
17
19
 
18
20
  def self.loaded?
19
- defined?(::Grape) && defined?(::ActiveSupport::Notifications)
21
+ !defined?(::Grape).nil? \
22
+ && !defined?(::ActiveSupport::Notifications).nil?
20
23
  end
21
24
 
22
25
  def self.compatible?
23
- super && version >= Gem::Version.new('1.0')
26
+ super && version >= MINIMUM_VERSION
24
27
  end
25
28
 
26
29
  def default_configuration
@@ -9,6 +9,8 @@ module Datadog
9
9
  class Integration
10
10
  include Contrib::Integration
11
11
 
12
+ MINIMUM_VERSION = Gem::Version.new('1.7.9')
13
+
12
14
  register_as :graphql, auto_patch: true
13
15
 
14
16
  def self.version
@@ -16,11 +18,12 @@ module Datadog
16
18
  end
17
19
 
18
20
  def self.loaded?
19
- defined?(::GraphQL) && defined?(::GraphQL::Tracing::DataDogTracing)
21
+ !defined?(::GraphQL).nil? \
22
+ && !defined?(::GraphQL::Tracing::DataDogTracing).nil?
20
23
  end
21
24
 
22
25
  def self.compatible?
23
- super && version >= Gem::Version.new('1.7.9')
26
+ super && version >= MINIMUM_VERSION
24
27
  end
25
28
 
26
29
  def default_configuration
@@ -9,6 +9,8 @@ module Datadog
9
9
  class Integration
10
10
  include Contrib::Integration
11
11
 
12
+ MINIMUM_VERSION = Gem::Version.new('1.7.0')
13
+
12
14
  register_as :grpc, auto_patch: true
13
15
 
14
16
  def self.version
@@ -16,11 +18,11 @@ module Datadog
16
18
  end
17
19
 
18
20
  def self.loaded?
19
- defined?(::GRPC)
21
+ !defined?(::GRPC).nil?
20
22
  end
21
23
 
22
24
  def self.compatible?
23
- super && version >= Gem::Version.new('0.10.0')
25
+ super && version >= MINIMUM_VERSION
24
26
  end
25
27
 
26
28
  def default_configuration
@@ -1,3 +1,5 @@
1
+ require 'ddtrace/version'
2
+
1
3
  require 'ddtrace/contrib/integration'
2
4
  require 'ddtrace/contrib/http/configuration/settings'
3
5
  require 'ddtrace/contrib/http/patcher'
@@ -13,6 +15,8 @@ module Datadog
13
15
  class Integration
14
16
  include Contrib::Integration
15
17
 
18
+ MINIMUM_VERSION = Datadog::VERSION::MINIMUM_RUBY_VERSION
19
+
16
20
  register_as :http, auto_patch: true
17
21
 
18
22
  def self.version
@@ -20,7 +24,7 @@ module Datadog
20
24
  end
21
25
 
22
26
  def self.loaded?
23
- defined?(::Net::HTTP)
27
+ !defined?(::Net::HTTP).nil?
24
28
  end
25
29
 
26
30
  def default_configuration
@@ -9,6 +9,8 @@ module Datadog
9
9
  class Integration
10
10
  include Contrib::Integration
11
11
 
12
+ MINIMUM_VERSION = Gem::Version.new('2.1.0')
13
+
12
14
  register_as :mongo, auto_patch: true
13
15
 
14
16
  def self.version
@@ -16,11 +18,11 @@ module Datadog
16
18
  end
17
19
 
18
20
  def self.loaded?
19
- defined?(::Mongo::Monitoring::Global)
21
+ !defined?(::Mongo::Monitoring::Global).nil?
20
22
  end
21
23
 
22
24
  def self.compatible?
23
- super && version >= Gem::Version.new('2.1.0')
25
+ super && version >= MINIMUM_VERSION
24
26
  end
25
27
 
26
28
  def default_configuration
@@ -9,6 +9,8 @@ module Datadog
9
9
  class Integration
10
10
  include Contrib::Integration
11
11
 
12
+ MINIMUM_VERSION = Gem::Version.new('0.3.21')
13
+
12
14
  register_as :mysql2
13
15
 
14
16
  def self.version
@@ -16,11 +18,11 @@ module Datadog
16
18
  end
17
19
 
18
20
  def self.loaded?
19
- defined?(::Mysql2)
21
+ !defined?(::Mysql2).nil?
20
22
  end
21
23
 
22
24
  def self.compatible?
23
- super && version >= Gem::Version.new('0.3.21')
25
+ super && version >= MINIMUM_VERSION
24
26
  end
25
27
 
26
28
  def default_configuration
@@ -25,7 +25,7 @@ module Datadog
25
25
 
26
26
  # Is the loaded code compatible with this integration? (e.g. minimum version met?)
27
27
  def compatible?
28
- Gem::Version.new(RUBY_VERSION) >= Gem::Version.new(VERSION::MINIMUM_RUBY_VERSION)
28
+ available? && Gem::Version.new(RUBY_VERSION) >= Gem::Version.new(VERSION::MINIMUM_RUBY_VERSION)
29
29
  end
30
30
 
31
31
  # Can the patch for this integration be applied?
@@ -9,6 +9,8 @@ module Datadog
9
9
  class Integration
10
10
  include Contrib::Integration
11
11
 
12
+ MINIMUM_VERSION = Gem::Version.new('0.5.14')
13
+
12
14
  register_as :presto
13
15
 
14
16
  def self.version
@@ -16,11 +18,11 @@ module Datadog
16
18
  end
17
19
 
18
20
  def self.loaded?
19
- defined?(::Presto::Client::Client)
21
+ !defined?(::Presto::Client::Client).nil?
20
22
  end
21
23
 
22
24
  def self.compatible?
23
- super && version >= Gem::Version.new('0.5.14')
25
+ super && version >= MINIMUM_VERSION
24
26
  end
25
27
 
26
28
  def default_configuration
@@ -9,6 +9,8 @@ module Datadog
9
9
  class Integration
10
10
  include Contrib::Integration
11
11
 
12
+ MINIMUM_VERSION = Gem::Version.new('0.3.5')
13
+
12
14
  register_as :racecar, auto_patch: false
13
15
 
14
16
  def self.version
@@ -16,11 +18,12 @@ module Datadog
16
18
  end
17
19
 
18
20
  def self.loaded?
19
- defined?(::Racecar) && defined?(::ActiveSupport::Notifications)
21
+ !defined?(::Racecar).nil? \
22
+ && !defined?(::ActiveSupport::Notifications).nil?
20
23
  end
21
24
 
22
25
  def self.compatible?
23
- super && version >= Gem::Version.new('0.3.5')
26
+ super && version >= MINIMUM_VERSION
24
27
  end
25
28
 
26
29
  def default_configuration
@@ -9,6 +9,8 @@ module Datadog
9
9
  class Integration
10
10
  include Contrib::Integration
11
11
 
12
+ MINIMUM_VERSION = Gem::Version.new('1.1.0')
13
+
12
14
  register_as :rack, auto_patch: false
13
15
 
14
16
  def self.version
@@ -16,11 +18,11 @@ module Datadog
16
18
  end
17
19
 
18
20
  def self.loaded?
19
- defined?(::Rack)
21
+ !defined?(::Rack).nil?
20
22
  end
21
23
 
22
24
  def self.compatible?
23
- super && version >= Gem::Version.new('1.1.0')
25
+ super && version >= MINIMUM_VERSION
24
26
  end
25
27
 
26
28
  def default_configuration
@@ -6,6 +6,7 @@ module Datadog
6
6
  APP = 'rails'.freeze
7
7
  ENV_ANALYTICS_ENABLED = 'DD_RAILS_ANALYTICS_ENABLED'.freeze
8
8
  ENV_ANALYTICS_SAMPLE_RATE = 'DD_RAILS_ANALYTICS_SAMPLE_RATE'.freeze
9
+ ENV_DISABLE = 'DISABLE_DATADOG_RAILS'.freeze
9
10
  end
10
11
  end
11
12
  end
@@ -1,4 +1,6 @@
1
1
  require 'ddtrace/contrib/integration'
2
+
3
+ require 'ddtrace/contrib/rails/ext'
2
4
  require 'ddtrace/contrib/rails/configuration/settings'
3
5
  require 'ddtrace/contrib/rails/patcher'
4
6
 
@@ -9,6 +11,8 @@ module Datadog
9
11
  class Integration
10
12
  include Contrib::Integration
11
13
 
14
+ MINIMUM_VERSION = Gem::Version.new('3.0')
15
+
12
16
  register_as :rails, auto_patch: false
13
17
 
14
18
  def self.version
@@ -16,15 +20,15 @@ module Datadog
16
20
  end
17
21
 
18
22
  def self.loaded?
19
- defined?(::Rails)
23
+ !defined?(::Rails).nil?
20
24
  end
21
25
 
22
26
  def self.compatible?
23
- super && version >= Gem::Version.new('3.0')
27
+ super && version >= MINIMUM_VERSION
24
28
  end
25
29
 
26
30
  def self.patchable?
27
- super && !ENV.key?('DISABLE_DATADOG_RAILS')
31
+ super && !ENV.key?(Ext::ENV_DISABLE)
28
32
  end
29
33
 
30
34
  def default_configuration
@@ -9,6 +9,8 @@ module Datadog
9
9
  class Integration
10
10
  include Contrib::Integration
11
11
 
12
+ MINIMUM_VERSION = Gem::Version.new('12.0')
13
+
12
14
  register_as :rake
13
15
 
14
16
  def self.version
@@ -16,11 +18,11 @@ module Datadog
16
18
  end
17
19
 
18
20
  def self.loaded?
19
- defined?(::Rake)
21
+ !defined?(::Rake).nil?
20
22
  end
21
23
 
22
24
  def self.compatible?
23
- super && version >= Gem::Version.new('12.0')
25
+ super && version >= MINIMUM_VERSION
24
26
  end
25
27
 
26
28
  def default_configuration
@@ -9,6 +9,8 @@ module Datadog
9
9
  class Integration
10
10
  include Contrib::Integration
11
11
 
12
+ MINIMUM_VERSION = Gem::Version.new('3.2')
13
+
12
14
  register_as :redis, auto_patch: true
13
15
 
14
16
  def self.version
@@ -16,11 +18,11 @@ module Datadog
16
18
  end
17
19
 
18
20
  def self.loaded?
19
- defined?(::Redis)
21
+ !defined?(::Redis).nil?
20
22
  end
21
23
 
22
24
  def self.compatible?
23
- super && version >= Gem::Version.new('3.2')
25
+ super && version >= MINIMUM_VERSION
24
26
  end
25
27
 
26
28
  def default_configuration
@@ -9,6 +9,10 @@ module Datadog
9
9
  class Integration
10
10
  include Contrib::Integration
11
11
 
12
+ MINIMUM_VERSION = Gem::Version.new('1.0')
13
+ # Maximum is first version it's NOT compatible with (not inclusive)
14
+ MAXIMUM_VERSION = Gem::Version.new('2.0')
15
+
12
16
  register_as :resque, auto_patch: true
13
17
 
14
18
  def self.version
@@ -16,13 +20,13 @@ module Datadog
16
20
  end
17
21
 
18
22
  def self.loaded?
19
- defined?(::Resque)
23
+ !defined?(::Resque).nil?
20
24
  end
21
25
 
22
26
  def self.compatible?
23
27
  super \
24
28
  && version >= Gem::Version.new('1.0') \
25
- && version < Gem::Version.new('2.0')
29
+ && version < MAXIMUM_VERSION
26
30
  end
27
31
 
28
32
  def default_configuration
@@ -8,6 +8,9 @@ module Datadog
8
8
  # Description of RestClient integration
9
9
  class Integration
10
10
  include Contrib::Integration
11
+
12
+ MINIMUM_VERSION = Gem::Version.new('1.8')
13
+
11
14
  register_as :rest_client
12
15
 
13
16
  def self.version
@@ -15,11 +18,11 @@ module Datadog
15
18
  end
16
19
 
17
20
  def self.loaded?
18
- defined?(::RestClient::Request)
21
+ !defined?(::RestClient::Request).nil?
19
22
  end
20
23
 
21
24
  def self.compatible?
22
- super && version >= Gem::Version.new('1.8')
25
+ super && version >= MINIMUM_VERSION
23
26
  end
24
27
 
25
28
  def default_configuration
@@ -9,6 +9,8 @@ module Datadog
9
9
  class Integration
10
10
  include Contrib::Integration
11
11
 
12
+ MINIMUM_VERSION = Gem::Version.new('3.41')
13
+
12
14
  register_as :sequel, auto_patch: false
13
15
 
14
16
  def self.version
@@ -16,11 +18,11 @@ module Datadog
16
18
  end
17
19
 
18
20
  def self.loaded?
19
- defined?(::Sequel)
21
+ !defined?(::Sequel).nil?
20
22
  end
21
23
 
22
24
  def self.compatible?
23
- super && version >= Gem::Version.new('3.41')
25
+ super && version >= MINIMUM_VERSION
24
26
  end
25
27
 
26
28
  def default_configuration
@@ -10,6 +10,8 @@ module Datadog
10
10
  class Integration
11
11
  include Contrib::Integration
12
12
 
13
+ MINIMUM_VERSION = Gem::Version.new('3.2')
14
+
13
15
  register_as :shoryuken
14
16
 
15
17
  def self.version
@@ -17,11 +19,11 @@ module Datadog
17
19
  end
18
20
 
19
21
  def self.loaded?
20
- defined?(::Shoryuken)
22
+ !defined?(::Shoryuken).nil?
21
23
  end
22
24
 
23
25
  def self.compatible?
24
- super && version >= Gem::Version.new('4.0.2')
26
+ super && version >= MINIMUM_VERSION
25
27
  end
26
28
 
27
29
  def default_configuration
@@ -9,6 +9,8 @@ module Datadog
9
9
  class Integration
10
10
  include Contrib::Integration
11
11
 
12
+ MINIMUM_VERSION = Gem::Version.new('3.5.4')
13
+
12
14
  register_as :sidekiq
13
15
 
14
16
  def self.version
@@ -16,11 +18,11 @@ module Datadog
16
18
  end
17
19
 
18
20
  def self.loaded?
19
- defined?(::Sidekiq)
21
+ !defined?(::Sidekiq).nil?
20
22
  end
21
23
 
22
24
  def self.compatible?
23
- super && version >= Gem::Version.new('3.5.4')
25
+ super && version >= MINIMUM_VERSION
24
26
  end
25
27
 
26
28
  def default_configuration
@@ -9,6 +9,8 @@ module Datadog
9
9
  class Integration
10
10
  include Contrib::Integration
11
11
 
12
+ MINIMUM_VERSION = Gem::Version.new('1.4')
13
+
12
14
  register_as :sinatra
13
15
 
14
16
  def self.version
@@ -16,11 +18,11 @@ module Datadog
16
18
  end
17
19
 
18
20
  def self.loaded?
19
- defined?(::Sinatra)
21
+ !defined?(::Sinatra).nil?
20
22
  end
21
23
 
22
24
  def self.compatible?
23
- super && version >= Gem::Version.new('1.4.0')
25
+ super && version >= MINIMUM_VERSION
24
26
  end
25
27
 
26
28
  def default_configuration
@@ -9,6 +9,8 @@ module Datadog
9
9
  class Integration
10
10
  include Contrib::Integration
11
11
 
12
+ MINIMUM_VERSION = Gem::Version.new('2.0.0')
13
+
12
14
  register_as :sucker_punch, auto_patch: true
13
15
 
14
16
  def self.version
@@ -16,11 +18,11 @@ module Datadog
16
18
  end
17
19
 
18
20
  def self.loaded?
19
- defined?(::SuckerPunch)
21
+ !defined?(::SuckerPunch).nil?
20
22
  end
21
23
 
22
24
  def self.compatible?
23
- super && version >= Gem::Version.new('2.0.0')
25
+ super && version >= MINIMUM_VERSION
24
26
  end
25
27
 
26
28
  def default_configuration
@@ -2,7 +2,7 @@ module Datadog
2
2
  module VERSION
3
3
  MAJOR = 0
4
4
  MINOR = 33
5
- PATCH = 0
5
+ PATCH = 1
6
6
  PRE = nil
7
7
 
8
8
  STRING = [MAJOR, MINOR, PATCH, PRE].compact.join('.')
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ddtrace
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.33.0
4
+ version: 0.33.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Datadog, Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-02-13 00:00:00.000000000 Z
11
+ date: 2020-03-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: msgpack