Bootstrap Maven as non-modular packages

Resolves: rhbz#1951482
This commit is contained in:
Mikolaj Izdebski 2021-06-08 20:17:56 +02:00
parent bed662a05a
commit 10b4236c19
4 changed files with 412 additions and 18 deletions

5
.gitignore vendored
View File

@ -8,3 +8,8 @@
/v20.0.tar.gz
/v24.0.tar.gz
/v25.0.tar.gz
/v28.0.tar.gz
/v28.1.tar.gz
/v28.2.tar.gz
/v29.0.tar.gz
/v30.1.tar.gz

View File

@ -0,0 +1,343 @@
From c5d3a8295d62ede99b5e4c7c6ef63c14819ec112 Mon Sep 17 00:00:00 2001
From: Marian Koncek <mkoncek@redhat.com>
Date: Mon, 18 Jan 2021 12:39:46 +0100
Subject: [PATCH] Remove multi-line annotations
---
.../guava/src/com/google/common/collect/CompactHashMap.java | 2 --
.../guava/src/com/google/common/collect/CompactHashSet.java | 2 --
android/guava/src/com/google/common/graph/Traverser.java | 3 ---
android/guava/src/com/google/common/primitives/Doubles.java | 4 ----
android/guava/src/com/google/common/primitives/Floats.java | 4 ----
android/guava/src/com/google/common/primitives/Ints.java | 4 ----
android/guava/src/com/google/common/primitives/Shorts.java | 4 ----
.../src/com/google/common/util/concurrent/ClosingFuture.java | 3 ---
.../common/util/concurrent/ListeningExecutorService.java | 4 ----
guava/src/com/google/common/collect/CompactHashMap.java | 2 --
guava/src/com/google/common/collect/CompactHashSet.java | 2 --
guava/src/com/google/common/graph/Traverser.java | 3 ---
guava/src/com/google/common/primitives/Doubles.java | 4 ----
guava/src/com/google/common/primitives/Floats.java | 4 ----
guava/src/com/google/common/primitives/Ints.java | 4 ----
guava/src/com/google/common/primitives/Shorts.java | 4 ----
.../src/com/google/common/util/concurrent/ClosingFuture.java | 3 ---
.../common/util/concurrent/ListeningExecutorService.java | 4 ----
18 files changed, 60 deletions(-)
diff --git a/android/guava/src/com/google/common/collect/CompactHashMap.java b/android/guava/src/com/google/common/collect/CompactHashMap.java
index 69e1412..e6cba86 100644
--- a/android/guava/src/com/google/common/collect/CompactHashMap.java
+++ b/android/guava/src/com/google/common/collect/CompactHashMap.java
@@ -105,8 +105,6 @@ class CompactHashMap<K, V> extends AbstractMap<K, V> implements Serializable {
* Maximum allowed false positive probability of detecting a hash flooding attack given random
* input.
*/
- (
- )
static final double HASH_FLOODING_FPP = 0.001;
/**
diff --git a/android/guava/src/com/google/common/collect/CompactHashSet.java b/android/guava/src/com/google/common/collect/CompactHashSet.java
index 43072b6..85debcd 100644
--- a/android/guava/src/com/google/common/collect/CompactHashSet.java
+++ b/android/guava/src/com/google/common/collect/CompactHashSet.java
@@ -122,8 +122,6 @@ class CompactHashSet<E> extends AbstractSet<E> implements Serializable {
* Maximum allowed false positive probability of detecting a hash flooding attack given random
* input.
*/
- (
- )
static final double HASH_FLOODING_FPP = 0.001;
/**
diff --git a/android/guava/src/com/google/common/graph/Traverser.java b/android/guava/src/com/google/common/graph/Traverser.java
index 7a40bdd..2b3f60c 100644
--- a/android/guava/src/com/google/common/graph/Traverser.java
+++ b/android/guava/src/com/google/common/graph/Traverser.java
@@ -60,9 +60,6 @@ import java.util.Set;
* @since 23.1
*/
-(
- "Call forGraph or forTree, passing a lambda or a Graph with the desired edges (built with"
- + " GraphBuilder)")
public abstract class Traverser<N> {
private final SuccessorsFunction<N> successorFunction;
diff --git a/android/guava/src/com/google/common/primitives/Doubles.java b/android/guava/src/com/google/common/primitives/Doubles.java
index d99300b..2cab6b8 100644
--- a/android/guava/src/com/google/common/primitives/Doubles.java
+++ b/android/guava/src/com/google/common/primitives/Doubles.java
@@ -208,8 +208,6 @@ public final class Doubles extends DoublesMethodsForWeb {
* the array
* @throws IllegalArgumentException if {@code array} is empty
*/
- (
- "Available in GWT! Annotation is to avoid conflict with GWT specialization of base class.")
public static double min(double... array) {
checkArgument(array.length > 0);
double min = array[0];
@@ -228,8 +226,6 @@ public final class Doubles extends DoublesMethodsForWeb {
* in the array
* @throws IllegalArgumentException if {@code array} is empty
*/
- (
- "Available in GWT! Annotation is to avoid conflict with GWT specialization of base class.")
public static double max(double... array) {
checkArgument(array.length > 0);
double max = array[0];
diff --git a/android/guava/src/com/google/common/primitives/Floats.java b/android/guava/src/com/google/common/primitives/Floats.java
index 6166813..aa293dc 100644
--- a/android/guava/src/com/google/common/primitives/Floats.java
+++ b/android/guava/src/com/google/common/primitives/Floats.java
@@ -205,8 +205,6 @@ public final class Floats extends FloatsMethodsForWeb {
* the array
* @throws IllegalArgumentException if {@code array} is empty
*/
- (
- "Available in GWT! Annotation is to avoid conflict with GWT specialization of base class.")
public static float min(float... array) {
checkArgument(array.length > 0);
float min = array[0];
@@ -225,8 +223,6 @@ public final class Floats extends FloatsMethodsForWeb {
* in the array
* @throws IllegalArgumentException if {@code array} is empty
*/
- (
- "Available in GWT! Annotation is to avoid conflict with GWT specialization of base class.")
public static float max(float... array) {
checkArgument(array.length > 0);
float max = array[0];
diff --git a/android/guava/src/com/google/common/primitives/Ints.java b/android/guava/src/com/google/common/primitives/Ints.java
index 511ec2b..f7f5ce3 100644
--- a/android/guava/src/com/google/common/primitives/Ints.java
+++ b/android/guava/src/com/google/common/primitives/Ints.java
@@ -219,8 +219,6 @@ public final class Ints extends IntsMethodsForWeb {
* the array
* @throws IllegalArgumentException if {@code array} is empty
*/
- (
- "Available in GWT! Annotation is to avoid conflict with GWT specialization of base class.")
public static int min(int... array) {
checkArgument(array.length > 0);
int min = array[0];
@@ -240,8 +238,6 @@ public final class Ints extends IntsMethodsForWeb {
* in the array
* @throws IllegalArgumentException if {@code array} is empty
*/
- (
- "Available in GWT! Annotation is to avoid conflict with GWT specialization of base class.")
public static int max(int... array) {
checkArgument(array.length > 0);
int max = array[0];
diff --git a/android/guava/src/com/google/common/primitives/Shorts.java b/android/guava/src/com/google/common/primitives/Shorts.java
index f07c59d..7ebc7de 100644
--- a/android/guava/src/com/google/common/primitives/Shorts.java
+++ b/android/guava/src/com/google/common/primitives/Shorts.java
@@ -218,8 +218,6 @@ public final class Shorts extends ShortsMethodsForWeb {
* the array
* @throws IllegalArgumentException if {@code array} is empty
*/
- (
- "Available in GWT! Annotation is to avoid conflict with GWT specialization of base class.")
public static short min(short... array) {
checkArgument(array.length > 0);
short min = array[0];
@@ -239,8 +237,6 @@ public final class Shorts extends ShortsMethodsForWeb {
* in the array
* @throws IllegalArgumentException if {@code array} is empty
*/
- (
- "Available in GWT! Annotation is to avoid conflict with GWT specialization of base class.")
public static short max(short... array) {
checkArgument(array.length > 0);
short max = array[0];
diff --git a/android/guava/src/com/google/common/util/concurrent/ClosingFuture.java b/android/guava/src/com/google/common/util/concurrent/ClosingFuture.java
index f1d1250..ca89d9d 100644
--- a/android/guava/src/com/google/common/util/concurrent/ClosingFuture.java
+++ b/android/guava/src/com/google/common/util/concurrent/ClosingFuture.java
@@ -1203,9 +1203,6 @@ public final class ClosingFuture<V> {
* .closing(executor);
* }</pre>
*/
- // TODO(cpovirk): Use simple name instead of fully qualified after we stop building with JDK 8.
- @com.google.errorprone.annotations.DoNotMock(
- "Use ClosingFuture.whenAllSucceed() or .whenAllComplete() instead.")
public static class Combiner {
private final CloseableList closeables = new CloseableList();
diff --git a/android/guava/src/com/google/common/util/concurrent/ListeningExecutorService.java b/android/guava/src/com/google/common/util/concurrent/ListeningExecutorService.java
index 241242a..6ada4e9 100644
--- a/android/guava/src/com/google/common/util/concurrent/ListeningExecutorService.java
+++ b/android/guava/src/com/google/common/util/concurrent/ListeningExecutorService.java
@@ -32,10 +32,6 @@ import java.util.concurrent.TimeUnit;
* @author Chris Povirk
* @since 10.0
*/
-(
- "Use TestingExecutors.sameThreadScheduledExecutor, or wrap a real Executor from "
- + "java.util.concurrent.Executors with MoreExecutors.listeningDecorator")
-
public interface ListeningExecutorService extends ExecutorService {
/**
* @return a {@code ListenableFuture} representing pending completion of the task
diff --git a/guava/src/com/google/common/collect/CompactHashMap.java b/guava/src/com/google/common/collect/CompactHashMap.java
index fbf1d4d..8a88a9f 100644
--- a/guava/src/com/google/common/collect/CompactHashMap.java
+++ b/guava/src/com/google/common/collect/CompactHashMap.java
@@ -109,8 +109,6 @@ class CompactHashMap<K, V> extends AbstractMap<K, V> implements Serializable {
* Maximum allowed false positive probability of detecting a hash flooding attack given random
* input.
*/
- (
- )
static final double HASH_FLOODING_FPP = 0.001;
/**
diff --git a/guava/src/com/google/common/collect/CompactHashSet.java b/guava/src/com/google/common/collect/CompactHashSet.java
index 9f6b3b9..7237175 100644
--- a/guava/src/com/google/common/collect/CompactHashSet.java
+++ b/guava/src/com/google/common/collect/CompactHashSet.java
@@ -126,8 +126,6 @@ class CompactHashSet<E> extends AbstractSet<E> implements Serializable {
* Maximum allowed false positive probability of detecting a hash flooding attack given random
* input.
*/
- (
- )
static final double HASH_FLOODING_FPP = 0.001;
/**
diff --git a/guava/src/com/google/common/graph/Traverser.java b/guava/src/com/google/common/graph/Traverser.java
index 7a40bdd..2b3f60c 100644
--- a/guava/src/com/google/common/graph/Traverser.java
+++ b/guava/src/com/google/common/graph/Traverser.java
@@ -60,9 +60,6 @@ import java.util.Set;
* @since 23.1
*/
-(
- "Call forGraph or forTree, passing a lambda or a Graph with the desired edges (built with"
- + " GraphBuilder)")
public abstract class Traverser<N> {
private final SuccessorsFunction<N> successorFunction;
diff --git a/guava/src/com/google/common/primitives/Doubles.java b/guava/src/com/google/common/primitives/Doubles.java
index 8317163..3b157ba 100644
--- a/guava/src/com/google/common/primitives/Doubles.java
+++ b/guava/src/com/google/common/primitives/Doubles.java
@@ -210,8 +210,6 @@ public final class Doubles extends DoublesMethodsForWeb {
* the array
* @throws IllegalArgumentException if {@code array} is empty
*/
- (
- "Available in GWT! Annotation is to avoid conflict with GWT specialization of base class.")
public static double min(double... array) {
checkArgument(array.length > 0);
double min = array[0];
@@ -230,8 +228,6 @@ public final class Doubles extends DoublesMethodsForWeb {
* in the array
* @throws IllegalArgumentException if {@code array} is empty
*/
- (
- "Available in GWT! Annotation is to avoid conflict with GWT specialization of base class.")
public static double max(double... array) {
checkArgument(array.length > 0);
double max = array[0];
diff --git a/guava/src/com/google/common/primitives/Floats.java b/guava/src/com/google/common/primitives/Floats.java
index 7578aa8..60a6da3 100644
--- a/guava/src/com/google/common/primitives/Floats.java
+++ b/guava/src/com/google/common/primitives/Floats.java
@@ -205,8 +205,6 @@ public final class Floats extends FloatsMethodsForWeb {
* the array
* @throws IllegalArgumentException if {@code array} is empty
*/
- (
- "Available in GWT! Annotation is to avoid conflict with GWT specialization of base class.")
public static float min(float... array) {
checkArgument(array.length > 0);
float min = array[0];
@@ -225,8 +223,6 @@ public final class Floats extends FloatsMethodsForWeb {
* in the array
* @throws IllegalArgumentException if {@code array} is empty
*/
- (
- "Available in GWT! Annotation is to avoid conflict with GWT specialization of base class.")
public static float max(float... array) {
checkArgument(array.length > 0);
float max = array[0];
diff --git a/guava/src/com/google/common/primitives/Ints.java b/guava/src/com/google/common/primitives/Ints.java
index f2a0cad..0e4ea1f 100644
--- a/guava/src/com/google/common/primitives/Ints.java
+++ b/guava/src/com/google/common/primitives/Ints.java
@@ -221,8 +221,6 @@ public final class Ints extends IntsMethodsForWeb {
* the array
* @throws IllegalArgumentException if {@code array} is empty
*/
- (
- "Available in GWT! Annotation is to avoid conflict with GWT specialization of base class.")
public static int min(int... array) {
checkArgument(array.length > 0);
int min = array[0];
@@ -242,8 +240,6 @@ public final class Ints extends IntsMethodsForWeb {
* in the array
* @throws IllegalArgumentException if {@code array} is empty
*/
- (
- "Available in GWT! Annotation is to avoid conflict with GWT specialization of base class.")
public static int max(int... array) {
checkArgument(array.length > 0);
int max = array[0];
diff --git a/guava/src/com/google/common/primitives/Shorts.java b/guava/src/com/google/common/primitives/Shorts.java
index f07c59d..7ebc7de 100644
--- a/guava/src/com/google/common/primitives/Shorts.java
+++ b/guava/src/com/google/common/primitives/Shorts.java
@@ -218,8 +218,6 @@ public final class Shorts extends ShortsMethodsForWeb {
* the array
* @throws IllegalArgumentException if {@code array} is empty
*/
- (
- "Available in GWT! Annotation is to avoid conflict with GWT specialization of base class.")
public static short min(short... array) {
checkArgument(array.length > 0);
short min = array[0];
@@ -239,8 +237,6 @@ public final class Shorts extends ShortsMethodsForWeb {
* in the array
* @throws IllegalArgumentException if {@code array} is empty
*/
- (
- "Available in GWT! Annotation is to avoid conflict with GWT specialization of base class.")
public static short max(short... array) {
checkArgument(array.length > 0);
short max = array[0];
diff --git a/guava/src/com/google/common/util/concurrent/ClosingFuture.java b/guava/src/com/google/common/util/concurrent/ClosingFuture.java
index 0a867aa..fdb3887 100644
--- a/guava/src/com/google/common/util/concurrent/ClosingFuture.java
+++ b/guava/src/com/google/common/util/concurrent/ClosingFuture.java
@@ -1201,9 +1201,6 @@ public final class ClosingFuture<V> {
* .closing(executor);
* }</pre>
*/
- // TODO(cpovirk): Use simple name instead of fully qualified after we stop building with JDK 8.
- @com.google.errorprone.annotations.DoNotMock(
- "Use ClosingFuture.whenAllSucceed() or .whenAllComplete() instead.")
public static class Combiner {
private final CloseableList closeables = new CloseableList();
diff --git a/guava/src/com/google/common/util/concurrent/ListeningExecutorService.java b/guava/src/com/google/common/util/concurrent/ListeningExecutorService.java
index 241242a..6ada4e9 100644
--- a/guava/src/com/google/common/util/concurrent/ListeningExecutorService.java
+++ b/guava/src/com/google/common/util/concurrent/ListeningExecutorService.java
@@ -32,10 +32,6 @@ import java.util.concurrent.TimeUnit;
* @author Chris Povirk
* @since 10.0
*/
-(
- "Use TestingExecutors.sameThreadScheduledExecutor, or wrap a real Executor from "
- + "java.util.concurrent.Executors with MoreExecutors.listeningDecorator")
-
public interface ListeningExecutorService extends ExecutorService {
/**
* @return a {@code ListenableFuture} representing pending completion of the task
--
2.29.2

View File

@ -1,6 +1,12 @@
# Workaround for rhbz#1969370: __bootstrap macro is not defined in
# CentOS Stream, See https://bugzilla.redhat.com/1969370
%global __bootstrap ~bootstrap
%bcond_without bootstrap
Name: guava
Version: 25.0
Release: 11%{?dist}
Version: 30.1
Release: 3%{?dist}
Summary: Google Core Libraries for Java
# Most of the code is under ASL 2.0
# Few classes are under CC0, grep for creativecommons
@ -10,10 +16,17 @@ BuildArch: noarch
Source0: https://github.com/google/guava/archive/v%{version}.tar.gz
BuildRequires: maven-local
BuildRequires: mvn(com.google.code.findbugs:jsr305)
Patch1: 0001-Remove-multi-line-annotations.patch
BuildRequires: maven-local-openjdk8
%if %{with bootstrap}
BuildRequires: javapackages-bootstrap
%else
BuildRequires: %{?module_prefix}mvn(com.google.code.findbugs:jsr305)
BuildRequires: mvn(junit:junit)
BuildRequires: mvn(org.apache.felix:maven-bundle-plugin)
BuildRequires: mvn(org.apache.maven.plugins:maven-enforcer-plugin)
%endif
%description
Guava is a suite of core and expanded libraries that include
@ -23,11 +36,7 @@ This project is a complete packaging of all the Guava libraries
into a single jar. Individual portions of Guava can be used
by downloading the appropriate module and its dependencies.
%package javadoc
Summary: Javadoc for %{name}
%description javadoc
API documentation for %{name}.
%{?javadoc_package}
%package testlib
Summary: The guava-testlib artifact
@ -40,12 +49,15 @@ guava-testlib provides additional functionality for conveninent unit testing
find . -name '*.jar' -delete
# drop unnecessary dependency on parent POM
%pom_remove_parent
%pom_remove_parent guava-bom
%pom_disable_module guava-gwt
%pom_disable_module guava-tests
%pom_xpath_inject pom:modules "<module>futures/failureaccess</module>"
%pom_xpath_inject pom:parent "<relativePath>../..</relativePath>" futures/failureaccess
%pom_xpath_set pom:parent/pom:version %{version}-jre futures/failureaccess
%pom_remove_plugin -r :animal-sniffer-maven-plugin
# Downloads JDK source for doc generation
%pom_remove_plugin :maven-dependency-plugin guava
@ -59,27 +71,36 @@ find . -name '*.jar' -delete
%pom_xpath_inject /pom:project/pom:build/pom:plugins/pom:plugin/pom:configuration/pom:instructions "<_nouses>true</_nouses>" guava/pom.xml
%pom_remove_dep -r :animal-sniffer-annotations
%pom_remove_dep -r :error_prone_annotations
%pom_remove_dep -r :j2objc-annotations
%pom_remove_dep -r org.checkerframework:
%pom_remove_dep -r :listenablefuture
annotations=$(
find -name '*.java' \
| xargs fgrep -h \
-e 'import com.google.j2objc.annotations' \
-e 'import com.google.errorprone.annotation' \
-e 'import com.google.errorprone.annotations' \
-e 'import com.google.common.annotations' \
-e 'import org.codehaus.mojo.animal_sniffer' \
-e 'import org.checkerframework' \
| sort -u \
| sed 's/.*\.\([^.]*\);/\1/' \
| paste -sd\|
)
# guava started using quite a few annotation libraries for code quality, which
# we don't have. This ugly regex is supposed to remove their usage from the code
find -name '*.java' | xargs sed -ri \
"s/^import .*\.($annotations);//;s/@($annotations)"'\>\s*(\((("[^"]*")|([^)]*))\))?//g'
%patch1 -p1
%mvn_package "com.google.guava:failureaccess" guava
%mvn_package "com.google.guava:guava-bom" __noinstall
%build
# Tests fail on Koji due to insufficient memory,
# see https://bugzilla.redhat.com/show_bug.cgi?id=1332971
@ -92,18 +113,25 @@ find -name '*.java' | xargs sed -ri \
%doc CONTRIBUTORS README*
%license COPYING
%files javadoc -f .mfiles-javadoc
%license COPYING
%files testlib -f .mfiles-guava-testlib
%changelog
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 25.0-11
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
* Tue Jun 08 2021 Mikolaj Izdebski <mizdebsk@redhat.com> - 30.1-3
- Bootstrap Maven for CentOS Stream 9
* Mon May 17 2021 Mikolaj Izdebski <mizdebsk@redhat.com> - 30.1-2
- Bootstrap build
- Non-bootstrap build
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 25.0-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Tue Jan 26 2021 Marian Koncek <mkoncek@redhat.com> - 30.1-1
- Update to upstream version 30.1
* Fri Sep 18 2020 Marian Koncek <mkoncek@redhat.com> - 29.0-1
- Update to upstream version 29.0
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 25.0-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
@ -116,9 +144,27 @@ find -name '*.java' | xargs sed -ri \
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 25.0-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Sat Jan 25 2020 Mikolaj Izdebski <mizdebsk@redhat.com> - 28.2-2
- Build with OpenJDK 8
* Fri Jan 24 2020 Marian Koncek <mkoncek@redhat.com> - 28.2-1
- Update to upstream version 28.2
* Tue Nov 05 2019 Mikolaj Izdebski <mizdebsk@redhat.com> - 28.1-2
- Mass rebuild for javapackages-tools 201902
* Mon Sep 02 2019 Marian Koncek <mkoncek@redhat.com> - 28.1-1
- Update to upstream version 28.1
* Thu Aug 01 2019 Marian Koncek <mkoncek@redhat.com> - 28.0-1
- Update to upstream version 28.0
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 25.0-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Fri May 24 2019 Mikolaj Izdebski <mizdebsk@redhat.com> - 25.0-4
- Mass rebuild for javapackages-tools 201901
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 25.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild

View File

@ -1 +1 @@
SHA512 (v25.0.tar.gz) = d846d18b336169b2d07ee0ac5109000e4d5e6534051200b5d525b9294f41e44366483e79e2adfb59a8a45603601e8e86e9347eb2b2fd955708031fe7eedfaf26
SHA512 (v30.1.tar.gz) = 0f8fa73414cf844a853ffc551f7ef808cd1f41ae9978a9b4261660ac039c0966448973f7c946efd33a6ab5d3995ef113107db1a7806cd5586473ed9434afc7b3