licensee 9.14.1 → 9.15.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (86) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE.md +1 -1
  3. data/bin/licensee +1 -1
  4. data/lib/licensee.rb +1 -1
  5. data/lib/licensee/commands/detect.rb +2 -4
  6. data/lib/licensee/commands/diff.rb +1 -3
  7. data/lib/licensee/content_helper.rb +23 -27
  8. data/lib/licensee/hash_helper.rb +1 -1
  9. data/lib/licensee/license.rb +28 -14
  10. data/lib/licensee/matchers/copyright.rb +2 -7
  11. data/lib/licensee/matchers/cran.rb +1 -1
  12. data/lib/licensee/matchers/dice.rb +1 -1
  13. data/lib/licensee/project_files/license_file.rb +29 -22
  14. data/lib/licensee/project_files/project_file.rb +2 -4
  15. data/lib/licensee/project_files/readme_file.rb +1 -1
  16. data/lib/licensee/projects/fs_project.rb +1 -3
  17. data/lib/licensee/projects/git_project.rb +6 -4
  18. data/lib/licensee/projects/project.rb +11 -10
  19. data/lib/licensee/version.rb +1 -1
  20. data/licensee.gemspec +5 -4
  21. data/spec/fixture_spec.rb +2 -2
  22. data/spec/fixtures/bsd-3-authorowner/LICENSE +27 -0
  23. data/spec/fixtures/cc-by-sa-mdlinks/License.md +173 -0
  24. data/spec/fixtures/cc-by-sa-nocclicensor/License.md +425 -0
  25. data/spec/fixtures/detect.json +5 -5
  26. data/spec/fixtures/eupl-cal2017/LICENSE.txt +274 -0
  27. data/spec/fixtures/fixtures.yml +45 -25
  28. data/spec/fixtures/license-hashes.json +39 -38
  29. data/spec/fixtures/pixar-modified-apache/LICENSE.txt +174 -0
  30. data/spec/integration_spec.rb +46 -6
  31. data/spec/licensee/commands/detect_spec.rb +2 -2
  32. data/spec/licensee/content_helper_spec.rb +14 -13
  33. data/spec/licensee/license_spec.rb +5 -5
  34. data/spec/licensee/matchers/dice_matcher_spec.rb +2 -2
  35. data/spec/licensee/project_files/license_file_spec.rb +8 -2
  36. data/spec/licensee/project_spec.rb +1 -3
  37. data/spec/licensee_spec.rb +1 -1
  38. data/spec/spec_helper.rb +3 -3
  39. data/spec/vendored_license_spec.rb +1 -1
  40. data/vendor/choosealicense.com/_licenses/apache-2.0.txt +1 -1
  41. data/vendor/choosealicense.com/_licenses/bsl-1.0.txt +1 -1
  42. data/vendor/choosealicense.com/_licenses/eupl-1.2.txt +75 -58
  43. data/vendor/choosealicense.com/_licenses/mit-0.txt +45 -0
  44. data/vendor/choosealicense.com/_licenses/odbl-1.0.txt +1 -1
  45. data/vendor/choosealicense.com/_licenses/unlicense.txt +1 -1
  46. data/vendor/license-list-XML/src/0BSD.xml +21 -0
  47. data/vendor/license-list-XML/src/AFL-3.0.xml +212 -0
  48. data/vendor/license-list-XML/src/AGPL-3.0.xml +852 -0
  49. data/vendor/license-list-XML/src/Apache-2.0.xml +223 -0
  50. data/vendor/license-list-XML/src/Artistic-2.0.xml +238 -0
  51. data/vendor/license-list-XML/src/BSD-2-Clause.xml +42 -0
  52. data/vendor/license-list-XML/src/BSD-3-Clause-Clear.xml +59 -0
  53. data/vendor/license-list-XML/src/BSD-3-Clause.xml +46 -0
  54. data/vendor/license-list-XML/src/BSD-4-Clause.xml +59 -0
  55. data/vendor/license-list-XML/src/BSL-1.0.xml +30 -0
  56. data/vendor/license-list-XML/src/CC-BY-4.0.xml +444 -0
  57. data/vendor/license-list-XML/src/CC-BY-SA-4.0.xml +475 -0
  58. data/vendor/license-list-XML/src/CC0-1.0.xml +153 -0
  59. data/vendor/license-list-XML/src/CECILL-2.1.xml +669 -0
  60. data/vendor/license-list-XML/src/ECL-2.0.xml +242 -0
  61. data/vendor/license-list-XML/src/EPL-1.0.xml +255 -0
  62. data/vendor/license-list-XML/src/EPL-2.0.xml +639 -0
  63. data/vendor/license-list-XML/src/EUPL-1.1.xml +337 -0
  64. data/vendor/license-list-XML/src/EUPL-1.2.xml +502 -0
  65. data/vendor/license-list-XML/src/GPL-2.0.xml +474 -0
  66. data/vendor/license-list-XML/src/GPL-3.0.xml +858 -0
  67. data/vendor/license-list-XML/src/ISC.xml +29 -0
  68. data/vendor/license-list-XML/src/LGPL-2.1.xml +662 -0
  69. data/vendor/license-list-XML/src/LGPL-3.0.xml +260 -0
  70. data/vendor/license-list-XML/src/LPPL-1.3c.xml +380 -0
  71. data/vendor/license-list-XML/src/MIT-0.xml +40 -0
  72. data/vendor/license-list-XML/src/MIT.xml +32 -0
  73. data/vendor/license-list-XML/src/MPL-2.0.xml +438 -0
  74. data/vendor/license-list-XML/src/MS-PL.xml +89 -0
  75. data/vendor/license-list-XML/src/MS-RL.xml +97 -0
  76. data/vendor/license-list-XML/src/NCSA.xml +60 -0
  77. data/vendor/license-list-XML/src/ODbL-1.0.xml +660 -0
  78. data/vendor/license-list-XML/src/OFL-1.1.xml +94 -0
  79. data/vendor/license-list-XML/src/OSL-3.0.xml +209 -0
  80. data/vendor/license-list-XML/src/PostgreSQL.xml +32 -0
  81. data/vendor/license-list-XML/src/UPL-1.0.xml +46 -0
  82. data/vendor/license-list-XML/src/Unlicense.xml +27 -0
  83. data/vendor/license-list-XML/src/Vim.xml +124 -0
  84. data/vendor/license-list-XML/src/WTFPL.xml +30 -0
  85. data/vendor/license-list-XML/src/Zlib.xml +38 -0
  86. metadata +73 -13
@@ -0,0 +1,29 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <SPDXLicenseCollection xmlns="http://www.spdx.org/license">
3
+ <license isOsiApproved="true" licenseId="ISC" name="ISC License">
4
+ <crossRefs>
5
+ <crossRef>https://www.isc.org/downloads/software-support-policy/isc-license/</crossRef>
6
+ <crossRef>https://opensource.org/licenses/ISC</crossRef>
7
+ </crossRefs>
8
+ <text>
9
+ <titleText>
10
+ <p><alt name="title" match="(The )?ISC License( \(ISC[L]?\))?:?">ISC License</alt></p>
11
+ </titleText>
12
+ <copyrightText>
13
+ <p>Copyright (c) 2004-2010 by Internet Systems Consortium, Inc. ("ISC")
14
+ <br/>Copyright (c) 1995-2003 by Internet Software Consortium
15
+ </p>
16
+ </copyrightText>
17
+
18
+ <p>Permission to use, copy, modify, and<optional>/or</optional> distribute this software for any purpose with or without fee is
19
+ hereby granted, provided that the above copyright notice and this permission notice appear in all
20
+ copies.</p>
21
+ <p>THE SOFTWARE IS PROVIDED "AS IS" AND <alt match=".+" name="copyrightHolder">ISC</alt> DISCLAIMS ALL
22
+ WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
23
+ FITNESS. IN NO EVENT SHALL <alt match=".+" name="copyrightHolderLiability">ISC</alt> BE LIABLE FOR ANY
24
+ SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
25
+ USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
26
+ OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.</p>
27
+ </text>
28
+ </license>
29
+ </SPDXLicenseCollection>
@@ -0,0 +1,662 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <SPDXLicenseCollection xmlns="http://www.spdx.org/license">
3
+ <license licenseId="LGPL-2.1" isOsiApproved="true"
4
+ name="GNU Lesser General Public License v2.1 only"
5
+ isDeprecated="true" deprecatedVersion="3.0">
6
+ <obsoletedBys>
7
+ <obsoletedBy>LGPL-2.1-only</obsoletedBy>
8
+ <obsoletedBy expression="LGPL-2.1+">LGPL-2.1-or-later</obsoletedBy>
9
+ </obsoletedBys>
10
+ <crossRefs>
11
+ <crossRef>https://www.gnu.org/licenses/old-licenses/lgpl-2.1-standalone.html</crossRef>
12
+ <crossRef>https://opensource.org/licenses/LGPL-2.1</crossRef>
13
+ </crossRefs>
14
+ <standardLicenseHeader>
15
+ Copyright (C) <alt name="copyright" match=".+">year name of author</alt>
16
+ <p>
17
+ This library is free software; you can redistribute it and/or
18
+ modify it under the terms of the GNU Lesser General Public
19
+ License as published by the Free Software Foundation; version 2.1.
20
+ </p>
21
+ <p>
22
+ This library is distributed in the hope that it will be useful,
23
+ but WITHOUT ANY WARRANTY; without even the implied warranty
24
+ of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
25
+ See the GNU Lesser General Public License for more details.
26
+ </p>
27
+ <p>
28
+ You should have received a copy of the GNU Lesser General Public License
29
+ along with this library; if not, write to the Free Software Foundation,
30
+ Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
31
+ </p>
32
+ </standardLicenseHeader>
33
+ <text>
34
+ <titleText>
35
+ <p>
36
+ GNU LESSER GENERAL PUBLIC LICENSE
37
+ </p>
38
+ <p>
39
+ Version 2.1, February 1999
40
+ </p>
41
+ </titleText>
42
+ <p>
43
+ Copyright (C) 1991, 1999 Free Software Foundation, Inc.<br></br>
44
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
45
+ </p>
46
+ <p>
47
+ Everyone is permitted to copy and distribute verbatim copies
48
+ of this license document, but changing it is not allowed.
49
+ </p>
50
+ <p>
51
+ [This is the first released version of the Lesser GPL.
52
+ It also counts as the successor of the GNU Library
53
+ Public License, version 2, hence the version number 2.1.]
54
+ </p>
55
+ <p>
56
+ Preamble
57
+ </p>
58
+ <p>
59
+ The licenses for most software are designed to take away your
60
+ freedom to share and change it. By contrast, the GNU General Public
61
+ Licenses are intended to guarantee your freedom to share and change
62
+ free software--to make sure the software is free for all its users.
63
+ </p>
64
+ <p>
65
+ This license, the Lesser General Public License, applies to some
66
+ specially designated software packages--typically libraries--of the
67
+ Free Software Foundation and other authors who decide to use it. You
68
+ can use it too, but we suggest you first think carefully about whether
69
+ this license or the ordinary General Public License is the better
70
+ strategy to use in any particular case, based on the explanations below.
71
+ </p>
72
+ <p>
73
+ When we speak of free software, we are referring to freedom of use, not
74
+ price. Our General Public Licenses are designed to make sure that you
75
+ have the freedom to distribute copies of free software (and charge for
76
+ this service if you wish); that you receive source code or can get it if
77
+ you want it; that you can change the software and use pieces of it in new
78
+ free programs; and that you are informed that you can do these things.
79
+ </p>
80
+ <p>
81
+ To protect your rights, we need to make restrictions that forbid
82
+ distributors to deny you these rights or to ask you to surrender
83
+ these rights. These restrictions translate to certain responsibilities
84
+ for you if you distribute copies of the library or if you modify it.
85
+ </p>
86
+ <p>
87
+ For example, if you distribute copies of the library, whether gratis
88
+ or for a fee, you must give the recipients all the rights that we
89
+ gave you. You must make sure that they, too, receive or can get the
90
+ source code. If you link other code with the library, you must provide
91
+ complete object files to the recipients, so that they can relink them
92
+ with the library after making changes to the library and recompiling
93
+ it. And you must show them these terms so they know their rights.
94
+ </p>
95
+ <p>
96
+ We protect your rights with a two-step method: (1) we copyright
97
+ the library, and (2) we offer you this license, which gives you
98
+ legal permission to copy, distribute and/or modify the library.
99
+ </p>
100
+ <p>
101
+ To protect each distributor, we want to make it very clear that there
102
+ is no warranty for the free library. Also, if the library is modified
103
+ by someone else and passed on, the recipients should know that what they
104
+ have is not the original version, so that the original author's reputation
105
+ will not be affected by problems that might be introduced by others.
106
+ </p>
107
+ <p>
108
+ Finally, software patents pose a constant threat to the existence
109
+ of any free program. We wish to make sure that a company cannot
110
+ effectively restrict the users of a free program by obtaining a
111
+ restrictive license from a patent holder. Therefore, we insist that
112
+ any patent license obtained for a version of the library must be
113
+ consistent with the full freedom of use specified in this license.
114
+ </p>
115
+ <p>
116
+ Most GNU software, including some libraries, is covered by
117
+ the ordinary GNU General Public License. This license, the GNU
118
+ Lesser General Public License, applies to certain designated
119
+ libraries, and is quite different from the ordinary General
120
+ Public License. We use this license for certain libraries in
121
+ order to permit linking those libraries into non-free programs.
122
+ </p>
123
+ <p>
124
+ When a program is linked with a library, whether statically or using
125
+ a shared library, the combination of the two is legally speaking a
126
+ combined work, a derivative of the original library. The ordinary
127
+ General Public License therefore permits such linking only if the entire
128
+ combination fits its criteria of freedom. The Lesser General Public
129
+ License permits more lax criteria for linking other code with the library.
130
+ </p>
131
+ <p>
132
+ We call this license the "Lesser" General Public License
133
+ because it does Less to protect the user's freedom than the
134
+ ordinary General Public License. It also provides other free
135
+ software developers Less of an advantage over competing non-free
136
+ programs. These disadvantages are the reason we use the ordinary
137
+ General Public License for many libraries. However, the Lesser
138
+ license provides advantages in certain special circumstances.
139
+ </p>
140
+ <p>
141
+ For example, on rare occasions, there may be a special need to
142
+ encourage the widest possible use of a certain library, so that
143
+ it becomes a de-facto standard. To achieve this, non-free programs
144
+ must be allowed to use the library. A more frequent case is that a
145
+ free library does the same job as widely used non-free libraries.
146
+ In this case, there is little to gain by limiting the free library
147
+ to free software only, so we use the Lesser General Public License.
148
+ </p>
149
+ <p>
150
+ In other cases, permission to use a particular library in non-free
151
+ programs enables a greater number of people to use a large body of free
152
+ software. For example, permission to use the GNU C Library in non-free
153
+ programs enables many more people to use the whole GNU operating
154
+ system, as well as its variant, the GNU/Linux operating system.
155
+ </p>
156
+ <p>
157
+ Although the Lesser General Public License is Less protective of
158
+ the users' freedom, it does ensure that the user of a program that
159
+ is linked with the Library has the freedom and the wherewithal
160
+ to run that program using a modified version of the Library.
161
+ </p>
162
+ <p>
163
+ The precise terms and conditions for copying, distribution and
164
+ modification follow. Pay close attention to the difference between
165
+ a "work based on the library" and a "work that uses the library".
166
+ The former contains code derived from the library, whereas
167
+ the latter must be combined with the library in order to run.
168
+ </p>
169
+ <p>
170
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
171
+ </p>
172
+ <list>
173
+ <item>
174
+ <bullet>0.</bullet>
175
+ This License Agreement applies to any software library or
176
+ other program which contains a notice placed by the copyright
177
+ holder or other authorized party saying it may be distributed
178
+ under the terms of this Lesser General Public License (also
179
+ called "this License"). Each licensee is addressed as "you".
180
+ <p>
181
+ A "library" means a collection of software functions and/or data
182
+ prepared so as to be conveniently linked with application programs
183
+ (which use some of those functions and data) to form executables.
184
+ </p>
185
+ <p>
186
+ The "Library", below, refers to any such software library or work
187
+ which has been distributed under these terms. A "work based on
188
+ the Library" means either the Library or any derivative work under
189
+ copyright law: that is to say, a work containing the Library or a
190
+ portion of it, either verbatim or with modifications and/or translated
191
+ straightforwardly into another language. (Hereinafter, translation
192
+ is included without limitation in the term "modification".)
193
+ </p>
194
+ <p>
195
+ "Source code" for a work means the preferred form of the work
196
+ for making modifications to it. For a library, complete source
197
+ code means all the source code for all modules it contains,
198
+ plus any associated interface definition files, plus the scripts
199
+ used to control compilation and installation of the library.
200
+ </p>
201
+ <p>
202
+ Activities other than copying, distribution and modification are
203
+ not covered by this License; they are outside its scope. The act of
204
+ running a program using the Library is not restricted, and output
205
+ from such a program is covered only if its contents constitute a
206
+ work based on the Library (independent of the use of the Library
207
+ in a tool for writing it). Whether that is true depends on what
208
+ the Library does and what the program that uses the Library does.
209
+ </p>
210
+ </item>
211
+ <item>
212
+ <bullet>1.</bullet>
213
+ You may copy and distribute verbatim copies of the Library's complete
214
+ source code as you receive it, in any medium, provided that you
215
+ conspicuously and appropriately publish on each copy an appropriate
216
+ copyright notice and disclaimer of warranty; keep intact all the
217
+ notices that refer to this License and to the absence of any warranty;
218
+ and distribute a copy of this License along with the Library.
219
+ <p>
220
+ You may charge a fee for the physical act of
221
+ transferring a copy, and you may at your option
222
+ offer warranty protection in exchange for a fee.
223
+ </p>
224
+ </item>
225
+ <item>
226
+ <bullet>2.</bullet>
227
+ You may modify your copy or copies of the Library or any portion
228
+ of it, thus forming a work based on the Library, and copy and
229
+ distribute such modifications or work under the terms of Section
230
+ 1 above, provided that you also meet all of these conditions:
231
+ <list>
232
+ <item>
233
+ <bullet>a)</bullet>
234
+ The modified work must itself be a software library.
235
+ </item>
236
+ <item>
237
+ <bullet>b)</bullet>
238
+ You must cause the files modified to carry prominent notices
239
+ stating that you changed the files and the date of any change.
240
+ </item>
241
+ <item>
242
+ <bullet>c)</bullet>
243
+ You must cause the whole of the work to be licensed at no
244
+ charge to all third parties under the terms of this License.
245
+ </item>
246
+ <item>
247
+ <bullet>d)</bullet>
248
+ If a facility in the modified Library refers to a function
249
+ or a table of data to be supplied by an application program
250
+ that uses the facility, other than as an argument passed
251
+ when the facility is invoked, then you must make a good faith
252
+ effort to ensure that, in the event an application does not
253
+ supply such function or table, the facility still operates,
254
+ and performs whatever part of its purpose remains meaningful.
255
+ </item>
256
+ </list>
257
+ <p>
258
+ (For example, a function in a library to compute square roots
259
+ has a purpose that is entirely well-defined independent of
260
+ the application. Therefore, Subsection 2d requires that any
261
+ application-supplied function or table used by this function
262
+ must be optional: if the application does not supply it,
263
+ the square root function must still compute square roots.)
264
+ </p>
265
+ <p>
266
+ These requirements apply to the modified work as a whole. If
267
+ identifiable sections of that work are not derived from the
268
+ Library, and can be reasonably considered independent and separate
269
+ works in themselves, then this License, and its terms, do not
270
+ apply to those sections when you distribute them as separate
271
+ works. But when you distribute the same sections as part of a
272
+ whole which is a work based on the Library, the distribution
273
+ of the whole must be on the terms of this License, whose
274
+ permissions for other licensees extend to the entire whole,
275
+ and thus to each and every part regardless of who wrote it.
276
+ </p>
277
+ <p>
278
+ Thus, it is not the intent of this section to claim rights or
279
+ contest your rights to work written entirely by you; rather,
280
+ the intent is to exercise the right to control the distribution
281
+ of derivative or collective works based on the Library.
282
+ </p>
283
+ <p>
284
+ In addition, mere aggregation of another work not based on
285
+ the Library with the Library (or with a work based on the
286
+ Library) on a volume of a storage or distribution medium does
287
+ not bring the other work under the scope of this License.
288
+ </p>
289
+ </item>
290
+ <item>
291
+ <bullet>3.</bullet>
292
+ You may opt to apply the terms of the ordinary GNU General
293
+ Public License instead of this License to a given copy of the
294
+ Library. To do this, you must alter all the notices that refer
295
+ to this License, so that they refer to the ordinary GNU General
296
+ Public License, version 2, instead of to this License. (If a
297
+ newer version than version 2 of the ordinary GNU General Public
298
+ License has appeared, then you can specify that version instead
299
+ if you wish.) Do not make any other change in these notices.
300
+ <p>
301
+ Once this change is made in a given copy, it is irreversible for
302
+ that copy, so the ordinary GNU General Public License applies to
303
+ all subsequent copies and derivative works made from that copy.
304
+ </p>
305
+ <p>
306
+ This option is useful when you wish to copy part of the
307
+ code of the Library into a program that is not a library.
308
+ </p>
309
+ </item>
310
+ <item>
311
+ <bullet>4.</bullet>
312
+ You may copy and distribute the Library (or a portion or derivative
313
+ of it, under Section 2) in object code or executable form under
314
+ the terms of Sections 1 and 2 above provided that you accompany
315
+ it with the complete corresponding machine-readable source code,
316
+ which must be distributed under the terms of Sections 1 and 2
317
+ above on a medium customarily used for software interchange.
318
+ <p>
319
+ If distribution of object code is made by offering access to copy
320
+ from a designated place, then offering equivalent access to copy
321
+ the source code from the same place satisfies the requirement
322
+ to distribute the source code, even though third parties are
323
+ not compelled to copy the source along with the object code.
324
+ </p>
325
+ </item>
326
+ <item>
327
+ <bullet>5.</bullet>
328
+ A program that contains no derivative of any portion of the
329
+ Library, but is designed to work with the Library by being compiled
330
+ or linked with it, is called a "work that uses the Library".
331
+ Such a work, in isolation, is not a derivative work of the
332
+ Library, and therefore falls outside the scope of this License.
333
+ <p>
334
+ However, linking a "work that uses the Library" with the Library
335
+ creates an executable that is a derivative of the Library (because
336
+ it contains portions of the Library), rather than a "work that uses
337
+ the library". The executable is therefore covered by this License.
338
+ Section 6 states terms for distribution of such executables.
339
+ </p>
340
+ <p>
341
+ When a "work that uses the Library" uses material from a header
342
+ file that is part of the Library, the object code for the work may
343
+ be a derivative work of the Library even though the source code is
344
+ not. Whether this is true is especially significant if the work can
345
+ be linked without the Library, or if the work is itself a library.
346
+ The threshold for this to be true is not precisely defined by law.
347
+ </p>
348
+ <p>
349
+ If such an object file uses only numerical parameters, data
350
+ structure layouts and accessors, and small macros and small inline
351
+ functions (ten lines or less in length), then the use of the
352
+ object file is unrestricted, regardless of whether it is legally
353
+ a derivative work. (Executables containing this object code
354
+ plus portions of the Library will still fall under Section 6.)
355
+ </p>
356
+ <p>
357
+ Otherwise, if the work is a derivative of the Library, you may
358
+ distribute the object code for the work under the terms of Section
359
+ 6. Any executables containing that work also fall under Section 6,
360
+ whether or not they are linked directly with the Library itself.
361
+ </p>
362
+ </item>
363
+ <item>
364
+ <bullet>6.</bullet>
365
+ As an exception to the Sections above, you may also combine or
366
+ link a "work that uses the Library" with the Library to produce
367
+ a work containing portions of the Library, and distribute
368
+ that work under terms of your choice, provided that the terms
369
+ permit modification of the work for the customer's own use
370
+ and reverse engineering for debugging such modifications.
371
+ <p>
372
+ You must give prominent notice with each copy of the work
373
+ that the Library is used in it and that the Library and its
374
+ use are covered by this License. You must supply a copy of
375
+ this License. If the work during execution displays copyright
376
+ notices, you must include the copyright notice for the Library
377
+ among them, as well as a reference directing the user to the
378
+ copy of this License. Also, you must do one of these things:
379
+ </p>
380
+ <list>
381
+ <item>
382
+ <bullet>a)</bullet>
383
+ Accompany the work with the complete corresponding machine-readable
384
+ source code for the Library including whatever changes were used in
385
+ the work (which must be distributed under Sections 1 and 2 above);
386
+ and, if the work is an executable linked with the Library, with the
387
+ complete machine-readable "work that uses the Library", as object
388
+ code and/or source code, so that the user can modify the Library
389
+ and then relink to produce a modified executable containing the
390
+ modified Library. (It is understood that the user who changes the
391
+ contents of definitions files in the Library will not necessarily be
392
+ able to recompile the application to use the modified definitions.)
393
+ </item>
394
+ <item>
395
+ <bullet>b)</bullet>
396
+ Use a suitable shared library mechanism for linking with the
397
+ Library. A suitable mechanism is one that (1) uses at run time a
398
+ copy of the library already present on the user's computer system,
399
+ rather than copying library functions into the executable, and
400
+ (2) will operate properly with a modified version of the library,
401
+ if the user installs one, as long as the modified version is
402
+ interface-compatible with the version that the work was made with.
403
+ </item>
404
+ <item>
405
+ <bullet>c)</bullet>
406
+ Accompany the work with a written offer, valid for at
407
+ least three years, to give the same user the materials
408
+ specified in Subsection 6a, above, for a charge no
409
+ more than the cost of performing this distribution.
410
+ </item>
411
+ <item>
412
+ <bullet>d)</bullet>
413
+ If distribution of the work is made by offering access to
414
+ copy from a designated place, offer equivalent access to
415
+ copy the above specified materials from the same place.
416
+ </item>
417
+ <item>
418
+ <bullet>e)</bullet>
419
+ Verify that the user has already received a copy of these
420
+ materials or that you have already sent this user a copy.
421
+ </item>
422
+ </list>
423
+ <p>
424
+ For an executable, the required form of the "work that uses
425
+ the Library" must include any data and utility programs needed
426
+ for reproducing the executable from it. However, as a special
427
+ exception, the materials to be distributed need not include
428
+ anything that is normally distributed (in either source or
429
+ binary form) with the major components (compiler, kernel,
430
+ and so on) of the operating system on which the executable
431
+ runs, unless that component itself accompanies the executable.
432
+ </p>
433
+ <p>
434
+ It may happen that this requirement contradicts the
435
+ license restrictions of other proprietary libraries that
436
+ do not normally accompany the operating system. Such
437
+ a contradiction means you cannot use both them and the
438
+ Library together in an executable that you distribute.
439
+ </p>
440
+ </item>
441
+ <item>
442
+ <bullet>7.</bullet>
443
+ You may place library facilities that are a work based on the
444
+ Library side-by-side in a single library together with other library
445
+ facilities not covered by this License, and distribute such a
446
+ combined library, provided that the separate distribution of the
447
+ work based on the Library and of the other library facilities is
448
+ otherwise permitted, and provided that you do these two things:
449
+ <list>
450
+ <item>
451
+ <bullet>a)</bullet>
452
+ Accompany the combined library with a copy of the same work based
453
+ on the Library, uncombined with any other library facilities.
454
+ This must be distributed under the terms of the Sections above.
455
+ </item>
456
+ <item>
457
+ <bullet>b)</bullet>
458
+ Give prominent notice with the combined library of the fact
459
+ that part of it is a work based on the Library, and explaining
460
+ where to find the accompanying uncombined form of the same work.
461
+ </item>
462
+ </list>
463
+ </item>
464
+ <item>
465
+ <bullet>8.</bullet>
466
+ You may not copy, modify, sublicense, link with, or distribute the
467
+ Library except as expressly provided under this License. Any attempt
468
+ otherwise to copy, modify, sublicense, link with, or distribute
469
+ the Library is void, and will automatically terminate your rights
470
+ under this License. However, parties who have received copies, or
471
+ rights, from you under this License will not have their licenses
472
+ terminated so long as such parties remain in full compliance.
473
+ </item>
474
+ <item>
475
+ <bullet>9.</bullet>
476
+ You are not required to accept this License, since you have
477
+ not signed it. However, nothing else grants you permission to
478
+ modify or distribute the Library or its derivative works. These
479
+ actions are prohibited by law if you do not accept this License.
480
+ Therefore, by modifying or distributing the Library (or any
481
+ work based on the Library), you indicate your acceptance of this
482
+ License to do so, and all its terms and conditions for copying,
483
+ distributing or modifying the Library or works based on it.
484
+ </item>
485
+ <item>
486
+ <bullet>10.</bullet>
487
+ Each time you redistribute the Library (or any work based on
488
+ the Library), the recipient automatically receives a license
489
+ from the original licensor to copy, distribute, link with or
490
+ modify the Library subject to these terms and conditions. You
491
+ may not impose any further restrictions on the recipients'
492
+ exercise of the rights granted herein. You are not responsible
493
+ for enforcing compliance by third parties with this License.
494
+ </item>
495
+ <item>
496
+ <bullet>11.</bullet>
497
+ If, as a consequence of a court judgment or allegation of patent
498
+ infringement or for any other reason (not limited to patent issues),
499
+ conditions are imposed on you (whether by court order, agreement
500
+ or otherwise) that contradict the conditions of this License,
501
+ they do not excuse you from the conditions of this License. If you
502
+ cannot distribute so as to satisfy simultaneously your obligations
503
+ under this License and any other pertinent obligations, then as a
504
+ consequence you may not distribute the Library at all. For example,
505
+ if a patent license would not permit royalty-free redistribution of
506
+ the Library by all those who receive copies directly or indirectly
507
+ through you, then the only way you could satisfy both it and this
508
+ License would be to refrain entirely from distribution of the Library.
509
+ <p>
510
+ If any portion of this section is held invalid or
511
+ unenforceable under any particular circumstance, the
512
+ balance of the section is intended to apply, and the section
513
+ as a whole is intended to apply in other circumstances.
514
+ </p>
515
+ <p>
516
+ It is not the purpose of this section to induce you to infringe
517
+ any patents or other property right claims or to contest
518
+ validity of any such claims; this section has the sole purpose
519
+ of protecting the integrity of the free software distribution
520
+ system which is implemented by public license practices. Many
521
+ people have made generous contributions to the wide range of
522
+ software distributed through that system in reliance on consistent
523
+ application of that system; it is up to the author/donor to
524
+ decide if he or she is willing to distribute software through
525
+ any other system and a licensee cannot impose that choice.
526
+ </p>
527
+ <p>
528
+ This section is intended to make thoroughly clear what is
529
+ believed to be a consequence of the rest of this License.
530
+ </p>
531
+ </item>
532
+ <item>
533
+ <bullet>12.</bullet>
534
+ If the distribution and/or use of the Library is restricted in
535
+ certain countries either by patents or by copyrighted interfaces,
536
+ the original copyright holder who places the Library under this
537
+ License may add an explicit geographical distribution limitation
538
+ excluding those countries, so that distribution is permitted only
539
+ in or among countries not thus excluded. In such case, this License
540
+ incorporates the limitation as if written in the body of this License.
541
+ </item>
542
+ <item>
543
+ <bullet>13.</bullet>
544
+ The Free Software Foundation may publish revised and/or new
545
+ versions of the Lesser General Public License from time to time.
546
+ Such new versions will be similar in spirit to the present version,
547
+ but may differ in detail to address new problems or concerns.
548
+ <p>
549
+ Each version is given a distinguishing version number. If
550
+ the Library specifies a version number of this License which
551
+ applies to it and "any later version", you have the option of
552
+ following the terms and conditions either of that version or of
553
+ any later version published by the Free Software Foundation. If
554
+ the Library does not specify a license version number, you may
555
+ choose any version ever published by the Free Software Foundation.
556
+ </p>
557
+ </item>
558
+ <item>
559
+ <bullet>14.</bullet>
560
+ If you wish to incorporate parts of the Library into other free programs
561
+ whose distribution conditions are incompatible with these, write to
562
+ the author to ask for permission. For software which is copyrighted by
563
+ the Free Software Foundation, write to the Free Software Foundation; we
564
+ sometimes make exceptions for this. Our decision will be guided by the
565
+ two goals of preserving the free status of all derivatives of our free
566
+ software and of promoting the sharing and reuse of software generally.
567
+ <p>
568
+ NO WARRANTY
569
+ </p>
570
+ </item>
571
+ <item>
572
+ <bullet>15.</bullet>
573
+ BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
574
+ FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT
575
+ WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER
576
+ PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND,
577
+ EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
578
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
579
+ PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF
580
+ THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU
581
+ ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
582
+ </item>
583
+ <item>
584
+ <bullet>16.</bullet>
585
+ IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
586
+ WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
587
+ REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR
588
+ DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL
589
+ DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY
590
+ (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED
591
+ INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF
592
+ THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER
593
+ OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
594
+ </item>
595
+ </list>
596
+ <optional>
597
+ <p>
598
+ END OF TERMS AND CONDITIONS
599
+ </p>
600
+ <p>
601
+ How to Apply These Terms to Your New Libraries
602
+ </p>
603
+ <p>
604
+ If you develop a new library, and you want it to be of the greatest
605
+ possible use to the public, we recommend making it free software
606
+ that everyone can redistribute and change. You can do so by
607
+ permitting redistribution under these terms (or, alternatively,
608
+ under the terms of the ordinary General Public License).
609
+ </p>
610
+ <p>
611
+ To apply these terms, attach the following notices to the
612
+ library. It is safest to attach them to the start of each
613
+ source file to most effectively convey the exclusion of
614
+ warranty; and each file should have at least the "copyright"
615
+ line and a pointer to where the full notice is found.
616
+ </p>
617
+ <p>
618
+ <optional>&lt;</optional>one line to give the library's name
619
+ and <alt match="an idea|a brief idea" name="ideaClause">an idea</alt> of what it does.<optional>&gt;</optional>
620
+ <br></br>
621
+ Copyright (C)
622
+ <optional>&lt;</optional>year<optional>&gt;</optional>
623
+ <optional>&lt;</optional>name of author<optional>&gt;</optional>
624
+ </p>
625
+ <p>
626
+ This library is free software; you can redistribute it and/or
627
+ modify it under the terms of the GNU Lesser General Public
628
+ License as published by the Free Software Foundation; either
629
+ version 2.1 of the License, or (at your option) any later version.
630
+ </p>
631
+ <p>
632
+ This library is distributed in the hope that it will be useful,
633
+ but WITHOUT ANY WARRANTY; without even the implied warranty
634
+ of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
635
+ See the GNU Lesser General Public License for more details.
636
+ </p>
637
+ <p>
638
+ You should have received a copy of the GNU Lesser General Public License
639
+ along with this library; if not, write to the Free Software Foundation,
640
+ Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Also
641
+ add information on how to contact you by electronic and paper mail.
642
+ </p>
643
+ <p>
644
+ You should also get your employer (if you work as a programmer)
645
+ or your school, if any, to sign a "copyright disclaimer" for
646
+ the library, if necessary. Here is a sample; alter the names:
647
+ </p>
648
+ <p>
649
+ Yoyodyne, Inc., hereby disclaims all copyright interest in<br></br>
650
+ the library `Frob' (a library for tweaking knobs) written<br></br>
651
+ by James Random Hacker.
652
+ </p>
653
+ <p>
654
+ <optional>&lt;</optional>signature of Ty Coon<optional>&gt;</optional>,
655
+ 1 April 1990<br></br>
656
+ Ty Coon, President of Vice<br></br>
657
+ That's all there is to it!
658
+ </p>
659
+ </optional>
660
+ </text>
661
+ </license>
662
+ </SPDXLicenseCollection>