Repository: hbase Updated Branches: refs/heads/master 73e945670 -> 8e100628a
HBASE-16712 fix mvn hadoop-3.0 profile for mvn install - Handles licenses for transitive dependencies introduced by Hadoop 3 - Forces dependency on hadoop 3.0.0-alpha1 instead of 3.0.0-SNAPSHOT Project: http://git-wip-us.apache.org/repos/asf/hbase/repo Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/8e100628 Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/8e100628 Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/8e100628 Branch: refs/heads/master Commit: 8e100628a45028365486e47858dad786cebb49b9 Parents: 73e9456 Author: Jonathan M Hsieh <jmhs...@apache.org> Authored: Mon Sep 26 12:15:35 2016 -0700 Committer: Jonathan M Hsieh <jmhs...@apache.org> Committed: Mon Oct 17 14:58:52 2016 -0700 ---------------------------------------------------------------------- .../src/main/resources/META-INF/LICENSE.vm | 4 +- .../src/main/resources/META-INF/NOTICE.vm | 23 ++ .../src/main/resources/supplemental-models.xml | 224 ++++++++++++++++++- pom.xml | 2 +- 4 files changed, 250 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hbase/blob/8e100628/hbase-resource-bundle/src/main/resources/META-INF/LICENSE.vm ---------------------------------------------------------------------- diff --git a/hbase-resource-bundle/src/main/resources/META-INF/LICENSE.vm b/hbase-resource-bundle/src/main/resources/META-INF/LICENSE.vm index 31e508f..688310f 100644 --- a/hbase-resource-bundle/src/main/resources/META-INF/LICENSE.vm +++ b/hbase-resource-bundle/src/main/resources/META-INF/LICENSE.vm @@ -1561,7 +1561,9 @@ You can redistribute it and/or modify it under either the terms of the GPL ## Whitelist of licenses that it's safe to not aggregate as above. ## Note that this doesn't include ALv2 or the aforementioned aggregate ## license mentions. -#set($non_aggregate_fine = [ 'Public Domain', 'New BSD license', 'BSD license', 'Mozilla Public License Version 2.0' ]) +## +## See this FAQ link for justifications: https://www.apache.org/legal/resolved.html +#set($non_aggregate_fine = [ 'Public Domain', 'New BSD license', 'BSD license', 'Mozilla Public License Version 2.0', 'Creative Commons Attribution License, Version 2.5', 'MPL 1.1']) ## include LICENSE sections for anything not under ASL2.0 #foreach( ${dep} in ${projects} ) ## if there are no licenses we'll fail the build later, so http://git-wip-us.apache.org/repos/asf/hbase/blob/8e100628/hbase-resource-bundle/src/main/resources/META-INF/NOTICE.vm ---------------------------------------------------------------------- diff --git a/hbase-resource-bundle/src/main/resources/META-INF/NOTICE.vm b/hbase-resource-bundle/src/main/resources/META-INF/NOTICE.vm index 368e847..53fb51e 100644 --- a/hbase-resource-bundle/src/main/resources/META-INF/NOTICE.vm +++ b/hbase-resource-bundle/src/main/resources/META-INF/NOTICE.vm @@ -272,6 +272,29 @@ JRuby's licence. #if(${dep.artifactId.equals("jruby-complete")}) #set($jruby=true) #end +#if( ${dep.licenses.isEmpty()} ) +ERROR: This product includes ${dep.name} which has no licenses! +Revert the change if invalid or if intentional add license info to supplemental-models.xml + +<groupId>${dep.groupId}</groupId> +<artifactId>${dep.artifactId}</artifactId> +<version>${dep.version}</version> + +maven central search +g:${dep.groupId} AND a:${dep.artifactId} AND v:${dep.version} + +project website +${dep.url} +project source +${dep.scm.url} + + + +## fail the template. If you're looking at the source NOTICE.vm +## file based on a stacktrace or exception message, you need to find +## the generated NOTICE file that has the actual dependency info printed. +${dep.license[0]} +#end #if( !(${dep.licenses[0].name.contains("BSD")} || ${dep.licenses[0].name.contains("MIT")}) ) #if( !(${dep.licenses[0].name.equals("Public Domain")}) ) #if( !(${dep.licenses[0].name.contains("Apache Software License, Version 2.0")}) ) http://git-wip-us.apache.org/repos/asf/hbase/blob/8e100628/hbase-resource-bundle/src/main/resources/supplemental-models.xml ---------------------------------------------------------------------- diff --git a/hbase-resource-bundle/src/main/resources/supplemental-models.xml b/hbase-resource-bundle/src/main/resources/supplemental-models.xml index 0979b5f..982a087 100644 --- a/hbase-resource-bundle/src/main/resources/supplemental-models.xml +++ b/hbase-resource-bundle/src/main/resources/supplemental-models.xml @@ -644,6 +644,21 @@ under the License. </project> </supplement> <supplement> + <project> <!-- hadoop.profile=3.0 from hadoop-3.0.0-alpha1 --> + <groupId>org.apache.commons</groupId> + <artifactId>commons-csv</artifactId> + <version>1.0</version> + <licenses> + <license> + <name>Apache License, Version 2.0</name> + <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> + <distribution>repo</distribution> + </license> + </licenses> + </project> + </supplement> + + <supplement> <project> <groupId>org.apache.commons</groupId> <artifactId>commons-math</artifactId> @@ -714,6 +729,21 @@ under the License. </project> </supplement> <supplement> + <project> <!-- hadoop.profile=3.0 from hadoop-3.0.0-alpha1 --> + <groupId>org.apache.curator</groupId> + <artifactId>curator-test</artifactId> + <version>2.7.1</version> + + <licenses> + <license> + <name>Apache License, Version 2.0</name> + <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> + <distribution>repo</distribution> + </license> + </licenses> + </project> + </supplement> + <supplement> <project> <groupId>org.apache.directory.api</groupId> <artifactId>api-asn1-api</artifactId> @@ -783,6 +813,21 @@ under the License. </licenses> </project> </supplement> + <supplement> + <project> <!-- hadoop.profile=3.0 from hadoop-3.0.0-alpha1 --> + <groupId>org.apache.htrace</groupId> + <artifactId>htrace-core4</artifactId> + <version>4.0.1-incubating</version> + <licenses> + <license> + <name>Apache License, Version 2.0</name> + <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> + <distribution>repo</distribution> + </license> + </licenses> + </project> + </supplement> + <!-- Used by Hadoop 2.6 --> <supplement> <project> @@ -980,6 +1025,7 @@ under the License. </licenses> </project> </supplement> + <!-- Ambiguous license names in server and not in client --> <supplement> <project> @@ -1052,7 +1098,7 @@ under the License. </project> </supplement> <supplement> - <project> + <project> <groupId>io.dropwizard.metrics</groupId> <artifactId>metrics-core</artifactId> @@ -1082,6 +1128,143 @@ Copyright 2006 Envoi Solutions LLC </licenses> </project> </supplement> + <supplement> + <project> <!-- hadoop.profile=3.0 from hadoop-3.0.0-alpha1 --> + <groupId>com.codahale.metrics</groupId> + <artifactId>metrics-core</artifactId> + <version>3.0.1</version> + <licenses> + <license> + <name>Apache License, Version 2.0</name> + <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> + <distribution>repo</distribution> + </license> + </licenses> + </project> + </supplement> + <supplement> + <project> <!-- hadoop.profile=3.0 from hadoop-3.0.0-alpha1 --> + <groupId>com.nimbusds</groupId> + <artifactId>nimbus-jose-jwt</artifactId> + <version>3.9</version> + <licenses> + <license> + <name>Apache License, Version 2.0</name> + <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> + <distribution>repo</distribution> + </license> + </licenses> + </project> + </supplement> + <supplement> + <project> <!-- hadoop.profile=3.0 from hadoop-3.0.0-alpha1 --> + <groupId>com.squareup.okhttp</groupId> + <artifactId>okhttp</artifactId> + <version>2.4.0</version> + <licenses> + <license> + <name>Apache License, Version 2.0</name> + <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> + <distribution>repo</distribution> + </license> + </licenses> + </project> + </supplement> + <supplement> + <project> <!-- hadoop.profile=3.0 from hadoop-3.0.0-alpha1 --> + <groupId>com.squareup.okio</groupId> + <artifactId>okio</artifactId> + <version>1.4.0</version> + <licenses> + <license> + <name>Apache License, Version 2.0</name> + <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> + <distribution>repo</distribution> + </license> + </licenses> + </project> + </supplement> + <supplement> + <project> <!-- hadoop.profile=3.0 from hadoop-3.0.0-alpha1 --> + <groupId>com.twitter</groupId> + <artifactId>hpack</artifactId> + <version>0.11.0</version> + <licenses> + <license> + <name>Apache License, Version 2.0</name> + <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> + <distribution>repo</distribution> + </license> + </licenses> + </project> + </supplement> + <supplement> + <project> <!-- hadoop.profile=3.0 from hadoop-3.0.0-alpha1 --> + <groupId>net.minidev</groupId> + <artifactId>json-smart</artifactId> + <version>1.1.1</version> + <licenses> + <license> + <name>Apache License, Version 2.0</name> + <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> + <distribution>repo</distribution> + </license> + </licenses> + </project> + </supplement> + + <supplement> + <project> <!-- hadoop.profile=3.0 from hadoop-3.0.0-alpha1 --> + <groupId>de.ruedigermoeller</groupId> + <artifactId>fst</artifactId> + <version>2.24</version> + <!-- versions 2.17+ are ASFv2 though pom says LGPL 2.1 until 2.45+ --> + <!-- https://github.com/RuedigerMoeller/fast-serialization/blob/master/LICENSE.md --> + <!-- https://github.com/RuedigerMoeller/fast-serialization/commit/526dd4#diff-600376--> + + <licenses> + <license> + <name>Apache License, Version 2.0</name> + <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> + <distribution>repo</distribution> + </license> + </licenses> + </project> + </supplement> + + <supplement> + <project> <!-- hadoop.profile=3.0 from hadoop-3.0.0-alpha1 --> + <groupId>org.objenesis</groupId> + <artifactId>objenesis</artifactId> + <version>2.1</version> + <licenses> + <license> + <name>Apache License, Version 2.0</name> + <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> + <distribution>repo</distribution> + </license> + </licenses> + </project> + </supplement> + + <!-- xercesImpl is necessary when using -Dhadoop.profile=3.0 due to a bug in maven. (last tested with mvn 3.3.9) + See HBASE-16712 for more details.--> + <supplement> + <project> + <groupId>xerces</groupId> + <artifactId>xercesImpl</artifactId> + <version>2.9.1</version> + <licenses> + <license> + <name>Apache License, Version 2.0</name> + <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> + <distribution>repo</distribution> + </license> + </licenses> + </project> + </supplement> + + <!-- Permissive licenses that need text in LICENSE --> <supplement> <project> @@ -2047,4 +2230,43 @@ Copyright (c) 2007-2011 The JRuby project </licenses> </project> </supplement> + + <supplement> + <project> + <groupId>net.jcip</groupId> + <artifactId>jcip-annotations</artifactId> + <version>1.0</version> + <organization> + <name>Brian Goetz and Tim Peierls</name> + <url>http://www.jcip.net</url> + </organization> + <licenses> + <license> + <name>Creative Commons Attribution License, Version 2.5</name> + <url>http://creativecommons.org/licenses/by/2.5</url> + <distribution>repo</distribution> + </license> + </licenses> + </project> + </supplement> + <supplement> + <project> + <groupId>com.google.re2j</groupId> + <artifactId>re2j</artifactId> + <version>1.0</version> + + <organization> + <name>The Go Authors</name> + <url>https://github.com/google/re2j</url> + </organization> + <licenses> + <license> + <name>BSD license</name> <!-- the Go license is BDS 3 clause verbatim --> + <url>https://github.com/google/re2j/blob/master/LICENSE</url> + <distribution>repo</distribution> + </license> + </licenses> + </project> + </supplement> + </supplementalDataModels> http://git-wip-us.apache.org/repos/asf/hbase/blob/8e100628/pom.xml ---------------------------------------------------------------------- diff --git a/pom.xml b/pom.xml index e70fa17..35b9708 100644 --- a/pom.xml +++ b/pom.xml @@ -1178,7 +1178,7 @@ <java.min.version>${compileSource}</java.min.version> <!-- Dependencies --> <hadoop-two.version>2.7.1</hadoop-two.version> - <hadoop-three.version>3.0.0-SNAPSHOT</hadoop-three.version> + <hadoop-three.version>3.0.0-alpha1</hadoop-three.version> <!-- These must be defined here for downstream build tools that don't look at profiles. They ought to match the values found in our default hadoop profile, which is currently "hadoop-2.0". See HBASE-15925 for more info. -->