appoptics_apm 4.11.0 → 4.12.2

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: 10400db84a2a1a68fb58d21e3242c39377cc334d18cbd8ed5df1f47f5708787b
4
- data.tar.gz: 0ca5bfa1737e1dc75e63d8b3f97af692a305620554428ac379eada53c802842b
3
+ metadata.gz: d965e8566e484600d93a0464d8421bef1f6b578eeb831462ced9b1bd28a99561
4
+ data.tar.gz: 4b06e0e2e9eb0e3c7f329286a28376ddbfa906d06ac074aa73abfb3f0fa66305
5
5
  SHA512:
6
- metadata.gz: c59d11940602ab5e3d36b6b0809c4247ac7217ea335904b4b18bff5cd7b601e650d3f696d4e4146fe919b0f4a5f725a199711d50fd4b25a8ca14478a4d88df00
7
- data.tar.gz: 6dfaea0bfe049cccaefbd174433d22918d0516c9e6ddb7c6b2503cbb11cea86848cf9b8efb26546ebf738df3c6daf8f3e8dbacbf5d691116ecd1e736e91dd5cd
6
+ metadata.gz: 3173787156f779575df425cc0fd8b855833d97bb05b9f00aa6d6bdedd74c4ca8028a274009822441666fc9d6e1b20b8822887d1034d38625e4e5a33361190b86
7
+ data.tar.gz: fbfcf3540014922155bdfd0865ef09ff316635580d50403b48d07a9a089aa0123e54eff62eb316c084750084faeef9ae8260eea3ef04885a113bacb3ecd1c71e
data/.gitignore CHANGED
@@ -1,34 +1,44 @@
1
- oboe*.gem
1
+ *.code-workspace
2
+ *.gem
2
3
  *.lock
3
- gemfiles/*.lock
4
- .ruby-version
5
- *~
4
+ *.o
5
+ *.so
6
6
  *.swp
7
+ *.vscode
8
+ *~
9
+ .*byebug*
10
+ .bundle
7
11
  .env
8
- lib/oboe_metal.so
12
+ .irb_history
13
+ .irbrc
14
+ .ruby-version
15
+ .travis/*
16
+ .vagrant
17
+ .yardoc
18
+ builds
19
+ coverage
20
+ config
21
+ doc
9
22
  ext/oboe_metal/Makefile
23
+ ext/oboe_metal/lib/liboboe*so*
10
24
  ext/oboe_metal/mkmf.log
11
25
  ext/oboe_metal/oboe_metal.so
12
26
  ext/oboe_metal/oboe_noop.so
13
- ext/oboe_metal/*.o
14
- ext/oboe_metal/lib/liboboe*so*
27
+ ext/oboe_metal/src/bson/*
15
28
  ext/oboe_metal/src/oboe.h
16
29
  ext/oboe_metal/src/oboe.hpp
30
+ ext/oboe_metal/src/oboe_api.cpp
31
+ ext/oboe_metal/src/oboe_api.hpp
17
32
  ext/oboe_metal/src/oboe_debug.h
18
33
  ext/oboe_metal/src/oboe_wrap.cxx
19
- ext/oboe_metal/src/bson/*
20
- log/
21
- .vagrant
22
- gemfiles/.bundle
23
- swig*
24
- *.gem
25
- .yardoc
26
- coverage
27
- doc
28
- .*byebug*
34
+ ext/oboe_metal/src/oboe_swig_wrap.cc
35
+ ext/oboe_metal/test
29
36
  gemfiles/vendor*
37
+ log
38
+ oboe*.gem
30
39
  scrap*
31
- .irbrc
32
- *.code-workspace
33
- .irb_history
34
- .bundle/
40
+ swig*
41
+ vendor
42
+ ext/oboe_metal/experiments/
43
+ ext/oboe_metal/test/
44
+ test/run_tests/grpc_matrix/
data/.travis.yml CHANGED
@@ -8,14 +8,14 @@ cache:
8
8
  env:
9
9
  - DBTYPE=postgresql
10
10
  - DBTYPE=mysql2
11
- - DBTYPE=mysql
12
11
 
13
12
  rvm:
14
- - 2.6.4
13
+ - 3.0.0 # appoptics_apm instrumentation not ready yet, probably ok, let's see
14
+ - 2.7.0
15
+ - 2.6.5
15
16
  - 2.5.5
16
17
  - 2.4.5
17
- - 2.7.0
18
- - ruby-head
18
+ # - ruby-head
19
19
  # - jruby-9.0.5.0
20
20
 
21
21
  gemfile:
@@ -24,6 +24,7 @@ gemfile:
24
24
  - gemfiles/instrumentation_mocked.gemfile
25
25
  - gemfiles/instrumentation_mocked_oldgems.gemfile
26
26
  - gemfiles/frameworks.gemfile
27
+ - gemfiles/rails61.gemfile
27
28
  - gemfiles/rails60.gemfile
28
29
  - gemfiles/rails52.gemfile
29
30
  - gemfiles/rails42.gemfile
@@ -34,42 +35,16 @@ matrix:
34
35
  exclude:
35
36
  - rvm: ruby-head
36
37
  gemfile: gemfiles/rails42.gemfile
37
- - rvm: 2.7.0-preview2
38
+ - rvm: 2.7.0
38
39
  gemfile: gemfiles/rails42.gemfile
39
- - rvm: 2.6.4
40
+ - rvm: 2.6.5
40
41
  gemfile: gemfiles/rails42.gemfile
41
42
  - rvm: 2.4.5
42
- gemfile: gemfiles/rails60.gemfile
43
-
44
- - rvm: ruby-head
45
- env: DBTYPE=mysql
46
- - rvm: 2.7.0-preview2
47
- env: DBTYPE=mysql
48
- - rvm: 2.6.4
49
- env: DBTYPE=mysql
50
- - rvm: 2.5.5
51
- env: DBTYPE=mysql
43
+ gemfile: gemfiles/rails61.gemfile
52
44
  - rvm: 2.4.5
53
- env: DBTYPE=mysql
54
-
55
- - gemfile: gemfiles/unit.gemfile
56
- env: DBTYPE=mysql
57
- - gemfile: gemfiles/noop.gemfile
58
- env: DBTYPE=mysql
59
- - gemfile: gemfiles/libraries.gemfile
60
- env: DBTYPE=mysql
61
- - gemfile: gemfiles/instrumentation_mocked.gemfile
62
- env: DBTYPE=mysql
63
- - gemfile: gemfiles/instrumentation_mocked_oldgems.gemfile
64
- env: DBTYPE=mysql
65
- - gemfile: gemfiles/frameworks.gemfile
66
- env: DBTYPE=mysql
67
- - gemfile: gemfiles/rails52.gemfile
68
- env: DBTYPE=mysql
69
- - gemfile: gemfiles/rails60.gemfile
70
- env: DBTYPE=mysql
71
- - gemfile: gemfiles/delayed_job.gemfile
72
- env: DBTYPE=mysql
45
+ gemfile: gemfiles/rails60.gemfile
46
+ - rvm: 2.4.5 # excluding because of new sprockets version (4.0.0)
47
+ gemfile: gemfiles/rails52.gemfile
73
48
 
74
49
  - gemfile: gemfiles/unit.gemfile
75
50
  env: DBTYPE=mysql2
@@ -87,9 +62,9 @@ matrix:
87
62
  env: DBTYPE=mysql2
88
63
  allow_failures:
89
64
  - rvm: ruby-head
90
- - rvm: 2.7.0
91
65
 
92
- # FIXME: Figure out if this is still an issue when reviewing cassandra test setup
66
+ # FIXME: No cassandra tests for now
67
+ # ____ Figure out if this is still an issue when reviving cassandra
93
68
  # Attempt Travis/Cassandra fix re: https://github.com/travis-ci/travis-ci/issues/1484
94
69
  # Updated Cassandra: https://github.com/travis-ci/travis-ci/issues/1650
95
70
 
@@ -104,23 +79,32 @@ matrix:
104
79
  # - sudo service cassandra start
105
80
 
106
81
  install:
107
- - curl -LO http://kent.dl.sourceforge.net/project/swig/swig/swig-3.0.12/swig-3.0.12.tar.gz
108
- - tar xzf swig-3.0.12.tar.gz
109
- - pushd swig-3.0.12
82
+ - curl -LO http://kent.dl.sourceforge.net/project/swig/swig/swig-4.0.2/swig-4.0.2.tar.gz
83
+ - tar xzf swig-4.0.2.tar.gz
84
+ - pushd swig-4.0.2
110
85
  - ./configure && make && sudo make install
111
86
  - popd
112
87
 
88
+ # use swig from git in case fixes haven't been released
89
+ # - git clone https://github.com/swig/swig.git
90
+ # - pushd swig
91
+ # - ./autogen.sh
92
+ # - ./configure && make && sudo make install
93
+ # - popd
94
+
113
95
  before_script:
114
96
  - export APPOPTICS_GEM_TEST=true
115
97
  - export APPOPTICS_REPORTER=file
116
98
  - export APPOPTICS_COLLECTOR=/tmp/appoptics_traces.bson
117
99
  - export APPOPTICS_REPORTER_FILE_SINGLE=false
118
- - export APPOPTICS_TOKEN_BUCKET_CAPACITY=1000
119
- - export APPOPTICS_TOKEN_BUCKET_RATE=1000
100
+ # - export APPOPTICS_TOKEN_BUCKET_CAPACITY=1000
101
+ # - export APPOPTICS_TOKEN_BUCKET_RATE=1000
120
102
  - export APPOPTICS_FROM_S3=true
103
+ - export OBOE_VERSION=10.0.0
121
104
 
122
- - bundle update --jobs=3 --retry=3
123
- - bundle exec rake clean fetch compile
105
+ # - bundle update --jobs=3 --retry=3
106
+ - ./.travis/bundle.sh
107
+ - bundle exec rake distclean fetch compile
124
108
  - psql -c 'create database travis_ci_test;' -U postgres
125
109
  - mysql -e 'create database travis_ci_test;'
126
110
  - redis-server --requirepass secret_pass &
data/Gemfile CHANGED
@@ -1,29 +1,38 @@
1
1
  source 'https://rubygems.org'
2
- gem 'rake'
2
+
3
+ # this Gemfile is very minimal
4
+ # use rake commands or gemfiles in the gemfiles directory for testing
5
+
6
+ gem 'rake', '>= 0.9.0'
3
7
 
4
8
  group :development, :test do
5
- gem 'minitest'
6
- gem 'minitest-reporters', '< 1.0.18'
7
- gem 'minitest-debugger', :require => false
8
- gem 'rack-test'
9
- gem 'puma'
10
- gem 'bson'
11
- gem 'webmock' if RUBY_VERSION >= '2.0.0'
12
- gem 'mocha'
13
- gem 'rubocop', require: false
14
- gem 'ruby-prof'
15
- gem 'benchmark-ips'
16
- gem 'ruby-debug', :platforms => :jruby
17
- gem 'debugger', :platform => :mri_19
18
- gem 'byebug'
19
- gem 'get_process_mem'
20
- gem 'memory_profiler'
9
+ # gem 'benchmark-ips', '>= 2.7.2'
10
+ # gem 'bson'
11
+ gem 'byebug', '>= 8.0.0'
12
+ # gem 'debugger', :platform => :mri_19
13
+ # gem 'get_process_mem'
14
+ gem 'irb', '>= 1.0.0' # if RUBY_VERSION >= '2.6.0'
15
+ # gem 'memory_profiler'
16
+ # gem 'minitest'
17
+ # gem 'minitest-debugger', :require => false
18
+ # gem 'minitest-focus', '>=1.1.2'
19
+ # gem 'minitest-hooks', '>= 1.5.0'
20
+ # gem 'minitest-reporters', '< 1.0.18'
21
+ # gem 'mocha'
22
+ # gem 'puma'
23
+ # gem 'rack-test'
24
+ # gem 'rubocop', require: false
25
+ # gem 'ruby-debug', :platforms => :jruby
26
+ # gem 'ruby-prof'
27
+ # gem 'simplecov', '>= 0.16.0'
28
+ # gem 'simplecov-console'
29
+ # gem 'webmock' if RUBY_VERSION >= '2.0.0'
21
30
 
22
- if defined?(JRUBY_VERSION)
23
- gem 'sinatra', :require => false
24
- else
25
- gem 'sinatra'
26
- end
31
+ # if defined?(JRUBY_VERSION)
32
+ # gem 'sinatra', :require => false
33
+ # else
34
+ # gem 'sinatra'
35
+ # end
27
36
  end
28
37
 
29
38
  gemspec
data/LICENSE CHANGED
@@ -1,193 +1,202 @@
1
- Librato Open License
2
- Version 1.0, October, 2016
3
-
4
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
5
-
6
- 1. Definitions.
7
-
8
- "License" shall mean the terms and conditions for use, reproduction, and
9
- distribution as defined by Sections 1 through 11 of this document.
10
-
11
- "Licensor" shall mean the copyright owner or entity authorized by the copyright
12
- owner that is granting the License. Licensor can include Librato as an
13
- original contributor to the Work as defined below.
14
-
15
- "Legal Entity" shall mean the union of the acting entity and all other entities
16
- that control, are controlled by, or are under common control with that entity.
17
- For the purposes of this definition, "control" means (i) the power, direct or
18
- indirect, to cause the direction or management of such entity, whether by
19
- contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the
20
- outstanding shares, or (iii) beneficial ownership of such entity.
21
-
22
- "You" (or "Your") shall mean an individual or Legal Entity exercising
23
- permissions granted by this License.
24
-
25
- "Source" form shall mean the preferred form for making modifications, including
26
- but not limited to software source code, documentation source, and
27
- configuration files.
28
-
29
- "Object" form shall mean any form resulting from mechanical transformation or
30
- translation of a Source form, including but not limited to compiled object
31
- code, generated documentation, and conversions to other media types.
32
-
33
- "Work" shall mean the work of authorship, whether in Source or Object form,
34
- made available under the License, as indicated by a copyright notice that is
35
- included in or attached to the work.
36
-
37
- "Derivative Works" shall mean any work, whether in Source or Object form, that
38
- is based on (or derived from) the Work and for which the editorial revisions,
39
- annotations, elaborations, or other modifications represent, as a whole, an
40
- original work of authorship. For the purposes of this License, Derivative Works
41
- shall not include works that remain separable from, or merely link (or bind by
42
- name) to the interfaces of, the Work and Derivative Works thereof.
43
-
44
- "Contribution" shall mean any work of authorship, including the original
45
- version of the Work and any modifications or additions to that Work or
46
- Derivative Works thereof, that is intentionally submitted to Licensor for
47
- inclusion in the Work by the copyright owner or by an individual or Legal
48
- Entity authorized to submit on behalf of the copyright owner. For the purposes
49
- of this definition, "submitted" means any form of electronic, verbal, or
50
- written communication sent to the Licensor or its representatives, including
51
- but not limited to communication on electronic mailing lists, source code
52
- control systems, and issue tracking systems that are managed by, or on behalf
53
- of, the Licensor for the purpose of discussing and improving the Work, but
54
- excluding communication that is conspicuously marked or otherwise designated in
55
- writing by the copyright owner as "Not a Contribution."
56
-
57
- "Contributor" shall mean Licensor and any individual or Legal Entity on behalf
58
- of whom a Contribution has been received by Licensor and subsequently
59
- incorporated within the Work.
60
-
61
- 2. Grant of Copyright License.
62
-
63
- Subject to the terms and conditions of this License, each Contributor hereby
64
- grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free,
65
- irrevocable copyright license to reproduce, prepare Derivative Works of,
66
- publicly display, publicly perform, sublicense, and distribute the Work and
67
- such Derivative Works in Source or Object form.
68
-
69
- 3. Grant of Patent License.
70
-
71
- Subject to the terms and conditions of this License, each Contributor hereby
72
- grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free,
73
- irrevocable (except as stated in this section) patent license to make, have
74
- made, use, offer to sell, sell, import, and otherwise transfer the Work, where
75
- such license applies only to those patent claims licensable by such Contributor
76
- that are necessarily infringed by their Contribution(s) alone or by combination
77
- of their Contribution(s) with the Work to which such Contribution(s) was
78
- submitted. If You institute patent litigation against any entity (including a
79
- cross-claim or counterclaim in a lawsuit) alleging that the Work or a
80
- Contribution incorporated within the Work constitutes direct or contributory
81
- patent infringement, then any patent licenses granted to You under this License
82
- for that Work shall terminate as of the date such litigation is filed.
83
-
84
- Each time You convey a covered Work, the recipient automatically receives a
85
- license from the original Licensor(s), to run, modify and propagate that work,
86
- subject to this License. You are not responsible for enforcing compliance by
87
- third parties with this License.
88
-
89
- You may not impose any further restrictions on the exercise of the rights
90
- granted or affirmed under this License. For example, you may not impose a
91
- license fee, royalty, or other charge for exercise of rights granted under this
92
- License, and you may not initiate litigation (including a cross-claim or
93
- counterclaim in a lawsuit) alleging that any patent claim is infringed by
94
- making, using, selling, offering for sale, or importing the Work or any portion
95
- of it.
96
-
97
- 4. Redistribution.
98
-
99
- You may reproduce and distribute copies of the Work or Derivative Works thereof
100
- in any medium, with or without modifications, and in Source or Object form,
101
- provided that You meet the following conditions:
102
-
103
- 1. You must give any other recipients of the Work or Derivative Works a copy
104
- of this License; and
105
- 2. You must cause any modified files to carry prominent notices stating that
106
- You changed the files; and
107
- 3. You must retain, in the Source form of any Derivative Works that You
108
- distribute, all copyright, patent, trademark, and attribution notices from the
109
- Source form of the Work, excluding those notices that do not pertain to any
110
- part of the Derivative Works; and
111
- 4. If the Work includes a "NOTICE" text file as part of its distribution,
112
- then any Derivative Works that You distribute must include a readable copy of
113
- the attribution notices contained within such NOTICE file, excluding those
114
- notices that do not pertain to any part of the Derivative Works, in at least
115
- one of the following places: within a NOTICE text file distributed as part of
116
- the Derivative Works; within the Source form or documentation, if provided
117
- along with the Derivative Works; or, within a display generated by the
118
- Derivative Works, if and wherever such third-party notices normally appear. The
119
- contents of the NOTICE file are for informational purposes only and do not
120
- modify the License. You may add Your own attribution notices within Derivative
121
- Works that You distribute, alongside or as an addendum to the NOTICE text from
122
- the Work, provided that such additional attribution notices cannot be construed
123
- as modifying the License.
124
-
125
- You may add Your own copyright statement to Your modifications and may provide
126
- additional or different license terms and conditions for use, reproduction, or
127
- distribution of Your modifications, or for any such Derivative Works as a
128
- whole, provided Your use, reproduction, and distribution of the Work otherwise
129
- complies with the conditions stated in this License.
130
-
131
- 5. Submission of Contributions.
132
-
133
- Unless You explicitly state otherwise, any Contribution intentionally submitted
134
- for inclusion in the Work by You to the Licensor shall be under the terms and
135
- conditions of this License, without any additional terms or conditions.
136
- Notwithstanding the above, nothing herein shall supersede or modify the terms
137
- of any separate license agreement you may have executed with Licensor regarding
138
- such Contributions.
139
-
140
- 6. Trademarks.
141
-
142
- This License does not grant permission to use the trade names, trademarks,
143
- service marks, or product names of the Licensor, except as required for
144
- reasonable and customary use in describing the origin of the Work and
145
- reproducing the content of the NOTICE file.
146
-
147
- 7. Disclaimer of Warranty.
148
-
149
- Unless required by applicable law or agreed to in writing, Licensor provides
150
- the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS,
151
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied,
152
- including, without limitation, any warranties or conditions of TITLE,
153
- NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are
154
- solely responsible for determining the appropriateness of using or
155
- redistributing the Work and assume any risks associated with Your exercise of
156
- permissions under this License.
157
-
158
- 8. Limitation of Liability.
159
-
160
- In no event and under no legal theory, whether in tort (including negligence),
161
- contract, or otherwise, unless required by applicable law (such as deliberate
162
- and grossly negligent acts) or agreed to in writing, shall any Contributor be
163
- liable to You for damages, including any direct, indirect, special, incidental,
164
- or consequential damages of any character arising as a result of this License
165
- or out of the use or inability to use the Work (including but not limited to
166
- damages for loss of goodwill, work stoppage, computer failure or malfunction,
167
- or any and all other commercial damages or losses), even if such Contributor
168
- has been advised of the possibility of such damages.
169
-
170
- 9. Accepting Warranty or Additional Liability.
171
-
172
- While redistributing the Work or Derivative Works thereof, You may choose to
173
- offer, and charge a fee for, acceptance of support, warranty, indemnity, or
174
- other liability obligations and/or rights consistent with this License.
175
- However, in accepting such obligations, You may act only on Your own behalf and
176
- on Your sole responsibility, not on behalf of any other Contributor, and only
177
- if You agree to indemnify, defend, and hold each Contributor harmless for any
178
- liability incurred by, or claims asserted against, such Contributor by reason
179
- of your accepting any such warranty or additional liability.
180
-
181
- 10. Noncompetition
182
-
183
- You may install and execute the Work only in conjunction with the direct use of
184
- Librato software. This Work, any file or any derivative thereof shall not be
185
- used in conjunction with any product that competes with any Librato software.
186
-
187
- 11. Termination
188
-
189
- The License stated above is automatically terminated and revoked if you exceed
190
- its scope or violate any of the terms of this License or any related License or
191
- notice.
192
-
193
- END OF TERMS AND CONDITIONS
1
+
2
+ Apache License
3
+ Version 2.0, January 2004
4
+ http://www.apache.org/licenses/
5
+
6
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
7
+
8
+ 1. Definitions.
9
+
10
+ "License" shall mean the terms and conditions for use, reproduction,
11
+ and distribution as defined by Sections 1 through 9 of this document.
12
+
13
+ "Licensor" shall mean the copyright owner or entity authorized by
14
+ the copyright owner that is granting the License.
15
+
16
+ "Legal Entity" shall mean the union of the acting entity and all
17
+ other entities that control, are controlled by, or are under common
18
+ control with that entity. For the purposes of this definition,
19
+ "control" means (i) the power, direct or indirect, to cause the
20
+ direction or management of such entity, whether by contract or
21
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
22
+ outstanding shares, or (iii) beneficial ownership of such entity.
23
+
24
+ "You" (or "Your") shall mean an individual or Legal Entity
25
+ exercising permissions granted by this License.
26
+
27
+ "Source" form shall mean the preferred form for making modifications,
28
+ including but not limited to software source code, documentation
29
+ source, and configuration files.
30
+
31
+ "Object" form shall mean any form resulting from mechanical
32
+ transformation or translation of a Source form, including but
33
+ not limited to compiled object code, generated documentation,
34
+ and conversions to other media types.
35
+
36
+ "Work" shall mean the work of authorship, whether in Source or
37
+ Object form, made available under the License, as indicated by a
38
+ copyright notice that is included in or attached to the work
39
+ (an example is provided in the Appendix below).
40
+
41
+ "Derivative Works" shall mean any work, whether in Source or Object
42
+ form, that is based on (or derived from) the Work and for which the
43
+ editorial revisions, annotations, elaborations, or other modifications
44
+ represent, as a whole, an original work of authorship. For the purposes
45
+ of this License, Derivative Works shall not include works that remain
46
+ separable from, or merely link (or bind by name) to the interfaces of,
47
+ the Work and Derivative Works thereof.
48
+
49
+ "Contribution" shall mean any work of authorship, including
50
+ the original version of the Work and any modifications or additions
51
+ to that Work or Derivative Works thereof, that is intentionally
52
+ submitted to Licensor for inclusion in the Work by the copyright owner
53
+ or by an individual or Legal Entity authorized to submit on behalf of
54
+ the copyright owner. For the purposes of this definition, "submitted"
55
+ means any form of electronic, verbal, or written communication sent
56
+ to the Licensor or its representatives, including but not limited to
57
+ communication on electronic mailing lists, source code control systems,
58
+ and issue tracking systems that are managed by, or on behalf of, the
59
+ Licensor for the purpose of discussing and improving the Work, but
60
+ excluding communication that is conspicuously marked or otherwise
61
+ designated in writing by the copyright owner as "Not a Contribution."
62
+
63
+ "Contributor" shall mean Licensor and any individual or Legal Entity
64
+ on behalf of whom a Contribution has been received by Licensor and
65
+ subsequently incorporated within the Work.
66
+
67
+ 2. Grant of Copyright License. Subject to the terms and conditions of
68
+ this License, each Contributor hereby grants to You a perpetual,
69
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
70
+ copyright license to reproduce, prepare Derivative Works of,
71
+ publicly display, publicly perform, sublicense, and distribute the
72
+ Work and such Derivative Works in Source or Object form.
73
+
74
+ 3. Grant of Patent License. Subject to the terms and conditions of
75
+ this License, each Contributor hereby grants to You a perpetual,
76
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
77
+ (except as stated in this section) patent license to make, have made,
78
+ use, offer to sell, sell, import, and otherwise transfer the Work,
79
+ where such license applies only to those patent claims licensable
80
+ by such Contributor that are necessarily infringed by their
81
+ Contribution(s) alone or by combination of their Contribution(s)
82
+ with the Work to which such Contribution(s) was submitted. If You
83
+ institute patent litigation against any entity (including a
84
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
85
+ or a Contribution incorporated within the Work constitutes direct
86
+ or contributory patent infringement, then any patent licenses
87
+ granted to You under this License for that Work shall terminate
88
+ as of the date such litigation is filed.
89
+
90
+ 4. Redistribution. You may reproduce and distribute copies of the
91
+ Work or Derivative Works thereof in any medium, with or without
92
+ modifications, and in Source or Object form, provided that You
93
+ meet the following conditions:
94
+
95
+ (a) You must give any other recipients of the Work or
96
+ Derivative Works a copy of this License; and
97
+
98
+ (b) You must cause any modified files to carry prominent notices
99
+ stating that You changed the files; and
100
+
101
+ (c) You must retain, in the Source form of any Derivative Works
102
+ that You distribute, all copyright, patent, trademark, and
103
+ attribution notices from the Source form of the Work,
104
+ excluding those notices that do not pertain to any part of
105
+ the Derivative Works; and
106
+
107
+ (d) If the Work includes a "NOTICE" text file as part of its
108
+ distribution, then any Derivative Works that You distribute must
109
+ include a readable copy of the attribution notices contained
110
+ within such NOTICE file, excluding those notices that do not
111
+ pertain to any part of the Derivative Works, in at least one
112
+ of the following places: within a NOTICE text file distributed
113
+ as part of the Derivative Works; within the Source form or
114
+ documentation, if provided along with the Derivative Works; or,
115
+ within a display generated by the Derivative Works, if and
116
+ wherever such third-party notices normally appear. The contents
117
+ of the NOTICE file are for informational purposes only and
118
+ do not modify the License. You may add Your own attribution
119
+ notices within Derivative Works that You distribute, alongside
120
+ or as an addendum to the NOTICE text from the Work, provided
121
+ that such additional attribution notices cannot be construed
122
+ as modifying the License.
123
+
124
+ You may add Your own copyright statement to Your modifications and
125
+ may provide additional or different license terms and conditions
126
+ for use, reproduction, or distribution of Your modifications, or
127
+ for any such Derivative Works as a whole, provided Your use,
128
+ reproduction, and distribution of the Work otherwise complies with
129
+ the conditions stated in this License.
130
+
131
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
132
+ any Contribution intentionally submitted for inclusion in the Work
133
+ by You to the Licensor shall be under the terms and conditions of
134
+ this License, without any additional terms or conditions.
135
+ Notwithstanding the above, nothing herein shall supersede or modify
136
+ the terms of any separate license agreement you may have executed
137
+ with Licensor regarding such Contributions.
138
+
139
+ 6. Trademarks. This License does not grant permission to use the trade
140
+ names, trademarks, service marks, or product names of the Licensor,
141
+ except as required for reasonable and customary use in describing the
142
+ origin of the Work and reproducing the content of the NOTICE file.
143
+
144
+ 7. Disclaimer of Warranty. Unless required by applicable law or
145
+ agreed to in writing, Licensor provides the Work (and each
146
+ Contributor provides its Contributions) on an "AS IS" BASIS,
147
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
148
+ implied, including, without limitation, any warranties or conditions
149
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
150
+ PARTICULAR PURPOSE. You are solely responsible for determining the
151
+ appropriateness of using or redistributing the Work and assume any
152
+ risks associated with Your exercise of permissions under this License.
153
+
154
+ 8. Limitation of Liability. In no event and under no legal theory,
155
+ whether in tort (including negligence), contract, or otherwise,
156
+ unless required by applicable law (such as deliberate and grossly
157
+ negligent acts) or agreed to in writing, shall any Contributor be
158
+ liable to You for damages, including any direct, indirect, special,
159
+ incidental, or consequential damages of any character arising as a
160
+ result of this License or out of the use or inability to use the
161
+ Work (including but not limited to damages for loss of goodwill,
162
+ work stoppage, computer failure or malfunction, or any and all
163
+ other commercial damages or losses), even if such Contributor
164
+ has been advised of the possibility of such damages.
165
+
166
+ 9. Accepting Warranty or Additional Liability. While redistributing
167
+ the Work or Derivative Works thereof, You may choose to offer,
168
+ and charge a fee for, acceptance of support, warranty, indemnity,
169
+ or other liability obligations and/or rights consistent with this
170
+ License. However, in accepting such obligations, You may act only
171
+ on Your own behalf and on Your sole responsibility, not on behalf
172
+ of any other Contributor, and only if You agree to indemnify,
173
+ defend, and hold each Contributor harmless for any liability
174
+ incurred by, or claims asserted against, such Contributor by reason
175
+ of your accepting any such warranty or additional liability.
176
+
177
+ END OF TERMS AND CONDITIONS
178
+
179
+ APPENDIX: How to apply the Apache License to your work.
180
+
181
+ To apply the Apache License to your work, attach the following
182
+ boilerplate notice, with the fields enclosed by brackets "[]"
183
+ replaced with your own identifying information. (Don't include
184
+ the brackets!) The text should be enclosed in the appropriate
185
+ comment syntax for the file format. We also recommend that a
186
+ file or class name and description of purpose be included on the
187
+ same "printed page" as the copyright notice for easier
188
+ identification within third-party archives.
189
+
190
+ Copyright [yyyy] [name of copyright owner]
191
+
192
+ Licensed under the Apache License, Version 2.0 (the "License");
193
+ you may not use this file except in compliance with the License.
194
+ You may obtain a copy of the License at
195
+
196
+ http://www.apache.org/licenses/LICENSE-2.0
197
+
198
+ Unless required by applicable law or agreed to in writing, software
199
+ distributed under the License is distributed on an "AS IS" BASIS,
200
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
201
+ See the License for the specific language governing permissions and
202
+ limitations under the License.