## Lack of full license headers in each file There are no (full) license notices in the non-trivial source files The source files in FULL_SOFTWARE_NAME don't have notices saying you are the copyright holder and/or that they are released under LICENSE LICENSE_VERSION. I'm writing to ask you to please put a notice on each nontrivial source file. Selecting a license on a website that hosts the add-on (like addons.mozilla.org), will only show it there, the source files won't be modified. First, here's why license notices are needed. The purpose of a license notice is to state formally that a certain file may be used under the terms of a particular license. The LICENSE, like most free software licenses, applies to whatever material is released under that license. It does not say anything about which programs are released that way. Therefore, simply including a copy of the LICENSE with some code does not release the code under the terms of the LICENSE. To do that, you need a license notice, which says, more or less, "We the copyright holders release this code under the LICENSE." The source files should be accompanied by a copyright notice, which says who "we" copyright holders are. That takes the form "Copyright YEAR NAME". For the LICENSE, there are two other reasons for a license notice: to say which version of the LICENSE applies, and (for LICENSE LICENSE_VERSION), to say whether the LICENSE's option of GPL compatibility applies. It is enabled by default in LICENSE LICENSE_VERSION, but users should have an explicit statement of where things stand for any particular code. The license notice is where you specify this. Why should the license notice be on _each_ source file? Because doing it at the package level is error-prone. In the free software community, it is not unusual to copy a file from a free program into some other context. If the source file doesn't have its own license notice, then its licensing comes from the original context. In the other context, its licensing may not be clear. It may not be stated at all, or it could be stated wrong. For instance, what if the other program says, "This program is released under Apache 2.0", or "This program is released under GNU GPL, version 3 or any later version published by the Free Software Foundation." The result would be to misinform users about the file's licensing. People sometimes copy part of a file, too. If the file has a license notice, people know to preserve that notice when copying part of the file's code. Otherwise, the licensing will probably get lost. A different problem can happen if you copy code _into_ FULL_SOFTWARE_NAME from some other package. Your package-level license notice would say it is under LICENSE LICENSE_VERSION, but what if it actually carries some other license, such as Apache 2.0, or GPL Version 3 or later? Keeping a license notice in each file is the way to reliably show users what their rights are. Please don't let uncertainty creep in. You've made a decision about the license -- would you please announce it in a way that won't get forgotten? Other people can use your work with bad intentions, even if the mistake were honestly unintentional. That is why, unfortunately, we have to take lots of time with verifying the legality of everything. See https://www.gnu.org/licenses/gpl-howto.en.html for how to apply license notices. # Licenseutils * sudo apt-get install licenseutils * Licenseutils [0.0.8 can edit .js](https://savannah.nongnu.org/bugs/index.php?49441#comment24) files (see [patch](http://git.savannah.gnu.org/cgit/licenseutils.git/commit/?id=0d365160cc0fb6d0ed5eb26cf6e762278867e653)). If you use a earlier version you need to temporary rename your .js files to .cpp (Javascript comments are the same as c++) until JS have been implemented (see [fix](https://savannah.nongnu.org/bugs/?49441)) and then rename them back to .js. * Run this but with your name/copyright year/license: licensing notice -c 'Yoyodyne,\ Inc.\ 2001' -l gpl -s c -n *.cpp # References These issues are compatible with the policy listed in [Free Software Directory, Requirements](https://directory.fsf.org/wiki?title=Free_Software_Directory:Requirements).