@lincyaw/addon-exec 0.0.0-stage → 1.0.0-rc.2

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 (52) hide show
  1. package/LICENSE +202 -0
  2. package/LICENSES +696 -0
  3. package/README.md +33 -2
  4. package/components/PmRunPanel.css +167 -0
  5. package/components/PmRunPanel.tsx +389 -0
  6. package/components/PmStepRun.css +61 -0
  7. package/components/PmStepRun.tsx +202 -0
  8. package/package.json +50 -3
  9. package/src/client/RunOutputs.css +21 -0
  10. package/src/client/RunOutputs.tsx +69 -0
  11. package/src/client/StepMark.css +3 -0
  12. package/src/client/StepMark.tsx +12 -0
  13. package/src/client/env.d.ts +13 -0
  14. package/src/client/feedback.ts +69 -0
  15. package/src/client/format.ts +30 -0
  16. package/src/client/index.ts +14 -0
  17. package/src/client/messages.ts +102 -0
  18. package/src/client/outputs.ts +29 -0
  19. package/src/client/plugin.ts +55 -0
  20. package/src/client/pyodide/executor.ts +94 -0
  21. package/src/client/pyodide/presmium_gpu.py +297 -0
  22. package/src/client/pyodide/protocol.ts +27 -0
  23. package/src/client/pyodide/pyodide.worker.ts +68 -0
  24. package/src/client/pyodide/run_await.py +57 -0
  25. package/src/client/runs-in.ts +27 -0
  26. package/src/client/script/executor.ts +62 -0
  27. package/src/client/script/script.worker.ts +9 -0
  28. package/src/client/slide-fit.ts +61 -0
  29. package/src/client/step-marks.ts +7 -0
  30. package/src/client/when-service.ts +14 -0
  31. package/src/domain/browser-python.ts +33 -0
  32. package/src/domain/config.ts +41 -0
  33. package/src/domain/index.ts +11 -0
  34. package/src/domain/outputs.ts +18 -0
  35. package/src/domain/router.ts +50 -0
  36. package/src/domain/runs.ts +72 -0
  37. package/src/domain/static-output.ts +20 -0
  38. package/src/domain/trace.ts +32 -0
  39. package/src/node/browser-imports.ts +34 -0
  40. package/src/node/child-process.ts +109 -0
  41. package/src/node/code-component.ts +48 -0
  42. package/src/node/notebook-cells.ts +46 -0
  43. package/src/node/presmium.ts +27 -0
  44. package/src/node/pyodide.ts +22 -0
  45. package/src/node/python.ts +40 -0
  46. package/src/node/run-panel.ts +71 -0
  47. package/src/node/script-main.mjs +11 -0
  48. package/src/node/script.ts +26 -0
  49. package/src/node/step-run.ts +71 -0
  50. package/src/node/timeouts.ts +15 -0
  51. package/src/shared/script-runner.d.mts +16 -0
  52. package/src/shared/script-runner.mjs +168 -0
package/LICENSES ADDED
@@ -0,0 +1,696 @@
1
+ Licenses of the Python runtime in this directory
2
+ ================================================
3
+
4
+ Presmium publishes these files with a deck that runs Python in the browser.
5
+ They are the core files of Pyodide as the npm package pyodide@314.0.7
6
+ ships them (https://pyodide.org, https://github.com/pyodide/pyodide),
7
+ unchanged:
8
+
9
+ pyodide.mjs, pyodide.asm.mjs, pyodide-lock.json
10
+ Pyodide's loader, its JavaScript runtime and the list of the packages
11
+ of its distribution (none of which is published here: the browser has
12
+ the standard library only).
13
+ Pyodide: the Mozilla Public License 2.0 (below). Its source code is at
14
+ https://github.com/pyodide/pyodide (tag 314.0.7).
15
+
16
+ pyodide.asm.wasm, python_stdlib.zip
17
+ CPython 3.14.2 compiled to WebAssembly with Emscripten, and its
18
+ standard library.
19
+ CPython: the PSF License Agreement and the other terms of CPython's
20
+ LICENSE file (below; https://docs.python.org/3/license.html), which
21
+ also lists the licenses of the software CPython includes (such as
22
+ libmpdec, expat and HACL*).
23
+ The binary also holds libraries CPython is linked with in Pyodide's
24
+ build, each under its own license:
25
+ zlib the zlib License (https://zlib.net/zlib_license.html)
26
+ bzip2 the bzip2 License (https://sourceware.org/bzip2/)
27
+ liblzma (xz) the BSD Zero Clause License (https://tukaani.org/xz/)
28
+ libffi the MIT License (https://github.com/libffi/libffi/blob/master/LICENSE)
29
+ SQLite public domain (https://sqlite.org/copyright.html)
30
+ and Emscripten's runtime and system libraries (musl libc, libc++,
31
+ libc++abi, compiler-rt), under the MIT License or the University of
32
+ Illinois/NCSA Open Source License (Emscripten), the MIT License (musl)
33
+ and the Apache License 2.0 with LLVM Exceptions (LLVM's libraries):
34
+ https://github.com/emscripten-core/emscripten/blob/main/LICENSE
35
+
36
+ ==============================================================================
37
+ Pyodide: Mozilla Public License 2.0
38
+ ==============================================================================
39
+
40
+ Mozilla Public License Version 2.0
41
+ ==================================
42
+
43
+ 1. Definitions
44
+ --------------
45
+
46
+ 1.1. "Contributor"
47
+ means each individual or legal entity that creates, contributes to
48
+ the creation of, or owns Covered Software.
49
+
50
+ 1.2. "Contributor Version"
51
+ means the combination of the Contributions of others (if any) used
52
+ by a Contributor and that particular Contributor's Contribution.
53
+
54
+ 1.3. "Contribution"
55
+ means Covered Software of a particular Contributor.
56
+
57
+ 1.4. "Covered Software"
58
+ means Source Code Form to which the initial Contributor has attached
59
+ the notice in Exhibit A, the Executable Form of such Source Code
60
+ Form, and Modifications of such Source Code Form, in each case
61
+ including portions thereof.
62
+
63
+ 1.5. "Incompatible With Secondary Licenses"
64
+ means
65
+
66
+ (a) that the initial Contributor has attached the notice described
67
+ in Exhibit B to the Covered Software; or
68
+
69
+ (b) that the Covered Software was made available under the terms of
70
+ version 1.1 or earlier of the License, but not also under the
71
+ terms of a Secondary License.
72
+
73
+ 1.6. "Executable Form"
74
+ means any form of the work other than Source Code Form.
75
+
76
+ 1.7. "Larger Work"
77
+ means a work that combines Covered Software with other material, in
78
+ a separate file or files, that is not Covered Software.
79
+
80
+ 1.8. "License"
81
+ means this document.
82
+
83
+ 1.9. "Licensable"
84
+ means having the right to grant, to the maximum extent possible,
85
+ whether at the time of the initial grant or subsequently, any and
86
+ all of the rights conveyed by this License.
87
+
88
+ 1.10. "Modifications"
89
+ means any of the following:
90
+
91
+ (a) any file in Source Code Form that results from an addition to,
92
+ deletion from, or modification of the contents of Covered
93
+ Software; or
94
+
95
+ (b) any new file in Source Code Form that contains any Covered
96
+ Software.
97
+
98
+ 1.11. "Patent Claims" of a Contributor
99
+ means any patent claim(s), including without limitation, method,
100
+ process, and apparatus claims, in any patent Licensable by such
101
+ Contributor that would be infringed, but for the grant of the
102
+ License, by the making, using, selling, offering for sale, having
103
+ made, import, or transfer of either its Contributions or its
104
+ Contributor Version.
105
+
106
+ 1.12. "Secondary License"
107
+ means either the GNU General Public License, Version 2.0, the GNU
108
+ Lesser General Public License, Version 2.1, the GNU Affero General
109
+ Public License, Version 3.0, or any later versions of those
110
+ licenses.
111
+
112
+ 1.13. "Source Code Form"
113
+ means the form of the work preferred for making modifications.
114
+
115
+ 1.14. "You" (or "Your")
116
+ means an individual or a legal entity exercising rights under this
117
+ License. For legal entities, "You" includes any entity that
118
+ controls, is controlled by, or is under common control with You. For
119
+ purposes of this definition, "control" means (a) the power, direct
120
+ or indirect, to cause the direction or management of such entity,
121
+ whether by contract or otherwise, or (b) ownership of more than
122
+ fifty percent (50%) of the outstanding shares or beneficial
123
+ ownership of such entity.
124
+
125
+ 2. License Grants and Conditions
126
+ --------------------------------
127
+
128
+ 2.1. Grants
129
+
130
+ Each Contributor hereby grants You a world-wide, royalty-free,
131
+ non-exclusive license:
132
+
133
+ (a) under intellectual property rights (other than patent or trademark)
134
+ Licensable by such Contributor to use, reproduce, make available,
135
+ modify, display, perform, distribute, and otherwise exploit its
136
+ Contributions, either on an unmodified basis, with Modifications, or
137
+ as part of a Larger Work; and
138
+
139
+ (b) under Patent Claims of such Contributor to make, use, sell, offer
140
+ for sale, have made, import, and otherwise transfer either its
141
+ Contributions or its Contributor Version.
142
+
143
+ 2.2. Effective Date
144
+
145
+ The licenses granted in Section 2.1 with respect to any Contribution
146
+ become effective for each Contribution on the date the Contributor first
147
+ distributes such Contribution.
148
+
149
+ 2.3. Limitations on Grant Scope
150
+
151
+ The licenses granted in this Section 2 are the only rights granted under
152
+ this License. No additional rights or licenses will be implied from the
153
+ distribution or licensing of Covered Software under this License.
154
+ Notwithstanding Section 2.1(b) above, no patent license is granted by a
155
+ Contributor:
156
+
157
+ (a) for any code that a Contributor has removed from Covered Software;
158
+ or
159
+
160
+ (b) for infringements caused by: (i) Your and any other third party's
161
+ modifications of Covered Software, or (ii) the combination of its
162
+ Contributions with other software (except as part of its Contributor
163
+ Version); or
164
+
165
+ (c) under Patent Claims infringed by Covered Software in the absence of
166
+ its Contributions.
167
+
168
+ This License does not grant any rights in the trademarks, service marks,
169
+ or logos of any Contributor (except as may be necessary to comply with
170
+ the notice requirements in Section 3.4).
171
+
172
+ 2.4. Subsequent Licenses
173
+
174
+ No Contributor makes additional grants as a result of Your choice to
175
+ distribute the Covered Software under a subsequent version of this
176
+ License (see Section 10.2) or under the terms of a Secondary License (if
177
+ permitted under the terms of Section 3.3).
178
+
179
+ 2.5. Representation
180
+
181
+ Each Contributor represents that the Contributor believes its
182
+ Contributions are its original creation(s) or it has sufficient rights
183
+ to grant the rights to its Contributions conveyed by this License.
184
+
185
+ 2.6. Fair Use
186
+
187
+ This License is not intended to limit any rights You have under
188
+ applicable copyright doctrines of fair use, fair dealing, or other
189
+ equivalents.
190
+
191
+ 2.7. Conditions
192
+
193
+ Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted
194
+ in Section 2.1.
195
+
196
+ 3. Responsibilities
197
+ -------------------
198
+
199
+ 3.1. Distribution of Source Form
200
+
201
+ All distribution of Covered Software in Source Code Form, including any
202
+ Modifications that You create or to which You contribute, must be under
203
+ the terms of this License. You must inform recipients that the Source
204
+ Code Form of the Covered Software is governed by the terms of this
205
+ License, and how they can obtain a copy of this License. You may not
206
+ attempt to alter or restrict the recipients' rights in the Source Code
207
+ Form.
208
+
209
+ 3.2. Distribution of Executable Form
210
+
211
+ If You distribute Covered Software in Executable Form then:
212
+
213
+ (a) such Covered Software must also be made available in Source Code
214
+ Form, as described in Section 3.1, and You must inform recipients of
215
+ the Executable Form how they can obtain a copy of such Source Code
216
+ Form by reasonable means in a timely manner, at a charge no more
217
+ than the cost of distribution to the recipient; and
218
+
219
+ (b) You may distribute such Executable Form under the terms of this
220
+ License, or sublicense it under different terms, provided that the
221
+ license for the Executable Form does not attempt to limit or alter
222
+ the recipients' rights in the Source Code Form under this License.
223
+
224
+ 3.3. Distribution of a Larger Work
225
+
226
+ You may create and distribute a Larger Work under terms of Your choice,
227
+ provided that You also comply with the requirements of this License for
228
+ the Covered Software. If the Larger Work is a combination of Covered
229
+ Software with a work governed by one or more Secondary Licenses, and the
230
+ Covered Software is not Incompatible With Secondary Licenses, this
231
+ License permits You to additionally distribute such Covered Software
232
+ under the terms of such Secondary License(s), so that the recipient of
233
+ the Larger Work may, at their option, further distribute the Covered
234
+ Software under the terms of either this License or such Secondary
235
+ License(s).
236
+
237
+ 3.4. Notices
238
+
239
+ You may not remove or alter the substance of any license notices
240
+ (including copyright notices, patent notices, disclaimers of warranty,
241
+ or limitations of liability) contained within the Source Code Form of
242
+ the Covered Software, except that You may alter any license notices to
243
+ the extent required to remedy known factual inaccuracies.
244
+
245
+ 3.5. Application of Additional Terms
246
+
247
+ You may choose to offer, and to charge a fee for, warranty, support,
248
+ indemnity or liability obligations to one or more recipients of Covered
249
+ Software. However, You may do so only on Your own behalf, and not on
250
+ behalf of any Contributor. You must make it absolutely clear that any
251
+ such warranty, support, indemnity, or liability obligation is offered by
252
+ You alone, and You hereby agree to indemnify every Contributor for any
253
+ liability incurred by such Contributor as a result of warranty, support,
254
+ indemnity or liability terms You offer. You may include additional
255
+ disclaimers of warranty and limitations of liability specific to any
256
+ jurisdiction.
257
+
258
+ 4. Inability to Comply Due to Statute or Regulation
259
+ ---------------------------------------------------
260
+
261
+ If it is impossible for You to comply with any of the terms of this
262
+ License with respect to some or all of the Covered Software due to
263
+ statute, judicial order, or regulation then You must: (a) comply with
264
+ the terms of this License to the maximum extent possible; and (b)
265
+ describe the limitations and the code they affect. Such description must
266
+ be placed in a text file included with all distributions of the Covered
267
+ Software under this License. Except to the extent prohibited by statute
268
+ or regulation, such description must be sufficiently detailed for a
269
+ recipient of ordinary skill to be able to understand it.
270
+
271
+ 5. Termination
272
+ --------------
273
+
274
+ 5.1. The rights granted under this License will terminate automatically
275
+ if You fail to comply with any of its terms. However, if You become
276
+ compliant, then the rights granted under this License from a particular
277
+ Contributor are reinstated (a) provisionally, unless and until such
278
+ Contributor explicitly and finally terminates Your grants, and (b) on an
279
+ ongoing basis, if such Contributor fails to notify You of the
280
+ non-compliance by some reasonable means prior to 60 days after You have
281
+ come back into compliance. Moreover, Your grants from a particular
282
+ Contributor are reinstated on an ongoing basis if such Contributor
283
+ notifies You of the non-compliance by some reasonable means, this is the
284
+ first time You have received notice of non-compliance with this License
285
+ from such Contributor, and You become compliant prior to 30 days after
286
+ Your receipt of the notice.
287
+
288
+ 5.2. If You initiate litigation against any entity by asserting a patent
289
+ infringement claim (excluding declaratory judgment actions,
290
+ counter-claims, and cross-claims) alleging that a Contributor Version
291
+ directly or indirectly infringes any patent, then the rights granted to
292
+ You by any and all Contributors for the Covered Software under Section
293
+ 2.1 of this License shall terminate.
294
+
295
+ 5.3. In the event of termination under Sections 5.1 or 5.2 above, all
296
+ end user license agreements (excluding distributors and resellers) which
297
+ have been validly granted by You or Your distributors under this License
298
+ prior to termination shall survive termination.
299
+
300
+ ************************************************************************
301
+ * *
302
+ * 6. Disclaimer of Warranty *
303
+ * ------------------------- *
304
+ * *
305
+ * Covered Software is provided under this License on an "as is" *
306
+ * basis, without warranty of any kind, either expressed, implied, or *
307
+ * statutory, including, without limitation, warranties that the *
308
+ * Covered Software is free of defects, merchantable, fit for a *
309
+ * particular purpose or non-infringing. The entire risk as to the *
310
+ * quality and performance of the Covered Software is with You. *
311
+ * Should any Covered Software prove defective in any respect, You *
312
+ * (not any Contributor) assume the cost of any necessary servicing, *
313
+ * repair, or correction. This disclaimer of warranty constitutes an *
314
+ * essential part of this License. No use of any Covered Software is *
315
+ * authorized under this License except under this disclaimer. *
316
+ * *
317
+ ************************************************************************
318
+
319
+ ************************************************************************
320
+ * *
321
+ * 7. Limitation of Liability *
322
+ * -------------------------- *
323
+ * *
324
+ * Under no circumstances and under no legal theory, whether tort *
325
+ * (including negligence), contract, or otherwise, shall any *
326
+ * Contributor, or anyone who distributes Covered Software as *
327
+ * permitted above, be liable to You for any direct, indirect, *
328
+ * special, incidental, or consequential damages of any character *
329
+ * including, without limitation, damages for lost profits, loss of *
330
+ * goodwill, work stoppage, computer failure or malfunction, or any *
331
+ * and all other commercial damages or losses, even if such party *
332
+ * shall have been informed of the possibility of such damages. This *
333
+ * limitation of liability shall not apply to liability for death or *
334
+ * personal injury resulting from such party's negligence to the *
335
+ * extent applicable law prohibits such limitation. Some *
336
+ * jurisdictions do not allow the exclusion or limitation of *
337
+ * incidental or consequential damages, so this exclusion and *
338
+ * limitation may not apply to You. *
339
+ * *
340
+ ************************************************************************
341
+
342
+ 8. Litigation
343
+ -------------
344
+
345
+ Any litigation relating to this License may be brought only in the
346
+ courts of a jurisdiction where the defendant maintains its principal
347
+ place of business and such litigation shall be governed by laws of that
348
+ jurisdiction, without reference to its conflict-of-law provisions.
349
+ Nothing in this Section shall prevent a party's ability to bring
350
+ cross-claims or counter-claims.
351
+
352
+ 9. Miscellaneous
353
+ ----------------
354
+
355
+ This License represents the complete agreement concerning the subject
356
+ matter hereof. If any provision of this License is held to be
357
+ unenforceable, such provision shall be reformed only to the extent
358
+ necessary to make it enforceable. Any law or regulation which provides
359
+ that the language of a contract shall be construed against the drafter
360
+ shall not be used to construe this License against a Contributor.
361
+
362
+ 10. Versions of the License
363
+ ---------------------------
364
+
365
+ 10.1. New Versions
366
+
367
+ Mozilla Foundation is the license steward. Except as provided in Section
368
+ 10.3, no one other than the license steward has the right to modify or
369
+ publish new versions of this License. Each version will be given a
370
+ distinguishing version number.
371
+
372
+ 10.2. Effect of New Versions
373
+
374
+ You may distribute the Covered Software under the terms of the version
375
+ of the License under which You originally received the Covered Software,
376
+ or under the terms of any subsequent version published by the license
377
+ steward.
378
+
379
+ 10.3. Modified Versions
380
+
381
+ If you create software not governed by this License, and you want to
382
+ create a new license for such software, you may create and use a
383
+ modified version of this License if you rename the license and remove
384
+ any references to the name of the license steward (except to note that
385
+ such modified license differs from this License).
386
+
387
+ 10.4. Distributing Source Code Form that is Incompatible With Secondary
388
+ Licenses
389
+
390
+ If You choose to distribute Source Code Form that is Incompatible With
391
+ Secondary Licenses under the terms of this version of the License, the
392
+ notice described in Exhibit B of this License must be attached.
393
+
394
+ Exhibit A - Source Code Form License Notice
395
+ -------------------------------------------
396
+
397
+ This Source Code Form is subject to the terms of the Mozilla Public
398
+ License, v. 2.0. If a copy of the MPL was not distributed with this
399
+ file, You can obtain one at http://mozilla.org/MPL/2.0/.
400
+
401
+ If it is not possible or desirable to put the notice in a particular
402
+ file, then You may include the notice in a location (such as a LICENSE
403
+ file in a relevant directory) where a recipient would be likely to look
404
+ for such a notice.
405
+
406
+ You may add additional accurate notices of copyright ownership.
407
+
408
+ Exhibit B - "Incompatible With Secondary Licenses" Notice
409
+ ---------------------------------------------------------
410
+
411
+ This Source Code Form is "Incompatible With Secondary Licenses", as
412
+ defined by the Mozilla Public License, v. 2.0.
413
+
414
+ ==============================================================================
415
+ CPython: its LICENSE file
416
+ ==============================================================================
417
+
418
+ A. HISTORY OF THE SOFTWARE
419
+ ==========================
420
+
421
+ Python was created in the early 1990s by Guido van Rossum at Stichting
422
+ Mathematisch Centrum (CWI, see https://www.cwi.nl) in the Netherlands
423
+ as a successor of a language called ABC. Guido remains Python's
424
+ principal author, although it includes many contributions from others.
425
+
426
+ In 1995, Guido continued his work on Python at the Corporation for
427
+ National Research Initiatives (CNRI, see https://www.cnri.reston.va.us)
428
+ in Reston, Virginia where he released several versions of the
429
+ software.
430
+
431
+ In May 2000, Guido and the Python core development team moved to
432
+ BeOpen.com to form the BeOpen PythonLabs team. In October of the same
433
+ year, the PythonLabs team moved to Digital Creations, which became
434
+ Zope Corporation. In 2001, the Python Software Foundation (PSF, see
435
+ https://www.python.org/psf/) was formed, a non-profit organization
436
+ created specifically to own Python-related Intellectual Property.
437
+ Zope Corporation was a sponsoring member of the PSF.
438
+
439
+ All Python releases are Open Source (see https://opensource.org for
440
+ the Open Source Definition). Historically, most, but not all, Python
441
+ releases have also been GPL-compatible; the table below summarizes
442
+ the various releases.
443
+
444
+ Release Derived Year Owner GPL-
445
+ from compatible? (1)
446
+
447
+ 0.9.0 thru 1.2 1991-1995 CWI yes
448
+ 1.3 thru 1.5.2 1.2 1995-1999 CNRI yes
449
+ 1.6 1.5.2 2000 CNRI no
450
+ 2.0 1.6 2000 BeOpen.com no
451
+ 1.6.1 1.6 2001 CNRI yes (2)
452
+ 2.1 2.0+1.6.1 2001 PSF no
453
+ 2.0.1 2.0+1.6.1 2001 PSF yes
454
+ 2.1.1 2.1+2.0.1 2001 PSF yes
455
+ 2.1.2 2.1.1 2002 PSF yes
456
+ 2.1.3 2.1.2 2002 PSF yes
457
+ 2.2 and above 2.1.1 2001-now PSF yes
458
+
459
+ Footnotes:
460
+
461
+ (1) GPL-compatible doesn't mean that we're distributing Python under
462
+ the GPL. All Python licenses, unlike the GPL, let you distribute
463
+ a modified version without making your changes open source. The
464
+ GPL-compatible licenses make it possible to combine Python with
465
+ other software that is released under the GPL; the others don't.
466
+
467
+ (2) According to Richard Stallman, 1.6.1 is not GPL-compatible,
468
+ because its license has a choice of law clause. According to
469
+ CNRI, however, Stallman's lawyer has told CNRI's lawyer that 1.6.1
470
+ is "not incompatible" with the GPL.
471
+
472
+ Thanks to the many outside volunteers who have worked under Guido's
473
+ direction to make these releases possible.
474
+
475
+
476
+ B. TERMS AND CONDITIONS FOR ACCESSING OR OTHERWISE USING PYTHON
477
+ ===============================================================
478
+
479
+ Python software and documentation are licensed under the
480
+ Python Software Foundation License Version 2.
481
+
482
+ Starting with Python 3.8.6, examples, recipes, and other code in
483
+ the documentation are dual licensed under the PSF License Version 2
484
+ and the Zero-Clause BSD license.
485
+
486
+ Some software incorporated into Python is under different licenses.
487
+ The licenses are listed with code falling under that license.
488
+
489
+
490
+ PYTHON SOFTWARE FOUNDATION LICENSE VERSION 2
491
+ --------------------------------------------
492
+
493
+ 1. This LICENSE AGREEMENT is between the Python Software Foundation
494
+ ("PSF"), and the Individual or Organization ("Licensee") accessing and
495
+ otherwise using this software ("Python") in source or binary form and
496
+ its associated documentation.
497
+
498
+ 2. Subject to the terms and conditions of this License Agreement, PSF hereby
499
+ grants Licensee a nonexclusive, royalty-free, world-wide license to reproduce,
500
+ analyze, test, perform and/or display publicly, prepare derivative works,
501
+ distribute, and otherwise use Python alone or in any derivative version,
502
+ provided, however, that PSF's License Agreement and PSF's notice of copyright,
503
+ i.e., "Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
504
+ 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023 Python Software Foundation;
505
+ All Rights Reserved" are retained in Python alone or in any derivative version
506
+ prepared by Licensee.
507
+
508
+ 3. In the event Licensee prepares a derivative work that is based on
509
+ or incorporates Python or any part thereof, and wants to make
510
+ the derivative work available to others as provided herein, then
511
+ Licensee hereby agrees to include in any such work a brief summary of
512
+ the changes made to Python.
513
+
514
+ 4. PSF is making Python available to Licensee on an "AS IS"
515
+ basis. PSF MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR
516
+ IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, PSF MAKES NO AND
517
+ DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS
518
+ FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON WILL NOT
519
+ INFRINGE ANY THIRD PARTY RIGHTS.
520
+
521
+ 5. PSF SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON
522
+ FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS
523
+ A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON,
524
+ OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF.
525
+
526
+ 6. This License Agreement will automatically terminate upon a material
527
+ breach of its terms and conditions.
528
+
529
+ 7. Nothing in this License Agreement shall be deemed to create any
530
+ relationship of agency, partnership, or joint venture between PSF and
531
+ Licensee. This License Agreement does not grant permission to use PSF
532
+ trademarks or trade name in a trademark sense to endorse or promote
533
+ products or services of Licensee, or any third party.
534
+
535
+ 8. By copying, installing or otherwise using Python, Licensee
536
+ agrees to be bound by the terms and conditions of this License
537
+ Agreement.
538
+
539
+
540
+ BEOPEN.COM LICENSE AGREEMENT FOR PYTHON 2.0
541
+ -------------------------------------------
542
+
543
+ BEOPEN PYTHON OPEN SOURCE LICENSE AGREEMENT VERSION 1
544
+
545
+ 1. This LICENSE AGREEMENT is between BeOpen.com ("BeOpen"), having an
546
+ office at 160 Saratoga Avenue, Santa Clara, CA 95051, and the
547
+ Individual or Organization ("Licensee") accessing and otherwise using
548
+ this software in source or binary form and its associated
549
+ documentation ("the Software").
550
+
551
+ 2. Subject to the terms and conditions of this BeOpen Python License
552
+ Agreement, BeOpen hereby grants Licensee a non-exclusive,
553
+ royalty-free, world-wide license to reproduce, analyze, test, perform
554
+ and/or display publicly, prepare derivative works, distribute, and
555
+ otherwise use the Software alone or in any derivative version,
556
+ provided, however, that the BeOpen Python License is retained in the
557
+ Software, alone or in any derivative version prepared by Licensee.
558
+
559
+ 3. BeOpen is making the Software available to Licensee on an "AS IS"
560
+ basis. BEOPEN MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR
561
+ IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, BEOPEN MAKES NO AND
562
+ DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS
563
+ FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE WILL NOT
564
+ INFRINGE ANY THIRD PARTY RIGHTS.
565
+
566
+ 4. BEOPEN SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF THE
567
+ SOFTWARE FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS
568
+ AS A RESULT OF USING, MODIFYING OR DISTRIBUTING THE SOFTWARE, OR ANY
569
+ DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF.
570
+
571
+ 5. This License Agreement will automatically terminate upon a material
572
+ breach of its terms and conditions.
573
+
574
+ 6. This License Agreement shall be governed by and interpreted in all
575
+ respects by the law of the State of California, excluding conflict of
576
+ law provisions. Nothing in this License Agreement shall be deemed to
577
+ create any relationship of agency, partnership, or joint venture
578
+ between BeOpen and Licensee. This License Agreement does not grant
579
+ permission to use BeOpen trademarks or trade names in a trademark
580
+ sense to endorse or promote products or services of Licensee, or any
581
+ third party. As an exception, the "BeOpen Python" logos available at
582
+ http://www.pythonlabs.com/logos.html may be used according to the
583
+ permissions granted on that web page.
584
+
585
+ 7. By copying, installing or otherwise using the software, Licensee
586
+ agrees to be bound by the terms and conditions of this License
587
+ Agreement.
588
+
589
+
590
+ CNRI LICENSE AGREEMENT FOR PYTHON 1.6.1
591
+ ---------------------------------------
592
+
593
+ 1. This LICENSE AGREEMENT is between the Corporation for National
594
+ Research Initiatives, having an office at 1895 Preston White Drive,
595
+ Reston, VA 20191 ("CNRI"), and the Individual or Organization
596
+ ("Licensee") accessing and otherwise using Python 1.6.1 software in
597
+ source or binary form and its associated documentation.
598
+
599
+ 2. Subject to the terms and conditions of this License Agreement, CNRI
600
+ hereby grants Licensee a nonexclusive, royalty-free, world-wide
601
+ license to reproduce, analyze, test, perform and/or display publicly,
602
+ prepare derivative works, distribute, and otherwise use Python 1.6.1
603
+ alone or in any derivative version, provided, however, that CNRI's
604
+ License Agreement and CNRI's notice of copyright, i.e., "Copyright (c)
605
+ 1995-2001 Corporation for National Research Initiatives; All Rights
606
+ Reserved" are retained in Python 1.6.1 alone or in any derivative
607
+ version prepared by Licensee. Alternately, in lieu of CNRI's License
608
+ Agreement, Licensee may substitute the following text (omitting the
609
+ quotes): "Python 1.6.1 is made available subject to the terms and
610
+ conditions in CNRI's License Agreement. This Agreement together with
611
+ Python 1.6.1 may be located on the internet using the following
612
+ unique, persistent identifier (known as a handle): 1895.22/1013. This
613
+ Agreement may also be obtained from a proxy server on the internet
614
+ using the following URL: http://hdl.handle.net/1895.22/1013".
615
+
616
+ 3. In the event Licensee prepares a derivative work that is based on
617
+ or incorporates Python 1.6.1 or any part thereof, and wants to make
618
+ the derivative work available to others as provided herein, then
619
+ Licensee hereby agrees to include in any such work a brief summary of
620
+ the changes made to Python 1.6.1.
621
+
622
+ 4. CNRI is making Python 1.6.1 available to Licensee on an "AS IS"
623
+ basis. CNRI MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR
624
+ IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, CNRI MAKES NO AND
625
+ DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS
626
+ FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON 1.6.1 WILL NOT
627
+ INFRINGE ANY THIRD PARTY RIGHTS.
628
+
629
+ 5. CNRI SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON
630
+ 1.6.1 FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS
631
+ A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON 1.6.1,
632
+ OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF.
633
+
634
+ 6. This License Agreement will automatically terminate upon a material
635
+ breach of its terms and conditions.
636
+
637
+ 7. This License Agreement shall be governed by the federal
638
+ intellectual property law of the United States, including without
639
+ limitation the federal copyright law, and, to the extent such
640
+ U.S. federal law does not apply, by the law of the Commonwealth of
641
+ Virginia, excluding Virginia's conflict of law provisions.
642
+ Notwithstanding the foregoing, with regard to derivative works based
643
+ on Python 1.6.1 that incorporate non-separable material that was
644
+ previously distributed under the GNU General Public License (GPL), the
645
+ law of the Commonwealth of Virginia shall govern this License
646
+ Agreement only as to issues arising under or with respect to
647
+ Paragraphs 4, 5, and 7 of this License Agreement. Nothing in this
648
+ License Agreement shall be deemed to create any relationship of
649
+ agency, partnership, or joint venture between CNRI and Licensee. This
650
+ License Agreement does not grant permission to use CNRI trademarks or
651
+ trade name in a trademark sense to endorse or promote products or
652
+ services of Licensee, or any third party.
653
+
654
+ 8. By clicking on the "ACCEPT" button where indicated, or by copying,
655
+ installing or otherwise using Python 1.6.1, Licensee agrees to be
656
+ bound by the terms and conditions of this License Agreement.
657
+
658
+ ACCEPT
659
+
660
+
661
+ CWI LICENSE AGREEMENT FOR PYTHON 0.9.0 THROUGH 1.2
662
+ --------------------------------------------------
663
+
664
+ Copyright (c) 1991 - 1995, Stichting Mathematisch Centrum Amsterdam,
665
+ The Netherlands. All rights reserved.
666
+
667
+ Permission to use, copy, modify, and distribute this software and its
668
+ documentation for any purpose and without fee is hereby granted,
669
+ provided that the above copyright notice appear in all copies and that
670
+ both that copyright notice and this permission notice appear in
671
+ supporting documentation, and that the name of Stichting Mathematisch
672
+ Centrum or CWI not be used in advertising or publicity pertaining to
673
+ distribution of the software without specific, written prior
674
+ permission.
675
+
676
+ STICHTING MATHEMATISCH CENTRUM DISCLAIMS ALL WARRANTIES WITH REGARD TO
677
+ THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
678
+ FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH CENTRUM BE LIABLE
679
+ FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
680
+ WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
681
+ ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
682
+ OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
683
+
684
+ ZERO-CLAUSE BSD LICENSE FOR CODE IN THE PYTHON DOCUMENTATION
685
+ ----------------------------------------------------------------------
686
+
687
+ Permission to use, copy, modify, and/or distribute this software for any
688
+ purpose with or without fee is hereby granted.
689
+
690
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
691
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
692
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
693
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
694
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
695
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
696
+ PERFORMANCE OF THIS SOFTWARE.