The GitHub Actions job "Coverage" on 
grails-core.git/fix/gorm-query-safety-constant-text has succeeded.
Run started by GitHub user matrei (triggered by matrei).

Head commit for run:
b570363fb812f2017a85840af1c64a1432f4eabf / Mattias Reichel 
<[email protected]>
Close the constant-text gaps in the query safety check

Constant-text tracking assumed every assignment to a local was a
statement walked in the order it runs, and tracked locals by name. A
local holding a value could therefore pass as constant text when it was
assigned by multiple assignment, inside a ternary, an && or || operand,
a method argument or a do/while condition, or inside a closure called
later, and a loop variable or closure parameter could inherit the
status of an earlier local with the same name.

Tracking is now keyed by the declaration each reference resolves to. A
pre-scan of each method finds the assignments the walk cannot place in
order; a local assigned that way, or declared outside a closure and
read inside it, is constant text only if every assignment to it in the
method is constant text.

A loop or closure body that assigns no local declared outside it is
walked once instead of being re-walked to a fixpoint, and a nested body
that has already settled silently is not walked again, so compile time
no longer grows exponentially with nesting depth.

Constructors, field initialisers and object initialisers are analysed
with a fresh state like methods, so a suppression on a constructor now
takes effect. The error message no longer recommends a StringBuilder,
which the check cannot follow, and the guide says which constructs are
not reported.

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

With regards,
GitHub Actions via GitBox

Reply via email to