Skip to content

chore: update license#278

Open
dido18 wants to merge 12 commits intomainfrom
update-license
Open

chore: update license#278
dido18 wants to merge 12 commits intomainfrom
update-license

Conversation

@dido18
Copy link
Contributor

@dido18 dido18 commented Feb 26, 2026

Motivation

Update the license in the go file

Change description

The new license header has been added to only files with a missing license

  • task license:check to check if any files have a missing header (for CI)
  • task license:update to update the files' headers with the license
  • check.yaml GH action to check the license in header

Additional Notes

Reviewer checklist

  • PR addresses a single concern.
  • PR title and description are properly filled.
  • Changes will be merged in main.
  • Changes are covered by tests.
  • Logging is meaningful in case of troubleshooting.

// This software is released under the GNU General Public License version 3,
// which covers the main part of arduino-app-cli.
// The terms of this license can be found at:
// https://www.gnu.org/licenses/gpl-3.0.en.html
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it is important that we provide the "or later" clause for the licensing:

https://www.gnu.org/licenses/gpl-faq.en.html#VersionThreeOrLater

https://www.gnu.org/licenses/gpl-faq.en.html#gpl-compat-matrix

Unfortunately there isn't an "or later" variant of the GPL license document (only the accommodation for such a clause), so it is necessary to specify that the clause is being offered separately in the license headers:

https://www.gnu.org/licenses/gpl-3.0.en.html#howto

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@per1234 as of now I guess we only used v3.0. what's the main reason to ask "or later" ?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is explained at the links I provided above.

If you don't offer the "or later" clause, it makes the project incompatible with dependents licensed under a newer version of the GPL. We already ran into such incompatibility with Arduino projects that were licensed under GPL 2.0, without the "or later" clause. Because the maintainers of those projects didn't take the simple measure of adding this clause to the license headers of those projects, we were forced to undertake a significant effort to determine how they could be used as dependencies of our GPL 3.0 licensed projects.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants