ddtrace 1.4.0 → 1.4.2

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b4e4740121e3fe300ff3f114e1ef7f968e104f46644fb0355fc1f1f3f977e725
4
- data.tar.gz: 914ba68d4f3be6ad282bfe21e03bbeecd4b6a0c37fd6efb625ae4c9cfe386518
3
+ metadata.gz: e708799bd5320bcc45e0cd79d9893ef278ea1b30205058cae88ed9409371bd56
4
+ data.tar.gz: c34df6aaebb0a8a16b68a6ccd12397b101fe5e74f450b599d9a94bb01cc272b5
5
5
  SHA512:
6
- metadata.gz: 26d08410fc6d1ce577df1eb6dc8df1d49aa04c3581aeae799e74c0fb682ea314e788755b910654a5a8682fbf648e68c38393baeba559470153aff6776bd6bd0c
7
- data.tar.gz: ad50fc9303b945511e2f886a4bbedf7c5d813889829ddfdf9f904361ec5f36e3a02d331c224933ef7b9a9524dbfb2a889fabbc93511eb7bd099ac38928de3b2a
6
+ metadata.gz: f33d2ddfb796efa2dfda6b5b02dab623e8fcfbcf263cb820a0e78d291f49dc06e587e535c7a8afe40e26c830b2b0dac7539c4302ed76aa24579560fa687ea154
7
+ data.tar.gz: 7cc6918e72984329af2f5a002a131d8ef965a276b9dc4ca74e1e6bda595f8c106f535c98bc69626e4394ba0f5c6a4e5103606e9946453bbe3ef8eb5d12922e0a
data/CHANGELOG.md CHANGED
@@ -2,6 +2,19 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [1.4.2] - 2022-09-27
6
+
7
+ ### Fixed
8
+
9
+ OpenTracing context propagation (#2191, #2289)
10
+
11
+ ## [1.4.1] - 2022-09-15
12
+
13
+ ### Fixed
14
+
15
+ * Missing distributed traces when trace is dropped by priority sampling ([#2101][], [#2279][])
16
+ * Profiling support when Ruby is compiled without a shared library ([#2250][])
17
+
5
18
  ## [1.4.0] - 2022-08-25
6
19
 
7
20
  Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v1.4.0
@@ -2090,7 +2103,12 @@ Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.3.1
2090
2103
 
2091
2104
  Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
2092
2105
 
2093
- [Unreleased]: https://github.com/DataDog/dd-trace-rb/compare/v1.1.0...master
2106
+ [Unreleased]: https://github.com/DataDog/dd-trace-rb/compare/v1.4.2...master
2107
+ [1.4.1]: https://github.com/DataDog/dd-trace-rb/compare/v1.4.1...v1.4.2
2108
+ [1.4.1]: https://github.com/DataDog/dd-trace-rb/compare/v1.4.0...v1.4.1
2109
+ [1.4.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.3.0...v1.4.0
2110
+ [1.3.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.2.0...v1.3.0
2111
+ [1.2.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.1.0...v1.2.0
2094
2112
  [1.1.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.0.0...v1.1.0
2095
2113
  [1.0.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.0.0.beta2...v1.0.0
2096
2114
  [1.0.0.beta2]: https://github.com/DataDog/dd-trace-rb/compare/v1.0.0.beta1...v1.0.0.beta2
@@ -2950,6 +2968,7 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
2950
2968
  [#2082]: https://github.com/DataDog/dd-trace-rb/issues/2082
2951
2969
  [#2096]: https://github.com/DataDog/dd-trace-rb/issues/2096
2952
2970
  [#2097]: https://github.com/DataDog/dd-trace-rb/issues/2097
2971
+ [#2101]: https://github.com/DataDog/dd-trace-rb/issues/2101
2953
2972
  [#2110]: https://github.com/DataDog/dd-trace-rb/issues/2110
2954
2973
  [#2113]: https://github.com/DataDog/dd-trace-rb/issues/2113
2955
2974
  [#2118]: https://github.com/DataDog/dd-trace-rb/issues/2118
@@ -2970,6 +2989,8 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
2970
2989
  [#2201]: https://github.com/DataDog/dd-trace-rb/issues/2201
2971
2990
  [#2219]: https://github.com/DataDog/dd-trace-rb/issues/2219
2972
2991
  [#2229]: https://github.com/DataDog/dd-trace-rb/issues/2229
2992
+ [#2250]: https://github.com/DataDog/dd-trace-rb/issues/2250
2993
+ [#2279]: https://github.com/DataDog/dd-trace-rb/issues/2279
2973
2994
  [@AdrianLC]: https://github.com/AdrianLC
2974
2995
  [@Azure7111]: https://github.com/Azure7111
2975
2996
  [@BabyGroot]: https://github.com/BabyGroot
@@ -85,7 +85,16 @@ static bool failed_to_load(void *handle, VALUE *failure_details) {
85
85
  static bool incompatible_library(void *handle, VALUE *failure_details) {
86
86
  // The library being loaded may be linked to a different libruby than the current executing Ruby.
87
87
  // We check if this is the case by checking if a well-known symbol resolves to a common address.
88
- if (dlsym(handle, "ruby_xmalloc") != &ruby_xmalloc) {
88
+
89
+ void *xmalloc_from_library = dlsym(handle, "ruby_xmalloc");
90
+
91
+ if (xmalloc_from_library == NULL) {
92
+ // This happens when ruby is built without a `libruby.so` by using `--disable-shared` at compilation time.
93
+ // In this situation, no conflict between libruby version is possible.
94
+ return false;
95
+ }
96
+
97
+ if (xmalloc_from_library != &ruby_xmalloc) {
89
98
  *failure_details = rb_str_new_cstr("library was compiled and linked to a different Ruby version");
90
99
  unload_failed_library(handle);
91
100
  return true;
@@ -151,12 +151,10 @@ module Datadog
151
151
  tags: tags || {}
152
152
  )
153
153
 
154
- # Build or extend the OpenTracer::SpanContext
155
- span_context = if parent_span_context
156
- SpanContextFactory.clone(span_context: parent_span_context)
157
- else
158
- SpanContextFactory.build(datadog_context: datadog_context)
159
- end
154
+ span_context = SpanContextFactory.build(
155
+ datadog_context: datadog_context || datadog_tracer.send(:call_context),
156
+ baggage: parent_span_context ? parent_span_context.baggage.dup : {}
157
+ )
160
158
 
161
159
  # Wrap the Datadog span and OpenTracer::Span context in a OpenTracer::Span
162
160
  Span.new(datadog_span: datadog_span, span_context: span_context)
@@ -74,7 +74,7 @@ module Datadog
74
74
  @id = id || Core::Utils.next_id
75
75
  @max_length = max_length || DEFAULT_MAX_LENGTH
76
76
  @parent_span_id = parent_span_id
77
- @sampled = sampled.nil? ? false : sampled
77
+ @sampled = sampled.nil? ? true : sampled
78
78
 
79
79
  # Tags
80
80
  @agent_sample_rate = agent_sample_rate
@@ -4,7 +4,7 @@ module DDTrace
4
4
  module VERSION
5
5
  MAJOR = 1
6
6
  MINOR = 4
7
- PATCH = 0
7
+ PATCH = 2
8
8
  PRE = nil
9
9
 
10
10
  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: 1.4.0
4
+ version: 1.4.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Datadog, Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-08-25 00:00:00.000000000 Z
11
+ date: 2022-09-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: msgpack
@@ -778,7 +778,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
778
778
  - !ruby/object:Gem::Version
779
779
  version: 2.0.0
780
780
  requirements: []
781
- rubygems_version: 3.3.7
781
+ rubygems_version: 3.2.15
782
782
  signing_key:
783
783
  specification_version: 4
784
784
  summary: Datadog tracing code for your Ruby applications