Skip to content

Commit 46ef472

Browse files
committed
diptest: Carry patches over to version 0.12.0
The pcg-cpp LICENSE patch still applies unchanged to v0.12.0.
1 parent 7c6ddaf commit 46ef472

1 file changed

Lines changed: 274 additions & 0 deletions

File tree

Lines changed: 274 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,274 @@
1+
From a686ff803a8537cf480763f44ba52c162da39d91 Mon Sep 17 00:00:00 2001
2+
From: Ludovic Henry <git@ludovic.dev>
3+
Date: Tue, 8 Sep 2026 16:08:11 +0200
4+
Subject: [PATCH] ship pcg-cpp's dual Apache-2.0/MIT LICENSE in the wheel's
5+
dist-info
6+
7+
CMakeLists.txt compiles src/diptest-core/src/bootstrap.cpp against the
8+
vendored src/external/pcg-cpp headers (pcg_random.hpp, pcg_extras.hpp,
9+
pcg_uint128.hpp) for the PCG pseudo-random number generator used by the
10+
bootstrap p-value estimator. Those headers are imneme/pcg-cpp,
11+
dual-licensed Apache-2.0 OR MIT (Copyright 2014-2022 Melissa O'Neill and
12+
the PCG Project contributors), and each header carries the notice only
13+
as a comment pointing at LICENSE-APACHE.txt/LICENSE-MIT.txt -- files
14+
diptest's vendoring drops; only src/external/pcg-cpp/LICENSE.spdx (an
15+
SPDX identifier, not licence text) and README.md survive.
16+
17+
pyproject.toml declares `license = {text = "GPLv2+"}` with no
18+
license-files key, so setuptools' default LICEN[CS]E*/COPYING*/NOTICE*
19+
root glob is what ships the project's own LICENSE/COPYING; it never
20+
reaches into src/external/pcg-cpp/, and reproduced against the real
21+
diptest-0.11.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
22+
from PyPI, dist-info/licenses/ carries only LICENSE and COPYING --
23+
pcg-cpp's notice is compiled straight into the extension and shipped
24+
with no attribution at all.
25+
26+
Restoring both licence texts from imneme/pcg-cpp's own repo (unversioned
27+
boilerplate, unchanged across releases) at the project root as
28+
LICENSE.pcg-cpp is picked up by that same default glob with no
29+
packaging change, landing it in dist-info/licenses/ alongside the
30+
project's own licence.
31+
32+
Upstream-Status: To upstream [not filed against RUrlus/diptest from this automated port; a maintainer should report it upstream]
33+
---
34+
LICENSE.pcg-cpp | 228 ++++++++++++++++++++++++++++++++++++++++++++++++
35+
1 file changed, 228 insertions(+)
36+
create mode 100644 LICENSE.pcg-cpp
37+
38+
diff --git a/LICENSE.pcg-cpp b/LICENSE.pcg-cpp
39+
new file mode 100644
40+
index 0000000..87cdc74
41+
--- /dev/null
42+
+++ b/LICENSE.pcg-cpp
43+
@@ -0,0 +1,228 @@
44+
+PCG Random Number Generation for C++ is dual-licensed (Apache-2.0 OR MIT).
45+
+Users of the library may choose either license.
46+
+
47+
+------------------
48+
+
49+
+ Apache License
50+
+ Version 2.0, January 2004
51+
+ http://www.apache.org/licenses/
52+
+
53+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
54+
+
55+
+ 1. Definitions.
56+
+
57+
+ "License" shall mean the terms and conditions for use, reproduction,
58+
+ and distribution as defined by Sections 1 through 9 of this document.
59+
+
60+
+ "Licensor" shall mean the copyright owner or entity authorized by
61+
+ the copyright owner that is granting the License.
62+
+
63+
+ "Legal Entity" shall mean the union of the acting entity and all
64+
+ other entities that control, are controlled by, or are under common
65+
+ control with that entity. For the purposes of this definition,
66+
+ "control" means (i) the power, direct or indirect, to cause the
67+
+ direction or management of such entity, whether by contract or
68+
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
69+
+ outstanding shares, or (iii) beneficial ownership of such entity.
70+
+
71+
+ "You" (or "Your") shall mean an individual or Legal Entity
72+
+ exercising permissions granted by this License.
73+
+
74+
+ "Source" form shall mean the preferred form for making modifications,
75+
+ including but not limited to software source code, documentation
76+
+ source, and configuration files.
77+
+
78+
+ "Object" form shall mean any form resulting from mechanical
79+
+ transformation or translation of a Source form, including but
80+
+ not limited to compiled object code, generated documentation,
81+
+ and conversions to other media types.
82+
+
83+
+ "Work" shall mean the work of authorship, whether in Source or
84+
+ Object form, made available under the License, as indicated by a
85+
+ copyright notice that is included in or attached to the work
86+
+ (an example is provided in the Appendix below).
87+
+
88+
+ "Derivative Works" shall mean any work, whether in Source or Object
89+
+ form, that is based on (or derived from) the Work and for which the
90+
+ editorial revisions, annotations, elaborations, or other modifications
91+
+ represent, as a whole, an original work of authorship. For the purposes
92+
+ of this License, Derivative Works shall not include works that remain
93+
+ separable from, or merely link (or bind by name) to the interfaces of,
94+
+ the Work and Derivative Works thereof.
95+
+
96+
+ "Contribution" shall mean any work of authorship, including
97+
+ the original version of the Work and any modifications or additions
98+
+ to that Work or Derivative Works thereof, that is intentionally
99+
+ submitted to Licensor for inclusion in the Work by the copyright owner
100+
+ or by an individual or Legal Entity authorized to submit on behalf of
101+
+ the copyright owner. For the purposes of this definition, "submitted"
102+
+ means any form of electronic, verbal, or written communication sent
103+
+ to the Licensor or its representatives, including but not limited to
104+
+ communication on electronic mailing lists, source code control systems,
105+
+ and issue tracking systems that are managed by, or on behalf of, the
106+
+ Licensor for the purpose of discussing and improving the Work, but
107+
+ excluding communication that is conspicuously marked or otherwise
108+
+ designated in writing by the copyright owner as "Not a Contribution."
109+
+
110+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
111+
+ on behalf of whom a Contribution has been received by Licensor and
112+
+ subsequently incorporated within the Work.
113+
+
114+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
115+
+ this License, each Contributor hereby grants to You a perpetual,
116+
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
117+
+ copyright license to reproduce, prepare Derivative Works of,
118+
+ publicly display, publicly perform, sublicense, and distribute the
119+
+ Work and such Derivative Works in Source or Object form.
120+
+
121+
+ 3. Grant of Patent License. Subject to the terms and conditions of
122+
+ this License, each Contributor hereby grants to You a perpetual,
123+
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
124+
+ (except as stated in this section) patent license to make, have made,
125+
+ use, offer to sell, sell, import, and otherwise transfer the Work,
126+
+ where such license applies only to those patent claims licensable
127+
+ by such Contributor that are necessarily infringed by their
128+
+ Contribution(s) alone or by combination of their Contribution(s)
129+
+ with the Work to which such Contribution(s) was submitted. If You
130+
+ institute patent litigation against any entity (including a
131+
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
132+
+ or a Contribution incorporated within the Work constitutes direct
133+
+ or contributory patent infringement, then any patent licenses
134+
+ granted to You under this License for that Work shall terminate
135+
+ as of the date such litigation is filed.
136+
+
137+
+ 4. Redistribution. You may reproduce and distribute copies of the
138+
+ Work or Derivative Works thereof in any medium, with or without
139+
+ modifications, and in Source or Object form, provided that You
140+
+ meet the following conditions:
141+
+
142+
+ (a) You must give any other recipients of the Work or
143+
+ Derivative Works a copy of this License; and
144+
+
145+
+ (b) You must cause any modified files to carry prominent notices
146+
+ stating that You changed the files; and
147+
+
148+
+ (c) You must retain, in the Source form of any Derivative Works
149+
+ that You distribute, all copyright, patent, trademark, and
150+
+ attribution notices from the Source form of the Work,
151+
+ excluding those notices that do not pertain to any part of
152+
+ the Derivative Works; and
153+
+
154+
+ (d) If the Work includes a "NOTICE" text file as part of its
155+
+ distribution, then any Derivative Works that You distribute must
156+
+ include a readable copy of the attribution notices contained
157+
+ within such NOTICE file, excluding those notices that do not
158+
+ pertain to any part of the Derivative Works, in at least one
159+
+ of the following places: within a NOTICE text file distributed
160+
+ as part of the Derivative Works; within the Source form or
161+
+ documentation, if provided along with the Derivative Works; or,
162+
+ within a display generated by the Derivative Works, if and
163+
+ wherever such third-party notices normally appear. The contents
164+
+ of the NOTICE file are for informational purposes only and
165+
+ do not modify the License. You may add Your own attribution
166+
+ notices within Derivative Works that You distribute, alongside
167+
+ or as an addendum to the NOTICE text from the Work, provided
168+
+ that such additional attribution notices cannot be construed
169+
+ as modifying the License.
170+
+
171+
+ You may add Your own copyright statement to Your modifications and
172+
+ may provide additional or different license terms and conditions
173+
+ for use, reproduction, or distribution of Your modifications, or
174+
+ for any such Derivative Works as a whole, provided Your use,
175+
+ reproduction, and distribution of the Work otherwise complies with
176+
+ the conditions stated in this License.
177+
+
178+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
179+
+ any Contribution intentionally submitted for inclusion in the Work
180+
+ by You to the Licensor shall be under the terms and conditions of
181+
+ this License, without any additional terms or conditions.
182+
+ Notwithstanding the above, nothing herein shall supersede or modify
183+
+ the terms of any separate license agreement you may have executed
184+
+ with Licensor regarding such Contributions.
185+
+
186+
+ 6. Trademarks. This License does not grant permission to use the trade
187+
+ names, trademarks, service marks, or product names of the Licensor,
188+
+ except as required for reasonable and customary use in describing the
189+
+ origin of the Work and reproducing the content of the NOTICE file.
190+
+
191+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
192+
+ agreed to in writing, Licensor provides the Work (and each
193+
+ Contributor provides its Contributions) on an "AS IS" BASIS,
194+
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
195+
+ implied, including, without limitation, any warranties or conditions
196+
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
197+
+ PARTICULAR PURPOSE. You are solely responsible for determining the
198+
+ appropriateness of using or redistributing the Work and assume any
199+
+ risks associated with Your exercise of permissions under this License.
200+
+
201+
+ 8. Limitation of Liability. In no event and under no legal theory,
202+
+ whether in tort (including negligence), contract, or otherwise,
203+
+ unless required by applicable law (such as deliberate and grossly
204+
+ negligent acts) or agreed to in writing, shall any Contributor be
205+
+ liable to You for damages, including any direct, indirect, special,
206+
+ incidental, or consequential damages of any character arising as a
207+
+ result of this License or out of the use or inability to use the
208+
+ Work (including but not limited to damages for loss of goodwill,
209+
+ work stoppage, computer failure or malfunction, or any and all
210+
+ other commercial damages or losses), even if such Contributor
211+
+ has been advised of the possibility of such damages.
212+
+
213+
+ 9. Accepting Warranty or Additional Liability. While redistributing
214+
+ the Work or Derivative Works thereof, You may choose to offer,
215+
+ and charge a fee for, acceptance of support, warranty, indemnity,
216+
+ or other liability obligations and/or rights consistent with this
217+
+ License. However, in accepting such obligations, You may act only
218+
+ on Your own behalf and on Your sole responsibility, not on behalf
219+
+ of any other Contributor, and only if You agree to indemnify,
220+
+ defend, and hold each Contributor harmless for any liability
221+
+ incurred by, or claims asserted against, such Contributor by reason
222+
+ of your accepting any such warranty or additional liability.
223+
+
224+
+ END OF TERMS AND CONDITIONS
225+
+
226+
+ APPENDIX: How to apply the Apache License to your work.
227+
+
228+
+ To apply the Apache License to your work, attach the following
229+
+ boilerplate notice, with the fields enclosed by brackets "{}"
230+
+ replaced with your own identifying information. (Don't include
231+
+ the brackets!) The text should be enclosed in the appropriate
232+
+ comment syntax for the file format. We also recommend that a
233+
+ file or class name and description of purpose be included on the
234+
+ same "printed page" as the copyright notice for easier
235+
+ identification within third-party archives.
236+
+
237+
+ Copyright {yyyy} {name of copyright owner}
238+
+
239+
+ Licensed under the Apache License, Version 2.0 (the "License");
240+
+ you may not use this file except in compliance with the License.
241+
+ You may obtain a copy of the License at
242+
+
243+
+ http://www.apache.org/licenses/LICENSE-2.0
244+
+
245+
+ Unless required by applicable law or agreed to in writing, software
246+
+ distributed under the License is distributed on an "AS IS" BASIS,
247+
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
248+
+ See the License for the specific language governing permissions and
249+
+ limitations under the License.
250+
+
251+
+------------------
252+
+
253+
+Copyright (c) 2014-2017 Melissa O'Neill and PCG Project contributors
254+
+
255+
+Permission is hereby granted, free of charge, to any person obtaining a copy
256+
+of this software and associated documentation files (the "Software"), to deal
257+
+in the Software without restriction, including without limitation the rights
258+
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
259+
+copies of the Software, and to permit persons to whom the Software is
260+
+furnished to do so, subject to the following conditions:
261+
+
262+
+The above copyright notice and this permission notice shall be included in all
263+
+copies or substantial portions of the Software.
264+
+
265+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
266+
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
267+
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
268+
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
269+
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
270+
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
271+
+SOFTWARE.
272+
--
273+
2.50.1 (Apple Git-155)
274+

0 commit comments

Comments
 (0)