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

First pass at clarifying the license #1042

Merged
merged 4 commits into from
Mar 28, 2017
Merged

First pass at clarifying the license #1042

merged 4 commits into from
Mar 28, 2017

Conversation

skullydazed
Copy link
Member

@skullydazed skullydazed commented Jan 27, 2017

This is the start of addressing #1038

@skullydazed skullydazed changed the title First pass at clarifying the license (#1038) First pass at clarifying the license Jan 27, 2017
@skullydazed skullydazed mentioned this pull request Jan 27, 2017
@IBNobody
Copy link
Contributor

Go ahead and add any of mine.

@artyommironov
Copy link
Contributor

Please, add any of mine too.

@fredizzimo
Copy link
Contributor

I won't have time to update my code today, so if you have, then please go ahead. This applies to both new files and files that I have modified.

I would like to keep the MIT license for the serial_link and visualizer libraries. Especially the serial link library is something quite generic which could be used elsewhere as well. The current visualizer will be replaced, and then I will replace it with GPLv2. I'm not fully sure if the MIT license is valid though, as the code is relying on GPLv2 and GPLv3 code, but I think it is, and that someone could modify it to remove those dependencies.

I think the MIT license file should be added to the top level as well. It's currently in the quantum/serial_link folder. The visualizer license file has some extra (badly formatted) additions at the top.

BTW, should the year of the copyright be the current year, or when the file was created? Currently you have 2017.

@skullydazed
Copy link
Member Author

@fredizzimo your files were all in good shape already. :) I've moved serial_link/LICENSE to license_MIT.md for consistency.

You are also right that we should have more accurate dates in headers. Generally they should be a single year initially, and if a significant amount of work is done to the source in another year it should be modified to include the first and last year it was worked on, EG 2016-2017. I've updated these files to reflect that.

@h-youhei
Copy link
Contributor

Please go ahead.

@wez
Copy link
Contributor

wez commented Jan 29, 2017

I'm fine with you amending any of my files with a suitable notice.

I'd recommend automating this kind of thing to make this a bit harder to overlook and to make your life easier with this task:

  • Add a script that uses eg: regex match to find things that look like copyright notices at the start of source files
  • Have that script tell you when a copyright notice is missing from either a specific file, a list of files, or find all of the source files in places where this is important (could just be an invocation of find with appropriate parameters).
  • Add a flag to the script to auto-add a missing copyright notice (this is something that a contributor could run while they are preparing a pull request). The auto-add mode would either produce a list of contributors and dates from git log, or extract that information for an uncommitted file from the user's git configuration (you can run git config user.email, git config user.name to get that info) if the file hasn't been committed yet.
  • Add TravisCI or similar step that runs this checker and fails the build for a PR if files are added that don't include a suitable copyright message; the failure message could tell them to run the script with the auto-add flag and then re-submit their PR.

@belak
Copy link
Contributor

belak commented Feb 9, 2017

Is there any reason we can't just license the project under GPL and leave that in the root? Then we wouldn't need to worry about having a header on every single file...

@skullydazed
Copy link
Member Author

@belak We've discussed that option both here and on gitter and have decided to include a notice in each file. This makes the license situation explicit and is a practice recommended by the FSF when using the GPL.

@skullydazed
Copy link
Member Author

I've updated this against the current signoff list. Only 3 files in QMK's core are unlicensed at this point.

@skullydazed skullydazed merged commit 23839b8 into master Mar 28, 2017
@skullydazed skullydazed deleted the initial_gpl branch March 28, 2017 22:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants