Bump com.google.code.gson:gson from 2.12.1 to 2.13.0 by dependabot[bot] · Pull Request #3914 · graphql-java/graphql-java
Gson 2.13.0
What's Changed
-
A bug in deserializing collections has been fixed. Previously, if you did something like this:
gson.fromJson(jsonString, new TypeToken<ImmutableList<String>>() {})then the inferred type would be
ImmutableList<String>, but Gson actually gave you anArrayList<String>. Usually that would lead to an immediateClassCastException, but in some circumstances the code might sometimes succeed despite the wrong type. Now you will see an exception like this:com.google.gson.JsonIOException: Abstract classes can't be instantiated! Adjust the R8 configuration or register an InstanceCreator or a TypeAdapter for this type. Class name: com.google.common.collect.ImmutableListbecause Gson now really is trying to create an
ImmutableListthrough its constructor, but that isn't possible. Either change the requested type (in theTypeToken) toList<String>, or register aTypeAdapterorJsonDeserializerforImmutableList. -
The internal classes
$Gson$Typesand$Gson$Preconditionshave been renamed to remove the$characters. Since these are internal classes (as signaled not only by the package name but by the$characters), client code should not be affected. If your code was depending on these classes then we suggest making a copy of the class (subject to the license) rather than depending on the new names.
Full Changelog: google/gson@gson-parent-2.12.1...gson-parent-2.13.0