gson gson-parent-2.13.0
gson gson-parent-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: https://github.com/google/gson/compare/gson-parent-2.12.1…gson-parent-2.13.0
Source google/gson ·
gson-parent-2.13.0· 2025-04-11 · upstream release
Mirrored verbatim for indexing. All rights belong to the upstream project.
Release notes are published by the upstream project and mirrored here for indexing. All rights belong to their authors.