ff4b1a7656
Merge remote-tracking branch 'origin/main'
...
# Conflicts:
# .github/ISSUE_TEMPLATE/config.yml
# .github/dependabot.yml
# .github/pull_request_template.md
# .github/workflows/build.yml
# .github/workflows/check-android-compatibility.yml
# .github/workflows/check-api-compatibility.yml
# .github/workflows/cifuzz.yml
# .github/workflows/codeql-analysis.yml
# extras/pom.xml
# extras/src/main/java/com/google/gson/extras/examples/rawcollections/RawCollectionsExample.java
# extras/src/main/java/com/google/gson/graph/GraphAdapterBuilder.java
# extras/src/main/java/com/google/gson/interceptors/Intercept.java
# extras/src/main/java/com/google/gson/interceptors/InterceptorFactory.java
# extras/src/main/java/com/google/gson/interceptors/JsonPostDeserializer.java
# extras/src/main/java/com/google/gson/typeadapters/PostConstructAdapterFactory.java
# extras/src/main/java/com/google/gson/typeadapters/RuntimeTypeAdapterFactory.java
# extras/src/main/java/com/google/gson/typeadapters/UtcDateTypeAdapter.java
# extras/src/test/java/com/google/gson/graph/GraphAdapterBuilderTest.java
# extras/src/test/java/com/google/gson/interceptors/InterceptorTest.java
# extras/src/test/java/com/google/gson/typeadapters/PostConstructAdapterFactoryTest.java
# extras/src/test/java/com/google/gson/typeadapters/RuntimeTypeAdapterFactoryTest.java
# extras/src/test/java/com/google/gson/typeadapters/UtcDateTypeAdapterTest.java
# graal-native-image-test/pom.xml
# graal-native-image-test/src/test/java/com/google/gson/native_test/Java17RecordReflectionTest.java
# graal-native-image-test/src/test/java/com/google/gson/native_test/ReflectionTest.java
# gson/pom.xml
# gson/src/main/java/com/google/gson/Gson.java
# gson/src/main/java/com/google/gson/GsonBuilder.java
# gson/src/main/java/com/google/gson/JsonParser.java
# gson/src/main/java/com/google/gson/internal/LinkedTreeMap.java
# gson/src/main/java/com/google/gson/internal/bind/DateTypeAdapter.java
# gson/src/main/java/com/google/gson/internal/bind/DefaultDateTypeAdapter.java
# gson/src/main/java/com/google/gson/internal/bind/MapTypeAdapterFactory.java
# gson/src/main/java/com/google/gson/internal/bind/TypeAdapters.java
# gson/src/main/java/com/google/gson/stream/JsonReader.java
# gson/src/main/java/com/google/gson/stream/JsonTreeWriter.java
# gson/src/main/java/com/google/gson/stream/JsonWriter.java
# gson/src/test/java/com/google/gson/CommentsTest.java
# gson/src/test/java/com/google/gson/GsonTest.java
# gson/src/test/java/com/google/gson/MixedStreamTest.java
# gson/src/test/java/com/google/gson/ToNumberPolicyTest.java
# gson/src/test/java/com/google/gson/functional/ArrayTest.java
# gson/src/test/java/com/google/gson/functional/ConcurrencyTest.java
# gson/src/test/java/com/google/gson/functional/CustomDeserializerTest.java
# gson/src/test/java/com/google/gson/functional/CustomTypeAdaptersTest.java
# gson/src/test/java/com/google/gson/functional/DefaultTypeAdaptersTest.java
# gson/src/test/java/com/google/gson/functional/EnumWithObfuscatedTest.java
# gson/src/test/java/com/google/gson/functional/ExposeFieldsTest.java
# gson/src/test/java/com/google/gson/functional/FormattingStyleTest.java
# gson/src/test/java/com/google/gson/functional/InstanceCreatorTest.java
# gson/src/test/java/com/google/gson/functional/InternationalizationTest.java
# gson/src/test/java/com/google/gson/functional/Java17RecordTest.java
# gson/src/test/java/com/google/gson/functional/JavaUtilConcurrentAtomicTest.java
# gson/src/test/java/com/google/gson/functional/JsonAdapterAnnotationOnClassesTest.java
# gson/src/test/java/com/google/gson/functional/JsonAdapterAnnotationOnFieldsTest.java
# gson/src/test/java/com/google/gson/functional/JsonParserTest.java
# gson/src/test/java/com/google/gson/functional/NullObjectAndFieldTest.java
# gson/src/test/java/com/google/gson/functional/ObjectTest.java
# gson/src/test/java/com/google/gson/functional/PrimitiveTest.java
# gson/src/test/java/com/google/gson/functional/ReflectionAccessTest.java
# gson/src/test/java/com/google/gson/functional/StreamingTypeAdaptersTest.java
# gson/src/test/java/com/google/gson/functional/TreeTypeAdaptersTest.java
# gson/src/test/java/com/google/gson/functional/TypeAdapterPrecedenceTest.java
# gson/src/test/java/com/google/gson/internal/bind/Java17ReflectiveTypeAdapterFactoryTest.java
# gson/src/test/java/com/google/gson/internal/bind/JsonTreeReaderTest.java
# gson/src/test/java/com/google/gson/internal/bind/JsonTreeWriterTest.java
# gson/src/test/java/com/google/gson/internal/reflect/Java17ReflectionHelperTest.java
# gson/src/test/java/com/google/gson/stream/JsonReaderTest.java
# metrics/pom.xml
# metrics/src/main/java/com/google/gson/metrics/BagOfPrimitives.java
# metrics/src/main/java/com/google/gson/metrics/BagOfPrimitivesDeserializationBenchmark.java
# metrics/src/main/java/com/google/gson/metrics/CollectionsDeserializationBenchmark.java
# metrics/src/main/java/com/google/gson/metrics/NonUploadingCaliperRunner.java
# metrics/src/main/java/com/google/gson/metrics/ParseBenchmark.java
# metrics/src/main/java/com/google/gson/metrics/SerializationBenchmark.java
# pom.xml
# proto/pom.xml
# proto/src/main/java/com/google/gson/protobuf/ProtoTypeAdapter.java
# proto/src/test/java/com/google/gson/protobuf/functional/ProtosWithAnnotationsTest.java
# proto/src/test/java/com/google/gson/protobuf/functional/ProtosWithComplexAndRepeatedFieldsTest.java
# proto/src/test/java/com/google/gson/protobuf/functional/ProtosWithPrimitiveTypesTest.java
# shrinker-test/pom.xml
# shrinker-test/src/main/java/com/example/ClassWithExposeAnnotation.java
# shrinker-test/src/main/java/com/example/ClassWithHasArgsConstructor.java
# shrinker-test/src/main/java/com/example/ClassWithJsonAdapterAnnotation.java
# shrinker-test/src/main/java/com/example/ClassWithNoArgsConstructor.java
# shrinker-test/src/main/java/com/example/ClassWithUnreferencedHasArgsConstructor.java
# shrinker-test/src/main/java/com/example/ClassWithUnreferencedNoArgsConstructor.java
# shrinker-test/src/main/java/com/example/ClassWithVersionAnnotations.java
# shrinker-test/src/main/java/com/example/GenericClasses.java
# shrinker-test/src/main/java/com/example/Main.java
# shrinker-test/src/main/java/com/example/NoSerializedNameMain.java
# shrinker-test/src/main/java/com/example/TestExecutor.java
# shrinker-test/src/main/java/com/example/UnusedClass.java
# shrinker-test/src/test/java/com/google/gson/it/ShrinkingIT.java
2024-03-12 13:01:50 +01:00
Marcono1234
13be1d104d
Fix GsonBuilder.setDateFormat
ignoring partial DEFAULT; deprecate setDateFormat(int)
( #2556 )
...
* Fix `GsonBuilder.setDateFormat` ignoring partial DEFAULT; deprecate `setDateFormat(int)`
* Remove date format methods not used by main code
* Adjust example
2024-03-01 12:17:12 -08:00
Marcono1234
5187808233
Enable additional Error Prone checks & fix violations ( #2561 )
...
* Enable additional Error Prone checks & fix violations
Some of them also enforce additional Google Java Format requirements which
are not handled by google-java-format, such as disallowing wildcard imports.
Not all experimental checks have been listed because some are not applicable,
such as Dependency Injection framework checks, or checks related to Guava's
immutable collections (since Gson's main code does not have a dependency on
Guava).
Other checks have been omitted because they are probably not relevant
(this was a subjective choice), or would require larger refactoring or
would flag issues with the public API, which cannot be changed easily.
* Address review feedback
---------
Co-authored-by: Éamonn McManus <emcmanus@google.com>
2024-01-09 10:19:09 -08:00
Carpe-Wang
58d1a9f0eb
Fix DateFormat time zone is not restored and add Test. ( #2549 )
...
* Fix DateFormat time zone is not restored and add Test.
* delete the test and make sure mvn clean test -X can be SUCCESS
* delete the test and make sure mvn clean test -X can be SUCCESS
* add test
* restore the DateFormat time zone in SqlDateTypeAdapter and SqlTimeTypeAdapter
* Adjust the code according to the code review feedback.
* Adjust the code according to the code review feedback.
* Adjust the code according to the code review feedback.
* Adjust the Test
* fix Werror error
* Adjust the DefaultDateTypeAdapterTest according to the code review feedback.
---------
Co-authored-by: Carpe-Wang <wangcarpe@126.com>
2023-12-05 06:54:53 -08:00
Marcono1234
ea4ffde76c
Remove DateTypeAdapter
to avoid code duplication ( #2546 )
...
The same functionality exists in `DefaultDateTypeAdapter` (with some slight
overhead), and there is currently code duplication between these classes.
2023-11-19 14:51:18 -08:00
Maicol
2c94c757a6
Formats codebase ( #2531 )
...
* Formats `.java` files
* Formats `.md` files
2023-11-06 11:59:01 -08:00
89ae8b48c2
Merge remote-tracking branch 'origin/master'
...
ci/woodpecker/push/woodpecker Pipeline was successful
# Conflicts:
# extras/pom.xml
# extras/src/main/java/com/google/gson/graph/GraphAdapterBuilder.java
# extras/src/main/java/com/google/gson/interceptors/InterceptorFactory.java
# extras/src/test/java/com/google/gson/typeadapters/PostConstructAdapterFactoryTest.java
# gson/src/main/java/com/google/gson/Gson.java
# gson/src/main/java/com/google/gson/GsonBuilder.java
# gson/src/main/java/com/google/gson/util/ISO8601Utils.java
# gson/src/main/java/module-info.java
# gson/src/test/java/com/google/gson/GsonTest.java
# gson/src/test/java/com/google/gson/functional/ArrayTest.java
# gson/src/test/java/com/google/gson/functional/CustomTypeAdaptersTest.java
# gson/src/test/java/com/google/gson/functional/DefaultTypeAdaptersTest.java
# gson/src/test/java/com/google/gson/functional/EnumWithObfuscatedTest.java
# gson/src/test/java/com/google/gson/functional/InternationalizationTest.java
# gson/src/test/java/com/google/gson/functional/Java17RecordTest.java
# gson/src/test/java/com/google/gson/functional/JavaUtilConcurrentAtomicTest.java
# gson/src/test/java/com/google/gson/functional/JavaUtilTest.java
# gson/src/test/java/com/google/gson/functional/JsonAdapterAnnotationOnClassesTest.java
# gson/src/test/java/com/google/gson/functional/JsonAdapterAnnotationOnFieldsTest.java
# gson/src/test/java/com/google/gson/functional/JsonParserTest.java
# gson/src/test/java/com/google/gson/functional/MapTest.java
# gson/src/test/java/com/google/gson/functional/PrimitiveTest.java
# gson/src/test/java/com/google/gson/functional/ReflectionAccessTest.java
# gson/src/test/java/com/google/gson/functional/StreamingTypeAdaptersTest.java
# gson/src/test/java/com/google/gson/functional/TypeAdapterPrecedenceTest.java
# gson/src/test/java/com/google/gson/internal/bind/Java17ReflectiveTypeAdapterFactoryTest.java
# gson/src/test/java/com/google/gson/internal/bind/JsonTreeReaderTest.java
# gson/src/test/java/com/google/gson/internal/bind/JsonTreeWriterTest.java
# gson/src/test/java/com/google/gson/internal/reflect/Java17ReflectionHelperTest.java
# gson/src/test/java/com/google/gson/regression/JsonAdapterNullSafeTest.java
# gson/src/test/java/com/google/gson/stream/JsonReaderPathTest.java
# gson/src/test/java/com/google/gson/stream/JsonReaderTest.java
# metrics/pom.xml
# metrics/src/main/java/com/google/gson/metrics/NonUploadingCaliperRunner.java
# metrics/src/main/java/com/google/gson/metrics/ParseBenchmark.java
# pom.xml
# proto/pom.xml
2023-02-23 14:21:42 +01:00
Maicol
742fd50ff7
Fix error prone warns ( #2319 )
...
* Adds a javadoc summary to the methods in the `SerializedName` annotation
Fixes the `MissingSummary` warn given by ErrorProne
* Adds a javadoc summary to the methods of the `ExclusionStrategy` annotation
Fixes the `MissingSummary` warn given by ErrorProne
* Adds a javadoc summary to `getDeclaringClass()` and `getName()` methods of the `FieldAttributes` class
Fixes the `MissingSummary` warn given by ErrorProne
* Adds a javadoc summary to `getMajorJavaVersion()` and `isJava9OrLater()` methods of the `JavaVersion` class
Fixes the `MissingSummary` warn given by ErrorProne
* Adds a comment in the empty catch block of the `AccessChecker:101` class
Fixes the `EmptyCatch` warn given by ErrorProne
* Adds a comment in the empty catch block of the `DefaultDateTypeAdapter:158` class
Fixes the `EmptyCatch` warn given by ErrorProne
* Adds a comment in the empty catch blocks of the `UnsafeAllocator:(67|92|113)` class
Fixes the `EmptyCatch` warn given by ErrorProne
* Adds a comment in the empty catch block of the `DateTypeAdapter:85` class
Fixes the `EmptyCatch` warn given by ErrorProne
* Fixes javadoc param of the `deserialize(...)` method of the `JsonDeserializer` interface
Fixes the `InvalidParam` warn given by ErrorProne
* Adds a charset `StandardCharsets.UTF_8` in the `resourceToString()` method of the `ParseBenchmark` class
Fixes the `DefaultCharset` warn given by ErrorProne
* Fixes a typo
* Implements review feedback
* Adds blank line before @ tag.
2023-02-17 09:58:16 -08:00
51157e81e5
Move some stuff around
ci/woodpecker/push/woodpecker Pipeline failed
2023-01-21 14:27:59 +01:00
Maicol
28affcbdb9
Remove the final
keyword from private
method ( #2276 )
2022-12-09 08:07:35 -08:00
Marcono1234
7f77ad4ff6
Replace $Gson$Preconditions.checkNotNull
with Objects.requireNonNull
( #2180 )
...
* Replace $Gson$Preconditions.checkNotNull with Objects.requireNonNull
* Add back checkNotNull
2022-08-22 07:22:32 -07:00
Marcono1234
4dda4ec5ba
Use diamond operator when creating generic instances ( #2104 )
2022-04-17 15:27:21 -07:00
Marcono1234
b4dab86b10
Make default adapters stricter; improve exception messages ( #2000 )
...
* Make default adapters stricter; improve exception messages
* Reduce scope of synchronized blocks
* Improve JsonReader.getPath / getPreviousPath Javadoc
2021-11-01 15:08:04 -07:00
Marcono1234
a4a235e14a
Remove redundant validation method
2020-05-24 23:54:32 +02:00
Marcono1234
380c4ec12c
Make dependency on java.sql optional
2020-05-23 23:30:53 +02:00