Skip to content
This repository has been archived by the owner on Oct 30, 2024. It is now read-only.

Bump com.google.code.gson:gson from 2.10.1 to 2.11.0 #43

Merged

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Aug 27, 2024

Bumps com.google.code.gson:gson from 2.10.1 to 2.11.0.

Release notes

Sourced from com.google.code.gson:gson's releases.

Gson 2.11.0

Most important changes

  • Added default ProGuard / R8 rules (@​Marcono1234, #2397, #2420; @​sgjesse, #2448; @​sfreilich)
    If you are using ProGuard or R8 (for example for Android projects) you might not need any special Gson configuration anymore if your classes have a no-args constructor and use @SerializedName for their fields.
  • On Android, Gson now requires API level 21 or newer
  • Added new Strictness API (@​marten-voorberg & fellow students, #2437)
    Some of Gson's API is still lenient by default, but you can now use the newly added methods GsonBuilder#setStrictness, JsonReader#setStrictness and JsonWriter#setStrictness with Strictness.STRICT to override this behavior and to instead strictly adhere to the JSON specification when parsing.
  • New FormattingStyle class to allow configuring line breaks in JSON output (@​mihnita, #2231)
    Can be set using GsonBuilder#setFormattingStyle and JsonWriter#setFormattingStyle.
  • TypeToken can no longer capture type variables by default (@​Marcono1234, #2376)
    This was previously a common source of issues. The newly thrown exception refers to a Troubleshooting Guide article which explains this in more detail and provides suggestions for updating affected code.
  • Added serialization support for anonymous and local classes with a custom adapter (@​Marcono1234, #2498)
    This affects for example List implementations returned by libraries such as Guava which are implemented as anonymous class, which were previously serialized as null. Anonymous and local classes without custom adapter will still be serialized as null.
  • Added dependency on com.google.errorprone:error_prone_annotations
    Your project can use Maven or Gradle dependency exclusions to remove the transitive error_prone_annotations dependency from Gson. Or if you are manually maintaining dependencies as JARs in your project you can omit error_prone_annotations. And it should still work correctly.
    But Gson itself does declare it as a required dependency, and if you don't perform any custom configuration, then Maven or Gradle will by default try to download and use it.
  • Many exception messages now refer to the Troubleshooting Guide (@​Marcono1234, #2357)
    Feedback regarding the Troubleshooting Guide is appreciated!
  • Officially documented that JVM languages other than Java might not be fully supported, see the README.
  • Guarantee that JsonElement#toString produces JSON output (@​Marcono1234, #2659)

Other changes

Bug fixes

  • Fixed incorrect JsonPrimitive#equals results for large BigInteger values (@​MaicolAntali, #2311)
  • Fixed incorrect JsonPrimitive#equals results for large BigDecimal values (@​MaicolAntali, #2364)
  • Fixed JsonReader throwing NumberFormatException instead of MalformedJsonException for malformed Unicode escape sequences (@​MaicolAntali, #2337)
  • Fixed TypeToken#getParameterized returning bogus ParameterizedType for non-generic types (@​Marcono1234, #2447)
  • Fixed Java Record adapter not working for GraalVM Native Image (@​eamonnmcmanus, #2465)
  • Fixed JsonWriter#name not throwing exception when no JSON object is currently being written (@​shivam-sehgal, #2475; @​Marcono1234, #2476)
  • Fixed Gson#getDelegateAdapter not working properly for @JsonAdapter (@​Marcono1234, #2435)
    Note that null is now not allowed as skipPast value anymore, which was previously allowed but undocumented.
  • Fixed GsonBuilder not rejecting type adapters for Object and JsonElement, whose default adapters cannot be overridden (@​sachinp97; #2479)
  • Fixed no limits being enforced when deserializing BigDecimal and BigInteger (@​Marcono1234, #2510)
    The new limits prevent potential performance problems when user code uses the deserialized numbers. Gson itself was and is not affected by these performance problems. The limits should be high enough to not cause issues for most use cases, but feedback is appreciated.
  • Fixed GsonBuilder#setDateFormat not rejecting invalid date formats (@​Carpe-Wang, #2538)
  • Fixed GsonBuilder#setDateFormat not rejecting invalid date styles (@​Marcono1234, #2545)
  • Fixed GsonBuilder#setDateFormat ignoring partial DEFAULT style (@​Marcono1234, #2556)
  • Fixed TypeToken#isAssignableFrom throwing AssertionError in some cases (@​Marcono1234, #2544)
  • Fixed date adapters not restoring time zone after parsing (@​Carpe-Wang, #2549)
  • Fixed TypeToken#equals erroneously returning false for equal generic type parameters in some cases (@​d-william, #2599)
  • Fixed incorrect inherited URLs in pom.xml (@​Marcono1234, #2351)

Performance improvements

... (truncated)

Commits
  • 828a97b [maven-release-plugin] prepare release gson-parent-2.11.0
  • 93bc0f2 Skip signing graal-native-test module. (#2675)
  • b153ca1 [maven-release-plugin] rollback the release of gson-parent-2.11.0
  • 0e3d2aa [maven-release-plugin] prepare for next development iteration
  • 545b802 [maven-release-plugin] prepare release gson-parent-2.11.0
  • 8bfdbb4 Guarantee that JsonElement.toString() produces JSON (#2659)
  • 9008b09 Extend Troubleshooting Guide with some ProGuard / R8 information (#2656)
  • 05652c3 Document that other JVM languages are not fully supported (#2666)
  • 454a491 Improved Long-Double Number Policy (#2674)
  • 570d911 Bump the github-actions group with 4 updates (#2671)
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [com.google.code.gson:gson](https://github.com/google/gson) from 2.10.1 to 2.11.0.
- [Release notes](https://github.com/google/gson/releases)
- [Changelog](https://github.com/google/gson/blob/main/CHANGELOG.md)
- [Commits](google/gson@gson-parent-2.10.1...gson-parent-2.11.0)

---
updated-dependencies:
- dependency-name: com.google.code.gson:gson
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added the dependencies Pull requests that update a dependency file label Aug 27, 2024
@joshbaskaran joshbaskaran merged commit 9cba909 into master Aug 29, 2024
1 check passed
@dependabot dependabot bot deleted the dependabot/maven/com.google.code.gson-gson-2.11.0 branch August 29, 2024 08:27
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant