libdatadog 6.0.0.1.0-x86_64-linux → 7.0.0.1.0-x86_64-linux
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 +4 -4
- data/lib/libdatadog/version.rb +1 -1
- data/lib/libdatadog.rb +40 -16
- data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/LICENSE-3rdparty.yml +15459 -6284
- data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/bin/libdatadog-crashtracking-receiver +0 -0
- data/vendor/libdatadog-7.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/blazesym.h +895 -0
- data/vendor/{libdatadog-6.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl → libdatadog-7.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu}/include/datadog/common.h +135 -20
- data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/profiling.h +54 -38
- data/vendor/libdatadog-7.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/telemetry.h +290 -0
- data/vendor/libdatadog-7.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
- data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/lib/pkgconfig/datadog_profiling_with_rpath.pc +2 -4
- data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/LICENSE-3rdparty.yml +15459 -6284
- data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/bin/libdatadog-crashtracking-receiver +0 -0
- data/vendor/libdatadog-7.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/blazesym.h +895 -0
- data/vendor/{libdatadog-6.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu → libdatadog-7.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl}/include/datadog/common.h +135 -20
- data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/profiling.h +54 -38
- data/vendor/libdatadog-7.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/telemetry.h +290 -0
- data/vendor/libdatadog-7.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/lib/libdatadog_profiling.so +0 -0
- data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/lib/pkgconfig/datadog_profiling_with_rpath.pc +2 -4
- metadata +22 -18
- data/vendor/libdatadog-6.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
- data/vendor/libdatadog-6.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/lib/libdatadog_profiling.so +0 -0
- /data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/LICENSE +0 -0
- /data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/NOTICE +0 -0
- /data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/LICENSE +0 -0
- /data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/NOTICE +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 69f5b71f06abca95158354afe02975f04be4129fe7728734634754ab0d4795f9
|
4
|
+
data.tar.gz: 378dfa5a23cda412039b7e8f33ab9fe30283807886dbc9ef9f859629bb1f7f73
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b6c5363178b41c1658f553ff9552e5a9ed5816c44599b061b6843db4eeea416e78c16b27a8e5531b90c38be9c1221ec30617cb504b78ea70548373b325d5d27a
|
7
|
+
data.tar.gz: 9f56fd95903126651ed88cee2b6ceeabaf62d86e3eeed0cc5849a803110c526a7d8f8ee98ddb17ed60ea488b92f006dbfcb25c9f3bbe8b67eba8a6a446a4710e
|
data/lib/libdatadog/version.rb
CHANGED
data/lib/libdatadog.rb
CHANGED
@@ -9,35 +9,59 @@ module Libdatadog
|
|
9
9
|
end
|
10
10
|
|
11
11
|
def self.pkgconfig_folder(pkgconfig_file_name = "datadog_profiling_with_rpath.pc")
|
12
|
-
current_platform =
|
12
|
+
current_platform = self.current_platform
|
13
13
|
|
14
|
-
|
15
|
-
|
14
|
+
return unless available_binaries.include?(current_platform)
|
15
|
+
|
16
|
+
pkgconfig_file = Dir.glob("#{vendor_directory}/#{current_platform}/**/#{pkgconfig_file_name}").first
|
17
|
+
|
18
|
+
return unless pkgconfig_file
|
19
|
+
|
20
|
+
File.absolute_path(File.dirname(pkgconfig_file))
|
21
|
+
end
|
22
|
+
|
23
|
+
private_class_method def self.vendor_directory
|
24
|
+
ENV["LIBDATADOG_VENDOR_OVERRIDE"] || "#{__dir__}/../vendor/libdatadog-#{Libdatadog::LIB_VERSION}/"
|
25
|
+
end
|
26
|
+
|
27
|
+
def self.current_platform
|
28
|
+
platform = Gem::Platform.local.to_s
|
29
|
+
|
30
|
+
if platform.end_with?("-gnu")
|
31
|
+
# In some cases on Linux with glibc the platform includes a -gnu suffix. We normalize it to not have the suffix.
|
32
|
+
#
|
33
|
+
# Note: This should be platform = platform.delete_suffix("-gnu") but it doesn't work on legacy Rubies; once
|
34
|
+
# dd-trace-rb 2.0 is out we can simplify this.
|
35
|
+
#
|
36
|
+
platform = platform[0..-5]
|
37
|
+
end
|
38
|
+
|
39
|
+
if RbConfig::CONFIG["arch"].include?("-musl") && !platform.include?("-musl")
|
40
|
+
# Fix/workaround for https://github.com/datadog/dd-trace-rb/issues/2222
|
16
41
|
#
|
17
42
|
# Old versions of rubygems (for instance 3.0.3) don't properly detect alternative libc implementations on Linux;
|
18
43
|
# in particular for our case, they don't detect musl. (For reference, Rubies older than 2.7 may have shipped with
|
19
44
|
# an affected version of rubygems).
|
20
45
|
# In such cases, we fall back to use RbConfig::CONFIG['arch'] instead.
|
21
46
|
#
|
22
|
-
# Why not use RbConfig::CONFIG['arch'] always? Because Gem::Platform.local.to_s does some normalization
|
23
|
-
# in
|
24
|
-
# workaround in a specific situation where we actually know it is wrong
|
47
|
+
# Why not use RbConfig::CONFIG['arch'] always? Because Gem::Platform.local.to_s does some normalization that seemed
|
48
|
+
# useful in the past, although part of it got removed in https://github.com/rubygems/rubygems/pull/5852.
|
49
|
+
# For now we only add this workaround in a specific situation where we actually know it is wrong, but in the
|
50
|
+
# future it may be worth re-evaluating if we should move away from `Gem::Platform` altogether.
|
25
51
|
#
|
26
52
|
# See also https://github.com/rubygems/rubygems/pull/2922 and https://github.com/rubygems/rubygems/pull/4082
|
27
53
|
|
28
|
-
|
54
|
+
RbConfig::CONFIG["arch"]
|
55
|
+
else
|
56
|
+
platform
|
29
57
|
end
|
58
|
+
end
|
30
59
|
|
31
|
-
|
32
|
-
|
33
|
-
pkgconfig_file = Dir.glob("#{vendor_directory}/#{current_platform}/**/#{pkgconfig_file_name}").first
|
34
|
-
|
35
|
-
return unless pkgconfig_file
|
60
|
+
def self.path_to_crashtracking_receiver_binary
|
61
|
+
pkgconfig_folder = self.pkgconfig_folder
|
36
62
|
|
37
|
-
|
38
|
-
end
|
63
|
+
return unless pkgconfig_folder
|
39
64
|
|
40
|
-
|
41
|
-
ENV["LIBDATADOG_VENDOR_OVERRIDE"] || "#{__dir__}/../vendor/libdatadog-#{Libdatadog::LIB_VERSION}/"
|
65
|
+
File.absolute_path("#{pkgconfig_folder}/../../bin/libdatadog-crashtracking-receiver")
|
42
66
|
end
|
43
67
|
end
|