Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

use SPDX license specifier for plugins #12429

Closed
Findus23 opened this issue Jan 11, 2018 · 8 comments
Closed

use SPDX license specifier for plugins #12429

Findus23 opened this issue Jan 11, 2018 · 8 comments
Labels
c: Platform For Matomo platform changes that aren't impacting any of our APIs but improve the core itself.
Milestone

Comments

@Findus23
Copy link
Member

While parsing the plugin API I just noticed that there is no consistent way for plugin authors to specify the license of their plugin:

BSD & GPL v3+
GPL
GPL-3.0+
GPL 3.0 / fair use
GPLv3
GPL v3
GPL v3+
GPLv3 or later
InnoCraft EULA
MIT

It may be useful to require SPDX specifiers so it is consistent in the future:
https://spdx.org/licenses/

@Findus23 Findus23 added c: Platform For Matomo platform changes that aren't impacting any of our APIs but improve the core itself. Lower priority labels Jan 11, 2018
@tsteur
Copy link
Member

tsteur commented Jan 11, 2018

This should be quite easy to do as there is a JSON schema that validates the plugin.json anyway. We basically only need a comma separated list more or less. The only annoying thing be that people might have problems to release a plugin update when they are not using one of those values yet but they would receive an email in this case.

Not sure which ones we would need to whitelist.

@Findus23
Copy link
Member Author

If there is already a validation I guess there are 2 solutions:
Quick:

@tsteur
Copy link
Member

tsteur commented Jan 11, 2018

👍 awesome there is such a json file. The only challenge be to find out all GPL compatible licenses.
From https://developer.matomo.org/guides/distributing-your-plugin:

The license must be compatible with the GPLv3 or later (for free plugins)

@tsteur
Copy link
Member

tsteur commented Jan 11, 2018

We could also start with a small list based on what licenses are used now, then on request add more licenses (we can mention this in the email when validation fails)

@Findus23
Copy link
Member Author

Findus23 commented Jan 11, 2018

I guess that's the simplest solution. The list above should contain all currently used licenses.

So this converts to

["GPL-3.0+","GPL-3.0", "BSD AND GPL-3.0+", "InnoCraft EULA", "GPL-2.0-only", "GPL-2.0+", "MIT"]

fair use isn't a license but we could add CC0-1.0 and/or WTFPL for people who consider the MIT license as to strict. (they are both GPL3 compatible according to https://www.gnu.org/licenses/license-list.de.html)

@tsteur
Copy link
Member

tsteur commented Jan 11, 2018

"BSD & GPL v3+","1"
"GPL","1"
"GPL 3.0","1"
"GPL 3.0 / fair use","1"
"GPL v3","7"
"GPL v3+","63"
"GPL-3.0+","11"
"GPLv3","4"
"GPLv3 or later","1"
"GPLv3+","1"
"InnoCraft EULA","17"
"MIT","2"

quickly extracted some stats. I'll allow GPL v3+ for now as well as Matomo uses it by default. Ideally we would change this in core to no longer use it as default.

@tsteur
Copy link
Member

tsteur commented Jan 11, 2018

FYI: Issued https://github.com/matomo-org/developer-documentation/pull/217/files

while "GPL v3+" is supported, I do not mention it there so ideally users directly use a different one.

@tsteur
Copy link
Member

tsteur commented Jan 12, 2018

done

@tsteur tsteur closed this as completed Jan 12, 2018
@tsteur tsteur added this to the 3.3.0 milestone Jan 12, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c: Platform For Matomo platform changes that aren't impacting any of our APIs but improve the core itself.
Projects
None yet
Development

No branches or pull requests

2 participants