newrelic_rpm 6.12.0.367 → 6.13.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (46) hide show
  1. checksums.yaml +4 -4
  2. data/.github/ISSUE_TEMPLATE/bug_report.md +31 -0
  3. data/.github/ISSUE_TEMPLATE/config.yml +5 -0
  4. data/.github/ISSUE_TEMPLATE/feature_request.md +24 -0
  5. data/.github/actions/annotate/README.md +79 -0
  6. data/.github/actions/annotate/action.yml +6 -0
  7. data/.github/actions/annotate/dist/index.js +433 -0
  8. data/.github/actions/annotate/index.js +25 -0
  9. data/.github/actions/annotate/package-lock.json +172 -0
  10. data/.github/actions/annotate/package.json +30 -0
  11. data/.github/actions/annotate/pre-commit +5 -0
  12. data/.github/actions/build-ruby/README.md +79 -0
  13. data/.github/actions/build-ruby/action.yml +15 -0
  14. data/.github/actions/build-ruby/dist/index.js +52683 -0
  15. data/.github/actions/build-ruby/index.js +514 -0
  16. data/.github/actions/build-ruby/package-lock.json +581 -0
  17. data/.github/actions/build-ruby/package.json +32 -0
  18. data/.github/actions/build-ruby/pre-commit +5 -0
  19. data/.github/pull_request_template.md +16 -0
  20. data/.github/workflows/ci.yml +212 -0
  21. data/.github/workflows/pr_review_checklist.yml +22 -0
  22. data/.github/workflows/release.yml +78 -0
  23. data/.github/workflows/scripts/rubygems-authenticate.py +13 -0
  24. data/.github/workflows/scripts/rubygems-publish.rb +32 -0
  25. data/.github/workflows/snyk.yml +27 -0
  26. data/.github/workflows/stale.yml +21 -0
  27. data/.gitignore +3 -0
  28. data/CHANGELOG.md +81 -8
  29. data/CONTRIBUTING.md +54 -11
  30. data/README.md +40 -16
  31. data/ROADMAP.md +24 -0
  32. data/lib/new_relic/agent.rb +2 -4
  33. data/lib/new_relic/agent/agent.rb +4 -0
  34. data/lib/new_relic/agent/http_clients/uri_util.rb +7 -7
  35. data/lib/new_relic/agent/instrumentation/rake.rb +1 -0
  36. data/lib/new_relic/agent/new_relic_service.rb +25 -3
  37. data/lib/new_relic/agent/transaction/external_request_segment.rb +2 -2
  38. data/lib/new_relic/agent/transaction/segment.rb +9 -5
  39. data/lib/new_relic/version.rb +1 -1
  40. data/lib/tasks/multiverse.rb +9 -0
  41. data/newrelic_rpm.gemspec +0 -1
  42. data/test/agent_helper.rb +6 -0
  43. metadata +29 -8
  44. data/.travis.yml +0 -240
  45. data/CODE_OF_CONDUCT.md +0 -46
  46. data/lib/new_relic/metrics.rb +0 -13
@@ -28,7 +28,7 @@ module NewRelic
28
28
 
29
29
  def initialize library, uri, procedure, start_time = nil # :nodoc:
30
30
  @library = library
31
- @uri = HTTPClients::URIUtil.parse_and_normalize_url(uri)
31
+ @uri = HTTPClients::URIUtil.obfuscated_uri(uri)
32
32
  @procedure = procedure
33
33
  @host_header = nil
34
34
  @app_data = nil
@@ -204,7 +204,7 @@ module NewRelic
204
204
  end
205
205
 
206
206
  def segment_complete
207
- params[:uri] = HTTPClients::URIUtil.filter_uri(uri)
207
+ params[:uri] = uri.to_s
208
208
  if cross_app_request?
209
209
  params[:transaction_guid] = transaction_guid
210
210
  end
@@ -13,16 +13,19 @@ module NewRelic
13
13
  # unscoped_metrics can be nil, a string, or array. we do this to save
14
14
  # object allocations. if allocations weren't important then we would
15
15
  # initialize it as an array that would be empty, have one item, or many items.
16
- attr_reader :unscoped_metrics, :attributes, :custom_transaction_attributes
16
+ attr_reader :unscoped_metrics, :custom_transaction_attributes
17
17
 
18
18
  def initialize name=nil, unscoped_metrics=nil, start_time=nil
19
19
  @unscoped_metrics = unscoped_metrics
20
- @attributes = Attributes.new(NewRelic::Agent.instance.attribute_filter)
21
20
  super name, start_time
22
21
  end
23
22
 
23
+ def attributes
24
+ @attributes ||= Attributes.new(NewRelic::Agent.instance.attribute_filter)
25
+ end
26
+
24
27
  def add_agent_attribute(key, value, default_destinations=AttributeFilter::DST_SPAN_EVENTS)
25
- @attributes.add_agent_attribute(key, value, default_destinations)
28
+ attributes.add_agent_attribute(key, value, default_destinations)
26
29
  end
27
30
 
28
31
  def self.merge_untrusted_agent_attributes(attributes, prefix, default_destinations)
@@ -33,8 +36,9 @@ module NewRelic
33
36
  end
34
37
  end
35
38
 
36
- def merge_untrusted_agent_attributes(attributes, prefix, default_destinations)
37
- @attributes.merge_untrusted_agent_attributes(attributes, prefix, default_destinations)
39
+ def merge_untrusted_agent_attributes(agent_attributes, prefix, default_destinations)
40
+ return if agent_attributes.nil?
41
+ attributes.merge_untrusted_agent_attributes(agent_attributes, prefix, default_destinations)
38
42
  end
39
43
 
40
44
  def add_custom_attributes(p)
@@ -11,7 +11,7 @@ module NewRelic
11
11
  end
12
12
 
13
13
  MAJOR = 6
14
- MINOR = 12
14
+ MINOR = 13
15
15
  TINY = 0
16
16
 
17
17
  begin
@@ -63,6 +63,14 @@ namespace :test do
63
63
  end
64
64
  end
65
65
 
66
+ def remove_generated_gemfile_lockfiles
67
+ file_path = File.expand_path "test/environments"
68
+ Dir.glob(File.join file_path, "**", "Gemfile.lock").each do |fn|
69
+ puts "Removing #{fn.gsub(file_path,'.../environments')}"
70
+ FileUtils.rm fn
71
+ end
72
+ end
73
+
66
74
  task :env do
67
75
  # ENV['SUITES_DIRECTORY'] = File.expand_path('../../test/multiverse/suites', __FILE__)
68
76
  require File.expand_path('../../../test/multiverse/lib/multiverse', __FILE__)
@@ -71,6 +79,7 @@ namespace :test do
71
79
  task :clobber do
72
80
  remove_local_multiverse_databases
73
81
  remove_generated_gemfiles
82
+ remove_generated_gemfile_lockfiles
74
83
  end
75
84
 
76
85
  desc "Clean cached gemfiles from Bundler.bundle_path"
@@ -28,7 +28,6 @@ EOS
28
28
  "LICENSE",
29
29
  "README.md",
30
30
  "CONTRIBUTING.md",
31
- "CODE_OF_CONDUCT.md",
32
31
  "newrelic.yml"
33
32
  ]
34
33
 
@@ -133,6 +133,12 @@ def assert_equal_unordered left, right
133
133
  left.each { |element| assert_includes(right, element) }
134
134
  end
135
135
 
136
+ def assert_log_contains(log, message)
137
+ lines = log.array
138
+ failure_message = "Did not find '#{message}' in log. Log contained:\n#{lines.join('')}"
139
+ assert (lines.any? { |line| line.match(message) }), failure_message
140
+ end
141
+
136
142
  def assert_audit_log_contains audit_log_contents, needle
137
143
  # Original request bodies dumped to the log have symbol keys, but once
138
144
  # they go through a dump/load, they're strings again, so we strip
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: newrelic_rpm
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.12.0.367
4
+ version: 6.13.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rachel Klein
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2020-07-14 00:00:00.000000000 Z
13
+ date: 2020-09-17 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rake
@@ -199,20 +199,43 @@ extra_rdoc_files:
199
199
  - LICENSE
200
200
  - README.md
201
201
  - CONTRIBUTING.md
202
- - CODE_OF_CONDUCT.md
203
202
  - newrelic.yml
204
203
  files:
204
+ - ".github/ISSUE_TEMPLATE/bug_report.md"
205
+ - ".github/ISSUE_TEMPLATE/config.yml"
206
+ - ".github/ISSUE_TEMPLATE/feature_request.md"
207
+ - ".github/actions/annotate/README.md"
208
+ - ".github/actions/annotate/action.yml"
209
+ - ".github/actions/annotate/dist/index.js"
210
+ - ".github/actions/annotate/index.js"
211
+ - ".github/actions/annotate/package-lock.json"
212
+ - ".github/actions/annotate/package.json"
213
+ - ".github/actions/annotate/pre-commit"
214
+ - ".github/actions/build-ruby/README.md"
215
+ - ".github/actions/build-ruby/action.yml"
216
+ - ".github/actions/build-ruby/dist/index.js"
217
+ - ".github/actions/build-ruby/index.js"
218
+ - ".github/actions/build-ruby/package-lock.json"
219
+ - ".github/actions/build-ruby/package.json"
220
+ - ".github/actions/build-ruby/pre-commit"
221
+ - ".github/pull_request_template.md"
222
+ - ".github/workflows/ci.yml"
223
+ - ".github/workflows/pr_review_checklist.yml"
224
+ - ".github/workflows/release.yml"
225
+ - ".github/workflows/scripts/rubygems-authenticate.py"
226
+ - ".github/workflows/scripts/rubygems-publish.rb"
227
+ - ".github/workflows/snyk.yml"
228
+ - ".github/workflows/stale.yml"
205
229
  - ".gitignore"
206
230
  - ".project"
207
- - ".travis.yml"
208
231
  - ".yardopts"
209
232
  - CHANGELOG.md
210
- - CODE_OF_CONDUCT.md
211
233
  - CONTRIBUTING.md
212
234
  - Gemfile
213
235
  - Guardfile
214
236
  - LICENSE
215
237
  - README.md
238
+ - ROADMAP.md
216
239
  - Rakefile
217
240
  - THIRD_PARTY_NOTICES.md
218
241
  - bin/mongrel_rpm
@@ -446,7 +469,6 @@ files:
446
469
  - lib/new_relic/agent/vm/mri_vm.rb
447
470
  - lib/new_relic/agent/vm/snapshot.rb
448
471
  - lib/new_relic/agent/worker_loop.rb
449
- - lib/new_relic/build.rb
450
472
  - lib/new_relic/cli/command.rb
451
473
  - lib/new_relic/cli/commands/deployments.rb
452
474
  - lib/new_relic/cli/commands/install.rb
@@ -476,7 +498,6 @@ files:
476
498
  - lib/new_relic/local_environment.rb
477
499
  - lib/new_relic/metric_data.rb
478
500
  - lib/new_relic/metric_spec.rb
479
- - lib/new_relic/metrics.rb
480
501
  - lib/new_relic/noticed_error.rb
481
502
  - lib/new_relic/rack.rb
482
503
  - lib/new_relic/rack/agent_hooks.rb
@@ -527,7 +548,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
527
548
  - !ruby/object:Gem::Version
528
549
  version: 1.3.1
529
550
  requirements: []
530
- rubygems_version: 3.1.3
551
+ rubygems_version: 3.1.4
531
552
  signing_key:
532
553
  specification_version: 4
533
554
  summary: New Relic Ruby Agent
@@ -1,240 +0,0 @@
1
- services:
2
- - mysql
3
- - redis-server
4
- - memcached
5
- - rabbitmq
6
-
7
- notifications:
8
- slack:
9
- secure: Ziq6vzXmc1S+SZnJF7DyjprRgzZKvVK5TXtnNJAoH4EFchziCqko+75hMxDZ/6Y2kShcijgbzZSkIIVSiuYyx0Jgxdsmwed7yrs91uv2WsUw2/l+taOTBIAMa/m9PZppsRqmkywxWeeTPL6cf65Vg3PYRuqzj83nczUFJo4UNrA=
10
-
11
- language: ruby
12
-
13
- dist: precise
14
- sudo: required
15
- jdk:
16
- - oraclejdk8
17
-
18
- before_install:
19
- # RUBY-2072 Prevent Travis setup failure before our test even starts
20
- - jdk_switcher use oraclejdk8
21
- - sudo rm -f /etc/apt/sources.list.d/travis_ci_zeromq3.list
22
- - gem --version
23
- - "echo 'gem: --no-rdoc --no-ri --no-document' > ~/.gemrc"
24
- - ./test/script/before_install/conditionally_upgrade_rubygems.sh
25
- - ./test/script/before_install/gemstash_mirror.sh
26
- - "echo GEMSTASH_MIRROR: $GEMSTASH_MIRROR"
27
- - bundle --version
28
-
29
- install: bundle install --jobs 4
30
-
31
- addons:
32
- apt:
33
- update: true
34
- packages:
35
- - libgmp3-dev
36
- - openssl
37
- - libssl-dev
38
- - build-essential
39
- - haveged
40
-
41
- before_script: ./test/script/before_script/install_mongodb.sh
42
-
43
- script: ./test/script/ci.sh
44
-
45
- branches:
46
- only:
47
- - main
48
- - dev
49
- - release
50
-
51
- rvm:
52
- # Run slowest builds first to try and optimize overall cycle time.
53
- - jruby-9.2.6.0
54
- - 2.7.0
55
- - 2.6.1
56
- - 2.5.3
57
- - 2.4.2
58
- - 2.3.5
59
- - 2.2.8
60
- - 2.1.10
61
- - 2.0.0-p648
62
-
63
- jdk:
64
- - oraclejdk8
65
-
66
- env:
67
- global:
68
- - BUNDLE_PATH=/home/travis/bundle
69
- - MONGODB=2.6.11
70
- - JAVA_OPTS="-XX:+TieredCompilation -XX:TieredStopAtLevel=1 -Xmx1024m -XX:CICompilerCount=1 -Xshare:auto"
71
- - JRUBY_OPTS="-Xcompile.invokedynamic=false -J-Djruby.compile.mode=OFF"
72
- - RBXOPT="-Xcompiler.no_rbc -Xint"
73
- - SERIALIZE=1
74
- - TESTOPTS="-v"
75
- - VERBOSE = 1
76
- matrix:
77
- - TYPE=UNIT ENVIRONMENT=rails30
78
- - TYPE=UNIT ENVIRONMENT=rails31
79
- - TYPE=UNIT ENVIRONMENT=rails32
80
- - TYPE=UNIT ENVIRONMENT=rails40
81
- - TYPE=UNIT ENVIRONMENT=rails41
82
- - TYPE=UNIT ENVIRONMENT=rails42
83
- - TYPE=UNIT ENVIRONMENT=rails50
84
- - TYPE=UNIT ENVIRONMENT=rails51
85
- - TYPE=UNIT ENVIRONMENT=rails52
86
- - TYPE=UNIT ENVIRONMENT=rails60
87
- - TYPE=UNIT ENVIRONMENT=norails
88
- - TYPE=FUNCTIONAL GROUP=agent
89
- - TYPE=FUNCTIONAL GROUP=api
90
- - TYPE=FUNCTIONAL GROUP=background
91
- - TYPE=FUNCTIONAL GROUP=database
92
- - TYPE=FUNCTIONAL GROUP=httpclients
93
- - TYPE=FUNCTIONAL GROUP=rails
94
- - TYPE=FUNCTIONAL GROUP=serialization
95
- - TYPE=FUNCTIONAL GROUP=sinatra
96
- - TYPE=FUNCTIONAL GROUP=rest
97
- - TYPE=FUNCTIONAL GROUP=background_2
98
- - TYPE=FUNCTIONAL GROUP=infinite_tracing
99
- - TYPE=NULLVERSE
100
-
101
- matrix:
102
- allow_failures:
103
- - rvm: jruby-9.2.6.0
104
- env: TYPE=FUNCTIONAL GROUP=agent
105
- fast_finish: true
106
- exclude:
107
- # Unsupported Rails/Ruby combinations
108
- # 2.7
109
- - rvm: 2.7.0
110
- env: TYPE=UNIT ENVIRONMENT=rails30
111
- - rvm: 2.7.0
112
- env: TYPE=UNIT ENVIRONMENT=rails31
113
- - rvm: 2.7.0
114
- env: TYPE=UNIT ENVIRONMENT=rails32
115
- - rvm: 2.7.0
116
- env: TYPE=UNIT ENVIRONMENT=rails40
117
- - rvm: 2.7.0
118
- env: TYPE=UNIT ENVIRONMENT=rails41
119
-
120
- - rvm: 2.7.0
121
- env: TYPE=UNIT ENVIRONMENT=rails42 # rails (= 4.2.11) depends on bundler (< 2.0, >= 1.3.0)
122
- - rvm: 2.7.0
123
- env: TYPE=UNIT ENVIRONMENT=rails50 # rails (= 5.0.0) depends on bundler (< 2.0, >= 1.3.0)
124
- - rvm: 2.7.0
125
- env: TYPE=UNIT ENVIRONMENT=rails51 # rails (= 5.1.0) depends on bundler (< 2.0, >= 1.3.0)
126
- - rvm: 2.7.0
127
- env: TYPE=UNIT ENVIRONMENT=rails52 # rails (= 5.2.0) depends on bundler (< 2.0, >= 1.3.0)
128
- - rvm: 2.7.0
129
- env: TYPE=FUNCTIONAL GROUP=api # blocked: https://github.com/solnic/coercible/issues/27
130
- - rvm: 2.7.0
131
- env: TYPE=FUNCTIONAL GROUP=sinatra # padrino (~> 0.14.0) depends on bundler (~> 1.0)
132
-
133
- - rvm: 2.7.0
134
- env: TYPE=UNIT ENVIRONMENT=rails42 # rails (= 4.2.11) depends on bundler (< 2.0, >= 1.3.0)
135
- - rvm: 2.7.0
136
- env: TYPE=UNIT ENVIRONMENT=rails50 # rails (= 5.0.0) depends on bundler (< 2.0, >= 1.3.0)
137
- - rvm: 2.7.0
138
- env: TYPE=UNIT ENVIRONMENT=rails51 # rails (= 5.1.0) depends on bundler (< 2.0, >= 1.3.0)
139
- - rvm: 2.7.0
140
- env: TYPE=UNIT ENVIRONMENT=rails52 # rails (= 5.2.0) depends on bundler (< 2.0, >= 1.3.0)
141
- - rvm: 2.7.0
142
- env: TYPE=FUNCTIONAL GROUP=api # blocked: https://github.com/solnic/coercible/issues/27
143
- - rvm: 2.7.0
144
- env: TYPE=FUNCTIONAL GROUP=sinatra # padrino (~> 0.14.0) depends on bundler (~> 1.0)
145
-
146
- # 2.6
147
- - rvm: 2.6.1
148
- env: TYPE=UNIT ENVIRONMENT=rails30
149
- - rvm: 2.6.1
150
- env: TYPE=UNIT ENVIRONMENT=rails31
151
- - rvm: 2.6.1
152
- env: TYPE=UNIT ENVIRONMENT=rails32
153
- - rvm: 2.6.1
154
- env: TYPE=UNIT ENVIRONMENT=rails40
155
- - rvm: 2.6.1
156
- env: TYPE=UNIT ENVIRONMENT=rails41
157
-
158
- # 2.5
159
- - rvm: 2.5.3
160
- env: TYPE=UNIT ENVIRONMENT=rails30
161
- - rvm: 2.5.3
162
- env: TYPE=UNIT ENVIRONMENT=rails31
163
- - rvm: 2.5.3
164
- env: TYPE=UNIT ENVIRONMENT=rails32
165
- - rvm: 2.5.3
166
- env: TYPE=UNIT ENVIRONMENT=rails40
167
- - rvm: 2.5.3
168
- env: TYPE=UNIT ENVIRONMENT=rails41
169
-
170
- # 2.4
171
- - rvm: 2.4.2
172
- env: TYPE=UNIT ENVIRONMENT=rails30
173
- - rvm: 2.4.2
174
- env: TYPE=UNIT ENVIRONMENT=rails31
175
- - rvm: 2.4.2
176
- env: TYPE=UNIT ENVIRONMENT=rails32
177
- - rvm: 2.4.2
178
- env: TYPE=UNIT ENVIRONMENT=rails40
179
- - rvm: 2.4.2
180
- env: TYPE=UNIT ENVIRONMENT=rails41
181
- - rvm: 2.4.2
182
- env: TYPE=UNIT ENVIRONMENT=rails60
183
-
184
- # 2.3
185
- - rvm: 2.3.5
186
- env: TYPE=UNIT ENVIRONMENT=rails60
187
-
188
- # 2.2
189
- - rvm: 2.2.8
190
- env: TYPE=UNIT ENVIRONMENT=rails60
191
-
192
- # 2.1
193
- - rvm: 2.1.10
194
- env: TYPE=UNIT ENVIRONMENT=rails50
195
- - rvm: 2.1.10
196
- env: TYPE=UNIT ENVIRONMENT=rails51
197
- - rvm: 2.1.10
198
- env: TYPE=UNIT ENVIRONMENT=rails52
199
- - rvm: 2.1.10
200
- env: TYPE=UNIT ENVIRONMENT=rails60
201
-
202
- # 2.0
203
- - rvm: 2.0.0-p648
204
- env: TYPE=UNIT ENVIRONMENT=rails50
205
- - rvm: 2.0.0-p648
206
- env: TYPE=UNIT ENVIRONMENT=rails51
207
- - rvm: 2.0.0-p648
208
- env: TYPE=UNIT ENVIRONMENT=rails52
209
- - rvm: 2.0.0-p648
210
- env: TYPE=UNIT ENVIRONMENT=rails60
211
-
212
- # jruby 9.2.6.0 (Compatible with MRI 2.5)
213
- - rvm: jruby-9.2.6.0
214
- env: TYPE=UNIT ENVIRONMENT=rails30
215
- - rvm: jruby-9.2.6.0
216
- env: TYPE=UNIT ENVIRONMENT=rails31
217
- - rvm: jruby-9.2.6.0
218
- env: TYPE=UNIT ENVIRONMENT=rails32
219
- - rvm: jruby-9.2.6.0
220
- env: TYPE=UNIT ENVIRONMENT=rails40
221
- - rvm: jruby-9.2.6.0
222
- env: TYPE=UNIT ENVIRONMENT=rails41
223
- - rvm: jruby-9.2.6.0
224
- env: TYPE=UNIT ENVIRONMENT=rails60
225
- - rvm: jruby-9.2.6.0
226
- env: TYPE=UNIT ENVIRONMENT=rails52
227
-
228
- # Excluding unsupported Rubies for grpc
229
- - rvm: 2.0.0-p648
230
- env: TYPE=FUNCTIONAL GROUP=infinite_tracing
231
- - rvm: 2.1.10
232
- env: TYPE=FUNCTIONAL GROUP=infinite_tracing
233
- - rvm: 2.2.8
234
- env: TYPE=FUNCTIONAL GROUP=infinite_tracing
235
- - rvm: 2.3.5
236
- env: TYPE=FUNCTIONAL GROUP=infinite_tracing
237
- - rvm: 2.4.2
238
- env: TYPE=FUNCTIONAL GROUP=infinite_tracing
239
- - rvm: jruby-9.2.6.0
240
- env: TYPE=FUNCTIONAL GROUP=infinite_tracing
@@ -1,46 +0,0 @@
1
- # Contributor Covenant Code of Conduct
2
-
3
- ## Our Pledge
4
-
5
- In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.
6
-
7
- ## Our Standards
8
-
9
- Examples of behavior that contributes to creating a positive environment include:
10
-
11
- * Using welcoming and inclusive language
12
- * Being respectful of differing viewpoints and experiences
13
- * Gracefully accepting constructive criticism
14
- * Focusing on what is best for the community
15
- * Showing empathy towards other community members
16
-
17
- Examples of unacceptable behavior by participants include:
18
-
19
- * The use of sexualized language or imagery and unwelcome sexual attention or advances
20
- * Trolling, insulting/derogatory comments, and personal or political attacks
21
- * Public or private harassment
22
- * Publishing others' private information, such as a physical or electronic address, without explicit permission
23
- * Other conduct which could reasonably be considered inappropriate in a professional setting
24
-
25
- ## Our Responsibilities
26
-
27
- Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior.
28
-
29
- Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.
30
-
31
- ## Scope
32
-
33
- This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers.
34
-
35
- ## Enforcement
36
-
37
- Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at opensource@newrelic.com. The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.
38
-
39
- Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.
40
-
41
- ## Attribution
42
-
43
- This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [http://contributor-covenant.org/version/1/4][version]
44
-
45
- [homepage]: http://contributor-covenant.org
46
- [version]: http://contributor-covenant.org/version/1/4/