From c02835027f5c217fc6dcaf39f2fb7098862c0e5b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrian=20Schr=C3=B6ter?= Date: Mon, 14 Oct 2024 14:25:48 +0200 Subject: [PATCH] Sync from SUSE:ALP:Source:Standard:1.0 guava revision 2949bdcc5db40a2ec1add39db5ffbd19 --- .gitattributes | 23 +++++++ guava-build.tar.xz | 3 + guava.changes | 162 +++++++++++++++++++++++++++++++++++++++++++++ guava.spec | 129 ++++++++++++++++++++++++++++++++++++ v32.0.1.tar.gz | 3 + 5 files changed, 320 insertions(+) create mode 100644 .gitattributes create mode 100644 guava-build.tar.xz create mode 100644 guava.changes create mode 100644 guava.spec create mode 100644 v32.0.1.tar.gz diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..fecc750 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/guava-build.tar.xz b/guava-build.tar.xz new file mode 100644 index 0000000..8740a8d --- /dev/null +++ b/guava-build.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:29904f3ef7ad58da1446e4fbdcadf6744ecd6d2b150948f9701aece01ec8e150 +size 2880 diff --git a/guava.changes b/guava.changes new file mode 100644 index 0000000..a0d52ec --- /dev/null +++ b/guava.changes @@ -0,0 +1,162 @@ +------------------------------------------------------------------- +Thu Jun 15 13:20:35 UTC 2023 - Fridrich Strba + +- Upgrade to guava 32.0.1 + * Security fixes: + + Reimplemented Files.createTempDir and FileBackedOutputStream + to further address CVE-2020-8908 (#4011, bsc#1179926) and + CVE-2023-2976 (#2575, bsc#1212401) + * Fixes: + + io: Fixed Files.createTempDir and FileBackedOutputStream under + Windows, which broke as part of the security fix in release + 32.0.0 + + Removed @Beta from almost all APIs. Most of the remaining + @Beta APIs are in graph and hash. + + Enhanced the Guava jar to include Proguard configurations that + are picked up automatically by the Android Gradle Plugin. This + should help with warnings that were promoted to errors in + Android Gradle Plugin 8.x. + + Enhanced the Guava jar to include information about method + parameters in its class files. If you use static analyzers + that look at method-parameter names, you may see new warnings + or errors if they are now able to detect mismatches. But + mostly, you may see better tooltips and autocompletion in + DEs. + + Improved nullness annotations on a few classes. + + Modified classes with "serial proxies" to declare + exception-throwing readObject methods, in accordance with best + practice. + + collect: Fixed Maps.newHashMapWithExpectedSize to stop + allocating maps that were larger than they needed to be. + + collect: Made various APIs work J2CL: + Maps.immutableEnumMap+toImmutableEnumMap, EnumMultiset, + CollectorTester. Previously, the APIs were present but failed + at runtime. + + collect: Optimized memory usage for Interner and MapMaker. + + graph: Changed directed graphs to reject attempts to add + undirected edges. + + io: Added BaseEncoding.ignoreCase() to support + case-insensitive decoding. + + net: Added HttpHeaders constants: + ~ No-Vary-Search + ~ Sec-CH-DPR + ~ Sec-CH-UA-Wow64 + ~ Sec-CH-Viewport-Width and Sec-CH-Viewport-Height + ~ Supports-Loading-Mode + + net: Added the MediaType constant for JWT. + + primitives: Added rotate() for arrays of all primitive types. + + util.concurrent: Changed AbstractFuture to run + interruptTask() just before afterDone(). Until this change, it + ran slightly earlier than that: We used to run it before + unblocking any pending get() calls, and now we run it after. + + util.concurrent: Fixed some cases in which we could catch + InterruptedException but fail to restore the interrupt bit. + +------------------------------------------------------------------- +Wed May 18 17:26:01 UTC 2022 - Fridrich Strba + +- Upgrade to guava 31.1 + * Fixes: + + base: Deprecated the Throwables methods lazyStackTrace and + lazyStackTraceIsLazy. They are no longer useful on any current + platform. + + collect: Added a new method + ImmutableMap.Builder.buildKeepingLast(), which keeps the last + value for any given key rather than throwing an exception when + a key appears more than once. + + collect: As a side-effect of the buildKeepingLast() change, + the idiom + ImmutableList.copyOf(Maps.transformValues(map, function)) + may produce different results if function has side-effects. + + hash: Added Hashing.fingerprint2011(). + + io: Changed ByteStreams.nullOutputStream() to follow the + contract of OutputStream.write by throwing an exception if + the range of bytes is out of bounds. + + net: Added @CheckReturnValue to the package (with a few + exceptions). + + net: Added HttpHeaders constant for + Access-Control-Allow-Private-Network. + + util.concurrent: Added accumulate/update methods for + AtomicDouble and AtomicDoubleArray. + * APIs promoted from @Beta: + + base: Throwables methods getCausalChain and getCauseAs + + collect: Streams methods mapWithIndex and findLast + + collect: the remaining methods in Comparators: min, max, + lexicographical, emptiesFirst, emptiesLast, isInOrder, + isInStrictOrder + + escape: various APIs + + io: various APIs in Files + + net: various APIs + + reflect: various APIs + + testlib: various APIs + + util.concurrent: AsyncCallable, ListenableScheduledFuture, + and ClosingFuture + + util.concurrent: ExecutionSequencer, + MoreExecutors.newSequentialExecutor, and Monitor + + util.concurrent: Futures methods: submit, submitAsync, + scheduleAsync, nonCancellationPropagating, inCompletionOrder + + util.concurrent: Uninterruptibles: + awaitTerminationUninterruptibly and the Duration overloads in + the class + + util.concurrent: the FluentFuture type, its factory methods, + and addCallback + * Remove the hack of removing annotations, since we have now + all the required dependencies packaged +- Removed patch: + * donotmock.patch + + hack not needed any more + +------------------------------------------------------------------- +Fri Mar 11 12:13:02 UTC 2022 - Fridrich Strba + +- Remove parent reference from ALL distributed pom files + +------------------------------------------------------------------- +Mon May 10 14:59:41 UTC 2021 - Fridrich Strba + +- Upgrade to guava 30.1.1 + * Fixes: + + cache: Fixed compatibility between asMap().compute(...) + and a load. + + cache: Added @CheckReturnValue to some APIs. + + collect: Added @DoNotCall to the mutator methods on immutable + types + + hash: Removed @Beta from HashCode. + + io: Removed @Beta from CountingOutputStream. + * fixes bsc#1179926, CVE-2020-8908: temp directory creation + vulnerability in Guava versions prior to 30.0 +- Removed patch: + * guava-25.0-java8compat.patch + + the compatibility is handled in the upstream code +- Added patch: + * donotmock.patch + + patch @DoNotMock annotation occurrences in order to put them + in a format that our regex is able to identify and kill + +------------------------------------------------------------------- +Wed Dec 4 17:32:18 UTC 2019 - Fridrich Strba + +- Avoid version-less dependencies that can cause problems with + some tools + +------------------------------------------------------------------- +Fri Nov 22 04:52:39 UTC 2019 - Fridrich Strba + +- Build the package with ant in order to prevent build cycles + * using a generated and customized ant build system + +------------------------------------------------------------------- +Thu Oct 10 21:00:22 UTC 2019 - Fridrich Strba + +- Added patch: + * guava-25.0-java8compat.patch + + Avoid callingoverridden methods with covariant return types + for java.nio.ByteBuffer and java.nio.CharBuffer, which were + introduced in Java 9 + + This allows us to produce with Java >= 9 binaries that are + compatible with Java 8 + +------------------------------------------------------------------- +Fri Apr 12 10:05:01 UTC 2019 - Fridrich Strba + +- Initial packaging of guava 25.0 diff --git a/guava.spec b/guava.spec new file mode 100644 index 0000000..b750f56 --- /dev/null +++ b/guava.spec @@ -0,0 +1,129 @@ +# +# spec file for package guava +# +# Copyright (c) 2023 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +Name: guava +Version: 32.0.1 +Release: 0 +Summary: Google Core Libraries for Java +License: Apache-2.0 AND CC0-1.0 +Group: Development/Libraries/Java +URL: https://github.com/google/guava +Source0: https://github.com/google/guava/archive/v%{version}.tar.gz +Source1: %{name}-build.tar.xz +BuildRequires: ant +BuildRequires: checker-qual +BuildRequires: fdupes +BuildRequires: google-errorprone-annotations +BuildRequires: j2objc-annotations +BuildRequires: javapackages-local +BuildRequires: jsr-305 +BuildRequires: junit +Requires: mvn(com.google.code.findbugs:jsr305) +BuildArch: noarch + +%description +Guava is a suite of core and expanded libraries that include +utility classes, Google's collections, io classes, and much +much more. +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} +Group: Documentation/HTML + +%description javadoc +API documentation for %{name}. + +%package testlib +Summary: The guava-testlib artifact +Group: Development/Libraries/Java +Requires: mvn(junit:junit) + +%description testlib +guava-testlib provides additional functionality for conveninent unit testing + +%prep +%setup -q -a1 + +find . -name '*.jar' -delete + +%pom_disable_module guava-gwt +%pom_disable_module guava-tests + +%pom_remove_plugin -r :animal-sniffer-maven-plugin +# Downloads JDK source for doc generation +%pom_remove_plugin :maven-dependency-plugin guava + +%pom_xpath_inject /pom:project/pom:build/pom:plugins/pom:plugin/pom:configuration/pom:instructions "<_nouses>true" guava/pom.xml + +%pom_remove_dep -r :listenablefuture +%pom_remove_dep -r :failureaccess + +for mod in guava guava-testlib futures/failureaccess; do + %pom_remove_parent ${mod} + %pom_xpath_inject pom:project ' + com.google.guava + %{version}' ${mod} +done + +%pom_change_dep -r :error_prone_annotations :::provided +%pom_change_dep -r :j2objc-annotations :::provided +%pom_change_dep -r org.checkerframework: :::provided + +%pom_change_dep -r -f :::: :::: + +%build +mkdir -p lib +build-jar-repository -s lib junit jsr-305 google-errorprone/annotations checker-qual j2objc-annotations +%{ant} -Dtest.skip=true package javadoc + +%install +# jars +install -dm 0755 %{buildroot}%{_javadir}/%{name} +install -pm 0644 %{name}/target/%{name}-%{version}*.jar %{buildroot}%{_javadir}/%{name}/%{name}.jar +install -pm 0644 %{name}-testlib/target/%{name}-testlib-%{version}*.jar %{buildroot}%{_javadir}/%{name}/%{name}-testlib.jar + +# poms +install -dm 0755 %{buildroot}%{_mavenpomdir}/%{name} +install -pm 0644 %{name}/pom.xml %{buildroot}%{_mavenpomdir}/%{name}/%{name}.pom +%add_maven_depmap %{name}/%{name}.pom %{name}/%{name}.jar +# We integrated this artifact in our main package +install -pm 0644 futures/failureaccess/pom.xml %{buildroot}%{_mavenpomdir}/%{name}/failureaccess.pom +%add_maven_depmap %{name}/failureaccess.pom %{name}/%{name}.jar +install -pm 0644 %{name}-testlib/pom.xml %{buildroot}%{_mavenpomdir}/%{name}/%{name}-testlib.pom +%add_maven_depmap %{name}/%{name}-testlib.pom %{name}/%{name}-testlib.jar -f %{name}-testlib + +# javadoc +install -dm 0755 %{buildroot}%{_javadocdir}/%{name} +cp -r %{name}/target/site/apidocs %{buildroot}%{_javadocdir}/%{name}/%{name} +cp -r %{name}-testlib/target/site/apidocs %{buildroot}%{_javadocdir}/%{name}/%{name}-testlib +%fdupes -s %{buildroot}%{_javadocdir} + +%files -f .mfiles +%doc CONTRIBUTORS README* +%license LICENSE + +%files javadoc +%{_javadocdir}/%{name} +%license LICENSE + +%files testlib -f .mfiles-guava-testlib + +%changelog diff --git a/v32.0.1.tar.gz b/v32.0.1.tar.gz new file mode 100644 index 0000000..4d1bc5a --- /dev/null +++ b/v32.0.1.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c850b565fdb5b577b9d02a647e21dd033cb967d97a66604d42e8d33689d136c9 +size 5678582