You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@accumulo.apache.org by GitBox <gi...@apache.org> on 2019/06/11 01:37:22 UTC

[GitHub] [accumulo] ctubbsii opened a new issue #1193: Replace use of Guava Immutable* with Java 11 built-in unmodifiables

ctubbsii opened a new issue #1193: Replace use of Guava Immutable* with Java 11 built-in unmodifiables
URL: https://github.com/apache/accumulo/issues/1193
 
 
   Java now has built-in immutable objects for `Set.of`, `List.of`, `Map.of` (and also `.copyOf` variants) and we no longer need to use Guava's `ImmutableSet.of`, etc., methods. 
   
   The use of `Immutable*.Builder` classes can also be discontinued. Options for replacing those include using streams with a `Collectors.toUnmodifiable*` collector, or using a temporary mutable version, and wrapping with `Collections.unmodifiable*` instead of calling `.build()` on the `Builder`.
   
   The more we can use Java built-ins instead of Guava classes, the easier it is to upgrade between Guava versions with less risk of breakage, and possibly move towards removing the dependency altogether, or making it easier to shade. Usages of these APIs that have built-in replacements are (mostly) automatically caught by the modernizer plugin, so they should be easy to find by using the latest version of that plugin with a Java 11 build.
   
   I'm currently working on this, in order to get our build updated to use Java 11.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services