Open puntogil opened 8 years ago
There is a LICENCE
file (MIT) in the root of the git repo. Why do you need it in every file header?
While a LICENSE is the minimal legal requirement, the best case scenario is that each code file will include some sort of clear license attribution statement. As you can appreciate, code is often reused and copied into other projects. By including a license statement in the header of each source code file, it minimizes the risk of accidental license incompatibilities or copyright infringement. This can be as simple as:
# Copyright (c) 2009-2013 Mike Sassak, Gregory Hnatiuk, Aslak Hellesøy
# License: MIT
I hope this helps answer your question
As you can appreciate, code is often reused and copied into other projects.
I don't think the presence of a header will affect people's behaviour in this regard. The MIT license clearly states:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
The proposal to add a header to every file doesn't benefit the copyright holders. It may (or may not) benefit consumers of the code, but TBH that's their problem, not ours. If it was an easy change, I would have done it, but it's not.
The Cucumber project is big. There are dozens of repositories with hundreds of files in each repo. Ensuring there is a consistent header in every source file adds a lot of extra work: Manually checking every new contribution. Back and forth discussions when contributions are lacking the header. Automating the task is complicated too, because of the many different kind of build tools used.
For maven, there is a license enforcing tool to ensure that license headers are in every file.
I don't think it's necessary, however.
Hi The following source files are without license headers: ./java/src/main/java/gherkin/formatter/StepPrinter.java ./java/src/main/java/gherkin/formatter/FilterFormatter.java ./java/src/main/java/gherkin/formatter/Mappable.java ./java/src/main/java/gherkin/formatter/ansi/AnsiEscapes.java ./java/src/main/java/gherkin/TagExpression.java ./java/src/test/java/gherkin/I18nTest.java ./java/src/test/java/gherkin/I18nLexerTest.java ./java/src/test/java/gherkin/TagExpressionTest.java ./java/src/test/java/gherkin/formatter/MappableTest.java ./java/src/test/java/gherkin/formatter/PrettyFormatterTest.java ./java/src/test/java/gherkin/formatter/model/StepTest.java ./java/src/test/java/gherkin/formatter/model/CellResultTest.java ./java/src/test/java/gherkin/formatter/JSONFormatterTest.java ./java/src/test/java/gherkin/formatter/LocationMatcher.java
Please, confirm the licensing of code and/or content/s, and add license headers https://fedoraproject.org/wiki/Packaging:LicensingGuidelines?rd=Packaging/LicensingGuidelines#License_Clarification
Also in the https://github.com/cucumber/gherkin-java there is the same problem
Thanks in advance Regards