«
Previous
|
Next
»
Revision bea4923f
Added by koszko over 1 year ago
- ID bea4923f7dbc6b63d4b7ceecbcc21688a20edf25
- Child 96b8830c
.gitignore | ||
---|---|---|
1 |
# SPDX-License-Identifier: CC0-1.0 |
|
2 |
|
|
3 |
# Copyright (C) 2022 Wojtek Kosior <koszko@koszko.org> |
|
4 |
# |
|
5 |
# Available under the terms of Creative Commons Zero v1.0 Universal. |
|
6 |
|
|
7 |
.reuse |
LICENSES/CC0-1.0.txt | ||
---|---|---|
1 |
Creative Commons Legal Code |
|
2 |
|
|
3 |
CC0 1.0 Universal |
|
4 |
|
|
5 |
CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE |
|
6 |
LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN |
|
7 |
ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS |
|
8 |
INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES |
|
9 |
REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS |
|
10 |
PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM |
|
11 |
THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED |
|
12 |
HEREUNDER. |
|
13 |
|
|
14 |
Statement of Purpose |
|
15 |
|
|
16 |
The laws of most jurisdictions throughout the world automatically confer |
|
17 |
exclusive Copyright and Related Rights (defined below) upon the creator |
|
18 |
and subsequent owner(s) (each and all, an "owner") of an original work of |
|
19 |
authorship and/or a database (each, a "Work"). |
|
20 |
|
|
21 |
Certain owners wish to permanently relinquish those rights to a Work for |
|
22 |
the purpose of contributing to a commons of creative, cultural and |
|
23 |
scientific works ("Commons") that the public can reliably and without fear |
|
24 |
of later claims of infringement build upon, modify, incorporate in other |
|
25 |
works, reuse and redistribute as freely as possible in any form whatsoever |
|
26 |
and for any purposes, including without limitation commercial purposes. |
|
27 |
These owners may contribute to the Commons to promote the ideal of a free |
|
28 |
culture and the further production of creative, cultural and scientific |
|
29 |
works, or to gain reputation or greater distribution for their Work in |
|
30 |
part through the use and efforts of others. |
|
31 |
|
|
32 |
For these and/or other purposes and motivations, and without any |
|
33 |
expectation of additional consideration or compensation, the person |
|
34 |
associating CC0 with a Work (the "Affirmer"), to the extent that he or she |
|
35 |
is an owner of Copyright and Related Rights in the Work, voluntarily |
|
36 |
elects to apply CC0 to the Work and publicly distribute the Work under its |
|
37 |
terms, with knowledge of his or her Copyright and Related Rights in the |
|
38 |
Work and the meaning and intended legal effect of CC0 on those rights. |
|
39 |
|
|
40 |
1. Copyright and Related Rights. A Work made available under CC0 may be |
|
41 |
protected by copyright and related or neighboring rights ("Copyright and |
|
42 |
Related Rights"). Copyright and Related Rights include, but are not |
|
43 |
limited to, the following: |
|
44 |
|
|
45 |
i. the right to reproduce, adapt, distribute, perform, display, |
|
46 |
communicate, and translate a Work; |
|
47 |
ii. moral rights retained by the original author(s) and/or performer(s); |
|
48 |
iii. publicity and privacy rights pertaining to a person's image or |
|
49 |
likeness depicted in a Work; |
|
50 |
iv. rights protecting against unfair competition in regards to a Work, |
|
51 |
subject to the limitations in paragraph 4(a), below; |
|
52 |
v. rights protecting the extraction, dissemination, use and reuse of data |
|
53 |
in a Work; |
|
54 |
vi. database rights (such as those arising under Directive 96/9/EC of the |
|
55 |
European Parliament and of the Council of 11 March 1996 on the legal |
|
56 |
protection of databases, and under any national implementation |
|
57 |
thereof, including any amended or successor version of such |
|
58 |
directive); and |
|
59 |
vii. other similar, equivalent or corresponding rights throughout the |
|
60 |
world based on applicable law or treaty, and any national |
|
61 |
implementations thereof. |
|
62 |
|
|
63 |
2. Waiver. To the greatest extent permitted by, but not in contravention |
|
64 |
of, applicable law, Affirmer hereby overtly, fully, permanently, |
|
65 |
irrevocably and unconditionally waives, abandons, and surrenders all of |
|
66 |
Affirmer's Copyright and Related Rights and associated claims and causes |
|
67 |
of action, whether now known or unknown (including existing as well as |
|
68 |
future claims and causes of action), in the Work (i) in all territories |
|
69 |
worldwide, (ii) for the maximum duration provided by applicable law or |
|
70 |
treaty (including future time extensions), (iii) in any current or future |
|
71 |
medium and for any number of copies, and (iv) for any purpose whatsoever, |
|
72 |
including without limitation commercial, advertising or promotional |
|
73 |
purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each |
|
74 |
member of the public at large and to the detriment of Affirmer's heirs and |
|
75 |
successors, fully intending that such Waiver shall not be subject to |
|
76 |
revocation, rescission, cancellation, termination, or any other legal or |
|
77 |
equitable action to disrupt the quiet enjoyment of the Work by the public |
|
78 |
as contemplated by Affirmer's express Statement of Purpose. |
|
79 |
|
|
80 |
3. Public License Fallback. Should any part of the Waiver for any reason |
|
81 |
be judged legally invalid or ineffective under applicable law, then the |
|
82 |
Waiver shall be preserved to the maximum extent permitted taking into |
|
83 |
account Affirmer's express Statement of Purpose. In addition, to the |
|
84 |
extent the Waiver is so judged Affirmer hereby grants to each affected |
|
85 |
person a royalty-free, non transferable, non sublicensable, non exclusive, |
|
86 |
irrevocable and unconditional license to exercise Affirmer's Copyright and |
|
87 |
Related Rights in the Work (i) in all territories worldwide, (ii) for the |
|
88 |
maximum duration provided by applicable law or treaty (including future |
|
89 |
time extensions), (iii) in any current or future medium and for any number |
|
90 |
of copies, and (iv) for any purpose whatsoever, including without |
|
91 |
limitation commercial, advertising or promotional purposes (the |
|
92 |
"License"). The License shall be deemed effective as of the date CC0 was |
|
93 |
applied by Affirmer to the Work. Should any part of the License for any |
|
94 |
reason be judged legally invalid or ineffective under applicable law, such |
|
95 |
partial invalidity or ineffectiveness shall not invalidate the remainder |
|
96 |
of the License, and in such case Affirmer hereby affirms that he or she |
|
97 |
will not (i) exercise any of his or her remaining Copyright and Related |
|
98 |
Rights in the Work or (ii) assert any associated claims and causes of |
|
99 |
action with respect to the Work, in either case contrary to Affirmer's |
|
100 |
express Statement of Purpose. |
|
101 |
|
|
102 |
4. Limitations and Disclaimers. |
|
103 |
|
|
104 |
a. No trademark or patent rights held by Affirmer are waived, abandoned, |
|
105 |
surrendered, licensed or otherwise affected by this document. |
|
106 |
b. Affirmer offers the Work as-is and makes no representations or |
|
107 |
warranties of any kind concerning the Work, express, implied, |
|
108 |
statutory or otherwise, including without limitation warranties of |
|
109 |
title, merchantability, fitness for a particular purpose, non |
|
110 |
infringement, or the absence of latent or other defects, accuracy, or |
|
111 |
the present or absence of errors, whether or not discoverable, all to |
|
112 |
the greatest extent permissible under applicable law. |
|
113 |
c. Affirmer disclaims responsibility for clearing rights of other persons |
|
114 |
that may apply to the Work or any use thereof, including without |
|
115 |
limitation any person's Copyright and Related Rights in the Work. |
|
116 |
Further, Affirmer disclaims responsibility for obtaining any necessary |
|
117 |
consents, permissions or other rights required for any use of the |
|
118 |
Work. |
|
119 |
d. Affirmer understands and acknowledges that Creative Commons is not a |
|
120 |
party to this document and has no duty or obligation with respect to |
|
121 |
this CC0 or use of the Work. |
README.txt | ||
---|---|---|
1 |
This is a sample Hydrilla source package. Hydrilla builder can be used to build |
|
2 |
it for distribution. |
README.txt.license | ||
---|---|---|
1 |
SPDX-License-Identifier: CC0-1.0 |
|
2 |
|
|
3 |
Copyright (C) 2022 Wojtek Kosior <koszko@koszko.org> |
bye.js | ||
---|---|---|
1 |
// SPDX-License-Identifier: CC0-1.0 |
|
2 |
|
|
3 |
// Copyright (C) 2021 Wojtek Kosior <koszko@koszko.org> |
|
4 |
// |
|
5 |
// Available under the terms of Creative Commons Zero v1.0 Universal. |
|
6 |
|
|
7 |
console.log(bye_message + "apple!"); |
hello.js | ||
---|---|---|
1 |
// SPDX-License-Identifier: CC0-1.0 |
|
2 |
|
|
3 |
// Copyright (C) 2021 Wojtek Kosior <koszko@koszko.org> |
|
4 |
// |
|
5 |
// Available under the terms of Creative Commons Zero v1.0 Universal. |
|
6 |
|
|
7 |
console.log(hello_message + "apple!"); |
index.json | ||
---|---|---|
1 |
// SPDX-License-Identifier: CC0-1.0 |
|
2 |
|
|
3 |
// Copyright (C) 2021, 2022 Wojtek Kosior <koszko@koszko.org> |
|
4 |
// Available under the terms of Creative Commons Zero v1.0 Universal. |
|
5 |
|
|
6 |
// This is an example index.json file describing Hydrilla site content. As you |
|
7 |
// can see, for storing site content information Hydrilla utilizes JSON with an |
|
8 |
// additional extension in the form of '//' comments support. |
|
9 |
|
|
10 |
// An index.json file conveys definitions of site resources and pattern->payload |
|
11 |
// mappings. The definitions may reference files under index.json's containing |
|
12 |
// directory, using relative paths. This is how scripts, license texts, etc. are |
|
13 |
// included. |
|
14 |
// File reference always takes the form of an object with "file" property |
|
15 |
// specifying path to the file. In certain contexts additional properties may be |
|
16 |
// allowed or required. Unix paths (using '/' as separator) are assumed. It is |
|
17 |
// not allowed for an index.json file to reference files outside its directory. |
|
18 |
|
|
19 |
// Certain objects are allowed to contain a "comment" field. Although '//' |
|
20 |
// comments can be used in index.json files, they will not be included in |
|
21 |
// generated JSON definitions. If a comment should be included in the |
|
22 |
// definitions served by Hydrilla API, it should be put in a "comment" field of |
|
23 |
// the proper object. |
|
24 |
|
|
25 |
// Unknown object properties will be ignored. This is for compatibility with |
|
26 |
// possible future revisions of the format. |
|
27 |
|
|
28 |
// Various kinds of objects contain version information. Version is always an |
|
29 |
// array of integers, with major version number being the first array item. When |
|
30 |
// applicable, a version is accompanied by a revision field which contains a |
|
31 |
// positive integer. If versions specified by arrays of different length need to |
|
32 |
// be compared, the shorter array gets padded with zeroes on the right. This |
|
33 |
// means that for example version 1.3 could be given as both [1, 3] and |
|
34 |
// [1, 3, 0, 0] (aka 1.3.0.0) and either would mean the same. |
|
35 |
|
|
36 |
{ |
|
37 |
// Once our index.json schema changes, this field's value will change. Our |
|
38 |
// software will be able to handle both current and older formats thanks to |
|
39 |
// this information present in every index.json file. Schemas that differ by |
|
40 |
// the first (major) number are always incompatible (e.g. a Hydrilla builder |
|
41 |
// instance released at the time of 1.2 being the most recent schema version |
|
42 |
// will not understand version 2.0). |
|
43 |
// Schemas that are backwards-compatible will have the same major number |
|
44 |
// and might differ by the second (minor) version number. The third (patch) |
|
45 |
// and subsequent numbers are being ignored right now. |
|
46 |
"source_schema_version": [1], |
|
47 |
|
|
48 |
// Used when referring to this source package. Should be consize, unique |
|
49 |
// (among other source package names) and can only use a restricted set of |
|
50 |
// characters. It has to match: [-0-9a-z.]+ |
|
51 |
"source_name": "hello", |
|
52 |
|
|
53 |
// Copyright of this source package. Should list files that contain |
|
54 |
// copyright information regarding this source package as well as texts of |
|
55 |
// licenses used. Although no specific format of these files is mandated, it |
|
56 |
// is recommended to make each source package REUSE-compliant, generate an |
|
57 |
// spdx report for it as `report.spdx` and list this report together with |
|
58 |
// all license files here. |
|
59 |
"copyright": [ |
|
60 |
{"file": "report.spdx"}, |
|
61 |
{"file": "LICENSES/CC0-1.0.txt"} |
|
62 |
], |
|
63 |
|
|
64 |
// Where this software/work initially comes from. |
|
65 |
"upstream_url": "https://git.koszko.org/pydrilla/tree/src/test/example_content/hello", |
|
66 |
|
|
67 |
// Additional "comment" field can be used if needed. |
|
68 |
// "comment": "" |
|
69 |
|
|
70 |
// List of actual site resources and pattern->payload mappings. Each of them |
|
71 |
// is represented by an object. Meta-sites and replacement site interfaces |
|
72 |
// will also belong here once they get implemented. |
|
73 |
"definitions": [ |
|
74 |
{ |
|
75 |
// Value of "type" can currently be one of: "resource" and |
|
76 |
// "mapping". The one we have here, "resource", defines a list |
|
77 |
// of injectable scripts that can be used as a payload or as a |
|
78 |
// dependency of another "resource". In the future CSS style sheets |
|
79 |
// and WASM modules will also be composite parts of a "resource" as |
|
80 |
// scripts are now. |
|
81 |
"type": "resource", |
|
82 |
|
|
83 |
// Used when referring to this resource in "dependencies" list of |
|
84 |
// another resource or in "payload" field of a mapping. Should |
|
85 |
// be consize and can only use a restricted set of characters. It |
|
86 |
// has to match: [-0-9a-z]+ |
|
87 |
"identifier": "helloapple", |
|
88 |
|
|
89 |
// "long_name" should be used to specify a user-friendly alternative |
|
90 |
// to an identifier. It should generally not collide with a long |
|
91 |
// name of some resource with a different uuid and also shouldn't |
|
92 |
// change in-between versions of the same resource, although |
|
93 |
// exceptions to both rules might be considered. Long name is |
|
94 |
// allowed to contain arbitrary unicode characters (within reason!). |
|
95 |
"long_name": "Hello Apple", |
|
96 |
|
|
97 |
// Different versions (e.g. 1.0 and 1.3) of the same resource can be |
|
98 |
// defined in separate index.json files. This makes it easy to |
|
99 |
// accidently cause an identifier clash. To help detect it, we |
|
100 |
// require that each resource has a uuid associated with it. Attempt |
|
101 |
// to define multiple resources with the same identifier and |
|
102 |
// different uuids will result in an error being reported. Defining |
|
103 |
// multiple resources with different identifiers and the same uuid |
|
104 |
// is disallowed for now (it may be later permitted if we consider |
|
105 |
// it good for some use-case). |
|
106 |
"uuid": "a6754dcb-58d8-4b7a-a245-24fd7ad4cd68", |
|
107 |
|
|
108 |
// Version should match the upstream version of the resource (e.g. a |
|
109 |
// version of javascript library). Revision number starts as 1 for |
|
110 |
// each new resource version and gets incremented by 1 each time a |
|
111 |
// modification to the packaging of this version is done. Hydrilla |
|
112 |
// will allow multiple definitions of the same resource to load, as |
|
113 |
// long as their versions differ. Thanks to the "version" and |
|
114 |
// "revision" fields, clients will know they have to update certain |
|
115 |
// resource after it has been updated. If multiple definitions of |
|
116 |
// the same version of given resource are provided, an error is |
|
117 |
// generated (even if those definitions differ by revision number). |
|
118 |
"version": [2021, 11, 10], |
|
119 |
"revision": 1, |
|
120 |
|
|
121 |
// A short, meaningful description of what the resource is and/or |
|
122 |
// what it does. |
|
123 |
"description": "greets an apple", |
|
124 |
|
|
125 |
// If needed, a "comment" field can be added to provide some |
|
126 |
// additional information. |
|
127 |
// "comment": "this resource something something", |
|
128 |
|
|
129 |
// Resource's "dependencies" array shall contain names of other |
|
130 |
// resources that (in case of scripts at least) should get evaluated |
|
131 |
// on a page before this resource's own scripts. |
|
132 |
"dependencies": ["hello-message"], |
|
133 |
|
|
134 |
// Array of javascript files that belong to this resource. |
|
135 |
"scripts": [ |
|
136 |
{"file": "hello.js"}, |
|
137 |
{"file": "bye.js"} |
|
138 |
] |
|
139 |
}, { |
|
140 |
"type": "resource", |
|
141 |
"identifier": "hello-message", |
|
142 |
"long_name": "Hello Message", |
|
143 |
"uuid": "1ec36229-298c-4b35-8105-c4f2e1b9811e", |
|
144 |
"version": [2021, 11, 10], |
|
145 |
"revision": 2, |
|
146 |
"description": "define messages for saying hello and bye", |
|
147 |
// If "dependencies" is empty, it can also be omitted. |
|
148 |
// "dependencies": [], |
|
149 |
"scripts": [{"file": "message.js"}] |
|
150 |
}, { |
|
151 |
"type": "mapping", |
|
152 |
|
|
153 |
// Has similar function to resource's identifier. Should be consize |
|
154 |
// and can only use a restricted set of characters. It has to match: |
|
155 |
// [-0-9a-z]+ |
|
156 |
// It can be the same as some resource identifier (those are |
|
157 |
// different entities and are treated separately). |
|
158 |
"identifier": "helloapple", |
|
159 |
|
|
160 |
// "long name" and "uuid" have the same meaning as in the case of |
|
161 |
// resources. Uuids of a resource and a mapping can technically be |
|
162 |
// the same, but it is recommended to avoid even this kind of |
|
163 |
// repetition. |
|
164 |
"long_name": "Hello Apple", |
|
165 |
"uuid": "54d23bba-472e-42f5-9194-eaa24c0e3ee7", |
|
166 |
|
|
167 |
// "version" differs from its counterpart in resource in that it has |
|
168 |
// no accompanying revision number. |
|
169 |
"version": [2021, 11, 10], |
|
170 |
|
|
171 |
// A short, meaningful description of what the mapping does. |
|
172 |
"description": "causes apple to get greeted on Hydrillabugs issue tracker", |
|
173 |
|
|
174 |
// A comment, if necessary. |
|
175 |
// "comment": "blah blah because bleh" |
|
176 |
|
|
177 |
// The "payloads" object specifies which payloads are to be applied |
|
178 |
// to which URLs. |
|
179 |
"payloads": { |
|
180 |
// Each key should be a valid Haketilo URL pattern. |
|
181 |
"https://hydrillabugs.koszko.org/***": { |
|
182 |
// Should be the name of an existing resource. The resource |
|
183 |
// may, but doesn't have to, be defined in the same |
|
184 |
// index.json file. |
|
185 |
"identifier": "helloapple" |
|
186 |
}, |
|
187 |
// More associations may follow. |
|
188 |
"https://hachettebugs.koszko.org/***": { |
|
189 |
"identifier": "helloapple" |
|
190 |
} |
|
191 |
} |
|
192 |
} |
|
193 |
], |
|
194 |
// We can also list additional files to include in the produced source |
|
195 |
// archive. Hydrilla builder will then include those together with all |
|
196 |
// script and copyright files used. |
|
197 |
"additional_files": [ |
|
198 |
{"file": "README.txt"} |
|
199 |
], |
|
200 |
// We can optionally tell Hydrilla builder to run the REUSE tool to generate |
|
201 |
// report.spdx file. Using this option requires REUSE to be installed and |
|
202 |
// and importable in the Python virtualenv used by Hydrilla builder. |
|
203 |
"reuse_generate_spdx_report": true |
|
204 |
} |
message.js | ||
---|---|---|
1 |
// SPDX-License-Identifier: CC0-1.0 |
|
2 |
|
|
3 |
// Copyright (C) 2021 Wojtek Kosior <koszko@koszko.org> |
|
4 |
// |
|
5 |
// Available under the terms of Creative Commons Zero v1.0 Universal. |
|
6 |
|
|
7 |
var hello_message = "hello, " |
|
8 |
var bye_message = "bye, " |
Also available in: Unified diff
initial commit