diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..4e1f434 --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +/target/ +/.classpath +/*.project +/.settings +/.idea diff --git a/.settings/.gitignore b/.settings/.gitignore new file mode 100644 index 0000000..b012ade --- /dev/null +++ b/.settings/.gitignore @@ -0,0 +1 @@ +/org.eclipse.core.resources.prefs diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..3f9f957 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,31 @@ +# Changelog for Maven-Parent + +## [v1.2.0] - 2024-04-03 + +### Bug +* update maven-javadoc-plugin to from 2.6.8 to 3.6.3. #25877 +* update groovy-all plugin dependency from 3.0.0-beta to 3.0.13 #25872 + +### Features +* new maven profiles for managing jdk7 (gcore-legacy) and jdk17 build (see #24259) +* add new group repositories for managing jdk17 dependencies resolution +* update groovy-maven and javadoc plugin configuration #25108 +* add classpath external folder. see #25106 + +### Bug +* removed set-local-classpath profile. see #26841 + +## [v1.1.0] - 2022-10-27 + +### Features +* force java 1.8 on jdk11 activation profiles +* update maven-compiler-plugin to 3.10.1 +* New build profiles to support CI/CD +* add new execution phase to buildnumber-maven-plugin +* Enforcement for: + * Java 8 (target and source) + * OpenJDK as target Java VM. + * Maven 3.3.9+ + +## [v1.0.0] - 2017-12-20 + diff --git a/LICENSE.md b/LICENSE.md new file mode 100644 index 0000000..3af0507 --- /dev/null +++ b/LICENSE.md @@ -0,0 +1,312 @@ +# European Union Public Licence V. 1.1 + + +EUPL © the European Community 2007 + + +This European Union Public Licence (the “EUPL”) applies to the Work or Software +(as defined below) which is provided under the terms of this Licence. Any use of +the Work, other than as authorised under this Licence is prohibited (to the +extent such use is covered by a right of the copyright holder of the Work). + +The Original Work is provided under the terms of this Licence when the Licensor +(as defined below) has placed the following notice immediately following the +copyright notice for the Original Work: + +Licensed under the EUPL V.1.1 + +or has expressed by any other mean his willingness to license under the EUPL. + + + +## 1. Definitions + +In this Licence, the following terms have the following meaning: + +- The Licence: this Licence. + +- The Original Work or the Software: the software distributed and/or + communicated by the Licensor under this Licence, available as Source Code and + also as Executable Code as the case may be. + +- Derivative Works: the works or software that could be created by the Licensee, + based upon the Original Work or modifications thereof. This Licence does not + define the extent of modification or dependence on the Original Work required + in order to classify a work as a Derivative Work; this extent is determined by + copyright law applicable in the country mentioned in Article 15. + +- The Work: the Original Work and/or its Derivative Works. + +- The Source Code: the human-readable form of the Work which is the most + convenient for people to study and modify. + +- The Executable Code: any code which has generally been compiled and which is + meant to be interpreted by a computer as a program. + +- The Licensor: the natural or legal person that distributes and/or communicates + the Work under the Licence. + +- Contributor(s): any natural or legal person who modifies the Work under the + Licence, or otherwise contributes to the creation of a Derivative Work. + +- The Licensee or “You”: any natural or legal person who makes any usage of the + Software under the terms of the Licence. + +- Distribution and/or Communication: any act of selling, giving, lending, + renting, distributing, communicating, transmitting, or otherwise making + available, on-line or off-line, copies of the Work or providing access to its + essential functionalities at the disposal of any other natural or legal + person. + + + +## 2. Scope of the rights granted by the Licence + +The Licensor hereby grants You a world-wide, royalty-free, non-exclusive, +sub-licensable licence to do the following, for the duration of copyright vested +in the Original Work: + +- use the Work in any circumstance and for all usage, reproduce the Work, modify +- the Original Work, and make Derivative Works based upon the Work, communicate +- to the public, including the right to make available or display the Work or +- copies thereof to the public and perform publicly, as the case may be, the +- Work, distribute the Work or copies thereof, lend and rent the Work or copies +- thereof, sub-license rights in the Work or copies thereof. + +Those rights can be exercised on any media, supports and formats, whether now +known or later invented, as far as the applicable law permits so. + +In the countries where moral rights apply, the Licensor waives his right to +exercise his moral right to the extent allowed by law in order to make effective +the licence of the economic rights here above listed. + +The Licensor grants to the Licensee royalty-free, non exclusive usage rights to +any patents held by the Licensor, to the extent necessary to make use of the +rights granted on the Work under this Licence. + + + +## 3. Communication of the Source Code + +The Licensor may provide the Work either in its Source Code form, or as +Executable Code. If the Work is provided as Executable Code, the Licensor +provides in addition a machine-readable copy of the Source Code of the Work +along with each copy of the Work that the Licensor distributes or indicates, in +a notice following the copyright notice attached to the Work, a repository where +the Source Code is easily and freely accessible for as long as the Licensor +continues to distribute and/or communicate the Work. + + + +## 4. Limitations on copyright + +Nothing in this Licence is intended to deprive the Licensee of the benefits from +any exception or limitation to the exclusive rights of the rights owners in the +Original Work or Software, of the exhaustion of those rights or of other +applicable limitations thereto. + + + +## 5. Obligations of the Licensee + +The grant of the rights mentioned above is subject to some restrictions and +obligations imposed on the Licensee. Those obligations are the following: + +Attribution right: the Licensee shall keep intact all copyright, patent or +trademarks notices and all notices that refer to the Licence and to the +disclaimer of warranties. The Licensee must include a copy of such notices and a +copy of the Licence with every copy of the Work he/she distributes and/or +communicates. The Licensee must cause any Derivative Work to carry prominent +notices stating that the Work has been modified and the date of modification. + +Copyleft clause: If the Licensee distributes and/or communicates copies of the +Original Works or Derivative Works based upon the Original Work, this +Distribution and/or Communication will be done under the terms of this Licence +or of a later version of this Licence unless the Original Work is expressly +distributed only under this version of the Licence. The Licensee (becoming +Licensor) cannot offer or impose any additional terms or conditions on the Work +or Derivative Work that alter or restrict the terms of the Licence. + +Compatibility clause: If the Licensee Distributes and/or Communicates Derivative +Works or copies thereof based upon both the Original Work and another work +licensed under a Compatible Licence, this Distribution and/or Communication can +be done under the terms of this Compatible Licence. For the sake of this clause, +“Compatible Licence” refers to the licences listed in the appendix attached to +this Licence. Should the Licensee’s obligations under the Compatible Licence +conflict with his/her obligations under this Licence, the obligations of the +Compatible Licence shall prevail. + +Provision of Source Code: When distributing and/or communicating copies of the +Work, the Licensee will provide a machine-readable copy of the Source Code or +indicate a repository where this Source will be easily and freely available for +as long as the Licensee continues to distribute and/or communicate the Work. + +Legal Protection: This Licence does not grant permission to use the trade names, +trademarks, service marks, or names of the Licensor, except as required for +reasonable and customary use in describing the origin of the Work and +reproducing the content of the copyright notice. + + + +## 6. Chain of Authorship + +The original Licensor warrants that the copyright in the Original Work granted +hereunder is owned by him/her or licensed to him/her and that he/she has the +power and authority to grant the Licence. + +Each Contributor warrants that the copyright in the modifications he/she brings +to the Work are owned by him/her or licensed to him/her and that he/she has the +power and authority to grant the Licence. + +Each time You accept the Licence, the original Licensor and subsequent +Contributors grant You a licence to their contributions to the Work, under the +terms of this Licence. + + + +## 7. Disclaimer of Warranty + +The Work is a work in progress, which is continuously improved by numerous +contributors. It is not a finished work and may therefore contain defects or +“bugs” inherent to this type of software development. + +For the above reason, the Work is provided under the Licence on an “as is” basis +and without warranties of any kind concerning the Work, including without +limitation merchantability, fitness for a particular purpose, absence of defects +or errors, accuracy, non-infringement of intellectual property rights other than +copyright as stated in Article 6 of this Licence. + +This disclaimer of warranty is an essential part of the Licence and a condition +for the grant of any rights to the Work. + + + +## 8. Disclaimer of Liability + +Except in the cases of wilful misconduct or damages directly caused to natural +persons, the Licensor will in no event be liable for any direct or indirect, +material or moral, damages of any kind, arising out of the Licence or of the use +of the Work, including without limitation, damages for loss of goodwill, work +stoppage, computer failure or malfunction, loss of data or any commercial +damage, even if the Licensor has been advised of the possibility of such +damage. However, the Licensor will be liable under statutory product liability +laws as far such laws apply to the Work. + + + +## 9. Additional agreements + +While distributing the Original Work or Derivative Works, You may choose to +conclude an additional agreement to offer, and charge a fee for, acceptance of +support, warranty, indemnity, or other liability obligations and/or services +consistent with this Licence. However, in accepting such obligations, You may +act only on your own behalf and on your sole responsibility, not on behalf of +the original Licensor or any other Contributor, and only if You agree to +indemnify, defend, and hold each Contributor harmless for any liability incurred +by, or claims asserted against such Contributor by the fact You have accepted +any such warranty or additional liability. + + + +## 10. Acceptance of the Licence + +The provisions of this Licence can be accepted by clicking on an icon “I agree” +placed under the bottom of a window displaying the text of this Licence or by +affirming consent in any other similar way, in accordance with the rules of +applicable law. Clicking on that icon indicates your clear and irrevocable +acceptance of this Licence and all of its terms and conditions. + +Similarly, you irrevocably accept this Licence and all of its terms and +conditions by exercising any rights granted to You by Article 2 of this Licence, +such as the use of the Work, the creation by You of a Derivative Work or the +Distribution and/or Communication by You of the Work or copies thereof. + + + +## 11. Information to the public + +In case of any Distribution and/or Communication of the Work by means of +electronic communication by You (for example, by offering to download the Work +from a remote location) the distribution channel or media (for example, a +website) must at least provide to the public the information requested by the +applicable law regarding the Licensor, the Licence and the way it may be +accessible, concluded, stored and reproduced by the Licensee. + + + +## 12. Termination of the Licence + +The Licence and the rights granted hereunder will terminate automatically upon +any breach by the Licensee of the terms of the Licence. + +Such a termination will not terminate the licences of any person who has +received the Work from the Licensee under the Licence, provided such persons +remain in full compliance with the Licence. + + + +## 13. Miscellaneous + +Without prejudice of Article 9 above, the Licence represents the complete +agreement between the Parties as to the Work licensed hereunder. + +If any provision of the Licence is invalid or unenforceable under applicable +law, this will not affect the validity or enforceability of the Licence as a +whole. Such provision will be construed and/or reformed so as necessary to make +it valid and enforceable. + +The European Commission may publish other linguistic versions and/or new +versions of this Licence, so far this is required and reasonable, without +reducing the scope of the rights granted by the Licence. New versions of the +Licence will be published with a unique version number. + +All linguistic versions of this Licence, approved by the European Commission, +have identical value. Parties can take advantage of the linguistic version of +their choice. + + + +## 14. Jurisdiction + +Any litigation resulting from the interpretation of this License, arising +between the European Commission, as a Licensor, and any Licensee, will be +subject to the jurisdiction of the Court of Justice of the European Communities, +as laid down in article 238 of the Treaty establishing the European Community. + +Any litigation arising between Parties, other than the European Commission, and +resulting from the interpretation of this License, will be subject to the +exclusive jurisdiction of the competent court where the Licensor resides or +conducts its primary business. + + + +## 15. Applicable Law + +This Licence shall be governed by the law of the European Union country where +the Licensor resides or has his registered office. + +This licence shall be governed by the Belgian law if: + +- a litigation arises between the European Commission, as a Licensor, and any +- Licensee; the Licensor, other than the European Commission, has no residence +- or registered office inside a European Union country. + + + +## Appendix + + + +“Compatible Licences” according to article 5 EUPL are: + + +- GNU General Public License (GNU GPL) v. 2 + +- Open Software License (OSL) v. 2.1, v. 3.0 + +- Common Public License v. 1.0 + +- Eclipse Public License v. 1.0 + +- Cecill v. 2.0 + diff --git a/README.md b/README.md index ef8486a..f265f89 100644 --- a/README.md +++ b/README.md @@ -3,25 +3,49 @@ A parent pom for all the gCube artifacts. # Enforcements -* Java 8 (target and source) +* Java 8 (target and source) unless otherwise specified inside the pom * OpenJDK as target Java VM. -* Maven 3.0.0+ +* Maven 3.3.9+ +* README.md, CHANGELOG.md and LICENSE.md are present in the baseDir of each Maven module +* CHANGELOG.md must declare a tag [v+Pom version] (e.g. [v1.0.0]) # Build Profiles -## gcube-developer +The build profiles are separated in three main branches: developer, staging, releases. +Each branch has a set of profile based on the idk. +The developer branch contains the profiles related to the snapshot build: + +* gcore-legacy jdk7 +* gcube-legacy - jdk8 +* gcube-official -jdk11 +* gcube-experimental - jdk17 + +In the same way are organised the other branch profiles related to the staging (integration) phase and to the release phase. + +In addition there are a set of common profiles useful in order to avoid replication of plugins and rules definitions: + +* common-snapshot +* common-release +* dry-run +* disable-java8-doclint +* set-local-classpath +* generate-distribution-packages + +Below the descriptions of the most used profiles by gCube components: + +## common-snapshot +This profile defines the common plugin used by all the snapshot profiles + +## common-releases +This profile defines the common plugin used by all the staging and release profiles + +## gcube-official * Dependencies resolved against local, gcube-snapshots and gcube-releases * Snapshot artifacts installed to local * Snapshot artifacts deployed to gcube-snapshots * Deployments of releases artifacts are not permitted -## jenkins-snapshots -* Dependencies resolved against local-snapshots, gcube-snapshots and gcube-releases -* Snapshot artifacts installed to local-snapshots -* Snapshot artifacts deployed to gcube-snapshots -* Deployments of release artifacts are not permitted - -## jenkins-staging +## jenkins-staging-official * Dependencies resolved against local-staging, gcube-jenkins-staging, gcube-staging and gcube-releases * Release/snapshot artifacts installed to local-staging * Release/snapshot artifacts deployed to gcube-jenkins-staging @@ -39,3 +63,6 @@ This profile disables the deployment of the artifacts. This profile sets an additional parameter for javadoc generation to disables the doclint. It avoids the build fails if formal/syntax errors are found in javadoc comments. +## set-local-classpath +This profile set a generic folder that will be added to the classpath + diff --git a/pom.xml b/pom.xml index 7713a4f..631fcc5 100644 --- a/pom.xml +++ b/pom.xml @@ -1,608 +1,1103 @@ + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - 4.0.0 + 4.0.0 - org.gcube.tools - maven-parent - 1.1.0 - pom + org.gcube.tools + maven-parent + 1.2.0 + pom - - scm:git:https://code-repo.d4science.org/gCubeSystem/maven-parent.git - scm:git:https://code-repo.d4science.org/gCubeSystem/maven-parent.git - https://code-repo.d4science.org/gCubeSystem/maven-parent - HEAD - + + scm:git:https://code-repo.d4science.org/gCubeSystem/maven-parent.git + scm:git:https://code-repo.d4science.org/gCubeSystem/maven-parent.git + https://code-repo.d4science.org/gCubeSystem/maven-parent + HEAD + - - - - gcube-snapshots - gCube Snapshots - http://maven.research-infrastructures.eu/nexus/content/repositories/gcube-snapshots - - false - - - true - - - - gcube-releases - gCube Releases - http://maven.research-infrastructures.eu/nexus/content/repositories/gcube-releases - - false - - - true - - + + + + gcube-snapshots + gCube Snapshots + https://nexus.d4science.org/nexus/content/repositories/gcube-snapshots + + false + + + true + + + + gcube-releases + gCube Releases + https://nexus.d4science.org/nexus/content/repositories/gcube-releases + + false + + + true + + - - gcube-staging-jenkins - gCube Jenkins Staging - http://maven.research-infrastructures.eu/nexus/content/repositories/gcube-staging-jenkins - - false - - - true - - + + gcube-staging-jenkins + gCube Jenkins Staging + https://nexus.d4science.org/nexus/content/repositories/gcube-staging-jenkins + + false + + + true + + - - gcube-staging - gCube Staging - http://maven.research-infrastructures.eu/nexus/content/repositories/gcube-staging/ - - false - - - true - - + + gcube-externals + gCube Externals + https://nexus.d4science.org/nexus/content/repositories/gcube-externals + + false + + + true + + + - - gcube-externals - gCube Externals - http://maven.research-infrastructures.eu/nexus/content/repositories/gcube-externals - - false - - - true - - - - - - - + + disable-java8-doclint + + [1.8,) + + + -Xdoclint:none + + + + + + generate-distribution-packages + + + generateDistribution + true + + + + + + org.apache.maven.plugins + maven-assembly-plugin + ${plugin.assembly.version} + + + make-source-package + install + + + + + + - disable-java8-doclint + common-snapshot - [1.8,) + + !Release + + + + + org.codehaus.mojo + build-helper-maven-plugin + ${plugin.build.helper.version} + + + + build-helper-regex-is-snapshot-used + validate + + regex-property + + + skip.when.is.release.used + ${project.version} + ^((?!-SNAPSHOT).)*$ + true + false + + + + + + org.apache.maven.plugins + maven-deploy-plugin + ${plugin.deploy.version} + + ${skip.when.is.release.used} + + + + + + + common-release + + + Release + + + + + + org.codehaus.mojo + build-helper-maven-plugin + ${plugin.build.helper.version} + + + + build-helper-regex-is-snapshot-used + validate + + regex-property + + + skip.when.is.snapshot.used + ${project.version} + .*-SNAPSHOT$ + true + false + + + + + fail-helper-regex-is-snapshot-used + validate + + regex-property + + + fail.when.is.snapshot.used + ${project.version} + ^((?!.*-SNAPSHOT).)*$ + true + + + + + + io.github.olivierlemasle.maven + plaintext-maven-plugin + ${plugin.plaintext.version} + + ${env.MAVEN_CONFIG_FOLDER} + + + build_commits.csv + true + + + ${project.groupId},${project.artifactId},${project.version},${project.scm.url},${buildNumber},${repository},${project.build.finalName},${project.packaging} + + + + + + + + generate-file + package + + write + + + + + + + + + gcube-official + + false + [9,17) + + !Release + + - -Xdoclint:none + 1.8 + ${java_version} + ${java_version} + + + + + gcube-snapshots + gCube Snapshots + ${repository.snapshots.url} + + true + + + false + + + + gcube-releases + gCube Releases + ${repository.releases.url} + + false + + + true + + + + gcube-externals + gCube Externals + ${repository.externals.readonly} + + false + + + true + + + + + + + + gcube-snapshots + gCube Snapshots + ${repository.snapshots.url} + + + + + + gcube-experimental + + false + [17,) + + !Release + + + + 1.8 + ${java_version} + ${java_version} + + + + + gcube-snapshots + gCube Snapshots + ${repository.snapshots.url} + + true + + + false + + + + gcube-releases-all + gCube Releases All + ${repository.releases.all.url} + + false + + + true + + + + gcube-externals + gCube Externals + ${repository.externals.readonly} + + false + + + true + + + + + + + gcube-snapshots + gCube Snapshots + ${repository.snapshots.url} + + + + + gcore-legacy + + [, 1.8) + + !Release + + + + + + gcube-snapshots + gCube Snapshots + ${repository.snapshots.url} + + true + + + false + + + + gcube-releases-gcore + gCube Releases gCore + ${repository.releases.gcore.url} + + false + + + true + + + + gcube-externals + gCube Externals + ${repository.externals.readonly} + + false + + + true + + + + + + + gcube-snapshots + gCube Snapshots + ${repository.snapshots.url} + + + + + gcube-legacy + + [1.8,9) + + !Release + + + + + + gcube-snapshots + gCube Snapshots + ${repository.snapshots.url} + + true + + + false + + + + gcube-releases + gCube Releases + ${repository.releases.url} + + false + + + true + + + + gcube-externals + gCube Externals + ${repository.externals.readonly} + + false + + + true + + + + + + + gcube-snapshots + gCube Snapshots + ${repository.snapshots.url} + + + + + jenkins-releases-gcore-legacy + + [,1.8) + + jenkins-releases + true + + + + ${repository.releases.gcore.url} + + + + + gcube-releases-gcore + gCube Releases + ${repository.releases.gcore.url} + + false + + + true + + + + gcube-externals + gCube Externals + ${repository.externals.readonly} + + false + + + true + + + + gcube-jenkins-staging-gcore + gCube Jenkins Staging + ${repository.jenkins.staging.gcore.url} + + + + + + + gcube-releases-gcore + gCube Releases + ${repository.releases.gcore.url} + + + + ${project.artifactId}-${project.version} + + + + jenkins-releases-legacy + + [1.8,9) + + jenkins-releases + true + + + + ${repository.releases.url} + + + + + gcube-releases + gCube Releases + ${repository.releases.url} + + false + + + true + + + + gcube-externals + gCube Externals + ${repository.externals.readonly} + + false + + + true + + + + gcube-jenkins-staging + gCube Jenkins Staging + ${repository.jenkins.staging.url} + + + + + + gcube-releases + gCube Releases + ${repository.releases.url} + + + + ${project.artifactId}-${project.version} + + + + jenkins-releases + + [9,17) + + jenkins-releases + true + + + + 1.8 + ${java_version} + ${java_version} + ${repository.releases.url} + + + + + gcube-releases + gCube Releases + ${repository.releases.url} + + false + + + true + + + + gcube-externals + gCube Externals + ${repository.externals.readonly} + + false + + + true + + + + gcube-jenkins-staging + gCube Jenkins Staging + ${repository.jenkins.staging.url} + + + + + + + gcube-releases + gCube Releases + ${repository.releases.url} + + + + ${project.artifactId}-${project.version} + + + + jenkins-releases-experimental + + [17,) + + jenkins-releases + true + + + + 1.8 + ${java_version} + ${java_version} + ${repository.releases.next.url} + + + + + gcube-releases-all + gCube Releases + ${repository.releases.all.url} + + false + + + true + + + + gcube-externals + gCube Externals + ${repository.externals.readonly} + + false + + + true + + + + gcube-staging-all + gCube Staging All + ${repository.staging.all.url} + + false + + + true + + + + + + + + gcube-releases-next + gCube Releases + ${repository.releases.next.url} + + + + ${project.artifactId}-${project.version} + + + + jenkins-staging-gcore-legacy + + [,1.8) + + jenkins-staging + true + + + + ${repository.jenkins.staging.gcore.url} + + + + + gcube-staging-java7 + gCube Staging Java7 + ${repository.jenkins.staging.java7.url} + + false + never + + + true + + + + gcube-staging-gcore + gCube Staging gCore + ${repository.jenkins.staging.gcore.url} + + false + + + true + + + + gcube-externals + gCube Externals + ${repository.externals.readonly} + + false + + + true + + + + + + + + gcube-staging-gcore + gCube Staging gCore + ${repository.jenkins.staging.gcore.url} + + + + ${project.artifactId}-${project.version} + + + + jenkins-staging-legacy + + [1.8,9) + + jenkins-staging + true + + + + ${repository.staging.url} - + + + + gcube-staging-jenkins + gCube Staging Jenkins + ${repository.jenkins.staging.url} + + false + never + + + true + + + + gcube-releases + gCube Releases + ${repository.releases.url} + + false + + + true + + + + gcube-externals + gCube Externals + ${repository.externals.readonly} + + false + + + true + + + + + + + gcube-staging-jenkins + gCube Staging + ${repository.jenkins.staging.url} + + + + ${project.artifactId}-${project.version} + + + + jenkins-staging-official + + [9,17) + + jenkins-staging + true + + + + 1.8 + ${java_version} + ${java_version} + ${repository.jenkins.staging.url} + + + + + gcube-staging-jenkins + gCube Jenkins Staging + ${repository.jenkins.staging.url} + + false + + + true + + + + gcube-releases + gCube Releases + ${repository.releases.url} + + false + + + true + + + + gcube-externals + gCube Externals + ${repository.externals.readonly} + + false + + + true + + + + + + + gcube-staging-jenkins + gCube Staging + ${repository.jenkins.staging.url} + + + + ${project.artifactId}-${project.version} + + + + jenkins-staging-experimental + + [17,) + + jenkins-staging + true + + + + 1.8 + ${java_version} + ${java_version} + ${repository.jenkins.staging.next.url} + + + + + gcube-staging-all + gCube Staging All + ${repository.staging.all.url} + + false + + + true + + - - - generate-distribution-packages - - - generateDistribution - true - - - - - - org.apache.maven.plugins - maven-assembly-plugin - 2.6 - - - make-source-package - install - - - - - - + + gcube-releases-all + gCube Releases + ${repository.releases.all.url} + + false + + + true + + + + gcube-externals + gCube Externals + ${repository.externals.readonly} + + false + + + true + + + + + + + + gcube-staging-jenkins-next + gCube Jenkins Staging Next + ${repository.jenkins.staging.next.url} + + + + ${project.artifactId}-${project.version} + + + + dry-run + + false + + build-dry-run + true + + + + + + + org.apache.maven.plugins + maven-deploy-plugin + ${plugin.deploy.version} + + true + + + + + + + + + + + + org.codehaus.mojo + buildnumber-maven-plugin + ${plugin.buildnumber.version} + + + useLastCommittedRevision + validate + + create + + + true + scmBranch + false + false + + + + build.date + initialize + + create-timestamp + + + yyyy-MM-dd + build.date + + + + + - - gcube-developer - - - true - + + org.apache.maven.plugins + maven-jar-plugin + ${plugin.jar.version} + + + + true + true + + + ${buildNumber} + ${maven.build.timestamp} + ${scmBranch} + ${project.scm.url}/commit/${buildNumber} + + + + - - - - gcube-snapshots - gCube Snapshots - ${repository.snapshots.url} - - - gcube-releases - gCube Releases - ${repository.releases.url} - - - gcube-externals - gCube Externals - ${repository.externals.readonly} - - - - - - - gcube-snapshots - gCube Snapshots - ${repository.snapshots.url} - - - - - - - org.codehaus.mojo - build-helper-maven-plugin - 3.0.0 - - - - build-helper-regex-is-snapshot-used - validate - - regex-property - - - skip.when.is.release.used - ${project.version} - ^((?!.*-SNAPSHOT).)*$ - true - false - - - - - - org.apache.maven.plugins - maven-deploy-plugin - 3.0.0-M1 - - ${skip.when.is.release.used} - - - - - - - - jenkins-snapshots - - false - - jenkins-snapshots - true - - - - - - - gcube-snapshots - gCube Snapshots - ${repository.snapshots.url} - - - gcube-releases - gCube Releases - ${repository.releases.url} - - - gcube-externals - gCube Externals - ${repository.externals.readonly} - - - - - - - gcube-snapshots - gCube Snapshots - ${repository.snapshots.url} - - - - - - org.codehaus.mojo - build-helper-maven-plugin - 3.0.0 - - - - build-helper-regex-is-snapshot-used - validate - - regex-property - - - skip.when.is.release.used - ${project.version} - ^((?!.*-SNAPSHOT).)*$ - true - false - - - - - - org.apache.maven.plugins - maven-deploy-plugin - 3.0.0-M1 - - ${skip.when.is.release.used} - - - - - - - - jenkins-releases - - - false - - jenkins-releases - true - - - - - - - gcube-releases - gCube Releases - ${repository.releases.url} - - - gcube-jenkins-staging - gCube Jenkins Staging - ${repository.jenkins.staging.url} - - - gcube-staging - gCube Staging - ${repository.staging.url} - - - gcube-externals - gCube Externals - ${repository.externals.readonly} - - - - - - - gcube-releases - gCube Releases - ${repository.releases.url} - - - - - - - org.codehaus.mojo - build-helper-maven-plugin - 3.0.0 - - - - build-helper-regex-is-snapshot-used - validate - - regex-property - - - skip.when.is.snapshot.used - ${project.version} - .*-SNAPSHOT$ - true - false - - - - - - io.github.olivierlemasle.maven - plaintext-maven-plugin - 1.0.0 - - ${env.MAVEN_CONFIG_FOLDER} - - - build_commits.csv - true - - ${project.groupId},${project.artifactId},${project.version},${project.scm.url},${git.branch},${buildNumber},${repository.releases.url},${project.build.finalName}.${project.packaging} - - - - - - - generate-file - package - - write - - - - - - - ${project.artifactId}-${project.version} - - - - - - jenkins-staging - - false - - jenkins-staging - true - - - - - - - gcube-staging-jenkins - gCube Jenkins Staging - ${repository.jenkins.staging.url} - - - gcube-staging - gCube Staging - ${repository.staging.url} - - - gcube-releases - gCube Releases - ${repository.releases.url} - - - gcube-externals - gCube Externals - ${repository.externals.readonly} - - - - - - - gcube-staging-jenkins - gCube Staging - ${repository.jenkins.staging.url} - - - - - - - org.codehaus.mojo - build-helper-maven-plugin - 3.0.0 - - - - build-helper-regex-is-snapshot-used - validate - - regex-property - - - skip.when.is.snapshot.used - ${project.version} - .*-SNAPSHOT$ - true - false - - - - - - io.github.olivierlemasle.maven - plaintext-maven-plugin - 1.0.0 - - ${env.MAVEN_CONFIG_FOLDER} - - - build_commits.csv - true - - ${project.groupId},${project.artifactId},${project.version},${project.scm.url},${scmBranch},${buildNumber},${repository.jenkins.staging.url},${project.build.finalName}.${project.packaging} - - - - - - - generate-file - package - - write - - - - - - ${project.artifactId}-${project.version} - - - - - dry-run - - false - - build-dry-run - true - - - - - - - org.apache.maven.plugins - maven-deploy-plugin - 3.0.0-M1 - - true - - - - - - - - - - - - - - - org.codehaus.mojo - buildnumber-maven-plugin - 1.4 - - - useLastCommittedRevision - validate - - create - - - true - scmBranch - false - false - - - - create-timestamp-id - validate - - create-timestamp - - - yyyy-MM-dd HH:mm:ss.S - scmDate - - - - - - - - org.apache.maven.plugins - maven-jar-plugin - 3.1.2 - - - - true - true - - - ${buildNumber} - ${buildDate} - ${scmBranch} - ${project.scm.url}/commit/${buildNumber} - - - - - - org.apache.maven.plugins - maven-enforcer-plugin - 1.0.1 - - - enforce - validate - - enforce - - - - - [${maven.version},) - Check for Maven version >=${maven.version} failed. Update your Maven install. - - - - java.vm.name - Java Vendor must be OpenJDK. - ${java.expected.vm} - Java Vendor must be OpenJDK. Found: ${java.vm.name} - - - - - - - - org.apache.maven.plugins - maven-assembly-plugin - 2.6 - - - org.gcube.tools - shared-assemblies - 1.1.0 - - - - - - make-uberjar - - - gcube-uberjar - - + + make-uberjar + + + gcube-uberjar + + - + - - true - - - single - - + true + + + single + + - - - make-servicearchive - - - gcube-default-servicearchive - + + + make-servicearchive + + + gcube-default-servicearchive + - - + - - true - - - single - - - - - make-source-package - - - gcube-source-package - + true + + + single + + + + + make-source-package + + + gcube-source-package + - - + - - true - - - single - - - - + true + + + single + + + + - - org.apache.maven.plugins - maven-surefire-plugin - 3.0.0-M3 - - always - - + + org.apache.maven.plugins + maven-surefire-plugin + 2.22.2 + + classes + 10 + 3 + true + ${project.test.outputDirectory} + + - - - org.eclipse.m2e - lifecycle-mapping - 1.0.0 - - - - - - org.apache.maven.plugins - maven-enforcer-plugin - 1.0.1 - - enforce - - - - - - - - - org.apache.maven.plugins - maven-dependency-plugin - 3.1.1 - - unpack - copy-dependencies - - - - - - - - - org.gcube.tools - maven-service-plugin - 1.0.0 - - stub-gen - - - - - - - - - org.gcube.tools - maven-service-plugin - 1.0.0 - - gar-gen - local-deploy - - - - - - - - - - + + + org.eclipse.m2e + lifecycle-mapping + 1.0.0 + + + + + + org.apache.maven.plugins + maven-antrun-plugin + [1.8,) + + run + + + + + + + + + org.apache.maven.plugins + maven-enforcer-plugin + ${plugin.enforcer.version} + + enforce + + + + + + + + + org.apache.maven.plugins + maven-dependency-plugin + 3.1.1 + + unpack + copy-dependencies + + + + + + + + + org.gcube.tools + maven-service-plugin + 1.0.0 + + stub-gen + + + + + + + + + org.gcube.tools + maven-service-plugin + 1.0.0 + + gar-gen + local-deploy + + + + + + + + + org.apache.maven.plugins + maven-resources-plugin + ${plugin.resources.version} + + copy-resources + + + + + + + + + + - - - org.apache.maven.plugins - maven-compiler-plugin - 3.8.1 - - ${maven.compiler.target} - ${maven.compiler.source} - - - - + + + org.apache.maven.plugins + maven-compiler-plugin + ${plugin.compiler.version} + + ${maven.compiler.target} + ${maven.compiler.source} + true + + + + - - - + + - org.codehaus.mojo - buildnumber-maven-plugin - - - - - org.apache.maven.plugins - maven-enforcer-plugin - - - - org.codehaus.mojo - build-helper-maven-plugin - - - - org.apache.maven.plugins - maven-source-plugin - 2.1.2 - - - generate-sources - install - - jar - - - - - - - org.apache.maven.plugins - maven-javadoc-plugin - 2.8 - - - generate-doc - install - - jar - - - ${javadoc.opts} - - - - - - - - - - - distro - - 1.8 - .*OpenJDK.* - ${java_version} - ${java_version} - - UTF-8 - 3.3.9 - http://maven.research-infrastructures.eu/nexus/content/repositories/gcube-snapshots - http://maven.research-infrastructures.eu/nexus/content/repositories/gcube-releases - http://maven.research-infrastructures.eu/nexus/content/repositories/gcube-staging-jenkins - http://maven.research-infrastructures.eu/nexus/content/repositories/gcube-staging/ - - http://maven.research-infrastructures.eu/nexus/content/repositories/gcube-externals - - - - https://wiki.gcube-system.org/gcube/index.php - yyyy-MM-dd - ${maven.build.timestamp} - https://support.d4science.org/projects/gcube/ - https://www.gcube-system.org/ - - This software is part of the gCube Framework (https://www.gcube-system.org/): an - open-source software toolkit used for building and operating Hybrid Data - Infrastructures enabling the dynamic deployment of Virtual Research Environments - by favouring the realisation of reuse oriented policies. - - - The projects leading to this software have received funding from a series of - European Union programmes including: - * the Sixth Framework Programme for Research and Technological Development - - DILIGENT (grant no. 004260); - * the Seventh Framework Programme for research, technological development and - demonstration - D4Science (grant no. 212488), D4Science-II (grant no. - 239019),ENVRI (grant no. 283465), EUBrazilOpenBio (grant no. 288754), iMarine - (grant no. 283644); - * the H2020 research and innovation programme - BlueBRIDGE (grant no. 675680), - EGIEngage (grant no. 654142), ENVRIplus (grant no. 654182), Parthenos (grant - no. 654119), SoBigData (grant no. 654024), AGINFRA PLUS (grant no. 731001). - - - European Union Public Licence V. 1.1 - - - EUPL © the European Community 2007 - - - This European Union Public Licence (the “EUPL”) applies to the Work or Software - (as defined below) which is provided under the terms of this Licence. Any use of - the Work, other than as authorised under this Licence is prohibited (to the - extent such use is covered by a right of the copyright holder of the Work). + org.apache.maven.plugins + maven-help-plugin + 3.0.1 + + + show-profiles + compile + + active-profiles + + + + + + org.codehaus.mojo + buildnumber-maven-plugin + + + + + org.apache.maven.plugins + maven-enforcer-plugin + + + enforce-files-exist + + enforce + + + + + + ${project.basedir}/README.md + ${project.basedir}/LICENSE.md + ${project.basedir}/CHANGELOG.md + + + + true + + + + + + org.codehaus.mojo + build-helper-maven-plugin + ${plugin.build.helper.version} + + + + org.apache.maven.plugins + maven-antrun-plugin + 3.0.0 + + + set-vars + generate-resources + + true + + + + + + + + + + + + + + + + + + run + + + + print + compile + + run + + + + ******** Displaying value of *.outputDirectory properties ******** + project.metainf.outputDirectory=${project.metainf.outputDirectory} + project.webinf.outputDirectory=${project.webinf.outputDirectory} + + + + + + + maven-resources-plugin + ${plugin.resources.version} + + + copy-web-inf + generate-resources + + copy-resources + + + ${project.webinf.outputDirectory} + + + gcube/extra-resources/WEB-INF + true + + + + + + copy-meta-inf + generate-resources + + copy-resources + + + ${project.metainf.outputDirectory} + + + gcube/extra-resources/META-INF + true + + + + + + copy-license + compile + + copy-resources + + + ${project.metainf.outputDirectory} + + + ${project.basedir} + + LICENSE.md + + true + + + + + + + + + org.apache.maven.plugins + maven-source-plugin + ${plugin.source.version} + + + generate-sources + install + + jar + + + + + + + org.apache.maven.plugins + maven-javadoc-plugin + ${plugin.javadoc.version} + + + generate-doc + install + + jar + + + ${java_version} + ${javadoc.opts} + + + + + + org.codehaus.gmaven + groovy-maven-plugin + 2.1.1 + + + process-classes + + execute + + + + tag + + + def fileContents = new File("${project.basedir}/CHANGELOG.md").getText('UTF-8') + matcher = (fileContents =~ /(?s).\[v$project.version\].*?/) + if (!matcher.find()) { + throw new IllegalArgumentException("Tag [v$project.version] not found in ${project.basedir}/CHANGELOG.md") + } + assert matcher[0][1]: "Tag [v$project.version] not found in ${project.basedir}/CHANGELOG.md" + + + + + + + org.codehaus.groovy + groovy-all + 3.0.13 + + pom + + + + + + + + + 3.0.0-M3 + 1.4 + 3.0.0 + 3.0.0-M1 + 1.0.0 + 3.1.2 + 3.3.1 + 2.6 + 3.10.1 + 2.1.2 + 3.6.3 + 3.1.0 + + + distro + + ${project.build.directory}/surefire-reports + + 1.8 + .*OpenJDK.* + ${java_version} + ${java_version} + + + UTF-8 + 3.3.9 + https://nexus.d4science.org/nexus/content/repositories/gcube-snapshots + + https://nexus.d4science.org/nexus/content/repositories/gcube-releases-gcore + + https://nexus.d4science.org/nexus/content/repositories/gcube-releases + + https://nexus.d4science.org/nexus/content/repositories/gcube-releases-next + + https://nexus.d4science.org/nexus/content/groups/gcube-releases-all + + + https://nexus.d4science.org/nexus/content/repositories/gcube-staging-gcore + + + https://nexus.d4science.org/nexus/content/repositories/gcube-staging-java7 + + + https://nexus.d4science.org/nexus/content/repositories/gcube-staging-jenkins + + + https://nexus.d4science.org/nexus/content/repositories/gcube-staging-jenkins-next + + https://nexus.d4science.org/nexus/content/groups/gcube-staging-all + + + https://nexus.d4science.org/nexus/content/repositories/gcube-externals + + + + + https://wiki.gcube-system.org/gcube/index.php + yyyyMMdd-HHmmss + ${maven.build.timestamp} + https://support.d4science.org/projects/gcube/ + https://www.gcube-system.org/ + + This software is part of the gCube Framework (https://www.gcube-system.org/): an + open-source software toolkit used for building and operating Hybrid Data + Infrastructures enabling the dynamic deployment of Virtual Research Environments + by favouring the realisation of reuse oriented policies. + + + The projects leading to this software have received funding from a series of + European Union programmes including: + * the Sixth Framework Programme for Research and Technological Development - + DILIGENT (grant no. 004260); + * the Seventh Framework Programme for research, technological development and + demonstration - D4Science (grant no. 212488), D4Science-II (grant no. + 239019),ENVRI (grant no. 283465), EUBrazilOpenBio (grant no. 288754), iMarine + (grant no. 283644); + * the H2020 research and innovation programme - BlueBRIDGE (grant no. 675680), + EGIEngage (grant no. 654142), ENVRIplus (grant no. 654182), Parthenos (grant + no. 654119), SoBigData (grant no. 654024), AGINFRA PLUS (grant no. 731001). + + + European Union Public Licence V. 1.1 + + + EUPL © the European Community 2007 + + + This European Union Public Licence (the “EUPL”) applies to the Work or Software + (as defined below) which is provided under the terms of this Licence. Any use of + the Work, other than as authorised under this Licence is prohibited (to the + extent such use is covered by a right of the copyright holder of the Work). + + The Original Work is provided under the terms of this Licence when the Licensor + (as defined below) has placed the following notice immediately following the + copyright notice for the Original Work: + + Licensed under the EUPL V.1.1 + + or has expressed by any other mean his willingness to license under the EUPL. + + + 1. Definitions + + In this Licence, the following terms have the following meaning: + + - The Licence: this Licence. + + - The Original Work or the Software: the software distributed and/or + communicated by the Licensor under this Licence, available as Source Code and + also as Executable Code as the case may be. + + - Derivative Works: the works or software that could be created by the Licensee, + based upon the Original Work or modifications thereof. This Licence does not + define the extent of modification or dependence on the Original Work required + in order to classify a work as a Derivative Work; this extent is determined by + copyright law applicable in the country mentioned in Article 15. + + - The Work: the Original Work and/or its Derivative Works. + + - The Source Code: the human-readable form of the Work which is the most + convenient for people to study and modify. + + - The Executable Code: any code which has generally been compiled and which is + meant to be interpreted by a computer as a program. + + - The Licensor: the natural or legal person that distributes and/or communicates + the Work under the Licence. + + - Contributor(s): any natural or legal person who modifies the Work under the + Licence, or otherwise contributes to the creation of a Derivative Work. + + - The Licensee or “You”: any natural or legal person who makes any usage of the + Software under the terms of the Licence. + + - Distribution and/or Communication: any act of selling, giving, lending, + renting, distributing, communicating, transmitting, or otherwise making + available, on-line or off-line, copies of the Work or providing access to its + essential functionalities at the disposal of any other natural or legal + person. - The Original Work is provided under the terms of this Licence when the Licensor - (as defined below) has placed the following notice immediately following the - copyright notice for the Original Work: - Licensed under the EUPL V.1.1 + 2. Scope of the rights granted by the Licence - or has expressed by any other mean his willingness to license under the EUPL. + The Licensor hereby grants You a world-wide, royalty-free, non-exclusive, + sub-licensable licence to do the following, for the duration of copyright vested + in the Original Work: + - use the Work in any circumstance and for all usage, reproduce the Work, modify + - the Original Work, and make Derivative Works based upon the Work, communicate + - to the public, including the right to make available or display the Work or + - copies thereof to the public and perform publicly, as the case may be, the + - Work, distribute the Work or copies thereof, lend and rent the Work or copies + - thereof, sub-license rights in the Work or copies thereof. + Those rights can be exercised on any media, supports and formats, whether now + known or later invented, as far as the applicable law permits so. - 1. Definitions + In the countries where moral rights apply, the Licensor waives his right to + exercise his moral right to the extent allowed by law in order to make effective + the licence of the economic rights here above listed. - In this Licence, the following terms have the following meaning: + The Licensor grants to the Licensee royalty-free, non exclusive usage rights to + any patents held by the Licensor, to the extent necessary to make use of the + rights granted on the Work under this Licence. - - The Licence: this Licence. - - The Original Work or the Software: the software distributed and/or - communicated by the Licensor under this Licence, available as Source Code and - also as Executable Code as the case may be. + 3. Communication of the Source Code - - Derivative Works: the works or software that could be created by the Licensee, - based upon the Original Work or modifications thereof. This Licence does not - define the extent of modification or dependence on the Original Work required - in order to classify a work as a Derivative Work; this extent is determined by - copyright law applicable in the country mentioned in Article 15. + The Licensor may provide the Work either in its Source Code form, or as + Executable Code. If the Work is provided as Executable Code, the Licensor + provides in addition a machine-readable copy of the Source Code of the Work + along with each copy of the Work that the Licensor distributes or indicates, in + a notice following the copyright notice attached to the Work, a repository where + the Source Code is easily and freely accessible for as long as the Licensor + continues to distribute and/or communicate the Work. - - The Work: the Original Work and/or its Derivative Works. - - The Source Code: the human-readable form of the Work which is the most - convenient for people to study and modify. + 4. Limitations on copyright - - The Executable Code: any code which has generally been compiled and which is - meant to be interpreted by a computer as a program. + Nothing in this Licence is intended to deprive the Licensee of the benefits from + any exception or limitation to the exclusive rights of the rights owners in the + Original Work or Software, of the exhaustion of those rights or of other + applicable limitations thereto. - - The Licensor: the natural or legal person that distributes and/or communicates - the Work under the Licence. - - Contributor(s): any natural or legal person who modifies the Work under the - Licence, or otherwise contributes to the creation of a Derivative Work. + 5. Obligations of the Licensee - - The Licensee or “You”: any natural or legal person who makes any usage of the - Software under the terms of the Licence. + The grant of the rights mentioned above is subject to some restrictions and + obligations imposed on the Licensee. Those obligations are the following: - - Distribution and/or Communication: any act of selling, giving, lending, - renting, distributing, communicating, transmitting, or otherwise making - available, on-line or off-line, copies of the Work or providing access to its - essential functionalities at the disposal of any other natural or legal - person. + Attribution right: the Licensee shall keep intact all copyright, patent or + trademarks notices and all notices that refer to the Licence and to the + disclaimer of warranties. The Licensee must include a copy of such notices and a + copy of the Licence with every copy of the Work he/she distributes and/or + communicates. The Licensee must cause any Derivative Work to carry prominent + notices stating that the Work has been modified and the date of modification. + Copyleft clause: If the Licensee distributes and/or communicates copies of the + Original Works or Derivative Works based upon the Original Work, this + Distribution and/or Communication will be done under the terms of this Licence + or of a later version of this Licence unless the Original Work is expressly + distributed only under this version of the Licence. The Licensee (becoming + Licensor) cannot offer or impose any additional terms or conditions on the Work + or Derivative Work that alter or restrict the terms of the Licence. + Compatibility clause: If the Licensee Distributes and/or Communicates Derivative + Works or copies thereof based upon both the Original Work and another work + licensed under a Compatible Licence, this Distribution and/or Communication can + be done under the terms of this Compatible Licence. For the sake of this clause, + “Compatible Licence” refers to the licences listed in the appendix attached to + this Licence. Should the Licensee’s obligations under the Compatible Licence + conflict with his/her obligations under this Licence, the obligations of the + Compatible Licence shall prevail. - 2. Scope of the rights granted by the Licence + Provision of Source Code: When distributing and/or communicating copies of the + Work, the Licensee will provide a machine-readable copy of the Source Code or + indicate a repository where this Source will be easily and freely available for + as long as the Licensee continues to distribute and/or communicate the Work. - The Licensor hereby grants You a world-wide, royalty-free, non-exclusive, - sub-licensable licence to do the following, for the duration of copyright vested - in the Original Work: + Legal Protection: This Licence does not grant permission to use the trade names, + trademarks, service marks, or names of the Licensor, except as required for + reasonable and customary use in describing the origin of the Work and + reproducing the content of the copyright notice. - - use the Work in any circumstance and for all usage, reproduce the Work, modify - - the Original Work, and make Derivative Works based upon the Work, communicate - - to the public, including the right to make available or display the Work or - - copies thereof to the public and perform publicly, as the case may be, the - - Work, distribute the Work or copies thereof, lend and rent the Work or copies - - thereof, sub-license rights in the Work or copies thereof. - Those rights can be exercised on any media, supports and formats, whether now - known or later invented, as far as the applicable law permits so. + 6. Chain of Authorship - In the countries where moral rights apply, the Licensor waives his right to - exercise his moral right to the extent allowed by law in order to make effective - the licence of the economic rights here above listed. + The original Licensor warrants that the copyright in the Original Work granted + hereunder is owned by him/her or licensed to him/her and that he/she has the + power and authority to grant the Licence. - The Licensor grants to the Licensee royalty-free, non exclusive usage rights to - any patents held by the Licensor, to the extent necessary to make use of the - rights granted on the Work under this Licence. + Each Contributor warrants that the copyright in the modifications he/she brings + to the Work are owned by him/her or licensed to him/her and that he/she has the + power and authority to grant the Licence. + Each time You accept the Licence, the original Licensor and subsequent + Contributors grant You a licence to their contributions to the Work, under the + terms of this Licence. - 3. Communication of the Source Code + 7. Disclaimer of Warranty - The Licensor may provide the Work either in its Source Code form, or as - Executable Code. If the Work is provided as Executable Code, the Licensor - provides in addition a machine-readable copy of the Source Code of the Work - along with each copy of the Work that the Licensor distributes or indicates, in - a notice following the copyright notice attached to the Work, a repository where - the Source Code is easily and freely accessible for as long as the Licensor - continues to distribute and/or communicate the Work. + The Work is a work in progress, which is continuously improved by numerous + contributors. It is not a finished work and may therefore contain defects or + “bugs” inherent to this type of software development. + For the above reason, the Work is provided under the Licence on an “as is” basis + and without warranties of any kind concerning the Work, including without + limitation merchantability, fitness for a particular purpose, absence of defects + or errors, accuracy, non-infringement of intellectual property rights other than + copyright as stated in Article 6 of this Licence. + This disclaimer of warranty is an essential part of the Licence and a condition + for the grant of any rights to the Work. - 4. Limitations on copyright - Nothing in this Licence is intended to deprive the Licensee of the benefits from - any exception or limitation to the exclusive rights of the rights owners in the - Original Work or Software, of the exhaustion of those rights or of other - applicable limitations thereto. + 8. Disclaimer of Liability + Except in the cases of wilful misconduct or damages directly caused to natural + persons, the Licensor will in no event be liable for any direct or indirect, + material or moral, damages of any kind, arising out of the Licence or of the use + of the Work, including without limitation, damages for loss of goodwill, work + stoppage, computer failure or malfunction, loss of data or any commercial + damage, even if the Licensor has been advised of the possibility of such + damage. However, the Licensor will be liable under statutory product liability + laws as far such laws apply to the Work. - 5. Obligations of the Licensee + 9. Additional agreements - The grant of the rights mentioned above is subject to some restrictions and - obligations imposed on the Licensee. Those obligations are the following: + While distributing the Original Work or Derivative Works, You may choose to + conclude an additional agreement to offer, and charge a fee for, acceptance of + support, warranty, indemnity, or other liability obligations and/or services + consistent with this Licence. However, in accepting such obligations, You may + act only on your own behalf and on your sole responsibility, not on behalf of + the original Licensor or any other Contributor, and only if You agree to + indemnify, defend, and hold each Contributor harmless for any liability incurred + by, or claims asserted against such Contributor by the fact You have accepted + any such warranty or additional liability. - Attribution right: the Licensee shall keep intact all copyright, patent or - trademarks notices and all notices that refer to the Licence and to the - disclaimer of warranties. The Licensee must include a copy of such notices and a - copy of the Licence with every copy of the Work he/she distributes and/or - communicates. The Licensee must cause any Derivative Work to carry prominent - notices stating that the Work has been modified and the date of modification. - Copyleft clause: If the Licensee distributes and/or communicates copies of the - Original Works or Derivative Works based upon the Original Work, this - Distribution and/or Communication will be done under the terms of this Licence - or of a later version of this Licence unless the Original Work is expressly - distributed only under this version of the Licence. The Licensee (becoming - Licensor) cannot offer or impose any additional terms or conditions on the Work - or Derivative Work that alter or restrict the terms of the Licence. + 10. Acceptance of the Licence - Compatibility clause: If the Licensee Distributes and/or Communicates Derivative - Works or copies thereof based upon both the Original Work and another work - licensed under a Compatible Licence, this Distribution and/or Communication can - be done under the terms of this Compatible Licence. For the sake of this clause, - “Compatible Licence” refers to the licences listed in the appendix attached to - this Licence. Should the Licensee’s obligations under the Compatible Licence - conflict with his/her obligations under this Licence, the obligations of the - Compatible Licence shall prevail. + The provisions of this Licence can be accepted by clicking on an icon “I agree” + placed under the bottom of a window displaying the text of this Licence or by + affirming consent in any other similar way, in accordance with the rules of + applicable law. Clicking on that icon indicates your clear and irrevocable + acceptance of this Licence and all of its terms and conditions. - Provision of Source Code: When distributing and/or communicating copies of the - Work, the Licensee will provide a machine-readable copy of the Source Code or - indicate a repository where this Source will be easily and freely available for - as long as the Licensee continues to distribute and/or communicate the Work. + Similarly, you irrevocably accept this Licence and all of its terms and + conditions by exercising any rights granted to You by Article 2 of this Licence, + such as the use of the Work, the creation by You of a Derivative Work or the + Distribution and/or Communication by You of the Work or copies thereof. - Legal Protection: This Licence does not grant permission to use the trade names, - trademarks, service marks, or names of the Licensor, except as required for - reasonable and customary use in describing the origin of the Work and - reproducing the content of the copyright notice. + 11. Information to the public + In case of any Distribution and/or Communication of the Work by means of + electronic communication by You (for example, by offering to download the Work + from a remote location) the distribution channel or media (for example, a + website) must at least provide to the public the information requested by the + applicable law regarding the Licensor, the Licence and the way it may be + accessible, concluded, stored and reproduced by the Licensee. - 6. Chain of Authorship - The original Licensor warrants that the copyright in the Original Work granted - hereunder is owned by him/her or licensed to him/her and that he/she has the - power and authority to grant the Licence. + 12. Termination of the Licence - Each Contributor warrants that the copyright in the modifications he/she brings - to the Work are owned by him/her or licensed to him/her and that he/she has the - power and authority to grant the Licence. + The Licence and the rights granted hereunder will terminate automatically upon + any breach by the Licensee of the terms of the Licence. - Each time You accept the Licence, the original Licensor and subsequent - Contributors grant You a licence to their contributions to the Work, under the - terms of this Licence. + Such a termination will not terminate the licences of any person who has + received the Work from the Licensee under the Licence, provided such persons + remain in full compliance with the Licence. + 13. Miscellaneous - 7. Disclaimer of Warranty + Without prejudice of Article 9 above, the Licence represents the complete + agreement between the Parties as to the Work licensed hereunder. - The Work is a work in progress, which is continuously improved by numerous - contributors. It is not a finished work and may therefore contain defects or - “bugs” inherent to this type of software development. + If any provision of the Licence is invalid or unenforceable under applicable + law, this will not affect the validity or enforceability of the Licence as a + whole. Such provision will be construed and/or reformed so as necessary to make + it valid and enforceable. - For the above reason, the Work is provided under the Licence on an “as is” basis - and without warranties of any kind concerning the Work, including without - limitation merchantability, fitness for a particular purpose, absence of defects - or errors, accuracy, non-infringement of intellectual property rights other than - copyright as stated in Article 6 of this Licence. + The European Commission may publish other linguistic versions and/or new + versions of this Licence, so far this is required and reasonable, without + reducing the scope of the rights granted by the Licence. New versions of the + Licence will be published with a unique version number. - This disclaimer of warranty is an essential part of the Licence and a condition - for the grant of any rights to the Work. + All linguistic versions of this Licence, approved by the European Commission, + have identical value. Parties can take advantage of the linguistic version of + their choice. + 14. Jurisdiction - 8. Disclaimer of Liability + Any litigation resulting from the interpretation of this License, arising + between the European Commission, as a Licensor, and any Licensee, will be + subject to the jurisdiction of the Court of Justice of the European Communities, + as laid down in article 238 of the Treaty establishing the European Community. - Except in the cases of wilful misconduct or damages directly caused to natural - persons, the Licensor will in no event be liable for any direct or indirect, - material or moral, damages of any kind, arising out of the Licence or of the use - of the Work, including without limitation, damages for loss of goodwill, work - stoppage, computer failure or malfunction, loss of data or any commercial - damage, even if the Licensor has been advised of the possibility of such - damage. However, the Licensor will be liable under statutory product liability - laws as far such laws apply to the Work. + Any litigation arising between Parties, other than the European Commission, and + resulting from the interpretation of this License, will be subject to the + exclusive jurisdiction of the competent court where the Licensor resides or + conducts its primary business. + 15. Applicable Law - 9. Additional agreements + This Licence shall be governed by the law of the European Union country where + the Licensor resides or has his registered office. - While distributing the Original Work or Derivative Works, You may choose to - conclude an additional agreement to offer, and charge a fee for, acceptance of - support, warranty, indemnity, or other liability obligations and/or services - consistent with this Licence. However, in accepting such obligations, You may - act only on your own behalf and on your sole responsibility, not on behalf of - the original Licensor or any other Contributor, and only if You agree to - indemnify, defend, and hold each Contributor harmless for any liability incurred - by, or claims asserted against such Contributor by the fact You have accepted - any such warranty or additional liability. + This licence shall be governed by the Belgian law if: + - a litigation arises between the European Commission, as a Licensor, and any + - Licensee; the Licensor, other than the European Commission, has no residence + - or registered office inside a European Union country. - 10. Acceptance of the Licence + === - The provisions of this Licence can be accepted by clicking on an icon “I agree” - placed under the bottom of a window displaying the text of this Licence or by - affirming consent in any other similar way, in accordance with the rules of - applicable law. Clicking on that icon indicates your clear and irrevocable - acceptance of this Licence and all of its terms and conditions. - Similarly, you irrevocably accept this Licence and all of its terms and - conditions by exercising any rights granted to You by Article 2 of this Licence, - such as the use of the Work, the creation by You of a Derivative Work or the - Distribution and/or Communication by You of the Work or copies thereof. + Appendix + “Compatible Licences” according to article 5 EUPL are: - 11. Information to the public - In case of any Distribution and/or Communication of the Work by means of - electronic communication by You (for example, by offering to download the Work - from a remote location) the distribution channel or media (for example, a - website) must at least provide to the public the information requested by the - applicable law regarding the Licensor, the Licence and the way it may be - accessible, concluded, stored and reproduced by the Licensee. + - GNU General Public License (GNU GPL) v. 2 + - Open Software License (OSL) v. 2.1, v. 3.0 + - Common Public License v. 1.0 - 12. Termination of the Licence + - Eclipse Public License v. 1.0 - The Licence and the rights granted hereunder will terminate automatically upon - any breach by the Licensee of the terms of the Licence. + - Cecill v. 2.0 - Such a termination will not terminate the licences of any person who has - received the Work from the Licensee under the Licence, provided such persons - remain in full compliance with the Licence. - - - - 13. Miscellaneous - - Without prejudice of Article 9 above, the Licence represents the complete - agreement between the Parties as to the Work licensed hereunder. - - If any provision of the Licence is invalid or unenforceable under applicable - law, this will not affect the validity or enforceability of the Licence as a - whole. Such provision will be construed and/or reformed so as necessary to make - it valid and enforceable. - - The European Commission may publish other linguistic versions and/or new - versions of this Licence, so far this is required and reasonable, without - reducing the scope of the rights granted by the Licence. New versions of the - Licence will be published with a unique version number. - - All linguistic versions of this Licence, approved by the European Commission, - have identical value. Parties can take advantage of the linguistic version of - their choice. - - - - 14. Jurisdiction - - Any litigation resulting from the interpretation of this License, arising - between the European Commission, as a Licensor, and any Licensee, will be - subject to the jurisdiction of the Court of Justice of the European Communities, - as laid down in article 238 of the Treaty establishing the European Community. - - Any litigation arising between Parties, other than the European Commission, and - resulting from the interpretation of this License, will be subject to the - exclusive jurisdiction of the competent court where the Licensor resides or - conducts its primary business. - - - - 15. Applicable Law - - This Licence shall be governed by the law of the European Union country where - the Licensor resides or has his registered office. - - This licence shall be governed by the Belgian law if: - - - a litigation arises between the European Commission, as a Licensor, and any - - Licensee; the Licensor, other than the European Commission, has no residence - - or registered office inside a European Union country. - - - === - - - Appendix - - - - “Compatible Licences” according to article 5 EUPL are: - - - - GNU General Public License (GNU GPL) v. 2 - - - Open Software License (OSL) v. 2.1, v. 3.0 - - - Common Public License v. 1.0 - - - Eclipse Public License v. 1.0 - - - Cecill v. 2.0 - - - + +