------------------------------------------------------------------- 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