Fix up `Optional` docs.
RELNOTES=n/a
PiperOrigin-RevId: 863230921
19c39ae
Improve links, primarily to Guava and the JDK.
- Use https.
- Link to docs.oracle.com instead of download.oracle.com.
- Link to guava.dev instead of google.github.io/guava.
- Link to `snapshot-jre` instead of `snapshot`, consistent with what we do in our `README` and in shortlinks like guava.dev/ImmutableList. (Consistency might help the snapshot docs in search-engine ratings, as touched upon in discussions of `<link rel="canonical" ...>` in b/69667335 and https://github.com/google/guava/issues/7597.)
- Link to JDK 25 and Guava's head/snapshot docs.
- But continue to link to JDK 7 for a few `Forwarding*` classes that specifically want to show which methods existed at that point.
- And continue to link to earlier JDKs when I couldn't easily find equivalents in newer JDKs' docs, like for assertions and try-with-resources (though I was still sometimes able to bump the version slightly, like from 7 to 8 for spurious wakeups and multicatch).
- But I did find equivalents for various docs (e.g., jar spec, crypto spec, serialization spec), albeit with rather different URLs.
- In one Google-internal class, I noticed that the newer JLS has a section title that doesn't match the old section title, so I changed the link text to match the new title.
- In `ImmutableCollection`, I noticed that the relevant link to `Set` needed to change from `#immutable` to `#unmodifiable`.
- Use `#foo(A,B)` instead of `#foo-A-B-`, as required by modern Javadoc.
- I also noticed one appearance of a stray `%20` (in "Object common methods"), which I removed.
- In `MacHashFunctionTest`, I added the new link but kept the old one in place, since the old one matches the list in the source code. Possibly we should update the source code to match the new list.
- Update a couple Spring links in the EventBus `README`.
- Fix a wiki link about range-check elimination in `Utf8`.
One thing that did **not** do was change links to point to shortlinks like guava.dev/ImmutableList. Maybe I should.
RELNOTES=n/a
PiperOrigin-RevId: 862895287
f49afda
Update link to the Shadow Plugin.
@steffen-heil-secforge points out that the current link now leads to questionable content.
Fixes https://github.com/google/guava/issues/8078
RELNOTES=n/a
PiperOrigin-RevId: 828046463
13fa8a1
Create an `asNetwork()` view for `Graph` and `ValueGraph`.
RELNOTES=`graph`: Added an `asNetwork()` view to `Graph` and `ValueGraph`.
PiperOrigin-RevId: 816230549
ac99622
Create an `asNetwork()` view for `Graph` and `ValueGraph`.
PiperOrigin-RevId: 815956673
674a2b7
Create an `asNetwork()` view for `Graph` and `ValueGraph`.
RELNOTES=`graph`: Added an `asNetwork()` view to `Graph` and `ValueGraph`.
PiperOrigin-RevId: 815909867
90d505e
update documentation to link references to "unique" to our definition
RELNOTES=update documentation to link references to "unique" to our definition
PiperOrigin-RevId: 793809726
4e4e3fd
update GraphsExplained traversal section to include more information on options, some cleanup
RELNOTES=n/a
PiperOrigin-RevId: 789527391
ec0b3df
Clean up preconditions.md a bit.
RELNOTES=n/a
PiperOrigin-RevId: 775310320
0d664f1
Fix minor typos in documentation
PiperOrigin-RevId: 753736377
061cd02
Bump `failureaccess` to 1.0.3, which is modularized.
This is the next piece of https://github.com/google/guava/issues/7094, which is progress toward [modularization](https://github.com/google/guava/issues/2970).
(Also bump `maven-bundle-plugin`.)
Relates-To: elide-dev/jpms#1
Signed-off-by: Sam Gammon <[email protected] >
RELNOTES=n/a
PiperOrigin-RevId: 738438448
0a7867e
Update our warning about "JDK 8 and type-use annotations that are not on the classpath" to reflect that we now [use JSpecify annotations](https://github.com/jspecify/jspecify/issues/239) instead of Checker Framework annotations.
RELNOTES=n/a
PiperOrigin-RevId: 715508192
5fdf1ad
Update deps and docs for `failureaccess-1.0.2`.
Fixes https://github.com/google/guava/issues/7614.
RELNOTES=n/a
PiperOrigin-RevId: 714950465
8f5d1ea
fix reference to nonexistent Guava version (documentation only)
PiperOrigin-RevId: 714028907
80883e2
Remove JodaTime example from `DiscreteDomain` docs.
RELNOTES=n/a
PiperOrigin-RevId: 712959894
dbbe350
Use `@NullMarked` instead of our custom `@ElementTypesAreNonnullByDefault` annotations.
This is the next step toward [using JSpecify in Guava](https://github.com/jspecify/jspecify/issues/239#issuecomment-2204318808). At the end of that path, we'll be able to [remove our dependency on JSR-305](https://github.com/google/guava/issues/2960) (and on the Checker Framework's annotations), and we'll have one less blocker to [providing a `module-info`](https://github.com/google/guava/issues/2970).
`@NullMarked` allows tools like kotlinc to produce errors for code like `ImmutableList<String?>`. (Before releasing this change, I'll conduct some further testing to more fully characterize the effects, both under Kotlin 2.1 and prior.) As we make further changes, it will allow kotlinc to detect even more nullness problems. We will make these changes in a series of incremental releases so that users can pick them up gradually, as we did inside Google. In simple cases, users may wish to pick up all the changes at once instead by upgrading straight from Guava 33.4.0 (or an earlier version) to Guava 33.4.4 (or whatever the version to make the final changes ends up being).
RELNOTES=Replaced our custom `@ElementTypesAreNonnullByDefault` annotations with the JSpecify `@NullMarked` annotation.
PiperOrigin-RevId: 708598410
61559d4
New subsubheader "Unmodifiable is not immutable" that we can link to.
6aa1a1e
Add an anchor to reference `Collections.unmodifiableXXX`.
52cb63f
Migrate off our `Charsets` constants, and further discourage usage.
Guava has required Java 8 for a while now.
[`StandardCharsets`](https://developer.android.com/reference/java/nio/charset/StandardCharsets) has been available since API Level 19, and we currently [test for compatibility with 21](https://guava.dev/#important-warnings).
RELNOTES=n/a
PiperOrigin-RevId: 655152755
0434ef4
Reimplement our `compare` methods in terms of JDK equivalents.
And migrate our own calls off our methods.
Guava has required Java 8 for a while now.
Note also that the APIs in question are available even under Android [even without opt-in library desugaring](https://r8.googlesource.com/r8/+/refs/heads/main/src/main/java/com/android/tools/r8/ir/desugar/BackportedMethodRewriter.java).
Further notes:
- I did not touch `UnsignedInteger`, `UnsignedInts`, `UnsignedLong`, or `UnsignedLongs` because the JDK equivalents aren't available under GWT or J2CL.
- I did not touch `UnsignedBytes.compare` because `Bytes.compareUnsigned`, while available under any version of Android, is not available on the JVM until Java 9.
- I did touch an _assertion_ about `UnsignedBytes.compare` because I noticed that it had its actual and expected values reversed.
RELNOTES=n/a
PiperOrigin-RevId: 655152611
788c5b3
Update some comments / docs about JDK 7.
RELNOTES=n/a
PiperOrigin-RevId: 654907100
44e3403
Remove some references to Java 7.
Guava has required Java 8 for a while now.
Note also that the APIs in question are available even under Android [even without opt-in library desugaring](https://r8.googlesource.com/r8/+/refs/heads/main/src/main/java/com/android/tools/r8/ir/desugar/BackportedMethodRewriter.java).
RELNOTES=n/a
PiperOrigin-RevId: 654844953
70f614a
Standardize on `Java N+` in documentation.
RELNOTES=n/a
PiperOrigin-RevId: 607336969
036bc7a
change behavior of views returned by graph accessor methods that take a graph element as input: they now throw IllegalStateException when that element is removed from the graph
RELNOTES=change behavior of views returned by graph accessor methods that take a graph element as input: they now throw IllegalStateException when that element is removed from the graph
PiperOrigin-RevId: 600480069
7210e8f
change behavior of views retu...
PiperOrigin-RevId: 591886365
b5425b4
change behavior of views returned by graph accessor methods that take a graph element as input: they now throw IllegalStateException when that element is removed from the graph
RELNOTES=change behavior of views returned by graph accessor methods that take a graph element as input: they now throw IllegalStateException when that element is removed from the graph
PiperOrigin-RevId: 591404913
bd9cdd6
GraphsExplained: Add section about utility functions.
PiperOrigin-RevId: 585690009
b613a29
GraphsExplained: Add section about graph traversal.
PiperOrigin-RevId: 585688807
dd00cb8
GraphsExplained: Add example images for the three different types of graphs.
PiperOrigin-RevId: 585687222
c8031d5
GraphsExplained: Fix uncompilable code (cast to mutable type to be able to mutate it later)
PiperOrigin-RevId: 585634445
88aa34e