oracledb 5.1.0 → 5.4.0

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.
Files changed (40) hide show
  1. package/CHANGELOG.md +164 -2
  2. package/LICENSE.txt +443 -0
  3. package/NOTICE.txt +1 -0
  4. package/README.md +15 -13
  5. package/THIRD_PARTY_LICENSES.txt +52 -0
  6. package/build/Release/oracledb-5.4.0-darwin-x64.node +0 -0
  7. package/build/Release/oracledb-5.4.0-darwin-x64.node-buildinfo.txt +1 -0
  8. package/build/Release/oracledb-5.4.0-linux-x64.node +0 -0
  9. package/build/Release/oracledb-5.4.0-linux-x64.node-buildinfo.txt +1 -0
  10. package/build/Release/oracledb-5.4.0-win32-x64.node +0 -0
  11. package/build/Release/oracledb-5.4.0-win32-x64.node-buildinfo.txt +1 -0
  12. package/lib/aqDeqOptions.js +1 -1
  13. package/lib/aqEnqOptions.js +1 -1
  14. package/lib/aqMessage.js +1 -1
  15. package/lib/aqQueue.js +9 -5
  16. package/lib/connection.js +233 -33
  17. package/lib/dbObject.js +17 -17
  18. package/lib/lob.js +17 -5
  19. package/lib/oracledb.js +74 -11
  20. package/lib/pool.js +271 -163
  21. package/lib/poolStatistics.js +124 -0
  22. package/lib/queryStream.js +8 -6
  23. package/lib/resultset.js +37 -9
  24. package/lib/sodaCollection.js +46 -21
  25. package/lib/sodaDatabase.js +8 -4
  26. package/lib/sodaDocCursor.js +7 -3
  27. package/lib/sodaDocument.js +1 -1
  28. package/lib/sodaOperation.js +21 -9
  29. package/lib/util.js +80 -20
  30. package/package/README.md +8 -8
  31. package/package/install.js +8 -7
  32. package/package/prunebinaries.js +4 -5
  33. package/package.json +2 -2
  34. package/LICENSE.md +0 -2685
  35. package/build/Release/oracledb-5.1.0-darwin-x64.node +0 -0
  36. package/build/Release/oracledb-5.1.0-darwin-x64.node-buildinfo.txt +0 -1
  37. package/build/Release/oracledb-5.1.0-linux-x64.node +0 -0
  38. package/build/Release/oracledb-5.1.0-linux-x64.node-buildinfo.txt +0 -1
  39. package/build/Release/oracledb-5.1.0-win32-x64.node +0 -0
  40. package/build/Release/oracledb-5.1.0-win32-x64.node-buildinfo.txt +0 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,166 @@
1
1
  # Change Log
2
2
 
3
+ ## node-oracledb v5.4.0 (9 Jun 2022)
4
+
5
+ - Stated compatibility is now for Node.js 14, 16 and 18. Older releases
6
+ back to Node.js 10.16 should still work.
7
+
8
+ - Added code to capture the [error
9
+ stack](https://oracle.github.io/node-oracledb/doc/api.html#properrstack). PR #1467
10
+ (Slawomir Osoba).
11
+
12
+ - Added support for [token based
13
+ authentication](https://oracle.github.io/node-oracledb/doc/api.html#tokenbasedauth)
14
+ when establishing pool based connections and standalone connections.
15
+
16
+ - Added code to keep the method name in internally bound functions.
17
+ PR #1466 (Slawomir Osoba).
18
+
19
+ - Added a
20
+ [`connection.isHealthy()`](https://oracle.github.io/node-oracledb/doc/api.html#ishealthy)
21
+ function to perform a local connection health check.
22
+
23
+ - Added missing support for binding as `oracledb.DB_TYPE_BINARY_INTEGER`.
24
+
25
+ - Fixed crash with multiple
26
+ [DbObject](https://oracle.github.io/node-oracledb/doc/api.html#dbobjectclass)
27
+ OUT binds ([Issue #1464](https://github.com/oracle/node-oracledb/issues/1464)).
28
+
29
+ - Fixed calling `initOracleClient()` with TypeScript 4.4 ([Issue
30
+ 1462](https://github.com/oracle/node-oracledb/issues/1462)).
31
+
32
+ - Fixed numeric suffix feature (for duplicate SELECT column names when using
33
+ `oracledb.OUT_FORMAT_OBJECT` mode) when the column name is also a JavaScript
34
+ property or method name.
35
+
36
+ - Fixed binding string or buffer data when explicitly specifying the type as
37
+ `oracledb.DB_TYPE_BLOB`, `oracledb.DB_TYPE_CLOB` or `oracledb.DB_TYPE_NCLOB`.
38
+
39
+ - Fixed a crash when certain errors occur during binding. ([ODPI-C
40
+ change](https://github.com/oracle/odpi/commit/13899afcbdf51998863d48752debc3f239f3d655)).
41
+
42
+ - Fixed a bug causing ORA-25263 when dequeuing a message with a specific
43
+ message ID. ([ODPI-C
44
+ change](https://github.com/oracle/odpi/commit/68c438dd3b779e8f5eb146a0762d6cd149cdf9f1)).
45
+
46
+ ## node-oracledb v5.3.0 (22 Oct 2021)
47
+
48
+ - Added a
49
+ [`keepInStmtCache`](https://oracle.github.io/node-oracledb/doc/api.html#propexeckeepinstmtcache)
50
+ option to `execute()`, `executeMany()`, and `queryStream()` to control
51
+ whether executed statements are retained in the Statement Cache.
52
+ ([Issue #182](https://github.com/oracle/node-oracledb/issues/182)).
53
+
54
+ - Encapsulated the connection pool statistics in a [PoolStatistics
55
+ Class](https://oracle.github.io/node-oracledb/doc/api.html#poolstatisticsclass).
56
+ Added a
57
+ [`poolstatistics.logStatistics()`](https://oracle.github.io/node-oracledb/doc/api.html#poolstatisticslogstatistics)
58
+ function, equivalent to the existing `pool.logStatistics()` function. Exposed
59
+ pool properties `user`, `connectString`, `edition`, `events`,
60
+ `externalAuth`, and `homogeneous` on the Pool and PoolStatistics classes.
61
+
62
+ - Added [Two-Phase Commit](https://oracle.github.io/node-oracledb/doc/api.html#twopc) support.
63
+
64
+ - Fixed `queryStream()` logical error handling ([Issue
65
+ 1391](https://github.com/oracle/node-oracledb/issues/1391)).
66
+
67
+ - Prevent intermingling of `queryStream()` streaming and `getRow()`/`getRows()`
68
+ calls.
69
+
70
+ - Made an internal change for TypeScript 4.4's imported function behavior with
71
+ 'this' ([Issue 1408](https://github.com/oracle/node-oracledb/issues/1408)).
72
+
73
+ ## node-oracledb v5.2.0 (7 Jun 2021)
74
+
75
+ - Connection pool changes:
76
+
77
+ - Pool attributes can be changed during application runtime with
78
+ [`pool.reconfigure()`](https://oracle.github.io/node-oracledb/doc/api.html#poolreconfigure).
79
+ This lets properties such as the pool size be changed dynamically instead
80
+ of having to restart the application or create a new pool.
81
+
82
+ - Formalized pool statistics with the addition of a pool creation attribute
83
+ [`enableStatistics`](https://oracle.github.io/node-oracledb/doc/api.html#createpoolpoolattrsstats),
84
+ and with the functions
85
+ [`pool.getStatistics()`](https://oracle.github.io/node-oracledb/doc/api.html#poolgetstatistics)
86
+ and
87
+ [`pool.logStatistics()`](https://oracle.github.io/node-oracledb/doc/api.html#poollogstatistics).
88
+ Pool statistics can be be enabled, disabled, or reset with
89
+ `pool.reconfigure()`. The older `_enableStats` attribute and
90
+ `_logStats()` function are aliases for the new functionality but will be
91
+ removed in a future version of node-oracledb.
92
+
93
+ - Added `currentQueueLength` and `poolMaxPerShard` to the pool statistics.
94
+
95
+ - Fixed connection pool statistics "minimum time in queue" and "maximum
96
+ time in queue" calculations.
97
+
98
+ - Fixed the statement cache size set for the initial `poolMin` connections
99
+ created by `oracledb.createPool()`.
100
+
101
+ - Fixed `queueTimeout` of 0 to allow pool connection requests to be queued
102
+ indefinitely. See [Issue
103
+ 1338](https://github.com/oracle/node-oracledb/issues/1338).
104
+
105
+ - Concurrent operations on a single connection are now queued in the JavaScript
106
+ layer, which can help reduce thread usage for applications that are unable to
107
+ do their own queuing. A new
108
+ [`oracledb.errorOnConcurrentExecute`](https://oracle.github.io/node-oracledb/doc/api.html#propdberrconexecute)
109
+ property can be used during development to throw an error if concurrent
110
+ operations are attempted on any single connection.
111
+
112
+ - Enhanced dead connection detection. If an Oracle Database error indicates
113
+ that a connection is no longer usable, the error `DPI-1080: connection was
114
+ closed by ORA-%d` is now returned. The `%d` will be the Oracle error causing
115
+ the connection to be closed. Using the connection after this will give
116
+ `DPI-1010: not connected`. This behavior also applies for
117
+ [`oracle.callTimeout`](https://oracle.github.io/node-oracledb/doc/api.html#propconncalltimeout)
118
+ errors that result in an unusable connection. ([ODPI-C
119
+ change](https://github.com/oracle/odpi/commit/072739355b8b9d5a4bba3583a79ed53deb15907e)).
120
+
121
+ - Enhanced
122
+ [`getRows()`](https://oracle.github.io/node-oracledb/doc/api.html#getrows) to
123
+ be able to return all rows in one call.
124
+
125
+ - Added `username` as an alias for `user` in connection properties.
126
+
127
+ - Enhanced the numeric suffix feature (for duplicate SELECT column names when
128
+ using `oracledb.OUT_FORMAT_OBJECT` mode) to also support nested cursors and
129
+ REF CURSORS.
130
+
131
+ - Added support for caching the database version number in pooled connections
132
+ with Oracle Client 19 and earlier (later Oracle Clients handle this caching
133
+ internally). This optimization eliminates a round-trip previously often
134
+ required when reusing a pooled connection. ([ODPI-C
135
+ change](https://github.com/oracle/odpi/commit/87268e832363083c1e228922ee11e2fa7aaf8880)).
136
+
137
+ - [SODA](https://oracle.github.io/node-oracledb/doc/api.html#sodaoverview) changes:
138
+
139
+ - Added [SODA metadata
140
+ cache](https://oracle.github.io/node-oracledb/doc/api.html#sodamdcache)
141
+ support to connection pools. This significantly improves the performance
142
+ of opening collections. Caching is available when using Oracle Client
143
+ version 21.3 (or later). It is also available in Oracle Client 19 from
144
+ 19.11 onwards.
145
+
146
+ - Added a SODA
147
+ [`hint()`](https://oracle.github.io/node-oracledb/doc/api.html#sodaoperationclasshint)
148
+ SodaOperation method and equivalent hint option to
149
+ `sodaCollection.insertManyAndGet()`, `sodaCollection.insertOneAndGet()`,
150
+ and `sodaCollection.saveAndGet()` to allow monitoring and passing hints.
151
+
152
+ - Fixed crashes seen with Worker threads ([ODPI-C
153
+ change](https://github.com/oracle/odpi/commit/09da0065409702cc28ba622951ca999a6b77d0e9)).
154
+
155
+ - Fixed a failure when using JavaScript functions on OUT bind variables from
156
+ `executeMany()` that require the connection, for example accessing database
157
+ objects or streaming LOBs.
158
+
159
+ - Fixed use of `oracledb.NCLOB` in `fetchAsString`. See [Issue
160
+ 1351](https://github.com/oracle/node-oracledb/issues/1351).
161
+
162
+ - Test and documentation improvements.
163
+
3
164
  ## node-oracledb v5.1.0 (8 Dec 2020)
4
165
 
5
166
  - Added
@@ -153,7 +314,8 @@ and
153
314
 
154
315
  - Made an internal change to use an Oracle Client 20 feature to avoid a
155
316
  round-trip when accessing
156
- [`oracledb.version`](https://oracle.github.io/node-oracledb/doc/api.html#propdbversion)
317
+ [`connection.oracleServerVersion`](https://oracle.github.io/node-oracledb/doc/api.html#propconnoracleserverversion)
318
+ or [`connection.oracleServerVersionString`](https://oracle.github.io/node-oracledb/doc/api.html#propconnoracleserverversionstring)
157
319
  for the first time.
158
320
 
159
321
  - Updated examples and documentation to make more use of Node.js 8's Stream
@@ -524,7 +686,7 @@ and
524
686
  available from GitHub and oss.oracle.com.
525
687
 
526
688
  The steps for self-hosting a node-oracledb package have changed, see
527
- [INSTALL](https://github.com/oracle/node-oracledb/blob/master/INSTALL.md#selfhost).
689
+ [INSTALL](https://oracle.github.io/node-oracledb/INSTALL.html#selfhost).
528
690
 
529
691
  - Fixed a crash with high frequency notifications from CQN
530
692
  ([#1009](https://github.com/oracle/node-oracledb/issues/1009)).
package/LICENSE.txt ADDED
@@ -0,0 +1,443 @@
1
+ -------------------------------------------------------------------------------
2
+ node-oracledb
3
+ -------------------------------------------------------------------------------
4
+
5
+ You may not use the identified files except in compliance with the
6
+ Apache License, Version 2.0 (the "License.")
7
+
8
+ You may obtain a copy of the License at
9
+ http://www.apache.org/licenses/LICENSE-2.0. A copy of the license is
10
+ also reproduced below.
11
+
12
+ Unless required by applicable law or agreed to in writing, software
13
+ distributed under the License is distributed on an "AS IS" BASIS,
14
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
15
+ implied.
16
+
17
+ See the License for the specific language governing permissions and
18
+ limitations under the License.
19
+
20
+
21
+ Apache License
22
+ Version 2.0, January 2004
23
+ http://www.apache.org/licenses/
24
+
25
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
26
+
27
+ 1. Definitions.
28
+
29
+ "License" shall mean the terms and conditions for use, reproduction,
30
+ and distribution as defined by Sections 1 through 9 of this document.
31
+
32
+ "Licensor" shall mean the copyright owner or entity authorized by
33
+ the copyright owner that is granting the License.
34
+
35
+ "Legal Entity" shall mean the union of the acting entity and all
36
+ other entities that control, are controlled by, or are under common
37
+ control with that entity. For the purposes of this definition,
38
+ "control" means (i) the power, direct or indirect, to cause the
39
+ direction or management of such entity, whether by contract or
40
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
41
+ outstanding shares, or (iii) beneficial ownership of such entity.
42
+
43
+ "You" (or "Your") shall mean an individual or Legal Entity
44
+ exercising permissions granted by this License.
45
+
46
+ "Source" form shall mean the preferred form for making modifications,
47
+ including but not limited to software source code, documentation
48
+ source, and configuration files.
49
+
50
+ "Object" form shall mean any form resulting from mechanical
51
+ transformation or translation of a Source form, including but
52
+ not limited to compiled object code, generated documentation,
53
+ and conversions to other media types.
54
+
55
+ "Work" shall mean the work of authorship, whether in Source or
56
+ Object form, made available under the License, as indicated by a
57
+ copyright notice that is included in or attached to the work
58
+ (an example is provided in the Appendix below).
59
+
60
+ "Derivative Works" shall mean any work, whether in Source or Object
61
+ form, that is based on (or derived from) the Work and for which the
62
+ editorial revisions, annotations, elaborations, or other modifications
63
+ represent, as a whole, an original work of authorship. For the purposes
64
+ of this License, Derivative Works shall not include works that remain
65
+ separable from, or merely link (or bind by name) to the interfaces of,
66
+ the Work and Derivative Works thereof.
67
+
68
+ "Contribution" shall mean any work of authorship, including
69
+ the original version of the Work and any modifications or additions
70
+ to that Work or Derivative Works thereof, that is intentionally
71
+ submitted to Licensor for inclusion in the Work by the copyright owner
72
+ or by an individual or Legal Entity authorized to submit on behalf of
73
+ the copyright owner. For the purposes of this definition, "submitted"
74
+ means any form of electronic, verbal, or written communication sent
75
+ to the Licensor or its representatives, including but not limited to
76
+ communication on electronic mailing lists, source code control systems,
77
+ and issue tracking systems that are managed by, or on behalf of, the
78
+ Licensor for the purpose of discussing and improving the Work, but
79
+ excluding communication that is conspicuously marked or otherwise
80
+ designated in writing by the copyright owner as "Not a Contribution."
81
+
82
+ "Contributor" shall mean Licensor and any individual or Legal Entity
83
+ on behalf of whom a Contribution has been received by Licensor and
84
+ subsequently incorporated within the Work.
85
+
86
+ 2. Grant of Copyright License. Subject to the terms and conditions of
87
+ this License, each Contributor hereby grants to You a perpetual,
88
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
89
+ copyright license to reproduce, prepare Derivative Works of,
90
+ publicly display, publicly perform, sublicense, and distribute the
91
+ Work and such Derivative Works in Source or Object form.
92
+
93
+ 3. Grant of Patent License. Subject to the terms and conditions of
94
+ this License, each Contributor hereby grants to You a perpetual,
95
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
96
+ (except as stated in this section) patent license to make, have made,
97
+ use, offer to sell, sell, import, and otherwise transfer the Work,
98
+ where such license applies only to those patent claims licensable
99
+ by such Contributor that are necessarily infringed by their
100
+ Contribution(s) alone or by combination of their Contribution(s)
101
+ with the Work to which such Contribution(s) was submitted. If You
102
+ institute patent litigation against any entity (including a
103
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
104
+ or a Contribution incorporated within the Work constitutes direct
105
+ or contributory patent infringement, then any patent licenses
106
+ granted to You under this License for that Work shall terminate
107
+ as of the date such litigation is filed.
108
+
109
+ 4. Redistribution. You may reproduce and distribute copies of the
110
+ Work or Derivative Works thereof in any medium, with or without
111
+ modifications, and in Source or Object form, provided that You
112
+ meet the following conditions:
113
+
114
+ (a) You must give any other recipients of the Work or
115
+ Derivative Works a copy of this License; and
116
+
117
+ (b) You must cause any modified files to carry prominent notices
118
+ stating that You changed the files; and
119
+
120
+ (c) You must retain, in the Source form of any Derivative Works
121
+ that You distribute, all copyright, patent, trademark, and
122
+ attribution notices from the Source form of the Work,
123
+ excluding those notices that do not pertain to any part of
124
+ the Derivative Works; and
125
+
126
+ (d) If the Work includes a "NOTICE" text file as part of its
127
+ distribution, then any Derivative Works that You distribute must
128
+ include a readable copy of the attribution notices contained
129
+ within such NOTICE file, excluding those notices that do not
130
+ pertain to any part of the Derivative Works, in at least one
131
+ of the following places: within a NOTICE text file distributed
132
+ as part of the Derivative Works; within the Source form or
133
+ documentation, if provided along with the Derivative Works; or,
134
+ within a display generated by the Derivative Works, if and
135
+ wherever such third-party notices normally appear. The contents
136
+ of the NOTICE file are for informational purposes only and
137
+ do not modify the License. You may add Your own attribution
138
+ notices within Derivative Works that You distribute, alongside
139
+ or as an addendum to the NOTICE text from the Work, provided
140
+ that such additional attribution notices cannot be construed
141
+ as modifying the License.
142
+
143
+ You may add Your own copyright statement to Your modifications and
144
+ may provide additional or different license terms and conditions
145
+ for use, reproduction, or distribution of Your modifications, or
146
+ for any such Derivative Works as a whole, provided Your use,
147
+ reproduction, and distribution of the Work otherwise complies with
148
+ the conditions stated in this License.
149
+
150
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
151
+ any Contribution intentionally submitted for inclusion in the Work
152
+ by You to the Licensor shall be under the terms and conditions of
153
+ this License, without any additional terms or conditions.
154
+ Notwithstanding the above, nothing herein shall supersede or modify
155
+ the terms of any separate license agreement you may have executed
156
+ with Licensor regarding such Contributions.
157
+
158
+ 6. Trademarks. This License does not grant permission to use the trade
159
+ names, trademarks, service marks, or product names of the Licensor,
160
+ except as required for reasonable and customary use in describing the
161
+ origin of the Work and reproducing the content of the NOTICE file.
162
+
163
+ 7. Disclaimer of Warranty. Unless required by applicable law or
164
+ agreed to in writing, Licensor provides the Work (and each
165
+ Contributor provides its Contributions) on an "AS IS" BASIS,
166
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
167
+ implied, including, without limitation, any warranties or conditions
168
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
169
+ PARTICULAR PURPOSE. You are solely responsible for determining the
170
+ appropriateness of using or redistributing the Work and assume any
171
+ risks associated with Your exercise of permissions under this License.
172
+
173
+ 8. Limitation of Liability. In no event and under no legal theory,
174
+ whether in tort (including negligence), contract, or otherwise,
175
+ unless required by applicable law (such as deliberate and grossly
176
+ negligent acts) or agreed to in writing, shall any Contributor be
177
+ liable to You for damages, including any direct, indirect, special,
178
+ incidental, or consequential damages of any character arising as a
179
+ result of this License or out of the use or inability to use the
180
+ Work (including but not limited to damages for loss of goodwill,
181
+ work stoppage, computer failure or malfunction, or any and all
182
+ other commercial damages or losses), even if such Contributor
183
+ has been advised of the possibility of such damages.
184
+
185
+ 9. Accepting Warranty or Additional Liability. While redistributing
186
+ the Work or Derivative Works thereof, You may choose to offer,
187
+ and charge a fee for, acceptance of support, warranty, indemnity,
188
+ or other liability obligations and/or rights consistent with this
189
+ License. However, in accepting such obligations, You may act only
190
+ on Your own behalf and on Your sole responsibility, not on behalf
191
+ of any other Contributor, and only if You agree to indemnify,
192
+ defend, and hold each Contributor harmless for any liability
193
+ incurred by, or claims asserted against, such Contributor by reason
194
+ of your accepting any such warranty or additional liability.
195
+
196
+ END OF TERMS AND CONDITIONS
197
+
198
+ APPENDIX: How to apply the Apache License to your work.
199
+
200
+ To apply the Apache License to your work, attach the following
201
+ boilerplate notice, with the fields enclosed by brackets "[]"
202
+ replaced with your own identifying information. (Don't include
203
+ the brackets!) The text should be enclosed in the appropriate
204
+ comment syntax for the file format. We also recommend that a
205
+ file or class name and description of purpose be included on the
206
+ same "printed page" as the copyright notice for easier
207
+ identification within third-party archives.
208
+
209
+ Copyright [yyyy] [name of copyright owner]
210
+
211
+ Licensed under the Apache License, Version 2.0 (the "License");
212
+ you may not use this file except in compliance with the License.
213
+ You may obtain a copy of the License at
214
+
215
+ http://www.apache.org/licenses/LICENSE-2.0
216
+
217
+ Unless required by applicable law or agreed to in writing, software
218
+ distributed under the License is distributed on an "AS IS" BASIS,
219
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
220
+ See the License for the specific language governing permissions and
221
+ limitations under the License.
222
+
223
+ -------------------------------------------------------------------------------
224
+ ODPI-C
225
+ -------------------------------------------------------------------------------
226
+
227
+ Copyright (c) 2016, 2022 Oracle and/or its affiliates.
228
+
229
+ This program is free software: you can modify it and/or redistribute it under
230
+ the terms of:
231
+
232
+ (i) the Universal Permissive License v 1.0 or at your option, any
233
+ later version (<http://oss.oracle.com/licenses/upl>); and/or
234
+
235
+ (ii) the Apache License v 2.0. (<http://www.apache.org/licenses/LICENSE-2.0>)
236
+
237
+
238
+ The Universal Permissive License (UPL), Version 1.0
239
+ ===================================================
240
+
241
+ Subject to the condition set forth below, permission is hereby granted to any
242
+ person obtaining a copy of this software, associated documentation and/or data
243
+ (collectively the "Software"), free of charge and under any and all copyright
244
+ rights in the Software, and any and all patent rights owned or freely
245
+ licensable by each licensor hereunder covering either (i) the unmodified
246
+ Software as contributed to or provided by such licensor, or (ii) the Larger
247
+ Works (as defined below), to deal in both
248
+
249
+ (a) the Software, and
250
+
251
+ (b) any piece of software and/or hardware listed in the lrgrwrks.txt file if
252
+ one is included with the Software (each a "Larger Work" to which the
253
+ Software is contributed by such licensors),
254
+
255
+ without restriction, including without limitation the rights to copy, create
256
+ derivative works of, display, perform, and distribute the Software and make,
257
+ use, sell, offer for sale, import, export, have made, and have sold the
258
+ Software and the Larger Work(s), and to sublicense the foregoing rights on
259
+ either these or other terms.
260
+
261
+ This license is subject to the following condition:
262
+
263
+ The above copyright notice and either this complete permission notice or at a
264
+ minimum a reference to the UPL must be included in all copies or substantial
265
+ portions of the Software.
266
+
267
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
268
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
269
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
270
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
271
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
272
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
273
+ SOFTWARE.
274
+
275
+
276
+ Apache License
277
+ ==============
278
+
279
+ Version 2.0, January 2004
280
+
281
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
282
+
283
+ 1. **Definitions**.
284
+
285
+ "License" shall mean the terms and conditions for use, reproduction, and
286
+ distribution as defined by Sections 1 through 9 of this document.
287
+
288
+ "Licensor" shall mean the copyright owner or entity authorized by the
289
+ copyright owner that is granting the License.
290
+
291
+ "Legal Entity" shall mean the union of the acting entity and all other
292
+ entities that control, are controlled by, or are under common control with
293
+ that entity. For the purposes of this definition, "control" means (i) the
294
+ power, direct or indirect, to cause the direction or management of such
295
+ entity, whether by contract or otherwise, or (ii) ownership of fifty
296
+ percent (50%) or more of the outstanding shares, or (iii) beneficial
297
+ ownership of such entity.
298
+
299
+ "You" (or "Your") shall mean an individual or Legal Entity exercising
300
+ permissions granted by this License.
301
+
302
+ "Source" form shall mean the preferred form for making modifications,
303
+ including but not limited to software source code, documentation source,
304
+ and configuration files.
305
+
306
+ "Object" form shall mean any form resulting from mechanical transformation
307
+ or translation of a Source form, including but not limited to compiled
308
+ object code, generated documentation, and conversions to other media types.
309
+
310
+ "Work" shall mean the work of authorship, whether in Source or Object form,
311
+ made available under the License, as indicated by a copyright notice that
312
+ is included in or attached to the work (an example is provided in the
313
+ Appendix below).
314
+
315
+ "Derivative Works" shall mean any work, whether in Source or Object form,
316
+ that is based on (or derived from) the Work and for which the editorial
317
+ revisions, annotations, elaborations, or other modifications represent, as
318
+ a whole, an original work of authorship. For the purposes of this License,
319
+ Derivative Works shall not include works that remain separable from, or
320
+ merely link (or bind by name) to the interfaces of, the Work and Derivative
321
+ Works thereof.
322
+
323
+ "Contribution" shall mean any work of authorship, including the original
324
+ version of the Work and any modifications or additions to that Work or
325
+ Derivative Works thereof, that is intentionally submitted to Licensor for
326
+ inclusion in the Work by the copyright owner or by an individual or Legal
327
+ Entity authorized to submit on behalf of the copyright owner. For the
328
+ purposes of this definition, "submitted" means any form of electronic,
329
+ verbal, or written communication sent to the Licensor or its
330
+ representatives, including but not limited to communication on electronic
331
+ mailing lists, source code control systems, and issue tracking systems that
332
+ are managed by, or on behalf of, the Licensor for the purpose of discussing
333
+ and improving the Work, but excluding communication that is conspicuously
334
+ marked or otherwise designated in writing by the copyright owner as "Not a
335
+ Contribution."
336
+
337
+ "Contributor" shall mean Licensor and any individual or Legal Entity on
338
+ behalf of whom a Contribution has been received by Licensor and
339
+ subsequently incorporated within the Work.
340
+
341
+ 2. **Grant of Copyright License.** Subject to the terms and conditions of this
342
+ License, each Contributor hereby grants to You a perpetual, worldwide,
343
+ non-exclusive, no-charge, royalty-free, irrevocable copyright license to
344
+ reproduce, prepare Derivative Works of, publicly display, publicly perform,
345
+ sublicense, and distribute the Work and such Derivative Works in Source or
346
+ Object form.
347
+
348
+ 3. **Grant of Patent License.** Subject to the terms and conditions of this
349
+ License, each Contributor hereby grants to You a perpetual, worldwide,
350
+ non-exclusive, no-charge, royalty-free, irrevocable (except as stated in
351
+ this section) patent license to make, have made, use, offer to sell, sell,
352
+ import, and otherwise transfer the Work, where such license applies only to
353
+ those patent claims licensable by such Contributor that are necessarily
354
+ infringed by their Contribution(s) alone or by combination of their
355
+ Contribution(s) with the Work to which such Contribution(s) was submitted.
356
+ If You institute patent litigation against any entity (including a
357
+ cross-claim or counterclaim in a lawsuit) alleging that the Work or a
358
+ Contribution incorporated within the Work constitutes direct or
359
+ contributory patent infringement, then any patent licenses granted to You
360
+ under this License for that Work shall terminate as of the date such
361
+ litigation is filed.
362
+
363
+ 4. **Redistribution.** You may reproduce and distribute copies of the Work or
364
+ Derivative Works thereof in any medium, with or without modifications, and
365
+ in Source or Object form, provided that You meet the following conditions:
366
+
367
+ 1. You must give any other recipients of the Work or Derivative Works a
368
+ copy of this License; and
369
+
370
+ 2. You must cause any modified files to carry prominent notices stating
371
+ that You changed the files; and
372
+
373
+ 3. You must retain, in the Source form of any Derivative Works that You
374
+ distribute, all copyright, patent, trademark, and attribution notices
375
+ from the Source form of the Work, excluding those notices that do not
376
+ pertain to any part of the Derivative Works; and
377
+
378
+ 4. If the Work includes a "NOTICE" text file as part of its distribution,
379
+ then any Derivative Works that You distribute must include a readable
380
+ copy of the attribution notices contained within such NOTICE file,
381
+ excluding those notices that do not pertain to any part of the
382
+ Derivative Works, in at least one of the following places: within a
383
+ NOTICE text file distributed as part of the Derivative Works; within
384
+ the Source form or documentation, if provided along with the Derivative
385
+ Works; or, within a display generated by the Derivative Works, if and
386
+ wherever such third-party notices normally appear. The contents of the
387
+ NOTICE file are for informational purposes only and do not modify the
388
+ License. You may add Your own attribution notices within Derivative
389
+ Works that You distribute, alongside or as an addendum to the NOTICE
390
+ text from the Work, provided that such additional attribution notices
391
+ cannot be construed as modifying the License.
392
+
393
+ You may add Your own copyright statement to Your modifications and may
394
+ provide additional or different license terms and conditions for use,
395
+ reproduction, or distribution of Your modifications, or for any such
396
+ Derivative Works as a whole, provided Your use, reproduction, and
397
+ distribution of the Work otherwise complies with the conditions stated
398
+ in this License.
399
+
400
+ 5. **Submission of Contributions.** Unless You explicitly state otherwise, any
401
+ Contribution intentionally submitted for inclusion in the Work by You to
402
+ the Licensor shall be under the terms and conditions of this License,
403
+ without any additional terms or conditions. Notwithstanding the above,
404
+ nothing herein shall supersede or modify the terms of any separate license
405
+ agreement you may have executed with Licensor regarding such Contributions.
406
+
407
+ 6. **Trademarks.** This License does not grant permission to use the trade
408
+ names, trademarks, service marks, or product names of the Licensor, except
409
+ as required for reasonable and customary use in describing the origin of
410
+ the Work and reproducing the content of the NOTICE file.
411
+
412
+ 7. **Disclaimer of Warranty.** Unless required by applicable law or agreed to
413
+ in writing, Licensor provides the Work (and each Contributor provides its
414
+ Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
415
+ KIND, either express or implied, including, without limitation, any
416
+ warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or
417
+ FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for
418
+ determining the appropriateness of using or redistributing the Work and
419
+ assume any risks associated with Your exercise of permissions under this
420
+ License.
421
+
422
+ 8. **Limitation of Liability.** In no event and under no legal theory, whether
423
+ in tort (including negligence), contract, or otherwise, unless required by
424
+ applicable law (such as deliberate and grossly negligent acts) or agreed to
425
+ in writing, shall any Contributor be liable to You for damages, including
426
+ any direct, indirect, special, incidental, or consequential damages of any
427
+ character arising as a result of this License or out of the use or
428
+ inability to use the Work (including but not limited to damages for loss of
429
+ goodwill, work stoppage, computer failure or malfunction, or any and all
430
+ other commercial damages or losses), even if such Contributor has been
431
+ advised of the possibility of such damages.
432
+
433
+ 9. **Accepting Warranty or Additional Liability.** While redistributing the
434
+ Work or Derivative Works thereof, You may choose to offer, and charge a fee
435
+ for, acceptance of support, warranty, indemnity, or other liability
436
+ obligations and/or rights consistent with this License. However, in
437
+ accepting such obligations, You may act only on Your own behalf and on Your
438
+ sole responsibility, not on behalf of any other Contributor, and only if
439
+ You agree to indemnify, defend, and hold each Contributor harmless for any
440
+ liability incurred by, or claims asserted against, such Contributor by
441
+ reason of your accepting any such warranty or additional liability.
442
+
443
+ END OF TERMS AND CONDITIONS
package/NOTICE.txt ADDED
@@ -0,0 +1 @@
1
+ Copyright (c) 2015, 2022, Oracle and/or its affiliates.