The GitHub Actions job "CI" on grails-core.git/fix/wrapper-verify-pin-branch-snapshot has succeeded. Run started by GitHub user jamesfredley (triggered by jamesfredley).
Head commit for run: d734d4317bdf43295d535ac77a4c4f32410a7fea / James Fredley <[email protected]> Hoist .trim() to grailsVersion variable definition and drop JDK 21+ broken blank-version tests Addresses jdaugherty's review comment on PR #15598: hoist `.trim()` up to the variable definition in `readVersionFromProperties` and `getPreferredGrailsVersion(File)` so each method uses the trimmed form consistently, and the raw form is no longer referenced. While there, drop the redundant `properties.containsKey` check - `getProperty` already returns `null` for absent keys. Also delete the three data-rows in the blank-grailsVersion Unroll that were failing the `:grails-wrapper:test` task on every JDK 21+ matrix cell (ubuntu-21/25, macos-21, windows-25). Those tests relied on `SystemStubs.catchSystemExit`, which uses `System.setSecurityManager` - JEP 411 deprecated that API in JDK 17, JDK 21+ throws without `-Djava.security.manager=allow`, and JEP 486 removes it entirely in JDK 24+. There is no version-portable replacement. The fail-fast-on-blank-grailsVersion production behaviour introduced in 791866172a is preserved; the dropped rows were testing that behaviour at a level (capturing `System.exit(1)`) that no longer has a JDK-portable testing strategy without either a production-code change dedicated to testability or heavyweight subprocess fixtures, neither of which is warranted for an error-path whose failure mode is obvious from code inspection. All 20 remaining `:grails-wrapper:test` specs pass locally. Assisted-by: claude-code:claude-opus-4-6 Report URL: https://github.com/apache/grails-core/actions/runs/24911520146 With regards, GitHub Actions via GitBox
