This is an automated email from the ASF dual-hosted git repository.

dependabot[bot] pushed a change to branch 
dependabot/github_actions/actions/cache-6
in repository https://gitbox.apache.org/repos/asf/grails-core.git


    omit 1bdfe3f494 build(deps): bump actions/cache from 4 to 6
     add aba633bdf2 Remove the hardcoded servlet API dependency from gspCompile
     add df12ea261e Merge branch '8.0.x' into 
fix/gspcompile-bom-managed-servlet-api
     add 7242de2e8d Declare the servlet API on grails-web-gsp and document 
gspCompile
     add 55db8cc7e2 fix: route plugin src/main/scripts into companion -cli jars
     add 7a3049d707 fix: use unique Sync outputs for plugin command packaging
     add 2bd0199970 fix: type copyTemplates as Sync in spring-security-ui
     add f77f0cadef fix: unique Copy outputs for plugin commands (no 
Sync/filter)
     add 82ebbd775e fix: keep plugin templates out of the processResources 
filters
     add 492b3c5aef Merge branch '8.0.x' into 
fix/move-plugin-scripts-to-cli-companion
     add 3d129b7140 Merge pull request #16082 from 
apache/fix/move-plugin-scripts-to-cli-companion
     add ea59fc5192 Merge branch '8.0.x' into 
fix/gspcompile-bom-managed-servlet-api
     add 063ca5266c Merge pull request #16068 from 
codeconsole/fix/gspcompile-bom-managed-servlet-api
     add 308857cd77 fix: replace Gradle APIs deprecated for removal in Gradle 10
     add 15d7cfaa2e Merge pull request #16075 from 
codeconsole/fix/gradle10-plugin-deprecations-8.0.x
     add 80bf683305 Remove the vestigial gspCompile configuration
     add 3603e6919b Merge pull request #16088 from 
codeconsole/refactor/remove-gspcompile-configuration
     add de314a0557 Fix reproducible build artifact verification
     add b86d50422c Merge pull request #16091 from apache/post-8.0.0-M5-release
     add a8a12d5d5a Add @GrailsBeans: compile a bean-wiring DSL into real 
@AutoConfiguration classes
     add e361649056 Allow @GrailsBeans directly on a *GrailsPlugin.groovy 
Plugin subclass
     add 0ed1645459 Verify and document @GrailsBeans compatibility with 
@CompileStatic
     add 79b2f3f158 Address review findings: publishing, static compilation, 
arg validation, silent failures
     add 48ed0fa86c Statically compile generated GrailsBeans plugin siblings
     add 360bc4306e Document @GrailsBeans DSL limitations
     add ff2241926c Add primary(), lazy(), and scope(...) qualifiers to the 
beans DSL
     add d5c7d2d017 Correct inaccurate claim about per-bean Spring conditionals 
in docs
     add 4cf0a7ab11 Add a generic annotate(...) qualifier to the beans DSL
     add 4dea95c048 Add field(...) and method(...) to the beans DSL
     add 6385b338be Convert the real grails-i18n autoconfiguration to 
@GrailsBeans
     add e4f92b1eab Use the real Settings constants for @Value keys in the i18n 
conversion
     add dc07794825 Remove unnecessary method() indirection from the i18n 
conversion
     add 8c35ae1e56 Split a merged comment back into its two original topics
     add c038c985c3 Address review: propagate Conditional*/Import* annotations 
to the generated sibling, fix acronym decapitalization, reject duplicate 
bean/field/method names
     add 12fa9dfd06 Document 
field()/method()/.primary()/.lazy()/.scope()/.annotate() and 
sibling-annotation-move on @GrailsBeans
     add ec5f8e52ac Address a second review: recurse through composed 
condition/import annotations, add @GrailsBeans(autoConfigurationName = ...)
     add 959fa3df34 Reject autoConfigurationName on a standalone class, where 
it silently had no effect
     add b36edf3fa8 Document the full sibling-annotation move, composed 
annotations, autoConfigurationName, and the bean-name-is-a-Java-identifier 
limitation
     add 6806043b23 Fix the bean-name-limitation workaround: it doesn't apply 
to the Plugin-subclass form
     add 32b0e06e5c Use autoConfigurationName to preserve 
I18nAutoConfiguration's identity through the @GrailsBeans conversion
     add 48d4af2cb9 Complete the I18nAutoConfiguration identity restoration 
(previous commit only carried the file rename)
     add 471008b6d2 Add bean(...).named(...) so a bean name that isn't a valid 
Java identifier can still be expressed
     add 98089e5552 Make .named(...) optional: fall back to a synthesized 
<type>$N method name instead of a compile error
     add bdb6b63a2b Drop the redundant explicit bean names that just repeated 
the convention-derived one
     add faf14de109 Reject blank/reserved-keyword names, add ImportResource to 
the sibling-move list, and rename .named(...) to .methodNamed(...)
     add dde9f33b67 Keep localeChangeInterceptor's explicit bean name; verify 
beforeName ordering and availableLocaleResolver's derived name
     add b9063a78ed Rename .methodNamed to .methodName; auto-move 
@ComponentScan/@PropertySources; add moveAnnotations escape hatch
     add a019de05f3 Remove .methodName(...) from the DSL: generated method 
names are an implementation detail
     add 31feae1ed2 Make bean/member name-collision handling independent of 
declaration order
     add c41c33b2b1 Reserve existing host and hierarchy member names before 
choosing generated names
     add 21f69f9210 Traverse the full interface graph when reserving existing 
member names
     add 2ff9ebcda5 Reserve the accessor names Groovy will synthesize for 
properties
     add e0f8d13f16 Consolidate comments that restated each other or nearby 
documentation
     add 07e89bbde0 Groovy-fy the beans DSL: suffix-derived sibling names, 
richer conditionalOnMissingBean, field .value(...)
     add b936793fde Apply the new DSL conveniences to the real i18n conversion
     add 6148123389 Add .conditionalOnMissingBeanName(...): name-based 
self-back-off stated once
     add 2306135aa2 Reject types given both positionally and via value: on 
conditionalOnMissingBean; fix stale method(...) chaining docs
     add b821683c51 Fold .value(...) placeholders at transform time; compile 
I18nGrailsPlugin with @CompileStatic
     add 98b046b946 Merge branch '8.0.x' into spike/grails-beans-dsl
     add 19a502c420 Flip the DSL argument order to name-first: bean('name', 
Type), field('name', Type), method('name', Type)
     add 48d352fadf Allow one bean name across several bean(...) statements 
when each carries a discriminating condition
     add 855a28347d Document @GrailsBeans for applications, including the 
Application class
     add 32ead2bbc4 Auto-wrap a bare config key given to single-argument 
.value(...)
     add 5e9e162e99 Convert UrlMappingsAutoConfiguration to a @GrailsBeans 
block on UrlMappingsGrailsPlugin
     add 776985dd80 Reject a blank config key in .value(...)
     add 03209d1209 Cover the migrated grailsLinkGenerator behavior in 
UrlMappingsAutoConfigurationSpec
     add 5450dffcfe Add bean(...).staticMethod(): a static @Bean factory method
     add 53dcb874db Convert Sitemesh3AutoConfiguration to a @GrailsBeans block 
on Sitemesh3GrailsPlugin
     add 6e4a52013d Convert MailAutoConfiguration to a @GrailsBeans block on 
MailGrailsPlugin
     add 8ce848237d Cover the enabled JNDI path and qualified session injection 
in MailAutoConfigurationSpec
     add 483d9a543c Simplify the mail sender's nested host/encoding defaults
     add 203a8ae9d9 Use tap for the mail sender's conditional configuration
     add 7d17c3ac4e Polish the converted bean bodies with Groovy idioms
     add 5c71d9e88c Merge branch '8.0.x' into spike/grails-beans-dsl
     add 6986f0cc12 Convert CoreAutoConfiguration to a @GrailsBeans block on 
CoreGrailsPlugin
     add 100b9dbf77 Apply the configured Spring placeholder prefix
     add 311fb9a959 Convert GrailsCacheAutoConfiguration to a @GrailsBeans 
block on CacheGrailsPlugin
     add 700cf9c329 Convert GrailsDomainClassAutoConfiguration to a 
@GrailsBeans block on DomainClassGrailsPlugin
     add 623ce9748d Convert DataBindingConfiguration to a @GrailsBeans block on 
DataBindingGrailsPlugin
     add 4dab384019 Allow bean(Type) with no factory closure
     add 6fe91a2519 Collapse the databinding source creators onto bodyless 
bean(Type)
     add bab7b058f3 Drop redundant explicit bean names from the converted 
plugins
     add cd1639f850 Use idiomatic array concatenation in the data binder bean
     add 350bb9891a Collapse the remaining bare-construction beans onto 
bodyless bean(Type)
     add f4410fd5c0 Use tap for the source registry and wrap the long 
url-mapping chains
     add 285168ddf8 Show the bodyless bean form in the application-class 
documentation
     add 80e526a087 Treat an empty beans block as a no-op
     add 6a71fa5ef6 Merge branch '8.0.x' into spike/grails-beans-dsl
     add 5a4e2b8c21 Compile a beans property without requiring @GrailsBeans
     add 1af34ee7f0 Drop @GrailsBeans from the plugin descriptors that no 
longer need it
     add 1346b27b2b Move the cache plugin fully onto auto-configuration
     add da28b4f1e9 Move the SiteMesh 3 mutator into the DSL and fix its 
environment post-processor
     add 1544bd7d19 Contribute the auto-timestamp cache default to the 
environment
     add 29305023f4 Drop the dead GrailsConfigurationAware contract from 
GrailsPlaceholderConfigurer
     add 0161f9dcbe Fix component scanning outside the project directory
     add 48b2bfb1e5 Contribute the bean-packages scan through beanRegistrar
     add 637b7affc6 Move CoreGrailsPlugin's bean definitions out of doWithSpring
     add a70ff87f1f Register the abstract resource locator without doWithSpring
     add 5525000e0f Merge branch '8.0.x' into spike/grails-beans-dsl
     add 9743d3a54e Fix eight defects in the beans DSL transform
     add 62b74b9a3f Fix the imports generator and give it a real consumer
     add 138d014236 Declare the beans DSL once, and give it its own group
     add 0224df0ecd Move the beans DSL examples under grails-test-examples
     add 94e25dee20 Only claim a beans property that looks like the DSL
     add af64be699c Use the Settings constants, and name the sibling correctly
     add 0067d15e23 Correct the beans DSL documentation
     add 1fe013a1c6 Declare the constraint evaluator's parameters in 
constructor order
     add d8f2a7b78b Let an empty bean closure body mean "construct from these 
parameters"
     add 9796eb104a Prove the parameter @Qualifier through real Spring injection
     add e09d4ef4e8 Wrap overlong source lines
     add 9f0b4d5f7b Use the concise bean forms in the DSL example module
     add 8009c21a64 Correct two stale limitations in the DSL documentation
     add 1410710809 Read @AutoConfiguration from class files instead of loading 
them
     add cc6bdf429c Source ASM's version from the build-tooling version map
     add a4deb3d2cd Locate two errors that were reported against nothing, or 
against the wrong thing
     add f31d57061f Stop claiming a Groovy class constant does not fold
     add 33c9ee771d Key the cache plugin's startup hook on what actually 
registered
     add 4e51a2556a Document the component-scan behaviour change, and drop 
@GrailsBeans to CLASS retention
     add 297767a923 Merge branch '8.0.x' into spike/grails-beans-dsl
     add 7d90d67932 Merge remote-tracking branch 
'origin/spike/grails-beans-dsl' into spike/grails-beans-dsl
     add 9f18a77067 Cover the relaxed-boolean path that motivated the cache fix
     add ccee98a603 Merge branch '8.0.x' into spike/grails-beans-dsl
     add 022465ee3c Merge branch '8.0.x' into spike/grails-beans-dsl
     add 783b1ec36c Give every Grails 8 upgrade section a distinct number
     add c3c9b4986d Address review: correct the Application beans docs and drop 
a redundant comment
     add 6378d2daed Merge pull request #16019 from 
codeconsole/spike/grails-beans-dsl
     add 4cb7c85650 build: do not cache project references
     add 4bc5bd8233 Merge pull request #16087 from 
apache/impr-gradle-conf-time-2
     add 5aa26db4c4 Fall back to the WatchService watcher instead of polling
     add 40272535a4 Treat a linkage failure as the native watcher being 
unavailable
     add 48d528d95f Merge branch '8.0.x' into 
fix/directory-watcher-fallback-8.0.x
     add 641849abb6 Assert watcher behaviour rather than the implementation 
selected
     add 7cd616519b Require macOS for the native watcher test
     add ab2b2afb3e Warn when native macOS file watching is unavailable
     add 948775bcb4 Merge pull request #16089 from 
codeconsole/fix/directory-watcher-fallback-8.0.x
     add 35b1f70801 docs: add Gradle 9 developer skill for monorepo builds
     add 0ea98a1a07 docs: register gradle-developer skill in AGENTS.md
     add e4d26c5d6d docs: polish gradle-developer skill with cacheability and 
monorepo lessons
     add 3de06ee544 Merge pull request #16083 from 
apache/docs/gradle-developer-skill
     add d8c90360f3 change cooldown for dependabot to 7 days
     add 8c5b1cfdd8 Merge pull request #16099 from 
paulk-asert/dependabotCooldown
     add 5784450e7e [skip ci] Release v8.0.0-M5
     add c989200e71 [skip ci] Bump version to 8.0.0-SNAPSHOT
     add e88612c33c Merge pull request #16106 from apache/merge-back-8.0.0-M5
     add a330f176fa port validate-actions GitHub action from Groovy to Grails
     add 674a3a375d Merge pull request #16100 from paulk-asert/validateAction
     add 4ac99ab547 Bump release-drafter/release-drafter
     add 95d2232e9e Merge pull request #15711 from 
apache/dependabot/github_actions/release-drafter/release-drafter-693d20e7c1ce1a81d3a41962f85914253b518449
     add 4242d6b39c Bump codecov/codecov-action from 6.0.0 to 7.0.0
     add 93fd522fb6 Merge pull request #16038 from 
apache/dependabot/github_actions/codecov/codecov-action-7.0.0
     add f252b430cb Harden synchronizer token consumption
     add 880e6b36ab Trim oversized synchronizer token state
     add 5130d3c4ac Document synchronizer token consumption and bounds
     add 1ffe64ea47 Merge remote-tracking branch 'origin/8.0.x' into 
fix/synchronizer-token-hardening
     add e929338408 Merge pull request #15803 from 
apache/fix/synchronizer-token-hardening
     add bfa1f8e676 Remove unused Forge GitHub create and OAuth integration
     add a1e526fd02 Merge branch '8.0.x' into fix/forge-oauth-state-validation
     add ac94b25e81 Merge pull request #15812 from 
apache/fix/forge-oauth-state-validation
     add 994311865b Keep BeanBuilder DSL independent of XML setup
     add 833d3e4d8e Avoid XML reader init for missing namespaces
     add 5b3d004648 Merge remote-tracking branch 'origin/8.0.x' into 
fix/14915-beanbuilder-spring7
     add 0f1cf52699 Merge 8.0.x into fix/14915-beanbuilder-spring7
     add a3b910951c Merge remote-tracking branch 'origin/8.0.x' into 
fix/14915-beanbuilder-spring7
     add a1b7309d20 Merge origin/8.0.x into fix/14915-beanbuilder-spring7
     add c47fb1ebdb Merge branch '8.0.x' into fix/14915-beanbuilder-spring7
     add afabbc5c2a Merge remote-tracking branch 'origin/8.0.x' into 
apache/fix/14915-beanbuilder-spring7
     add 71efa807c7 Merge pull request #15824 from 
apache/fix/14915-beanbuilder-spring7
     add f18fc9af04 Revert "Keep BeanBuilder DSL independent of XML setup"
     add 3e4fa5c897 Merge pull request #16112 from 
apache/revert-15824-fix/14915-beanbuilder-spring7
     add 8a3a79ffb6 Add deterministic test task sharding
     add 57a387c032 Parallelize critical CI test workloads
     add cd4490aea5 Parallelize remaining critical CI workloads
     add 7ebf2fb3e1 Shard critical selector test legs
     add 7bb015970e Separate rerun build work from its test shards
     add 8804f208a9 Shard remaining critical CI test legs
     add fcc8f257b9 Merge pull request #16116 from 
apache/perf/8.0.x-ci-wall-clock-regression
     add 6e914ccac0 Avoid duplicate cached codec metaclass registration
     add 5311c4cd97 Add codec metaclass registration benchmark
     add 4805301d26 Run codec benchmark as opt-in Spock spec
     add a81a84baaf Track codec registrations by weak factory keys
     add 413a4f345b Merge remote-tracking branch 'origin/8.0.x' into 
fix/15374-codec-metaclass-registration-overhead
     add c421fbabcc Merge remote-tracking branch 'origin/8.0.x' into 
fix/15374-codec-metaclass-registration-overhead
     add ac31469817 Address codec metaclass registration review feedback
     add e655aaae65 Merge branch '8.0.x' into 
fix/15374-codec-metaclass-registration-overhead
     add b37a11c061 Avoid double codec registration at startup and in mockCodec
     add 7e08fa926a Key codec metaclass registration by Class and lock per 
factory
     add bd7ef514fc Merge branch '8.0.x' into 
fix/15374-codec-metaclass-registration-overhead
     add 59f9b22e7b Preserve codec metaclass registration contracts
     add 09b037af96 Remove the ad hoc codec benchmark
     add ab63e4e5c0 Cover codec lookup lifecycle initialization
     add cf62c7f8d4 Cover mockCodec without lookup reinitialization
     add b9f5c1f17e Merge branch '8.0.x' into 
fix/15374-codec-metaclass-registration-overhead
     add 19bcf52e8c Merge branch '8.0.x' into 
fix/15374-codec-metaclass-registration-overhead
     add fbdf186fe1 Merge pull request #15800 from 
apache/fix/15374-codec-metaclass-registration-overhead
     add 81cade5208 build(deps): bump actions/cache from 4 to 6

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (1bdfe3f494)
            \
             N -- N -- N   refs/heads/dependabot/github_actions/actions/cache-6 
(81cade5208)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

No new revisions were added by this update.

Summary of changes:
 .agents/skills/gradle-developer/SKILL.md           |  701 +++++
 .github/dependabot.yml                             |    4 +
 .github/workflows/coverage.yml                     |    2 +-
 .github/workflows/forge-deploy-next.yml            |    3 +-
 .github/workflows/forge-deploy-prev-snapshot.yml   |    3 +-
 .github/workflows/forge-deploy-prev.yml            |    3 +-
 .github/workflows/forge-deploy-release.yml         |    4 +-
 .github/workflows/forge-deploy-snapshot.yml        |    3 +-
 .github/workflows/gradle.yml                       |  197 +-
 .github/workflows/groovy-joint-workflow.yml        |   39 +-
 .github/workflows/release-notes.yml                |    2 +-
 .../workflows/{rat.yml => validate-actions.yml}    |   45 +-
 AGENTS.md                                          |   10 +-
 THREAT_MODEL.md                                    |    4 +-
 build-logic/plugins/build.gradle                   |   19 +
 .../buildsrc/AutoConfigurationImportsPlugin.groovy |   66 +
 .../GenerateAutoConfigurationImportsTask.groovy    |  181 ++
 .../buildsrc/GrailsValidateActionsPlugin.groovy    |   62 +
 .../grails/buildsrc/TestTaskShardingPlugin.groovy  |  174 ++
 .../grails/buildsrc/ValidateActionsTask.groovy     |  236 ++
 ...GenerateAutoConfigurationImportsTaskSpec.groovy |  195 ++
 .../buildsrc/TestTaskShardingPluginSpec.groovy     |  387 +++
 build.gradle                                       |    4 +-
 dependencies.gradle                                |    1 +
 etc/bin/extract-build-artifact.sh                  |    6 +-
 etc/bin/verify-reproducible.sh                     |    7 +-
 gradle/functional-test-config.gradle               |   33 +-
 gradle/publish-root-config.gradle                  |    1 +
 .../build.gradle                                   |   45 +-
 .../java/grails/compiler/beans/GrailsBeans.java    |  136 +
 .../beans/GrailsBeansASTTransformation.java        | 1384 +++++++++
 .../beans/GrailsBeansASTTransformationSpec.groovy  | 3151 ++++++++++++++++++++
 grails-bootstrap/build.gradle                      |   30 +
 .../org/grails/io/watch/DirectoryWatcher.java      |   74 +-
 .../grails/io/watch/DirectoryWatcherSpec.groovy    |  253 ++
 .../grails/plugin/cache/CacheGrailsPlugin.groovy   |   97 +-
 .../cache/GrailsCacheAutoConfiguration.groovy      |   69 -
 ...rk.boot.autoconfigure.AutoConfiguration.imports |    2 +-
 ...ec.groovy => CacheAutoConfigurationSpec.groovy} |   87 +-
 .../plugin/cache/CacheGrailsPluginSpec.groovy      |   73 -
 .../grails/plugins/codecs/CodecsConfiguration.java |    6 +-
 .../plugins/codecs/CodecsConfigurationSpec.groovy  |   47 +-
 .../main/groovy/grails/artefact/Controller.groovy  |   29 +-
 .../controllers/ControllersAutoConfiguration.java  |    4 +-
 grails-core/build.gradle                           |   13 +
 .../GlobalGrailsClassInjectorTransformation.groovy |   96 +
 .../org/grails/plugins/CoreGrailsPlugin.groovy     |  175 +-
 .../grails/plugins/core/CoreAutoConfiguration.java |   69 -
 .../AbstractResourceLocatorPostProcessor.java      |   82 +
 ...sIgnoringComponentScanBeanDefinitionParser.java |  170 +-
 .../GrailsComponentScanPostProcessor.java          |   95 +
 .../support/GrailsPlaceholderConfigurer.java       |   14 +-
 ...rk.boot.autoconfigure.AutoConfiguration.imports |    2 +-
 ...aceHolderConfigurerCorePluginRuntimeSpec.groovy |   73 -
 ...balGrailsClassInjectorTransformationSpec.groovy |   91 +
 .../plugins/CoreAutoConfigurationSpec.groovy       |  178 ++
 .../plugins/CoreGrailsPluginRegistrarSpec.groovy   |  229 ++
 .../grails/plugins/SpringBeanPackagesSpec.groovy   |   86 +
 .../grails/plugins/scan/ScannedComponent.groovy    |   16 +-
 grails-databinding/build.gradle                    |    1 +
 .../databinding/DataBindingConfiguration.java      |  132 -
 .../databinding/DataBindingGrailsPlugin.groovy     |   87 +
 ...rk.boot.autoconfigure.AutoConfiguration.imports |    1 -
 .../guide/commandLine/creatingCustomCommands.adoc  |    9 +-
 .../applicationClass/applicationLifeCycle.adoc     |    2 +
 .../plugins/hookingIntoRuntimeConfiguration.adoc   |  142 +
 .../en/guide/plugins/providingBasicArtefacts.adoc  |    9 +
 .../src/en/guide/spring/springdslAdditional.adoc   |   38 +
 .../guide/theWebLayer/controllers/formtokens.adoc  |    2 +
 .../src/en/guide/upgrading/upgrading80x.adoc       |  123 +-
 grails-doc/src/en/ref/Controllers/withForm.adoc    |    2 +
 .../DomainClassEnvironmentPostProcessor.groovy     |   70 +
 .../plugins/domain/DomainClassGrailsPlugin.groovy  |   45 +-
 .../GrailsDomainClassAutoConfiguration.groovy      |   78 -
 .../src/main/resources/META-INF/spring.factories   |    6 +-
 ...rk.boot.autoconfigure.AutoConfiguration.imports |    2 +-
 .../domain/AutoTimestampCacheDefaultSpec.groovy    |   97 +
 .../domain/DomainClassGrailsPluginSpec.groovy      |   65 -
 grails-encoder/build.gradle                        |    3 +-
 .../grails/encoder/CodecMetaClassSupport.groovy    |   74 +-
 .../encoder/CodecMetaClassSupportSpec.groovy       |  336 +++
 grails-forge/README.md                             |   34 +-
 grails-forge/gradle.properties                     |    1 -
 .../grails/forge/api/GrailsForgeConfiguration.java |   69 +-
 .../api/create/github/GitHubCreateController.java  |  181 --
 .../forge/api/create/github/GitHubCreateDTO.java   |   57 -
 .../api/create/github/GitHubCreateOperation.java   |   76 -
 .../api/create/github/GitHubCreateService.java     |  220 --
 .../api/create/github/GitHubRedirectService.java   |  149 -
 .../grails-forge-api/native-image.properties       |   14 -
 .../forge/api/GrailsForgeConfigurationSpec.groovy  |   27 +-
 .../create/github/GitHubApiMockedController.groovy |  101 -
 .../github/GitHubCreateControllerSpec.groovy       |  116 -
 .../github/GitHubOauthMockedController.groovy      |   45 -
 .../src/test/resources/logback.xml                 |    1 -
 grails-forge/grails-forge-core/build.gradle        |    1 -
 .../forge/client/github/oauth/AccessToken.java     |   59 -
 .../client/github/oauth/GitHubOAuthClient.java     |   37 -
 .../client/github/oauth/GitHubOAuthOperations.java |   37 -
 .../forge/client/github/v3/GitHubApiClient.java    |   39 -
 .../client/github/v3/GitHubApiOperations.java      |   94 -
 .../forge/client/github/v3/GitHubRepository.java   |   89 -
 .../forge/client/github/v3/GitHubSecret.java       |   58 -
 .../client/github/v3/GitHubSecretsPublicKey.java   |   50 -
 .../grails/forge/client/github/v3/GitHubUser.java  |   68 -
 .../forge/client/github/v3/GitHubWorkflowRun.java  |   67 -
 .../forge/client/github/v3/GitHubWorkflowRuns.java |   53 -
 .../java/org/grails/forge/util/GitHubUtil.java     |   94 -
 .../grails-forge-web-netty/reflect-config.json     |   30 -
 .../grails-forge-web-netty/resource-config.json    |    5 +-
 .../src/main/resources/application.yml             |   13 +-
 .../commands/GrailsCliArtifactGradlePlugin.groovy  |    1 +
 .../gradle/plugin/core/GrailsGradlePlugin.groovy   |   33 +-
 .../plugin/core/GrailsPluginGradlePlugin.groovy    |  116 +-
 .../plugin/core/TestPhasesGradlePlugin.groovy      |    2 +-
 .../plugin/views/gsp/GroovyPagePlugin.groovy       |    4 -
 .../PluginScriptCommandPackagingSpec.groovy        |  129 +
 .../gsp/GroovyPagePluginFunctionalSpec.groovy      |   65 +
 .../gsp-compile-classpath/build.gradle             |   37 +
 .../compile-classpath-marker/marker.txt            |    1 +
 .../provided-compile-marker/marker.txt             |    1 +
 .../gsp-compile-classpath/settings.gradle          |    1 +
 .../gradle.properties                              |    1 +
 .../plugin-with-cli/build.gradle                   |   89 +
 .../grails-app/views/sample/show.gsp               |    1 +
 .../resources/META-INF/commands/hand-authored.yml  |    1 +
 .../src/main/scripts/example-multi-step.yml        |    3 +
 .../src/main/scripts/example-script.groovy         |    5 +
 .../plugin-with-cli/src/main/templates/example.gsp |    1 +
 .../plugin-with-cli/src/main/templates/example.txt |    1 +
 .../plugin-without-cli/build.gradle                |   38 +
 .../src/main/scripts/legacy-only-script.groovy     |    5 +
 .../src/main/templates/legacy-only.gsp             |    1 +
 .../src/main/templates/legacy-only.txt             |    1 +
 .../plugin-script-commands/settings.gradle         |    3 +
 .../sitemesh3/Sitemesh3AutoConfiguration.groovy    |  131 -
 .../Sitemesh3EnvironmentPostProcessor.groovy       |   38 +-
 .../plugins/sitemesh3/Sitemesh3GrailsPlugin.groovy |  119 +-
 .../src/main/resources/META-INF/spring.factories   |    2 +-
 grails-gsp/grails-web-gsp/build.gradle             |    1 +
 .../web/taglib/AbstractGrailsTagTests.groovy       |   24 +-
 grails-i18n/build.gradle                           |    1 +
 .../GrailsLocaleResolverAutoConfiguration.java     |   22 +-
 .../grails/plugins/i18n/I18nAutoConfiguration.java |  159 -
 .../grails/plugins/i18n/I18nGrailsPlugin.groovy    |  104 +-
 ...railsLocaleResolverAutoConfigurationSpec.groovy |   24 +
 .../plugins/i18n/I18nAutoConfigurationSpec.groovy  |   31 +
 grails-mail/build.gradle                           |    3 +
 .../plugins/mail/MailAutoConfiguration.groovy      |  118 -
 .../grails/plugins/mail/MailGrailsPlugin.groovy    |   79 +-
 .../plugins/mail/MailAutoConfigurationSpec.groovy  |  150 +
 grails-spring-security/ui/plugin/build.gradle      |   12 +-
 .../beans-dsl-plugin}/build.gradle                 |   47 +-
 .../groovy/beandsl/example/plugin/Farewell.groovy} |   16 +-
 .../example/plugin/FarewellGrailsPlugin.groovy     |   39 +-
 .../groovy/beandsl/example/plugin/Greeting.groovy} |   16 +-
 .../example/plugin/GreetingGrailsPlugin.groovy     |   52 +
 .../FarewellGrailsPluginAutoDiscoverySpec.groovy   |   74 +
 .../GreetingGrailsPluginAutoDiscoverySpec.groovy   |   82 +
 .../beans-dsl}/build.gradle                        |   41 +-
 .../groovy/beandsl/example/ExampleBeans.groovy     |   33 +-
 .../groovy/beandsl/example/FancyGreeter.groovy     |   12 +-
 .../src/main/groovy/beandsl/example/Greeter.groovy |   14 +-
 .../main/groovy/beandsl/example/LoudGreeter.groovy |   18 +-
 .../ExampleBeansAutoConfigurationSpec.groovy       |   74 +
 .../example/ExampleBeansAutoDiscoverySpec.groovy   |   62 +
 .../src/test/groovy/demo/TestControllerSpec.groovy |    7 +
 .../views/gsp/layout/AbstractGrailsTagTests.groovy |   24 +-
 .../src/test/groovy/demo/TestControllerSpec.groovy |    7 +
 .../commons/DefaultGrailsCodecClassTests.groovy    |   16 +
 .../grails/plugins/CoreGrailsPluginTests.groovy    |   68 +-
 .../groovy/org/grails/web/codecs/CodecSpec.groovy  |   40 +
 .../mvc/SynchronizerTokensHolderTests.groovy       |  145 +
 .../grails/testing/web/GrailsWebUnitTest.groovy    |    3 +-
 grails-url-mappings/build.gradle                   |    1 +
 .../web/mapping/UrlMappingsAutoConfiguration.java  |  102 -
 .../web/mapping/UrlMappingsGrailsPlugin.groovy     |   63 +-
 .../UrlMappingsAutoConfigurationSpec.groovy        |   84 +
 .../servlet/mvc/SynchronizerTokensHolder.groovy    |   90 +-
 settings.gradle                                    |    5 +
 threat-model.yaml                                  |    1 -
 181 files changed, 11598 insertions(+), 3673 deletions(-)
 create mode 100644 .agents/skills/gradle-developer/SKILL.md
 copy .github/workflows/{rat.yml => validate-actions.yml} (61%)
 create mode 100644 
build-logic/plugins/src/main/groovy/org/apache/grails/buildsrc/AutoConfigurationImportsPlugin.groovy
 create mode 100644 
build-logic/plugins/src/main/groovy/org/apache/grails/buildsrc/GenerateAutoConfigurationImportsTask.groovy
 create mode 100644 
build-logic/plugins/src/main/groovy/org/apache/grails/buildsrc/GrailsValidateActionsPlugin.groovy
 create mode 100644 
build-logic/plugins/src/main/groovy/org/apache/grails/buildsrc/TestTaskShardingPlugin.groovy
 create mode 100644 
build-logic/plugins/src/main/groovy/org/apache/grails/buildsrc/ValidateActionsTask.groovy
 create mode 100644 
build-logic/plugins/src/test/groovy/org/apache/grails/buildsrc/GenerateAutoConfigurationImportsTaskSpec.groovy
 create mode 100644 
build-logic/plugins/src/test/groovy/org/apache/grails/buildsrc/TestTaskShardingPluginSpec.groovy
 copy {grails-databinding => grails-beans-dsl}/build.gradle (66%)
 create mode 100644 
grails-beans-dsl/src/main/java/grails/compiler/beans/GrailsBeans.java
 create mode 100644 
grails-beans-dsl/src/main/java/org/grails/compiler/beans/GrailsBeansASTTransformation.java
 create mode 100644 
grails-beans-dsl/src/test/groovy/org/grails/compiler/beans/GrailsBeansASTTransformationSpec.groovy
 create mode 100644 
grails-bootstrap/src/test/groovy/org/grails/io/watch/DirectoryWatcherSpec.groovy
 delete mode 100644 
grails-cache/src/main/groovy/grails/plugin/cache/GrailsCacheAutoConfiguration.groovy
 rename 
grails-cache/src/test/groovy/grails/plugin/cache/{GrailsCacheAutoConfigurationSpec.groovy
 => CacheAutoConfigurationSpec.groovy} (53%)
 delete mode 100644 
grails-cache/src/test/groovy/grails/plugin/cache/CacheGrailsPluginSpec.groovy
 copy 
grails-data-hibernate5/boot-plugin/src/test/groovy/org/springframework/bean/reader/GroovyBeanDefinitionReaderSpec.groovy
 => 
grails-codecs/src/test/groovy/org/grails/plugins/codecs/CodecsConfigurationSpec.groovy
 (50%)
 delete mode 100644 
grails-core/src/main/groovy/org/grails/plugins/core/CoreAutoConfiguration.java
 create mode 100644 
grails-core/src/main/groovy/org/grails/spring/beans/AbstractResourceLocatorPostProcessor.java
 create mode 100644 
grails-core/src/main/groovy/org/grails/spring/context/annotation/GrailsComponentScanPostProcessor.java
 delete mode 100644 
grails-core/src/test/groovy/grails/spring/GrailsPlaceHolderConfigurerCorePluginRuntimeSpec.groovy
 create mode 100644 
grails-core/src/test/groovy/org/grails/plugins/CoreAutoConfigurationSpec.groovy
 create mode 100644 
grails-core/src/test/groovy/org/grails/plugins/CoreGrailsPluginRegistrarSpec.groovy
 create mode 100644 
grails-core/src/test/groovy/org/grails/plugins/SpringBeanPackagesSpec.groovy
 copy 
end-to-end/legacy-commands/grails-app/services/legacycommands/GreetingService.groovy
 => grails-core/src/test/groovy/org/grails/plugins/scan/ScannedComponent.groovy 
(74%)
 delete mode 100644 
grails-databinding/src/main/groovy/org/grails/plugins/databinding/DataBindingConfiguration.java
 delete mode 100644 
grails-databinding/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
 create mode 100644 
grails-domain-class/src/main/groovy/org/grails/plugins/domain/DomainClassEnvironmentPostProcessor.groovy
 delete mode 100644 
grails-domain-class/src/main/groovy/org/grails/plugins/domain/GrailsDomainClassAutoConfiguration.groovy
 copy 
grails-data-hibernate5/core/src/test/resources/META-INF/services/org.apache.grails.data.testing.tck.base.GrailsDataTckManager
 => grails-domain-class/src/main/resources/META-INF/spring.factories (87%)
 create mode 100644 
grails-domain-class/src/test/groovy/org/grails/plugins/domain/AutoTimestampCacheDefaultSpec.groovy
 delete mode 100644 
grails-domain-class/src/test/groovy/org/grails/plugins/domain/DomainClassGrailsPluginSpec.groovy
 create mode 100644 
grails-encoder/src/test/groovy/org/grails/encoder/CodecMetaClassSupportSpec.groovy
 delete mode 100644 
grails-forge/grails-forge-api/src/main/java/org/grails/forge/api/create/github/GitHubCreateController.java
 delete mode 100644 
grails-forge/grails-forge-api/src/main/java/org/grails/forge/api/create/github/GitHubCreateDTO.java
 delete mode 100644 
grails-forge/grails-forge-api/src/main/java/org/grails/forge/api/create/github/GitHubCreateOperation.java
 delete mode 100644 
grails-forge/grails-forge-api/src/main/java/org/grails/forge/api/create/github/GitHubCreateService.java
 delete mode 100644 
grails-forge/grails-forge-api/src/main/java/org/grails/forge/api/create/github/GitHubRedirectService.java
 delete mode 100644 
grails-forge/grails-forge-api/src/main/resources/META-INF/native-image/org.grails.forge.api/grails-forge-api/native-image.properties
 copy 
grails-converters/src/test/groovy/org/grails/web/converters/ConverterUtilSpec.groovy
 => 
grails-forge/grails-forge-api/src/test/groovy/org/grails/forge/api/GrailsForgeConfigurationSpec.groovy
 (57%)
 delete mode 100644 
grails-forge/grails-forge-api/src/test/groovy/org/grails/forge/api/create/github/GitHubApiMockedController.groovy
 delete mode 100644 
grails-forge/grails-forge-api/src/test/groovy/org/grails/forge/api/create/github/GitHubCreateControllerSpec.groovy
 delete mode 100644 
grails-forge/grails-forge-api/src/test/groovy/org/grails/forge/api/create/github/GitHubOauthMockedController.groovy
 delete mode 100644 
grails-forge/grails-forge-core/src/main/java/org/grails/forge/client/github/oauth/AccessToken.java
 delete mode 100644 
grails-forge/grails-forge-core/src/main/java/org/grails/forge/client/github/oauth/GitHubOAuthClient.java
 delete mode 100644 
grails-forge/grails-forge-core/src/main/java/org/grails/forge/client/github/oauth/GitHubOAuthOperations.java
 delete mode 100644 
grails-forge/grails-forge-core/src/main/java/org/grails/forge/client/github/v3/GitHubApiClient.java
 delete mode 100644 
grails-forge/grails-forge-core/src/main/java/org/grails/forge/client/github/v3/GitHubApiOperations.java
 delete mode 100644 
grails-forge/grails-forge-core/src/main/java/org/grails/forge/client/github/v3/GitHubRepository.java
 delete mode 100644 
grails-forge/grails-forge-core/src/main/java/org/grails/forge/client/github/v3/GitHubSecret.java
 delete mode 100644 
grails-forge/grails-forge-core/src/main/java/org/grails/forge/client/github/v3/GitHubSecretsPublicKey.java
 delete mode 100644 
grails-forge/grails-forge-core/src/main/java/org/grails/forge/client/github/v3/GitHubUser.java
 delete mode 100644 
grails-forge/grails-forge-core/src/main/java/org/grails/forge/client/github/v3/GitHubWorkflowRun.java
 delete mode 100644 
grails-forge/grails-forge-core/src/main/java/org/grails/forge/client/github/v3/GitHubWorkflowRuns.java
 delete mode 100644 
grails-forge/grails-forge-core/src/main/java/org/grails/forge/util/GitHubUtil.java
 delete mode 100644 
grails-forge/grails-forge-web-netty/src/main/resources/META-INF/native-image/org.grails.forge/grails-forge-web-netty/reflect-config.json
 create mode 100644 
grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/commands/PluginScriptCommandPackagingSpec.groovy
 create mode 100644 
grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/views/gsp/GroovyPagePluginFunctionalSpec.groovy
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/gsp-compile-classpath/build.gradle
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/gsp-compile-classpath/compile-classpath-marker/marker.txt
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/gsp-compile-classpath/provided-compile-marker/marker.txt
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/gsp-compile-classpath/settings.gradle
 copy 
grails-gradle/plugins/src/test/resources/test-projects/{auto-apply-bom-disabled 
=> plugin-script-commands}/gradle.properties (70%)
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/plugin-script-commands/plugin-with-cli/build.gradle
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/plugin-script-commands/plugin-with-cli/grails-app/views/sample/show.gsp
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/plugin-script-commands/plugin-with-cli/src/main/resources/META-INF/commands/hand-authored.yml
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/plugin-script-commands/plugin-with-cli/src/main/scripts/example-multi-step.yml
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/plugin-script-commands/plugin-with-cli/src/main/scripts/example-script.groovy
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/plugin-script-commands/plugin-with-cli/src/main/templates/example.gsp
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/plugin-script-commands/plugin-with-cli/src/main/templates/example.txt
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/plugin-script-commands/plugin-without-cli/build.gradle
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/plugin-script-commands/plugin-without-cli/src/main/scripts/legacy-only-script.groovy
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/plugin-script-commands/plugin-without-cli/src/main/templates/legacy-only.gsp
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/plugin-script-commands/plugin-without-cli/src/main/templates/legacy-only.txt
 create mode 100644 
grails-gradle/plugins/src/test/resources/test-projects/plugin-script-commands/settings.gradle
 delete mode 100644 
grails-gsp/grails-sitemesh3/src/main/groovy/org/grails/plugins/sitemesh3/Sitemesh3AutoConfiguration.groovy
 delete mode 100644 
grails-i18n/src/main/groovy/org/grails/plugins/i18n/I18nAutoConfiguration.java
 delete mode 100644 
grails-mail/src/main/groovy/grails/plugins/mail/MailAutoConfiguration.groovy
 create mode 100644 
grails-mail/src/test/groovy/grails/plugins/mail/MailAutoConfigurationSpec.groovy
 copy {grails-url-mappings => 
grails-test-examples/beans-dsl-plugin}/build.gradle (59%)
 copy 
grails-test-examples/{hibernate7/database-cleanup/grails-app/domain/dbcleanup/Author.groovy
 => beans-dsl-plugin/src/main/groovy/beandsl/example/plugin/Farewell.groovy} 
(82%)
 copy 
grails-async/plugin/src/main/groovy/org/grails/plugins/web/async/AsyncWebRequestPromiseDecoratorLookupStrategy.groovy
 => 
grails-test-examples/beans-dsl-plugin/src/main/groovy/beandsl/example/plugin/FarewellGrailsPlugin.groovy
 (53%)
 copy 
grails-test-examples/{hibernate7/database-cleanup/grails-app/domain/dbcleanup/Author.groovy
 => beans-dsl-plugin/src/main/groovy/beandsl/example/plugin/Greeting.groovy} 
(83%)
 create mode 100644 
grails-test-examples/beans-dsl-plugin/src/main/groovy/beandsl/example/plugin/GreetingGrailsPlugin.groovy
 create mode 100644 
grails-test-examples/beans-dsl-plugin/src/test/groovy/beandsl/example/plugin/FarewellGrailsPluginAutoDiscoverySpec.groovy
 create mode 100644 
grails-test-examples/beans-dsl-plugin/src/test/groovy/beandsl/example/plugin/GreetingGrailsPluginAutoDiscoverySpec.groovy
 copy {grails-mimetypes => grails-test-examples/beans-dsl}/build.gradle (62%)
 copy 
grails-redis/src/main/groovy/grails/plugins/redis/MemoizeDomainObject.groovy => 
grails-test-examples/beans-dsl/src/main/groovy/beandsl/example/ExampleBeans.groovy
 (55%)
 copy 
end-to-end/legacy-commands/grails-app/services/legacycommands/GreetingService.groovy
 => 
grails-test-examples/beans-dsl/src/main/groovy/beandsl/example/FancyGreeter.groovy
 (76%)
 copy 
end-to-end/legacy-commands/grails-app/services/legacycommands/GreetingService.groovy
 => 
grails-test-examples/beans-dsl/src/main/groovy/beandsl/example/Greeter.groovy 
(84%)
 copy 
end-to-end/legacy-commands/grails-app/services/legacycommands/GreetingService.groovy
 => 
grails-test-examples/beans-dsl/src/main/groovy/beandsl/example/LoudGreeter.groovy
 (68%)
 create mode 100644 
grails-test-examples/beans-dsl/src/test/groovy/beandsl/example/ExampleBeansAutoConfigurationSpec.groovy
 create mode 100644 
grails-test-examples/beans-dsl/src/test/groovy/beandsl/example/ExampleBeansAutoDiscoverySpec.groovy
 delete mode 100644 
grails-url-mappings/src/main/groovy/org/grails/plugins/web/mapping/UrlMappingsAutoConfiguration.java

Reply via email to