cucumber-attic / gherkin2

A fast Gherkin parser in Ragel (The parser behind Cucumber)
MIT License
382 stars 221 forks source link

Source files without license headers #348

Open puntogil opened 8 years ago

puntogil commented 8 years ago

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

aslakhellesoy commented 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?

puntogil commented 8 years ago

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

aslakhellesoy commented 8 years ago

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.

dkowis commented 8 years ago

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.