newrelic-infinite_tracing 8.10.1 → 8.11.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: eabd938311739537060fcf0ab4679775ea426553455c1e17a74d5ee538b5b093
4
- data.tar.gz: cebafe3ed829917eea343646c288b30a6146d8685464a195d092ff19de73255a
3
+ metadata.gz: d7dfe6b33e33cdfb49d3c4bc0ef9e766de0139b0aaae353bd7720abe831c6ea6
4
+ data.tar.gz: 161654c037fea561ed979e70e7a7168495f233177b35a185e1f90c4e326a0599
5
5
  SHA512:
6
- metadata.gz: 4f1f81459f770ada600db6ad53e7b866f33c3f49c1e6fc3af88b5eafb0b8ec6715541c15815a18ef8d56fca7c17a761e468bdd2cb429388336de5da26872d15d
7
- data.tar.gz: d8b5f59f95d50a8270ed7a3b7aa508b2353497155b911f1d34b82593d3d8b5a1fdc80c25028fc246b10397e15fb98896e8508b920eee96422e80c3252319f1bc
6
+ metadata.gz: bdef9830574c92710deab3a8377675539d5394b401cbedbbaf744d81fb89aad7d6ec3072b0cb24d73e61bc01f9e85590be45b1cb958566c621499ed395e6a4f6
7
+ data.tar.gz: 3c005a7e4983ab120ad84cdceeabc0129161695411ee0c5bb52580851b3e429a9b7fb4a94cf929b4a9d1eb7681fb602db592b4a7a4a4fed6fe24d2437d13fb16
data/Gemfile CHANGED
@@ -1,4 +1,3 @@
1
- # encoding: utf-8
2
1
  # This file is distributed under New Relic's license terms.
3
2
  # See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
4
3
  # frozen_string_literal: true
data/Rakefile CHANGED
@@ -1,4 +1,3 @@
1
- # encoding: utf-8
2
1
  # This file is distributed under New Relic's license terms.
3
2
  # See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
4
3
  # frozen_string_literal: true
@@ -1,4 +1,3 @@
1
- # encoding: utf-8
2
1
  # This file is distributed under New Relic's license terms.
3
2
  # See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
4
3
  # frozen_string_literal: true
@@ -1,4 +1,3 @@
1
- # encoding: utf-8
2
1
  # This file is distributed under New Relic's license terms.
3
2
  # See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
4
3
  # frozen_string_literal: true
@@ -12,7 +11,7 @@ module NewRelic
12
11
  return if transaction.ignore?
13
12
 
14
13
  tracer = ::NewRelic::Agent.agent.infinite_tracer
15
- tracer << Proc.new { SpanEventPrimitive.for_datastore_segment(self) }
14
+ tracer << proc { SpanEventPrimitive.for_datastore_segment(self) }
16
15
  end
17
16
  end
18
17
  end
@@ -1,4 +1,3 @@
1
- # encoding: utf-8
2
1
  # This file is distributed under New Relic's license terms.
3
2
  # See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
4
3
  # frozen_string_literal: true
@@ -12,7 +11,7 @@ module NewRelic
12
11
  return if transaction.ignore?
13
12
 
14
13
  tracer = ::NewRelic::Agent.agent.infinite_tracer
15
- tracer << Proc.new { SpanEventPrimitive.for_external_request_segment(self) }
14
+ tracer << proc { SpanEventPrimitive.for_external_request_segment(self) }
16
15
  end
17
16
  end
18
17
  end
@@ -1,4 +1,3 @@
1
- # encoding: utf-8
2
1
  # This file is distributed under New Relic's license terms.
3
2
  # See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
4
3
  # frozen_string_literal: true
@@ -16,7 +15,7 @@ module NewRelic
16
15
  return if transaction.ignore?
17
16
 
18
17
  tracer = ::NewRelic::Agent.agent.infinite_tracer
19
- tracer << Proc.new { SpanEventPrimitive.for_segment(self) }
18
+ tracer << proc { SpanEventPrimitive.for_segment(self) }
20
19
  end
21
20
  end
22
21
  end
@@ -1,4 +1,3 @@
1
- # encoding: utf-8
2
1
  # This file is distributed under New Relic's license terms.
3
2
  # See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
4
3
  # frozen_string_literal: true
@@ -1,4 +1,3 @@
1
- # encoding: utf-8
2
1
  # This file is distributed under New Relic's license terms.
3
2
  # See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
4
3
  # frozen_string_literal: true
@@ -6,13 +5,17 @@
6
5
  module NewRelic::Agent
7
6
  module InfiniteTracing
8
7
  class Channel
8
+ COMPRESSION_LEVELS = %i[none low medium high].freeze
9
+ DEFAULT_COMPRESSION_LEVEL = :none
10
+
9
11
  def stub
10
12
  NewRelic::Agent.logger.debug("Infinite Tracer Opening Channel to #{host_and_port}")
11
13
 
12
14
  Com::Newrelic::Trace::V1::IngestService::Stub.new( \
13
15
  host_and_port,
14
16
  credentials,
15
- channel_override: channel
17
+ channel_override: channel,
18
+ channel_args: channel_args
16
19
  )
17
20
  end
18
21
 
@@ -20,6 +23,37 @@ module NewRelic::Agent
20
23
  GRPC::Core::Channel.new(host_and_port, settings, credentials)
21
24
  end
22
25
 
26
+ def channel_args
27
+ return NewRelic::EMPTY_HASH unless compression_enabled?
28
+
29
+ GRPC::Core::CompressionOptions.new(compression_options).to_channel_arg_hash
30
+ end
31
+
32
+ def compression_enabled?
33
+ compression_level != :none
34
+ end
35
+
36
+ def compression_level
37
+ @compression_level ||= begin
38
+ level = if valid_compression_level?(configured_compression_level)
39
+ configured_compression_level
40
+ else
41
+ DEFAULT_COMPRESSION_LEVEL
42
+ end
43
+ NewRelic::Agent.logger.debug("Infinite Tracer compression level set to #{level}")
44
+ level
45
+ end
46
+ end
47
+
48
+ def compression_options
49
+ {default_algorithm: :gzip,
50
+ default_level: compression_level}
51
+ end
52
+
53
+ def configured_compression_level
54
+ NewRelic::Agent.config[:'infinite_tracing.compression_level']
55
+ end
56
+
23
57
  def credentials
24
58
  # Uses system configured certificates by default
25
59
  GRPC::Core::ChannelCredentials.new
@@ -35,6 +69,15 @@ module NewRelic::Agent
35
69
  'grpc.enable_deadline_checking' => 0
36
70
  }
37
71
  end
72
+
73
+ def valid_compression_level?(level)
74
+ return true if COMPRESSION_LEVELS.include?(level)
75
+
76
+ NewRelic::Agent.logger.error("Invalid compression level '#{level}' specified! Must be one of " \
77
+ "#{COMPRESSION_LEVELS.join('|')}. Using default level of '#{DEFAULT_COMPRESSION_LEVEL}'")
78
+
79
+ false
80
+ end
38
81
  end
39
82
  end
40
83
  end
@@ -1,4 +1,3 @@
1
- # encoding: utf-8
2
1
  # This file is distributed under New Relic's license terms.
3
2
  # See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
4
3
  # frozen_string_literal: true
@@ -26,6 +25,10 @@ module NewRelic::Agent
26
25
  buffer << segment
27
26
  end
28
27
 
28
+ def batching_enabled?
29
+ NewRelic::Agent.config[:'infinite_tracing.batching']
30
+ end
31
+
29
32
  # Transfers spans in streaming buffer from previous
30
33
  # client (if any) and returns self (so we chain the call)
31
34
  def transfer(previous_client)
@@ -143,8 +146,9 @@ module NewRelic::Agent
143
146
 
144
147
  def start_streaming(exponential_backoff = true)
145
148
  return if suspended?
149
+
146
150
  Connection.instance.wait_for_agent_connect
147
- @lock.synchronize { @response_handler = record_spans(exponential_backoff) }
151
+ @lock.synchronize { response_handler(exponential_backoff) }
148
152
  end
149
153
 
150
154
  def record_spans(exponential_backoff)
@@ -154,6 +158,10 @@ module NewRelic::Agent
154
158
  def record_span_batches(exponential_backoff)
155
159
  RecordStatusHandler.new(self, Connection.record_span_batches(self, buffer.batch_enumerator, exponential_backoff))
156
160
  end
161
+
162
+ def response_handler(backoff)
163
+ @response_handler = batching_enabled? ? record_span_batches(backoff) : record_spans(backoff)
164
+ end
157
165
  end
158
166
  end
159
167
  end
@@ -1,4 +1,3 @@
1
- # encoding: utf-8
2
1
  # This file is distributed under New Relic's license terms.
3
2
  # See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
4
3
  # frozen_string_literal: true
@@ -59,7 +58,7 @@ module NewRelic::Agent
59
58
  # If the port is declared on the host entry, it overrides the port entry because otherwise
60
59
  # we'd need to figure out if user supplied the port or if the default source config set
61
60
  # the port. To help with debugging configuration issues, we log whenever the port entry
62
- # is overriden by the presence of the port on the host entry.
61
+ # is overridden by the presence of the port on the host entry.
63
62
  def port_from_host_entry
64
63
  port_str = NewRelic::Agent.config[:'infinite_tracing.trace_observer.host'].scan(%r{:(\d+)$}).flatten
65
64
  if port = (port_str[0] and port_str[0].to_i)
@@ -75,7 +74,7 @@ module NewRelic::Agent
75
74
  end
76
75
 
77
76
  # The scheme is based on whether the Trace Observer is running locally or remotely.
78
- # Remote unsecure (unencypted) streaming is disallowed!
77
+ # Remote unsecure (unencrypted) streaming is disallowed!
79
78
  def trace_observer_scheme
80
79
  local? ? NewRelic::HTTP : NewRelic::HTTPS
81
80
  end
@@ -1,4 +1,3 @@
1
- # encoding: utf-8
2
1
  # This file is distributed under New Relic's license terms.
3
2
  # See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
4
3
  # frozen_string_literal: true
@@ -52,7 +51,7 @@ module NewRelic::Agent
52
51
  # so we're able to signal the client to restart when connectivity to the
53
52
  # server is disrupted.
54
53
  def record_span_batches(client, enumerator, exponential_backoff)
55
- instance.record_span_batch(client, enumerator, exponential_backoff)
54
+ instance.record_span_batches(client, enumerator, exponential_backoff)
56
55
  end
57
56
 
58
57
  def metadata
@@ -155,7 +154,7 @@ module NewRelic::Agent
155
154
  rescue => exception
156
155
  retry_connection_period = retry_connection_period(exponential_backoff)
157
156
  ::NewRelic::Agent.logger.error("Error establishing connection with infinite tracing service:", exception)
158
- ::NewRelic::Agent.logger.info("Will re-attempt infinte tracing connection in #{retry_connection_period} seconds")
157
+ ::NewRelic::Agent.logger.info("Will re-attempt infinite tracing connection in #{retry_connection_period} seconds")
159
158
  sleep(retry_connection_period)
160
159
  note_connect_failure
161
160
  retry
@@ -1,4 +1,3 @@
1
- # encoding: utf-8
2
1
  # This file is distributed under New Relic's license terms.
3
2
  # See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
4
3
  # frozen_string_literal: true
@@ -1,4 +1,3 @@
1
- # encoding: utf-8
2
1
  # This file is distributed under New Relic's license terms.
3
2
  # See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
4
3
  # frozen_string_literal: true
@@ -1,4 +1,3 @@
1
- # encoding: utf-8
2
1
  # This file is distributed under New Relic's license terms.
3
2
  # See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
4
3
  # frozen_string_literal: true
@@ -6,7 +5,6 @@
6
5
  # Generated by the protocol buffer compiler. DO NOT EDIT!
7
6
  # Source: infinite_tracing.proto for package 'com.newrelic.trace.v1'
8
7
  # Original file comments:
9
- # encoding: utf-8
10
8
  # This file is distributed under New Relic's license terms.
11
9
  # See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
12
10
  #
@@ -1,4 +1,3 @@
1
- # encoding: utf-8
2
1
  # This file is distributed under New Relic's license terms.
3
2
  # See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
4
3
  # frozen_string_literal: true
@@ -1,4 +1,3 @@
1
- # encoding: utf-8
2
1
  # This file is distributed under New Relic's license terms.
3
2
  # See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
4
3
  # frozen_string_literal: true
@@ -18,26 +17,6 @@ module NewRelic::Agent
18
17
  @messages_seen ? @messages_seen.messages_seen : 0
19
18
  end
20
19
 
21
- def start_handler
22
- Worker.new(self.class.name) do
23
- begin
24
- @enumerator.each do |response|
25
- break if response.nil? || response.is_a?(Exception)
26
- @lock.synchronize do
27
- @messages_seen = response
28
- NewRelic::Agent.logger.debug("gRPC Infinite Tracer Observer saw #{messages_seen} messages")
29
- end
30
- end
31
- NewRelic::Agent.logger.debug("gRPC Infinite Tracer Observer closed the stream")
32
- @client.handle_close
33
- rescue => error
34
- @client.handle_error(error)
35
- end
36
- end
37
- rescue => error
38
- NewRelic::Agent.logger.error("gRPC Worker Error", error)
39
- end
40
-
41
20
  def stop
42
21
  return if @worker.nil?
43
22
  @lock.synchronize do
@@ -46,6 +25,30 @@ module NewRelic::Agent
46
25
  @worker = nil
47
26
  end
48
27
  end
28
+
29
+ private
30
+
31
+ def handle_response
32
+ @enumerator.each do |response|
33
+ break if response.nil? || response.is_a?(Exception)
34
+ @lock.synchronize do
35
+ @messages_seen = response
36
+ NewRelic::Agent.logger.debug("gRPC Infinite Tracer Observer saw #{messages_seen} messages")
37
+ end
38
+ end
39
+ end
40
+
41
+ def start_handler
42
+ Worker.new(self.class.name) do
43
+ handle_response
44
+ NewRelic::Agent.logger.debug("gRPC Infinite Tracer Observer closed the stream")
45
+ @client.handle_close
46
+ rescue => error
47
+ @client.handle_error(error)
48
+ end
49
+ rescue => error
50
+ NewRelic::Agent.logger.error("gRPC Worker Error", error)
51
+ end
49
52
  end
50
53
  end
51
54
  end
@@ -1,4 +1,3 @@
1
- # encoding: utf-8
2
1
  # This file is distributed under New Relic's license terms.
3
2
  # See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
4
3
  # frozen_string_literal: true
@@ -1,4 +1,3 @@
1
- # encoding: utf-8
2
1
  # This file is distributed under New Relic's license terms.
3
2
  # See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
4
3
  # frozen_string_literal: true
@@ -1,4 +1,3 @@
1
- # encoding: utf-8
2
1
  # This file is distributed under New Relic's license terms.
3
2
  # See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
4
3
  # frozen_string_literal: true
@@ -1,4 +1,3 @@
1
- # encoding: utf-8
2
1
  # This file is distributed under New Relic's license terms.
3
2
  # See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
4
3
  # frozen_string_literal: true
@@ -1,4 +1,3 @@
1
- # encoding: utf-8
2
1
  # This file is distributed under New Relic's license terms.
3
2
  # See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
4
3
  # frozen_string_literal: true
@@ -1,4 +1,3 @@
1
- # encoding: utf-8
2
1
  # This file is distributed under New Relic's license terms.
3
2
  # See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
4
3
  # frozen_string_literal: true
@@ -1,4 +1,3 @@
1
- # encoding: utf-8
2
1
  # This file is distributed under New Relic's license terms.
3
2
  # See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
4
3
  # frozen_string_literal: true
@@ -1,4 +1,3 @@
1
- # encoding: utf-8
2
1
  # This file is distributed under New Relic's license terms.
3
2
  # See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
4
3
  # frozen_string_literal: true
@@ -1,4 +1,3 @@
1
- // encoding: utf-8
2
1
  // This file is distributed under New Relic's license terms.
3
2
  // See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
4
3
 
@@ -39,4 +38,4 @@ message AttributeValue {
39
38
 
40
39
  message RecordStatus {
41
40
  uint64 messages_seen = 1;
42
- }
41
+ }
@@ -1,4 +1,3 @@
1
- #-*- coding: utf-8 -*-
2
1
  # frozen_string_literal: true
3
2
 
4
3
  require 'fileutils'
@@ -69,7 +68,7 @@ Gem or plugin, hosted on https://github.com/newrelic/newrelic-ruby-agent/
69
68
  s.files = file_list
70
69
 
71
70
  s.homepage = "https://github.com/newrelic/newrelic-ruby-agent/tree/main/infinite_tracing"
72
- s.require_paths = ["lib", "infinite_tracing"]
71
+ s.require_paths = %w[lib infinite_tracing]
73
72
  s.summary = "New Relic Infinite Tracing for the Ruby agent"
74
73
 
75
74
  s.add_dependency 'newrelic_rpm', NewRelic::VERSION::STRING
@@ -78,7 +77,7 @@ Gem or plugin, hosted on https://github.com/newrelic/newrelic-ruby-agent/
78
77
  s.add_development_dependency 'rake', '12.3.3'
79
78
  s.add_development_dependency 'rb-inotify', '0.9.10' # locked to support < Ruby 2.3 (and listen 3.0.8)
80
79
  s.add_development_dependency 'listen', '3.0.8' # locked to support < Ruby 2.3
81
- s.add_development_dependency 'minitest', '~> 5.14.0'
80
+ s.add_development_dependency 'minitest', '~> 5.15'
82
81
  s.add_development_dependency 'mocha', '~> 1.9.0'
83
82
  s.add_development_dependency 'pry-nav', '~> 0.3.0'
84
83
  s.add_development_dependency 'pry-stack_explorer', '~> 0.4.9'
data/tasks/all.rb CHANGED
@@ -1,4 +1,3 @@
1
- # encoding: utf-8
2
1
  # This file is distributed under New Relic's license terms.
3
2
  # See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
4
3
  # frozen_string_literal: true
@@ -0,0 +1,25 @@
1
+ # This file is distributed under New Relic's license terms.
2
+ # See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
3
+ # frozen_string_literal: true
4
+
5
+ module License
6
+ def extract_license_terms(file_contents)
7
+ text = []
8
+ text << file_contents.shift while !file_contents.empty? && file_contents[0] =~ /^#/
9
+ text << ""
10
+ text
11
+ end
12
+
13
+ def add_license_preamble_and_remove_requires(output_path)
14
+ gemspec_path = File.expand_path(File.join(output_path, '..', '..', '..', '..', '..'))
15
+ license_terms = extract_license_terms(File.readlines(File.join(gemspec_path, "Gemfile")))
16
+ Dir.glob(File.join(output_path, "*.rb")) do |filename|
17
+ contents = File.readlines(filename)
18
+ contents.reject! { |r| r =~ /^\s*require\s.*$/ }
19
+ File.open(filename, 'w') do |output|
20
+ output.puts license_terms
21
+ output.puts contents
22
+ end
23
+ end
24
+ end
25
+ end
data/tasks/proto.rake CHANGED
@@ -1,34 +1,13 @@
1
- # encoding: utf-8
2
1
  # This file is distributed under New Relic's license terms.
3
2
  # See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
4
3
  # frozen_string_literal: true
5
4
 
5
+ require_relative 'helpers/license'
6
+ include License
7
+
6
8
  namespace :proto do
7
9
  desc "Generate proto files"
8
-
9
10
  task :generate do
10
- def extract_license_terms(file_contents)
11
- text = []
12
- text << file_contents.shift while !file_contents.empty? && file_contents[0] =~ /^#/
13
- text << ""
14
- text
15
- end
16
-
17
- # adds the NewRelic License notice to the top of the generated files
18
- # Removes require lines since these are replicated in the proto.rb file.
19
- def add_license_preamble_and_remove_requires(output_path)
20
- gemspec_path = File.expand_path(File.join(output_path, '..', '..', '..', '..', '..'))
21
- license_terms = extract_license_terms(File.readlines(File.join(gemspec_path, "Gemfile")))
22
- Dir.glob(File.join(output_path, "*.rb")) do |filename|
23
- contents = File.readlines(filename)
24
- contents.reject! { |r| r =~ /^\s*require\s.*$/ }
25
- File.open(filename, 'w') do |output|
26
- output.puts license_terms
27
- output.puts contents
28
- end
29
- end
30
- end
31
-
32
11
  gem_folder = File.expand_path(File.join(File.dirname(__FILE__), ".."))
33
12
  proto_filename = File.join(gem_folder, "lib", "new_relic", "proto", "infinite_tracing.proto")
34
13
  output_path = File.join(gem_folder, "lib", "new_relic", "infinite_tracing", "proto")
@@ -43,7 +22,7 @@ namespace :proto do
43
22
 
44
23
  if system(cmd)
45
24
  puts "Proto file generated!"
46
- add_license_preamble_and_remove_requires output_path
25
+ add_license_preamble_and_remove_requires(output_path)
47
26
  else
48
27
  puts "Failed to generate proto file."
49
28
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: newrelic-infinite_tracing
3
3
  version: !ruby/object:Gem::Version
4
- version: 8.10.1
4
+ version: 8.11.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tanna McClure
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2022-09-13 00:00:00.000000000 Z
14
+ date: 2022-10-11 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: newrelic_rpm
@@ -19,14 +19,14 @@ dependencies:
19
19
  requirements:
20
20
  - - '='
21
21
  - !ruby/object:Gem::Version
22
- version: 8.10.1
22
+ version: 8.11.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
27
  - - '='
28
28
  - !ruby/object:Gem::Version
29
- version: 8.10.1
29
+ version: 8.11.0
30
30
  - !ruby/object:Gem::Dependency
31
31
  name: grpc
32
32
  requirement: !ruby/object:Gem::Requirement
@@ -89,14 +89,14 @@ dependencies:
89
89
  requirements:
90
90
  - - "~>"
91
91
  - !ruby/object:Gem::Version
92
- version: 5.14.0
92
+ version: '5.15'
93
93
  type: :development
94
94
  prerelease: false
95
95
  version_requirements: !ruby/object:Gem::Requirement
96
96
  requirements:
97
97
  - - "~>"
98
98
  - !ruby/object:Gem::Version
99
- version: 5.14.0
99
+ version: '5.15'
100
100
  - !ruby/object:Gem::Dependency
101
101
  name: mocha
102
102
  requirement: !ruby/object:Gem::Requirement
@@ -259,6 +259,7 @@ files:
259
259
  - lib/proto/infinite_tracing.proto
260
260
  - newrelic-infinite_tracing.gemspec
261
261
  - tasks/all.rb
262
+ - tasks/helpers/license.rb
262
263
  - tasks/proto.rake
263
264
  homepage: https://github.com/newrelic/newrelic-ruby-agent/tree/main/infinite_tracing
264
265
  licenses: