From 7ce190b3ce2853bace54e717ad114a7afc3a152d Mon Sep 17 00:00:00 2001 From: Oliver Stolz <73951934+OliverStolzBO@users.noreply.github.com> Date: Tue, 7 May 2024 11:53:55 +0200 Subject: [PATCH] Add missing licenses for REUSE compliance (#17) * Add CC0-1.0 to LICENSES directory * Update license headers * Add REUSE complience check to workflows * Fix linting workflow --- .eslintignore | 3 + .eslintrc.js | 3 + .github/workflows/build.yml | 4 +- .github/workflows/lint.yml | 2 +- .github/workflows/reuse.yml | 24 ++++ .github/workflows/testing_and_coverage.yml | 4 +- .gitignore | 3 + .gitlab-ci.yml | 2 +- .gitmodules | 3 + .prettierignore | 3 + .prettierrc.license | 3 + .vscode/launch.json | 1 + LICENSES/CC0-1.0.txt | 121 ++++++++++++++++++ client/package-lock.json.license | 2 + client/package.json.license | 2 + client/syntax/README.md | 8 -- ...escription_language.tmGrammar.json.license | 2 + client/tsconfig.json | 1 + jest-style-mock.js | 3 + jest.config.js | 3 + language_configuration/README.md | 8 -- .../language-configuration.json.license | 2 + package-lock.json.license | 2 + package.json.license | 2 + requirements.txt | 3 + server/package-lock.json.license | 2 + server/package.json.license | 2 + 27 files changed, 196 insertions(+), 22 deletions(-) create mode 100644 .github/workflows/reuse.yml create mode 100644 .prettierrc.license create mode 100644 LICENSES/CC0-1.0.txt create mode 100644 client/package-lock.json.license create mode 100644 client/package.json.license delete mode 100644 client/syntax/README.md create mode 100644 client/syntax/production_flow_description_language.tmGrammar.json.license delete mode 100644 language_configuration/README.md create mode 100644 language_configuration/language-configuration.json.license create mode 100644 package-lock.json.license create mode 100644 package.json.license create mode 100644 server/package-lock.json.license create mode 100644 server/package.json.license diff --git a/.eslintignore b/.eslintignore index 986ccad..af15dfe 100644 --- a/.eslintignore +++ b/.eslintignore @@ -1,3 +1,6 @@ +# SPDX-FileCopyrightText: The PFDL VS Code Extension Contributors +# SPDX-License-Identifier: CC0-1.0 + node_modules/** client/node_modules/** client/out/** diff --git a/.eslintrc.js b/.eslintrc.js index 0f7b247..b7d4e0e 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -1,3 +1,6 @@ +// SPDX-FileCopyrightText: The PFDL VS Code Extension Contributors +// SPDX-License-Identifier: CC0-1.0 + /**@type {import('eslint').Linter.Config} */ // eslint-disable-next-line no-undef module.exports = { diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 18c8ef4..2f2f2bb 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,5 +1,5 @@ -# SPDX-FileCopyrightText: 2023 The PFDL VS Code Extension Contributors -# SPDX-License-Identifier: MIT +# SPDX-FileCopyrightText: The PFDL VS Code Extension Contributors +# SPDX-License-Identifier: CC0-1.0 name: Build new extension version diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 3ce9d9c..87ea84f 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -1,5 +1,5 @@ # SPDX-FileCopyrightText: The PFDL VS Code Extension Contributors -# SPDX-License-Identifier: MIT +# SPDX-License-Identifier: CC0-1.0 name: Lint diff --git a/.github/workflows/reuse.yml b/.github/workflows/reuse.yml new file mode 100644 index 0000000..7b9583d --- /dev/null +++ b/.github/workflows/reuse.yml @@ -0,0 +1,24 @@ +# SPDX-FileCopyrightText: The PFDL VS Code Extension Contributors +# SPDX-License-Identifier: CC0-1.0 + +name: REUSE Compliance Check + +on: + pull_request: + branches: + - main + push: + branches: + - main + +permissions: + contents: read + +jobs: + reuse: + runs-on: ubuntu-22.04 + steps: + - name: Checkout repository + uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 + - name: REUSE Compliance Check + uses: fsfe/reuse-action@a46482ca367aef4454a87620aa37c2be4b2f8106 # v3.0.0 diff --git a/.github/workflows/testing_and_coverage.yml b/.github/workflows/testing_and_coverage.yml index 4b926d4..d20f4eb 100644 --- a/.github/workflows/testing_and_coverage.yml +++ b/.github/workflows/testing_and_coverage.yml @@ -1,5 +1,5 @@ -# SPDX-FileCopyrightText: 2023 The PFDL VS Code Extension Contributors -# SPDX-License-Identifier: MIT +# SPDX-FileCopyrightText: The PFDL VS Code Extension Contributors +# SPDX-License-Identifier: CC0-1.0 name: Testing code visualization diff --git a/.gitignore b/.gitignore index 123f832..16cd618 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,6 @@ +# SPDX-FileCopyrightText: The PFDL VS Code Extension Contributors +# SPDX-License-Identifier: CC0-1.0 + out node_modules .vscode-test diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 7e0e679..2477f21 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,5 +1,5 @@ # SPDX-FileCopyrightText: The PFDL VS Code Extension Contributors -# SPDX-License-Identifier: MIT +# SPDX-License-Identifier: CC0-1.0 image: node:latest diff --git a/.gitmodules b/.gitmodules index e47521e..c76e0bd 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,6 @@ +# SPDX-FileCopyrightText: The PFDL VS Code Extension Contributors +# SPDX-License-Identifier: CC0-1.0 + [submodule "pfdl"] path = pfdl url = https://github.com/iml130/pfdl.git diff --git a/.prettierignore b/.prettierignore index de790fe..8d19698 100644 --- a/.prettierignore +++ b/.prettierignore @@ -1,3 +1,6 @@ +# SPDX-FileCopyrightText: The PFDL VS Code Extension Contributors +# SPDX-License-Identifier: CC0-1.0 + node_modules/** client/node_modules/** client/out/** diff --git a/.prettierrc.license b/.prettierrc.license new file mode 100644 index 0000000..36c91f7 --- /dev/null +++ b/.prettierrc.license @@ -0,0 +1,3 @@ +SPDX-FileCopyrightText: The PFDL VS Code Extension Contributors +SPDX-License-Identifier: CC0-1.0 + diff --git a/.vscode/launch.json b/.vscode/launch.json index 1ad80ec..f9a483f 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -1,6 +1,7 @@ // SPDX-FileCopyrightText: Microsoft Corporation // SPDX-FileCopyrightText: The PFDL VS Code Extension Contributors // SPDX-License-Identifier: MIT +// SPDX-License-Identifier: CC0-1.0 { "version": "0.2.0", diff --git a/LICENSES/CC0-1.0.txt b/LICENSES/CC0-1.0.txt new file mode 100644 index 0000000..0e259d4 --- /dev/null +++ b/LICENSES/CC0-1.0.txt @@ -0,0 +1,121 @@ +Creative Commons Legal Code + +CC0 1.0 Universal + + CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE + LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN + ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS + INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES + REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS + PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM + THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED + HEREUNDER. + +Statement of Purpose + +The laws of most jurisdictions throughout the world automatically confer +exclusive Copyright and Related Rights (defined below) upon the creator +and subsequent owner(s) (each and all, an "owner") of an original work of +authorship and/or a database (each, a "Work"). + +Certain owners wish to permanently relinquish those rights to a Work for +the purpose of contributing to a commons of creative, cultural and +scientific works ("Commons") that the public can reliably and without fear +of later claims of infringement build upon, modify, incorporate in other +works, reuse and redistribute as freely as possible in any form whatsoever +and for any purposes, including without limitation commercial purposes. +These owners may contribute to the Commons to promote the ideal of a free +culture and the further production of creative, cultural and scientific +works, or to gain reputation or greater distribution for their Work in +part through the use and efforts of others. + +For these and/or other purposes and motivations, and without any +expectation of additional consideration or compensation, the person +associating CC0 with a Work (the "Affirmer"), to the extent that he or she +is an owner of Copyright and Related Rights in the Work, voluntarily +elects to apply CC0 to the Work and publicly distribute the Work under its +terms, with knowledge of his or her Copyright and Related Rights in the +Work and the meaning and intended legal effect of CC0 on those rights. + +1. Copyright and Related Rights. A Work made available under CC0 may be +protected by copyright and related or neighboring rights ("Copyright and +Related Rights"). Copyright and Related Rights include, but are not +limited to, the following: + + i. the right to reproduce, adapt, distribute, perform, display, + communicate, and translate a Work; + ii. moral rights retained by the original author(s) and/or performer(s); +iii. publicity and privacy rights pertaining to a person's image or + likeness depicted in a Work; + iv. rights protecting against unfair competition in regards to a Work, + subject to the limitations in paragraph 4(a), below; + v. rights protecting the extraction, dissemination, use and reuse of data + in a Work; + vi. database rights (such as those arising under Directive 96/9/EC of the + European Parliament and of the Council of 11 March 1996 on the legal + protection of databases, and under any national implementation + thereof, including any amended or successor version of such + directive); and +vii. other similar, equivalent or corresponding rights throughout the + world based on applicable law or treaty, and any national + implementations thereof. + +2. Waiver. To the greatest extent permitted by, but not in contravention +of, applicable law, Affirmer hereby overtly, fully, permanently, +irrevocably and unconditionally waives, abandons, and surrenders all of +Affirmer's Copyright and Related Rights and associated claims and causes +of action, whether now known or unknown (including existing as well as +future claims and causes of action), in the Work (i) in all territories +worldwide, (ii) for the maximum duration provided by applicable law or +treaty (including future time extensions), (iii) in any current or future +medium and for any number of copies, and (iv) for any purpose whatsoever, +including without limitation commercial, advertising or promotional +purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each +member of the public at large and to the detriment of Affirmer's heirs and +successors, fully intending that such Waiver shall not be subject to +revocation, rescission, cancellation, termination, or any other legal or +equitable action to disrupt the quiet enjoyment of the Work by the public +as contemplated by Affirmer's express Statement of Purpose. + +3. Public License Fallback. Should any part of the Waiver for any reason +be judged legally invalid or ineffective under applicable law, then the +Waiver shall be preserved to the maximum extent permitted taking into +account Affirmer's express Statement of Purpose. In addition, to the +extent the Waiver is so judged Affirmer hereby grants to each affected +person a royalty-free, non transferable, non sublicensable, non exclusive, +irrevocable and unconditional license to exercise Affirmer's Copyright and +Related Rights in the Work (i) in all territories worldwide, (ii) for the +maximum duration provided by applicable law or treaty (including future +time extensions), (iii) in any current or future medium and for any number +of copies, and (iv) for any purpose whatsoever, including without +limitation commercial, advertising or promotional purposes (the +"License"). The License shall be deemed effective as of the date CC0 was +applied by Affirmer to the Work. Should any part of the License for any +reason be judged legally invalid or ineffective under applicable law, such +partial invalidity or ineffectiveness shall not invalidate the remainder +of the License, and in such case Affirmer hereby affirms that he or she +will not (i) exercise any of his or her remaining Copyright and Related +Rights in the Work or (ii) assert any associated claims and causes of +action with respect to the Work, in either case contrary to Affirmer's +express Statement of Purpose. + +4. Limitations and Disclaimers. + + a. No trademark or patent rights held by Affirmer are waived, abandoned, + surrendered, licensed or otherwise affected by this document. + b. Affirmer offers the Work as-is and makes no representations or + warranties of any kind concerning the Work, express, implied, + statutory or otherwise, including without limitation warranties of + title, merchantability, fitness for a particular purpose, non + infringement, or the absence of latent or other defects, accuracy, or + the present or absence of errors, whether or not discoverable, all to + the greatest extent permissible under applicable law. + c. Affirmer disclaims responsibility for clearing rights of other persons + that may apply to the Work or any use thereof, including without + limitation any person's Copyright and Related Rights in the Work. + Further, Affirmer disclaims responsibility for obtaining any necessary + consents, permissions or other rights required for any use of the + Work. + d. Affirmer understands and acknowledges that Creative Commons is not a + party to this document and has no duty or obligation with respect to + this CC0 or use of the Work. diff --git a/client/package-lock.json.license b/client/package-lock.json.license new file mode 100644 index 0000000..9d26246 --- /dev/null +++ b/client/package-lock.json.license @@ -0,0 +1,2 @@ +SPDX-FileCopyrightText: The PFDL VS Code Extension Contributors +SPDX-License-Identifier: CC0-1.0 diff --git a/client/package.json.license b/client/package.json.license new file mode 100644 index 0000000..9d26246 --- /dev/null +++ b/client/package.json.license @@ -0,0 +1,2 @@ +SPDX-FileCopyrightText: The PFDL VS Code Extension Contributors +SPDX-License-Identifier: CC0-1.0 diff --git a/client/syntax/README.md b/client/syntax/README.md deleted file mode 100644 index 8996ed4..0000000 --- a/client/syntax/README.md +++ /dev/null @@ -1,8 +0,0 @@ - - -### production_flow_description_language.tmGrammar.json - -This file defines the PFDL grammar to be recognized by the PFDL language server. This enables auto-completion and syntax highlighting in the VS Code editor diff --git a/client/syntax/production_flow_description_language.tmGrammar.json.license b/client/syntax/production_flow_description_language.tmGrammar.json.license new file mode 100644 index 0000000..f45d0b7 --- /dev/null +++ b/client/syntax/production_flow_description_language.tmGrammar.json.license @@ -0,0 +1,2 @@ +SPDX-FileCopyrightText: The PFDL VS Code Extension Contributors +SPDX-License-Identifier: MIT diff --git a/client/tsconfig.json b/client/tsconfig.json index 66c8967..2843db7 100644 --- a/client/tsconfig.json +++ b/client/tsconfig.json @@ -1,6 +1,7 @@ // SPDX-FileCopyrightText: Microsoft Corporation // SPDX-FileCopyrightText: The PFDL VS Code Extension Contributors // SPDX-License-Identifier: MIT +// SPDX-License-Identifier: CC0-1.0 // based on https://github.com/microsoft/vscode-extension-samples/blob/cd6c33d101297d4db37869a0ef375ec16d57997c/lsp-sample/client/tsconfig.json { diff --git a/jest-style-mock.js b/jest-style-mock.js index f053ebf..d19fc35 100644 --- a/jest-style-mock.js +++ b/jest-style-mock.js @@ -1 +1,4 @@ +// SPDX-FileCopyrightText: The PFDL VS Code Extension Contributors +// SPDX-License-Identifier: CC0-1.0 + module.exports = {}; diff --git a/jest.config.js b/jest.config.js index f6119f4..77c0145 100644 --- a/jest.config.js +++ b/jest.config.js @@ -1,3 +1,6 @@ +// SPDX-FileCopyrightText: The PFDL VS Code Extension Contributors +// SPDX-License-Identifier: CC0-1.0 + /** @type {import('ts-jest').JestConfigWithTsJest} */ module.exports = { preset: 'ts-jest', diff --git a/language_configuration/README.md b/language_configuration/README.md deleted file mode 100644 index 83d4159..0000000 --- a/language_configuration/README.md +++ /dev/null @@ -1,8 +0,0 @@ - - -### language-configuration.json - -This file defines configurations used by the PFDL language server to set rules for the VS Code editor when editing PFDL programs. diff --git a/language_configuration/language-configuration.json.license b/language_configuration/language-configuration.json.license new file mode 100644 index 0000000..f45d0b7 --- /dev/null +++ b/language_configuration/language-configuration.json.license @@ -0,0 +1,2 @@ +SPDX-FileCopyrightText: The PFDL VS Code Extension Contributors +SPDX-License-Identifier: MIT diff --git a/package-lock.json.license b/package-lock.json.license new file mode 100644 index 0000000..9d26246 --- /dev/null +++ b/package-lock.json.license @@ -0,0 +1,2 @@ +SPDX-FileCopyrightText: The PFDL VS Code Extension Contributors +SPDX-License-Identifier: CC0-1.0 diff --git a/package.json.license b/package.json.license new file mode 100644 index 0000000..9d26246 --- /dev/null +++ b/package.json.license @@ -0,0 +1,2 @@ +SPDX-FileCopyrightText: The PFDL VS Code Extension Contributors +SPDX-License-Identifier: CC0-1.0 diff --git a/requirements.txt b/requirements.txt index 2b38773..8213b2b 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,3 +1,6 @@ +# SPDX-FileCopyrightText: The PFDL VS Code Extension Contributors +# SPDX-License-Identifier: CC0-1.0 + antlr4-python3-runtime==4.9.3 antlr-denter snakes diff --git a/server/package-lock.json.license b/server/package-lock.json.license new file mode 100644 index 0000000..9d26246 --- /dev/null +++ b/server/package-lock.json.license @@ -0,0 +1,2 @@ +SPDX-FileCopyrightText: The PFDL VS Code Extension Contributors +SPDX-License-Identifier: CC0-1.0 diff --git a/server/package.json.license b/server/package.json.license new file mode 100644 index 0000000..9d26246 --- /dev/null +++ b/server/package.json.license @@ -0,0 +1,2 @@ +SPDX-FileCopyrightText: The PFDL VS Code Extension Contributors +SPDX-License-Identifier: CC0-1.0