You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@grails.apache.org by sc...@apache.org on 2026/10/16 15:40:53 UTC

(grails-core) branch 9.0.x updated (ebf174eb20 -> d0ecc35001)

This is an automated email from the ASF dual-hosted git repository.

codeconsole pushed a change to branch 9.0.x
in repository https://gitbox.apache.org/repos/asf/grails-core.git


    from ebf174eb20 Merge pull request #16165 from apache/feat/indy-default-groovy6
     add 50d97beae4 Write grails.converters.JSON through Spring Boot's JsonMapper
     add 95066b7b83 Write JSONWriter through Jackson; remove the unused JSON writers, marshallers and parser
     add fc2cb3a76c Merge 9.0.x into the JSON mapper branch
     add 9b0c6c1304 Get the JsonMapper's serialization context through its public API
     add 850fc4d3cd Document that a Jackson module serializer renders the values it writes
     add 0d9626e80c Merge branch '9.0.x' into feat/converters-json-on-jackson-9.0.x
     add 208977c9c4 Render the values a Jackson module serializer writes with the converter
     add a2dc99db23 Render domain classes with a Jackson serializer
     add fea8b9b294 Pin the syntax and number types JSON.parse accepts
     add 64e1733f58 Keep the JSON value marshallers, PrettyPrintJSONWriter and JSONParser, deprecated
     add 2493e1e9d4 Render JSON as Grails 8 did with grails.converters.json.legacy
     add 6f42133f0b Merge branch '9.0.x' into feat/converters-json-on-jackson-9.0.x
     add ebf560153b Merge branch '9.0.x' into feat/converters-json-on-jackson-9.0.x
     add 1b3a980f0d Keep grails.converters.json.legacy undeprecated, and make the domain Jackson module opt-in
     add e41e7e431d Render domain classes, map keys and toString(false) as Grails 8 did with grails.converters.json.legacy
     add 512e8d9fb7 Write exotic Numbers as text, keep compact JSON compact, and render enums with a @JsonValue by name
     add f520e7dcbf Write domain classes on the JsonMapper with their type id, unwrapped, and with the mapper's names
     add 18156ce6d0 Render a Path as the JsonMapper does
     add 1b644c8973 Document the legacy and domain module defaults, and test the gaps the review found
     add 26f1dda9ff Render Numbers with a module serializer, enum constants with a body and Iterable values as the mapper does
     add 4a20e8dff3 Offer cycle references to the rendering, fail on unwrapped type ids, and name references as instances
     add 5536958955 Document enum constants with a body, JsonNode, EXISTING_PROPERTY type ids and legacy with the domain module
     add 102dbe2bf2 Merge branch '9.0.x' into feat/converters-json-on-jackson-9.0.x
     add 0935518b09 Merge branch '9.0.x' into feat/converters-json-on-jackson-9.0.x
     add 8acfac0aa9 Merge branch '9.0.x' into feat/converters-json-on-jackson-9.0.x
     add 27a86d86b8 Merge branch '9.0.x' into feat/converters-json-on-jackson-9.0.x
     add 6e9b680773 Render JSON as Grails 8 did by default in Grails 9, with the JsonMapper as an opt-in
     add a41284e2d7 Merge branch '9.0.x' into feat/converters-json-on-jackson-9.0.x
     add f2ac68cb2b Merge branch '9.0.x' into feat/converters-json-on-jackson-9.0.x
     add 7852b429ef Merge branch '9.0.x' into feat/converters-json-on-jackson-9.0.x
     add 1d77b314cd Merge branch '9.0.x' into feat/converters-json-on-jackson-9.0.x
     add 8ce0e146ac Merge branch '9.0.x' into feat/converters-json-on-jackson-9.0.x
     add 2ec20172f5 Warn while the JSON legacy setting is unset, and describe the default in the guides
     add 4e69821b89 Merge branch '9.0.x' into feat/converters-json-on-jackson-9.0.x
     add 1d3bf77306 Check that rendering a lazy association leaves its proxy uninitialized
     new d0ecc35001 Merge pull request #16414 from codeconsole/feat/converters-json-on-jackson-9.0.x

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 grails-converters/build.gradle                     |   3 +-
 .../src/main/groovy/grails/converters/JSON.java    |  75 ++-
 .../converters/ConvertersGrailsPlugin.groovy       |  20 +
 .../ConvertersConfigurationHolder.java             |  44 ++
 .../ConvertersConfigurationInitializer.java        | 161 ++++-
 .../jackson/DomainClassJacksonModule.java          | 119 ++++
 .../converters/jackson/DomainClassRendering.java   | 256 ++++++++
 .../converters/jackson/DomainClassSerializer.java  | 481 ++++++++++++++
 .../marshaller/json/ByteArrayMarshaller.java       |   4 +
 .../marshaller/json/CalendarMarshaller.java        |   4 +
 .../converters/marshaller/json/DateMarshaller.java |   4 +
 .../marshaller/json/DomainClassMarshaller.java     | 104 ++-
 .../marshaller/json/InstantMarshaller.java         |   4 +
 .../marshaller/json/JsonMapperValueMarshaller.java |  88 +++
 .../marshaller/json/LocalDateMarshaller.java       |   4 +
 .../marshaller/json/LocalDateTimeMarshaller.java   |   4 +
 .../converters/marshaller/json/MapMarshaller.java  |   3 +-
 .../marshaller/json/OffsetDateTimeMarshaller.java  |   4 +
 ...DateMarshaller.java => OptionalMarshaller.java} |  19 +-
 ...dBasedMarshaller.java => RecordMarshaller.java} |  42 +-
 .../marshaller/json/SimpleEnumMarshaller.java      |  17 +-
 .../marshaller/json/ToStringBeanMarshaller.java    |   4 +
 .../marshaller/json/ZonedDateTimeMarshaller.java   |   4 +
 .../converters/ConvertersGrailsPluginSpec.groovy   | 104 +++
 .../ConvertersConfigurationInitializerSpec.groovy  |  77 +++
 .../jackson/DomainClassJacksonModuleSpec.groovy    | 524 +++++++++++++++
 .../converters/json/JsonMapperRenderingSpec.groovy | 719 +++++++++++++++++++++
 .../web/converters/json/JsonParsingSpec.groovy     |  99 +++
 .../json/legacy/Grails8DomainRendering.groovy      | 213 ++++++
 .../json/legacy/Grails8JsonRenderingSpec.groovy    | 397 ++++++++++++
 .../additional-spring-configuration-metadata.json  |  12 +
 .../Jsr310ConvertersConfiguration.groovy           |   6 +-
 .../en/guide/REST/renderers/defaultRenderers.adoc  | 108 +++-
 .../src/en/guide/upgrading/upgrading90x.adoc       | 238 +++++++
 .../hibernate5/grails-hibernate/build.gradle       |   1 +
 .../grails-app/conf/application.yml                |  11 +-
 .../functional/tests/ShipmentController.groovy}    |   8 +-
 .../domain/functional/tests/Carrier.groovy}        |   3 +-
 .../tests/{Organization.groovy => Shipment.groovy} |   6 +-
 .../tests/JsonMapperConverterSpec.groovy           |  86 +++
 .../binding/DateTimeRoundTripBindingSpec.groovy    |  10 +-
 .../web/converters/JSONConverterTests.groovy       |   9 +-
 .../org/grails/web/json/JSONWriterSpec.groovy      |  62 --
 grails-web-common/build.gradle                     |   1 +
 .../org/grails/web/json/GrailsPrettyPrinter.java   | 116 ++++
 .../org/grails/web/json/HtmlSafeJsonWriter.java    | 102 +++
 .../groovy/org/grails/web/json/JSONWriter.java     | 364 ++++++++---
 .../org/grails/web/json/JsonMapperSupport.java     | 244 +++++++
 .../org/grails/web/json/JsonMapperValue.java       |  86 +++
 .../org/grails/web/json/NestedValueSerializer.java | 215 ++++++
 .../web/json/PathCapturingJSONWriterWrapper.java   |  96 ++-
 .../org/grails/web/json/PrettyPrintJSONWriter.java | 138 +---
 .../org/grails/web/json/parser/JSONParser.java     |   7 +
 .../grails/web/json/HtmlSafeJsonWriterSpec.groovy  |  50 ++
 .../org/grails/web/json/JSONWriterSpec.groovy      | 332 ++++++++++
 55 files changed, 5487 insertions(+), 425 deletions(-)
 create mode 100644 grails-converters/src/main/groovy/org/grails/web/converters/jackson/DomainClassJacksonModule.java
 create mode 100644 grails-converters/src/main/groovy/org/grails/web/converters/jackson/DomainClassRendering.java
 create mode 100644 grails-converters/src/main/groovy/org/grails/web/converters/jackson/DomainClassSerializer.java
 create mode 100644 grails-converters/src/main/groovy/org/grails/web/converters/marshaller/json/JsonMapperValueMarshaller.java
 copy grails-converters/src/main/groovy/org/grails/web/converters/marshaller/json/{JavascriptDateMarshaller.java => OptionalMarshaller.java} (73%)
 copy grails-converters/src/main/groovy/org/grails/web/converters/marshaller/json/{InstanceMethodBasedMarshaller.java => RecordMarshaller.java} (50%)
 create mode 100644 grails-converters/src/test/groovy/org/grails/web/converters/configuration/ConvertersConfigurationInitializerSpec.groovy
 create mode 100644 grails-converters/src/test/groovy/org/grails/web/converters/jackson/DomainClassJacksonModuleSpec.groovy
 create mode 100644 grails-converters/src/test/groovy/org/grails/web/converters/json/JsonMapperRenderingSpec.groovy
 create mode 100644 grails-converters/src/test/groovy/org/grails/web/converters/json/JsonParsingSpec.groovy
 create mode 100644 grails-converters/src/test/groovy/org/grails/web/converters/json/legacy/Grails8DomainRendering.groovy
 create mode 100644 grails-converters/src/test/groovy/org/grails/web/converters/json/legacy/Grails8JsonRenderingSpec.groovy
 copy grails-test-examples/hibernate5/grails-hibernate/grails-app/{domain/functional/tests/Book.groovy => controllers/functional/tests/ShipmentController.groovy} (87%)
 copy grails-test-examples/{views-functional-tests/grails-app/domain/functional/tests/Publisher.groovy => hibernate5/grails-hibernate/grails-app/domain/functional/tests/Carrier.groovy} (97%)
 copy grails-test-examples/hibernate5/grails-hibernate/grails-app/domain/functional/tests/{Organization.groovy => Shipment.groovy} (93%)
 create mode 100644 grails-test-examples/hibernate5/grails-hibernate/src/integration-test/groovy/functional/tests/JsonMapperConverterSpec.groovy
 delete mode 100644 grails-test-suite-web/src/test/groovy/org/grails/web/json/JSONWriterSpec.groovy
 create mode 100644 grails-web-common/src/main/groovy/org/grails/web/json/GrailsPrettyPrinter.java
 create mode 100644 grails-web-common/src/main/groovy/org/grails/web/json/HtmlSafeJsonWriter.java
 create mode 100644 grails-web-common/src/main/groovy/org/grails/web/json/JsonMapperSupport.java
 create mode 100644 grails-web-common/src/main/groovy/org/grails/web/json/JsonMapperValue.java
 create mode 100644 grails-web-common/src/main/groovy/org/grails/web/json/NestedValueSerializer.java
 create mode 100644 grails-web-common/src/test/groovy/org/grails/web/json/HtmlSafeJsonWriterSpec.groovy
 create mode 100644 grails-web-common/src/test/groovy/org/grails/web/json/JSONWriterSpec.groovy


(grails-core) 01/01: Merge pull request #16414 from codeconsole/feat/converters-json-on-jackson-9.0.x

Posted by sc...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

codeconsole pushed a commit to branch 9.0.x
in repository https://gitbox.apache.org/repos/asf/grails-core.git

commit d0ecc3500171b4d7cf8ab47f1c378a8a8a65e27c
Merge: ebf174eb20 1d3bf77306
Author: Scott Murphy <sc...@alwaysvip.com>
AuthorDate: Fri Oct 16 11:40:47 2026 -0400

    Merge pull request #16414 from codeconsole/feat/converters-json-on-jackson-9.0.x
    
    Write grails.converters.JSON through Spring Boot's JsonMapper

 grails-converters/build.gradle                     |   3 +-
 .../src/main/groovy/grails/converters/JSON.java    |  75 ++-
 .../converters/ConvertersGrailsPlugin.groovy       |  20 +
 .../ConvertersConfigurationHolder.java             |  44 ++
 .../ConvertersConfigurationInitializer.java        | 161 ++++-
 .../jackson/DomainClassJacksonModule.java          | 119 ++++
 .../converters/jackson/DomainClassRendering.java   | 256 ++++++++
 .../converters/jackson/DomainClassSerializer.java  | 481 ++++++++++++++
 .../marshaller/json/ByteArrayMarshaller.java       |   4 +
 .../marshaller/json/CalendarMarshaller.java        |   4 +
 .../converters/marshaller/json/DateMarshaller.java |   4 +
 .../marshaller/json/DomainClassMarshaller.java     | 104 ++-
 .../marshaller/json/InstantMarshaller.java         |   4 +
 .../marshaller/json/JsonMapperValueMarshaller.java |  88 +++
 .../marshaller/json/LocalDateMarshaller.java       |   4 +
 .../marshaller/json/LocalDateTimeMarshaller.java   |   4 +
 .../converters/marshaller/json/MapMarshaller.java  |   3 +-
 .../marshaller/json/OffsetDateTimeMarshaller.java  |   4 +
 ...rrayMarshaller.java => OptionalMarshaller.java} |  15 +-
 .../{DateMarshaller.java => RecordMarshaller.java} |  54 +-
 .../marshaller/json/SimpleEnumMarshaller.java      |  17 +-
 .../marshaller/json/ToStringBeanMarshaller.java    |   4 +
 .../marshaller/json/ZonedDateTimeMarshaller.java   |   4 +
 .../converters/ConvertersGrailsPluginSpec.groovy   | 104 +++
 .../ConvertersConfigurationInitializerSpec.groovy  |  77 +++
 .../jackson/DomainClassJacksonModuleSpec.groovy    | 524 +++++++++++++++
 .../converters/json/JsonMapperRenderingSpec.groovy | 719 +++++++++++++++++++++
 .../web/converters/json/JsonParsingSpec.groovy     |  99 +++
 .../json/legacy/Grails8DomainRendering.groovy      | 213 ++++++
 .../json/legacy/Grails8JsonRenderingSpec.groovy    | 397 ++++++++++++
 .../additional-spring-configuration-metadata.json  |  12 +
 .../Jsr310ConvertersConfiguration.groovy           |   6 +-
 .../en/guide/REST/renderers/defaultRenderers.adoc  | 108 +++-
 .../src/en/guide/upgrading/upgrading90x.adoc       | 238 +++++++
 .../hibernate5/grails-hibernate/build.gradle       |   1 +
 .../grails-app/conf/application.yml                |  11 +-
 .../functional/tests/ShipmentController.groovy     |  20 +-
 .../domain/functional/tests/Carrier.groovy         |  20 +-
 .../domain/functional/tests/Shipment.groovy        |  21 +-
 .../tests/JsonMapperConverterSpec.groovy           |  86 +++
 .../binding/DateTimeRoundTripBindingSpec.groovy    |  10 +-
 .../web/converters/JSONConverterTests.groovy       |   9 +-
 .../org/grails/web/json/JSONWriterSpec.groovy      |  62 --
 grails-web-common/build.gradle                     |   1 +
 .../org/grails/web/json/GrailsPrettyPrinter.java   | 116 ++++
 .../org/grails/web/json/HtmlSafeJsonWriter.java    | 102 +++
 .../groovy/org/grails/web/json/JSONWriter.java     | 364 ++++++++---
 .../org/grails/web/json/JsonMapperSupport.java     | 244 +++++++
 .../org/grails/web/json/JsonMapperValue.java       |  86 +++
 .../org/grails/web/json/NestedValueSerializer.java | 215 ++++++
 .../web/json/PathCapturingJSONWriterWrapper.java   |  96 ++-
 .../org/grails/web/json/PrettyPrintJSONWriter.java | 138 +---
 .../org/grails/web/json/parser/JSONParser.java     |   7 +
 .../grails/web/json/HtmlSafeJsonWriterSpec.groovy  |  50 ++
 .../org/grails/web/json/JSONWriterSpec.groovy      | 332 ++++++++++
 55 files changed, 5491 insertions(+), 473 deletions(-)