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.
Files changed (26) hide show
  1. checksums.yaml +4 -4
  2. data/lib/libdatadog/version.rb +1 -1
  3. data/lib/libdatadog.rb +40 -16
  4. data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/LICENSE-3rdparty.yml +15459 -6284
  5. 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
  6. data/vendor/libdatadog-7.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/blazesym.h +895 -0
  7. 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
  8. 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
  9. data/vendor/libdatadog-7.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/telemetry.h +290 -0
  10. data/vendor/libdatadog-7.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
  11. 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
  12. 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
  13. 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
  14. data/vendor/libdatadog-7.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/blazesym.h +895 -0
  15. 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
  16. 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
  17. data/vendor/libdatadog-7.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/telemetry.h +290 -0
  18. data/vendor/libdatadog-7.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/lib/libdatadog_profiling.so +0 -0
  19. 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
  20. metadata +22 -18
  21. data/vendor/libdatadog-6.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
  22. data/vendor/libdatadog-6.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/lib/libdatadog_profiling.so +0 -0
  23. /data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/LICENSE +0 -0
  24. /data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/NOTICE +0 -0
  25. /data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/LICENSE +0 -0
  26. /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: 8c86d5cb95105ea3a8dc1f1ed3aa5d5f92af7bfb6e7c15a07e33432c12e0d1c1
4
- data.tar.gz: 23ed74c884e40ba554bbbb37563a6f3fa808bc0a7db61b55cce9754bca561b58
3
+ metadata.gz: 69f5b71f06abca95158354afe02975f04be4129fe7728734634754ab0d4795f9
4
+ data.tar.gz: 378dfa5a23cda412039b7e8f33ab9fe30283807886dbc9ef9f859629bb1f7f73
5
5
  SHA512:
6
- metadata.gz: 3d81da56a948b628a1a101553e89feeccb7b2720016960731eb2489e659ec47676210b0ac29e4fef650c8beac37e07d6112d3ff85784352eacc359008b2da7ca
7
- data.tar.gz: 64c9c486919fdb7bab52c127e97c2fc5ac61d30e32c431d54000834d87023e02d8eb8b12a538e4ef63f0710cedb6d218180d909ec86098df7f5c69e22903495f
6
+ metadata.gz: b6c5363178b41c1658f553ff9552e5a9ed5816c44599b061b6843db4eeea416e78c16b27a8e5531b90c38be9c1221ec30617cb504b78ea70548373b325d5d27a
7
+ data.tar.gz: 9f56fd95903126651ed88cee2b6ceeabaf62d86e3eeed0cc5849a803110c526a7d8f8ee98ddb17ed60ea488b92f006dbfcb25c9f3bbe8b67eba8a6a446a4710e
@@ -2,7 +2,7 @@
2
2
 
3
3
  module Libdatadog
4
4
  # Current libdatadog version
5
- LIB_VERSION = "6.0.0"
5
+ LIB_VERSION = "7.0.0"
6
6
 
7
7
  GEM_MAJOR_VERSION = "1"
8
8
  GEM_MINOR_VERSION = "0"
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 = Gem::Platform.local.to_s
12
+ current_platform = self.current_platform
13
13
 
14
- if RbConfig::CONFIG["arch"].include?("-musl") && !current_platform.include?("-musl")
15
- # Fix/workaround for https://github.com/DataDog/dd-trace-rb/issues/2222
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 we want
23
- # in other situations -- for instance, it turns `x86_64-linux-gnu` to `x86_64-linux`. So for now we only add this
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
- current_platform = RbConfig::CONFIG["arch"]
54
+ RbConfig::CONFIG["arch"]
55
+ else
56
+ platform
29
57
  end
58
+ end
30
59
 
31
- return unless available_binaries.include?(current_platform)
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
- File.absolute_path(File.dirname(pkgconfig_file))
38
- end
63
+ return unless pkgconfig_folder
39
64
 
40
- private_class_method def self.vendor_directory
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