Marcono1234
bda2e3d16a
Improve number strategy implementation ( #1987 )
...
* Fix GsonBuilder not copying number strategies from Gson
* Improve ToNumberPolicy exception messages
2021-10-11 16:14:47 -07:00
Marcono1234
cd748df712
Fix LongSerializationPolicy null handling being inconsistent with Gson ( #1990 )
...
Gson does not actually use the specified LongSerializationPolicy but instead
uses type adapters which emulate the behavior. However, previously Gson's
implementation did not match LongSerializationPolicy regarding null handling.
Because it is rather unlikely that LongSerializationPolicy has been used on
its own, this commit adjusts its implementation to match Gson's behavior
(instead of the other way around).
2021-10-11 12:34:32 -07:00
Lyubomyr Shaydariv
fe30b85224
Support arbitrary Number implementation for Object and Number deserialization ( #1290 )
...
* Object and Number type adapters number deserialization can be configured
* Change wording of ToNumberStrategy documentation
* Use inline links in doc sparingly
If the element has already been linked before, don't create a link for
every subsequent occurrence.
See also (slightly dated)
https://www.oracle.com/technical-resources/articles/java/javadoc-tool.html#inlinelinks
* Link to default to-number policies in ToNumberStrategy doc
* Reduce code duplication for deserializing Number
* Hide default factory constants of NumberTypeAdapter and ObjectTypeAdapter
This encapsulates the logic a little bit better.
Additionally refactored factory created by NumberTypeAdapter to only create
TypeAdapter once and then have factory reuse that adapter for better
performance.
Co-authored-by: Marcono1234 <Marcono1234@users.noreply.github.com>
2021-10-08 17:09:43 -07:00
dependabot[bot]
7b9a283a7a
Bump bnd-maven-plugin from 5.3.0 to 6.0.0 ( #1985 )
...
Bumps [bnd-maven-plugin](https://github.com/bndtools/bnd ) from 5.3.0 to 6.0.0.
- [Release notes](https://github.com/bndtools/bnd/releases )
- [Changelog](https://github.com/bndtools/bnd/blob/master/docs/ADDING_RELEASE_DOCS.md )
- [Commits](https://github.com/bndtools/bnd/commits/6.0.0 )
---
updated-dependencies:
- dependency-name: biz.aQute.bnd:bnd-maven-plugin
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-10-06 17:58:02 -07:00
dependabot[bot]
b0f3237bb8
Bump proguard-maven-plugin from 2.4.0 to 2.5.1 ( #1980 )
...
Bumps [proguard-maven-plugin](https://github.com/wvengen/proguard-maven-plugin ) from 2.4.0 to 2.5.1.
- [Release notes](https://github.com/wvengen/proguard-maven-plugin/releases )
- [Changelog](https://github.com/wvengen/proguard-maven-plugin/blob/master/CHANGELOG.md )
- [Commits](https://github.com/wvengen/proguard-maven-plugin/commits )
---
updated-dependencies:
- dependency-name: com.github.wvengen:proguard-maven-plugin
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-28 09:59:56 -07:00
Marcono1234
aa5554e69a
Don't exclude static local classes ( #1969 )
2021-09-17 18:12:47 -07:00
Marcono1234
f1f90313fc
Improve Maven build ( #1964 )
...
- Specify missing plugin versions
- Fix or suppress ProGuard notes and warnings
2021-09-17 17:19:50 -07:00
Nikita Novik
4f2aeaa288
Add license note to GSON POM file. ( #1951 )
...
* Add license note to GSON POM file.
2021-09-06 10:35:43 -07:00
Éamonn McManus
c8f26dc907
Add missing calls when testing for exceptions. ( #1948 )
2021-08-31 15:03:45 -07:00
Éamonn McManus
1a2e58a42f
Remove an unused import. ( #1947 )
2021-08-31 14:55:07 -07:00
Simon Guerout
66fd2acdcf
Fix formatting
2021-08-30 09:57:08 -07:00
Simon Guerout
ac14b4c197
Make the nextJsonElement more robust
...
Add test cases
2021-08-30 09:57:08 -07:00
Simon Guerout
62a9702385
Improve the speed of the JSON_ELEMENT TypeAdapter when the object graph has already been turned into a JsonElement
2021-08-30 09:57:08 -07:00
Éamonn McManus
69173b02ea
Merge branch 'master' into optional-sql
2021-08-24 13:41:12 -07:00
Éamonn McManus
b2f661166f
[maven-release-plugin] prepare for next development iteration
2021-08-20 09:07:21 -07:00
Éamonn McManus
b41030d3dc
[maven-release-plugin] prepare release gson-parent-2.8.8
2021-08-20 09:07:19 -07:00
Éamonn McManus
9edaeb3b2e
Merge pull request #1909 from HiFromAjay/aj
...
Test cases for testing the exceptional behavior of JsonArray get... methods
2021-08-07 07:54:12 -07:00
HiFromAjay
01ab13f701
Remove unused imports [ #1909 , #1908 ]
2021-08-05 17:23:28 -06:00
Éamonn McManus
df94ccdb48
Merge pull request #1925 from google/dependabot/maven/org.apache.maven.plugins-maven-resources-plugin-3.2.0
...
Bump maven-resources-plugin from 2.7 to 3.2.0
2021-08-05 06:28:52 -07:00
Éamonn McManus
80feb232b5
Merge pull request #1926 from google/dependabot/maven/com.github.wvengen-proguard-maven-plugin-2.4.0
...
Bump proguard-maven-plugin from 2.3.1 to 2.4.0
2021-08-05 06:28:12 -07:00
dependabot[bot]
da2bfd7d1c
Bump copy-rename-maven-plugin from 1.0 to 1.0.1
...
Bumps [copy-rename-maven-plugin](https://github.com/coderplus/copy-rename-maven-plugin ) from 1.0 to 1.0.1.
- [Release notes](https://github.com/coderplus/copy-rename-maven-plugin/releases )
- [Commits](https://github.com/coderplus/copy-rename-maven-plugin/commits )
---
updated-dependencies:
- dependency-name: com.coderplus.maven.plugins:copy-rename-maven-plugin
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2021-08-05 03:03:02 +00:00
dependabot[bot]
b7fce3850d
Bump proguard-maven-plugin from 2.3.1 to 2.4.0
...
Bumps [proguard-maven-plugin](https://github.com/wvengen/proguard-maven-plugin ) from 2.3.1 to 2.4.0.
- [Release notes](https://github.com/wvengen/proguard-maven-plugin/releases )
- [Changelog](https://github.com/wvengen/proguard-maven-plugin/blob/master/CHANGELOG.md )
- [Commits](https://github.com/wvengen/proguard-maven-plugin/commits )
---
updated-dependencies:
- dependency-name: com.github.wvengen:proguard-maven-plugin
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2021-08-05 03:03:00 +00:00
dependabot[bot]
178b221fa0
Bump maven-resources-plugin from 2.7 to 3.2.0
...
Bumps [maven-resources-plugin](https://github.com/apache/maven-resources-plugin ) from 2.7 to 3.2.0.
- [Release notes](https://github.com/apache/maven-resources-plugin/releases )
- [Commits](https://github.com/apache/maven-resources-plugin/compare/maven-resources-plugin-2.7...maven-resources-plugin-3.2.0 )
---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-resources-plugin
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
2021-08-05 03:02:56 +00:00
YOUNG HO CHA
d8c5fcf00b
Fix indentation of EnumWithObfuscatedTest
2021-08-04 12:30:07 +09:00
YOUNG HO CHA
59a8aedb37
Use SecurityManager to read enum fields
2021-08-04 12:24:55 +09:00
YOUNG HO CHA
20720d6a40
Remove unnecessary catch block
2021-08-04 12:03:28 +09:00
YOUNG HO CHA
6ac9f7d840
Suppress unchecked type cast warning
2021-08-04 12:03:21 +09:00
YOUNG HO CHA
92a98dab02
Removed unused import
2021-08-04 12:03:15 +09:00
YOUNG HO CHA
e99a4b1cb7
Move testcases-proguard.conf into gson/src/test/resources
2021-08-04 12:03:10 +09:00
YOUNG HO CHA
1406477d0c
Fix post-obfuscate-class task to include obfuscated test classes
2021-08-04 12:03:02 +09:00
YOUNG HO CHA
7988fbfa90
Update proguard plugin to support Java 11 compiler
2021-08-04 12:02:55 +09:00
YOUNG CHA
94f894cf44
Add testcase for obfuscated enum class
2021-08-04 12:02:50 +09:00
YOUNG CHA
68f99f2440
Make EnumTypeAdapter friendly with obfuscation
...
When enum value was obfuscated by proguard, EnumTypeAdapter raise NoSuchFieldException even if apply SerializedName annotation.
Because EnumTypeAdapter cannot find obfuscated enum constant field with its name.
2021-08-04 12:02:47 +09:00
Éamonn McManus
63e747f7f4
Merge pull request #1712 from rhernandez35/master
...
Fix fallback behavior of UnsafeReflectionAllocator when AccessibleObject isn't so accessible
2021-08-03 17:27:54 -07:00
Éamonn McManus
425cb25549
Adjust some minor details of #1391 .
...
Use two-space indentation for the new test.
Use standard Google import style.
Supply missing type argument for `TypeVariable`.
2021-08-02 17:33:10 -07:00
Éamonn McManus
d65960b001
Merge pull request #1391 from mcumings/issue1390
...
Fix issue with recursive type variable protections to fix #1390
2021-08-02 16:43:19 -07:00
HiFromAjay
2d1981d39b
modify test cases for testing the exceptional behavior of get... methods [use fail(...), use JsonArray methods, remove unused values, formatting, #1909 , #1908 ]
2021-06-14 14:31:14 -06:00
HiFromAjay
55115a5ca2
Test cases for testing the exceptional behavior of get, getAsBoolean, getAsDouble, getAsInt, getAsJsonArray, getAsJsonObject, getAsLong, and getAsString methods of JsonArray class. These test cases, which we wrote according to the specified behavior of each method, that helped us in identifying the documentation bugs in JsonArray and JsonElement classes, which we submitted issues for (Issue #1908 ). Note that we have adapted these test cases based on similar tests from the JSON-java project ( https://github.com/stleary/JSON-java ).
2021-06-11 10:04:32 -06:00
Éamonn McManus
dadbdbb837
[maven-release-plugin] prepare for next development iteration
2021-05-24 16:22:45 -07:00
Éamonn McManus
4520489c29
[maven-release-plugin] prepare release gson-parent-2.8.7
2021-05-24 16:22:41 -07:00
Éamonn McManus
1e4b84c34f
Merge pull request #1687 from Marcono1234/iso-utils-test-fix
...
Fix ISO8601UtilsTest failing on systems with UTC+X
2021-05-13 17:19:26 -07:00
Éamonn McManus
829a514aed
Merge pull request #1786 from Marcono1234/marcono1234/JsonStreamParser-doc-fix
...
Improve incorrect JsonStreamParser doc
2021-05-13 16:45:36 -07:00
dependabot[bot]
83c63d2256
Bump bnd-maven-plugin from 4.0.0 to 5.3.0
...
Bumps [bnd-maven-plugin](https://github.com/bndtools/bnd ) from 4.0.0 to 5.3.0.
- [Release notes](https://github.com/bndtools/bnd/releases )
- [Changelog](https://github.com/bndtools/bnd/blob/master/docs/ADDING_RELEASE_DOCS.md )
- [Commits](https://github.com/bndtools/bnd/commits )
Signed-off-by: dependabot[bot] <support@github.com>
2021-05-13 23:31:27 +00:00
Marcono1234
b1edb70486
Improve incorrect JsonStreamParser doc
2020-09-19 13:30:50 +02:00
Richard Hernandez
b39494dbe6
Fix fallback behavior of UnsafeReflectionAllocator when AccessibleObject isn't so accessible
2020-05-26 20:12:36 -07:00
Marcono1234
a4a235e14a
Remove redundant validation method
2020-05-24 23:54:32 +02:00
Marcono1234
4fb215c9df
Move SQL types specific tests to separate test class
2020-05-23 23:31:03 +02:00
Marcono1234
380c4ec12c
Make dependency on java.sql optional
2020-05-23 23:30:53 +02:00
Marcono1234
361292f1c1
Fix warnings
2020-05-09 17:34:53 +02:00
Marcono1234
541252a9fb
Implement DefaultDateTypeAdapter in a type safer way
2020-05-09 17:34:52 +02:00
Marcono1234
9171715a88
Fix ISO8601UtilsTest failing on systems with UTC+X
...
Previously ISO8601UtilsTest.testDateFormatString() would fail on systems
where the time zone is UTC+X because getTime() returned "2018-06-24" for them.
Additionally the tests which previously changed the system locale and time
zone have been rewritten to create a UTC calendar instead. Setting locale
seems to not be necessary because ISO8601Utils.parse(...) does not do that
either.
2020-05-03 00:35:47 +02:00
Matthew Lee
55acc23d86
Fixing https://github.com/google/gson/issues/1592 ( #1623 )
...
adding null parameter check to name(), fixing the issue and being consistent with superclass behavior
2020-03-02 14:57:42 -08:00
Gabriel Basilio Brito
fa947212e0
Add isEmpty method to JsonArray class ( #1640 )
...
The method will return true if the array is empty and false if it's not
2020-03-02 14:52:37 -08:00
Marcono1234
360cd3e2da
Remove unused files ( #1654 )
...
* Remove outdated javadocs folder
* Remove old release notes
* Remove unused Maven assembly plugin file
Plugin usage has been removed in 2016e95
2020-03-02 14:49:47 -08:00
Jiechuan Chen
4d735f1903
Add new testcases ( #1638 )
...
* Json Primitive Tests
* Json Tree Writer tests
* Add Tests for ISO8601Utils
* Add Tests for ISO8601Utils
2020-02-17 14:55:19 -08:00
Marcono1234
530cb74470
Fix javadoc doclint HTML warnings ( #1653 )
2020-02-17 14:46:15 -08:00
Marcono1234
adc4c1949d
Change links from HTTP to HTTPS ( #1655 )
2020-02-17 14:42:27 -08:00
Brian de Alwis
521fab2dd5
Fix OSGi metadata generation to work on JavaSE < 9 ( #1603 )
...
* Explicitly specify `Require-Capability: osgi.ee` to require 1.5+
Specifying disables bnd's auto-generated value which is determined from
the minimum versions of the .class files, including `module-info.class`
* Drop JavaSE-1.5 since that boat sailed a long time ago
* Drop unused org.apache.felix:maven-bundle-plugin plugin
2019-11-04 15:37:46 -08:00
Degubi
9bf25c2eb6
Refactor prefix array & loop logic, use if-s instead ( #1505 )
2019-10-04 13:45:06 -07:00
Inderjeet Singh
d1828736eb
[maven-release-plugin] prepare for next development iteration
2019-10-04 11:54:10 -07:00
Inderjeet Singh
29c93895bb
[maven-release-plugin] prepare release gson-parent-2.8.6
2019-10-04 11:54:03 -07:00
Paul Kassianik
21fc362a7e
Fixed tests for java 11 ( #1454 )
2019-10-04 11:29:13 -07:00
Degubi
20dca860dd
Add docs to module-info.java ( #1535 )
2019-10-03 15:51:18 -07:00
Degubi
7845c38077
Minor cleanups in deprecations and other warnings ( #1522 )
2019-10-03 15:49:24 -07:00
David Maplesden
3958b1f78d
Prefer writing chars instead of strings of length one ( #1576 )
...
This results in a noticeable performance improvement with most writer
implementations (including BufferedWriter).
2019-09-18 10:33:49 -07:00
Degubi
63ee47cb64
Refactor uppercaseFirstLetter, add additional field to test ( #1515 )
2019-04-26 15:49:22 -07:00
Degubi
c5a3f21fba
Refactor JsonParser to statics & fix tests
2019-04-15 22:35:10 -04:00
Degubi
477b3f77e1
Refactor primitives class
2019-04-15 11:08:31 -04:00
Degubi
46d0f58d12
Remove unnecessary explicit else statement
2019-04-05 16:20:06 +02:00
Degubi
3ee3c150ed
Remove boolean wrappers in JsonElement
2019-03-31 21:28:12 +02:00
Degubi
fc63a6af4c
Make sql module dependency transitive ( #1500 )
2019-03-29 09:34:12 -07:00
Manuel Kollus
5370b076e3
Removing 'final' accessor from constructor ( #1501 )
2019-03-28 09:22:36 -07:00
Degubi
8bf2949c29
Remove object based constructors, remove some internal stuff
2019-03-11 10:53:31 -04:00
Jake Wharton
a817604a41
Add test coverage for passing null to JsonPrimitive constuctors
2019-03-11 10:50:22 -04:00
Degubi
bac26b8e42
Optimize array copies
2019-03-05 12:12:04 -05:00
Lorenz Nickel
3c6eea6b7d
Adapt gson/gson/README to match with gson/README.md ( #1472 )
2019-03-03 11:28:00 -08:00
Lorenz Nickel
b75e1bbc79
Code cleanup (Removed spaces) ( #1474 )
...
* Removed double spaces in comments
* Unified comments
* Removed space
* Removed spaces in code
2019-03-03 11:18:06 -08:00
Márton Braun
4d942db168
Update Gson.java documentation to explicitly state behavior for empty strings ( #1464 )
2019-02-17 00:32:43 -08:00
Piet van Dongen
5bbc768fa6
Fix JPMS module setup ( fixes #1315 ) ( #1402 )
...
* Fix JPMS module setup (fixes #1315 )
* Re-added cause to AssertionErrors
2018-10-18 08:49:08 -07:00
Mike Cumings
69f7c4e243
Replace instance equality checks in $Gson$Types#resolve
2018-09-26 22:38:53 -07:00
Mike Cumings
e2296f42d5
Fix issue with recursive type variable protections to fix #1390
...
When a type variable is referenced multiple times it needs to resolve
to the same value. Previously, the second attempt would abort
resolution early in order to protect against infinite recursion.
2018-09-25 16:09:48 -07:00
Eric Cochran
92b6173791
Deprecate JsonElement.getAsCharacter
2018-07-30 13:44:21 -04:00
Inderjeet Singh
986d3fb2fa
[maven-release-plugin] prepare for next development iteration
2018-05-21 20:08:20 -07:00
Inderjeet Singh
f649e05141
[maven-release-plugin] prepare release gson-parent-2.8.5
2018-05-21 20:08:09 -07:00
joel-leitch
4c685b21a8
Private constructor ( #1324 )
...
* Adding private constructors on Util classes
* Remove obsolete step
2018-05-21 20:04:22 -07:00
inder123
d84e26d80c
Issue 1242: Printing Gson version when throwing AssertionError and IllegalArgumentException ( #1321 )
...
On some versions of Android (probably on some variants of the popular Samsung S4 phone), an older version of Gson is suspected to be bundled in, and gets picked up from the system classpath.
For those versions, the applications that include the latest Gson fail unexpectedly. This debug print will help confirm this issue.
2018-05-17 09:41:21 -07:00
inder123
a6890bbaba
Fixed https://github.com/google/gson/issues/1310 ( #1311 )
...
* Fixed https://github.com/google/gson/issues/1310
Also renamed VersionUtils to more readable abstraction JavaVersion
Added support for debian naming convention
Using min supported version (6) as the default if JDK version can't be figured out
* Moved JavaVersion to an internal package
2018-05-09 13:10:08 -07:00
Inderjeet Singh
446a3bff8d
[maven-release-plugin] prepare for next development iteration
2018-05-01 11:06:37 -07:00
Inderjeet Singh
9fbebdf990
[maven-release-plugin] prepare release gson-parent-2.8.4
2018-05-01 11:06:25 -07:00
inder123
049bf84e68
Using sun.misc.Unsafe only through reflection to avoid binary dependency ( #1306 )
...
If sun.misc.Unsafe not found on Java 9, try field.setAccessible
Also removed exception traces when sun.misc.Unsafe or override are not found
2018-05-01 09:57:45 -07:00
inder123
941363f14c
Added gradle/Idea support ( #1302 )
2018-04-30 09:54:24 -07:00
inder123
1b28ff3cda
Added a test for deserialization of fields using lowercase-dot naming policy ( #1303 )
2018-04-27 18:54:48 -07:00
Leon
ab35f11077
add FieldNamingPolicy.LOWER_CASE_WITH_DOTS ( #1278 )
2018-04-27 18:50:08 -07:00
Inderjeet Singh
7dd379ffe1
[maven-release-plugin] prepare for next development iteration
2018-04-27 15:34:26 -07:00
Inderjeet Singh
4ed639e882
[maven-release-plugin] prepare release gson-parent-2.8.3
2018-04-27 15:34:15 -07:00
Lyubomyr Shaydariv
bdea5b9e99
Removed the executable flag from clearly text files
2018-04-26 10:23:15 +03:00
Inderjeet Singh
4081dbaa6d
Added a test for serialization/deserialization of enum classes with
...
fields
2018-03-17 16:00:46 -07:00
Andrey Mogilev
8445689e4d
Java 9 support: use Unsafe-based reflection in Java 9+ ( #1218 )
...
* Java 9 support: use Unsafe-based reflection in Java 9+
fixes "illegal reflective access" warnings and exceptions
* fix Codacy warnings
* improve code quality based on PR review
* improve code quality based on PR review
* fix Codacy warning
* improve code quality based on PR review
* inlined createReflectionAccessor method
2018-01-04 00:38:50 +05:30
Andrey Mogilev
0aaf5ff408
fix Java9 DateFormat changes ( #1211 )
...
* fix Java9 DateFormat changes
* fix Codacy warnings
2017-12-30 00:44:43 +05:30
Anirudh Ramanan
3bf1967c0a
Optimised the create() call for Excluder TypeAdapterFactory ( #1199 )
...
* optimized the create() method, excludeClass used to get called two times, changed it to one
* fixed the create() method, and added support to disableAnonymousAndLocalClassSerialization
* peek only once
* enable anonymous and local class serialization
* bugfix
* removed the method, will raise it as a separate PR
2017-12-28 06:03:45 +05:30