jdaugherty commented on code in PR #15677:
URL: https://github.com/apache/grails-core/pull/15677#discussion_r3310654822


##########
grails-data-graphql/plugin/src/main/groovy/org/grails/gorm/graphql/plugin/testing/GraphQLSpec.groovy:
##########
@@ -56,59 +65,90 @@ trait GraphQLSpec {
     @TupleConstructor
     static class GraphQLRequestHelper {
 
-        RxHttpClient rest
+        private static final MediaType APPLICATION_GRAPHQL = 
MediaType.parseMediaType('application/graphql')
+        private static final JsonSlurper SLURPER = new JsonSlurper()
 
-        HttpResponse<Map> graphql(String requestBody) {
-            rest.exchange(HttpRequest.POST('/graphql', 
requestBody).contentType('application/graphql'), Map)
-                    .firstOrError().blockingGet()
+        RestClient rest

Review Comment:
   I think this is a fine change, but the object mapper will determine the 
default behavior here and it could be problematic.  We should update the 
grails-docs to warn users so they know about this.



##########
etc/bin/verify-reproducible.sh:
##########
@@ -58,13 +58,36 @@ else
 fi
 
 killall -e java || true
+
+# JDK 21 (default) pass: grails-gradle composite (no Micronaut island), root
+# (Micronaut island skipped), grails-forge composite (transitively pulls in
+# the root build via includeBuild('..'), island skipped there too).
 cd grails-gradle
 ./gradlew publishToMavenLocal --rerun-tasks -PskipTests --no-build-cache
 cd ..
-./gradlew publishToMavenLocal --rerun-tasks -PskipTests --no-build-cache
+./gradlew publishToMavenLocal --rerun-tasks -PskipTests --no-build-cache 
-PskipMicronautProjects
 cd grails-forge
-./gradlew publishToMavenLocal --rerun-tasks -PskipTests --no-build-cache
+./gradlew publishToMavenLocal --rerun-tasks -PskipTests --no-build-cache 
-PskipMicronautProjects
 cd ..
+
+# JDK 25 pass: the Grails-Micronaut "island" only (grails-micronaut,
+# grails-micronaut-bom). Micronaut 5 platform GA targets JVM 25 bytecode so
+# these two artifacts cannot be reproduced on JDK 21. The verification
+# container provides ${JDK_25_HOME}; for local verification outside the
+# container, install Liberica JDK matching $JAVA_VERSION_MICRONAUT in
+# release.yml and export JDK_25_HOME before running this script.
+if [[ -z "${JDK_25_HOME:-}" ]]; then
+  echo "❌ JDK_25_HOME is not set; the Grails-Micronaut island requires a 
separate Liberica JDK 25 install."
+  echo "   In the verification container this is set automatically. Outside 
the container, install Liberica JDK"
+  echo "   matching JAVA_VERSION_MICRONAUT in .github/workflows/release.yml 
and export JDK_25_HOME=/path/to/jdk."
+  exit 1
+fi
+killall -e java || true

Review Comment:
   We probably should add --no-daemon arguments to our gradle calls too



##########
etc/bin/verify-reproducible.sh:
##########
@@ -58,13 +58,36 @@ else
 fi
 
 killall -e java || true
+
+# JDK 21 (default) pass: grails-gradle composite (no Micronaut island), root
+# (Micronaut island skipped), grails-forge composite (transitively pulls in
+# the root build via includeBuild('..'), island skipped there too).
 cd grails-gradle
 ./gradlew publishToMavenLocal --rerun-tasks -PskipTests --no-build-cache
 cd ..
-./gradlew publishToMavenLocal --rerun-tasks -PskipTests --no-build-cache
+./gradlew publishToMavenLocal --rerun-tasks -PskipTests --no-build-cache 
-PskipMicronautProjects
 cd grails-forge
-./gradlew publishToMavenLocal --rerun-tasks -PskipTests --no-build-cache
+./gradlew publishToMavenLocal --rerun-tasks -PskipTests --no-build-cache 
-PskipMicronautProjects

Review Comment:
   Forge doesn't have any micronaut projects? 



-- 
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