codeconsole commented on PR #16237:
URL: https://github.com/apache/grails-core/pull/16237#issuecomment-5744477687

   @matrei Addressed [Review round 
3](https://github.com/apache/grails-core/pull/16237#issuecomment-5726461771) in 
[d95b438c24](https://github.com/apache/grails-core/commit/d95b438c2407c36ace2fde0c3231894ffbdac007).
   
   ### XML initialization and GSP lookup
   
   - The XML renderer now resolves the GSP locator and renderer registry lazily 
when rendering. Deferring the registry is also necessary: its locator injection 
otherwise closes the same cycle when creation starts from `mimeTypeResolver`.
   - Added regression coverage that destroys the relevant singletons, recreates 
them starting from either `xmlRenderer` or `mimeTypeResolver`, and calls 
`preInstantiateSingletons()`.
   - Added coverage for XML responses finding GSP views registered after 
renderer creation.
   - `PersonControllerHibernateSpec` now passes. Its fixture saves use 
`failOnError: true` so initialization failures surfaced as validation errors 
cannot silently turn into an empty result assertion.
   
   ### Scalar JSON and documentation
   
   - `PrettyPrintJSONWriter` now accepts a scalar root and transitions to 
`DONE`.
   - The scalar/second-root rejection table runs against both writers. 
Controller coverage exercises pretty-printed strings, GStrings, enums, numbers, 
booleans, and direct conversion of null.
   - Rewrote upgrade-guide section 25 to describe enum-name strings and scalar 
roots. It also clarifies using `new JSON(value)` for strings and numbers, whose 
built-in Groovy casts do not support `as JSON`.
   
   ### Minor items
   
   - Guarded optional converters-plugin loading with `ClassUtils.isPresent`.
   - Removed the registry monitor around mapper supplier calls, retaining the 
volatile cache and retry after absence. Added a concurrent-first-write 
regression test.
   - Moved `PROBLEM_JSON` above instance fields.
   
   ### Validation
   
   - Clean aggregate style checks, core test aggregation, web checks, and guide 
build passed:
     `clean aggregateViolations :grails-test-report:check 
:grails-test-suite-web:check :grails-doc:publishGuide -x aggregateGroovydoc 
--continue -PonlyCoreTests --max-workers=2 -PmaxTestParallel=1 --no-daemon`.
   - Combined report: **8,377 tests, 0 failures/errors, 33 skipped**.
   - Full `:grails-test-examples-hibernate7-demo33:test`: **79 tests, 0 
failures/errors, 3 skipped**, including the reported controller regression.
   - Checkstyle and CodeNarc reports are clean. PMD and SpotBugs were not 
enabled. The core-only sweep excludes the remaining database and functional 
suites.
   
   The PR remains targeted at Grails 8.
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to