diff --git a/.github/workflows/checks.yml b/.github/workflows/checks.yml index 900cc5c9775..ee5aa159e92 100644 --- a/.github/workflows/checks.yml +++ b/.github/workflows/checks.yml @@ -13,9 +13,9 @@ jobs: - name: Checkout Repo uses: actions/checkout@v4 - name: Set up Java - uses: actions/setup-java@v3 + uses: actions/setup-java@v4 with: - distribution: adopt + distribution: 'temurin' java-version: 17 cache: gradle - name: spotless @@ -27,9 +27,9 @@ jobs: - name: Checkout Repo uses: actions/checkout@v4 - name: Set up Java 17 - uses: actions/setup-java@v3 + uses: actions/setup-java@v4 with: - distribution: adopt + distribution: 'temurin' java-version: 17 cache: gradle - name: javadoc (JDK 17) diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index f4ecae04ba4..590227e98df 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -42,10 +42,11 @@ jobs: uses: actions/checkout@v4 - name: Set up Java - uses: actions/setup-java@v3 + uses: actions/setup-java@v4 with: - distribution: adopt + distribution: 'temurin' java-version: 17 + cache: gradle # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index c2041368b0f..16fd67f94d0 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -7,10 +7,11 @@ jobs: runs-on: [besu-research-ubuntu-16] steps: - uses: actions/checkout@v4 - - uses: actions/setup-java@v3 + - uses: actions/setup-java@v4 with: distribution: 'temurin' # See 'Supported distributions' for available options java-version: '17' + cache: gradle - name: Login to DockerHub run: echo '${{ secrets.DOCKER_PASSWORD_RW }}' | docker login -u '${{ secrets.DOCKER_USER_RW }}' --password-stdin - name: Setup Gradle diff --git a/.github/workflows/sonarcloud.yml b/.github/workflows/sonarcloud.yml index 5a2ba5143ee..92d9a7713e7 100644 --- a/.github/workflows/sonarcloud.yml +++ b/.github/workflows/sonarcloud.yml @@ -19,22 +19,17 @@ jobs: - name: checkout uses: actions/checkout@v4 - name: Set up JDK 17 - uses: actions/setup-java@v3 + uses: actions/setup-java@v4 with: distribution: 'temurin' java-version: '17' + cache: gradle - name: Cache SonarCloud packages uses: actions/cache@v3 with: path: ~/.sonar/cache key: ${{ runner.os }}-sonar restore-keys: ${{ runner.os }}-sonar - - name: Cache Gradle packages - uses: actions/cache@v3 - with: - path: ~/.gradle/caches - key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }} - restore-keys: ${{ runner.os }}-gradle - name: Build and analyze env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Needed to get PR information, if any diff --git a/CHANGELOG.md b/CHANGELOG.md index cb62bc847cd..0275bd837a5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,7 @@ - New `Sequenced` transaction pool. The pool is an evolution of the `legacy` pool and is likely to be more suitable to enterprise or permissioned chains than the `layered` transaction pool. Select to use this pool with `--tx-pool=sequenced`. Supports the same options as the `legacy` pool [#6211](https://github.com/hyperledger/besu/issues/6211) - Set Ethereum Classic mainnet activation block for Spiral network upgrade [#6267](https://github.com/hyperledger/besu/pull/6267) - Add custom genesis file name to config overview if specified [#6297](https://github.com/hyperledger/besu/pull/6297) +- Update Gradle plugins and replace unmaintained License Gradle Plugin with the actively maintained Gradle License Report [#6275](https://github.com/hyperledger/besu/pull/6275) ### Bug fixes diff --git a/build.gradle b/build.gradle index 364d969db22..a00ea343db6 100644 --- a/build.gradle +++ b/build.gradle @@ -14,6 +14,7 @@ */ +import com.github.jk1.license.filter.LicenseBundleNormalizer import groovy.transform.CompileStatic import groovy.transform.Memoized import net.ltgt.gradle.errorprone.CheckSeverity @@ -22,15 +23,15 @@ import java.text.SimpleDateFormat import java.util.regex.Pattern plugins { - id 'com.diffplug.spotless' version '6.12.0' - id 'com.github.ben-manes.versions' version '0.42.0' - id 'com.github.hierynomus.license' version '0.16.1-fix' - id 'com.jfrog.artifactory' version '4.28.3' - id 'io.spring.dependency-management' version '1.0.11.RELEASE' - id 'me.champeau.jmh' version '0.7.0' apply false - id 'net.ltgt.errorprone' version '2.0.2' + id 'com.diffplug.spotless' version '6.23.3' + id 'com.github.ben-manes.versions' version '0.50.0' + id 'com.github.jk1.dependency-license-report' version '2.5' + id 'com.jfrog.artifactory' version '5.1.11' + id 'io.spring.dependency-management' version '1.1.4' + id 'me.champeau.jmh' version '0.7.2' apply false + id 'net.ltgt.errorprone' version '3.0.1' id 'maven-publish' - id 'org.sonarqube' version '3.4.0.2513' + id 'org.sonarqube' version '4.4.1.3373' } sonarqube { @@ -87,13 +88,35 @@ def _strListCmdArg(name) { return _strListCmdArg(name, null) } +licenseReport { + // This is for the allowed-licenses-file in checkLicense Task + // Accepts File, URL or String path to local or remote file + allowedLicensesFile = new File("$rootDir/gradle/allowed-licenses.json") + + excludes = [ + // only used for static analysis, not actually shipped + 'com.google.errorprone:javac', + 'org.checkerframework:dataflow-shaded', + 'org.checkerframework:dataflow-errorprone', + // exclude Kotlin multiplatform dependencies container, they have the same license of what they contain + 'com.squareup.okio:okio', + 'org.jetbrains.kotlinx:kotlinx-coroutines-core' + ] + + // If set to true, then all boms will be excluded from the report + excludeBoms = true + + filters = [ + new LicenseBundleNormalizer(bundlePath: "$rootDir/gradle/license-normalizer-bundle.json") + ] +} + allprojects { apply plugin: 'java-library' apply plugin: 'io.spring.dependency-management' apply plugin: 'jacoco' apply plugin: 'net.ltgt.errorprone' apply from: "${rootDir}/gradle/versions.gradle" - apply from: "${rootDir}/gradle/check-licenses.gradle" version = rootProject.version @@ -177,7 +200,7 @@ allprojects { } groovyGradle { target '*.gradle' - greclipse('4.21.0').configFile(rootProject.file('gradle/formatter.properties')) + greclipse('4.21').configFile(rootProject.file('gradle/formatter.properties')) endWithNewline() } // Below this line are currently only license header tasks @@ -323,7 +346,6 @@ allprojects { options.addStringOption('Xwerror', '-html5') options.encoding = 'UTF-8' } - } task deploy() {} @@ -624,10 +646,10 @@ task autocomplete(type: JavaExec) { } } -installDist { dependsOn checkLicenses, untunedStartScripts, evmToolStartScripts } +installDist { dependsOn checkLicense, untunedStartScripts, evmToolStartScripts } distTar { - dependsOn checkLicenses, autocomplete, untunedStartScripts, evmToolStartScripts + dependsOn checkLicense, autocomplete, untunedStartScripts, evmToolStartScripts doFirst { delete fileTree(dir: 'build/distributions', include: '*.tar.gz') } @@ -636,7 +658,7 @@ distTar { } distZip { - dependsOn checkLicenses, autocomplete, untunedStartScripts, evmToolStartScripts + dependsOn checkLicense, autocomplete, untunedStartScripts, evmToolStartScripts doFirst { delete fileTree(dir: 'build/distributions', include: '*.zip') } @@ -958,7 +980,6 @@ task checkSpdxHeader(type: CheckSpdxHeader) { "(.*${sep}build${sep}.*)", "(.*${sep}src${sep}[^${sep}]+${sep}generated${sep}.*)" ].join("|") - } task jacocoRootReport(type: org.gradle.testing.jacoco.tasks.JacocoReport) { diff --git a/gradle.properties b/gradle.properties index 32269ba9415..adab4c8cdff 100644 --- a/gradle.properties +++ b/gradle.properties @@ -14,3 +14,5 @@ org.gradle.jvmargs=-Xmx4g \ --add-opens jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED \ --add-opens jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED \ --add-opens jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED +# Could be moved to sonar properties after https://sonarsource.atlassian.net/browse/SONARGRADL-134 +systemProp.sonar.gradle.skipCompile=true \ No newline at end of file diff --git a/gradle/allowed-licenses.json b/gradle/allowed-licenses.json new file mode 100644 index 00000000000..a5d4048b224 --- /dev/null +++ b/gradle/allowed-licenses.json @@ -0,0 +1,65 @@ +{ + "allowedLicenses": [ + { + "moduleLicense": "Apache License, Version 2.0", + "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" + }, + { + "moduleLicense": "BSD Zero Clause License", + "moduleLicenseUrl": "https://opensource.org/licenses/0BSD" + }, + { + "moduleLicense" : "The 2-Clause BSD License", + "moduleLicenseUrl" : "https://opensource.org/licenses/BSD-2-Clause" + }, + { + "moduleLicense": "The 3-Clause BSD License", + "moduleLicenseUrl": "https://opensource.org/licenses/BSD-3-Clause" + }, + { + "moduleLicense": "Bouncy Castle Licence", + "moduleLicenseUrl": "https://www.bouncycastle.org/licence.html" + }, + { + "moduleLicense": "COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0", + "moduleLicenseUrl": "https://oss.oracle.com/licenses/CDDL" + }, + { + "moduleLicense" : "COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.1", + "moduleLicenseUrl" : "https://oss.oracle.com/licenses/CDDL-1.1" + }, + { + "moduleLicense": "Eclipse Distribution License - v 1.0", + "moduleLicenseUrl": "http://www.eclipse.org/legal/epl-v10.html" + }, + { + "moduleLicense": "Eclipse Public License - v 2.0", + "moduleLicenseUrl": "https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.txt" + }, + { + "moduleLicense": "MIT License", + "moduleLicenseUrl": "https://opensource.org/licenses/MIT" + }, + { + "moduleLicense": "CC0-1.0", + "moduleLicenseUrl": "https://creativecommons.org/publicdomain/zero/1.0/legalcode" + }, + { + "moduleLicense": "Public-Domain" + }, + { + "moduleLicense": "Unicode/ICU License", + "moduleLicenseUrl": "https://raw.githubusercontent.com/unicode-org/icu/main/icu4c/LICENSE" + }, + { + "moduleLicense": "Creative Commons Legal Code", + "moduleVersion": "1.0.3", + "moduleName": "org.reactivestreams:reactive-streams" + }, + { + "moduleLicense": "Eclipse Public License - v 1.0", + "moduleVersion": "4.13.2", + "moduleName": "junit:junit" + } + ] +} \ No newline at end of file diff --git a/gradle/check-licenses.gradle b/gradle/check-licenses.gradle deleted file mode 100644 index 3939c191166..00000000000 --- a/gradle/check-licenses.gradle +++ /dev/null @@ -1,216 +0,0 @@ -/* - * Copyright ConsenSys AG. - * - * 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. - * - * SPDX-License-Identifier: Apache-2.0 - */ - -/** - * Check that the licenses of our 3rd parties are in our acceptedLicenses list. - * - * run it with "gradle checkLicenses" - * - * To add new accepted licenses you need to update this script. - * Some products may be available with multiple licenses. In this case you must update - * this script to add it in the downloadLicenses#licenses. - */ - -// Some parts of this code comes from Zipkin/https://github.com/openzipkin/zipkin/pull/852 -// Zipkin itself is under Apache License. - -/** - * The lists of the license we accept. - */ -ext.acceptedLicenses = [ - 'Apache License, Version 2.0', - 'BSD 3-Clause', - 'BSD License', - 'Bouncy Castle Licence', - 'CC0 1.0 Universal License', - 'Common Development and Distribution License 1.0', - 'Eclipse Public License 1.0', - 'Eclipse Public License - v 2.0', - 'MIT License', - 'Mozilla Public License 1.0', - 'Mozilla Public License Version 1.1', - 'Mozilla Public License Version 2.0', - 'Oracle Free Use Terms and Conditions (FUTC)', - 'Public Domain (CC0) License 1.0', - 'Public Domain', - 'Unicode/ICU License', - 'New BSD License' -]*.toLowerCase() - -/** - * This is the configuration we need for our licenses plugin: 'com.github.hierynomus.license' - * This plugin generates a list of dependencies. - */ -downloadLicenses { - includeProjectDependencies = false - reportByDependency = false - reportByLicenseType = true - dependencyConfiguration = 'runtimeClasspath' - excludeDependencies = [ - // only used for static analysis, not actually shipped - 'com.google.code.findbugs:jFormatString:3.0.0', - 'com.google.errorprone:javac:.*', - 'org.checkerframework:dataflow-shaded:.*', - 'org.checkerframework:dataflow-errorprone:.*', - ] - - ext.apache = license('Apache License, Version 2.0', 'http://opensource.org/licenses/Apache-2.0') - ext.bsd = license('BSD License', 'http://www.opensource.org/licenses/bsd-license.php') - ext.bsd3Clause = license('BSD 3-Clause', 'http://opensource.org/licenses/BSD-3-Clause') - ext.cc0 = license('Public Domain (CC0) License 1.0', 'https://creativecommons.org/publicdomain/zero/1.0') - ext.cddl = license('Common Development and Distribution License 1.0', 'http://opensource.org/licenses/CDDL-1.0') - ext.epl1 = license('Eclipse Public License 1.0', 'https://www.eclipse.org/legal/epl-v10.html') - ext.epl2 = license('Eclipse Public License - v 2.0', 'https://www.eclipse.org/legal/epl-v20.html') - ext.mit = license('MIT License', 'http://www.opensource.org/licenses/mit-license.php') - aliases = [ - (apache) : [ - 'Apache 2', - 'Apache 2.0', - 'Apache License 2.0', - 'Apache Software License - Version 2.0', - 'Apache Software License 2.0', - 'Apache v2', - 'Apache-2.0', - 'The Apache License, Version 2.0', - 'The Apache Software License, Version 2.0', - 'The Apache Software License, version 2.0', - license('', 'http://www.apache.org/licenses/LICENSE-2.0.txt') - ], - (bsd) : [ - 'BSD', - 'BSD-2-Clause', - 'BSD licence', - 'The BSD License', - ], - (bsd3Clause) : [ - '3-Clause BSD License', - 'BSD 3-Clause "New" or "Revised" License (BSD-3-Clause)', - 'BSD 3-Clause', - 'BSD Licence 3', - 'BSD License 3', - 'BSD-3-Clause', - 'Eclipse Distribution License - v 1.0', - 'Eclipse Distribution License (New BSD License)', - 'EDL 1.0', - 'New BSD License', - 'The BSD 3-Clause License', - license('', 'http://asm.ow2.org/license.html'), - license('BSD 3-Clause', 'http://www.scala-lang.org/license.html'), - license('BSD 3-clause', 'http://opensource.org/licenses/BSD-3-Clause'), - ], - (cc0) : [ - 'CC0' - ], - (cddl) : [ - 'CDDL 1.0', - 'CDDL 1.1', - 'Common Development and Distribution License (CDDL) v1.0', - 'CDDL + GPLv2 with classpath exception', - ], - (epl1) : [ - 'Eclipse Public License - Version 1.0', - 'Eclipse Public License - v 1.0', - 'Eclipse Public License 1.0 ', - ], - (epl2) : [ - 'Eclipse Public License - v 2.0', - 'Eclipse Public License version 2.0', - 'Eclipse Public License v2.0' - ], - (mit) : [ - 'MIT', - 'The MIT License', - 'The MIT License (MIT)', - 'SPDX-License-Identifier: MIT', - ], - ] - licenses = [ - (group('besu')) : apache, - (group('besu.ethereum.api')) : apache, - (group('besu.consensus')) : apache, - (group('besu.ethereum')) : apache, - (group('besu.metrics')) : apache, - (group('besu.plugins')) : apache, - (group('besu.services')) : apache, - - // JNA is dual licensed under Apache v2.0 or LGPL 2 licenses - // Explicitly declare that we are using the Apache v2.0 license - (group('net.java.dev.jna')) : apache, - - // RocksDB is dual licensed under Apache v2.0 or GPL 2 licenses - // Explicitly declare that we are using the Apache v2.0 license - (group('org.rocksdb')) : apache, - - // Logback is dual licensed under EPL v1.0 or LGPL v2.1 - // Explicitly declare that we are using the EPL v1.0 license - (group('ch.qos.logback')) : epl1, - - // JavaMail, JAXB, Glassfish and Java Servlet are dual licensed under CDDL 1.1 or GPL 2 w/ Classpath Exception - // Explicitly declare that we are using the CDDL 1.1 license - (group('com.sun.mail')) : cddl, - (group('javax.servlet')) : cddl, - (group('javax.xml.bind')) : cddl, - (group('org.glassfish')) : cddl, - - // javax.persistence is dual licensed under EPL 1.0 and EDL 1.0. - // Explicitly declare that we are using the EPL 1.0 license - (group('javax.persistence')) : epl1, - - // jnr-posix is released under a tri EPL v2.0/GPL/LGPL license - 'com.github.jnr:jnr-posix:3.1.15' : epl2, - - // io.netty:netty-tcnative-boringssl-static license markings are not machine readable. - // io.netty:netty-tcnative-classes license markings are not machine readable. - // Explicitly state Apache 2 License for license scanning. - 'io.netty:netty-tcnative-boringssl-static:2.0.46.Final' : apache, - 'io.netty:netty-tcnative-classes:2.0.46.Final' : apache, - - // ANTLR license markings are not all machine readable. - // Explicitly state BSD License for license scanning. - 'org.antlr:antlr-runtime:3.5.2': bsd, - 'org.antlr:ST4:4.3.1': bsd, - ] -} - -task lazyDownloadLicenses() { - if (gradle.startParameter.taskNames.contains('clean') || !file("$rootProject.buildDir/reports/license/license-dependency.xml").exists()) { - dependsOn ':downloadLicenses' - } -} - -task checkLicenses { - description "Verify that all dependencies use accepted licenses." - dependsOn ':lazyDownloadLicenses' - - def bads = "" - doLast { - def xml = new XmlParser().parse("${rootProject.buildDir}/reports/license/license-dependency.xml") - xml.each { license -> - if (!acceptedLicenses.contains((license.@name).toLowerCase())) { - def depStrings = [] - license.dependency.each { depStrings << it.text() } - bads = bads + depStrings + " => ${license.@name} \n" - } - } - if (bads != "") { - throw new GradleException("Some 3rd parties are using licenses not in our accepted licenses list:\n" + - bads + - "If it's a license acceptable for us, add it in the file check-licenses.gradle\n" + - "Be careful, some 3rd parties may accept multiple licenses.\n" + - "In this case, select the one you want to use by changing downloadLicenses.licenses\n" - ) - } - } -} diff --git a/gradle/license-normalizer-bundle.json b/gradle/license-normalizer-bundle.json new file mode 100644 index 00000000000..341b7ab5f62 --- /dev/null +++ b/gradle/license-normalizer-bundle.json @@ -0,0 +1,106 @@ +/** + * Copyright 2018 Evgeny Naumenko + * Copyright Hyperledger Besu contributors. + * + * 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. + */ +{ + "bundles" : [ + { "bundleName" : "Apache-1.1", "licenseName" : "Apache Software License, Version 1.1", "licenseUrl" : "https://www.apache.org/licenses/LICENSE-1.1" }, + { "bundleName" : "Apache-2.0", "licenseName" : "Apache License, Version 2.0", "licenseUrl" : "https://www.apache.org/licenses/LICENSE-2.0" }, + { "bundleName" : "0BSD", "licenseName" : "BSD Zero Clause License", "licenseUrl" : "https://opensource.org/licenses/0BSD" }, + { "bundleName" : "BSD-2-Clause", "licenseName" : "The 2-Clause BSD License", "licenseUrl" : "https://opensource.org/licenses/BSD-2-Clause" }, + { "bundleName" : "BSD-3-Clause", "licenseName" : "The 3-Clause BSD License", "licenseUrl" : "https://opensource.org/licenses/BSD-3-Clause" }, + { "bundleName" : "CC0-1.0", "licenseName" : "Creative Commons Legal Code", "licenseUrl" : "https://creativecommons.org/publicdomain/zero/1.0/legalcode" }, + { "bundleName" : "CDDL-1.0", "licenseName" : "COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0", "licenseUrl" : "https://oss.oracle.com/licenses/CDDL" }, + { "bundleName" : "CDDL-1.1", "licenseName" : "COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.1", "licenseUrl" : "https://oss.oracle.com/licenses/CDDL-1.1" }, + { "bundleName" : "CPL-1.0", "licenseName" : "Common Public License - v 1.0", "licenseUrl" : "https://www.eclipse.org/legal/cpl-v10.html" }, + { "bundleName" : "EPL-1.0", "licenseName" : "Eclipse Public License - v 1.0", "licenseUrl" : "http://www.eclipse.org/legal/epl-v10.html" }, + { "bundleName" : "EPL-2.0", "licenseName" : "Eclipse Public License - v 2.0", "licenseUrl" : "https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.txt" }, + { "bundleName" : "EDL-1.0", "licenseName" : "Eclipse Distribution License - v 1.0", "licenseUrl" : "https://www.eclipse.org/org/documents/edl-v10.html" }, + { "bundleName" : "GPL-1.0", "licenseName" : "GNU GENERAL PUBLIC LICENSE, Version 1", "licenseUrl" : "https://www.gnu.org/licenses/gpl-1.0" }, + { "bundleName" : "GPL-2.0-only", "licenseName" : "GNU GENERAL PUBLIC LICENSE, Version 2", "licenseUrl" : "https://www.gnu.org/licenses/gpl-2.0" }, + { "bundleName" : "GPL-3.0-only", "licenseName" : "GNU GENERAL PUBLIC LICENSE, Version 3", "licenseUrl" : "https://www.gnu.org/licenses/gpl-3.0" }, + { "bundleName" : "GPL-2.0 WITH Classpath-exception-2.0", "licenseName" : "GNU GENERAL PUBLIC LICENSE, Version 2 + Classpath Exception", "licenseUrl" : "https://openjdk.java.net/legal/gplv2+ce.html" }, + { "bundleName" : "LGPL-2.1-only", "licenseName" : "GNU LESSER GENERAL PUBLIC LICENSE, Version 2.1", "licenseUrl" : "https://www.gnu.org/licenses/lgpl-2.1" }, + { "bundleName" : "LGPL-3.0-only", "licenseName" : "GNU LESSER GENERAL PUBLIC LICENSE, Version 3", "licenseUrl" : "https://www.gnu.org/licenses/lgpl-3.0" }, + { "bundleName" : "MIT", "licenseName" : "MIT License", "licenseUrl" : "https://opensource.org/licenses/MIT" }, + { "bundleName" : "MPL-1.1", "licenseName" : "Mozilla Public License Version 1.1", "licenseUrl" : "https://www.mozilla.org/en-US/MPL/1.1" }, + { "bundleName" : "MPL-2.0", "licenseName" : "Mozilla Public License, Version 2.0", "licenseUrl" : "https://www.mozilla.org/en-US/MPL/2.0" }, + { "bundleName" : "Public-Domain", "licenseName" : "PUBLIC DOMAIN", "licenseUrl" : "" } + ], + "transformationRules" : [ + { "bundleName" : "0BSD", "licenseNamePattern" : "BSD Zero Clause License" }, + { "bundleName" : "0BSD", "licenseNamePattern" : "BSD$" }, + { "bundleName" : "0BSD", "licenseNamePattern" : "BSD( |-)clause.*" }, + { "bundleName" : "0BSD", "licenseNamePattern" : "(The )?BSD( |-)(l|L)icen(s|c)e.*" }, + { "bundleName" : "Apache-2.0", "licenseNamePattern" : ".*The Apache Software License, Version 2\\.0.*" }, + { "bundleName" : "Apache-2.0", "licenseNamePattern" : ".*?Apache( |-|_)2.*" }, + { "bundleName" : "Apache-2.0", "licenseNamePattern" : "ASL 2\\.0" }, + { "bundleName" : "Apache-2.0", "licenseNamePattern" : ".*Apache License,?( Version)? 2.*" }, + { "bundleName" : "Apache-2.0", "licenseUrlPattern" : ".*(www\\.)?opensource\\.org/licenses/Apache-2\\.0.*" }, + { "bundleName" : "Apache-2.0", "licenseUrlPattern" : ".*www\\.apache\\.org/licenses/LICENSE-2\\.0.*" }, + { "bundleName" : "LGPL-2.1-only", "licenseUrlPattern" : ".*www\\.gnu\\.org/licenses/old-licenses/lgpl-2\\.1\\.html" }, + { "bundleName" : "Apache-2.0", "licenseFileContentPattern" : ".*Apache License,?( Version)? 2.*" }, + { "bundleName" : "Apache-1.1", "licenseFileContentPattern" : ".*Apache Software License, Version 1\\.1.*" }, + { "bundleName" : "CC0-1.0", "licenseNamePattern" : "CC0(( |-)1(\\.0)?)?" }, + { "bundleName" : "CC0-1.0", "licenseUrlPattern" : ".*(www\\.)?creativecommons\\.org/publicdomain/zero/1\\.0/" }, + { "bundleName" : "CDDL-1.0", "licenseFileContentPattern" : ".*CDDL.*1\\.0" }, + { "bundleName" : "CDDL-1.0", "licenseUrlPattern" : ".*CDDL.*.?1\\.0" }, + { "bundleName" : "CDDL-1.1", "licenseUrlPattern" : ".*CDDL.*.?1\\.1" }, + { "bundleName" : "CDDL-1.0", "licenseNamePattern" : "Common Development and Distribution License( \\(CDDL\\),?)? (version )?(.?\\s?)?1\\.0" }, + { "bundleName" : "CDDL-1.1", "licenseNamePattern" : "Common Development and Distribution License( \\(CDDL\\),?)? (version )?(.?\\s?)?1\\.1" }, + { "bundleName" : "BSD-3-Clause", "licenseNamePattern" : ".*BSD( |-)3-clause.*" }, + { "bundleName" : "BSD-3-Clause", "licenseUrlPattern" : ".*(www\\.)?opensource\\.org/licenses/BSD-3-Clause" }, + { "bundleName" : "BSD-3-Clause", "licenseNamePattern" : ".*?(The )New BSD License.*" }, + { "bundleName" : "BSD-3-Clause", "licenseNamePattern" : ".*?Modified BSD License.*" }, + { "bundleName" : "BSD-2-Clause", "licenseNamePattern" : "BSD( |-)2-clause.*" }, + { "bundleName" : "BSD-2-Clause", "licenseUrlPattern" : ".*(www\\.)?opensource\\.org/licenses/BSD-2-Clause" }, + { "bundleName" : "BSD-2-Clause", "licenseUrlPattern" : ".*(www\\.)?opensource\\.org/licenses/bsd-license(\\.php)?" }, + { "bundleName" : "CDDL-1.0", "licenseNamePattern" : "Common Development and Distribution( License)?" }, + { "bundleName" : "CDDL-1.0", "licenseNamePattern" : "CDDL 1(\\.0)" }, + { "bundleName" : "CDDL-1.1", "licenseNamePattern" : "CDDL 1\\.1" }, + { "bundleName" : "CDDL-1.1", "licenseUrlPattern" : ".*(www\\.).opensource\\.org/licenses/CDDL-1\\.0" }, + { "bundleName" : "EPL-1.0", "licenseNamePattern" : "Eclipse Publish License.*(v|version)\\.?\\s?1(\\.?0)?" }, + { "bundleName" : "EPL-1.0", "licenseNamePattern" : "Eclipse Public License.*(v|version)\\.?\\s?1(\\.?0)?" }, + { "bundleName" : "EPL-2.0", "licenseNamePattern" : "Eclipse Public License.*(v|version)\\.?\\s?2(\\.?0)?" }, + { "bundleName" : "EPL-2.0", "licenseUrlPattern" : ".*(www\\.).opensource\\.org/licenses/EPL-2\\.0" }, + { "bundleName" : "EPL-2.0", "licenseUrlPattern" : ".*http.?://www\\.eclipse\\.org/legal/epl-.?2\\.?0.*" }, + { "bundleName" : "EPL-2.0", "licenseUrlPattern" : ".*http.?://www\\.eclipse\\.org/org.*/epl-.?2\\.?0.*" }, + { "bundleName" : "EPL-2.0", "licenseUrlPattern" : ".*http.?://projects\\.eclipse\\.org/.*/epl-.?2\\.?0.*" }, + { "bundleName" : "EDL-1.0", "licenseNamePattern" : "Eclipse Distribution License.*(v|version)\\.?\\s?1(\\.0)?" }, + { "bundleName" : "EDL-1.0", "licenseNamePattern" : "Eclipse Distribution License \\(New BSD License\\)" }, + { "bundleName" : "EDL-1.0", "licenseUrlPattern" : ".*http.?://(www\\.)?eclipse\\.org/org.*/edl-.?1\\.?0.*" }, + { "bundleName" : "GPL-2.0-only", "licenseUrlPattern" : ".*(www\\.)?opensource\\.org/licenses/GPL-2\\.0" }, + { "bundleName" : "GPL-2.0 WITH Classpath-exception-2.0", "licenseNamePattern" : "GNU General Public License, version 2.*classpath exception" }, + { "bundleName" : "GPL-2.0 WITH Classpath-exception-2.0", "licenseNamePattern" : "GNU General Public License, version 2.*cp?e" }, + { "bundleName" : "GPL-2.0 WITH Classpath-exception-2.0", "licenseNamePattern" : "GNU General Public License, version 2.*, with the classpath exception" }, + { "bundleName" : "GPL-2.0 WITH Classpath-exception-2.0", "licenseNamePattern" : "GPL2 w/ CPE" }, + { "bundleName" : "GPL-3.0-only", "licenseUrlPattern" : ".*(www\\.)?opensource\\.org/licenses/GPL-3\\.0" }, + { "bundleName" : "LGPL-2.1-only", "licenseUrlPattern" : ".*(www\\.)?opensource\\.org/licenses/LGPL-2\\.1" }, + { "bundleName" : "LGPL-2.1-only", "licenseUrlPattern" : ".*(www\\.)?gnu\\.org/licenses(/old-licenses)?/lgpl-2\\.1(\\.(html|txt))?" }, + { "bundleName" : "LGPL-2.1-only", "licenseNamePattern" : "LGPL 2\\.1" }, + { "bundleName" : "LGPL-2.1-only", "licenseNamePattern" : "LGPL.*(v|version)\\.?\\s?2\\.1" }, + { "bundleName" : "LGPL-2.1-only", "licenseUrlPattern" : ".*(www\\.)?repository.jboss.org/licenses/lgpl-2.1\\.txt" }, + { "bundleName" : "LGPL-3.0-only", "licenseUrlPattern" : ".*(www\\.).opensource\\.org/licenses/LGPL-3\\.0" }, + { "bundleName" : "LGPL-3.0-only", "licenseNamePattern" : "lgplv?3" }, + { "bundleName" : "LGPL-3.0-only", "licenseUrlPattern" : ".*(www\\.)?gnu\\.org/licenses(/old-licenses)?/lgpl(-3)?(\\.(html|txt))?" }, + { "bundleName" : "MIT", "licenseNamePattern" : "(The\\s)?MIT(\\slicen(c|s)e)?(\\s\\(MIT\\))?" }, + { "bundleName" : "MIT", "licenseUrlPattern" : ".*(www\\.)?opensource\\.org/licenses/MIT(\\.php)?" }, + { "bundleName" : "MPL-1.1", "licenseNamePattern" : "MPL 1\\.1" }, + { "bundleName" : "MPL-2.0", "licenseUrlPattern" : ".*(www\\.).opensource\\.org/licenses/MPL-2\\.0" }, + { "bundleName" : "Public-Domain", "licenseNamePattern" : "((public)\\s(domain)).*", "transformUrl" : false }, + { "bundleName" : "Public-Domain", "licenseFileContentPattern" : ".*(Creative)\\s(Commons).*", "transformUrl" : false }, + { "bundleName" : "Public-Domain", "licenseFileContentPattern" : ".*((Public)\\s(Domain)).*", "transformUrl" : false } + ] +} \ No newline at end of file diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml index 01ea0e02269..8265a2810c4 100644 --- a/gradle/verification-metadata.xml +++ b/gradle/verification-metadata.xml @@ -33,60 +33,54 @@ - - - + + + - - - - - - - - - - + + - - - + + + - - + + - - + + + + - - - + + + - - + + - - - + + + - - + + - - - + + + - - + + - - - + + + @@ -99,9 +93,14 @@ - - - + + + + + + + + @@ -124,14 +123,19 @@ + + + + + - - - + + + @@ -169,9 +173,19 @@ - - - + + + + + + + + + + + + + @@ -184,12 +198,19 @@ - - - + + + - - + + + + + + + + + @@ -213,6 +234,14 @@ + + + + + + + + @@ -220,17 +249,6 @@ - - - - - - - - - - - @@ -255,8 +273,13 @@ - - + + + + + + + @@ -266,17 +289,6 @@ - - - - - - - - - - - @@ -299,6 +311,14 @@ + + + + + + + + @@ -306,8 +326,13 @@ - - + + + + + + + @@ -317,8 +342,13 @@ - - + + + + + + + @@ -326,6 +356,11 @@ + + + + + @@ -337,17 +372,30 @@ + + + + + + + + - - - + + + - - + + + + + + + @@ -361,9 +409,9 @@ - - - + + + @@ -395,9 +443,17 @@ - - - + + + + + + + + + + + @@ -536,20 +592,27 @@ + + + + + - - - + + + - - + + + + - - + + @@ -563,6 +626,11 @@ + + + + + @@ -571,6 +639,11 @@ + + + + + @@ -640,11 +713,21 @@ + + + + + + + + + + @@ -692,11 +775,6 @@ - - - - - @@ -736,6 +814,11 @@ + + + + + @@ -744,6 +827,11 @@ + + + + + @@ -767,9 +855,6 @@ - - - @@ -779,6 +864,11 @@ + + + + + @@ -811,14 +901,6 @@ - - - - - - - - @@ -827,6 +909,11 @@ + + + + + @@ -835,6 +922,11 @@ + + + + + @@ -855,9 +947,9 @@ - - - + + + @@ -868,6 +960,11 @@ + + + + + @@ -876,6 +973,14 @@ + + + + + + + + @@ -900,6 +1005,14 @@ + + + + + + + + @@ -918,6 +1031,11 @@ + + + + + @@ -931,14 +1049,6 @@ - - - - - - - - @@ -947,21 +1057,45 @@ + + + + + + + + + + + + + + + + + + + - - - - - + + + + + + + + + + @@ -1139,12 +1273,12 @@ - - - + + + - - + + @@ -1155,6 +1289,14 @@ + + + + + + + + @@ -1166,14 +1308,6 @@ - - - - - - - - @@ -1190,9 +1324,9 @@ - - - + + + @@ -1237,6 +1371,11 @@ + + + + + @@ -1260,9 +1399,6 @@ - - - @@ -1272,6 +1408,22 @@ + + + + + + + + + + + + + + + + @@ -1305,6 +1457,14 @@ + + + + + + + + @@ -1313,6 +1473,19 @@ + + + + + + + + + + + + + @@ -1325,8 +1498,10 @@ - - + + + + @@ -1340,35 +1515,12 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - + + + - - + + @@ -1379,6 +1531,14 @@ + + + + + + + + @@ -1395,17 +1555,9 @@ - - - - - - - - - - - + + + @@ -1424,6 +1576,14 @@ + + + + + + + + @@ -1432,6 +1592,11 @@ + + + + + @@ -1453,6 +1618,11 @@ + + + + + @@ -1461,6 +1631,11 @@ + + + + + @@ -1474,19 +1649,6 @@ - - - - - - - - - - - - - @@ -1495,6 +1657,11 @@ + + + + + @@ -1543,6 +1710,11 @@ + + + + + @@ -1567,6 +1739,11 @@ + + + + + @@ -1639,6 +1816,11 @@ + + + + + @@ -1679,6 +1861,11 @@ + + + + + @@ -1692,6 +1879,11 @@ + + + + + @@ -1708,6 +1900,16 @@ + + + + + + + + + + @@ -1935,6 +2137,11 @@ + + + + + @@ -1945,6 +2152,11 @@ + + + + + @@ -2057,6 +2269,11 @@ + + + + + @@ -2071,6 +2288,11 @@ + + + + + @@ -2079,6 +2301,11 @@ + + + + + @@ -2138,6 +2365,14 @@ + + + + + + + + @@ -2193,6 +2428,14 @@ + + + + + + + + @@ -2215,6 +2458,14 @@ + + + + + + + + @@ -2226,6 +2477,14 @@ + + + + + + + + @@ -2248,6 +2507,14 @@ + + + + + + + + @@ -2281,6 +2548,14 @@ + + + + + + + + @@ -2292,6 +2567,14 @@ + + + + + + + + @@ -2303,6 +2586,14 @@ + + + + + + + + @@ -2310,9 +2601,6 @@ - - - @@ -2321,9 +2609,6 @@ - - - @@ -2332,8 +2617,13 @@ - - + + + + + + + @@ -2343,8 +2633,13 @@ - - + + + + + + + @@ -2455,6 +2750,11 @@ + + + + + @@ -2463,6 +2763,11 @@ + + + + + @@ -2479,6 +2784,11 @@ + + + + + @@ -2495,6 +2805,11 @@ + + + + + @@ -2519,17 +2834,19 @@ - - - + + + + + - - - + + + - - + + @@ -2686,6 +3003,16 @@ + + + + + + + + + + @@ -2702,6 +3029,11 @@ + + + + + @@ -2710,6 +3042,11 @@ + + + + + @@ -2720,6 +3057,11 @@ + + + + + @@ -2738,6 +3080,11 @@ + + + + + @@ -2772,6 +3119,11 @@ + + + + + @@ -2788,6 +3140,11 @@ + + + + + @@ -2796,6 +3153,11 @@ + + + + + @@ -2809,6 +3171,11 @@ + + + + + @@ -2880,17 +3247,17 @@ - - - + + + - - + + - - - + + + @@ -2945,6 +3312,11 @@ + + + + + @@ -2966,25 +3338,22 @@ - - - - - - + + + - - - + + + - - - + + + - - + + @@ -3077,6 +3446,11 @@ + + + + + @@ -3085,6 +3459,11 @@ + + + + + @@ -3095,6 +3474,11 @@ + + + + + @@ -3120,9 +3504,14 @@ - - - + + + + + + + + @@ -3143,14 +3532,6 @@ - - - - - - - - @@ -3159,6 +3540,19 @@ + + + + + + + + + + + + + @@ -3175,9 +3569,9 @@ - - - + + + @@ -3188,8 +3582,16 @@ - - + + + + + + + + + + @@ -3208,6 +3610,11 @@ + + + + + @@ -3218,11 +3625,6 @@ - - - - - @@ -3238,6 +3640,26 @@ + + + + + + + + + + + + + + + + + + + + @@ -3254,6 +3676,19 @@ + + + + + + + + + + + + + @@ -3262,14 +3697,22 @@ + + + + + + + + - - - + + + @@ -3277,9 +3720,9 @@ - - - + + + @@ -3292,14 +3735,6 @@ - - - - - - - - @@ -3308,14 +3743,12 @@ - - - + + + - - - - + + @@ -3352,12 +3785,12 @@ - - - + + + - - + + @@ -3365,11 +3798,21 @@ + + + + + + + + + + @@ -3378,11 +3821,21 @@ + + + + + + + + + + @@ -3391,6 +3844,11 @@ + + + + + @@ -3399,6 +3857,11 @@ + + + + + @@ -3407,6 +3870,11 @@ + + + + + @@ -3536,6 +4004,11 @@ + + + + + @@ -3560,6 +4033,11 @@ + + + + + @@ -3592,6 +4070,14 @@ + + + + + + + + @@ -3603,14 +4089,6 @@ - - - - - - - - @@ -3619,27 +4097,11 @@ - - - - - - - - - - - - - - - - @@ -3741,6 +4203,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -3950,12 +4468,12 @@ - - - + + + - - + + @@ -3963,9 +4481,25 @@ - - - + + + + + + + + + + + + + + + + + + + @@ -3984,14 +4518,44 @@ - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + + + + @@ -4026,6 +4590,214 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -4034,6 +4806,14 @@ + + + + + + + + @@ -4042,6 +4822,70 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -4058,6 +4902,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + @@ -4066,6 +4934,22 @@ + + + + + + + + + + + + + + + + @@ -4074,6 +4958,22 @@ + + + + + + + + + + + + + + + + @@ -4082,14 +4982,108 @@ - - - + + + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -4100,6 +5094,102 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -4113,6 +5203,11 @@ + + + + + @@ -4141,8 +5236,13 @@ - - + + + + + + + @@ -4166,6 +5266,11 @@ + + + + + @@ -4277,11 +5382,21 @@ + + + + + + + + + + @@ -4290,6 +5405,11 @@ + + + + + @@ -4361,6 +5481,11 @@ + + + + + @@ -4398,6 +5523,14 @@ + + + + + + + + @@ -4414,6 +5547,22 @@ + + + + + + + + + + + + + + + + @@ -4440,6 +5589,14 @@ + + + + + + + + @@ -4534,9 +5691,6 @@ - - - @@ -4576,44 +5730,60 @@ - - - + + + + + + + + + + + + + + + + + + + - - + + - - - + + + - - + + - - - + + + - - + + - - - + + + - - + + - - - + + + - - + + @@ -4672,6 +5842,22 @@ + + + + + + + + + + + + + + + + @@ -4683,6 +5869,14 @@ + + + + + + + + @@ -4702,6 +5896,14 @@ + + + + + + + + @@ -4721,6 +5923,14 @@ + + + + + + + + @@ -4758,23 +5968,12 @@ - - - - - - - - - - - @@ -4782,9 +5981,6 @@ - - - @@ -4812,9 +6008,6 @@ - - - @@ -4829,14 +6022,6 @@ - - - - - - - - @@ -4844,23 +6029,12 @@ - - - - - - - - - - - @@ -4868,8 +6042,13 @@ - - + + + + + + + @@ -4887,15 +6066,17 @@ - - - + + + + + @@ -4904,6 +6085,11 @@ + + + + + @@ -4912,11 +6098,21 @@ + + + + + + + + + + @@ -4930,6 +6126,11 @@ + + + + + @@ -4938,6 +6139,11 @@ + + + + + @@ -4959,6 +6165,14 @@ + + + + + + + + @@ -4967,6 +6181,11 @@ + + + + + @@ -4983,6 +6202,11 @@ + + + + + @@ -4996,6 +6220,11 @@ + + + + + @@ -5144,6 +6373,11 @@ + + + + + @@ -5152,6 +6386,14 @@ + + + + + + + + @@ -5160,6 +6402,16 @@ + + + + + + + + + + @@ -5168,19 +6420,34 @@ + + + + + + + + + + - - - + + + + + + + + @@ -5201,12 +6468,12 @@ - - - + + + - - + + @@ -5274,6 +6541,14 @@ + + + + + + + + @@ -5290,6 +6565,14 @@ + + + + + + + + @@ -5298,11 +6581,24 @@ + + + + + + + + + + + + + @@ -5319,6 +6615,11 @@ + + + + + @@ -5327,6 +6628,11 @@ + + + + + @@ -5359,6 +6665,11 @@ + + + + + @@ -5375,6 +6686,11 @@ + + + + + @@ -5383,6 +6699,11 @@ + + + + + @@ -5465,6 +6786,11 @@ + + + + + @@ -5473,6 +6799,11 @@ + + + + + @@ -5529,6 +6860,14 @@ + + + + + + + + @@ -5540,13 +6879,5 @@ - - - - - - - - diff --git a/settings.gradle b/settings.gradle index 3a1c245a7f6..15a0f8617d6 100644 --- a/settings.gradle +++ b/settings.gradle @@ -16,18 +16,6 @@ pluginManagement { repositories { - /* - * Temporary repository to host the improved version of the - * com.github.hierynomus.license plugin. Can be removed when an - * official version with the fix is release upstream - */ - maven { - url = uri('https://raw.githubusercontent.com/ConsenSys/license-gradle-plugin-fix-artifacts/main/') - content { - includeGroup('com.github.hierynomus.license') - includeGroup('com.hierynomus.gradle.plugins') - } - } gradlePluginPortal() } }