Releases: google/guava
Releases · google/guava
25.0
Maven
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>25.0-jre</version>
<!-- or, for Android: -->
<version>25.0-android</version>
</dependency>
Javadoc
JDiff
Changelog
- Fixed Denial of Service vulnerability for servers that use Guava and deserialize attacker data: CVE-2018-10237. (f89ece5)
cache
: Addedjava.time.Duration
overloads toCacheBuilder
. (9bf6d95)io
: Removed deprecatedFiles.fileTreeTraverser()
andMoreFiles.directoryTreeTraverser()
. (ce6d93c)
24.1
Maven
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>24.1-jre</version>
<!-- or, for Android: -->
<version>24.1-android</version>
</dependency>
Javadoc
JDiff
Changelog
collect
: Added hash flooding protection toImmutableSet
,ImmutableMultiset
,ImmutableMap
andImmutableBiMap
graph
: Added support for traversing from multiple start nodes inTraverser
. (cbc5308)net
: Added X-Download-Options header toHttpHeaders
(9b9a175)net
: Added L16 audio constant toMediaType
24.0
Maven
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>24.0-jre</version>
<!-- or, for Android: -->
<version>24.0-android</version>
</dependency>
Javadoc
JDiff
Changelog
base
: Removed deprecatedPredicates.assignableFrom(Class)
. (d57a40e)collect
: Removed deprecatedBinaryTreeTraverser
. (f91ef6c)concurrent
: Removed deprecatedFutures.dereference
andMoreExecutors.sequentialExecutor
. (f91ef6c)graph
: Removed deprecatedGraphs.equivalent()
(41fa39f)graph
: AddedincidentEdges()
method toGraph
andValueGraph
. (d788bc1)net
: AddedHttpHeaders.HTTP2_SETTINGS
header according to http://httpwg.org/specs/rfc7540.html#Http2SettingsHeader (393066e)net
: AddedMediaType.withParameters
method that can replace a specific attribute with zero or more values. (7da42d2)
23.6
Maven
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>23.6-jre</version>
<!-- or, for Android: -->
<version>23.6-android</version>
</dependency>
Javadoc
JDiff
Changelog
concurrent
: AddedUninterruptibles
methods forCondition
. (794a8ca)concurrent
: Added arun
method toFutureCombiner
to allow passing aRunnable
toFutures.whenAllComplete
andFutures.whenAllSucceed
(de28fd8)concurrent
: MadeFutures.getUnchecked
available under GWT. (b1d9d99)net
: Added "Server-Timing" HTTP header toHttpHeaders
according to https://www.w3.org/TR/server-timing/ (f089e55)testing
: Started recognizing@NullableDecl
inNullPointerTester
and friends.- Migrated from
jsr305
@Nullable
to the Checker Framework@NullableDecl
. Tools that read these annotations may need to be updated to recognize the new annotation. For Kotlin in particular, we sent a pull request, which has been merged for 1.2.20. - Migrated from
jsr305
@CheckReturnValue
,@GuardedBy
and@OverridingMethodsMustInvokeSuper
to the Error Prone equivalents.
23.5
Maven
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>23.5-jre</version>
<!-- or, for Android: -->
<version>23.5-android</version>
</dependency>
Javadoc
JDiff
Changelog
base
: GraduatedVerify
andVerifyException
from@Beta
. (0ad9c44)collect
:ImmutableMap.getOrDefault
is now also available in the Android flavor. (1e4938c)graph
: Tightened the contract for the edge-adding methods onMutable{Graph, Network, ValueGraph}
. This is a breaking change; implementors of these interfaces should verify that they still comply with this contract. (ec48806)io
: AddedFiles.fileTraverser()
andMoreFiles.fileTraverser()
. (af7514a)io
: DeprecatedFiles.fileTreeTraverser()
andMoreFiles.directoryTreeTraverser()
. (1644f6e)- Migrated from jsr305's
@Immutable
to Error Prone's. (901e985) - Added a dependency on, but did not begin using, the Checker Framework's annotations. We expect to begin using it in a future release.
- If you're using
maven-plugin-plugin
, the Checker Framework dependency may trigger a bug. To fix it, upgrademaven-plugin-plugin
to 3.5. We expect this problem to go away with Guava 23.6, which will change to a different Checker Framework dependency.
- If you're using
23.4
Maven
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>23.4-jre</version>
<!-- or, for Android: -->
<version>23.4-android</version>
</dependency>
Javadoc
JDiff
Changelog
collect
: Added support for emptyArrayTable
.net
: AddedReferrer-Policy
toHttpHeaders
, along with possible values for that header inReferrerPolicyValues
. (19b4d97)util.concurrent
: Adjusted the interruption behavior ofMoreExecutors.sequentialExecutor()
to run tasks without aThread
interrupt marked (previously, interrupts leaked between tasks). If theThread
was interrupted when theExecutor
received it or during execution of its tasks, the thread will be re-interrupted before being yielded. Expanded the documentation ofMoreExecutors.sequentialExecutor()
to cover interruption and rejected execution behavior in detail. (40564c7)- Upgraded the version of GWT we test with to 2.8.2. We haven't yet intentionally depended on this new version, but now that we're testing with it, we may come to depend on it accidentally.
23.3
Maven
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>23.3-jre</version>
<!-- or, for Android: -->
<version>23.3-android</version>
</dependency>
Javadoc
JDiff
Changelog
base
: Updated hardcodedCharMatcher.digit()
andinvisible()
from Unicode 6.3 to Unicode 9.graph
: DeprecatedTreeTraverser
andBinaryTreeTraverser
. Please usecom.google.common.graph.Traverser
instead.net
: Added methods for dealing with registry suffixes toInternetDomainName
.util.concurrent
: IntroducedMoreExecutors.newSequentialExecutor
, the new name forsequentialExecutor
.
23.2
Maven
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>23.2-jre</version>
<!-- or, for Android: -->
<version>23.2-android</version>
</dependency>
Javadoc
JDiff
Changelog
- Added JPMS module name
com.google.common
for Guava. base
: Deprecated built-inCharMatcher
s which cannot work as expected because the API does not support supplementary code points.collect
: Fixed #2962collect
: Fixed a bug inHashBiMap.inverse().forcePut()
graph
: Added implementation forcommon.graph.Traverser
, a new class that provides efficient breadth-first and depth-first traversal of graphs and trees. It should be used in place ofcommon.collect.TreeTraverser
, which will be deprecated.graph
: Fixed regression inValueGraph.edgeValueOrDefault()
(from Guava 23) that caused it sometimes to returnnull
instead of the default value.
23.1
Maven
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>23.1-jre</version>
<!-- or, for Android: -->
<version>23.1-android</version>
</dependency>
Javadoc
JDiff
Changelog
- New policy: For the indefinite future, we won't remove APIs (except those annotated
@Beta
). - FYI: This release is the first since our move to more frequent releases.
- It is also the first to use the version format
23.1-jre
(rather than just23.1
) for the non-Android artifact. - Guava should now be Java-9 compatible with the exception of the GWT-compatible libraries, which await a GWT release.
base
: Added overloads ofVerify.verify
for different combinations of primitive andObject
argumentscollect
: AddedbuilderWithExpectedSize
factory methods forImmutableCollection
buildersgraph
:AddedTraverser<N>
for graph and tree traversals- Note: Don't actually use this yet; most operations currently throw
UnsupportedOperationException
. Apologies!
- Note: Don't actually use this yet; most operations currently throw
primitives
: Addedreverse
andsortDescending
methods for primitive arraysreflect
: UpdatedClassPath
to continue to work with the system classloader under Java 9. (63898e2)util.concurrent
: AddedExecutors.sequentialExecutor(Executor)
23.0
Final Guava 23.0 release.