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
michaelsavich
7ddac52748
Java 9 module ( #1179 )
...
* Add module-info.java
* Exclude module-info.java by default
2017-12-26 21:58:19 +05:30
Trung Do
855f0493d0
Fix a small typo ( #1183 )
2017-10-31 11:43:24 -07:00
Andrey Mogilev
b1fb9ca9a1
fix issue #1107 : resolve element type in wildcard collection types ( #1146 )
...
* fix issue #1107 : resolve element type in wildcard collection types
* fix Codacy warnings
* fix Codacy warnings
2017-09-21 17:50:41 -07:00
Warren Smith
08bbb226f1
Add newBuilder() API ( #1142 )
...
* Add Gson.newBuilder API.
* Remove redundant test.
* Address Codacy comments.
* Reduce visibility of GsonBuilder constructor.
2017-09-20 18:53:10 -07:00
Inderjeet Singh
c0b50ba3a3
[maven-release-plugin] prepare for next development iteration
2017-09-19 18:41:44 -07:00
Inderjeet Singh
d90f63dc88
[maven-release-plugin] prepare release gson-parent-2.8.2
2017-09-19 18:41:34 -07:00
Nels Beckman
ddcd6aea7d
Update fromJson Javadoc. ( #1151 )
...
For the string-based fromJson() method, mention that the result will be null if the given string is empty.
2017-09-18 00:08:22 -07:00
Lyubomyr Shaydariv
7a9fd5962d
Fixed DefaultDateTypeAdapter nullability issue and JSON primitives contract ( #1100 )
...
* Fixed DefaultDateTypeAdapter nullability issue and JSON primitives contract
Regression in:
* b8f616c939
- Migrate DefaultDateTypeAdapter to streaming adapter (#1070 )
Bug reports:
* https://github.com/google/gson/issues/1096 - 2.8.1 can't serialize and deserialize date null (2.8.0 works fine)
* https://github.com/google/gson/issues/1098 - Gson 2.8.1 DefaultDateTypeAdapter is not null safe.
* Fixed DefaultDateTypeAdapter nullability on write
2017-09-17 23:49:13 -07:00
Warren Smith
d9cc7bc60b
Make GsonBuilder.create() factory order idempotent. ( #1141 )
2017-08-14 08:56:16 -07:00
Tom Magnusson
68cf8fdc95
fix typo in ConstructorConstructor exception
2017-08-03 09:28:31 -04:00
Andrey Mogilev
03a72e752e
Fix StackOverflowError on resolving types with TypeVariable recursion ( #1128 )
...
* Fix StackOverflowError on resolving types with TypeVariable recursion
Sample failing code:
private static class TestType<X> {
TestType<? super X> superType;
}
...
new Gson().getAdapter(TestType.class);
* fix build errors
2017-07-31 10:50:29 -07:00
Igor Mysak
ee691fba43
fix javaDoc ( #1122 )
2017-07-21 10:12:25 -07:00
inder123
3090a7ed2a
Made deepCopy public ( #1091 )
...
* Made deepCopy public
* since 2.8.2
2017-05-31 10:33:37 -07:00
Mike
ada597e69a
value(double) can write NaN and infinite values when lenient, as value(Number) does ( #1093 )
...
* Added test which shows that lenient JsonWriter fails writing infinite primitive doubles, but does not fail writing boxed doubles, as stated in #1090 .
* Fixed JsonWriter#value(double) to write infinite and NaN values when lenient, as JsonWriter#value(Number) does. (fixes #1090 )
2017-05-31 09:50:44 -07:00
Inderjeet Singh
0aaef0fd1b
[maven-release-plugin] prepare for next development iteration
2017-05-30 18:38:01 -07:00
Inderjeet Singh
3e74bb47d1
[maven-release-plugin] prepare release gson-parent-2.8.1
2017-05-30 18:37:51 -07:00
Lyubomyr Shaydariv
b8f616c939
Migrate DefaultDateTypeAdapter to streaming adapter ( #1070 )
2017-05-30 18:12:50 -07:00
Andrey Mogilev
a300148003
Fix StackOverflowError on resolving recursive types by collapsing chains of type bounds ( #1075 )
...
* Fixes StackOverflowError on resolving recursive types.
See Issue #440 , Issue #603 , tests.
* fix 'codacy' coding style warnings
* added copyright header
2017-05-30 17:47:04 -07:00
sourabh gupta
5848096f3e
Size allocation of StringBuilder ( #1047 )
...
Size allocation of StringBuilder
2017-05-24 15:49:09 -07:00
James Carman
f7012e5865
Adding maven-bundle-plugin. ( #1071 )
2017-05-24 15:25:50 -07:00
Jake Wharton
b58de2f4ae
Merge pull request #1073 from lyubomyr-shaydariv/public-tojson
...
Remove helper methods mentioned in the TODO list
2017-05-02 10:37:11 -04:00
Lyubomyr Shaydariv
eb27d55f49
Remove helper methods mentioned in the TODO list
2017-04-23 15:54:10 +03:00
Eric Cochran
3270e8d972
Remove need for synthetic accessor methods.
2017-04-22 17:32:59 -07:00
inder123
5412f21431
Printing more debugging information to help track an invalid JsonAdapter. ( #1068 )
...
Now the thrown exception carries this information:
java.lang.IllegalArgumentException: Invalid attempt to bind an instance of java.lang.Integer as a @JsonAdapter for com.google.gson.functional.JsonAdapterAnnotationOnClassesTest$D. @JsonAdapter value must be a TypeAdapter, TypeAdapterFactory, JsonSerializer or JsonDeserializer.
2017-04-19 17:08:21 -07:00
Michele Vivoda
9a2421997e
negative zero test and fix ( #1069 )
2017-04-19 14:26:36 -07:00
Mohammad Yasir
92b52d25d8
Performance fix to avoid reflection-based initialization of null key surrogate
2017-04-12 16:11:20 -04:00
sourabh gupta
441fa98735
Simplified access of getSimpleName ( #1042 )
...
* Simplified access of getSimpleName
instead of calling getClass.getSimpleName() that will check too many conditions inside , we can make it as final String and use it directly.
* Simplified access of getSimpleName
making string as static
* Simplified access of getSimpleName
Code Review changes
2017-03-20 14:25:52 -07:00
Jesse Wilson
423ff04a75
Merge pull request #1037 from guptasourabh/master
...
elimiating code overhead
2017-03-18 15:34:09 -04:00
guptasourabh
8101ab74e9
list addition optimization ( #1038 )
...
* list addition optimization
* Optimized imports
Optimized imports
2017-03-16 21:16:38 -07:00
Sourabh Gupta
d0e70bcdbf
elimiating code overhead
2017-03-15 22:41:42 +05:30
guptasourabh
fd37cf1d0d
JsonArray with capacity in constructor ( #1033 )
...
JsonArray with capacity in constructor
2017-03-12 19:59:41 -07:00
Anirudh Ramanan
9e44d60b83
Eliminating code overhead
...
* calculating size of the list once in case of loops, avoided creation of string builder object if the length type argument is 0
* replaced null check boilerplate code with nullSafe()
2017-03-01 11:13:56 -05:00
Mohammad Yasir
4644837207
Incorporating the review comments. While more than 1 charachter might be read from the buffer the output will have only one escaped charachter.
2017-02-17 11:54:30 +05:30
Jesse Wilson
2d072bae3a
Merge pull request #1015 from yasirmhd/master
...
Memory optimisation in JsonReader
2017-02-16 22:58:16 -05:00
Mohammad Yasir
9c30b0e203
Incorporating code review suggestions
2017-02-17 07:25:23 +05:30
André Rouél
9e6f2bab20
Fix ArrayIndexOutOfBoundsException when skipping a value with JsonTreeReader #1013 ( #1014 )
2017-02-15 18:41:39 -08:00
Mohammad Yasir
ba4643134a
Removing unused variable
2017-02-16 03:00:02 +05:30
Mohammad Yasir
410b4a8c62
Optimizing for memory
2017-02-16 02:51:02 +05:30
BloodShura
9d8d7a43e1
All JsonElement::getAsJsonXXX methods now include the JSON string on thrown exception's message
2017-02-07 22:04:22 -02:00
Martin Lind
08c7bffba0
Fix for #957 ( #994 )
2017-01-11 10:38:33 -08:00
Yutaro Iino
9e5e4ac630
Add missing comma in toString()
2016-12-21 00:10:42 +09:00
Mark Hess
4976e420fc
Add keySet method and test ( #942 )
2016-12-13 22:15:49 -08:00
Kevin Most
5f73666404
Update JsonAdapter documentation ( #976 )
...
Include mention of JsonDeserializer and JsonSerializer.
2016-12-11 22:37:55 -08:00
Egor Neliuba
44cad04a63
Allow deserialization of a Number represented as a String ( #964 )
2016-11-25 23:40:14 -08:00
jwilson
14c8c1a82b
[maven-release-plugin] prepare for next development iteration
2016-10-26 23:01:41 -07:00
jwilson
e9ead40302
[maven-release-plugin] prepare release gson-parent-2.8.0
2016-10-26 23:01:37 -07:00
Inderjeet Singh
688f918a35
Added @Documented to Gson annotations.
...
This is useful since it shows the JSON format for a class which the user of that class should typically know.
2016-09-15 18:24:21 -07:00
Jake Wharton
9414b9b3b6
Add static factories for array and parameterized type tokens.
...
These are useful when creating TypeAdapterFactories that delegate to others with more complex types. They also are useful when writing dynamic code that deals with types that cannot be fully reified using the normal subclass technique.
2016-08-12 12:11:57 -04:00
testcenter
193349f4aa
made nullSafe wrapper of JsonAdapter optional
2016-06-28 09:18:03 +02:00
Inderjeet Singh
0a29fcf859
[maven-release-plugin] prepare for next development iteration
2016-06-14 16:52:32 -07:00
Inderjeet Singh
9722b00372
[maven-release-plugin] prepare release gson-parent-2.7
2016-06-14 16:52:28 -07:00
Inderjeet Singh
687ddb319e
Preparing 2.7-SNAPSHOT to cut the 2.7 release.
2016-06-14 16:39:19 -07:00
inder123
b2c00a3b02
Merge pull request #873 from google/jwilson.0601.get_delegate_adapter
...
Add support for JsonSerializer/JsonDeserializer in the JsonAdapter annotation
2016-06-14 16:37:14 -07:00
Inderjeet Singh
1f859ec769
addressed code review comments.
2016-06-14 16:34:34 -07:00