libdatadog 6.0.0.1.0 → 7.0.0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (48) 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/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-7.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/LICENSE-3rdparty.yml +15459 -6284
  5. data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/bin/libdatadog-crashtracking-receiver +0 -0
  6. data/vendor/libdatadog-7.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/blazesym.h +895 -0
  7. data/vendor/{libdatadog-6.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-7.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/include/datadog/common.h +135 -20
  8. data/vendor/{libdatadog-6.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu → libdatadog-7.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/include/datadog/profiling.h +54 -38
  9. data/vendor/libdatadog-7.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/telemetry.h +290 -0
  10. data/vendor/libdatadog-7.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
  11. data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/pkgconfig/datadog_profiling_with_rpath.pc +2 -4
  12. data/vendor/{libdatadog-6.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl → libdatadog-7.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/LICENSE-3rdparty.yml +15459 -6284
  13. data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/bin/libdatadog-crashtracking-receiver +0 -0
  14. data/vendor/libdatadog-7.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/blazesym.h +895 -0
  15. data/vendor/{libdatadog-6.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-7.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/include/datadog/common.h +135 -20
  16. data/vendor/{libdatadog-6.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl → libdatadog-7.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/include/datadog/profiling.h +54 -38
  17. data/vendor/libdatadog-7.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/telemetry.h +290 -0
  18. data/vendor/libdatadog-7.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/lib/libdatadog_profiling.so +0 -0
  19. data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/lib/pkgconfig/datadog_profiling_with_rpath.pc +2 -4
  20. data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/LICENSE-3rdparty.yml +15459 -6284
  21. 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
  22. data/vendor/libdatadog-7.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/blazesym.h +895 -0
  23. data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/common.h +135 -20
  24. data/vendor/{libdatadog-6.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-7.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu}/include/datadog/profiling.h +54 -38
  25. data/vendor/libdatadog-7.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/telemetry.h +290 -0
  26. data/vendor/libdatadog-7.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
  27. 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
  28. data/vendor/{libdatadog-6.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-7.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl}/LICENSE-3rdparty.yml +15459 -6284
  29. 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
  30. data/vendor/libdatadog-7.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/blazesym.h +895 -0
  31. data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/common.h +135 -20
  32. data/vendor/{libdatadog-6.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-7.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl}/include/datadog/profiling.h +54 -38
  33. data/vendor/libdatadog-7.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/telemetry.h +290 -0
  34. data/vendor/libdatadog-7.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/lib/libdatadog_profiling.so +0 -0
  35. 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
  36. metadata +42 -34
  37. data/vendor/libdatadog-6.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
  38. data/vendor/libdatadog-6.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/lib/libdatadog_profiling.so +0 -0
  39. data/vendor/libdatadog-6.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
  40. data/vendor/libdatadog-6.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/lib/libdatadog_profiling.so +0 -0
  41. /data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/LICENSE +0 -0
  42. /data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/NOTICE +0 -0
  43. /data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/LICENSE +0 -0
  44. /data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/NOTICE +0 -0
  45. /data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/LICENSE +0 -0
  46. /data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/NOTICE +0 -0
  47. /data/vendor/{libdatadog-6.0.0 → libdatadog-7.0.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/LICENSE +0 -0
  48. /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: b9c7f7bbaba6f18af1f9266ebbe4137bc77e3e00a30abd4de722def9eebef462
4
- data.tar.gz: f529fbb0f17aee6eaf1d295bb8f469bb17ae6e17985eba32e290c1770592dbd4
3
+ metadata.gz: f2990bbd36be23ec2638888a20c05cdeea1ac6fb55267ca47a732e13861c4e4d
4
+ data.tar.gz: c18aa3dd3a9f194d4d733e5dced7ffd8410fe2fb9fdf9b2d3a29f99560644458
5
5
  SHA512:
6
- metadata.gz: '03392d974333aaf15630eb541bc879d67b5c5a4958384e68ebe1e6e2d128b77334dd41a1f5a0c42a26e21012601c33d23f42be7aedb92501cf4ac0ae337ad90a'
7
- data.tar.gz: 29b06d9fb3a3ff7e2e88fa54da65806820ba7788acb97f4c162f2f33a581d348d27963d711f68d81a2e130ae41b41b41f445cf3e2e7a9ca6dfea3c70df96f80f
6
+ metadata.gz: 1667c1b189b7ef2eb4b885266553a4a821e45acd7e36e3a32a1ef9ee295f44ccc768d9f4b2bf13a4715649df0d694da23d11a0f4a09ad58c3cbde441091e070e
7
+ data.tar.gz: f8bee017da35b91c69421e14bdd054c4a8e0c14652bc446c553f72a6c86d24293a5f4143e6bf9f751d2860612e2e69ee6a444dccbf04d84fea4b3e099715b695
@@ -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