opentelemetry-common 0.25.0 → 0.25.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: 8a6d7ea8309eb2e2514ced5c468cf8dbec4e7b0e66f786dc05e935a209d97eab
4
- data.tar.gz: 7a0b7f1a87587f571a363c8f94845e4390b612f09fcdeba2b44c92b95b3f8a1a
3
+ metadata.gz: '097eba92f7929c8f874b97f8c618bb8be5585afef3c3103ae31d66dddca4d3d4'
4
+ data.tar.gz: 1d8fb2e9996a96f53a5c3a5fbc0abfb35b1e4077e7a857995ce2d08d1455cc11
5
5
  SHA512:
6
- metadata.gz: c04c636cc633405b6576c99ccaed1f9c041766ac818c986ec0e4616145cb9a261f7b9268744fa8119e9b6883a671b51849ce6bee26f6ec5b4b115c9cdc607e4a
7
- data.tar.gz: bb03e231aaa124af4242bfa91b066814ff50a111efcac437f4c36ee284f26049bfe0acb7c388e65cff17cacf010fde7f65c8f5c6f0e3087a1331d325245748c0
6
+ metadata.gz: 123478756121ea8d2e96f74052137e8ac911fe03dc969ac2c7b8412e31dc300603de386dc71b578677f28caf9b6608181840a3d48c185e082f40b5b2894316b0
7
+ data.tar.gz: 88c47545222c8de12a0448c552af86f2a4716681abf4f873a51208e203ece3b01eb7dd4a43569d40009faefacc28916c76f093100c47fc478f190f5a4e97b800
data/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # Release History: opentelemetry-common
2
2
 
3
+ ### v0.25.2 / 2026-09-29
4
+
5
+ * FIXED: Normalize UTF-8 attribute strings (#2259)
6
+
7
+ ### v0.25.1 / 2026-07-08
8
+
9
+ * DOCS: Update source for gemspec links to RubyDoc (#2123)
10
+
3
11
  ### v0.25.0 / 2026-05-12
4
12
 
5
13
  * ADDED: Add git tag to source URI in gemspec (#2101)
@@ -12,4 +12,4 @@ module OpenTelemetry
12
12
  end
13
13
  end
14
14
 
15
- require_relative './http/client_context'
15
+ require_relative 'http/client_context'
@@ -23,14 +23,13 @@ module OpenTelemetry
23
23
  # form to the original. The resulting keys will be lowercase and
24
24
  # underscores will be replaced with dashes.
25
25
  def keys(carrier)
26
- carrier.keys.map(&method(:from_rack_key))
26
+ carrier.keys.map { |k| from_rack_key(k) }
27
27
  end
28
28
 
29
29
  private
30
30
 
31
31
  def to_rack_key(key)
32
- # Use + for mutable string interpolation in pre-Ruby 3.0.
33
- ret = +"HTTP_#{key}"
32
+ ret = "HTTP_#{key}"
34
33
  ret.tr!('-', '_')
35
34
  ret.upcase!
36
35
  ret
@@ -4,8 +4,8 @@
4
4
  #
5
5
  # SPDX-License-Identifier: Apache-2.0
6
6
 
7
- require_relative './propagation/rack_env_getter'
8
- require_relative './propagation/symbol_key_getter'
7
+ require_relative 'propagation/rack_env_getter'
8
+ require_relative 'propagation/symbol_key_getter'
9
9
 
10
10
  module OpenTelemetry
11
11
  module Common
@@ -54,9 +54,9 @@ module OpenTelemetry
54
54
  #
55
55
  # @param [String] string The string to be utf8 encoded
56
56
  # @param [optional boolean] binary This option is for displaying binary data
57
- # @param [optional String] placeholder The fallback string to be used if encoding fails
57
+ # @param [String, nil] placeholder The fallback value to be used if encoding fails
58
58
  #
59
- # @return [String]
59
+ # @return [String, nil]
60
60
  def utf8_encode(string, binary: false, placeholder: STRING_PLACEHOLDER)
61
61
  string = string.to_s
62
62
 
@@ -66,6 +66,11 @@ module OpenTelemetry
66
66
  string.encode('UTF-8', 'binary', invalid: :replace, undef: :replace, replace: '')
67
67
  elsif string.encoding == ::Encoding::UTF_8
68
68
  string
69
+ elsif string.encoding == ::Encoding::ASCII_8BIT
70
+ utf8_string = string.dup.force_encoding(::Encoding::UTF_8)
71
+ raise Encoding::InvalidByteSequenceError, 'binary string is not valid UTF-8' unless utf8_string.valid_encoding?
72
+
73
+ utf8_string
69
74
  else
70
75
  string.encode(::Encoding::UTF_8)
71
76
  end
@@ -82,7 +87,7 @@ module OpenTelemetry
82
87
  #
83
88
  # @return [String]
84
89
  def truncate(string, size)
85
- string.size > size ? "#{string[0...size - 3]}..." : string
90
+ string.size > size ? "#{string[0...(size - 3)]}..." : string
86
91
  end
87
92
 
88
93
  def truncate_attribute_value(value, limit)
@@ -104,7 +109,7 @@ module OpenTelemetry
104
109
  def untraced(context = Context.current)
105
110
  context = context.set_value(UNTRACED_KEY, true)
106
111
  if block_given?
107
- Context.with_current(context) { |ctx| yield ctx }
112
+ Context.with_current(context) { |ctx| yield ctx } # rubocop:disable Style/ExplicitBlockArgument
108
113
  else
109
114
  context
110
115
  end
@@ -164,4 +169,4 @@ module OpenTelemetry
164
169
  end
165
170
  end
166
171
 
167
- require_relative './http/client_context'
172
+ require_relative 'http/client_context'
@@ -6,6 +6,6 @@
6
6
 
7
7
  module OpenTelemetry
8
8
  module Common
9
- VERSION = '0.25.0'
9
+ VERSION = '0.25.2'
10
10
  end
11
11
  end
@@ -4,4 +4,4 @@
4
4
  #
5
5
  # SPDX-License-Identifier: Apache-2.0
6
6
 
7
- require_relative './opentelemetry/common'
7
+ require_relative 'opentelemetry/common'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: opentelemetry-common
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.25.0
4
+ version: 0.25.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - OpenTelemetry Authors
@@ -23,104 +23,6 @@ dependencies:
23
23
  - - "~>"
24
24
  - !ruby/object:Gem::Version
25
25
  version: '1.0'
26
- - !ruby/object:Gem::Dependency
27
- name: minitest
28
- requirement: !ruby/object:Gem::Requirement
29
- requirements:
30
- - - "~>"
31
- - !ruby/object:Gem::Version
32
- version: '5.0'
33
- type: :development
34
- prerelease: false
35
- version_requirements: !ruby/object:Gem::Requirement
36
- requirements:
37
- - - "~>"
38
- - !ruby/object:Gem::Version
39
- version: '5.0'
40
- - !ruby/object:Gem::Dependency
41
- name: opentelemetry-test-helpers
42
- requirement: !ruby/object:Gem::Requirement
43
- requirements:
44
- - - ">="
45
- - !ruby/object:Gem::Version
46
- version: '0'
47
- type: :development
48
- prerelease: false
49
- version_requirements: !ruby/object:Gem::Requirement
50
- requirements:
51
- - - ">="
52
- - !ruby/object:Gem::Version
53
- version: '0'
54
- - !ruby/object:Gem::Dependency
55
- name: rake
56
- requirement: !ruby/object:Gem::Requirement
57
- requirements:
58
- - - "~>"
59
- - !ruby/object:Gem::Version
60
- version: '13.3'
61
- type: :development
62
- prerelease: false
63
- version_requirements: !ruby/object:Gem::Requirement
64
- requirements:
65
- - - "~>"
66
- - !ruby/object:Gem::Version
67
- version: '13.3'
68
- - !ruby/object:Gem::Dependency
69
- name: rubocop
70
- requirement: !ruby/object:Gem::Requirement
71
- requirements:
72
- - - "~>"
73
- - !ruby/object:Gem::Version
74
- version: '1.65'
75
- type: :development
76
- prerelease: false
77
- version_requirements: !ruby/object:Gem::Requirement
78
- requirements:
79
- - - "~>"
80
- - !ruby/object:Gem::Version
81
- version: '1.65'
82
- - !ruby/object:Gem::Dependency
83
- name: simplecov
84
- requirement: !ruby/object:Gem::Requirement
85
- requirements:
86
- - - "~>"
87
- - !ruby/object:Gem::Version
88
- version: '0.17'
89
- type: :development
90
- prerelease: false
91
- version_requirements: !ruby/object:Gem::Requirement
92
- requirements:
93
- - - "~>"
94
- - !ruby/object:Gem::Version
95
- version: '0.17'
96
- - !ruby/object:Gem::Dependency
97
- name: yard
98
- requirement: !ruby/object:Gem::Requirement
99
- requirements:
100
- - - "~>"
101
- - !ruby/object:Gem::Version
102
- version: '0.9'
103
- type: :development
104
- prerelease: false
105
- version_requirements: !ruby/object:Gem::Requirement
106
- requirements:
107
- - - "~>"
108
- - !ruby/object:Gem::Version
109
- version: '0.9'
110
- - !ruby/object:Gem::Dependency
111
- name: yard-doctest
112
- requirement: !ruby/object:Gem::Requirement
113
- requirements:
114
- - - "~>"
115
- - !ruby/object:Gem::Version
116
- version: 0.1.6
117
- type: :development
118
- prerelease: false
119
- version_requirements: !ruby/object:Gem::Requirement
120
- requirements:
121
- - - "~>"
122
- - !ruby/object:Gem::Version
123
- version: 0.1.6
124
26
  description: Common helpers for OpenTelemetry
125
27
  email:
126
28
  - cncf-opentelemetry-contributors@lists.cncf.io
@@ -145,10 +47,10 @@ homepage: https://github.com/open-telemetry/opentelemetry-ruby
145
47
  licenses:
146
48
  - Apache-2.0
147
49
  metadata:
148
- changelog_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-common/v0.25.0/file.CHANGELOG.html
149
- source_code_uri: https://github.com/open-telemetry/opentelemetry-ruby/tree/opentelemetry-common/v0.25.0/common
50
+ changelog_uri: https://rubydoc.info/gems/opentelemetry-common/0.25.2/file/CHANGELOG.md
51
+ source_code_uri: https://github.com/open-telemetry/opentelemetry-ruby/tree/opentelemetry-common/v0.25.2/common
150
52
  bug_tracker_uri: https://github.com/open-telemetry/opentelemetry-ruby/issues
151
- documentation_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-common/v0.25.0
53
+ documentation_uri: https://rubydoc.info/gems/opentelemetry-common/0.25.2
152
54
  rdoc_options: []
153
55
  require_paths:
154
56
  - lib
@@ -163,7 +65,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
163
65
  - !ruby/object:Gem::Version
164
66
  version: '0'
165
67
  requirements: []
166
- rubygems_version: 4.0.6
68
+ rubygems_version: 4.0.20
167
69
  specification_version: 4
168
70
  summary: Common helpers for OpenTelemetry
169
71
  test_files: []