The GitHub Actions job "Coverage" on 
grails-core.git/fix/nested-criteria-delegate-first has succeeded.
Run started by GitHub user MartinJesusDev (triggered by matrei).

Head commit for run:
ae0ba20157e1b30eb1164178d0cfa56f357c61c7 / MartinJesusDev 
<[email protected]>
fix: nested criteria subqueries bind to the outer criteria under @CompileStatic 
(#16425)

Under `@CompileStatic`, a criteria closure nested inside another criteria 
closure resolved its
calls through the owner's delegate, so subquery restrictions were added to the 
enclosing
criteria and the subquery was left empty.

Declare `strategy = Closure.DELEGATE_FIRST` on the `@DelegatesTo` annotations 
of the criteria
closure API (`where`, `whereLazy`, `build`, `buildLazy` and the closure 
subquery helpers) in
`AbstractDetachedCriteria`, `DetachedCriteria` and the rx overrides, matching 
the resolve
strategy GORM already applies at runtime. Internal forwarders keep their public 
signatures and
cast the argument instead, so the forwarding break does not spread. 
`GormEntity.where` is
intentionally left out, as suggested in the issue.

Add `NestedCriteriaCompileStaticSpec` covering the affected nested forms under 
`@CompileStatic`
and document the stricter closure typing (forwarding error and name resolution) 
in the 8.0.x
upgrade notes.

Report URL: https://github.com/apache/grails-core/actions/runs/36579778227

With regards,
GitHub Actions via GitBox

Reply via email to