There are two interesting problems that i’m facing with open-sourcing Agatha, and i’m not quite sure how to deal with it correctly. The first is how to apply the license of my choice to the actual code. I’m using Apache License 2.0, and this is their recommendation (emphasis mine):
To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
This sort of implies that i’m required to put this boilerplate notice in each file, which is just tedious and the odds are pretty high that you’re going to forget to put this in one (or more) of the files that will be added later on.
Instead, i put a LICENSE.txt file in the root folder of the project with the following content:
Copyright 2009 Agatha RRSL Project, original authors and contributors
Licensed under the Apache License, Version 2.0 (the "License");
you may not use the files in this directory structure except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Honestly, i have no idea if i’m allowed to do that. I can’t think of a reason why i shouldn’t be able to do this since it certainly sounds reasonable to do so, but then again i’m not a lawyer and i wouldn’t be surprised if there are reasons for not doing so. If anyone can provide advice on this, it would be much appreciated ![]()
Another thing that left me wondering is the actual copyright notice. In the 1.0 release, i unfortunately used the following copyright statement for both the LICENSE.txt as well as the copyright information on the assembly level:
Copyright 2009 Davy Brion
Now, i did write most of the code, i did start the project and i do own the project. But i did not write all of the code as there have been some contributions from other people. I certainly want to give credit where credit is due, so i’ve changed that copyright notice (both in the LICENSE.txt file and the assembly copyright notices) to:
Copyright 2009 Agatha RRSL Project, original authors and contributors
I then added a CONTRIBUTORS.txt file at the same location of the LICENSE.txt file which contains the names of the contributors and the parts they worked on. I think that’s all i need to do to to be fair and correct, but again, i’m not entirely sure on this.
If anyone can provide feedback on these issues, please do so ![]()