Hi folks,

We are using Guava for different "utils" methods. Especially, we are
using Guava to create lists and maps. For instance, we do (and we
force the use of):

List myList = Lists.newArrayList();

or

Map myMap = Maps.newHashMap();

If it was a good idea up to JDK7, these methods are now unnecessary,
and the "regular" approach should be preferred in order to cleanly use
the diamond syntax
(https://docs.oracle.com/javase/tutorial/java/generics/genTypeInference.html#type-inference-instantiation).

The Guava Javadoc actually clearly states this:
https://github.com/google/guava/blob/v33.3.1/guava/src/com/google/common/collect/Lists.java#L79

So, I propose:
- to loosen the Lists/Maps/... enforcement in spotless)
- to refactore Iceberg to use JDK list and map constructors instead of
Guava Lists/Maps/...

I started the change, but as it's a pretty large one, I would like
your feedback before completing the PR.

Regards
JB

Reply via email to