Skip to content
Permalink
Browse files

Merge pull request #90 from EMResearch/license-clarifications

copyright clarifications
  • Loading branch information...
jgaleotti committed Sep 18, 2019
2 parents ad3ae0f + 5274d9c commit dde5591ad297b1b6126bb0715deb0f6e2a5c2e62
Showing with 41 additions and 1 deletion.
  1. +3 −1 README.md
  2. +19 −0 docs/for_developers.md
  3. +19 −0 docs/reused_code.md
@@ -267,7 +267,9 @@ e.g., details on the Many Independent Objective (MIO) algorithm.

### License
_EvoMaster_'s source code is released under the LGPL (v3) license.

For a list of the used third-party libraries, you can directly see the root [pom.xml](./pom.xml) file.
For a list of code directly imported (and then possibly modified/updated) from
other open-source projects, see [here](./docs/reused_code.md).


### ![](https://www.yourkit.com/images/yklogo.png)
@@ -236,6 +236,25 @@ in submodules can lead to duplicated `<version>` declarations with different ver
All version numbers should be easily audited, and so should be in a single file (i.e., the
*root* `pom.xml`).
### THIRD-PARTY LIBRARIES
Adding a new dependency is fine, but few things to consider:
* __NEVER__ ever add a GPL licensed library, unless it is under the so called _classpath exception_.
Note that LGPL libraries are fine.
* When adding a new library, check who is maintaining it, and when was its last update.
No longer maintained libraries should be avoided.
### THIRD-PARTY CODE
As a rule of thumb, to avoid possible issues with copyrights and license compliance,
we should not include code directly from third-party sources.
However, when that happens, it __MUST__ be made clear in the files themselves (e.g.,
with comments in their top, with URLs of the original sources).
Furthermore, this information should also be added to the [reused_code.md](./reused_code.md) file.
### Trello
@@ -0,0 +1,19 @@
# Re-used Code

In some cases, _EvoMaster_ imported (and then modified) code from other open-source projects.
When this happened, it is explicitly stated in the files themselves.
Still, to give a general overview (and comply to the different licence requirements), they
are listed here:

* _ComputeClassWriter.java_: from [ASM](https://asm.ow2.io/) library. Released under custom INRIA license.

* _RegexEcma262.g4_: from [Antlr examples](https://github.com/antlr/grammars-v4/blob/master/ecmascript/ECMAScript.g4).
Released under MIT license.

* _CustomSummaryGeneratingListener.java_ and _CustomMutableTestExecutionSummary.java_:
from JUnit 5.
Released under Eclipse Public License.
These classes will be removed when this [PR](https://github.com/junit-team/junit5/issues/1947)
will be part of the next JUnit release.


0 comments on commit dde5591

Please sign in to comment.
You can’t perform that action at this time.