libdatadog 2.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 (52) 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-7.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/LICENSE-3rdparty.yml +29615 -0
  5. data/vendor/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-2.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl → libdatadog-7.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/include/datadog/common.h +346 -122
  8. data/vendor/{libdatadog-2.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-7.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/include/datadog/profiling.h +159 -49
  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-2.0.0 → libdatadog-7.0.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/pkgconfig/datadog_profiling_with_rpath.pc +3 -5
  12. data/vendor/libdatadog-7.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/LICENSE-3rdparty.yml +29615 -0
  13. data/vendor/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-2.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 +346 -122
  16. data/vendor/{libdatadog-2.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 +159 -49
  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-2.0.0 → libdatadog-7.0.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/lib/pkgconfig/datadog_profiling_with_rpath.pc +3 -5
  20. data/vendor/libdatadog-7.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/LICENSE-3rdparty.yml +29615 -0
  21. data/vendor/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-2.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-7.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu}/include/datadog/common.h +346 -122
  24. data/vendor/{libdatadog-2.0.0 → libdatadog-7.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/profiling.h +159 -49
  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-2.0.0 → libdatadog-7.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/lib/pkgconfig/datadog_profiling_with_rpath.pc +3 -5
  28. data/vendor/libdatadog-7.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/LICENSE-3rdparty.yml +29615 -0
  29. data/vendor/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-2.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 +346 -122
  32. data/vendor/{libdatadog-2.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-7.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl}/include/datadog/profiling.h +159 -49
  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-2.0.0 → libdatadog-7.0.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/lib/pkgconfig/datadog_profiling_with_rpath.pc +3 -5
  36. metadata +45 -33
  37. data/vendor/libdatadog-2.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/LICENSE-3rdparty.yml +0 -1183
  38. data/vendor/libdatadog-2.0.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
  39. data/vendor/libdatadog-2.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/LICENSE-3rdparty.yml +0 -1183
  40. data/vendor/libdatadog-2.0.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/lib/libdatadog_profiling.so +0 -0
  41. data/vendor/libdatadog-2.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/LICENSE-3rdparty.yml +0 -1183
  42. data/vendor/libdatadog-2.0.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
  43. data/vendor/libdatadog-2.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/LICENSE-3rdparty.yml +0 -1183
  44. data/vendor/libdatadog-2.0.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/lib/libdatadog_profiling.so +0 -0
  45. /data/vendor/{libdatadog-2.0.0 → libdatadog-7.0.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/LICENSE +0 -0
  46. /data/vendor/{libdatadog-2.0.0 → libdatadog-7.0.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/NOTICE +0 -0
  47. /data/vendor/{libdatadog-2.0.0 → libdatadog-7.0.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/LICENSE +0 -0
  48. /data/vendor/{libdatadog-2.0.0 → libdatadog-7.0.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/NOTICE +0 -0
  49. /data/vendor/{libdatadog-2.0.0 → libdatadog-7.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/LICENSE +0 -0
  50. /data/vendor/{libdatadog-2.0.0 → libdatadog-7.0.0}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/NOTICE +0 -0
  51. /data/vendor/{libdatadog-2.0.0 → libdatadog-7.0.0}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/LICENSE +0 -0
  52. /data/vendor/{libdatadog-2.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: 76a7e136cd6cf9297e85c223ed571751dc6ede185a9ceeca70114171b933d650
4
- data.tar.gz: '089d17eb9cc5fbbbd584aac4620a256e385b3bd3178d8670e25c4be3aba42394'
3
+ metadata.gz: f2990bbd36be23ec2638888a20c05cdeea1ac6fb55267ca47a732e13861c4e4d
4
+ data.tar.gz: c18aa3dd3a9f194d4d733e5dced7ffd8410fe2fb9fdf9b2d3a29f99560644458
5
5
  SHA512:
6
- metadata.gz: df384301ed0a3974428d01c755e73e4d6dfffc2fe843f4e9b6570a5137dd9c36773be084db496832dec40f9c5bf8b542e876fe67005ab1acbaca1164bd368999
7
- data.tar.gz: e529479f6f0e3d5e1f232f5fbf7a09aaa572eecc1de77025c36dee24adef45671345be50157f9b929860fa35c652ac9612e377c901ac86122aba63a492c713c9
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 = "2.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