[PSA] Some changes with Subversion & Licensing

[PSA] Some changes with Subversion & Licensing

Postby MTres19 » 16 Jul 2017, 04:11

Note: this only applies to team members who have read+write SVN access on SourceForge. If you make add-on karts or tracks or arenas, however, please read this as it may be relevant in the future.

With Auria's permission, I added today two repository hook scripts on SourceForge. This is due to the relatively recent increase in assets lacking any license information or copyright notice. Most licenses, (e.g. the Creative Commons licenses except the CC0) require attribution. Because these licenses are legally binding, it would be/is a violation of international copyright law to distribute assets under these licenses without proper credit. I really don't want to see STK sued into oblivion over a single texture file or something like that.

The first hook script parses one or more files in the Machine-readable debian/copyright file format, then checks to make sure that any files you add have been documented. Because it is a pre-commit hook, it can block your SVN transaction from proceeding if you've failed to document anything. This only checks files in the stk-assets repository. All other files (media repo included) are exempt, as are the license files themselves. Auria was against a centralized copyright file, so it's recommended to put a file called "licenses.txt" (name the file exactly as written—plural and all lowercase) in each folder where there are files you're adding. (More details in the "Technical Details" section below)

The second hook script runs after the commit has been saved on the SourceForge servers and is simply a relay which allows the pre-commit hook to remind you to update copyright notices without actually blocking the commit.

To authors of add-on karts, arenas and tracks:
The parser is written in PHP, the same language as the add-on server. So there's a chance (though I haven't talked with its authors about it) that this might be integrated into the add-on server at some point. It would probably be a good idea to start using the Machine-readable debian/copyright file format when you make licenses.txt files, if only to make it easier to read in case of a dispute. There is also more information on the wiki.

Technical Details (please read)
Currently, I've compiled a large list of assets in licenses.txt inside the main stk-assets folder. The license checker will fallback to that file when it can't find a licenses.txt file in the same folder as the file(s) you're adding. For clarity, here's an example:

If you add the file stk-assets/library/stklib_animalCow_a/main.b3d, the checker will first check for stk-assets/library/stklib_animalCow_a/licenses.txt. If it can't find that, it will fall back to stk-assets/licenses.txt. File paths in each license file are relative to the location of the licenses.txt file itself.

If you do have a file named licenses.txt somewhere, and it's not in the Debian Format (linked above), make sure you convert it, or the parser will fail and block the commit.

Are there ways to trick the system?
Of course, but the main intent is for these scripts to remind you about licensing when you accidentally commit something without documentation. Surely, beyond that we should be trusting enough of our own team members.
User avatar
MTres19
 
Posts: 155
Joined: 17 Aug 2015, 20:15

Re: [PSA] Some changes with Subversion & Licensing

Postby samuncle » 16 Jul 2017, 23:00

Hi
Thanks for your efforts that's extremely useful to identify the files that needs to be properly licensed
I will make sure my own creations are respecting the new format

Sam
Image
User avatar
samuncle
STK Moderator
 
Posts: 736
Joined: 16 Mar 2010, 21:28

Re: [PSA] Some changes with Subversion & Licensing

Postby MTres19 » 17 Jul 2017, 02:34

Note that this only applies to files that you add or change. I know that documenting files that are already in place will be an ongoing task, but I'm willing to help with that as time allows. FYI the files that I've researched are documented in stk-assets/licenses.txt. They're sorted by section (i.e. library, sfx, etc.), but I do want to split these into individual files soon. Information that I couldn't figure out is filled in with question marks.
User avatar
MTres19
 
Posts: 155
Joined: 17 Aug 2015, 20:15

Re: [PSA] Some changes with Subversion & Licensing

Postby samuncle » 17 Jul 2017, 18:57

I tried to commit the material.xml in stk-assets/textures, however it didn't let me commit (there was an error even after adding:
* material.xml
Texture configuration file, by Jean-Manuel Clémençon (Samuncle ) and Marianne Gagnon (Auria)

to the license.txt file.

Also the script shouldn't check the license of the license.txt file (recursive check)
Image
User avatar
samuncle
STK Moderator
 
Posts: 736
Joined: 16 Mar 2010, 21:28

Re: [PSA] Some changes with Subversion & Licensing

Postby MTres19 » 18 Jul 2017, 04:12

Sorry, tiny nitpick: it's licenses.txt not license.txt (plural, not singular). also needs to be in Debian format---check https://supertuxkart.net/Licensing#Documenting_Licenses for an example. I can probably be on IRC tomorrow (today for you in Switzerland) around 22:30 Zürich time but I know that's not a great time of day. :(
User avatar
MTres19
 
Posts: 155
Joined: 17 Aug 2015, 20:15

Who is online

Users browsing this forum: Arthur and 1 guest