Skip to content

rationalize license file and license headers #2813

Description

@jurgenvinju

Is your feature request related to a problem? Please describe.

Describe the solution you'd like

  • adhere to https://reuse.software/spec-3.3/
  • shorter headers using SPDX references
  • let LICENSE file lines wrap automatically instead of with hard newlines
  • complete LICENSE.md file with SPDX reference
  • clear copyright attribution to CWI and Swat.engineering
    • cover the time before Swat.engineering existed
    • cover the time before CWI was called NWO-I.
  • single license for all Java files and all Rascal files
  • integration with quick-fix in LSP for missing Rascal headers (the file should be called LICENSE or LICENSE.md)
  • commit that rewrites all headers attributed evenly to @PaulKlint @tvdstorm @DavyLandman and @jurgenvinju
  • use of the copyright sign unicode code point instead of (c)
  • header folded by default in Rascal editor
  • also apply similar license but different copyrights to upstream projects under our control:
    • vallang
    • capsule
    • java-watch
  • also apply similar licenses but different copyright to downstream projects under our control:
    • flybytes
    • salix-core
    • salix-contrib
    • php-analysis
    • clair
    • java-air
    • python-air
    • typepal
    • rascal-lsp
    • rascal-language-servers
    • rascal-lucene
    • drambiguity
    • lua-air
    • cobol-air
    • ada-air
  • unanimous agreement (self-sign pls) of usethesource board members

This is the proposed header (and LICENSE.md file).

  • it makes clear what the different "eras" are,
  • it allows for all headers to be the same (which is required by license header checking maven plugins).
  • it allows for commercial and non-commercial usage
  • but the names of CWI and Swat.engieering must always be mentioned
  • and the license can not be changed by the users,
  • and we reject all liabilities or fitness for use claims.

This could be the new LICENSE.md file:

/*
Copyright © 2019-2026 NWO-I Centrum Wiskunde & Informatica and Swat.engineering BV (all rights reserved)
Copyright © 2017-2019 Centrum Wiskunde & Informatica and Swat.engineering BV (all rights reserved)
Copyright © 2008-2017 Centrum Wiskunde & Informatica (all rights reserved)

SPDX-License-Identifier{BSD-2-Clause} -- https://opensource.org/licenses/BSD-2-Clause

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/

This could be the new Rascal module header:

@copyright{
SPDX-FileCopyrightText: © 2019-2026 NWO-I Centrum Wiskunde & Informatica and Swat.engineering BV (all rights reserved)
SPDX-FileCopyrightText: © 2017-2019 Centrum Wiskunde & Informatica and Swat.engineering BV (all rights reserved)
SPDX-FileCopyrightText: © 2008-2017 Centrum Wiskunde & Informatica (all rights reserved)
SPDX-License-Identifier: BSD-2-Clause
}
module X

This would be the new Java file header:

/*
SPDX-FileCopyrightText: 2019-2026 NWO-I Centrum Wiskunde & Informatica and Swat.engineering BV (all rights reserved)
SPDX-FileCopyrightText: 2017-2019 Centrum Wiskunde & Informatica and Swat.engineering BV (all rights reserved)
SPDX-FileCopyrightText: 2008-2017 Centrum Wiskunde & Informatica (all rights reserved)
SPDX-License-Identifier: BSD-2-Clause
*/
package X

Alternatives

Alternative licenses which could be used:

Metadata

Metadata

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions