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


##########
gradle/test-config.gradle:
##########
@@ -31,25 +31,12 @@ dependencies {
     add('testRuntimeOnly', 'org.junit.platform:junit-platform-launcher')
 }
 
-// Disable build cache for Groovy compilation in CI to ensure AST 
transformations are always applied.
-// AST transformers are applied at compile time, and Gradle's incremental 
compilation might not detect
-// when a transformer itself changes, leading to stale bytecode.
-// This applies to:
-// - compileGroovy
-// - compileTestGroovy
-// - compileGroovyPlugins (if present)
-tasks.withType(GroovyCompile).configureEach {

Review Comment:
   Can you help me understand why you removed this code? 



##########
grails-async/plugin/src/main/groovy/org/grails/plugins/web/async/ControllersAsyncGrailsPlugin.groovy:
##########
@@ -33,8 +33,9 @@ class ControllersAsyncGrailsPlugin extends Plugin {
 
     def grailsVersion = '7.0.0-SNAPSHOT > *'
     def loadAfter = ['controllers']
-    Closure doWithSpring() {
-        { ->
+    Closure doWithSpring() { {
+

Review Comment:
   This probably should be reverted since the original formatting was more clear



##########
gradle/rat-root-config.gradle:
##########
@@ -76,6 +83,15 @@ tasks.named('rat') {
             'build-logic/.idea/**', // grails-gradle idea directories
             'build/**', // build directories
             'buildSrc/build/**', // build directories
+            '**/build/**', // all build directories
+            'node_modules/**', // node modules

Review Comment:
   Is node_modules still required here? 



##########
grails-data-hibernate5/core/src/main/groovy/org/grails/orm/hibernate/cfg/PropertyConfig.groovy:
##########
@@ -109,7 +110,8 @@ class PropertyConfig extends Property {
      * Whether or not this column is updatable by hibernate
      * @deprecated Use updatable instead
      */
-    @Deprecated // Cheap to keep around for backwards compatibility
+    @Deprecated
+    // Cheap to keep around for backwards compatibility

Review Comment:
   We should restore this formatting



##########
gradle/rat-root-config.gradle:
##########
@@ -76,6 +83,15 @@ tasks.named('rat') {
             'build-logic/.idea/**', // grails-gradle idea directories
             'build/**', // build directories
             'buildSrc/build/**', // build directories
+            '**/build/**', // all build directories
+            'node_modules/**', // node modules
+            'local.properties', // local properties
+            'test_output.log', // test output log
+            '0_build_grails.txt', // large build log
+            'fix_codenarc.py', // fix codenarc script

Review Comment:
   This code would ship with the distribution so it must have a license on it.  
We either need to remove it from distribution or put the proper license header 
on it.



##########
fix_codenarc.py:
##########
@@ -0,0 +1,79 @@
+import os
+import re
+import sys
+
+def fix_file(file_path):

Review Comment:
   1. This script should be in etc/bin
   2. Why use python instead of groovy? 



##########
gradle/grails-extension-gradle-config.gradle:
##########
@@ -31,11 +31,4 @@ grails {
     // this means you MUST publish locally via ./gradlew 
:grails-bom:publishMavenPublicationToLocalBomRepository
     // this causes unexpected version mismatches in the various plugin projects
     springDependencyManagement = false
-
-    // Allow CI to toggle Groovy invokedynamic (indy) via -PgrailsIndy=true
-    // This enables testing functional tests with both indy enabled and 
disabled.
-    // See: https://github.com/apache/grails-core/issues/15321
-    if (project.hasProperty('grailsIndy')) {

Review Comment:
   Why was this removed?  We still need this I think.



##########
gradle/rat-root-config.gradle:
##########
@@ -76,6 +83,15 @@ tasks.named('rat') {
             'build-logic/.idea/**', // grails-gradle idea directories
             'build/**', // build directories
             'buildSrc/build/**', // build directories
+            '**/build/**', // all build directories
+            'node_modules/**', // node modules
+            'local.properties', // local properties

Review Comment:
   Let's remove these other files that aren't related / checked in? 



##########
grails-data-hibernate5/core/src/main/groovy/org/grails/orm/hibernate/cfg/GrailsHibernateUtil.java:
##########
@@ -422,30 +420,6 @@ public static Object unwrapIfProxy(Object instance) {
         return proxyHandler.unwrap(instance);
     }
 
-    /**
-     * @deprecated Use {@link  
MultipleDataSourceSupport#getDefaultDataSource(PersistentEntity)} instead
-     */
-    @Deprecated

Review Comment:
   Was this added as Deprecated(forRemoval = true) in 7.1?  



##########
grails-data-hibernate5/core/build.gradle:
##########
@@ -91,3 +93,8 @@ apply {
     from 
rootProject.layout.projectDirectory.file('gradle/grails-data-tck-config.gradle')
     from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle')
 }
+
+// Exclude copied Spring Framework classes from checkstyle (they follow 
Spring's code style)
+checkstyleMain {
+    exclude '**/org/grails/orm/hibernate/support/hibernate5/**'

Review Comment:
   If we copy it into the project, I would have expected us to add an 
additional change to the NOTICE & we have to audit the license headers.  We 
should also adhere to our code style, so I believe this should be removed.



##########
grails-data-hibernate5/core/src/main/groovy/org/grails/orm/hibernate/cfg/HibernateMappingContext.java:
##########
@@ -66,16 +66,14 @@ public class HibernateMappingContext extends 
AbstractMappingContext {
      * @param contextObject The context object (for example a Spring 
ApplicationContext)
      * @param persistentClasses The persistent classes
      */
-    public HibernateMappingContext(HibernateConnectionSourceSettings settings, 
Object contextObject, Class... persistentClasses) {
+    public HibernateMappingContext(HibernateConnectionSourceSettings settings, 
Object contextObject, Class<?>... persistentClasses) {
         this.mappingFactory = new HibernateMappingFactory();
 
         // The mapping factory needs to be configured before initialize can be 
safely called
         initialize(settings);
 
-        if (settings != null) {

Review Comment:
   So settings can never be null now? 



##########
gradle/rat-root-config.gradle:
##########
@@ -76,6 +83,15 @@ tasks.named('rat') {
             'build-logic/.idea/**', // grails-gradle idea directories
             'build/**', // build directories
             'buildSrc/build/**', // build directories
+            '**/build/**', // all build directories
+            'node_modules/**', // node modules
+            'local.properties', // local properties
+            'test_output.log', // test output log
+            '0_build_grails.txt', // large build log
+            'fix_codenarc.py', // fix codenarc script
+            '*_VIOLATIONS.md', // generated violation reports
+            'plans/*.md', // development plans
+            'grails-data-hibernate7/*.md', // hibernate 7 migration docs

Review Comment:
   The docs will need a license header.



##########
grails-data-hibernate5/core/src/main/groovy/org/grails/orm/hibernate/proxy/HibernateProxyHandler.java:
##########
@@ -1,35 +1,44 @@
 /*
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
+ * Licensed to the Apache Software Foundation (ASF) under one

Review Comment:
   This does not match our header that we have checked in.  We need to revert 
to the consistent format.



##########
grails-data-hibernate5/core/src/main/groovy/org/grails/orm/hibernate/cfg/PropertyConfig.groovy:
##########
@@ -100,7 +100,8 @@ class PropertyConfig extends Property {
      *
      * @deprecated Use updatable instead
      */
-    @Deprecated // Cheap to keep around for backwards compatibility
+    @Deprecated

Review Comment:
   The comment probably should be on the original line & this reverted.



##########
gradle/test-config.gradle:
##########
@@ -60,6 +47,13 @@ tasks.withType(Test).configureEach {
 
     useJUnitPlatform()
     jvmArgs += java17moduleReflectionCompatibilityArguments
+    develocity {
+        testRetry {

Review Comment:
   we've intentionally remove testRetry in the past because it masks flaky 
tests.  I think this should be removed.



##########
grails-async/plugin/src/test/groovy/grails/async/services/AsyncTransactionalServiceSpec.groovy:
##########
@@ -27,10 +29,13 @@ import org.springframework.transaction.TransactionException
 import org.springframework.transaction.TransactionStatus
 import org.springframework.transaction.annotation.Transactional
 import org.springframework.transaction.support.SimpleTransactionStatus
+import spock.lang.PendingFeature
 import spock.lang.Specification
 
+
 class AsyncTransactionalServiceSpec extends Specification {
 
+    @Ignore("FIX THIS LATER")

Review Comment:
   This should be `@PendingFeature` instead.  Also, is this broken now in 
hibernate 5 or 7 only? 



##########
grails-async/core/src/main/groovy/org/grails/async/transform/internal/DelegateAsyncTransformation.java:
##########
@@ -198,9 +199,9 @@ private static ClassNode alignReturnType(final ClassNode 
receiver, final ClassNo
 
     protected DelegateAsyncTransactionalMethodTransformer 
lookupAsyncTransactionalMethodTransformer() {
         try {
-            Class<?> transformerClass = 
getClass().getClassLoader().loadClass("org.grails.async.transform.internal.DefaultDelegateAsyncTransactionalMethodTransformer");
+            Class<?> transformerClass = 
Thread.currentThread().getContextClassLoader().loadClass("org.grails.async.transform.internal.DefaultDelegateAsyncTransactionalMethodTransformer");

Review Comment:
   I'm assuming you made this change because of PMD?  The class loader has been 
notoriously difficult to get correct in the past - using the context task 
loader won't work with how we dynamically load the CLIs in some scenarios.



##########
gradle/rat-root-config.gradle:
##########
@@ -76,6 +83,15 @@ tasks.named('rat') {
             'build-logic/.idea/**', // grails-gradle idea directories
             'build/**', // build directories
             'buildSrc/build/**', // build directories
+            '**/build/**', // all build directories
+            'node_modules/**', // node modules
+            'local.properties', // local properties
+            'test_output.log', // test output log
+            '0_build_grails.txt', // large build log
+            'fix_codenarc.py', // fix codenarc script
+            '*_VIOLATIONS.md', // generated violation reports
+            'plans/*.md', // development plans

Review Comment:
   If we distribute a document, we have to put a license header on it.  



##########
grails-async/core/src/main/groovy/org/grails/async/transform/internal/DelegateAsyncTransformation.java:
##########
@@ -214,7 +215,7 @@ private static boolean isCandidateMethod(MethodNode 
declaredMethod) {
             !GROOVY_OBJECT_CLASS_NODE.hasMethod(declaredMethod.getName(), 
declaredMethod.getParameters());
     }
 
-    private static Parameter[] copyParameters(Parameter[] parameterTypes) {
+    private static Parameter[] copyParameters(Parameter... parameterTypes) {

Review Comment:
   Assume this is PMD too? 



##########
BRANCHES.md:
##########
@@ -0,0 +1,255 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License.  You may obtain a copy of the License at
+
+   https://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied.  See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+| Branch | Date | Type |
+| --- | --- | --- |
+| origin/GRAILS-6737-Groovy-1.7.5 | 2010-09-17 | CLOSED |
+| origin/GRAILS-6278 | 2010-09-17 | CLOSED |
+| origin/GRAILS-5087 | 2012-12-07 | CLOSED |
+| origin/GRAILS-9997 | 2013-07-30 | CLOSED |
+| origin/GRAILS-10533 | 2013-10-14 | CLOSED |
+| origin/GRAILS-10512 | 2013-10-14 | CLOSED |
+| origin/GRAILS-10613 | 2013-10-15 | CLOSED |
+| origin/GRAILS-10660 | 2013-10-29 | CLOSED |
+| origin/GRAILS-10631 | 2013-11-05 | CLOSED |
+| origin/GRAILS-10728 | 2013-11-06 | CLOSED |
+| origin/GRAILS-10448 | 2013-11-06 | CLOSED |
+| origin/GRAILS-10780 | 2013-11-19 | CLOSED |
+| origin/GRAILS-10813 | 2013-11-21 | CLOSED |
+| origin/GRAILS-10838 | 2013-11-25 | CLOSED |
+| origin/GRAILS-10826 | 2013-11-26 | CLOSED |
+| origin/GRAILS-10835 | 2013-11-27 | CLOSED |
+| origin/GRAILS-10853 | 2013-12-02 | CLOSED |
+| origin/GRAILS-10868 | 2013-12-03 | CLOSED |
+| origin/GRAILS-10871 | 2013-12-03 | CLOSED |
+| origin/GRAILS-9664 | 2013-12-04 | CLOSED |
+| origin/GRAILS-10882 | 2013-12-09 | CLOSED |
+| origin/GRAILS-10852 | 2013-12-13 | CLOSED |
+| origin/GRAILS-10910 | 2013-12-13 | CLOSED |
+| origin/GRAILS-10908 | 2013-12-14 | CLOSED |
+| origin/GRAILS-10683b | 2013-12-23 | CLOSED |
+| origin/GRAILS-10897 | 2014-01-08 | CLOSED |
+| origin/GRAILS-8426 | 2014-01-10 | CLOSED |
+| origin/GRAILS-10973 | 2014-01-13 | CLOSED |
+| origin/GRAILS-11003 | 2014-01-22 | CLOSED |
+| origin/GRAILS-11011 | 2014-01-22 | CLOSED |
+| origin/GRAILS-11075 | 2014-02-04 | CLOSED |
+| origin/GRAILS-11093 | 2014-02-06 | CLOSED |
+| origin/GRAILS-11104 | 2014-02-11 | CLOSED |
+| origin/GRAILS-10683 | 2014-02-13 | CLOSED |
+| origin/GRAILS-11145 | 2014-02-26 | CLOSED |
+| origin/GRAILS-11197 | 2014-03-10 | CLOSED |
+| origin/GRAILS-9686 | 2014-03-14 | CLOSED |
+| origin/GRAILS-10031 | 2014-03-17 | CLOSED |
+| origin/GRAILS-11222 | 2014-03-18 | CLOSED |
+| origin/GRAILS-11238 | 2014-03-19 | CLOSED |
+| origin/GRAILS-11242 | 2014-03-24 | CLOSED |
+| origin/GRAILS-11204 | 2014-05-01 | CLOSED |
+| origin/GRAILS-6766 | 2014-05-01 | CLOSED |
+| origin/GRAILS-9996 | 2014-05-08 | CLOSED |
+| origin/GRAILS-10905 | 2014-05-08 | CLOSED |
+| origin/GRAILS-11448 | 2014-05-27 | CLOSED |
+| origin/GRAILS-11453 | 2014-05-28 | CLOSED |
+| origin/GRAILS-11462 | 2014-06-02 | CLOSED |
+| origin/GRAILS-11129 | 2014-06-10 | CLOSED |
+| origin/GRAILS-11505 | 2014-06-13 | CLOSED |
+| origin/GRAILS-11505B | 2014-06-17 | CLOSED |
+| origin/GRAILS-11505C | 2014-06-17 | CLOSED |
+| origin/GRAILS-11585 | 2014-07-16 | CLOSED |
+| origin/GRAILS-11576 | 2014-07-25 | CLOSED |
+| origin/GRAILS-11625 | 2014-08-04 | CLOSED |
+| origin/GRAILS-11543 | 2014-08-14 | CLOSED |
+| origin/GRAILS-11666 | 2014-08-18 | CLOSED |
+| origin/GRAILS-11661 | 2014-08-18 | CLOSED |
+| origin/GRAILS-11686 | 2014-08-26 | CLOSED |
+| origin/GRAILS-11680 | 2014-10-21 | CLOSED |
+| origin/GRAILS-11791 | 2014-10-23 | CLOSED |
+| origin/GRAILS-11748 | 2014-10-23 | CLOSED |
+| origin/GRAILS-11806 | 2014-10-30 | CLOSED |
+| origin/GRAILS-11638 | 2014-10-30 | CLOSED |
+| origin/GRAILS-11976 | 2015-02-09 | CLOSED |
+| origin/GRAILS-11973 | 2015-02-09 | CLOSED |
+| origin/GRAILS-11958 | 2015-02-09 | CLOSED |
+| origin/GRAILS-12112 | 2015-03-25 | CLOSED |
+| origin/issue_9183 | 2015-08-13 | CLOSED |
+| origin/issue10188 | 2016-10-27 | CLOSED |
+| origin/issue10282 | 2016-11-19 | CLOSED |
+| origin/GRAILS-10300-10315 | 2016-12-09 | CLOSED |
+| origin/issue10423 | 2017-01-24 | CLOSED |
+| origin/GRAILS-10392 | 2017-02-09 | CLOSED |
+| origin/issue10502 | 2017-02-27 | CLOSED |
+| origin/issue10600 | 2017-04-22 | CLOSED |
+| origin/issue-10844 | 2018-02-26 | CLOSED |
+| origin/issue-10844_take2 | 2020-11-05 | CLOSED |
+| origin/feature/scaffolding-5.1.0 | 2024-09-11 | CLOSED |
+| origin/renovate/major-jansi.version | 2024-10-24 | CLOSED |
+| origin/renovate/major-javahamcrest-monorepo | 2024-10-24 | CLOSED |
+| origin/add-grails-events-transform | 2024-12-23 | CLOSED |
+| origin/renovate/alpine-3.x | 2024-12-27 | CLOSED |
+| origin/renovate/actions-upload-artifact-4.x | 2025-02-21 | CLOSED |
+| origin/renovate/com.gradle.develocity-3.x | 2025-02-25 | CLOSED |
+| origin/renovate/io.micronaut.serde-micronaut-serde-jackson-2.x | 2025-03-03 
| CLOSED |
+| origin/renovate/io.micronaut-micronaut-http-client-4.x | 2025-03-13 | CLOSED 
|
+| origin/issue-14804 | 2025-06-11 | CLOSED |
+| origin/retry-build-step | 2025-06-18 | CLOSED |
+| origin/renovate/micronautversion | 2025-07-12 | CLOSED |
+| origin/addition-micronaut-feature-test | 2025-08-06 | CLOSED |
+| origin/update-rest-transform-dependency | 2025-08-07 | CLOSED |
+| origin/JavaExec-argsFile | 2025-09-22 | CLOSED |
+| origin/java-25-support-test | 2025-09-24 | CLOSED |
+| origin/fix-starter-published-dependencies | 2025-10-04 | CLOSED |
+| origin/fix/null-constructor-arg-groovy4 | 2026-03-03 | CLOSED |
+| origin/issue_8974 | 2015-03-23 | MERGE |
+| origin/issue_610 | 2015-04-06 | MERGE |
+| origin/issue-11211 | 2019-01-03 | MERGE |
+| origin/patch-decouple-gradle | 2024-07-24 | MERGE |
+| origin/web-profile-jar-artifact | 2025-10-08 | MERGE |
+| origin/jrebelFeatureFix | 2025-10-29 | MERGE |
+| origin/chore/gsp_and_gson_dependencies_and_apply | 2025-11-12 | MERGE |
+| origin/fix/issue_15228-respond-errors | 2025-11-18 | MERGE |
+| origin/banner-versions | 2025-11-19 | MERGE |
+| origin/remove-webjars-locator-core-dep | 2025-11-26 | MERGE |
+| origin/merge-back-7.0.5 | 2026-01-12 | MERGE |
+| origin/invokeDynamicDisable | 2026-01-17 | MERGE |
+| origin/deps/update-java-gradle-groovy-versions | 2026-01-27 | MERGE |
+| origin/task/add-agents-md-15145 | 2026-01-30 | MERGE |
+| origin/matrei-patch-1 | 2026-02-12 | MERGE |
+| origin/fix/flaky-geb-tests | 2026-02-19 | MERGE |
+| origin/refactor/centralize-groovydoc-plugin | 2026-02-19 | MERGE |
+| origin/test/query-connection-routing | 2026-02-21 | MERGE |
+| origin/micronaut-fixes-2 | 2026-02-21 | MERGE |
+| origin/forgeReloadingChanges | 2026-02-23 | MERGE |
+| origin/database-cleanup-feature | 2026-02-25 | MERGE |
+| origin/fix-detachedcriteria-join-get-hibernate7 | 2026-02-25 | MERGE |
+| origin/fix-detachedcriteria-join-get | 2026-02-25 | MERGE |
+| origin/fix/where-query-bugs | 2026-02-26 | MERGE |
+| origin/fix/async-promise-spec-read-timeout | 2026-03-03 | MERGE |
+| origin/fix/groovy-joint-ci-stability | 2026-03-03 | MERGE |
+| origin/groovy2 | 2012-03-26 | OTHER |
+| origin/cs-bug-arrays | 2013-04-08 | OTHER |
+| origin/scb-encoding-support | 2013-04-10 | OTHER |
+| origin/grails9190 | 2013-05-15 | OTHER |
+| origin/reactor | 2013-05-31 | OTHER |
+| origin/expressionevaluationutils | 2013-09-22 | OTHER |
+| origin/troubleshootingmasterbranch | 2013-11-11 | OTHER |
+| origin/jefftestbranch | 2013-11-12 | OTHER |
+| origin/bindingformatimprovement | 2013-12-16 | OTHER |
+| origin/beanbuilder | 2014-01-16 | OTHER |
+| origin/typechecking | 2014-01-16 | OTHER |
+| origin/rule_refactoring | 2014-01-28 | OTHER |
+| origin/springloaded_115 | 2014-02-27 | OTHER |
+| origin/grails-web-splitting | 2014-03-22 | OTHER |
+| origin/annotation_collector_problem | 2014-03-25 | OTHER |
+| origin/binding_collection_problem | 2014-04-01 | OTHER |
+| origin/jsp-refactor | 2014-04-11 | OTHER |
+| origin/GROOVY-6836-ClassCastException | 2014-07-21 | OTHER |
+| origin/grails-shell | 2014-09-30 | OTHER |
+| origin/grails-shell-2 | 2014-10-02 | OTHER |
+| origin/grails-shell-3 | 2014-10-06 | OTHER |
+| origin/gsp-split2 | 2014-12-05 | OTHER |
+| origin/Groovy_242_stackmap_frame_error | 2015-03-19 | OTHER |
+| origin/token_replacement | 2015-03-30 | OTHER |
+| origin/owasp | 2015-05-20 | OTHER |
+| origin/command_object_init | 2016-02-25 | OTHER |
+| origin/dont_constrain_readonly_properties | 2016-03-02 | OTHER |
+| origin/json_issue | 2016-03-15 | OTHER |
+| origin/build_scan | 2017-07-27 | OTHER |
+| origin/plugin_issues | 2018-06-15 | OTHER |
+| origin/jackson-renderer-poc | 2018-11-23 | OTHER |
+| origin/gorm-entity | 2018-12-04 | OTHER |
+| origin/gradle-plugin-datastore-rest-client-removal | 2019-03-29 | OTHER |
+| origin/groovy2.5.11 | 2020-04-17 | OTHER |
+| origin/eric/scopeDefaultFix | 2020-07-21 | OTHER |
+| origin/puneetbehl/enableIncrementalGroovyCompile | 2021-08-06 | OTHER |
+| origin/mavenLocal | 2021-12-08 | OTHER |
+| origin/gradle/experiment4 | 2022-01-26 | OTHER |
+| origin/upgrade/apache-groovy | 2022-09-01 | OTHER |
+| 
origin/buxfix/12596-grails-520-create-app-throws-cannot-resolve-dependency-orgspringframeworkbootspring-boot-dependencies270-no-repositories-are-defined
 | 2022-09-14 | OTHER |
+| origin/merge-5_2_x | 2022-11-10 | OTHER |
+| 
origin/12082-micronaut-beans-do-not-receive-configuration-from-environments-block
 | 2022-12-06 | OTHER |
+| origin/cleanup/grails-shell | 2023-09-06 | OTHER |
+| origin/convert-ContainerRender-to-trait | 2024-12-10 | OTHER |
+| origin/renovate/pin-dependencies | 2025-03-07 | OTHER |
+| origin/groovy-debug-ast-logging | 2025-04-29 | OTHER |
+| origin/groovydoc-tool-rewrite | 2025-05-23 | OTHER |
+| origin/markup-issue | 2025-06-13 | OTHER |
+| origin/url-mapping-testing | 2025-06-14 | OTHER |
+| origin/feature/gradle9 | 2025-09-18 | OTHER |
+| origin/grails7-initial-neo4jUpdates | 2025-10-02 | OTHER |
+| origin/groovy-5-fixes | 2026-02-05 | OTHER |
+| origin/micronaut-fixes | 2026-02-18 | OTHER |
+| origin/configuration-command | 2026-02-19 | OTHER |
+| origin/renovate/micronautserdejacksonversion | 2025-03-03 | OPEN |
+| origin/renovate/major-apache-maven-resolver-monorepo | 2025-07-12 | OPEN |
+| origin/issue-11795 | 2025-08-18 | OPEN |
+| origin/fix/clarify-caffeine | 2025-09-23 | OPEN |
+| origin/issue15290 | 2025-12-16 | OPEN |
+| origin/dependabot/github_actions/gradle/actions-5 | 2026-02-03 | OPEN |
+| 
origin/dependabot/gradle/grails-forge/7.0.x/com.gradle.common-custom-user-data-gradle-plugin-2.4.0
 | 2026-02-03 | OPEN |
+| origin/groovy-5 | 2026-02-04 | OPEN |
+| origin/dependabot/github_actions/actions/cache-5 | 2026-02-17 | OPEN |
+| origin/feat/publish-groovydoc-plugin | 2026-02-21 | OPEN |
+| origin/issue-13752-upgrade-jansi-jline | 2026-02-25 | OPEN |
+| origin/upgrade/gradle-9.3.1 | 2026-02-25 | OPEN |
+| origin/feat/gradle-managed-version-overrides | 2026-02-26 | OPEN |
+| origin/docs/configuration-hybrid | 2026-02-26 | OPEN |
+| origin/deprecate-for-removal | 2026-02-27 | OPEN |
+| origin/docs/spring-security-upgrade-instructions | 2026-02-28 | OPEN |
+| origin/conditionalPluginConfiguration | 2026-03-01 | OPEN |
+| origin/fix/negative-number-locale-15178 | 2026-03-02 | OPEN |
+| origin/fix/scaffolding-test-flaky-login | 2026-03-03 | OPEN |
+| origin/feature/taglib-method-actions | 2026-03-03 | OPEN |
+| origin/fix/dataservice-null-datastore-guard | 2026-03-03 | OPEN |
+| origin/fix/ersatz-roundtrip-connection-reset | 2026-03-03 | OPEN |
+| origin/feat/http-client-testing-support | 2026-03-05 | OPEN |
+| origin/1.1.x | 2009-11-26 | RELEASE |
+| origin/1.3.0.RC2 | 2010-04-23 | RELEASE |
+| origin/1.2.x | 2010-10-11 | RELEASE |
+| origin/1.3.x | 2012-06-01 | RELEASE |
+| origin/2.0.x | 2013-05-30 | RELEASE |
+| origin/2.1.x | 2013-09-21 | RELEASE |
+| origin/2.2.x | 2014-07-27 | RELEASE |
+| origin/2.3.x | 2015-06-17 | RELEASE |
+| origin/2.4.x | 2015-09-08 | RELEASE |
+| origin/3.0.x | 2016-07-27 | RELEASE |
+| origin/3.1.x | 2017-05-09 | RELEASE |
+| origin/3.1.x-issue-9058 | 2017-05-23 | RELEASE |
+| origin/3.2.x | 2019-10-10 | RELEASE |
+| origin/master | 2021-11-24 | RELEASE |
+| origin/4.0.x | 2022-06-03 | RELEASE |
+| origin/5.1.x | 2022-10-13 | RELEASE |
+| origin/5.0.x | 2022-11-25 | RELEASE |
+| origin/5.2.x | 2023-02-13 | RELEASE |
+| origin/2.5.x | 2023-12-17 | RELEASE |
+| origin/3.3.x | 2024-01-09 | RELEASE |
+| origin/4.1.x | 2024-01-26 | RELEASE |
+| origin/5.3.x | 2024-01-26 | RELEASE |
+| origin/6.1.x | 2024-02-27 | RELEASE |
+| origin/6.0.x | 2024-04-09 | RELEASE |
+| origin/5.4.x | 2024-09-11 | RELEASE |
+| origin/6.2.x | 2025-01-03 | RELEASE |
+| origin/gh-pages | 2025-01-07 | RELEASE |
+| origin/7.0.x-hibernate6 | 2025-10-15 | RELEASE |
+| origin/7.0.x-binding-error-14947-15147 | 2025-10-21 | RELEASE |
+| origin/7.1.x-hibernate6 | 2025-12-03 | RELEASE |
+| origin/7.1.x | 2026-02-27 | RELEASE |
+| origin/8.0.x | 2026-02-28 | RELEASE |
+| origin/8.0.x-hibernate7 | 2026-03-01 | RELEASE |
+| origin/7.0.x | 2026-03-04 | RELEASE |
+| origin | 2026-03-04 | RELEASE |
+| origin/8.0.x-hibernate7-dev | 2026-03-05 | RELEASE |

Review Comment:
   Shouldn't we remove this file for now?  



##########
NOTICE:
##########
@@ -22,4 +22,8 @@ may be obtained from:
 http://www.oracle.com/webfolder/technetwork/jsc/xml/ns/javaee/index.html
 
 This product includes software developed by the OpenSymphony Group 
(http://www.opensymphony.com/). It uses Sitemesh2,
-licensed under the OpenSymphony Software License, Version 1.1. See 
licenses/LICENSE-opensymphony.txt for the full license terms.
\ No newline at end of file
+licensed under the OpenSymphony Software License, Version 1.1. See 
licenses/LICENSE-opensymphony.txt for the full license terms.
+
+Liquibase Hibernate Integration

Review Comment:
   Can you help me understand what Liquibase code has been copied into this 
project? 



##########
gradle/publish-root-config.gradle:
##########
@@ -116,6 +118,12 @@ def publishedProjects = [
         'grails-data-hibernate5-core',
         'grails-data-hibernate5-dbmigration',
         'grails-data-hibernate5-spring-boot',
+        // hibernate7
+        'grails-data-hibernate7',
+        'grails-data-hibernate7-core',
+        //TODO: 'grails-data-hibernate7-dbmigration',

Review Comment:
   The NOTICE indicates liquibase code, but we still have this project 
commented out?



##########
gradle/rat-root-config.gradle:
##########
@@ -76,6 +83,15 @@ tasks.named('rat') {
             'build-logic/.idea/**', // grails-gradle idea directories
             'build/**', // build directories
             'buildSrc/build/**', // build directories
+            '**/build/**', // all build directories

Review Comment:
   We have build directories in our code path because we have a package with 
"build" in it, so we can't wholesale exclude this way.



##########
grails-data-test-report/build.gradle:
##########
@@ -31,14 +31,7 @@ dependencies {
     testReportAggregation project(':grails-datamapping-core-test')
     testReportAggregation project(':grails-datamapping-validation')
     testReportAggregation project(':grails-datastore-web')
-}
-
-reporting {

Review Comment:
   Why was the aggregate test report removed?  I think that's the whole point 
of this project



##########
gradle/grails-data-tck-config.gradle:
##########
@@ -89,8 +97,8 @@ tasks.withType(Test).configureEach { Test it ->
         }
 
         true
-    }
+        }
 
-    it.testClassesDirs = objects.fileCollection().from(extractTck, 
testClassesDirs)
-    it.finalizedBy(cleanupTask)
-}
+        it.testClassesDirs = project.files(extractTck.map { task -> 
task.outputs.files }, sourceSets.test.output.classesDirs)

Review Comment:
   map eagerly unwraps these while before it used from() which would cause it 
to be lazy.



##########
gradle/rat-root-config.gradle:
##########
@@ -76,6 +83,15 @@ tasks.named('rat') {
             'build-logic/.idea/**', // grails-gradle idea directories
             'build/**', // build directories
             'buildSrc/build/**', // build directories
+            '**/build/**', // all build directories
+            'node_modules/**', // node modules
+            'local.properties', // local properties
+            'test_output.log', // test output log
+            '0_build_grails.txt', // large build log
+            'fix_codenarc.py', // fix codenarc script
+            '*_VIOLATIONS.md', // generated violation reports

Review Comment:
   Why can't we put these reports in the build directory? 



##########
gradle/test-config.gradle:
##########
@@ -31,25 +31,12 @@ dependencies {
     add('testRuntimeOnly', 'org.junit.platform:junit-platform-launcher')
 }
 
-// Disable build cache for Groovy compilation in CI to ensure AST 
transformations are always applied.
-// AST transformers are applied at compile time, and Gradle's incremental 
compilation might not detect
-// when a transformer itself changes, leading to stale bytecode.
-// This applies to:
-// - compileGroovy
-// - compileTestGroovy
-// - compileGroovyPlugins (if present)
-tasks.withType(GroovyCompile).configureEach {
-    outputs.cacheIf { !isCiBuild }
-}
-
 tasks.withType(Test).configureEach {
-    // Disable build cache for tests in CI to ensure they always run
-    outputs.cacheIf { !isCiBuild }

Review Comment:
   Why was this removed? 



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