You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@grails.apache.org by jd...@apache.org on 2026/09/24 14:16:25 UTC
(grails-core) branch fix/optimistic-locking-spec-join-assert updated (43fca1cf80 -> 169193b014)
This is an automated email from the ASF dual-hosted git repository.
jdaugherty pushed a change to branch fix/optimistic-locking-spec-join-assert
in repository https://gitbox.apache.org/repos/asf/grails-core.git
omit 43fca1cf80 fix(neo4j): make OptimisticLockingSpec commit, observe and verify the background write
omit 4fc28038a7 Merge pull request #16064 from borinquenkid/fix/gorm-transaction-attribute-copy
omit aaf0248a47 Merge remote-tracking branch 'upstream/8.0.x' into pr-16064
omit d8bb65c595 Merge pull request #16065 from borinquenkid/fix/web-transaction-attribute-copy
omit 1ef86eb1cb Merge remote-tracking branch 'upstream/8.0.x' into pr-16065
omit 157195f338 Merge pull request #16391 from apache/fix/hibernate7-to-one-read-only-on-validation-error
omit dc5fe4ff03 Mark to-one associations read-only after a validation error in Hibernate 7
omit 7ea4cb9d8e Merge pull request #16067 from apache/fix/stacktrace-filterer-test-log-capture
omit 64da415999 test: tighten StackTrace LogCapture assertions and pin web-mvc test logging
omit ea69ef4501 Merge branch '8.0.x' into fix/stacktrace-filterer-test-log-capture
omit e35e3ae1b1 Merge pull request #15965 from apache/chore/remove-jodd-wot
omit 2da4fa140b Bump jsoup to 1.23.2 and tighten DefaultFieldTemplateSpec assertions
omit bba0e9c753 Merge pull request #15995 from apache/fix/plugin-dependency-diagnostics
omit 3b3464ef8b Capture plugin dependency diagnostics through logback and report pending versions
omit 0a4ec6f2bb Merge remote-tracking branch 'upstream/8.0.x' into review-15995
omit 30fa9ee3f2 Merge remote-tracking branch 'upstream/8.0.x' into pr-15965
omit b49a48e2ec Merge pull request #15828 from apache/perf/vthread-static-compile-8.0.x
omit 1cce6632ac Finish the codec review follow-ups
omit 63e0b577ca Merge pull request #16063 from borinquenkid/fix/customizable-rollback-tx-attribute-copy
omit 7c69251c84 fix: honor @NotTransactional opt-out on class-annotated services
omit 5ab85c3108 Merge remote-tracking branch 'upstream/8.0.x' into pr-16063
omit 0282babb06 Address codec and virtual-thread performance review feedback
omit ab2e4f4922 Restore decodeHex Groovy truth compatibility
omit 543aa9e55b Improve hot path virtual-thread and codec performance
omit 35494623cd Merge pull request #16153 from apache/chore/jdbc-package-cleanup
omit d5a28073ca Remove the unreachable OriginCapablePropertyValue and PropertyOrigin
omit f91a6d3fa7 Close the application contexts opened by the jdbc connection source specs
omit 78ac99346d Remove blank Javadoc line in DataSourceBuilder class comment
omit b682cab4fe Annotate remaining nullable overrides in RelaxedConversionService's nested classes
omit f2fff3f37c Annotate RelaxedNames/RelaxedConversionService overrides to match Spring's @NullMarked contracts
omit ff22a0e3d8 Clean up IntelliJ inspection findings in RelaxedDataBinder
omit f8cf9d9205 Clean up IntelliJ inspection findings in DataSourceBuilder
omit 81500c871c Rename shadowed local variable in DataSourceSettings.toProperties()
omit 241a7ef388 Fix potential NPE in DataSourceConnectionSource.close() when unwrapping a DelegatingDataSource
omit 144eec3a5a Add unit test coverage for the jdbc package in grails-datamapping-core
omit 014a0d414c Merge pull request #16188 from apache/test/datamapping-core-utils-cleanup
omit 99251f30c1 added specs to package
omit 7ab5673d56 Merge pull request #16160 from apache/fix/spring7-nested-map-conversion
omit 8aee63808c Bind nested settings entries the resolver cannot address by path
omit 524a336df1 Merge pull request #16193 from apache/chore/clean-grails-datamapping-async
omit cb8fc6b371 Add test coverage for AsyncEntity.getAsync()
omit 0a412d76f4 Add test coverage for grails-datamapping-async and type decorator closures
omit 4451faf7f4 Merge pull request #16031 from apache/fix/flaky-per-test-recording-spec
omit d33598371c Address review feedback: fix restart failure handling, driver leak, and test hermeticity
omit 28a91dfead Add unit coverage for WebDriverContainerHolder and ground the recording size floor in real measurements
omit c9b3be3d96 Fix the real causes behind PerTestRecordingSpec's flakiness
omit a2211e9ceb Fix flaky PerTestRecordingSpec by waiting for recordings to stabilize
omit 043aee944f Merge pull request #16389 from apache/test/gorm-ast-transform-coverage-8.0.x
omit 4131ce905e Backport GORM AST transform test coverage and crash fixes to 8.0.x
omit bbb476a7e2 Merge pull request #16202 from apache/refactor/graphql-entity
omit d72aae4f8d Register custom operation data fetchers via the code registry
omit 2308fc63b0 Remove @CompileDynamic escape hatch from GraphQLMapping.methodMissing
omit 53a30e3608 Replace deprecated GraphQLArgument/GraphQLInputObjectField defaultValue calls
omit 149fe635ad Consolidate PersistentGraphQLProperty.getGraphQLType entity/embedded resolution
omit 5ae100f31a Consolidate PersistentGraphQLProperty's order resolution to a single assignment
omit 3192a45320 Restore null-safe getMergedField handling and cover ClosureDataFetcher.buildFetchOptions
omit 0c5defafdf Parameterize raw Association/ToOne/Selection usages in EntityFetchOptions
omit ee104d2a8c Clean up EntityFetchOptions.java and add its first direct test coverage
omit df7efef273 Add missing test coverage to grails-data-graphql and remove dead disabled spec
omit e38e562ec0 Merge pull request #16189 from apache/chore/datamapping-core-validation-cleanup
omit cb7e4a9d89 Add test coverage and clean up grails-datamapping-core validation package
omit 5619a371c2 Merge pull request #16285 from apache/test/grails-data-mongodb-specs
omit 0e55d5513b Add targeted unit coverage for remaining core module gaps
omit fae8323e92 Add targeted unit coverage for GormSharedSessionMongoTransactionManager
omit 1367d7e450 Add unit coverage for the embedded module's backend classes
omit 10eca7c29d Add unit coverage for the bson json parser package
omit 3077fb7db4 Add unit coverage for CodecCustomTypeMarshaller and CodecExtensions
omit 65fb5b578b Add unit coverage for the bson codecs.encoders package
omit 4ab5ee89c0 Add unit coverage for the bson codecs.decoders package
omit 82003817dd Add unit coverage for the simple bson Codec classes
omit 9840b9c074 Add unit coverage for MongoExtensions
omit a25b343435 Add unit coverage for MongodbGrailsPlugin
omit 7edff9cb78 Compare configuration metadata paths as the build reports them
omit ad97cc0f95 Merge pull request #16369 from codeconsole/fix/qualified-session-connection-scope
omit 81b5b189df Keep the closeable contract on a MongoConnectionSource
omit d82c24e611 Say what a plain @Transactional inside a connection block covers
omit 96e0e72f68 Merge pull request #16384 from apache/fixEndToEndForStaged
omit c1121ec22f Make end to end tests worked with our staged artifacts
omit 0f97ac5682 Merge pull request #16377 from codeconsole/fix/gsp-page-scope-variable-scan-8.0.x
omit 4dca87c8ad Merge pull request #16379 from apache/fix/error-gsp-jakarta-servlet-attribute
omit 9ac001f1bc Drop the toString left over from the CharSequence signature
omit 2a99acb013 Hold the long page to strict so a missed name fails it
omit b83626345d End expressions and attribute values where the page compiler ends them
omit e1ec2629bd fix: use jakarta.servlet.error.exception in generated error.gsp
omit cc92b915d2 Find the names a page introduces in one pass, not a regular expression
omit 44d95a6427 Cover the annotation on MongoDB and Neo4j, and say what mapped means there
omit 1103ddd72c Pin the scope cases the assertions only named
omit 9265c8e1b5 Bind the tenant without opening a session that goes unused
omit dd92b4502f Leave an enclosing block alone in the default datastore's transactions
omit d4aa4effe0 bump publish plugin to 1.0.0-RC1
omit 62c7b4a139 Leave a multi-tenant class to its tenant inside a connection's transaction
omit 65b6851931 Say which connection sources a restore leaves holding a closed client
omit c82dd69b25 Keep a class out of a connection block that does not name it
omit 07f68726a4 Bind the tenant a new session is opened for
omit fdd67c9244 Let GORM own the client the Boot auto-configuration builds
omit 12497cfb51 Let recreateOnConflict resolve a taken index name
omit 077f33c2c9 State the defaults an IDE shows for grails.mongodb settings correctly
omit 190ac9c388 Route the calls inside @Transactional(connection = ...) to that connection
omit 848d29e0ce Merge pull request #16375 from matrei/fix/scaffolding-favicon-session-8.0.x
omit 1cdc252c05 Trim the favicon comments to the one fact the code does not say
omit de903ae36a Merge pull request #16376 from apache/fix/docs-out-of-gradle-daemon
omit 437fef8b77 test: declare the scaffolding example's beans through the beans DSL
omit dfede9d49d build: address second review round on the documentation fork
omit a054c7aadb forge: keep the browser's favicon fetch out of the starter security feature's login flow
omit 725d807fee build: address PR review of the documentation fork
omit 9e0312eb15 Merge branch 'fix/mongodb-crac-named-connections-16366' into fix/qualified-session-connection-scope
omit 2d8770e5cd Say when the old routing wrote silently, and where the new one stops
omit 5e5b35a599 Say where the withConnection routing stops, and quote the Neo4j errors
omit b34471f68c Resolve a connection scope exactly as naming the connection does
omit 113a75420c build: measure the 3G daemon against the whole macOS job, tests included
omit bb372c3603 Merge pull request #16370 from apache/deps/groovy-5.1.3
omit eb0b0bcf76 build: record the measured basis for the 3G daemon heap
omit 5d347efc38 build: address review of the documentation fork
omit 93f00bbed6 build: run groovydoc and the user guide outside the Gradle daemon
omit 73e7a31bf7 Merge pull request #16373 from apache/fix/mongodb-map-criterion-values-8.0.x
omit 3af01dc69c Merge pull request #16372 from apache/merge/7.2.x-into-8.0.x
omit 8168649123 test: keep the browser's favicon fetch out of the scaffolding example's login flow
omit 571ca77ad5 fix: validate Map criterion values in GORM for MongoDB queries
omit 7e2ca67f1c Merge branch '7.2.x' into 8.0.x
omit 890451a252 fix(deps): update Groovy to 5.1.3
omit 076ff09324 Route the class's own GORM calls to the connection a qualified session or transaction opens
omit 8056ea18db Document Neo4j named connections starting and routing their writes
omit 41965f37f5 Route the class's own Neo4j calls to the connection withConnection names
omit 0f3025d536 Keep the connection of a Neo4j API reached through a named connection
omit 340b0a1462 Let a Neo4j datastore start with a connection under grails.neo4j.connections
omit fd02c14795 Route the class's own GORM calls to the connection withConnection names
omit 7893ed4d7e Close and replace every MongoDB client across a CRaC checkpoint
omit 1fadd5c812 Merge pull request #16208 from codeconsole/feature/mongodb-skip-index-build-8.0.x
omit 91a7eb489b Announce a background index build from its own thread and document every summary form
omit 7d927e10be Let an application build its indexes on demand with buildIndexes off
omit c6a64e8d1e Keep the index build's breakdown, errors and restarts honest per connection
omit 0ffc9215e7 Say which connection details a supplied client leaves out
omit d8adb08fcf Tighten the index build's lifecycle, reporting and per-collection listing
omit 0a12094fa4 Put the logback note beside the dependency rather than in an empty closure
omit 9a88f6ecd1 Compare index key patterns in order
omit 5cafdb298e Describe the two index-build settings in the plugin's configuration metadata
omit abc944e654 Merge remote-tracking branch 'upstream/8.0.x' into feature/mongodb-skip-index-build-8.0.x
omit 6fe37380ea Stop SchemaBasedMultiTenancySpec dropping MongoDB's config database
omit 1e68a548e2 Merge pull request #16365 from apache/merge/7.1.x-into-7.2.x
omit 8c3851b9e4 Merge pull request #16361 from apache/deps/dependency-updates-2026-09
omit 848282548a Report, interrupt and resume the index build through its whole lifecycle
omit e1722078aa fix(forge): remove JavadocStyle check removed in Checkstyle 13.11.0
omit fd13f1a3d6 Read captured log events through a copy-on-write list
omit f4bb9466e6 Hold the per-connection children in a ConcurrentHashMap
omit 497ec8d588 Merge pull request #16344 from apache/feat/gorm-lock-latest
omit 4c074122eb Pin the tenant resolver a supplied client ends up with
omit 8a7e1ff4c4 Keep the mapping context's database when the client is supplied
omit 4a4733ac09 Read a compound index's attributes without consuming the declaration
omit 423ac93345 Pin the camel case setting names against a Spring Boot environment
omit e8760c70b2 Merge branch '7.1.x' into merge/7.1.x-into-7.2.x
omit 359c461b7b Merge remote-tracking branch 'origin/7.0.x' into merge/7.0.x-into-7.1.x
omit d0f685a801 Merge pull request #16362 from apache/fix/mongodb-map-criterion-values
omit ec532699ab Merge pull request #16363 from apache/deps/revert-starter-sitemesh-3.2.2
omit 3ac24ed4b0 Revert spring-boot-starter-sitemesh to 3.2.2
omit d1f4dd8597 fix: validate Map criterion values in GORM for MongoDB queries
omit 3bcb6f708e Merge pull request #16358 from apache/deps/7.0.17-dependency-updates
omit 2c201cbc09 Merge pull request #16360 from apache/fix/servlet-compile-only-api-extension-modules
omit f473f06c02 Merge pull request #16357 from matrei/fix/16354-mongo-tck-fd-churn
omit df139ec008 fix(deps): update dependencies on 8.0.x
omit 5ce12a7a99 test: cover named-connection instance operations on MongoDB
omit 4df44b5690 Declare the servlet API compileOnlyApi in grails-web-core and grails-mimetypes
omit cd4b5bcddc Merge pull request #16047 from apache/feature/automated-configuration-metadata
omit e11f509f06 Log when the MongoDB TCK cleanup falls back to dropping a collection
omit 3a69be3076 Merge pull request #16359 from apache/docs/16029-resources-groovy-configuration-classes
omit 858a92a9ae Merge remote-tracking branch 'origin/8.0.x' into feature/automated-configuration-metadata
omit b89f84305b Merge pull request #16048 from apache/feature/groovy-dsl-configuration-metadata
omit 0728b2fd11 Merge pull request #16356 from codeconsole/fix/converters-servlet-compile-only-api-8.0.x
omit a6bbcfb8df Merge pull request #16214 from codeconsole/fix/readonly-no-flush-8.0.x
omit 467f3901b0 Cover the drop fallback of the MongoDB TCK cleanup with a view
omit b073fd84c1 docs: note that @Configuration classes in resources.groovy are no longer processed
omit a6f7b5c505 test: pin where an entity mapped to one named datasource saves
omit 3912c7f65b Update dependencies for 7.0.17
omit 41531b7576 Declare docker-java-api as a test dependency
omit d2ac1ae966 Stop the MongoDB TCK manager from recreating every collection per feature
omit 734602c858 Merge feature/automated-configuration-metadata to pick up the review fixes
omit 4d49894f05 Address Groovy DSL configuration metadata review findings
omit a9eca11fc9 Address configuration metadata review findings
omit 4ebb343fce Document everything an externally-supplied client now picks up
omit 4710351bbe Point the documented logger category at the MongoDatastore logger
omit 5e3403efe5 Close the connection source children over a snapshot
omit 63776a4f42 Merge remote-tracking branch 'upstream/8.0.x' into feature/mongodb-skip-index-build-8.0.x
omit 92a83c7a0a Merge branch '8.0.x' into fix/readonly-no-flush-8.0.x
omit 3f34cb1576 Merge remote-tracking branch 'origin/fix/readonly-no-flush-8.0.x' into fix/readonly-no-flush-8.0.x
omit 6a4e0447f4 Trim the servlet-api comment to the constraint
omit 1c85f8bd18 Expose the servlet API on grails-converters' compile classpath
omit 80f5aa243d Warn when a read-only transaction commits over pending operations
omit 3dc36325dc Merge pull request #16352 from apache/fix/web-plugin-daemon-reuse-16347
omit fc10302f80 Merge pull request #16040 from gsartori/use-spring-upload-config
omit f191f248e1 feedback: document the derived sequence name and cover the target-table path
omit c4b22d54a0 feedback: require a transaction whenever a lock type is named, and declare the supported named arguments
omit e635ada746 fix: supply the target table so an implicit sequence name resolves on Hibernate 7
omit 71737d457c Deprecate the legacy multipart configuration guard for removal in 9.0
omit 531a01e80b Merge branch '8.0.x' into fix/readonly-no-flush-8.0.x
omit 95c0d27d66 Say that read-only transactions do not flush on any datastore
omit 784c7691bd Merge branch '8.0.x' into use-spring-upload-config
omit cde2e1007d feature: reload under the lock in mutex, and route named-connection instance operations
omit ddd5f0e38a docs: describe what lock() without a transaction actually does on Hibernate 5
omit 14ca557844 feedback: correct the transaction and named-connection claims, and pin the flush-time cascade
omit 2c4b8219f1 feedback: lock the row before reloading it on every path, and apply the tenant filter to lock(id)
omit 1ceec3a898 Merge remote-tracking branch 'upstream/8.0.x' into feat/gorm-lock-latest
omit 5ba25f4c84 feedback: lock the row on every dialect, cover the merge path, and document both
omit 1ae4a4a9d8 Tighten Groovy DSL configuration metadata discovery
omit 356ac22f7c Merge feature/automated-configuration-metadata to pick up the metadata fixes
omit 6ac4136c66 feedback: keep the persist-on-flush cascade action, document the new events, restore the lock(Map) guard
omit c4f3fee64f feedback: reset dirty state on refresh-cascaded collection elements on Hibernate 5
omit ab537bc5dd feedback: address PR #16344 review findings and fix issue #16349 dirty-checking bug
omit 50207a3722 Harden configuration metadata generation
omit 9fdcb77bf4 Merge pull request #16230 from codeconsole/feature/modernize-grails-async-8.0.x
omit b160cc36aa Merge branch '8.0.x' into feature/automated-configuration-metadata
omit bb248db25f Document the Gradle 9.7 requirement of Grails 8
omit 0ac295582d Call the asset classpath configuration statically
omit f3624cb8c3 Document unified virtual-thread execution and promise failure contracts
omit b698b3f540 Resolve asynchronous request timeouts as HTTP 503
omit 683342d225 Propagate web context across owned executors and chained promises
omit 69b234e3a5 Unify virtual-thread promises and preserve checked task failures
omit b09d755655 Merge upstream/8.0.x and retain both sets of upgrade notes
omit ba8a179899 feedback: bind the unproxied target when locking a union-mapped row on Hibernate 7
omit cbad317a13 Link straight to the read-only transactions section
omit d60b7a74fc test: point the union-subclass version comment at the insert-then-update issue
omit 2842f51fe0 feedback: lock the concrete row for table-per-concrete-class hierarchies on Hibernate 7
omit d2f76c9e3b feedback: lock the hierarchy root row before refreshing on Hibernate 7
omit 1b82764ed6 Merge branch '8.0.x' into use-spring-upload-config
omit cde6de11a8 Document that read-only transactions no longer flush on MongoDB
omit 2bdbe36a68 Cover SessionOnlyTransaction in the module it lives in
omit b5737b6571 Show the queued write is dropped, not left where it was
omit 927a2226d0 Accept a null definition when a Mongo session begins a transaction
omit 3d4f0d3fe0 Document AUTO as the default flush mode, which is what sessions start with
omit 7a1cea3865 Cover a read-only transaction on the Spring Data interop
omit e3e7755455 Retire the transaction constructors from before the read-only flag
omit d2970174f2 Give read-only transactions the same meaning on Mongo as on Hibernate
omit 4198a9cb84 feedback: lock the row before refreshing on Hibernate 7, follow component cascades on Hibernate 5
omit e749cc79a9 Merge pull request #16184 from codeconsole/fix/gsp-spring-boot-standalone-8.0.x
omit b65a64ed69 Merge upstream/8.0.x into feature/modernize-grails-async-8.0.x
omit a29efe7561 Document async executor migration and deprecated Servlet APIs
omit f7da7dee19 Preserve standalone web context and unify async request lifecycle
omit b8796c25fd Resolve the named application executor and enable fallback concurrency
omit c8c9a0b1b2 Share the promise executor with the default event bus
omit f269620071 Preserve promise failures and consistent Future exception semantics
omit fac89c965e Merge pull request #16322 from codeconsole/fix/scaffold-count-type-8.0.x
omit ee8c4c2db8 Drop the redundant groovy.lang import from GspCompileStaticSpec
omit b40c318616 Document the asset pipeline's tags in a Spring Boot application
omit 490f5e1e3f Link the example's assets through the asset pipeline's tags
omit e07a60eee3 Take asset pipeline 5.2.0-RC1
omit 762cffe848 Accept a model value whose conversion converts back to it
omit bb0ee3c611 Merge pull request #15960 from apache/feat/virtual-thread-promise-factory-seed
omit fc0d3057af Merge pull request #16292 from codeconsole/feat/beans-dsl-diagnostics-8.0.x
omit 293fb7768c feedback: address locking issues and add support for lockmodetype
omit 7a31802892 Merge branch '8.0.x' into fix/scaffold-count-type-8.0.x
omit 736ba9d456 Merge branch '8.0.x' into feat/beans-dsl-diagnostics-8.0.x
omit 59d9023543 Merge branch '8.0.x' into fix/gsp-spring-boot-standalone-8.0.x
omit 37f8ca6377 Merge pull request #16338 from codeconsole/fix/embedded-mongo-shutdown-hang-8.0.x
omit 35220cb31f Merge branch '8.0.x' into fix/embedded-mongo-shutdown-hang-8.0.x
omit 211ef8de17 Fix MongoDB CI logging assertions and activate failOnError test
omit 0bf4554fcc feedback on method naming
omit 1726f84d3a Fix MongoDB index build lifecycle and review findings
omit b4aa3c6622 Address embedded MongoDB shutdown review findings
omit bf09ab4b6c Clarify standalone GSP lifecycle guidance and simplify view resolver
omit 43d46cb4eb Match nested anonymous-class reach to Groovy method annotations
omit fc1941a96e Preserve exact floating-point values when binding GSP models
omit 61f8b7c28a feature: ability to lock and not fail on optimisitic locking
omit b449d532af Merge pull request #16297 from codeconsole/feat/mongo-objectid-default-8.0.x
omit f3cb91ebbe Merge branch '8.0.x' into feat/mongo-objectid-default-8.0.x
omit ee362fa1f8 Merge branch '8.0.x' into feature/mongodb-skip-index-build-8.0.x
omit 2033f0eaf7 Merge remote-tracking branch 'upstream/8.0.x' into fix/gsp-spring-boot-standalone-8.0.x
omit 87d38b3753 Cover hasOne updateAll rejection on the non-codec engine
omit 983fd08c9d Cover many-to-many updateAll on the codec engine
omit 7d302c578b Name the plain to-many null case accurately, and cover the DBRef null drop
omit a173953336 Document updateAll and the association kinds it supports
omit 55ee2e3356 Accept an identifier in place of an association instance in updateAll
omit 44750eb96b Drop a dead type check in the updateAll bidirectional one-to-many guard
omit b1aa8ca653 Merge branch '8.0.x' into feat/beans-dsl-diagnostics-8.0.x
omit 38f32adee7 Merge branch '8.0.x' into fix/embedded-mongo-shutdown-hang-8.0.x
omit 22163f7f11 Merge branch '8.0.x' into fix/scaffold-count-type-8.0.x
omit 054112214a Correct the model names in the scaffolding guide
omit 07afd38db0 Test the welcome page and the scaffolded count declaration
omit 0a93f8dab3 Convert typed model values the way a Groovy assignment does
omit 3067d0a855 Merge pull request #16282 from codeconsole/fix/dirty-checking-collection-tracking-8.0.x
omit c011bdf53c Merge branch '8.0.x' into fix/dirty-checking-collection-tracking-8.0.x
omit 8c32742172 Merge pull request #16323 from codeconsole/feat/gorm-count-returns-long-8.0.x
omit df000a42e1 Merge branch '8.0.x' of https://github.com/apache/grails-core into feat/gorm-count-returns-long-8.0.x
omit 18f5b07f62 Merge pull request #16327 from codeconsole/test/compiler-script-producer-wiring
omit 5f11919ad4 Let Spring Boot's error page render in a standalone application
omit fbfe7a176a Treat the body a nested anonymous class sits in as a ceiling
omit 76bfb3bd08 Show a tag library the guide page's example can compile
omit ec9a9c4928 Stop specifying unencoded output for an unwired layout tag library
omit 0327078ca1 Leave Spring's auto-proxy creator list as the specification found it
omit c8756534f2 Decide the static-compilation mode per body, not per class
omit 40fe646ca6 Regroup the spec imports and assert the subclass case is flagged
omit 7dbf7e1bdf Run grails-redis's own tests in the Redis jobs
omit 42521c0b24 Correct why EmbeddedMongoInitializerSpec stops its own servers
omit b378d75445 Leave the Hibernate and Redis suites out of the Neo4j jobs
omit 9051523827 Time out the test jobs well before GitHub's six-hour default
omit 2c7455a551 Leave the MongoDB suites out of the Neo4j jobs
omit be9fd0e31c Stop the servers the replica set specification starts
omit dcfa7bed0e Stop an in-memory embedded MongoDB only once
omit bc0b7950e6 Pin the exact-class rule for the datastore to-many collections
omit 534956d3f5 Drop the DirtyCheckingMap import left behind by the wrap(Map) change
omit 16eb980bb8 Document running GSP in a Spring Boot application
omit 6ca3141d55 Hold the example's selected rendering in the session
omit 3d23083278 Alias jspViewResolver only where nothing is registered under it
omit 2dade74084 Drop the redundant iterator() overrides on the wrapper subclasses
omit a7f7edb0d6 Stop nesting a new DirtyCheckingMap on every save
omit 3ceb572b79 Cover the precompiled view path where it is contributed
omit 7dc87ac976 Make three specifications fail when what they cover is reverted
omit 3ac93a3aa9 Encode the attributes of a captured tag in a standalone application
omit f799282454 Keep wrapper equals reflexive when the target has identity equality
omit 0ae70cef89 Re-wrap a to-many association replaced by a plain collection
omit a46b6f31c4 Cover ad-hoc compiler script provider wiring
omit c8f5c8f9d4 Fix the count documentation left behind by the Long change
omit 463767abd0 Merge origin/test/compiler-script-producer-wiring into test/compiler-script-producer-wiring
omit 00b11de5ff Merge upstream/8.0.x into fix/gsp-spring-boot-standalone-8.0.x
omit 120a907dc9 Merge upstream/8.0.x into feat/gorm-count-returns-long-8.0.x
omit 8dd2b0a1dd Merge upstream/8.0.x into feature/modernize-grails-async-8.0.x
omit 377d709034 Merge upstream/8.0.x into test/compiler-script-producer-wiring
omit 74f7951df6 Read the receiver, and read what @CompileStatic was given
omit a5758d657f Merge pull request #16003 from apache/test/databinding-codegen-contract
omit 29514bb3bb Merge branch '8.0.x' into test/databinding-codegen-contract
omit b762fe3eaf Merge pull request #16320 from jamesfredley/refactor/remove-grails-micronaut
omit f155a75ca8 Merge pull request #16331 from apache/fix/xml-parser-hardening
omit d5c7bdf097 Widen the reachable set to what the runtime actually answers
omit 99a4604dbc test XML.parse refuses a declared DOCTYPE through every overload
omit dafdf8acdc Merge remote-tracking branch 'upstream/8.0.x' into fix/xml-parser-hardening
omit 890833e9c4 strictly parse plugin config always
omit c35e0bb5ea Merge pull request #16333 from apache/fix/dynamic-finder-sort-validation
omit e59ca12fbd Merge branch '8.0.x' of https://github.com/apache/grails-core into feat/gorm-count-returns-long-8.0.x
omit 8f497f5ad3 Carry Long through the JSON API pagination and pin it in the specs
omit 6cfdb523d9 Cover an ad-hoc outputs.file producer and point the guide at the validation error
omit 98844a007c Merge remote-tracking branch 'upstream/8.0.x' into pr-16327
omit e10b69c4be feedback: Parse XML by trust level: strict for request bodies, DOCTYPE-tolerant for classpath descriptors
omit 6247e8d5a6 Merge remote-tracking branch 'upstream/8.0.x' into fix/xml-parser-hardening
omit a7647b2731 Merge branch '8.0.x' into fix/dynamic-finder-sort-validation
omit 9cd088f435 feedback: Validate sort arguments on every query entry point
omit e9cd00567b Merge pull request #16332 from apache/fix/interceptor-canonical-path
omit f11e85549b Re-bind a collection borrowed from another entity to the entity it is assigned to
omit a2ac5178cf Track the SequencedCollection methods and the live collection views
omit 0c25aefef2 Stop the reach check at closures, and let both field spellings agree
omit 15542cbcf4 Say what covers the empty URL mappings holder
omit a3d4d86000 Compile from the webjars without packaging them
omit c4546d243d Make the reach check follow the lift exactly
omit 561532823a Repair an anonymous class in a closure parameter default too
omit 8707742a8c Match the encoders' null and many-to-many representation in updateAll
omit b1c52c27f4 Reject hasOne associations in updateAll
omit b952b270fa Reach: one rule for both host kinds, and the runtime's own resolution
omit 9528ba1ab7 Write many-to-many updateAll values under the key the non-codec engine reads
omit 0dfbe067a8 Reject bidirectional one-to-many in updateAll
omit 7deb7dccbb Restrict updateAll collection normalization to real reference collections
omit 4fe4570976 Catch every spelling of a reference the anonymous class cannot reach
omit dc6a9cf5c9 Merge remote-tracking branch 'upstream/8.0.x' into feat/mongo-objectid-default-8.0.x
omit 55fa4619dd Set the enclosing method on nested-closure anonymous classes too
omit e6420b9359 Leave URL mappings and constraint validation off the example's class path
omit 48175cf3fd Serve the example's assets through the asset pipeline's Spring Boot module
omit a2dc9c6c84 Merge upstream 8.0.x into fix/gsp-spring-boot-standalone-8.0.x
omit 3ba7fb58d2 Delegate wrapper equals/hashCode to the target collection
omit ea9c585bf4 Retain compiler script regression fixture and test build cache restoration
omit af45fc2fb3 Fix the duplicate section number in the 8.0 upgrade notes
omit 9795e8df77 Merge upstream 8.0.x and preserve both upgrade guide additions
omit 2d7fdf019a Preserve plain-file compiler script producer dependencies
omit 04f871cb3d Address review feedback on the count() change
omit 4b2ab655cf Correct the rationale for the count width in the upgrade note
omit 47f070721e Return Long from the GraphQL count field too
omit 38f371c0dd Return Long from count() instead of narrowing to Integer
omit 42e951fc1c Merge branch '8.0.x' into fix/dynamic-finder-sort-validation
omit d88d15ea15 Merge branch '8.0.x' into fix/xml-parser-hardening
omit e0bba892e7 Merge branch '8.0.x' into fix/interceptor-canonical-path
omit 635f284d55 Count a property-style read as a use of the moved accessor
omit 191830ee33 Run the anonymous-class reach check for a group too
omit 67d20dc774 Give a lifted anonymous class an enclosing method
omit d164af8fb8 Merge remote-tracking branch 'origin/fix/dirty-checking-collection-tracking-8.0.x' into fix/dirty-checking-collection-tracking-8.0.x
omit 8581d5604f Address review: exact-class rewrap gate, Map wrapper coverage, SortedSet, docs
omit 06cb68299f Merge remote-tracking branch 'upstream/8.0.x' into fix/dirty-checking-collection-tracking-8.0.x
omit da7dad3462 Merge branch '8.0.x' into fix/dirty-checking-collection-tracking-8.0.x
omit 4c015010be Merge branch '8.0.x' into feat/beans-dsl-diagnostics-8.0.x
omit 91885f07ed fix: trim and validate DynamicFinder order direction
omit 0980623481 Merge pull request #16296 from apache/fix/16294-16295-non-public-bean-marshalling
omit 6884e173a1 Merge pull request #16316 from apache/test/restore-transaction-service-specs-8.0.x
omit a1bd43ddfc ci: give Validate Actions 10 minutes for a cold Gradle run
omit 0ff4b76646 Merge pull request #16299 from apache/fix/16287-devtools-gorm-entities
omit 1917fefdd2 Merge pull request #16324 from jdaugherty/fix/16287-devtools-review
omit 90ef7ea96c Merge remote-tracking branch 'origin/8.0.x' into refactor/remove-grails-micronaut
omit d9a215b549 Merge branch '8.0.x' into feat/mongo-objectid-default-8.0.x
omit 60598510cf Resolve read methods through any public type, and fix two vacuous tests
omit 9b266f47df Merge branch '8.0.x' into feat/beans-dsl-diagnostics-8.0.x
omit 43510784cf Merge pull request #16149 from codeconsole/perf/request-path-8.0.x
omit 82b8648a6d Merge branch '8.0.x' into perf/request-path-8.0.x
omit 60515a5ec8 Merge pull request #16325 from apache/test/compiler-config-runtime-classpath-producer
omit cda191c312 Merge branch '8.0.x' into perf/request-path-8.0.x
omit 5fa7a5e120 revert: keep GrailsWebRequest.getCurrentRequest() undeprecated
omit 3973ca341a Test and document generated compiler script producer wiring
omit 2a98407463 Merge branch '8.0.x' into feat/mongo-objectid-default-8.0.x
omit 2324ebc7af Merge branch '8.0.x' into feature/mongodb-skip-index-build-8.0.x
omit 688436e00c Note the sitemesh.decorator.default fallback in the upgrade guide
omit 99cf46fb57 Document the @SpringBootTest case in a Grails application
omit 3af263cb69 Gate the core auto-configuration, not two of its beans
omit 1ca0145550 Keep a Grails build's test task off compileGroovyPages
omit d9c95450a5 Give an application that maps no URLs an empty mappings holder
omit 3c8fe2eac2 Look tag library artefacts up by TagLibArtefactHandler.TYPE
omit da4ede1850 Merge remote-tracking branch 'upstream/8.0.x' into fix/gsp-spring-boot-standalone-8.0.x
omit 666308814e Reject an anonymous class reaching a member that moved to the sibling
omit e9932f371f Share the non-public bean access, and report it once
omit 902f0820cd Fix three defects the new forms introduced, and pin what was missing
omit 9cde802ef7 test: pin that the compiler config generator stays off the runtime classpath
omit a488d6a1eb Merge branch '8.0.x' into feat/beans-dsl-diagnostics-8.0.x
omit 29abfeedd6 Resolve the DevTools restart loader through the parent chain
omit a137709366 Merge remote-tracking branch 'upstream/8.0.x' into fix/16287-devtools-gorm-entities
omit e8d33a9318 Merge pull request #16309 from apache/matrei-patch-1
omit 5c1f79d16c Narrow the context-path interceptor note to the affected matcher shape
omit 6bbb71ecbe Resolve security matcher paths exactly as dispatch does
omit 79970c5169 Canonicalize interceptor and security matcher paths once
omit 035f9197fa Address review feedback on sort argument validation
omit 2e08c1fc15 Widen a private method copy instead of the cached descriptor
omit e6920c663d Cover dynamically compiled Groovy beans in the marshaller tests
omit 11ff749b5f Fix marshalling of non-public classes and Serializable beans
omit 1756eaedc5 Correct contradictory wording about the engine setting
omit 463e1e78ae Encode collection associations in updateAll
omit 564b61ba99 Coerce unidirectional collection and many-to-many references in the non-codec engine
omit ded71167c4 Exclude embedded associations from updateAll id normalization
omit 1630a25cce Extract association ids from proxies in updateAll
omit eaeff04ce4 Merge branch '8.0.x' into feat/mongo-objectid-default-8.0.x
omit 8855b88340 Declare the scaffolded count model field as Number
omit 140f173f80 Simplify the welcome page sort closures
omit b4f9b0dc48 Import MimeType in the welcome page instead of qualifying the cast
omit 12fe286b65 Merge branch '8.0.x' into fix/scaffold-count-type-8.0.x
omit 7801ced1d8 Merge pull request #16321 from apache/groovy-5.1.2
omit 8fa9782a70 Fix welcome page failing to compile under GSP static compilation
omit 97fc996460 Fix scaffolded index.gsp declaring the count model field as Integer
omit cf6880565a Document the new DSL surface in the user guide
omit f7d22cebd0 Fall back rather than throw when Grails cannot answer
omit 89b3890662 chore: clear the residue review found in the request path branch
omit c8bbcb89b0 test: cover the forward cases the request path spec left unexercised
omit f4172be4bd fix(deps): update Groovy to 5.1.2
omit 9a5bc99620 Merge branch '8.0.x' into perf/request-path-8.0.x
omit c4cadbba59 Stop asserting an ordering @ConditionalOnBean does not guarantee
omit 86600e67f9 refactor: move Grails Micronaut to apache/grails-micronaut
omit fcac2072e0 Merge branch '8.0.x' into feature/mongodb-skip-index-build-8.0.x
omit e45b3a2161 Merge branch '8.0.x' into feat/beans-dsl-diagnostics-8.0.x
omit a9a1f1eebc Merge branch '8.0.x' into feat/mongo-objectid-default-8.0.x
omit 41259bf005 Merge pull request #16178 from apache/fix/disable-groovy-indy-build
omit 6fce5e1b46 Merge branch '8.0.x' into fix/disable-groovy-indy-build
omit 17b9ded93b Merge pull request #16167 from apache/build/ci-daemon-heap-vs-runner-ram
omit 1085bed7f3 Merge branch '8.0.x' into feat/beans-dsl-diagnostics-8.0.x
omit 2cf25ea829 Merge branch '8.0.x' into feature/mongodb-skip-index-build-8.0.x
omit b1d19ef28c Merge branch '8.0.x' into feat/mongo-objectid-default-8.0.x
omit 425cdc0cbd Deprecate the non-codec persistence engine
omit 854938f029 fix: include runtime jars on groovydoc classpath
omit ce89107fb1 Encode to-one associations in the non-codec engine's updateAll, and drop the engine scoping
omit 60c3671c95 Write association references through the id mapping in the non-codec engine
omit 3a99093037 Store and query _id through the id mapping in the non-codec engine
omit 4563be76b6 Normalise updateAll association values into a copy of the caller's map
omit 41b92309a4 Apply the ObjectId default to the codec engine only
omit e2d55173de Merge branch '8.0.x' into build/ci-daemon-heap-vs-runner-ram
omit 90ac62dd28 Merge branch '8.0.x' into feature/automated-configuration-metadata
omit 03e6eef178 Merge branch '8.0.x' into fix/16287-devtools-gorm-entities
omit a92638515e Merge branch '8.0.x' into test/databinding-codegen-contract
omit b34c0eeafc Merge branch '8.0.x' into fix/disable-groovy-indy-build
omit 46a089a8fd test(grails-datamapping-core): restore the transaction service specs lost in the 7.2.x merge
omit 5670a65bc8 Merge pull request #16315 from apache/ci/asf-approved-pins-8.0.x
omit e9cf8b1864 ci: pin the remaining actions to ASF-approved SHAs on 8.0.x
omit def2c9b9bc Merge remote-tracking branch 'origin/7.2.x' into merge/7.2.x-into-8.0.x
omit 41d366539e Add group(...), the nested conditionally-guarded configuration class
omit 3c498ebbc1 Take a compile-time String constant as a member name
omit a2603b0e4e Add .conditionalOnClass(...), the condition optional integrations are gated on
omit 5075ff30b5 Merge pull request #16314 from apache/merge/7.1.x-into-7.2.x
omit 473230b732 Merge remote-tracking branch 'origin/7.1.x' into merge/7.1.x-into-7.2.x
omit 53d9c1eddb Merge pull request #16313 from apache/merge/7.0.x-into-7.1.x
omit 049fee3917 Merge remote-tracking branch 'origin/7.0.x' into merge/7.0.x-into-7.1.x
omit 6e32b25e0b Set originType when re-homing an anonymous inner class
omit 840aea9b91 Share SAX feature identifiers and make DOCTYPE rejection configurable
omit 7df2280ede Re-home anonymous inner classes in a lifted body
omit 4959bf493b Let .scope(...) take the annotation's other attributes
omit e0f99fc54c Add .aliases(...), so a bean can keep an old name
omit 0a91ed938c Merge into any qualifier-attached annotation, not only @Bean
omit c8945fd6c3 Wire Hibernate 5 DevTools bootstrap through the dataSource bean
omit 85b1417780 Order the java.io imports, which checkstyleMain rejects
omit fb076690bd Give the DSL reference structure, and say a block can be split
omit 69c5de62d3 Add .conditionalOnExpression(...), for what the others cannot say
omit b8a8d00af4 Rename .grailsEnv(...) to .conditionalOnGrailsEnv(...)
omit 507dd2c896 Add .conditionalOnProperty(...), the condition applications actually use
omit 8f8e86a544 Let every condition qualifier tell same-named beans apart
omit 1690234814 Derive the set of all qualifier names instead of restating it
omit 5ea9efe481 Add .conditionalOnBean(...), the positive counterpart
omit 4a572c7d3f Document the one-expression form for a property-configured bean
omit 2867e4d3fb Resolve sibling bean calls against hand-written @Bean methods too
omit 910dc72b1e Dump the generated members to a directory on request
omit 8f30584175 beans DSL: condition a bean on the Grails environment
omit 9d685b98e0 beans DSL: reject a post-processor bean that is not staticMethod()
omit bf31c48118 beans DSL: reach @Bean's own attributes instead of colliding with it
omit b1c0c425d6 beans DSL: infer type arguments from what the bean constructs
omit e27cb9bf5b beans DSL: declare a bean as its interface and still construct it
omit e49a39e932 Merge branch '8.0.x' into feat/beans-dsl-diagnostics-8.0.x
omit 533f7e2cfb Merge branch '8.0.x' into perf/request-path-8.0.x
omit 5a08d840dd Merge remote-tracking branch 'origin/feat/beans-dsl-diagnostics-8.0.x' into feat/beans-dsl-diagnostics-8.0.x
omit 6fbfd28cef Only record an annotation type in visited when descending into it
omit c2768dd63b Check static sibling bean calls on a proxied host too
omit 4062b15fcf Merge branch 8.0.x into build/ci-daemon-heap-vs-runner-ram
omit 6fdc50880a Guard XInclude disable and reject internal DOCTYPE subsets
omit c431a33afb Merge branch '8.0.x' into feature/mongodb-skip-index-build-8.0.x
omit 0d5b31673b Validate dynamic finder and HQL list sort property names
omit f0108c28ed Canonicalize interceptor and security matcher request paths
omit c76d3b87ea Fix SAX parser feature URIs and reject DOCTYPE declarations
omit 3b668223da Merge pull request #16308 from apache/ci/asf-approved-action-pins
omit 08d1902331 Merge branch '8.0.x' into feat/mongo-objectid-default-8.0.x
omit 0fa6561bf1 Store and query _id consistently in the non-codec engine
omit ded9ea7900 Coerce association ids in IN criteria
omit 9a8506d50c Apply id coercion inside negations and other junctions
omit 19a146a5b3 Encode to-one association ids consistently in updateAll
omit 5bf4e5c62e Delete documents whose assigned String id is empty
omit 0f1bc9be87 Correct idGeneration docs that still described String storage as the default
omit 87219f1530 Add unit tests for id coercion and association storage
omit d5c9cc149d Include groovydoc in the Groovy Snapshot Canary Build
omit 9bf5f6623f Add test coverage and fix real bugs in grails-datamapping-core's services package (#16156)
omit ecb4a4d31e ci: pin every action to an ASF-approved SHA
omit 55d5076aa5 Merge pull request #16027 from apache/feat/reenable-oracle-testcontainers
omit 25b7937cff Merge branch '8.0.x' into fix/disable-groovy-indy-build
omit 1113d60e1d Merge pull request #16302 from apache/fix/16162-fields-memoize-leak
omit 3edb3f349f test: count the POST member route in the wildcard resources spec
omit e3c2ff2036 Merge remote-tracking branch 'upstream/8.0.x' into perf/request-path-8.0.x
omit 05cefde0af Give TemplateLookupCachingSpec its own command fixture
omit c6cdd02d6c Merge pull request #16305 from jamesfredley/merge/7.2.x-into-8.0.x
omit bb9780cab2 Merge branch '7.2.x' into 8.0.x
omit 377a0ee8f8 Merge pull request #16304 from jamesfredley/merge/7.1.x-into-7.2.x
omit a071dca786 Merge branch '7.1.x' into 7.2.x
omit 9f8deded04 Merge pull request #16303 from jamesfredley/merge/7.0.x-into-7.1.x
omit 13bf4405f8 Fix fields template lookup leak from accessor-keyed memoization
omit cf57bce561 Merge branch '7.0.x' into 7.1.x
omit 54cd047fa7 Merge pull request #16301 from jamesfredley/feat/forge-aws-slots-next-snapshot-older
omit 946faaa9b0 docs(forge): stop hardcoding the shared ALB DNS name.
omit e1850655d2 Add Forge AWS next-snapshot and older slots.
omit 44ab8dbd31 Narrow DevTools restart docs to when restart is active
omit 505542f121 build: keep Grails 8 indy-off only in CompilePlugin
omit c4e794fc6d fix: invoke Map constructors without Class.newInstance under indy-off
omit 085c0d2886 fix: stop count() log.debug hitting GORM methodMissing
omit 8dfa3636da build: disable Groovy invokedynamic for the Grails 8 compile
omit c6e55d9a4b Keep GORM entities on the DevTools restart classloader
omit 8d1fc7d249 Merge pull request #16110 from apache/ci/remove-docs-publish-serialization
omit 2ca0e4c7fc Fix checkstyle OperatorWrap violation in MongoQuery
omit 0e5a368372 Merge remote-tracking branch 'upstream/7.1.x' into 7.2.x
omit b96887f14a Merge remote-tracking branch 'upstream/7.0.x' into 7.1.x
omit a39a350296 fix: authorize the method the request will be routed as
omit 49d7200daa Pin extra typed and def-typed properties in the databinding whitelist spec.
omit 19157d878a Merge pull request #16273 from codeconsole/feat/wildcard-resources-mapping
omit a81e0d5ca0 Default String id storage to ObjectId and fix association id coercion
omit 53ab3a8aff build: declare the benchmark harness at the directory it moved to
omit 14ae491d59 build: move the benchmark harness under grails-test-examples
omit 93c8ffd209 build: classify grails-benchmarks with the projects that exercise the framework
omit 444da64aa5 Merge remote-tracking branch 'origin/perf/request-path-8.0.x' into perf/request-path-8.0.x
omit a57a164102 Merge remote-tracking branch 'upstream/8.0.x' into perf/request-path-8.0.x
omit 2550800ff5 Merge pull request #16114 from codeconsole/fix/gradle-97-groovy-config-script
omit 6f254ca1dd Merge pull request #16293 from apache/fix/16280-map-accessor-collisions
omit dc214d94e1 Address map entries shadowed by bean accessors on Groovy 5
omit 51c977e13f Merge branch '8.0.x' into feature/mongodb-skip-index-build-8.0.x
omit 5684ed158d Merge remote-tracking branch 'origin/fix/gradle-97-groovy-config-script' into fix/gradle-97-groovy-config-script
omit 818d22b56f Wire every GroovyCompile task, and fail on a missing configurationScript
omit c427432137 Merge branch '8.0.x' into feat/wildcard-resources-mapping
omit 708aa2ea02 Merge branch '8.0.x' into fix/dirty-checking-collection-tracking-8.0.x
omit 392edeba2f Merge remote-tracking branch 'upstream/8.0.x' into fix/gradle-97-groovy-config-script
omit 97ae226e58 Merge branch '8.0.x' into feat/beans-dsl-diagnostics-8.0.x
omit 4028b9f8a5 Merge remote-tracking branch 'upstream/8.0.x' into fix/gsp-spring-boot-standalone-8.0.x
omit 065741bfa7 Merge branch '8.0.x' into perf/request-path-8.0.x
omit c1b532aef9 M6 FIX: Require a username and password on the spring-boot-starter-security User (#16291)
omit 3d3f4bbcff Register a generated auto-configuration where it is generated (#16224)
omit 2f7a097e24 Fix JsonScanner number parsing for bare exponents and -Infinity (#16284)
omit 683432b279 Fix checkstyle import order and codenarc UnnecessaryGString violations
omit 6509f29929 Fail a stray beans statement on a plugin descriptor too
omit a0c90c96c1 Stop the sibling-bean check at a nested closure
omit 2aabf4b28e Pin annotate's array-valued attributes, which only the docs disclaimed
omit 4ec20d1b7c Add .typeArguments(...) so a declared type can carry type arguments
omit dedfe26ce3 Document parameter annotations, and cover the optional-dependency case
omit 942cce572f Reject a sibling bean call that cannot return the singleton
omit 76c0cc3c24 Report a partly DSL-shaped beans block instead of dropping it
omit b4027b9d9a Merge remote-tracking branch 'upstream/8.0.x' into perf/request-path-8.0.x
omit 250034dc9b refactor: put back the property access in the redirect trait
omit 9763091e42 test: assert the whole request path in one round trip
omit 2234fe9cf0 fix: finish the effective-method rule, and let it survive a forward
omit b0c351b922 Merge pull request #16288 from apache/feat/async-group-8.0.x
omit c8688ff761 Merge pull request #16283 from apache/post-8.0.0-M6-release
omit 8bf277b059 Fix async group & add associated feature
omit 30c1e776d7 Merge pull request #16279 from codeconsole/chore/remove-dead-xml-apis-exclusions-8.0.x
omit 2ef59e1958 Merge pull request #16005 from apache/fix/groovydoc-links
omit b873801b55 Cover the index build's failure and degradation paths
omit a2e62929cb Cover the remaining patch lines flagged by Codecov
omit e88cb0beb9 Keep collection properties dirty-checked after reassignment; track iterator-based removals
omit d71c218259 Merge pull request #16221 from codeconsole/feat/beans-dsl-qualified-autoconfiguration-name-8.0.x
omit 03ef4979fc Merge pull request #16216 from codeconsole/fix/embedded-mongo-backend-reuse-8.0.x
omit cfb1b1e10e Cover the qualified sibling end to end, not just at the AST level
omit c2e29e3e94 State that a qualified autoConfigurationName is absolute
omit cf50292b2d Document the backend as a setting a restart is not handed a stale server for
omit b3fa838ed3 Merge remote-tracking branch 'origin/feat/beans-dsl-qualified-autoconfiguration-name-8.0.x' into feat/beans-dsl-qualified-autoconfiguration-name-8.0.x
omit 5ca8537f36 Correct the two remaining "same package" claims about the sibling
omit 7714cded41 Merge branch '8.0.x' into fix/gradle-97-groovy-config-script
omit 4646adfa06 docs: fix Groovydoc external-type links and audit unresolvable links by cause
omit 0e0d5993be fix: give every Grails-level reader the method the request routed as
omit e7b5218fe5 docs: cut the commentary in the request path back to what it earns
omit d3bfaa7621 test: pin the callback order of a repeated postHandle
omit a2ee534496 fix: address review findings on multipart params, internal dispatch and docs
omit 7689098176 fix: keep g:form emitting _method in both modes
omit f3a91d3664 Merge pull request #16211 from apache/fix/bump-hibernate7-versions
omit 6408c369d9 fix(deps): Bump Hibernate 7 to 7.4.7.Final
omit 15db8fc90d refactor: resolve a mapping token through doCall rather than a call override
omit 10d7c84632 Merge branch '8.0.x' into feat/beans-dsl-qualified-autoconfiguration-name-8.0.x
omit d1a3e5c4e5 Merge remote-tracking branch 'origin/feat/wildcard-resources-mapping' into feat/wildcard-resources-mapping
omit 06a27a837b Cover the namespace form of a wildcard resources mapping
omit e469c27e11 Remove dead xml-apis dependency exclusions
omit 423f2bd3ef test: prove the method override by what it routes, not by what request.method says
omit 4d227fb409 Revert "fix: let an application see a dispatcher-resolved method override"
omit a00cb81e6e fix: let an application see a dispatcher-resolved method override
omit d2e1eef261 build(benchmarks): consume GrailsWebMockUtil from the test fixtures
omit 59eeda19cc docs: renumber this branch's upgrade sections after the 8.0.x merge
omit 3a4797dda4 Merge remote-tracking branch 'upstream/8.0.x' into perf/request-path-8.0.x
omit b1cb822960 Merge remote-tracking branch 'origin/feat/hiddenmethod-handler-mapping' into perf/request-path-8.0.x
omit df63cefae7 Merge remote-tracking branch 'origin/fix/multipart-lean-8.0.x' into perf/request-path-8.0.x
omit 5f8cc13bc9 Merge remote-tracking branch 'origin/perf/urlmapping-name-resolution-8.0.x' into perf/request-path-8.0.x
omit 2ce995bb1f Merge remote-tracking branch 'origin/feat/hiddenmethod-handler-mapping' into feat/hiddenmethod-handler-mapping
omit b7b744f9e4 fix: derive hidden method filter mode from both properties, and fill Boot's gap
omit 62de237adb fix: let a data binding bean registered after a failed lookup be picked up
omit 6af0bf5d57 Merge branch '8.0.x' into feat/wildcard-resources-mapping
omit 4309d5b876 Merge pull request #16274 from codeconsole/fix/codec-metaclass-compile-static-8.0.x
omit 6703374a16 Bump Forge Shadow plugin to 8.3.11 for Gradle 9
omit 9918f531e3 Compile CodecMetaClassSupport statically
omit 2e88f24297 Merge pull request #16271 from codeconsole/docs/rest-resources-patch
omit e597f9740a Support mapping every controller as a REST resource
omit 811f25e828 Document the PATCH mapping generated by resources and single
omit 2fd29c6f41 Merge pull request #16222 from codeconsole/feat/gorm-native-id-type-8.0.x
omit ebee4507f7 Merge branch '8.0.x' into feat/gorm-native-id-type-8.0.x
omit 013ba6c143 Make ConfigurationMetadataSpec self-maintaining instead of exact-count
omit 6a30571fa3 Handle ConfigSlurper environments{} blocks in the DSL parser
omit 9b58a8a8f0 Merge pull request #16270 from apache/merge-back-8.0.0-M6
omit 314698d39f [skip ci] Bump version to 8.0.0-SNAPSHOT
omit 6c3328e3df Preserve the unconditional default when a branch overrides it
omit dd1ab42936 Fix DSL parser crash on same-named properties across if/else branches
omit af9c397025 Merge feature/automated-configuration-metadata to pick up 8.0.x
omit b770e0b7bd Merge 8.0.x to refresh mergeability
omit 356b9f912e Merge feature/automated-configuration-metadata to resolve conflicts
omit c08ff11d7d Merge pull request #16265 from apache/sync/forge-aws-gha-7.2
omit 5a1e15c4fd Sync Forge AWS GitHub deploy with working 8.0.x
omit 94e04a373c Merge pull request #16264 from apache/sync/forge-aws-gha-7.1
omit b3f3c253c5 Sync Forge AWS GitHub deploy with working 8.0.x
omit 381bc41296 Merge pull request #16263 from apache/sync/forge-aws-gha-7.0
omit 5899f028cb Sync Forge AWS GitHub deploy with working 8.0.x
omit 59046ddcc3 Merge pull request #16262 from apache/fix/forge-aws-describe-star
omit d434859a16 Use Elastic Beanstalk managed policies for GitHub deploys
omit 74b567eacf Merge pull request #16261 from apache/fix/forge-aws-asg-describe
omit 0be4f672c5 Allow Forge AWS deploys to describe Auto Scaling groups
omit d18f8de20d Merge pull request #16260 from apache/fix/forge-aws-eb-s3-acl
omit 4bfe59dad2 Allow Forge AWS deploys S3 ACL and delete on the EB bucket
omit bb815fa39b Use SLF4J for runtime diagnostics (#15993)
omit 24fdfcec22 Merge pull request #16257 from apache/merge/7.2.x-into-8.0.x
omit 5469a7fcaa Allow Forge AWS deploys DescribeStackResource and S3 object ACL
omit 52da349414 Merge branch '7.2.x' into 8.0.x
omit e0c5cf17e7 Merge pull request #16256 from apache/merge/7.1.x-into-7.2.x
omit ae4ed3c200 Merge branch '7.1.x' into 7.2.x
omit e7b2b6875b Merge branch '7.1.x' into 7.2.x
omit 8c1561988a Merge pull request #16255 from apache/merge/7.0.x-into-7.1.x
omit 1c9bd8fd50 Merge branch '7.0.x' into 7.1.x
omit fa8cec933f Merge pull request #16254 from apache/docs/forge-aws-retire-gcp
omit 20fccc13d6 Clarify Forge AWS tag packaging and live DNS in docs
omit 00f6a0b32b Retire GCP Forge deploys and document AWS Elastic Beanstalk
omit fc95f78906 Merge pull request #16253 from apache/fix/forge-aws-shadow
omit 6d1f200d09 Apply Shadow so Forge AWS packaging works on Micronaut 4
omit 9d92ce129b Merge pull request #16251 from apache/fix/forge-aws-workflow-simple-7.2
omit d0aa6edbae Merge pull request #16250 from apache/fix/forge-aws-workflow-simple-7.1
omit 9ba323f983 Merge pull request #16249 from apache/fix/forge-aws-workflow-simple-7.0
omit 37ef3018c6 Simplify Forge AWS GitHub Actions deploy
omit 0b8cb54c68 Simplify Forge AWS GitHub Actions deploy
omit b3683f6d5e Simplify Forge AWS GitHub Actions deploy
omit 5ff4af702f Merge pull request #16248 from apache/fix/forge-aws-workflow-simple
omit 521517e5dc Simplify Forge AWS GitHub Actions deploy
omit 4b2f1eca25 Merge pull request #16246 from apache/fix/forge-aws-allowlist-7.2
omit 7acf630b42 Merge pull request #16245 from apache/fix/forge-aws-allowlist-7.1
omit 9ed0e22081 Pin Forge AWS credentials action to an ASF-approved SHA
omit 769204caa0 Pin Forge AWS credentials action to an ASF-approved SHA
omit 5d9bbcc281 Merge pull request #16244 from apache/fix/forge-aws-allowlist-7.0
omit cf61c7d36a Pin Forge AWS credentials action to an ASF-approved SHA
omit 9e9172aa02 Merge pull request #16243 from apache/fix/forge-aws-eb-storage
omit 42219d0581 Allow Forge AWS deploys to use the Elastic Beanstalk S3 bucket
omit e4f489258d Merge pull request #16242 from apache/fix/forge-aws-oidc-cli
omit 698ff28cbd Pin Forge AWS credentials action to an ASF-approved SHA
omit fd8de78c0a Merge pull request #16240 from apache/merge/7.2.x-into-8.0.x
omit 5fe7bf95a9 Merge branch '7.2.x' into 8.0.x
omit c29a028071 Merge pull request #16239 from apache/merge/7.1.x-into-7.2.x
omit 0f0c54b19a Merge branch '7.1.x' into 7.2.x
omit 29b9f22c8a Merge pull request #16238 from apache/merge/7.0.x-into-7.1.x
omit 338c15cb91 Merge branch '7.0.x' into 7.1.x
omit 7e1e1893c9 feat: migrate Forge deployments to AWS Elastic Beanstalk
omit d6dadf1572 Merge branch '8.0.x' into feat/gorm-native-id-type-8.0.x
omit 8296612ced Use one canonical GORM ID type setting
omit 057ffcd812 Fix join-table foreign keys to use resolved entity table names (#15736) (#16028)
omit 8152382a8b Merge remote-tracking branch 'upstream/8.0.x' into feat/hiddenmethod-handler-mapping
omit c9e5956653 Support native IDs for compiled plugin domains
omit c2fc93b252 Document native id boundary for compiled plugins
omit dd5e0b511b Modernize native GORM id implementation
omit 129c92fdb4 Address review feedback for native GORM id support
omit c982feb634 Reuse matched URL mappings on async dispatch
omit fb318eef8c Provide a managed fallback promise executor
omit 479f5e0e2e Restore URL mapping state on async dispatch
omit 48a7b21da1 Restore promise error recovery semantics
omit 3ad26eae27 Merge pull request #16234 from apache/merge-back-7.1.6
omit eb152796a8 [skip ci] Bump version to 7.1.7-SNAPSHOT
omit 1f6c1a50ee Merge pull request #16233 from apache/merge-back-7.2.3
omit 3934cb4f47 [skip ci] Bump version to 7.2.4-SNAPSHOT
omit 69a48fd34d Merge pull request #16232 from apache/merge-back-7.0.16
omit 043bec8fdd [skip ci] Bump version to 7.0.17-SNAPSHOT
omit b3febc2d20 Preserve executor affinity across completion stages
omit 0343abc5af Deprecate legacy async compatibility APIs
omit 77eeee3cb1 Replace legacy web promise decoration with Spring async support
omit 351652b1b0 Merge pull request #16181 from apache/ci/rename-joint-workflow
omit 4f55b785d6 Merge pull request #16227 from apache/feat/move-to-testFixtures
omit 274bd83f67 Merge branch '8.0.x' into ci/rename-joint-workflow
omit 80a2962457 [skip ci] Release v8.0.0-M6
omit 3b931d1b89 Document Spring-managed async execution
omit e959963e51 Delegate async action results to Spring MVC
omit 67f93528de Use the Boot application task executor for promises
omit ab48162355 Modernize default promises with CompletableFuture
omit c985acb1ab Merge pull request #16223 from apache/revert/16192-async-changes
omit df305a1131 Merge pull request #16212 from codeconsole/fix/gorm-service-readonly-8.0.x
omit cd1988f233 Merge pull request #16228 from apache/revert/16192-async-changes-test-cleanup
omit 318b1b6dc4 test: some test cleanup for readability
omit 6bfd2471cf build: add `grails-web-common` test fixtures dependency where missing
omit bc41fa9274 Require a cycle the decorator started to still be running
omit 2be110a4ed Reuse the active web request during async dispatch
omit 49b0bc97a8 Unbind the thread even when the request cannot be reached
omit d15fe2053b Merge branch '8.0.x' into feat/move-to-testFixtures
omit 14f546cc9c docs: Update gsonTesting.adoc to correct description of the JsonViewTest trait
omit 64cb2d5235 docs: Update upgrading guide to reflect changes in test helpers and their migration to test fixtures
omit 011e9da567 build: Move `grails-web-common` test helper to test fixtures
omit bc7c51edce build: remove redundant dependencies on spring-test
omit d9d9d64e0a Run the isolated tests in the web suite
omit 1d843ecba7 Run the isolated tests in the uber suite
omit 954e60cec9 build: Preserve test-fixtures variants during functional test substitution
omit 592b38f676 Run the joint workflow against one MongoDB
omit 49cbe1d312 Cache the mongod apart from the dependency jars
omit e8f568d8f4 Revert the async changes from #16192
omit 6e2655d367 Pin the defaultIdType property name on both sides of the build boundary
omit c4b5d45fda Cover the defaultIdType wiring with a consumer build
omit 1aaceb2d3a Generate scaffolded controllers with a Serializable id
omit 1931e75dfc Bind a Serializable action parameter from the request
omit 1b1b07e1bb Let a GORM domain class take its identity type from its datastore
omit ae65d133c9 Let autoConfigurationName name a package as well as a class
omit 27b6097489 Merge pull request #16209 from codeconsole/fix/databinding-raw-collection-8.0.x
omit 1e74b1afc1 Reuse a server only when it is running the backend being asked for
omit 608b8ea0a8 Do not open a transaction for scaffold service reads
omit f4088648f0 Declare the type of the list being bound
omit d088957e7e fix(deps): Bump hibernate7 versions
omit 19f49f34c6 fix(release.yml): correct typo in grails-core docs generation step
omit 23191ec3a1 Merge remote-tracking branch 'upstream/8.0.x' into fix/gsp-spring-boot-standalone-8.0.x
omit 7e89323aa4 Merge remote-tracking branch 'upstream/8.0.x' into perf/request-path-8.0.x
omit 7437632475 Merge remote-tracking branch 'upstream/8.0.x' into feat/hiddenmethod-handler-mapping
omit 4691e25b89 Merge remote-tracking branch 'upstream/8.0.x' into perf/urlmapping-name-resolution-8.0.x
omit 03811759ea Merge remote-tracking branch 'upstream/8.0.x' into fix/gradle-97-groovy-config-script
omit 6fbb305004 Merge branch '8.0.x' into feature/mongodb-skip-index-build-8.0.x
omit cf5c82d031 Merge branch '8.0.x' into fix/databinding-raw-collection-8.0.x
omit e40cb27b0c Merge pull request #16192 from codeconsole/fix/embedded-mongo-replica-set
omit a4c7442d4e Keep only tests that change state across the fix
omit 1829d42ffa Ask the collection branch the question its siblings already ask
omit 2c00340ac3 Merge branch '8.0.x' into fix/embedded-mongo-replica-set
omit 6684431d8c Merge pull request #16139 from codeconsole/feature/gsp-compile-static-8.0.x
omit 17d24ee73d Cover the neighbouring raw collection shapes
omit ab953715a9 Merge branch '8.0.x' into fix/embedded-mongo-replica-set
omit ae38d9bc7e Leave a raw collection's elements alone rather than binding them into Object
omit 14ac0c0fb1 Document the MongoDB settings in application.yml, not only application.groovy
omit bf1917416f Report which indexes the build created and which were already there
omit d0d68476fd Report what the index build applied and how long it took
omit 568013535e Add grails.mongodb.buildIndexesAsync to build indexes off the startup thread
omit 2c25dfd0b3 Apply the configured settings when GORM is given an existing MongoClient
omit b2691d485d Add grails.mongodb.buildIndexes to skip MongoDB index creation on startup
omit 0f8cee341d [skip ci] Release v7.2.3
omit cbc8a9e8c7 [skip ci] Release v7.1.6
omit 1622105a23 [skip ci] Release v7.0.16
omit 837d3f72ab Merge branch '8.0.x' into feature/gsp-compile-static-8.0.x
omit a8c241a7e8 Give the scaffolding example a controller whose views can be precompiled
omit 9aea473ce6 Leave a shared view directory to be expanded per request
omit a0813f495f Read the domain a controller scaffolds from the domain attribute
omit 7878b7276c Expand scaffolded views at build time again
omit 2ff37a87ad add missing rat excludes
omit 2893699c9f quartz - Jobs now carry the name of the application that registered them, and the cleanup sweep only considers those.
omit e2fb44a121 Merge 8.0.x
omit 8d373c178c Document / add work around for long running jobs
omit 5591c70e9f Do not error if a quartz trigger is being scheduled in the past
omit fa68e5eb7f Prevent null intervals
omit 8dca5f2fd9 Stop the servers the specification starts
omit 68c3ac0633 Merge 8.0.x, which now carries #16134
omit 1876ee2682 Merge branch '7.2.x' into 8.0.x
omit c8d4217c7b Merge branch '7.1.x' into 7.2.x
omit a2609b50ee Merge branch '7.0.x' into 7.1.x
omit e5626547ad Update dependencies
omit 5752ba0f58 Merge pull request #16134 from codeconsole/feat/taglib-compile-time-index-8.0.x
omit b7289b624b Merge branch '7.0.x' into 7.1.x
omit 612cc0db58 Merge pull request #16185 from jdaugherty/importQuartz
omit bf177eae1d Say something in the two catch blocks that said nothing
omit d20c006b50 Tear down through the paths that were fixed under it
omit aae115773c Replace a running server rather than return from a restart, and retry a lost port
omit 36517b1a63 Leave the request as it was found when the container refuses
omit 1ba713a286 Say what a version change does to a kept database
omit 68f46e94f4 Leave the root build as it was found
omit 33d45408b2 Stop the server the specifications share
omit e8117a7add Stop every embedded server from one shutdown hook
omit 712d0126ea Read a setting written as empty as the setting it is
omit 3cf4596cf0 Clean up after a restart the way a start does
omit 4ec3de684f Let go of the server only once it is down
omit c0810cbb1b Publish a url for a server that is listening
omit c2e1fe5f02 Refuse a replica set the in-memory backend cannot be
omit e6fa4eb973 Drop the author tag from the rest of the embedded MongoDB module
omit 8c63e301fa Ask for the MongoDB version where MongoDB tests are configured
omit 59d78b298e Drop the author tag from the replica set initiator
omit 2a70426566 Document the replica set an embedded server can be
omit f673d17c43 Give a reloaded application a server it can use
omit 7fdb57600c Close the mongod whose replica set never formed
omit c204890b74 Cover the two names this branch newly binds
omit c74ae38ce0 List the page compilation settings in the configuration reference
omit 05e11cc352 Report every operator the class writer emits, and stop re-escaping a value
omit 5758fc035b document trigger name pitfalls
omit d72d636b32 document how to run code on every job
omit 133425cd4e docs - clarify session state
omit 2406b48d89 test - add timezone spec per previous issue
omit 2eeb59624f fix - load after hibernate
omit b83b7262dd feedback - clean up plugins to match previous votes & fix various issues with Quartz
omit 18250f3d3e Record why the refusal is caught rather than anticipated
omit 7e03a872d8 Let a request that is finishing finish
omit 643e8e80ec Unbind the web request even when its request is gone
omit 3af0db1d36 Merge remote-tracking branch 'upstream/8.0.x' into perf/urlmapping-name-resolution-8.0.x
omit a279ba5e89 Wait on the url the login left rather than the title it had
omit 700f66086e Wait for the login to land before reading the page
omit bcb40ed347 Run the embedded specifications against the server the suite asks for
omit 9aed751d37 Give the tests the MongoDB version the build asks for
omit 663a2ac1da Cache the mongod the embedded MongoDB runs
omit 63982e5565 Share the embedded replica set with the spring-data specifications
omit 8535e13eba Serve the transaction specifications from an embedded replica set
omit 3cb9462e0f Stop the embedded MongoDB once
omit 4e2d14ccec Merge remote-tracking branch 'upstream/8.0.x' into fix/gsp-spring-boot-standalone-8.0.x
omit c4f60ce5f2 Merge pull request #16187 from apache/spring-boot-4.1.1
omit d52f80f919 Say where the example's asset pipeline wiring is going
omit 5e2050dbdb Remove old hibernate library that no longer exists in Grails 8
omit 1a22d0bef2 Update dependencies
omit e6e5b37697 Fix for feature rename
omit 1681a71582 Merge branch '8.0.x' into spring-boot-4.1.1
omit 2a30340391 Read java version from .sdkmanrc
omit 446a12ba31 Merge branch '7.2.x' into 8.0.x
omit ed2e1c378e Merge branch '7.1.x' into 7.2.x
omit a4c54d42b4 Merge branch '7.0.x' into 7.1.x
omit 63479045c8 Run the vulnerability scan on pull requests labeled "vulnerability scan"
omit b00d69b486 fix(deps): remove redundant junit-bom version management
omit 943ae6549e fix(deps): adjust jackson 2 version management
omit dfa190cd01 fix(deps): remove redundant duplicate plexus declarations
omit c0d04789bc fix(deps): remove unreachable duplicate branch in dependencies.gradle
omit 9a0ed70a0d fix(deps): stop managing the log4j version
omit a77d5238c6 fix(deps): Bumb guava to 33.7.1
omit 0a2b2d54cf fix(deps): Bumb commons-codec to 1.22.1
omit 36b76a37e6 fix(deps): Bumb objenesis to 3.6
omit 55e4c07793 fix(deps): stop managing the selenium version
omit 9b988958bc fix(deps): Bump asciidoctorj to 3.0.1
omit 15f743fd70 fix(deps): Bump spring-retry to 2.0.13
omit d8d9f4f80c fix(deps): Bump transitive nimbus-jose-jwt version
omit e84b48d3a8 Merge feature/gsp-compile-static-8.0.x, restoring what its merge dropped
omit df895a74a4 Merge feat/taglib-compile-time-index-8.0.x, restoring what its merge dropped
omit 104066fc7c Merge remote-tracking branch 'upstream/8.0.x' into perf/request-path-8.0.x
omit 7851d40d68 build: conditionally transfer versions in end-to-end for sdp
omit 84b7ee5088 Merge branch '8.0.x' of https://github.com/apache/grails-core into feature/gsp-compile-static-8.0.x
omit 99b5e00336 Merge branch '8.0.x' of https://github.com/apache/grails-core into feat/taglib-compile-time-index-8.0.x
omit ecf1615df0 fix(deps): Remove redundant bom overrides after boot update
omit 3530f846b0 Merge remote-tracking branch 'upstream/8.0.x' into fix/gradle-97-groovy-config-script
omit d2e973a3f0 Merge branch '8.0.x' of https://github.com/apache/grails-core into fix/gsp-spring-boot-standalone-8.0.x
omit f9c7970759 Merge remote-tracking branch 'upstream/8.0.x' into feat/hiddenmethod-handler-mapping
omit 1c005d7fae Merge pull request #16142 from codeconsole/fix/16131-gsp-source-checksum-7.0.x
omit 32f1eaf935 Correct a spec comment that outlived the timestamp
omit 370a6e644b Merge branch '8.0.x' of https://github.com/apache/grails-core into fix/16131-gsp-source-checksum-7.0.x
omit b914f8c29c fix(deps): Update Spring Boot to 4.1.1
omit bf7e0a03d1 test: cleanup
omit f12488d728 Give the example a page worth looking at
omit f9dc11dd5a Merge pull request #16174 from apache/fix/cas-single-signout-and-proxy-receptor
omit b889b8e6c8 Merge branch '8.0.x' into fix/gradle-97-groovy-config-script
omit b9ab07fd20 build: Move `grails-core` test helpers to test fixtures
omit 40c8215d1c Generate links in an application that maps no URLs
omit 914126c550 Merge branch '8.0.x' into feature/gsp-compile-static-8.0.x
omit 547516d694 Merge branch '8.0.x' into feat/taglib-compile-time-index-8.0.x
omit 95c343ddb2 Style the example with Bootstrap through the asset pipeline
omit 8bf66fb543 Find the tag libraries a Grails plugin carries
omit cc32e054c8 Keep the compiled pages off the main runtime class path
omit 79a69b3381 Put three javadoc blocks back on the members they describe
omit c2c45fb7de Decline an argument list no tag call takes
omit 8750284f57 Vulnerability updates
omit cc6ac94626 Ensure plugins are scanned for vulnerabilities
omit 2f71204fc4 Quartz Merge - Rename Clustered Scheduling to Advanced Scheduling
omit 5e142ae30d Quartz Merge - Nest Quartz under Background Jobs as Clustered Scheduling
omit 59a0151f86 Quartz Merge - Add a Background Jobs guide chapter
omit 670bd78779 Quartz Merge - Declare the spring-context-support runtime dependency
omit 1560376969 Quartz Merge - Ignore reformat code commit
omit afd9950316 Quartz Merge - Reformat code that mismatches our code style
omit 8d00a7cb91 Quartz Merge - Integrate Docs
omit 79704bb1cd Quartz Merge - Integrate Build
omit f4e088d879 Quartz Merge - Initial Moves
omit 5265137acd Initial import of Grails Quartz Repository
omit 5c45f23a8b Read the classes the forked page compiler wrote
omit 9572cf6590 Document the type attribute and correct two statements about the default
omit 16c7624c3a Convert a typed value rather than require it to already be the type
omit 608a5f57a9 Bring in the part of the Grails web tier this example renders with
omit 478d1e455a Leave the JSP compiler out of the executable jar
omit 4450c195bc Merge remote-tracking branch 'upstream/8.0.x' into fix/gsp-spring-boot-standalone-8.0.x
omit e8cb6d9ee4 Leave the gsp-spring-boot example configured with what it teaches
omit 3159fc709c Order the GSP auto-configuration imports as the style requires
omit b93224d8c4 Count an application GrailsApp launched as a Grails application
omit ec69c9c5f6 Apply the SiteMesh defaults without asking to be enhanced
omit 4f6975c009 Run the Grails plugin lifecycle for a Grails application only
omit 08c38aaef1 Contribute the core beans that read the application only where there is one
omit 56d1db946a Register GSP tag libraries as beans instead of inside the lookup
omit 6fb9853984 Configure the GSP codec lookup after the codecs module contributes one
omit 8579fd6107 Merge remote-tracking branch 'upstream/8.0.x' into feat/hiddenmethod-handler-mapping
omit a1ac13297c build(test): make the isolated test tasks actually run their tests
omit 35780cdd18 feat: disable the hidden HTTP method filter by default
omit 8f58534ac9 Offer the JSP rendering only where the example can serve one
omit c30426ee01 Start a standalone GSP application that has no JSP support
omit ca1d139544 Write the GSP view registry whole rather than merging it
omit b2a42af3c7 Package the gsp-spring-boot example as its compiled views
omit b4abdb17ff Render precompiled GSP views in a standalone Spring Boot application
omit dde9a2372e Put the compiled GSP pages on the runtime and test class paths
omit f9aed8b568 Ship the GSP sources in the packaged gsp-spring-boot example
omit d46653fab0 Start and decorate GSP views in a standalone Spring Boot application
omit 44d3fe19b2 Make the Grails auto-proxy creators known to Spring where they are registered
omit 5a4fab66a2 Put a licence header on the files the new application added
omit 7a5df8ab1f Give a typed g:set a scope rather than a page-wide name
omit 95a9eb6f15 fix(cas): address review feedback on metadata, docs, timeouts and style
omit efa8e7e16a fix(cas): address review feedback on README, CI duplication and plugin metadata
omit 46e1f1ccae fix(cas): package names aligned, log.warn removed in favor of println
omit 155a845537 fix(cas): repair proxy receptor and single sign-out, add integration tests
omit 32d19da2a2 Add an application whose pages are compiled statically
omit af62583ac5 feat: move the hidden HTTP method override into the dispatcher when the filter is off
omit b0df13fd0d Merge pull request #16033 from apache/fix/flaky-json-view-gson-shared-state
omit 57e3aa759e Merge pull request #16179 from codeconsole/fix/urlmappings-factory-bean-object-type-8.0.x
omit 1d82b09941 Report an unregistered tag as the dynamic path reported it
omit 0f59eafd57 Cover the controller the rewrite decides by its directory
omit cb99cc8fc1 Read a class for tag calls once its traits have been applied
omit e718a7ba79 Take Gradle 9.7.1
omit 38ebef690f Merge remote-tracking branch 'upstream/8.0.x' into fix/gradle-97-groovy-config-script
omit 58cdf3efe2 Merge branch 'feature/gsp-compile-static-8.0.x' of https://github.com/codeconsole/grails-core into feature/gsp-compile-static-8.0.x
omit 76ddc20e75 Merge branch '8.0.x' of https://github.com/apache/grails-core into feature/gsp-compile-static-8.0.x
omit 6f9760b1af Merge branch '8.0.x' into feat/taglib-compile-time-index-8.0.x
omit de86958b81 Merge branch '8.0.x' into feature/gsp-compile-static-8.0.x
omit 1f63d1a784 Fix three things sbglasius found in the page compiler
omit 6a020c390b build: Move GraphQL test helpers to test fixtures
omit 3de2f487e1 ci: simplify groovy snapshot canary workflow display name
omit 413d19fe85 Neo4j GormRegistry migration (consolidated: replaces #15816, #15951, #15817, #15832, #15833) (#15972)
omit 91e0a3c345 ci: add proper name to `build_groovy` job
omit 40bbd562cf ci: rename the Groovy Snapshot Canary Build workflow
omit 319b5cb818 build: Move JSON view test helpers to test fixtures
omit d7ee26c4b2 Rework entity decoupling as per-spec sub-packages instead of prefixed names
omit 9a472722b0 Declare what the url-mapping factory beans produce, so nothing is created to find out
omit 437b489e05 Say plainly that the granularity setting is gone
omit f39a7f6e1e Remove the recorded modification time entirely
omit 894266cb5b Move to the 8.0 line
omit a3d0871f79 Parse from the decoded source rather than wrapping the bytes in a stream
omit b4064c9628 Document the development-mode reload change
omit e6b65f13a8 Correct two statements the runtime-path checksum invalidated
omit 7dbea7d626 Record a checksum for pages compiled at runtime too
omit c0cdbbde39 Skip re-hashing a page whose source stamp has not moved
omit b782f2eb9c Target the 7.1 line and document the change in its upgrade guide
omit 0126081f56 Take the checksum over bytes rather than a stream
omit e55dd6e5f7 Keep the -1 timestamp sentinel able to self-heal
omit 81f8cdafb5 Cover checksum precedence over a recorded modification time
omit 41bb9354a4 Record a source checksum in precompiled GSPs instead of a modification time
omit b18355711d Make precompiled GSP classes byte-reproducible
omit 86c4f060ef Merge branch 'feature/gsp-compile-static-8.0.x' of https://github.com/codeconsole/grails-core into feature/gsp-compile-static-8.0.x
omit 7b3d21a772 Merge branch '8.0.x' of https://github.com/apache/grails-core into feature/gsp-compile-static-8.0.x
omit 244b48f249 Read the Spring Security version from the class the page already resolved
omit 86642abeb0 Merge branch '8.0.x' of https://github.com/apache/grails-core into feat/taglib-compile-time-index-8.0.x
omit f42924db13 Merge remote-tracking branch 'upstream/8.0.x' into perf/request-path-8.0.x
omit 645241d930 Say that a namespace is not checked against a closure's delegate
omit 8ea3a9aa3e Say why the deprecated URL constructor stays
omit d0c68dc38f Merge pull request #16163 from apache/groovy-5.1.0
omit c4052b889e Merge remote-tracking branch 'upstream/8.0.x' into perf/request-path-8.0.x
omit 7ec07a2bf7 Merge branch '8.0.x' of https://github.com/apache/grails-core into feature/gsp-compile-static-8.0.x
omit cb57d22e32 Do not describe a class an application could never register
omit f1a857373f Merge pull request #16102 from codeconsole/feature/i18n-boot-message-source-8.0.x
omit e1af1b99ef Check tags only in the namespaces this project describes
omit 7aaa5bcaa7 Merge branch '8.0.x' into feature/i18n-boot-message-source-8.0.x
omit 12985ef89a Record a tag name, not how it was written
omit 983e502f1c Merge pull request #16094 from codeconsole/fix/aot-live-instance-beans-8.0.x
omit 8444cc5466 Merge remote-tracking branch 'upstream/8.0.x' into fix/aot-live-instance-beans-8.0.x
omit ac919290f3 Take SiteMesh 3.3.0-RC1
omit 045868cd81 Check a real build compiles a convention controller's tag call
omit 6ee0ba756a Merge pull request #16034 from apache/fix/flaky-where-query-closure-capture-cache
omit 95955df6bf Pin the unqualified setting on both sides of the module boundary
omit 5852104a30 Compile a tag call the source proves is one, and make the rest opt-in
omit 72b3fffb20 Describe only what was asked for, and dispatch a shape a tag cannot take
omit 2926a0f644 feat: GORM O(M+N) scaling — GormRegistry, SessionResolver infrastructure, and core-class tests (consolidates #15779, #15780, #15790) (#16066)
omit c1ce109b06 Enumerate a tag library's tags once, for both views of it
omit 728f00f1a0 Merge branch '8.0.x' into build/ci-daemon-heap-vs-runner-ram
omit 89e993c3ba Merge pull request #16158 from apache/fix/test-fork-oversubscription
omit 49e51adbdc Merge branch '8.0.x' into fix/aot-live-instance-beans-8.0.x
omit 5c836c436f Name the controller types this module declares as types
omit 80ee12adc4 fix(deps): update jackson2 and jackson2-annotations versions to address CVE-2026-54515
omit ca05235642 build: update jline/jansi to align with Groovy
omit cc7e0c3353 build(ci): bound concurrent JVMs on the macOS runner
omit 143c982ee9 Merge remote-tracking branch 'upstream/8.0.x' into feature/i18n-boot-message-source-8.0.x
omit ccca92fd4b build(test): qualify configuredTestParallel via rootProject.ext
omit 0f5f5b653a build(test): assert ActiveProcessorCount reaches forks
omit c954bb5117 ci: update version extraction logic in groovy-joint-workflow.yml to include minor version
omit 86518ca064 fix(deps): update another `groovy.version` in dependencies.gradle
omit 4a289e331a refactor: remove Groovy 5 workaround for GROOVY-12134
omit e45c8ce549 fix(deps): update Groovy to 5.1.0
omit deac428c1e Merge pull request #16052 from apache/fix/enum-hasmany-ddl-16051
omit eaa0af6867 Merge pull request #16136 from apache/fix/issue-16133
omit 3650fdf15a refactor: rename isIdentityOrVersion to notIdentityOrVersion
omit 0b8473f6e4 Document what an oversized upload reaches, and where it does not
omit fcb65f9879 Cover the oversized upload path on Tomcat, Jetty and Undertow
omit f145eb2f43 Stop an error handler that fails from being forwarded to forever
omit 9b580c9ac9 Read every framework request parameter through one tolerant helper
omit bb2a8b0492 Cover oversized uploads and multipart method overrides end to end
omit 1beae2175d Let oversized uploads reach the application's error handling
omit 180a6cbf6c Benchmark the redirect and render paths
omit 785d4e5f41 Take the cached collaborators out of the controller traits
omit 8803bd697d Renumber the upgrade note to avoid colliding with the request-path branch
omit c8f89ab26d Use the guide's table syntax for the URL mapping upgrade note
omit 4b2ab93972 Document that captured URL mapping names come from the URI
omit 4c9d8d8a6b Resolve captured URL mapping names from the match, not the request
omit 8d315b7369 Fold the request-path benchmarks into grails-benchmarks
omit 6d468648a8 Take asset pipeline 5.2.0-M3
omit 0d195f1493 Address review: skip caching interned nodes, compute outside lock, fix isDomainClass javadoc claim
omit f8e4485cbe chore: add back import after bad merge
omit cbb9a0de0c Merge branch '8.0.x' into fix/issue-16133
omit 7d5e684929 fix(config): bind nested settings maps under Spring 7
omit 47cb138493 test: more default nullable test coverage
omit d76700ae30 docs: update documentation to clarify changes in default nullability for persistence mapping
omit 7f28c4b15c chore: simplify `VirtualThreadPromiseFactory`
omit 67780aa992 fix: ensure correct promise type casting in PromiseList
omit 5d911ba439 docs: update asyncPromises documentation for virtual-thread promise factory
omit cb0db006e0 test: update EnumTypeBinderSpec to handle changed nullable default
omit baa3a4c0a3 fix: nullable-by-default mapping cases
omit 9cf91149ac test: cover nullable-by-default mapping cases
omit 3bd188642f fix: virtual-thread executor usage for multi-closure promises
omit a598d287a4 Address round-2 review: scope getTable override, restore log, harden specs
omit 30cac71a8f Drop the controller convention case from the rewriting spec
omit 63a462a776 Move the tag library bean registration to org.apache.grails
omit e28672d89e Move the Gradle plugin's AOT classes to org.apache.grails
omit 7286f5c4cb Clear the style violations left by the review changes
omit 6b67de9dc6 Leave an unqualified call inside a closure to the closure's delegate
omit db49c9488f Quote the port message the way CodeNarc asks
omit 1ece28fbbb Refuse to generate Neo4j definitions that carry the machine's configuration
omit 416096af49 Say what is wrong instead of publishing through a null
omit 6480f53211 Stop concurrent index writes losing entries, and cover the rest of the review
omit a3d5a48b39 Fingerprint the extraction by the JDK, not by where it lives
omit 3890b3466e Refuse a port something else is already answering on
omit e68da7d3db Ask for the asset task by name instead of holding the container
omit 709989ae37 Record the pages after they are compiled, not before
omit 68901e2858 Finish the review: index reads, discovery pins, and the notes that were missing
omit cb76065a1e Close the client the trace ran with
omit 03638e7424 Wait for the application to start, not for the word "Started"
omit 0021e820a5 Keep the project out of what the AOT tasks carry
omit 8ce567cf0d Wire the index into test runtimes and stop restating what nothing reads
omit 874c053068 Merge remote-tracking branch 'upstream/8.0.x' into fix/aot-live-instance-beans-8.0.x
omit 6d4bb566bf Give the training run the archive by its full path
omit 781eb505f1 Drop the two index methods nothing calls
omit c89bbaf534 Number the index format from one and drop the doubled javadoc
omit 298d585422 Say what the self-describing fallback covers, and deprecate what installs onto metaclasses
omit 79193b6a75 Declare where tag call rewriting runs instead of relying on a default
omit 156977b997 State what a page with no tag library lookup does with an unresolved name
omit eb5b692360 Leave a name Groovy already answers to out of unqualified rewriting
omit 4912fc3623 Address jdaugherty and Copilot review feedback on groovydoc link audit
omit 06caab3551 Decouple auditGroovydocLinks from the default docs build and add test coverage
omit c0bc0ef20c refactor: rename groovydoc link check to audit task and remove property control
omit 15c7420731 docs: fix broken external and internal links in Groovydocs and add audit mode
omit 54ea20836a fix(grails-data-hibernate7): make type: 'text' produce an unbounded column (#16020)
omit f3413b4f6e Merge pull request #16050 from apache/deps/codeql-action-4.37.3
omit 5d9855e146 Merge pull request #16032 from apache/fix/flaky-running-application-process-timeout
omit 13c964143f build(test): stop test forks oversubscribing the machine
omit 4ef8cba33f build(test): make isolatedTestsTwo actually run serially
omit aaefad82fc Isolate the domain binding spec from discovery strategies left by other tests
omit 3f8ce887d4 Merge remote-tracking branch 'upstream/8.0.x' into feature/i18n-boot-message-source-8.0.x
omit e972b2ca5f Merge remote-tracking branch 'upstream/8.0.x' into perf/request-path-8.0.x
omit b964e603d0 Merge pull request #15950 from apache/fix/binddata-null-missing-stale-data
omit bfb87bf002 Merge branch '8.0.x' into feat/taglib-compile-time-index-8.0.x
omit a8e9fb6124 Merge branch '8.0.x' into feature/gsp-compile-static-8.0.x
omit f579cf3135 Merge pull request #16071 from apache/perf/8.0.x-jmh-pr-benchmarks
omit a6f4846fec Merge branch '8.0.x' into fix/binddata-null-missing-stale-data
omit 11ebb5a8cd Merge pull request #15947 from apache/fix/binddata-mass-assignment
omit 1628a9c31f Merge pull request #16141 from jamesfredley/docs/grails-7-plugin-compatibility
omit 1b758d9d54 Restore the locale context on include and forward dispatches too
omit ae94719e30 Document the test impact of deprecating getCurrentRequest
omit 78ff86793c Add benchmarks for the always-on request paths
omit 6b304783f9 Deprecate getCurrentRequest and call getRequest directly
omit abc0316b0e Cache the per-request lookups in the redirect, render and domain binding paths
omit 992084a8b8 Merge remote-tracking branch 'origin/feature/i18n-boot-message-source-8.0.x' into feature/i18n-boot-message-source-8.0.x
omit 0221bb01d8 Reject plugin descriptor names that collide once normalised
omit 8ef9bbd7a9 Cache the data binding collaborators and the databinding whitelist lookup
omit f1267f616a Stop generating allowed-methods bookkeeping into every controller action
omit 4e8883474b Stop allocating a JDK proxy per interceptor phase per request
omit 6be65ebcbf Skip URL mapping candidates that cannot match before running their regex
omit cc1cbac7bc Record the request-path benchmark baseline
omit ba29b546d4 Document the request processing behaviour changes in the 8.0 upgrade guide
omit ab68e688e9 Stop copying the servlet parameter map on every request
omit 5511f09507 Delegate handler chain assembly to Spring and stop reallocating interceptors
omit 959448b51b Resolve the request-scoped application attributes once per servlet context
omit 0709bf4f38 Cut unused helper and repeated javadoc from the multipart cleanup
omit 32b0d9f5a4 Discover the multipart request instead of substituting it
omit ecff934dbc chore: cleanup `DefaultASTDatabindingHelperDomainClassSpecialPropertiesSpec`
omit b22be60569 Say what the artefacts are read from, and check it holds
omit 67abf890b7 Reach the archive and the assets without resolving them early
omit 437e627074 Say unknown where a version was asked for, and nothing where it was not
omit d81902f70b Ask in one place whether the code is being written out
omit 1714f2b055 Leave one thing deciding what the definitions are generated for
omit 79bd5b9488 Put the new ahead-of-time code under org.apache.grails
omit e93d383ea8 Leave scaffolded views to be produced where they always were
omit 07a30bb3eb fix: preserve bidirectional binding with nullable associations
omit 88538f535a Declare the compiler config script task's caching behaviour
omit 0bc0f16bb3 Merge branch '8.0.x' into fix/gradle-97-groovy-config-script
omit 61df8413aa Document the import changes in the Grails 8 upgrade guide
omit 1d42801229 Drop importJavaTime, which Groovy 5 makes redundant
omit b288d28ee4 Merge remote-tracking branch 'origin/fix/gradle-97-groovy-config-script' into fix/gradle-97-groovy-config-script
omit dfbb54db70 Give the compiler config script a task type of its own
omit a54943de1e Show an undeclared name rather than a misspelled one in the model example
omit 636a0e7315 Wait for a task that produces the build's own compiler config script
omit e823ab9568 Use the tag that fits: def for a page-local value, set for a scoped one
omit ca6b10ebe0 Build the compiler config script from configuration state, not the classpath
omit a794e2ac51 Let the set tag be given a type
omit 0eebb1e154 Use the lazy configurationScriptFile property, and pin the classpath scope
omit 43dcdc488b Cast a primitive g:def through its wrapper
omit a83f87480e Merge pull request #16138 from apache/dependabot/github_actions/softprops/action-gh-release-3.0.2
omit eae66f7903 Merge pull request #16137 from apache/dependabot/github_actions/testlens-app/setup-testlens-1.9.3
omit 2263394899 fix: initialize `defaultNullable` to `true` in `AbstractGormMappingFactory`
omit f07ddd11b7 test: reset fixtures and UserIntegrationSpec assertions
omit 6948b393a3 chore: whitespace
omit 4431eced56 Merge pull request #16144 from codeconsole/feature/gsp-escaped-dollar-8.0.x
omit 2eb6d04f46 Read the Spring Security version off the package, not through reflection
omit f719515a07 Document the names a page is given, now that all but two carry their types
omit 61618252e5 Declare the framework supplied names on the page rather than its base class
omit 0609f8fc64 Make the welcome page of a new application compile statically
omit 8596515dd9 Hold back only the receivers of operators written into the class
omit 1df3458207 Report an operator on a value of no known type
omit abd0453525 Bind the qualified domain name when expanding scaffolded views
omit b0ca3f3ce7 Let a build ask that every page declare what it reads
omit bc8b9c847f Read a page the way it asks to be read
omit 9843b9ef39 Let a page read a name it introduced with a tag
omit 0b090a557b Type a page's parameters as TypeConvertingMap rather than Map
omit daaa4048b0 Support escaping a GSP expression with a backslash
omit 9ef02258c9 Address plugin compatibility review feedback
omit 2c8b338f1c Document Grails 7 plugin compatibility on Grails 8
omit 197408ae16 Add a build option for compiling pages statically
omit fb6518ead9 Check where a form page was answered from, as a path already is
omit 7afd382a6c Let an artefact type be held back from the compileStatic all shortcut
omit 8da070f87f Type the names a statically compiled page never declares
omit e457e60bdc Document and test the GSP compileStatic configuration
omit cb374b1c3a Trace what was asked for, or say that it was not
omit 5a924d11b8 Put back the cookie handler the build was using
omit 35657c9b02 Leave Neo4j holding the configuration it can still reach
omit 4788cebfc2 Say what makes standing down over the configuration processor safe
omit 0a8b8f5022 Make the ahead-of-time application serve a page, not only start
omit 082b6b4829 Ask the post-processor about colour through the hook that decides it
omit 1d95c8eff2 Leave collectMappedClasses saying what it has always said
omit 5a10ebfac3 test: adapt other tests to fixing issue 16133
omit 274ea82b5d fix: issue 16133
omit 3570c760ed Bump softprops/action-gh-release from 3.0.0 to 3.0.2
omit 641b7d24f2 Bump testlens-app/setup-testlens from 1.9.2 to 1.9.3
omit 592a3fb56c test: reproduce issue 16133
omit 6fa81e7777 Write down what the banner now says without being asked
omit e517a9d7b4 Say which banner version option was not recognised
omit 9bbd56625c Say which JDK a cache needs, rather than let the run fail for it
omit 48d9d2b37a Tell Gradle what decides whether the views are staged
omit 4016bae65d Keep the image to the properties files something actually reads
omit cbc1ffa172 Let every datastore name its event publisher rather than hold one
omit 49a59448d6 Give two version lookups back the documentation left above a third
omit 4b9352d453 Ask for nullability with the annotation Spring did not deprecate
omit 3e7aab6b06 Merge branch '8.0.x' into fix/gradle-97-groovy-config-script
omit 91f8d3d43b Merge branch '8.0.x' into feat/taglib-compile-time-index-8.0.x
omit 2780990aaa Take the compiled classes, not the whole source set output
omit 2bff14123a Drop an import left over from rewiring the index outputs
omit 58bc54102c Add the descriptors to the library artifact alone
omit 0e7d2022ba Claim a skipped tag library's namespace only when the source is plain
omit 25a292dd00 Measure the rewriting rather than static compilation with it
omit d1c446ac6d Read a skipped tag library's namespace rather than match it
omit 1ec4b8a0f4 Keep this project's compile settings out of what it publishes
omit 86ed5d8401 Prove a deleted tag library cannot survive in what is published
omit 2834ffbf98 Package the index written after this project is compiled
omit 73d6bd3fdf Describe a tag library that refers to what this project declares
omit c417954b9a Measure what compiling a tag call is worth on its own
omit 2a72625dfc Do not fork the index generator for a project with no tag libraries
omit fdeb5e86fe Say which page tag forms strict checking covers
omit 33e2e90b9f Know a tag library declaring no tags has been described
omit fcd70e89bf Document compiled tag resolution
omit 07a909cdea Let the build state what it knows about its tag libraries
omit b9e2b510b6 Report an unknown tag only where the source says it is a tag
omit 54773e74a6 Describe each tag library once
omit 960c9cc97e Resolve a tag expression in a statically compiled page
omit b204c78c35 Resolve a tag call wherever it is written
omit b1ab9a42a6 Invoke a resolved tag with the arguments it was called with
omit 1235c4cf1a Register the tags a tag library actually has
omit 515c4b5f80 Read the tag library index once per compilation
omit fa1e14756d Merge pull request #16095 from codeconsole/feature/mongodb-embedded-8.0.x
omit 05648caf1a Name the generated MongoDB database the way a SQL one is named
omit 544710fd1d Add the Apache license header to the compiled tags guide page
omit 32a9393074 Recognise a boolean getter as claiming a namespace name
omit 9729ec1ff1 Let a project resolve the tags it declares as it compiles
omit 1bf67a36b7 Only treat a name as a namespace when nothing else claims it
omit 04540b6b6d Remove an import left over from dropping the bootstrap metaclass enhancement
omit 106aaae036 Record how each tag is implemented
omit 37e5752e8f Resolve tags without writing to a metaclass anywhere it matters
omit 2ab866640a Let more than one directory hold tag libraries
omit 164f297c58 Document compiled tag resolution
omit 9d2304f53f Compile tag calls in controllers too
omit d6a204f673 Correct three compatibility faults in tag resolution
omit 9412856f12 Compile a call to a known tag into a direct invocation
omit b34de798bb Stop installing tags onto tag library metaclasses
omit 02a8e79925 Add an explicit entry point for invoking a resolved tag
omit 7e10994139 Report an unrecognised tag as a compilation error
omit b525a4a340 Dispatch tags without writing to a metaclass
omit 26da0a12c5 Register tag libraries from the compiled index
omit 3c847aa8b5 Generate the tag library index before compilation
omit ba48005ad8 State the tag discovery rules once
omit d98ea0d684 Leave a tag declared twice to runtime resolution
omit f621337ae6 Make the tag index agree with runtime in three more cases
omit 90075c3c8b Cover tag library index merging across jars
omit c992f603e0 Precompute tag method argument binding
omit 8afe580f86 Resolve GSP tag calls against the compile-time index
omit 7c5b93fb14 Generate a tag library index at compile time
omit dd8e310644 Define tag handlers as methods in PlainTextMailTagLib
omit 4633c6777b docs: clarify behavior of clearMissing for Grails-managed properties
omit 13091653f5 feat: implement wildcard expansion for included properties in clearMissing
omit 0c876331b0 test: improve clarity of bindData test names and enhance clearMissing behavior
omit e133a02446 docs: enhance bindData documentation with wildcard usage and clearMissing behavior
omit 3352c00b7f test: improve clarity of test names for clearMissing behavior
omit c4e58c24ec docs: clarify behavior of clearMissing in FrameworkPropertyNames
omit 8cc9ceed92 Rename `nullMissing` to `clearMissing`
omit 90dacd3edb test: configure multipart file upload limits in example-app1 application.yml
omit 535e8141b8 Merge pull request #16121 from apache/fix/managed-entity
omit 3e9ca7a4c0 Merge remote-tracking branch 'upstream/8.0.x' into feature/i18n-boot-message-source-8.0.x
omit 9e9c4600be Merge branch '8.0.x' into feature/mongodb-embedded-8.0.x
omit e997f98606 Merge branch '8.0.x' into feature/i18n-boot-message-source-8.0.x
omit 33af958b12 Sort the AOT imports the cherry-pick left out of order
omit 2649ca482b Let a traced form be told what to put in it
omit 49ec1f06a4 Record the reflection a running application does, from a declared list of paths
omit 1240ce7857 Keep the setters a domain class's constraints are applied through
omit 2876503929 Fold the task's two javadoc blocks into one
omit fa710fd59f Merge branch '8.0.x' into fix/aot-live-instance-beans-8.0.x
omit eef515dfae Ask about the return that rewinds a line, not the one that ends it
omit 321c9de6f5 Merge pull request #16118 from codeconsole/fix/gsp-compile-java-toolchain-8.0.x
omit 09fee3d3b9 Merge branch '8.0.x' into fork/gsartori/use-spring-upload-config
omit 5e1acba929 Merge pull request #16119 from codeconsole/forge-security-beans-dsl
omit 82d3011d3f docs: update multipart configuration documentation
omit ca1ea870b7 feat: implement environment post processor to validate legacy multipart configuration
omit da7c42d523 test: add multipart file size limit tests to FileUploadSpec
omit 7488c877a5 test: simplify `ControllersAutoConfigurationSpec`
omit d62fd9c837 test: add multipart configuration tests for dispatcher servlet registration
omit 8f1fa16053 Merge pull request #16096 from apache/remove-decommissioned-test-code
omit 1c77528134 Merge pull request #16104 from apache/remove-missing-slf4j-warnings
omit 4e2b0463c4 Merge pull request #16103 from apache/refactor-depr-gradle-test-listeners
omit 72d0873c0b Merge pull request #16026 from apache/fix/gorm-numeric-column-dialect-precision
omit dad867634c Merge branch '8.0.x' into fix/binddata-mass-assignment
omit fbdf186fe1 Merge pull request #15800 from apache/fix/15374-codec-metaclass-registration-overhead
omit fcc8f257b9 Merge pull request #16116 from apache/perf/8.0.x-ci-wall-clock-regression
omit 91ee8a8283 chore: add license headers
omit 9b508ab3fa test: add example domain class with `@ManagedEntity` in hibernate7 example
omit 2c10d5dfb0 fix: update HibernateEntityTransformation to use a specific applied marker
omit 362ffd4571 test: add example domain class with `@ManagedEntity`
omit 7fbe45e180 Seed a non-admin account in generated secured apps
omit f64b04c71c Lock down the generated Spring Security defaults
omit c465952f53 Do not hand the training run a variable the daemon kept but emptied
omit 81a151cbcd Generate Spring Security wiring through the beans DSL
omit 8b8d063316 Keep the compiler config wiring live and correctly ordered
omit 8804f208a9 Shard remaining critical CI test legs
omit 184821249d Say why the training run ended, not only that it did
omit baf640289e Say how the extracted application is compared, so the task validates
omit 905964362b Ask for an embedded MongoDB by url, the way an in-memory SQL database is asked for
omit 7bb015970e Separate rerun build work from its test shards
omit 7ebf2fb3e1 Shard critical selector test legs
omit fe4c9cfc2e Stop caching what a forked compiler produced
omit cd4490aea5 Parallelize remaining critical CI workloads
omit 61d90312d6 Register an image's resources as hints rather than as build arguments
omit f18532d7f8 Space a mark as it was written rather than shouting it
omit bd86459603 Give an application building ahead of time what it needs
omit 57a387c032 Parallelize critical CI test workloads
omit 8a3a79ffb6 Add deterministic test task sharding
omit f813b48af6 Compile GSP pages with the Java the project asked for
omit 8b8bea09af Cover the checkpoint and restore path the embedded MongoDB depends on
omit 223ac95f26 Build on JDK 21.0.12
omit 199eb8e23e Show the container being served on, and stop at the first one found
omit 8a28c10784 Show Spring Security by default, and leave out what cannot be determined
omit 8ba500ddc0 Read an optional version without setting the library going
omit 2187890a6a Keep the banner's option enums usable in an image
omit 03b9909ba4 Say under the banner how the application was started
omit 37f771067b Remove an import left unused by the previous commit
omit 4e93ca18b9 Let an application with an embedded MongoDB take a CRaC checkpoint
omit 17f81fe981 Generate applications with the Gradle 9.7.0 wrapper
omit 56a8dc4da4 Build with Gradle 9.7.0
omit 7297db5fdc Do not start an embedded MongoDB while generating bean definitions
omit 790b5c1f33 Train on the toolchain's JDK, and leave the cache beside the application
omit ac9075ac5d Follow every type a class file names, not some of them
omit b2009c4382 Assert what the registrar now says these beans produce
omit aeb9004179 Address review of the AOT cache task
omit 3fec0cd0a8 Correct the AOT cache figures
omit 59e644ba47 Package compiled assets where an executable jar can read them
omit b2c7f4395d Document the AOT cache
omit da9dcd733c Train a JDK AOT cache from a run of the application
omit ac091ad8a9 Use plain map-entry spacing in the native metadata task
omit 5846c43855 Let an image call the Spring interfaces a plugin is handed
omit 7a063e3a98 Skip a closure whose surroundings cannot be loaded
omit 813e1918da Let an image call the framework's own interfaces
omit 7687f84639 Leave a datastore's proxy handler alone
omit 181ac758a9 Address review: metadata only for a native build, and four smaller things
omit af29982470 Let an application choose the colour the banner art is shown in
omit 79f1dccc59 Show the banner art in the framework's colour
omit 7d2bad0f02 Colour the output of an image that is being run at a shell
omit feb740f097 Ship what an image needs with the framework rather than asking for it
omit 9ba4d149a1 Carry what a page compiled at build time is read from
omit f304120624 Define the url mappings holder as reloadable only where it can reload
omit 26f464bef9 Leave the plugins' own artefacts to the plugins
omit 2b0824fef5 Write down the artefacts an application is made of
omit 0d0dc239d1 Do not read the application's own bean declarations a second time
omit 33c54d8c45 Read the flag directly rather than looking it up
omit d218534d47 Let an image call the classes that extend types Groovy did not declare
omit a650c42087 Inherit no search location while code is being generated
omit 32e3467b64 Leave the Hibernate datastore's configuration to be read where it runs too
omit 07273ed9e1 Answer where the application runs, not where it was built, for GSP
omit c250a955da Let a plugin declare its beans from inside an image
omit ee481ed207 Cover the two ahead-of-time processors contributing to one bean
omit d2ad00cc77 Do not add a second processor for configuration classes
omit b70873614e Keep the bean definitions that were generated ahead of time
omit 36d20d1127 Leave a datastore's configuration to be read where the application runs
omit 2885d88f72 Gather a variable-argument constructor argument into the array it feeds
omit 3e0a6fe23e Contribute tag library definitions without replacing what is registered
omit b1611e36ab Carry a bean's injection into the code generated for it
omit 79504824fd Generate the Groovy compiler config script in its own task
omit 724a270dc4 Offer only the backends whose library is present
omit 22c100bdb2 Expand scaffolded views only where a controller is scaffolded
omit 3e4fa5c897 Merge pull request #16112 from apache/revert-15824-fix/14915-beanbuilder-spring7
omit f18fc9af04 Revert "Keep BeanBuilder DSL independent of XML setup"
omit 71efa807c7 Merge pull request #15824 from apache/fix/14915-beanbuilder-spring7
omit ac94b25e81 Merge pull request #15812 from apache/fix/forge-oauth-state-validation
omit 0c78c458fc Merge pull request #15339 from sanjana2505006/feature/15007-mongodb-testing-forge
omit 29053d5f2d Follow the configured import order and indentation
omit e1e3aae3a3 Cover what an application records for an ahead-of-time image
omit d366841707 Ask one question about which scanned types may be registered
omit 19bcf52e8c Merge branch '8.0.x' into fix/15374-codec-metaclass-registration-overhead
omit d92eadc066 Allow concurrent documentation publishing
omit 322233651c Merge branch '8.0.x' into feature/i18n-boot-message-source-8.0.x
omit e929338408 Merge pull request #15803 from apache/fix/synchronizer-token-hardening
omit b9f5c1f17e Merge branch '8.0.x' into fix/15374-codec-metaclass-registration-overhead
omit f92e2e0cf8 Use the pages compiled at build time in an ahead-of-time image
omit cf62c7f8d4 Cover mockCodec without lookup reinitialization
omit ab63e4e5c0 Cover codec lookup lifecycle initialization
omit 09b037af96 Remove the ad hoc codec benchmark
omit 59f9b22e7b Preserve codec metaclass registration contracts
omit 81ce34460a Register the classes a tag library declares inside itself
omit 1007b5fe1a Match Spring Boot nested property semantics
omit 959af4200f Merge pull request #16109 from apache/merge-back-7.1.5
omit a5ed183758 Align Groovy configuration metadata inference
omit fa8e4e4fc1 Register the rendering, scaffolding and persistence runtimes
omit ed463e9fe3 [skip ci] Bump version to 7.1.6-SNAPSHOT
omit 4991ae9f5e Keep the configuration metadata compiler internal
omit 4f55e5bb6d Preserve configuration metadata identities
omit b3686d66b1 Document generated Views configuration metadata
omit 3a1c22281d Correct the removed-settings table in the i18n upgrade section
omit 42c903f451 Merge pull request #16108 from apache/merge-back-7.2.2
omit 93fd522fb6 Merge pull request #16038 from apache/dependabot/github_actions/codecov/codecov-action-7.0.0
omit 05cfc88fb2 [skip ci] Bump version to 7.2.3-SNAPSHOT
omit 69fbd65156 Merge branch '8.0.x' into feat/virtual-thread-promise-factory-seed
omit a1e526fd02 Merge branch '8.0.x' into fix/forge-oauth-state-validation
omit 95d2232e9e Merge pull request #15711 from apache/dependabot/github_actions/release-drafter/release-drafter-693d20e7c1ce1a81d3a41962f85914253b518449
omit 674a3a375d Merge pull request #16100 from paulk-asert/validateAction
omit e88612c33c Merge pull request #16106 from apache/merge-back-8.0.0-M5
omit c989200e71 [skip ci] Bump version to 8.0.0-SNAPSHOT
omit bcb05afdee Merge branch 'fix/binddata-mass-assignment' into fix/binddata-null-missing-stale-data
omit b89e6a02dd Merge branch '8.0.x' into fix/binddata-mass-assignment
omit fe87c67c28 Merge pull request #16105 from apache/merge-back-7.0.15
omit 8e3df14775 [skip ci] Bump version to 7.0.16-SNAPSHOT
omit 8c5b1cfdd8 Merge pull request #16099 from paulk-asert/dependabotCooldown
omit 388e5af89e build: change sbom logging to info
omit ae1a390db5 build: cleanup SLF4J warnings in the build output
omit 842ce6f07b Record an application's own classes and pages for ahead-of-time images
omit 3b3537d154 Register the framework's closures for ahead-of-time images
omit 55b7dcc425 Register the request path's reflective API for ahead-of-time images
omit 15c93f2d7c build(refactor): replace deprecated Gradle test listener creation
omit 1c8d8c1da3 Point i18n build failures at the upgrade guide and document Grails 7 compatibility
omit df347f19fa Expand scaffolded views at build time
omit 69ed46edca Merge binding security updates into nullMissing work
omit 6ef6f85f16 Honour grails.i18n.cache.seconds as a deprecated upgrade aid
omit 075c648872 Add the license header to the AOT example configuration
omit 3206f60554 Read the Spring Security version without nested reflection
omit 067edabbde Cover plugin message bundles end to end for a multi-word plugin name
omit 227d74695e Register the GORM event publisher as a bean definition
omit 21e715ce3d Address data binding review feedback
omit 0f05805416 Restore automatic i18n reload and cover the Gradle integration functionally
omit 37357a8057 Document the language-selector and AvailableLocaleResolver changes in the upgrade guide
omit d4403dec66 Update the locale-selector docs for the unified include-plugin-bundles key
omit f9ec1aa2cd Fix checkstyle and codenarc violations in the new i18n sources
omit cd601c7755 Add i18n descriptor tests, docs and configuration metadata
omit a330f176fa port validate-actions GitHub action from Groovy to Grails
omit 37db67f0cb Move i18n onto Spring Boot's MessageSource
omit 22c45df65a Align JMH workflow with pull request execution
omit d8c90360f3 change cooldown for dependabot to 7 days
omit 74587e2906 Merge origin/8.0.x into feature/automated-configuration-metadata
omit 5429ab7669 Guard GSP parser benchmark fixtures
omit 8624c28d99 Harden JMH benchmark comment updates
omit 90eded54b2 Preserve JMH mode in benchmark reports
omit b8d3233184 Isolate JMH report tests from benchmark fixtures
omit 7c10347322 Expand configuration metadata transform coverage
omit 3de06ee544 Merge pull request #16083 from apache/docs/gradle-developer-skill
omit e4d26c5d6d docs: polish gradle-developer skill with cacheability and monorepo lessons
omit 0ea98a1a07 docs: register gradle-developer skill in AGENTS.md
omit 35b1f70801 docs: add Gradle 9 developer skill for monorepo builds
omit 9cd1bde916 Merge branch 'fix/binddata-mass-assignment' into fix/binddata-null-missing-stale-data
omit 23625ea24c Merge branch '8.0.x' into fix/binddata-mass-assignment
omit 948775bcb4 Merge pull request #16089 from codeconsole/fix/directory-watcher-fallback-8.0.x
omit 3941a0cec9 Revert "Fix full stack trace output when System.err changes"
omit c96bcb331a Merge branch '8.0.x' into use-spring-upload-config
omit 9c8cd61e70 Merge branch 'apache:8.0.x' into 8.0.x
omit cf2e542e50 Fix full stack trace output when System.err changes
omit 8ac14e97a5 chore: remove test dependencies as there are no tests
omit ae3c52c65f chore: remove decommissioned code and its dependencies
omit cfaa324d76 Address review: keep production external, only reuse our own server, document
omit bc537807e3 Document ahead-of-time processing and cover it with tests
omit fff5f3e91c Start an embedded MongoDB so generated apps run without one installed
omit b3811adb75 Let the container supply the SiteMesh view resolver's servlet context
omit 38e941fecd Keep abstract bean definitions out of AOT processing
omit ff515d199a Do not add a ConfigurationClassPostProcessor to an AOT context
omit d593bd2bbf Register the GSP codecs settings and servlet without live instances
omit ab2b2afb3e Warn when native macOS file watching is unavailable
omit 7cd616519b Require macOS for the native watcher test
omit 641849abb6 Assert watcher behaviour rather than the implementation selected
omit bd7ef514fc Merge branch '8.0.x' into fix/15374-codec-metaclass-registration-overhead
omit 7e08fa926a Key codec metaclass registration by Class and lock per factory
omit 4bc5bd8233 Merge pull request #16087 from apache/impr-gradle-conf-time-2
omit b37a11c061 Avoid double codec registration at startup and in mockCodec
omit 202d206a6a Address JMH PR review feedback on workflow, guards, and tooling
omit 48d528d95f Merge branch '8.0.x' into fix/directory-watcher-fallback-8.0.x
omit 40272535a4 Treat a linkage failure as the native watcher being unavailable
omit 6378d2daed Merge pull request #16019 from codeconsole/spike/grails-beans-dsl
omit c3c9b4986d Address review: correct the Application beans docs and drop a redundant comment
omit b86d50422c Merge pull request #16091 from apache/post-8.0.0-M5-release
omit 783b1ec36c Give every Grails 8 upgrade section a distinct number
omit e655aaae65 Merge branch '8.0.x' into fix/15374-codec-metaclass-registration-overhead
omit 022465ee3c Merge branch '8.0.x' into spike/grails-beans-dsl
omit afabbc5c2a Merge remote-tracking branch 'origin/8.0.x' into apache/fix/14915-beanbuilder-spring7
omit fe1827cf67 Merge pull request #16090 from apache/backport-15978
omit 3603e6919b Merge pull request #16088 from codeconsole/refactor/remove-gspcompile-configuration
omit 15d7cfaa2e Merge pull request #16075 from codeconsole/fix/gradle10-plugin-deprecations-8.0.x
omit de314a0557 Fix reproducible build artifact verification
omit 0e0f815e23 backport: reproducability fix
omit 80bf683305 Remove the vestigial gspCompile configuration
omit 5aa26db4c4 Fall back to the WatchService watcher instead of polling
omit ccee98a603 Merge branch '8.0.x' into spike/grails-beans-dsl
omit 063ca5266c Merge pull request #16068 from codeconsole/fix/gspcompile-bom-managed-servlet-api
omit 8009781474 [skip ci] Release v7.1.5
omit 8c6476c17e [skip ci] Release v7.0.15
omit b4b29e10f2 [skip ci] Release v7.2.2
omit 5784450e7e [skip ci] Release v8.0.0-M5
omit 50714be10c Keep Grails-managed domain properties bindable when opted in
omit 2b53efd370 Fix domain binding spec cleanup lifecycle
omit dc719ce099 Extract nullMissing property clearing
omit cbfd385d3b Consolidate framework-managed data binding properties
omit 1f566947cc Merge branch 'fix/binddata-mass-assignment' into fix/binddata-null-missing-stale-data
omit ea59fc5192 Merge branch '8.0.x' into fix/gspcompile-bom-managed-servlet-api
omit 73a0555772 Address jdaugherty review feedback for opt-in secure binding
omit 3d129b7140 Merge pull request #16082 from apache/fix/move-plugin-scripts-to-cli-companion
omit 7242de2e8d Declare the servlet API on grails-web-gsp and document gspCompile
omit 4cb7c85650 build: do not cache project references
omit f0425e8f59 Merge pull request #16078 from jdaugherty/fix/legacy-jansi
omit cdedbb2ff3 Merge branch '8.0.x' into fix/binddata-mass-assignment
omit 492b3c5aef Merge branch '8.0.x' into fix/move-plugin-scripts-to-cli-companion
omit 82ebbd775e fix: keep plugin templates out of the processResources filters
omit 299d7f2008 Merge branch '7.1.x' into 7.2.x
omit cebe9c687b Merge pull request #16084 from apache/fix/bnd-annotation-7.1.x
omit 87a359ff50 fix(deps): Manage bnd.annotation 7.1.0 for Log4j 2.25.5
omit 485ca0f58a Merge pull request #16069 from apache/improve-gradle-conf-time
omit 54f68ca62e Merge pull request #16077 from apache/fix/spring-dm-example
omit a24136bab2 Skip project platform dependencies when detecting declared BOMs
omit 884a7e9b59 Do not cache end to end tests since Gradle caching may skip them as already ran
omit 4fd62d9133 Merge pull request #16044 from apache/deps/cve-log4j-jansi-8.0.x
omit 03999f46d9 Merge remote-tracking branch 'origin/8.0.x' into deps/cve-log4j-jansi-8.0.x
omit 34232aad4a Merge branch '8.0.x' into fix/legacy-jansi
omit b9c162fefa Move dependency version validation into a task class
omit 5e524570dc Merge pull request #16080 from apache/deps/groovy-5.0.8-8.0.x
omit 4dc7e3030d Merge branch '7.2.x' into 8.0.x
omit 36f1ea2402 Address review feedback on the CLI test tier and classpath validator
omit 0dcca32984 build: cache the funtional test dependency substitutions
omit e184cb5a63 Remove jlineVersion property and use version from dependencies.gradle
omit f77f0cadef fix: unique Copy outputs for plugin commands (no Sync/filter)
omit 8c56112191 Merge branch '7.1.x' into 7.2.x
omit fa45c9c309 Merge branch '7.0.x' into 7.1.x
omit 0055d02ae9 Fix defects in the jansi removal and CLI classpath split
omit 2bd0199970 fix: type copyTemplates as Sync in spring-security-ui
omit 7a3049d707 fix: use unique Sync outputs for plugin command packaging
omit a35474f878 Merge pull request #16081 from apache/deps/groovy-4.0.33-7.0.x
omit 55db8cc7e2 fix: route plugin src/main/scripts into companion -cli jars
omit e510a627a1 Merge branch '8.0.x' into perf/8.0.x-jmh-pr-benchmarks
omit e04c9022ba Replace Python JMH comparison tooling with Groovy
omit 34f6a1942b docs: Point Groovy 5 doc links at the version selector
omit d9c79260b5 docs: Point Groovy 4 doc links at the version selector
omit 3f182609cf fix(deps): Bump Gradle/Forge Groovy toolchain to 4.0.33
omit 67b98cd894 fix: import log4j-bom before Spring Boot in published BOMs
omit 4b15e03e6a fix(deps): Bump Groovy to 4.0.33
omit 9eec0587fd fix(deps): Bump Groovy to 5.0.8
omit 59ec123ecd Merge branch 'fix/binddata-mass-assignment' into fix/binddata-null-missing-stale-data
omit cd4202bfa7 Merge branch '8.0.x' into fix/binddata-mass-assignment
omit a5da57bacf Split tests for cli into their own classpath, enforce cli dependencies as separate from the production classpath, and remove the need for the legacy jansi library
omit be8a83bb08 Replace fusesource jansi with org.jline's fork
omit cefc061d34 Isolate mavenBom import requirements into a separate project so the code being built is the code being tested
omit 2e2ce06e9f Merge pull request #16074 from apache/issues-16060-Upgrade-docs-mixed-up-version-numbers
omit 457f2fb86d Merge pull request #16076 from codeconsole/fix/eager-classpath-resolve-8.0.x
omit 3811fcefc7 Poll ProcessHandle.isAlive(), not Process.isAlive(), in the reaper-lag fix
omit d4945dba74 chore: add comment and clearer variable names
omit a42b48780f Address review: drop breaking trait fixtures, isolate remaining shared test entities
omit 4fdb88b163 fix: defer compile-classpath probes out of GroovyCompile task configuration
omit 308857cd77 fix: replace Gradle APIs deprecated for removal in Gradle 10
omit ebe66140cf Fix: Add urlencoding to link to Grails BOM in docs
omit 5d024d71b9 Issues #16060 Docs: Mixed-up version numbers
omit ea9d6a63ce Add opt-in Forge feature for MongoDB testing support.
omit 9f18a77067 Cover the relaxed-boolean path that motivated the cache fix
omit c3a4d9235b Close a real synchronization gap found by adversarial self-review
omit 078ac9da53 Address review: cache per-ClassNode instead of a static map, close test gaps
omit 8885e6f7a8 fix: preserve full transaction attribute state in GrailsTransactionAttribute copy constructors
omit a1594a541e fix: preserve full transaction attribute state in CustomizableRollbackTransactionAttribute copy constructors
omit 87e23d42b1 fix: preserve full transaction attribute state in GrailsTransactionAttribute copy constructors
omit 7d90d67932 Merge remote-tracking branch 'origin/spike/grails-beans-dsl' into spike/grails-beans-dsl
omit 4e51a2556a Document the component-scan behaviour change, and drop @GrailsBeans to CLASS retention
omit 33c9ee771d Key the cache plugin's startup hook on what actually registered
omit f31d57061f Stop claiming a Groovy class constant does not fold
omit a4deb3d2cd Locate two errors that were reported against nothing, or against the wrong thing
omit ed2db8a1af Close JMH metadata stream and run comparison tests in CI
omit e801ffb403 Add JMH performance regression reporting for pull requests
omit 297767a923 Merge branch '8.0.x' into spike/grails-beans-dsl
omit cc6bdf429c Source ASM's version from the build-tooling version map
omit df12ea261e Merge branch '8.0.x' into fix/gspcompile-bom-managed-servlet-api
omit 1410710809 Read @AutoConfiguration from class files instead of loading them
omit 57883c41e4 build: allow excluding the Spring DM example on an unpublished branch version
omit aba633bdf2 Remove the hardcoded servlet API dependency from gspCompile
omit 8009c21a64 Correct two stale limitations in the DSL documentation
omit cc471e4f48 build: improve project dependency substitution logic in functional test configuration
omit 9f0b4d5f7b Use the concise bean forms in the DSL example module
omit e09d4ef4e8 Wrap overlong source lines
omit 9796eb104a Prove the parameter @Qualifier through real Spring injection
omit d8f2a7b78b Let an empty bean closure body mean "construct from these parameters"
omit 1fe013a1c6 Declare the constraint evaluator's parameters in constructor order
omit a8227fdbbb fix: convert GrailsExceptionResolverSpec to LogCapture, remove last System.err capture
omit 27d86820be fix: capture STACK_LOG output via a Logback appender instead of System.err
omit 301b40c20a Merge pull request #16011 from apache/feat/8.0.x-legacy-command-compat
omit 0067d15e23 Correct the beans DSL documentation
omit af64be699c Use the Settings constants, and name the sibling correctly
omit 94e25dee20 Only claim a beans property that looks like the DSL
omit 0224df0ecd Move the beans DSL examples under grails-test-examples
omit 138d014236 Declare the beans DSL once, and give it its own group
omit 62b74b9a3f Fix the imports generator and give it a real consumer
omit bfa1f8e676 Remove unused Forge GitHub create and OAuth integration
omit 9743d3a54e Fix eight defects in the beans DSL transform
omit 5525000e0f Merge branch '8.0.x' into spike/grails-beans-dsl
omit c47fb1ebdb Merge branch '8.0.x' into fix/14915-beanbuilder-spring7
omit 66a25164f3 Merge pull request #15757 from codeconsole/remove-skeleton-logback-spring-xml
omit bdb98a6636 test: capture StackTrace filterer emissions via LogCapture
omit ed1961adfc test: capture application command diagnostics from logger
omit 08121444e3 chore: add license header to end-to-end properties
omit d5335f4a9e Merge branch '8.0.x' into fix/binddata-mass-assignment
omit b5d87ae5ea Merge branch '8.0.x' into feat/8.0.x-legacy-command-compat
omit e1b93a6927 Merge pull request #16059 from jdaugherty/test/8.0.x-legacy-command-e2e
omit 5ecdafc2b3 Merge branch '8.0.x' into use-spring-upload-config
omit 08bf7818e2 Drop the bindable constraints added to the renderer spec models
omit 4c9062e77b Resolve legacyBindableDefault from the raw configuration value
omit f55731a748 Merge pull request #16042 from apache/refactor-global-injector-trans
omit 1ed1a30a04 Move legacy command compatibility tests into an end-to-end build
omit 87d9eb40e6 Merge pull request #15666 from codeconsole/7.1.x-grailsutil-honor-filterer-config
omit 2781979e92 Merge pull request #16062 from apache/dependabot/github_actions/testlens-app/setup-testlens-1.9.3
omit 62d4aadc22 Merge branch 'fix/binddata-mass-assignment' into fix/binddata-null-missing-stale-data
omit 3307fb44e9 Merge pull request #16045 from apache/deps/align-log4j-boms-7.0.x
omit 2bf0cf01f8 Merge pull request #16055 from gsartori/groovy-developer-ternary-operator
omit fc002544f4 Merge branch 'apache:8.0.x' into 8.0.x
omit 22866b7dfb Merge pull request #16041 from apache/fix/7.0.x-dbmigration-bootwar-npe-15377
omit e0e7dd3f2a Added ternary operator formatting in the groovy-developer skill
omit c083ad1844 fix: refresh plugin metadata without new artefacts
omit ec9a530c7d fix: skip plugin XML generation after validation failure
omit b5a15be028 test: improve test isolation and clarity by resetting trait injectors in setup and cleanup
omit f924d0c9d7 docs: clarify plugin XML update failure handling
omit a72fa18d3e style: re-order methods more logically
omit 945b185a17 chore: clarify logback-classic dependency in test fixtures
omit b341dc5b75 fix: make Grails version fallback coverage deterministic
omit 7587013983 refactor: clarify plugin XML update helper names
omit fd87c31e28 fix: clarify nullable contracts
omit d1c8d0e439 test: add deterministic test logging configuration
omit 09c42aebe4 Bump testlens-app/setup-testlens from 1.9.2 to 1.9.3
omit aba16ce46a fix: LogCapture improvements
omit a55d2ad186 refactor: move LogCapture to textFixtures source set
omit fbc9c6ee81 fix: omit unavailable Grails version from plugin metadata
omit d86a6957e9 fix: defer resources when malformed plugin descriptor lacks metadata
omit bad541ba13 fix: correct error generation in ast transform
omit 7bcab161f3 fix: logic to handle plugin excludes over source units
omit f1fbe86956 Merge pull request #15971 from apache/feat/gorm-query-safety-ast-check
omit 8ef28e0a43 Merge pull request #15802 from apache/dependabot/gradle/grails-forge/7.0.x/com.gradle.develocity-4.5.0
omit c3b60c8c01 test: add more coverage
omit 48e38bb1a0 refactor: extract test log capturing to reusable class
omit 4fe23d49c0 refactor: another iteration after feedback
omit cdad075730 refactor: make pending lists an internal instance concern
omit 8fe145514c refactor: enhance plugin XML generation and improve error handling
omit c4bbf11593 build: whitespace
omit 43366f1f73 test: existing resource when testing `grails-plugin.xml` update
omit 300b01f885 test: align on using log appender in tests and some cleanup
omit ba07ad5591 Merge remote-tracking branch 'origin/use-spring-upload-config' into use-spring-upload-config
omit 1de6ba4739 Reintroduced camelCase for multipart properties to keep consistency with Grails config
omit ab0c2befcb Cleanups: Update legacy maxFileSize
omit c14c0d9707 Upgrade guide
omit 925ffc845e Implemented @matrei feedback
omit 8f9c9f8b71 Merge branch 'apache:8.0.x' into 8.0.x
omit 0ff942e6b0 Merge remote-tracking branch 'origin/use-spring-upload-config' into use-spring-upload-config
omit 43c1b91cdd Reintroduced camelCase for multipart properties to keep consistency with Grails config
omit 5e90de8495 Cleanups: Update legacy maxFileSize
omit 984e7c8abf Upgrade guide
omit 8b634512ac Implemented @matrei feedback
omit 722040412b refactor: minor
omit 7b35c0f4b0 fix: do not use `getClass()` in static method
omit eb90eb5c77 test: verify log warning on existing malformed plugin xml file
omit a70ff87f1f Register the abstract resource locator without doWithSpring
omit 637b7affc6 Move CoreGrailsPlugin's bean definitions out of doWithSpring
omit 4000654c8e Address borinquenkid review: log the wrong-type filterer fallback
omit 48b2bfb1e5 Contribute the bean-packages scan through beanRegistrar
omit 0161f9dcbe Fix component scanning outside the project directory
omit 29305023f4 Drop the dead GrailsConfigurationAware contract from GrailsPlaceholderConfigurer
omit 1544bd7d19 Contribute the auto-timestamp cache default to the environment
omit da28b4f1e9 Move the SiteMesh 3 mutator into the DSL and fix its environment post-processor
omit 1346b27b2b Move the cache plugin fully onto auto-configuration
omit 1af34ee7f0 Drop @GrailsBeans from the plugin descriptors that no longer need it
omit 5a4e2b8c21 Compile a beans property without requiring @GrailsBeans
omit 6a71fa5ef6 Merge branch '8.0.x' into spike/grails-beans-dsl
omit 80e526a087 Treat an empty beans block as a no-op
omit 285168ddf8 Show the bodyless bean form in the application-class documentation
omit f4410fd5c0 Use tap for the source registry and wrap the long url-mapping chains
omit 3cd34975cd Fix VirtualThreadPromiseFactory type-safety bug; drop GPars deprecation language
omit 3b8b35feaf Replace string assertions with Jsoup DOM parsing per review discussion
omit 350bb9891a Collapse the remaining bare-construction beans onto bodyless bean(Type)
omit cd1639f850 Use idiomatic array concatenation in the data binder bean
omit bab7b058f3 Drop redundant explicit bean names from the converted plugins
omit 6fe91a2519 Collapse the databinding source creators onto bodyless bean(Type)
omit 4dab384019 Allow bean(Type) with no factory closure
omit 623ce9748d Convert DataBindingConfiguration to a @GrailsBeans block on DataBindingGrailsPlugin
omit 9e73262146 Address review feedback on plugin dependency diagnostics
omit 700cf9c329 Convert GrailsDomainClassAutoConfiguration to a @GrailsBeans block on DomainClassGrailsPlugin
omit 311fb9a959 Convert GrailsCacheAutoConfiguration to a @GrailsBeans block on CacheGrailsPlugin
omit 3c5b1b9045 Merge pull request #16053 from codeconsole/locale-autonym-titlecase
omit 8ec2dad08d Merge branch '8.0.x' into refactor-global-injector-trans
omit 17d78a74e4 Merge pull request #16056 from apache/try-fix-dependencies
omit 87ce649d52 build: try to fix dependency resolution after merge-up
omit 4267e77b2f test: reset static collections in cleanup()
omit b32e9d1907 Merge branch '8.0.x' into refactor-global-injector-trans
omit 7860ec1d19 test: add more coverage for `GlobalGrailsClassInjectorTransformation`
omit 31875ec0a1 another iteration after review feedback
omit 63048d463e Merge branch '7.2.x' into 8.0.x
omit 95c0db6d4a Merge branch '7.1.x' into 7.2.x
omit 6e463ae14b Merge branch '7.0.x' into 7.1.x
omit b8df2131e9 Remove push trigger due to api limits
omit d47aedc00a Merge branch 'apache:8.0.x' into 8.0.x
omit a360262fa7 Reintroduced camelCase for multipart properties to keep consistency with Grails config
omit 100b9dbf77 Apply the configured Spring placeholder prefix
omit 6986f0cc12 Convert CoreAutoConfiguration to a @GrailsBeans block on CoreGrailsPlugin
omit 2d617df10c Fix the actual reaper-thread flake in RunningApplicationProcessSpec
omit 70f875107e Close a real branch-coverage gap for HibernateCustomProperty
omit c7f4f4e5c8 Replace indirect GrailsPropertyBinder guard with self-encapsulation
omit 607ae4e64c Strengthen EnumHasManyDdlSpec assertions and coverage
omit 5e05828651 Fix hasMany-of-enum cascade regression and self-encapsulate to-many cascade rules
omit cbfe2fc8e9 Address review: Class-valued filterer config, ClassLoader, defensiveness
omit 4db83b3436 test: remove redundant javadoc
omit 5c71d9e88c Merge branch '8.0.x' into spike/grails-beans-dsl
omit 1c34ff0791 Address review feedback on databinding whitelist characterization spec
omit 7e0316c71c localeSelect: keep the current query string when switching language
omit b2b92f34cd localeSelect: add type="dropdown" and a menu-cased name, and titlecase autonyms
omit 98a1acf30b Fix DDL failure for hasMany collections of enums
omit 528a41b9ba Bump github/codeql-action init and analyze together to v4.37.3
omit 5e9ce015d9 Add tests closing codecov gaps in GlobalGrailsClassInjectorTransformation
omit 743730dc3b Merge pull request #16049 from apache/merge-back-8.0.0-M4
omit b11fa75cb2 [skip ci] Bump version to 8.0.0-SNAPSHOT
omit 7d17c3ac4e Polish the converted bean bodies with Groovy idioms
omit 203a8ae9d9 Use tap for the mail sender's conditional configuration
omit 483d9a543c Simplify the mail sender's nested host/encoding defaults
omit 8ce848237d Cover the enabled JNDI path and qualified session injection in MailAutoConfigurationSpec
omit 6e4a52013d Convert MailAutoConfiguration to a @GrailsBeans block on MailGrailsPlugin
omit 53dcb874db Convert Sitemesh3AutoConfiguration to a @GrailsBeans block on Sitemesh3GrailsPlugin
omit 5450dffcfe Add bean(...).staticMethod(): a static @Bean factory method
omit 03209d1209 Cover the migrated grailsLinkGenerator behavior in UrlMappingsAutoConfigurationSpec
omit 776985dd80 Reject a blank config key in .value(...)
omit 5e9e162e99 Convert UrlMappingsAutoConfiguration to a @GrailsBeans block on UrlMappingsGrailsPlugin
omit 32ead2bbc4 Auto-wrap a bare config key given to single-argument .value(...)
omit 855a28347d Document @GrailsBeans for applications, including the Application class
omit 48d352fadf Allow one bean name across several bean(...) statements when each carries a discriminating condition
omit 19a502c420 Flip the DSL argument order to name-first: bean('name', Type), field('name', Type), method('name', Type)
omit d12545ae42 Generate metadata for Groovy configuration DSLs
omit b792a3fd1c Support immutable configuration metadata
omit 41433386f1 Document automated configuration metadata
omit 5983be36b0 Include generated metadata in configuration reference
omit ccc41535b2 Generate URL mappings configuration metadata
omit 97821d6e71 Generate Markup Views configuration metadata
omit d26dc7c206 Generate JSON Views configuration metadata
omit 39d95bbfe1 Generate data binding configuration metadata
omit fe8725ac5c Generate cache configuration metadata
omit 75ed39351b Harden legacy command compatibility diagnostics
omit fa90c2ca54 Add configuration metadata Gradle plugin
omit ce1438021a Add configuration metadata compiler
omit 2f9e4e5349 Cleanups: Update legacy maxFileSize
omit b255caadbc Upgrade guide
omit cb3a5753c7 Detect inline .toString()/cast flattening at the GORM query call site
omit 811faed161 Align Log4j across published BOMs
omit 0702d7bb88 Merge branch '8.0.x' into 7.1.x-grailsutil-honor-filterer-config
omit 98b046b946 Merge branch '8.0.x' into spike/grails-beans-dsl
omit 116b0efab3 Default legacyCommandSupport to false (opt-in Grails 7 bridge)
omit b821683c51 Fold .value(...) placeholders at transform time; compile I18nGrailsPlugin with @CompileStatic
omit 2306135aa2 Reject types given both positionally and via value: on conditionalOnMissingBean; fix stale method(...) chaining docs
omit 6148123389 Add .conditionalOnMissingBeanName(...): name-based self-back-off stated once
omit b936793fde Apply the new DSL conveniences to the real i18n conversion
omit 07e89bbde0 Groovy-fy the beans DSL: suffix-derived sibling names, richer conditionalOnMissingBean, field .value(...)
omit ac08770cff Merge pull request #16043 from apache/deps/cve-log4j-jansi-7.0.x
omit e0f8d13f16 Consolidate comments that restated each other or nearby documentation
omit 2ff9ebcda5 Reserve the accessor names Groovy will synthesize for properties
omit 23c2c586af Update Log4j to 2.25.5 and document unfixed Jansi CVE
omit 21f69f9210 Traverse the full interface graph when reserving existing member names
omit c41c33b2b1 Reserve existing host and hierarchy member names before choosing generated names
omit 31feae1ed2 Make bean/member name-collision handling independent of declaration order
omit a019de05f3 Remove .methodName(...) from the DSL: generated method names are an implementation detail
omit b9063a78ed Rename .methodNamed to .methodName; auto-move @ComponentScan/@PropertySources; add moveAnnotations escape hatch
omit dde9f33b67 Keep localeChangeInterceptor's explicit bean name; verify beforeName ordering and availableLocaleResolver's derived name
omit faf14de109 Reject blank/reserved-keyword names, add ImportResource to the sibling-move list, and rename .named(...) to .methodNamed(...)
omit 07242bf9bf Merge remote-tracking branch 'upstream/8.0.x' into remove-skeleton-logback-spring-xml
omit bdb6b63a2b Drop the redundant explicit bean names that just repeated the convention-derived one
omit 3a07ad21f3 Implemented @matrei feedback
omit 98089e5552 Make .named(...) optional: fall back to a synthesized <type>$N method name instead of a compile error
omit 471008b6d2 Add bean(...).named(...) so a bean name that isn't a valid Java identifier can still be expressed
omit 48d4af2cb9 Complete the I18nAutoConfiguration identity restoration (previous commit only carried the file rename)
omit 32b0e06e5c Use autoConfigurationName to preserve I18nAutoConfiguration's identity through the @GrailsBeans conversion
omit 1d8edac99e Fix CodeNarc style in legacy command compatibility layer
omit 6806043b23 Fix the bean-name-limitation workaround: it doesn't apply to the Plugin-subclass form
omit b36edf3fa8 Document the full sibling-annotation move, composed annotations, autoConfigurationName, and the bean-name-is-a-Java-identifier limitation
omit 959fa3df34 Reject autoConfigurationName on a standalone class, where it silently had no effect
omit ec5f8e52ac Address a second review: recurse through composed condition/import annotations, add @GrailsBeans(autoConfigurationName = ...)
omit 12fa9dfd06 Document field()/method()/.primary()/.lazy()/.scope()/.annotate() and sibling-annotation-move on @GrailsBeans
omit c038c985c3 Address review: propagate Conditional*/Import* annotations to the generated sibling, fix acronym decapitalization, reject duplicate bean/field/method names
omit 3587ed6478 Prove Grails 7 Groovy 4 precompiled application-command compatibility
omit cd6cbb81bb Stop inventing named Gradle tasks for legacy application commands
omit 8c35ae1e56 Split a merged comment back into its two original topics
omit 5db496701c refactor: clean up GlobalGrailsClassInjectorTransformation
omit dc07794825 Remove unnecessary method() indirection from the i18n conversion
omit c798c93778 Add default-on legacyCommandSupport flag beside cliAutoProvision
omit 4a7af94651 Add positive-path coverage and tidy manifest test data (#15377)
omit d700945343 Fix bootWar NPE from stray CLI WebApplicationInitializer (#15377)
omit d64cef31ad Merge origin/8.0.x into feat/8.0.x-legacy-command-compat
omit ce6c4e5f7f Merge branch 'apache:8.0.x' into 8.0.x
omit 4242d6b39c Bump codecov/codecov-action from 6.0.0 to 7.0.0
omit f1bdc751b3 test: add bindable constraints for model properties in HalJsonRenderer and JsonRenderer specs
omit e4f92b1eab Use the real Settings constants for @Value keys in the i18n conversion
omit 6385b338be Convert the real grails-i18n autoconfiguration to @GrailsBeans
omit c6ce3fe8bd Merge pull request #16004 from apache/test/plugin-registry-contract
omit 0b53a85ae4 Use find/count for null-safe plugin lookup in registry contract spec
omit 1817a7d7b4 Merge pull request #15991 from apache/build/empty-catch-codenarc
omit 8a4a6eba39 Fix flaky grails-views-gson tests caused by shared static test state
omit 4e7cd8762f Address review feedback on EmptyCatchBlock PR
omit 33efc93093 Merge remote-tracking branch 'origin/8.0.x' into build/empty-catch-codenarc
omit 2d08123daf Merge pull request #15999 from apache/docs/continuous-testing
omit f3da7a2312 Merge pull request #15997 from apache/docs/structured-logging
omit e7bad9c74a Merge pull request #15996 from apache/docs/http-exchange-clients
omit 620f651fed Fix flaky WhereQueryClosureCaptureSpec: key AstPropertyResolveUtils cache by ClassNode identity
omit e71d9fad23 Fix flaky RunningApplicationProcessSpec stop timeout
omit 4dea95c048 Add field(...) and method(...) to the beans DSL
omit 4cf0a7ab11 Add a generic annotate(...) qualifier to the beans DSL
omit b711dd5bcc test: address review feedback on numeric precision fix
omit cb35496301 [skip ci] Release v8.0.0-M4
omit 6d1acaddb6 Fix help resolution & speed up dependency resolution
omit d5c7d2d017 Correct inaccurate claim about per-bean Spring conditionals in docs
omit 4d3107d841 Merge pull request #16013 from apache/update-codestyle-libs
omit 8d92089b38 test(grails-data-hibernate7): re-enable Oracle in the RLikeHibernate7Spec dialect matrix
omit 43c6d17dcf fix(grails-data-hibernate7): stop conflating decimal and bit precision for numeric columns
omit ff2241926c Add primary(), lazy(), and scope(...) qualifiers to the beans DSL
omit bfd17896e9 Fix task resolution in grails wrapper cli
omit 360bc4306e Document @GrailsBeans DSL limitations
omit 48ed0fa86c Statically compile generated GrailsBeans plugin siblings
omit d1ca11fc66 Merge fixes & cleanups
omit bfdbbe88fa PR for: https://github.com/apache/grails-core/issues/15644
omit fa30af085b Fix sbom exemptions for cli split
omit 0e16a24661 Merge pull request #16022 from apache/cleanup-build-log
omit a162ebb524 build: change logger level from lifecycle to info for sourcesJar task creation
omit dfebb9a261 Add sbom verification to verify
omit a98e197add Add tests
omit 6b60b72e13 Rewrite the sbom plugin to handle both the cli + main artifacts lazily
omit abdd44767d fix grails-core-cli artifact checksums
omit 79b2f3f158 Address review findings: publishing, static compilation, arg validation, silent failures
omit c2db0eddb0 Trigger GitHub mergeability recompute (no content change)
omit 0ed1645459 Verify and document @GrailsBeans compatibility with @CompileStatic
omit e361649056 Allow @GrailsBeans directly on a *GrailsPlugin.groovy Plugin subclass
omit 6e0a8bafe0 Adopt @RestoreSystemProperties in GlobalGormQuerySafetyASTTransformationSpec
omit d3e1ea8485 Add protectSqlInjectionAttacks opt-out for the global query safety check
omit a8a12d5d5a Add @GrailsBeans: compile a bean-wiring DSL into real @AutoConfiguration classes
omit c6610c1567 Move stack filterer init to bootstrap phase, address jdaugherty review
omit a23e03d961 Address review feedback from matrei
omit 5577618630 GrailsUtil: bootstrap-hook init via GrailsExceptionResolver
omit 55a45f5871 fix checkstyle ImportOrder: separate spring.beans import group
omit 52b27dfdc3 GrailsUtil: honor stackTraceFiltererClass and logFullStackTraceOnFilter
omit 5cea1fbc95 style: codenarc issues after update
omit e53459c0b5 build: update checkstyle and codenarc versions
omit 7b53bcc56b Harden legacy command provider: single name resolution and loud linkage failures
omit d1fe4956a6 Isolate Grails 7 command compat into execution-only grails-core-cli-legacy
omit 5069bef718 Use @Slf4j annotation for ApplicationContextCommandRegistry logger
omit be98c6228a Deduplicate legacy command classes across classloaders and fix docs
omit 71f73fc7a7 Address review feedback and expand backwards-compatibility test coverage
omit 7831d7dfa2 Merge remote-tracking branch 'origin/8.0.x' into feat/8.0.x-legacy-command-compat
omit 9a8a9a11dd Restore backwards compatibility for Grails 7 command plugins on Grails 8
omit 8f2f6cf1e6 Merge pull request #15639 from apache/dependabot/gradle/grails-forge/7.0.x/org.testcontainers-postgresql-1.21.4
omit 3f378fae04 Merge remote-tracking branch 'upstream/8.0.x' into remove-skeleton-logback-spring-xml
omit 7eb9a5e98d Merge pull request #15988 from apache/ci/document-publishing-limit
omit ee4d85d65f Bump org.testcontainers:postgresql in /grails-forge
omit cceff551fb Extend query safety check with branch-sensitivity fix and two new warnings
omit 44d5cfafe0 Characterize plugin registry load order and lookup contract
omit 23f7c46a4e Characterize data-binding allowlist through public binding API
omit 990a79d48f Merge fix/binddata-mass-assignment into fix/binddata-null-missing-stale-data
omit 419695afb7 Restore permissive binding default and honor bindable false in all modes
omit e2ee9746ee Potential fix for pull request finding
omit 0430ed2d37 Potential fix for pull request finding
omit 0cd61e1cdd Potential fix for pull request finding
omit a082291aa9 Rename intentional empty-catch parameters in grails-gradle-model
omit c10e485773 Document continuous test mode
omit 136f16d7d1 Document Spring Boot structured logging
omit 15938592c7 Document Spring HTTP interface clients
omit 9e30fb08e5 Improve unresolved plugin dependency diagnostics
omit a1b7309d20 Merge origin/8.0.x into fix/14915-beanbuilder-spring7
omit 73839891f2 Merge origin/8.0.x into fix/binddata-null-missing-stale-data
omit 8e042314f3 Merge origin/8.0.x into fix/binddata-mass-assignment
omit 75f02aaff8 Enable CodeNarc empty catch checks
omit 018220fb3e Merge deny-by-default binding into nullMissing branch
omit 56a9b27e90 Bind typed arrays through the allowlist and resolve domain elements
omit a000d32858 Make data binding deny-by-default to prevent mass assignment
omit 876db2e1a5 Prevent multiple publishing from running at the same time
omit 1ffe64ea47 Merge remote-tracking branch 'origin/8.0.x' into fix/synchronizer-token-hardening
omit a3b910951c Merge remote-tracking branch 'origin/8.0.x' into fix/14915-beanbuilder-spring7
omit 6ea7998aa1 Resolve inherited bindData allowlist for proxy subclasses
omit c63d39a8c5 Merge remote-tracking branch 'origin/8.0.x' into fix/binddata-mass-assignment
omit e72c56bccf Merge pull request #15982 from apache/merge-back-7.2.1
omit f9e4572136 [skip ci] Bump version to 7.2.2-SNAPSHOT
omit 0496370184 Merge pull request #15981 from apache/merge-back-7.1.4
omit ca1def5974 [skip ci] Bump version to 7.1.5-SNAPSHOT
omit dba8810e50 Merge pull request #15980 from apache/merge-back-7.0.14
omit c63d23e428 [skip ci] Bump version to 7.0.15-SNAPSHOT
omit a62acb7a9d Docs: expand config-driven logging coverage in the logging reference
omit 537614e383 Stop generating logback-spring.xml by default; add opt-in Logback Configuration feature
omit 8395a4775d Merge branch '8.0.x' into remove-skeleton-logback-spring-xml
omit 46c4ba2486 Track GString origin through variable aliasing, not just literal coercion
omit 4aa9a0b51d Add compile-time check for GORM query strings flattened from GString
omit 2b1902fbc2 Docs: fix logback-spring.xml example and scope zero-config vs generated-file behavior
omit d2422cdab8 Simplify generated logback-spring.xml: compose Spring Boot defaults, INFO root level
omit 298cd594ad Keep generating logback-spring.xml by default; make zero-config the opt-in Forge feature
omit 45968fd538 Merge branch '8.0.x' into remove-skeleton-logback-spring-xml
omit 19fc2a11d7 Remove jodd-wot from fields tests
omit 5722a426e5 Add VirtualThreadPromiseFactory seed
omit 6c85e2be2b Make mass-assignment deny-by-default opt-in for 8.0
omit 7388284e4f [skip ci] Release v7.2.1
omit bc80c60f7f [skip ci] Release v7.1.4
omit c9c3be92a8 [skip ci] Release v7.0.14
omit 0f1cf52699 Merge 8.0.x into fix/14915-beanbuilder-spring7
omit 6309f18a1f Add opt-in nullMissing support to bindData for stale-data clearing
omit ac31469817 Address codec metaclass registration review feedback
omit c421fbabcc Merge remote-tracking branch 'origin/8.0.x' into fix/15374-codec-metaclass-registration-overhead
omit 413a4f345b Merge remote-tracking branch 'origin/8.0.x' into fix/15374-codec-metaclass-registration-overhead
omit 5b3d004648 Merge remote-tracking branch 'origin/8.0.x' into fix/14915-beanbuilder-spring7
omit 833d3e4d8e Avoid XML reader init for missing namespaces
omit e2926e0316 Harden bindData against mass assignment
omit e8f9cf8b49 Bump com.gradle.develocity from 4.2.2 to 4.5.0 in /grails-forge
omit 994311865b Keep BeanBuilder DSL independent of XML setup
omit a81a84baaf Track codec registrations by weak factory keys
omit 4805301d26 Run codec benchmark as opt-in Spock spec
omit 5130d3c4ac Document synchronizer token consumption and bounds
omit 880e6b36ab Trim oversized synchronizer token state
omit f252b430cb Harden synchronizer token consumption
omit 5311c4cd97 Add codec metaclass registration benchmark
omit 6e914ccac0 Avoid duplicate cached codec metaclass registration
omit 3f3732e681 docs: document zero-XML per-environment logging via the environments block
omit 2fac042396 Merge remote-tracking branch 'apache/8.0.x' into remove-skeleton-logback-spring-xml
omit ed420b14a8 docs: document logback-spring.xml generation change and Logback Configuration feature
omit 0eea153db8 feat: add opt-in Logback Configuration feature to Grails Forge
omit 81e26bed44 Stop generating logback-spring.xml in Grails Forge
omit 94067b6c1f Remove logback-spring.xml from the app skeleton
omit 4ac99ab547 Bump release-drafter/release-drafter
omit 8b138afcad Merge pull request #173 from apache/ci/setup-gradle-v6-basic-cache
omit 0b5c992a42 ci: tolerate release-drafter create-release failure on pull_request runs
omit b6698fa203 ci: audit and update GitHub Actions to ASF-approved versions
omit b6f4f7b38a Merge pull request #171 from apache/pin-workflow-actions-to-approved-hashes
omit 69e88a20cf Pin GitHub Actions to Apache-approved commit hashes
omit dc99a06dfe Merge pull request #170 from apache/merge-back-4.0.1
omit 1337c608d1 [skip ci] Bump version to 4.0.2-SNAPSHOT
omit ad8513895a [skip ci] Release v4.0.1
omit 0a0fd9166b Merge pull request #169 from apache/grails7-refresh
omit bbbac7fcb7 Update project jdk to 17.0.17, update to Grails 7.0.7, & Gradle 8.14.4
omit 292fd32200 Merge pull request #168 from apache/develocity-apache-org
omit 21c9d07e3f Update develocity server URL to Apache
omit 00c388b0f6 [skip ci] more post 4.0.0 release adjustments
omit cbe1bb0e63 [skip ci] more post 4.0.0 release adjustments
omit dbc6f6d00f [skip ci] post 4.0.0 release adjustments
omit 5eb4ad6699 Merge pull request #165 from apache/merge-back-4.0.0
omit bd5de93765 [skip ci] Bump version to 4.0.1-SNAPSHOT
omit 7e7a8f5ad8 [skip ci] Release v4.0.0
omit 6397c21888 [skip ci] fix release.yaml
omit ab6c5e5c88 ci: fix release.yaml
omit c793de4a40 [skip ci] fix realease.yaml
omit e78e949199 fix: release prep
omit b175c097c9 [skip ci] update release workflow
omit b594a92524 [skip ci] Add new users to .asf.yaml configuration
omit 237ab98c1f Merge pull request #162 from apache/adjust-published-dependencies
omit 52126c455e Refactor quartz dependencies to use Grails BOM platform
omit 661dcad7e7 Merge pull request #163 from apache/chore/issue_161
omit 1b2d871cad Missed checking for now non-existent DISCLAIMER
omit ddbe0d72d9 chore: Removed traces of incubation, DISCLAIMER and PPMC
omit 6b0431c3ec Refactor dependencies in build.gradle
omit 8ad85f882f Update Gradle version to 8.14.3 in .sdkmanrc
omit 07a9dd7239 Update Gradle wrapper to 8.14.3
omit ac6fabccd6 Change dependencies to compileOnly so they are not in POM or Gradle Module
omit 8925d290ff Merge pull request #160 from jeffscottbrown/patch-1
omit 4647fe80ef Update simple.adoc
omit a46768cdd0 chore: fix release notes & remove full change log
omit 1e343b2be0 chore: ensure the grails name is present
omit 0de784ff2c chore: update announce.txt to have correct documentation link
omit 8b6cfc96ff chore: grant access to actions in case there are pending changes
omit 7879490e3b chore: correct name
omit de0db4a316 Merge pull request #159 from apache/merge-back-4.0.0-RC2
omit 0cd68b502a chore: add post release scripts
omit 3c8f93ae7b [skip ci] Bump version to 4.0.0-SNAPSHOT
omit fc31b561a7 Update groovy_pmc.txt
omit 2d125842fe chore: adjust verification script to not error when no differences remain
omit b047aa2d4e [skip ci] Release v4.0.0-RC2
omit 2eeea07f6c ci: add release abort workflow & update verification script to check svn artifacts
omit 88f8828acd ci: add commit hash to publish job
omit 3c1a11a1ed ci: do not require approval to run the source step
omit bfc93dfbbc chore: update rat config
omit d759570e3f chore: update release drafter for disclaimer
omit a52989b173 feature: update to Grails 7.0.0-RC2
omit 0b479ee7f2 ci: add upload to release workflow
omit c1e70915a7 chore: update for grails publish move
omit 3dbea9f2c4 Merge pull request #157 from apache/merge-back-4.0.0-M3
omit eade905780 [skip ci] Bump version to 4.0.0-SNAPSHOT
omit 3c60afe79c fix: `gradle-bootstrap` error (#156)
omit 46dcbca492 [skip ci] Release v4.0.0-M3
omit 7014e91da8 [skip ci] fix: add workaround in `verify.sh` (#155)
omit d5bcb8cef1 [skip ci] ci: add matrei as GitHub env reviewer (#154)
omit f99396cef9 [skip ci] chore: make Groovy script executable (#153)
omit da57bcc1e1 [skip ci] fix: key file location
omit c8a58193ac [skip ci] chore: Make scripts executable
omit 544d55017a [skip ci] ci: add missing tasks since quartz is not structured like other plugins
omit d7d7447409 ci: update release workflow to match upstream grails-core release process
omit f1d0765dbe Merge pull request #152 from apache/grails7m5
omit a0c537a93a feature: update to Grails 7.0.0-M5
omit 7813b4c9b4 Merge pull request #150 from dauer/issue-105-fix-broken-link
omit da26b26cbe Issue-105 Fix broken link in README.md
omit e0840cb163 Merge pull request #148 from matrei/apache-release-prep
omit d3143c68e8 ci(feedback): add rat workflow
omit f88238541a fix(deps): bump Grails to `7.0.0-M4`
omit 3769b82c5a fix(deps): force Groovy to `4.0.27`
omit 9b568c5dde docs: add `Building from Source` section to `README`
omit df339d4c54 build: add a `skipTests` condition
omit 50657fa766 chore: add `CODE_OF_CONDUCT.md` and `DISCLAIMER`
omit b662e3d72e ci: add `.asf.yaml`
omit 311e0c3455 build(feedback): add `gradle-bootstrap`
omit 779f54566c chore: update `.sdkmanrc`
omit 36a47ec946 build(feedback): remove unnecessary rat exclude
omit bca0920d9c build(feedback): add repository filters
omit 33cc1203e9 ci: update GitHub action workflows
omit 1cafc18e22 build: generate redirect file to guide
omit 399f8c5e95 chore: update Gradle wrapper to `8.14.2`
omit 7dc1c8d480 chore: add verification scripts
omit 159a1da410 chore: cleanup `docs-config.gradle`
omit e0bf5f7fdd build: add configuration for reproducible builds
omit d0d7bba73e chore: add Apache Release Audit Tool (rat)
omit a07316f3f2 chore: add license headers
omit c9b58e4e32 chore: clean up `test-config.gradle`
omit af354d34dc docs: convert docs from `gdoc` to `asciidoc`
omit ae09caf1ad build: update `buildSrc` dependencies
omit 31b99949b3 build: update `buildSrc` repositories
omit 2e68e7b74a chore: add `HEADER` and `NOTICE` files
omit a93bc25be0 build: update build scan and cache settings
omit daa98e49e7 build: update develocity auth (#147)
omit 6f625fe78c build: switch develocity instance (#145)
omit bf6e0798ca Merge pull request #143 from matrei/apache-coords-change
omit 9420361077 ci: set correct env var `GRAILS_PUBLISH_RELEASE`
omit a522b4ac50 build: Apache artifact rename
omit 3ae3924795 ci: remove renovate monorepos
omit 90fb3f23fb ci: update Develocity settings
omit 0ad2521e08 fix: rename project to `grails-quartz`
omit 9b96ee21e4 fix: update `.sdkmanrc` Java to `17.0.14-librca`
omit 9c0e9d2582 fix: update Gradle Wrapper to 8.13
omit 8c6a21432a fix: remove star import
omit 18ef983f97 fix: switch to Slf4j logging
omit 9f4bbaabf7 fix: remove redundant files
omit 978971c533 Merge pull request #142 from grails/switchGhPagesDeploy
omit a7894363ef Switch to grails/grails-github-actions/deploy-github-pages@main
omit 9e5ab9f46e chore: Bump version to 4.0.0-SNAPSHOT
omit 0a2f80455a [skip ci] Release v4.0.0-M2
omit 2b38341a07 #139: loadQuartzProperties getProperty replaced with get (#140)
omit ae0ed77f43 chore: Bump version to 4.0.0-SNAPSHOT
omit 3734f6848d [skip ci] Release v4.0.0-M1
omit 487b9ebde3 [skip ci] pre-release 4.0.0-M1
omit c703cb81cf Switch to grails/github-actions
omit 61d420bc96 Switch to grails/github-actions
omit 9901ceb36b Switch to grails/github-actions
omit 43914cd712 Fix NEXUS_PUBLISH_URL
omit e2044ba090 Upgrade to Grails 7.0.0-snapshot (#136)
omit df2c39abbb Merge pull request #138 from grails/3.0.x
omit e3e1157b88 Merge pull request #137 from grails/2.0.x
omit 3ef2b9827e Merge pull request #134 from jpdev01/2.0.x
omit d94f638b87 Merge pull request #1 from jpdev01/purgetable-datasource
omit 2980080287 Update purgeTablesBean to dynamically resolve dataSource
omit 61be103210 Merge pull request #133 from arjangch/4.0.x
omit 65798962db upgrade to java 17
omit 926b58262f Merge pull request #132 from arjangch/4.0.x
omit f3a79219fb upgrading spockframework to 2.4 for groovy 4
omit 416eec0f9c upgrade to Java 17
omit 8c7a021d8c Update to 4.0.0-SNAPSHOT for Grails 7
omit f34bc3904d chore: Bump version to 3.0.1-SNAPSHOT
omit c8cd95bcf3 [skip ci] Release v3.0.0
omit 5d46f8b8ce chore(deps): Remove unused test deps (#127)
omit 9c840c64a5 chore(readme): Use correct notation for note (#128)
omit 1f784567e3 Refactoring of tests to be compatible with the spock framework (#126)
omit 730bb5c4b0 Merge pull request #125 from matrei/matrei/grails-6
omit f1d1b1c9b5 fix(ci): Set correct sonatype publish properties
omit 07c2d2e8d5 fix(build): Add Gradle settings
omit bbe2b3b7e7 fix(config): Remove autoStartup from plugin.yml
omit 846c72cbbf chore(): Update links
omit f858ba4c68 fix(readme): Update readme
omit 348397b868 chore(): Remove travis files
omit d770c20527 fix(build)!: Upgrade to Grails 6
omit 31b31321c7 Update .travis.yml to openjdk8
omit 3b297a94e6 Only shutdown the quartz scheduler if the plugin is enabled
omit a726a84fea Fix change default value waitForJobsToCompleteOnShutdown
omit 568acb9ed5 Revert "Bugfix"
omit 7e6849f019 Bugfix
omit e0026f74ce Critical CVE for c3p0 and Seems Exclude pattern incorrect
omit 68b8079830 Bumped to 2.0.14.BUILD-SNAPSHOT
omit cb0853d905 Bumping plugin verion for release, 2.0.13.BUILD-SNAPSHOT -> 2.0.13
omit a548d94239 Updating credentials
omit 38b96eed25 Merge pull request #94 from mamunsardar/patch-1
omit 5eb190ef6a Update README
omit 8aaa1c068f Merge pull request #93 from mamunsardar/master
omit 6d8ce4e867 use static property to handle update for grails 3.3.0
omit db22a8db45 snapshot bump
omit ae17ab59e9 adding onCHange events to monitor for job class changes and trigger changes in development mode, added jobEnabled toggle as well to JobClass, now removes jobs and triggers for job classes that no longer exist as well
omit 2e8ec9769b version bump for dev
omit 39cdc2e3aa shutdown flag tweak in the event auto shutdown is not configured in config file
omit 8d99ff5d6d build snapshot
omit 5d0890034c switching jdk test version
omit 8b9d439a00 bumping openjdk test version
omit cc116220cd bumping memory limit some more
omit 06f28410f0 more cleanup on bumping gradle and grails version dependencies to recent versions
omit 74654bf10d bumping memory utilization limits
omit 3c15d00240 version bump back to snapshot
omit c6127dd449 bumping version for release
omit 272a2103db gradle wrapper bumped to 3.3
omit 18fbdcb4f0 Merge branch 'master' of github.com:grails-plugins/grails-quartz
omit b907c2c4f7 updating build to test against grails 3.2.4 , should probably go farther to 3.2.8 but something is up with bintray
omit a69551a878 [CreateJob script] Ensured that if 'Job' already exists in the end of JobName, then remove it from jobName. (#45)
omit bee335dfba Resolves issue #71 , probably #75 and #34. Quartz was starting up too… (#86)
omit 8acf276a91 Merge pull request #72 from kefirfromperm/master
omit d52b3be546 hibernate3 and hibernate5 support
omit 984c99c58b email fix
omit bb47f1e443 2.0.10.BUILD-SNAPSHOT
omit 4b4b0fbe68 #67 problem with RamStore and jdbc sessions with re-cycled worker threads
omit 9a6fad6fcd Merge pull request #69 from AlexKovynev/patch-3
omit e734777ef3 Reverse wrong connection to jdbcStore
omit 6d83c7d2c2 Start 2.0.9.BUILD-SNAPSHOT
omit 6bf3595e2f #63 build deploy issues
omit d77f6b310f #63 change default value for jdbcStore so RAMStore is used
omit cc628f0ba5 #63 publish new version with default value change
omit 2c0ff83029 Merge pull request #63 from Schlogen/patch-1
omit 605d68dfd4 Create plugin.yml
omit 2fb768e42e Start 2.0.8.BUILD-SNAPSHOT
omit 0e2a909936 Load plugin after hibernate and services
omit 2352c1afd2 Merge pull request #61 from anwbhv/master
omit 7bcede8d09 Correcting initialization of Jobs when autoStart == false. Fix for #59
omit afa28ad713 fix snapshot ver for build snapshots
omit 518eea4f8e #42 debugging broken publish feature
omit 8eba9f9b06 #42 debugging broken publish feature
omit f7589923a4 #50 fix jdbcStore issue in RamStore, fix NavigatableMap issues in Grails 3
omit 3ee8c5b6d4 fix navigatablemap issues for grails3 users
omit e443fc6444 Merge pull request #52 from AlexKovynev/patch-2
omit 8561209394 Merge pull request #51 from AlexKovynev/patch-1
omit 9ad495f656 Use @Slf4j
omit 8f6f39c568 Use @Slf4j
omit cbcb757e80 change authorEmail
omit f75756359f 2.0.6.BUILD-SNAPSHOT
omit 0ba9627c17 Update quartz to 2.2.2
omit e7177b00e9 Fix for work with RamStore
omit c9e6fe1505 #46 missing config values cause failure defaulting plugin to disabled, extra check on SessionBinderListener that jdbcStore is turned on.
omit 9dac39eff6 #44 allow table flush on startup when in jdbc mode
omit 55190d2964 Merge remote-tracking branch 'origin/master'
omit 75b5c7e7ed #42 publish the new release
omit 415fd7fb51 fix version number
omit 86058d4cd5 #42 debugging broken publish feature
omit cdceaad15d #42 debugging broken publish feature
omit 95ac9c20de #42 fix broken build and release 2.0.3
omit 260b27ea89 #42
omit 992df37c47 #37 fix for pluginEnabled not reading config value properly
omit 0840bc693b #40, #32, #37 also add disable plugin config ability too
omit b589e92c75 version 2.0.2
omit e17ccdc6b1 remove asset dependency
omit cf763e9cfc Start 2.0.2.BUILD-SNAPSHOT
omit 427120a2e1 Update README
omit be29851c3d Release version 2.0.1
omit 46c5c42778 Add urls for Bintray
omit d3d8edca2e Update to Grails 3.0.9
omit e3a33a4384 Merge pull request #38 from sbglasius/master
omit 8126451d87 Add GrailsApplicationAware for easy access to grailsApplication in QuartzJob
omit 61028649b5 Updated .gitignore to ignore IDEA files
omit fc21884f45 added settings.gradle to change the project name to "quartz" instead of inferring it from the directory name
omit 3f54345af4 update io.spring.dependency-management
omit 06879d2e3b update email address
omit 89fb286632 2.0.1.BUILD-SNAPSHOT
omit cdcb0385b3 update travis environment variables
omit e22e23fedd remove unused import
omit c37993e41e Merge pull request #35 from sbglasius/master
omit 40e3b3d777 Removed WebAttributes from QuartzJob trait as it is not used, and not needed.
omit 684e6a0aaa Updated readme about branches
omit dc716d834b Merge pull request #22 from magx2/master
omit d53e99f5f9 Quick start
omit 81ac796a74 Merge pull request #18 from xardas008/master
omit c8c3115f7f println removed
omit ebcb444205 quartz.autoStartup configuration will now be evaluated before executing any scheduler.
omit 7e5164c04d Version 2.0.0
omit a83f0b548f 2.0.0.RC1
omit 26d0648e25 Use Grails 3.0.2
omit d2a342c9ba Use Grails 3.0.3
omit a5392ead26 Merge pull request #15 from anshbansal/patch-3
omit b61e29e490 Update README.md
omit 1dc0bf6245 back to snapshot
omit fa34a31321 2.0.0.M5
omit 53ca936c0c update note about config
omit 05714ed6a6 auto publish docs
omit baa65217db Improve compile time job checking
omit b1fbcbace1 Implement artefact handler in Groovy
omit 12625ac518 ignore .idea folder
omit 877c581f74 Merge pull request #13 from anshbansal/patch-2
omit 6ccfe0acab Removed gsp as they are not needed
omit 5f71301373 Merge pull request #11 from anshbansal/master
omit 76e6d1f2ec Removed JVM args added when facing issues
omit 018da93742 Added doc plugin. Updated spring dependency as per 3.0.2
omit cbaf5acf89 Merge pull request #10 from anshbansal/patch-1
omit 5fdabfab24 Added docs back. Updated bintray plugin as that was causing exceptions with gradle 2.4
omit 28feb83fe1 Added issue Management for plugin-info
omit 6207b67332 Merge pull request #6 from dtamm/master
omit 721dcd19d8 version back to snapshot
omit 34d8594fd4 Boolean fix for PR#6
omit 04d8ed9f09 JDBC Support PR
omit d0ca242b39 Merge pull request #5 from robbugh/master
omit b83ab74943 Must add the 'org.quartz' prefix to the autoStartup property
omit 1ca0e14186 https://github.com/grails3-plugins/quartz/issues/2
omit 8f0b8583e6 Version 2.0.0.M4
omit 9036612065 Use Grails 3.0.0
omit 2bb439ba03 reorganize application.yml
omit 574e22bbc8 use Grails 3.0.0.RC2
omit bb8a30e63c rearrange plugin ordering
omit b3f66fefa7 back to build-snapshot
omit cf20c147d8 See https://github.com/grails/grails-profile-repository/commit/e7b0eb720d860c6426b17e4528ca304a8569994e
omit cf1b5fb17d use Gradle 2.3
omit 4c345dca2c use Grails 3.0.0.BUILD-SNAPSHOT
omit 08165a9516 update TraitInjector
omit 02a1f89277 fix typo
omit 8d0ba6edd0 Version 2.0.0.M2
omit c00c7ccea5 Use Grails 3.0.0.M2
omit bf23dd61bf rearrange build file to deal with publishing problems
omit 6f1ca7fbb7 Update travis environment variables
omit 8515347944 add Job suffix to Job class name
omit 4bc65b3d46 2.0.0.BUILD-SNAPSHOT
omit 4039da6a9e version 2.0.0.M1
omit dbf2bc02d3 remove version property
omit 9e269fee7d add some missing copyright headers
omit 6a3fe1764b remove some commented code
omit 24352aa0f4 respect config.quartz.autoStartup
omit 204fe4a1a2 simplify static method invocations
omit 3fc496c40f remove reference to Holders
omit a757845eea add remaining schedule management methods
omit 9c5f08c8ec add some overloaded schedule(...) methods
omit a5921e44f7 add schedule(...) method
omit 3ed5d2ccd4 make trait @CompileStatic friendly
omit 414fa97983 testing static method in job trait
omit ce89ac7901 introduce QuartzJob trait
omit 0f93af447a update gradle wrapper
omit a53cc8b49b apply bintrayPublishing.gradle
omit 799ecbd431 add bintray plugin
omit d3df53278e update travis config
omit 9a5e8e29c3 update version properties
omit c0c2884a07 trivial change
omit df080912b2 generate gradle wrapper
omit cc5b89ab77 Update travis config
omit 8faa943e30 update Travis config
omit 9dd01df78a copy in Grails 3 plugin code
omit 2e7e720fe7 generated docs shouldn't have been committed
omit a47735208b not used
omit 96c3e92ae0 cleanup
omit cedf7626ce Change version to 1.0.3-SNAPSHOT
omit 003555aba4 Release 1.0.2
omit 4bb6c30e70 Merge pull request #29 from longwa/master
omit c89b67bf10 GPQUARTZ-140: Properly detect hibernate4 plugin
omit 530f66f728 only run on oracle jdk7
omit 1bd366bcec add github id
omit ab38213731 disable openjdk7 build for the moment
omit 58b3279063 update secure tokens
omit 474b5416db add travis CI credentials config
omit 3dd7c625d8 Make tests Grails 2.3.x compatible
omit e2399c0049 Merge branch 'master' of github.com:grails-plugins/grails-quartz
omit bedf177c71 remove jars from ignore list to include wrapper
omit af092423e9 Added Travis Build status
omit 637681d199 update Travis CI, update version to snapshot version
omit 4b99c379f8 Merge pull request #26 from stokito/master
omit 953cd33dfd Merge pull request #28 from weseek/master
omit b87b49b260 fixed missing import
omit f63b290194 Update README.md
omit 6c500f227d Update README.md
omit 7c73829533 Rename README.rdoc to README.md
omit a7287be45a Merge pull request #24 from ozren1983/master
omit ed2292222f fixed indentation in some of the .sql files
omit 655159b3ee schema 2.0 to 2.2 upgrade
omit dd5e325461 fixed doc url
omit 210e8aea1b upgrade quartz to 2.2.1
omit bef6d09456 upgrade quartz to 2.2.1
omit fa6e876add Merge pull request #23 from kefirfromperm/master
omit bb25546938 Resolve merge conflict.
omit 4738830e77 Merge remote-tracking branch 'remotes/rvanderwerf/master'
omit 7b3ca3cd35 Updates the plugin version to 1.0
omit 85f02f469a Merge latest changes to the master.
omit 952590500e Merge pull request #22 from chriskuehl/master
omit d155204289 Fix minor typo in README.
omit 947d8c5b50 update version # add Vitalii back to authors
omit 6dbd179094 Merge pull request #1 from kefirfromperm/cleanup
omit 00a0ffc3bc Merge pull request #1 from kefirfromperm/cleanup
omit 92e91c56ec import org.quartz.SimpleTrigger
omit c27f60dbd8 update version #
omit c0aecde95e GPQUARTZ-131 remove depenency on grails 2.3.0 release plugin
omit 10ffe734b5 cleanup
omit 4587845434 fixed release plugin issue
omit 8a581d8e52 plugin.xml shouldn't be in source control
omit 4d33b7386d Merge branch 'master' of https://github.com/grails-plugins/grails-quartz
omit 9b3941b155 Merge pull request #19 from kefirfromperm/master
omit 54928c016f Version 1.0-RC11
omit 3c07f77c7a Logger for the plugin class.
omit 218ba7177c Compatibility with Grails 2.0.0
omit 34d9efc685 plugin.xml
omit d9f06e540b Job description
omit 887150e0cf Merge remote-tracking branch 'upstream/master'
omit 8501458227 adding addl author
omit 135b2d23f8 pull request #18
omit 4859b809d6 update version for latest pull request merges
omit 426bd36e44 Merge pull request #18 from derekslife/master
omit 04a62f0122 Ability to specify a Quartz Job's JobDetail description within Job configuration. This is useful for applications which list current Quartz jobs' details for user display.
omit 9966a533bd Upgrade grails version to 2.2.4
omit 63fdaa1946 GPQUARTZ-10 Removed shutdown method in BootStrap. Uses standard destroy method from SchedulerFactoryBean. The issue is done now.
omit e6d352fcd8 GPQUARTZ-10 Add destroy method. Needs more tests.
omit f25c567ada Merge remote-tracking branch 'upstream/kefirfromperm'
omit c35f29a360 Merge remote-tracking branch 'upstream/master'
omit 86844c217c Merge pull request #16 from Ticketfly/configurable-connection-pool
omit eaa43f722e Merge pull request #17 from kefirfromperm/master
omit c50fa22259 http://jira.grails.org/browse/GPQUARTZ-120
omit c55a10d426 Allow dataSource to be overridden with the name of the bean in config.jdbcStoreDataSource.
omit cd47f2bff7 Add StatefulGrailsJob comment.
omit aeda96823e Migrate to the Quartz 2.2.0
omit e6642fd370 Used specified job class for non concurrent jobs. Fixed problem with session listener.
omit e858ab0044 Fix possible problem in GrailsJobDetail.
omit fd111b1ae2 Refactored JobDetailFactoryBean
omit 43098fc1ad Small refactorings
omit c05447dade onChange
omit 4d378c1d67 SessionBinderJobListener only if required
omit 4510ed852d Removed JobDetails and Trigger beans from the Spring context.
omit e44ae8e65e Removed listeners
omit c7d0bd33e3 Removed GrailsStatefulJob
omit ab68e1d432 Fix tests bug.
omit 2d198831d4 Merge remote-tracking branch 'upstream/master'
omit 18458c91b1 Merge pull request #15 from lbredeso/master
omit d98c5850be Merge pull request #13 from yamkazu/improve-createjob
omit 8af60d68c4 Expose underlying job in GrailsJob
omit 309dfce3ce QuartzGrailsPlugin types
omit 1955b7d531 Tests for the dynamic methods of job artifacts.
omit 51f1866584 Comment on JobManagerService tests.
omit b7c6c6fc8f Changed JobManagerService tests package.
omit 393907e2aa Make JobManagerService tests as integration.
omit f2dc5d1db3 Simplified schedule methods.
omit 152d98be7f Removed configuration handler.
omit 3fd0038870 Removed configuration handler.
omit c04e3e0b71 Quartz dependency.
omit 72da0ccbf3 Merge remote-tracking branch 'upstream/master'
omit f4a7cc697c Quartz dependency.
omit 50e8495a6d Merge pull request #14 from robbugh/master
omit 891bcf8910 Set the name of the scheduler to the Quartz instanceName property
omit a3ca0415a8 A comment to GrailsJobFactory
omit b05f52fdce refactored TriggerConfigBuilder
omit a5c7137024 Improved create-job command a bit
omit 0c54be6c87 Merge remote-tracking branch 'upstream/master'
omit b54ea36d9a removed unused dependencies
omit 48bffa4f98 removed deprecated api
omit e43cc628a7 Remove wrapper
omit ebdf3ce571 Tests for the JobManagerService for methods for pause and resume jobs.
omit ead8e03790 Merge pull request #12 from kefirfromperm/master
omit 2a85370636 Validations and tests
omit 054e891d6a GrailsJobClass
omit be364aef44 CustomTriggerFactoryBean refactoring
omit 63afc698de Comment on SessionBinderJobListener
omit 9728e31b83 Simple refactoring of TriggersConfigBuilder
omit 47ac875029 Tests for JobDescriptor and TriggerDescriptor
omit b6e4053f75 TriggersConfigBuilder, changed the parameter type from HashMap to Map
omit 2ab09a1345 GPQUARTZ-105 JobManagerService, added methods pauseAll and resumeAll
omit c8d920c89c GPQUARTZ-116 JobManagerService#interruptJob
omit fd696af6bb GPQUARTZ-116 JobManagerService#unscheduleJob
omit 7dcd965a4a GPQUARTZ-116 JobManagerService#removeJob
omit dcb20bda4d GPQUARTZ-116 JobManagerService, pause and resume jobs and triggers
omit a0006beb09 The test for JobManagerService#getRunningJobs.
omit da242d5809 The test for JobManagerService#getJobs.
omit b8e144c695 The test for JobManagerService#getAllJobs.
omit 3af8d419ff The test class for JobManagerService.
omit 5682887839 TODOs
omit 38dbe537bf TODOs
omit 3c007fd06c .gitignore
omit 4c979c6f5e update version for release
omit 33a82ac8c1 Merge pull request #11 from ftaiolivista/master
omit c7e73a9df5 Merge pull request #10 from ctidigital/feature/allow-cronexpression-class
omit f3deda9e61 merge with RC6
omit 916492a6ed grails update
omit 2c1a5642dc Allow cronExpression to be an instance of CronExpression
omit cef4e08ea0 update version
omit 4f56983ba6 Merge pull request #9 from Overruler/request
omit d673324db6 Close session without exceptions escaping into Quartz where they interfere with the execution of other listeners.
omit 83e66e93ec gitignore
omit f449797f0b Merge pull request #8 from beckje01/travis
omit a9952fc8a1 Added missing wrapper files.
omit 5b6290cf4f Add Travis.yml for build
omit 4535feab5d Add grails wrapper.
omit 6345cc1c53 update version
omit 0acf99c2cc Merge pull request #7 from kefirfromperm/master
omit 4170eae6fd GPQUARTZ-111: Integration tests fails with Quartz plugin resolved
omit f2fc261b20 Remove JetBrains IntelliJ IDEA project files.
omit 26d6232a69 GPQUARTZ-112: Methods 'triggerNow', 'removeJob', 'reschedule', 'unschedule' don't work. resolved
omit 61b8bae8a2 .gitignore
omit a9d42be1d2 Remove all JetBrains IntelliJIDEA project files.
omit 292f135c5e Merge remote-tracking branch 'origin/master'
omit 658ec35377 RC4
omit 1238fbc550 RC4
omit 2260eced07 Merge pull request #6 from cruzer45/master
omit 9bf1f0ae93 org.quartz.Scheduler.deleteJob(String jobName, String groupName) was removed in the most recent API. It has been replaced with org.quartz.Scheduler.deleteJob(JobKey jobKey). Made the necessary changes to make it compatible with the new API.
omit 54d0ef7939 fix bug with cron triggers
omit a1a4ca0f1b upgrade to grails 2.2 and release plugin 2.2.0
omit c2f90ac813 upgrade to grails 2.2 and release plugin 2.2.0
omit 0073816ce0 Merge remote-tracking branch 'origin/master'
omit ce930197e2 upgrade to grails 2.2 and release plugin 2.2.0
omit 61146f3ecf Merge pull request #2 from isinev/master
omit 07f67f24ba Merge pull request #5 from rvanderwerf/master
omit 5f65618829 update plugin to use quartz 2.1.x. This allows use of latest version of Terracotta and Tomcat 7.
omit e78b7a2059 random def
omit eaf536523d fixed reload http://jira.grails.org/browse/GPQUARTZ-102?page=com.atlassian.jira.plugin.system.issuetabpanels:changehistory-tabpanel
omit b9a3c091ec ingnore eclipse metadata
omit ac160c2016 grails upgrade
omit e9f92c32b7 variable name fix in JobManagerService#getJobs
omit 369a417201 updated plugin.xml
omit 783651b9f1 fix custom trigger formatting in docs
omit 32734a4fd2 Merge pull request #1 from marcpalmer/182e760915365cebfb57b4a137775d53cb417799
omit 182e760915 Reworked config to merge in correct order, app Config (and external configs) can now override DefaultQuartzConfig values
omit 2a78759c36 Merge remote-tracking branch 'ticketfly/persistence-interceptor'
omit 570ef3194a update version to 1.0 rc2
omit da65cf9073 docs ported to gdoc
omit 2b52cd3692 update versions, fix broken reloading
omit 5fa0c25b08 load after datasources plugin, if it's installed.
omit 1d19cfb2b2 SessionBinderJobListener refactored to use persistenceInterceptor to wrap Quartz jobs in a persistence context.
omit d91feebc39 Merge pull request #20 from Ticketfly/exclude-slf4j-api
omit 3ba7974d2e exluding slf4j-api because the version it pulls doesn't play nicely w/grails 1.3.7
omit 6a11f9a95e [fixes #16] Get rid of plain constant interfaces
omit 937f0d02c2 Edited README.rdoc via GitHub
omit 5dd05822d8 Add StillMaintained.com button to the README
omit 3583e79ce4 Remove 'developers' descriptor to prevent duplicate entries in POM
omit d64045211f Revert "Remove 'developers' descriptor to prevent duplicate entries in POM"
omit 50207797fe Remove 'developers' descriptor to prevent duplicate entries in POM
omit 1f05c84b55 Add new plugin descriptors for grails-maven-publisher-plugin
omit 96f09e4411 Move all code to the grails.plugins.quartz package; update license; reformat code & optimize imports
omit f9f08e245b Merge branch 'master' into pledbrook-fix-tests
omit 3af604b330 Merge remote-tracking branch 'pledbrook/grails-1.2'.
omit db5b0760cc Migrated to the new IDEA project structure
omit 62382a5a1b Plugin now depends on Grails 1.2+, which means it no longer needs to package the Quartz JAR.
omit 80c486b6c0 Fixed a few of the failing unit tests and also fixed the names of some of the test case files (which didn't match the class names in those files).
omit 469c6c7101 updated Grails version
omit ee1e868bed added exposeSchedulerInRepository configuration parameter (fixes GRAILSPLUGINS-2662)
omit db1a112eed updated Quartz to 1.8.4
omit 68f4f5fdac Removes debug println statement
omit eef6aed201 Fixes some conflicts which arised during massive refactoring
omit 4936d4f89d Updates my email address
omit 2ef1b150ba Slight fix to the IDE configuration file
omit 20bb71e069 Updates job template for create-job script to follow new triggers configuration convention
omit 86effd7b71 Large refactoring: renames all *Task* entities to *Job* ones. Ex. DefaultGrailsTaskClass becomes DefaultGrailJobClass and so on.
omit bad9ff5a1d changes plugin.xml to include new BuildConfig resource
omit 069b3408e2 removes unused and unsupported Spring facet from IntelliJ IDEA configuration files
omit 8e5396ad7a improves JobManagerService and fixes an issue with #getAllJobs() method, which was returning only one trigger per job despite of real triggers count (fixes GRAILSPLUGINS-2057)
omit 41ce1dee3d force UTF-8 as file encoding in the IntelliJ IDEA
omit ab73b1203e disables Quartz updates check by default (fixes GRAILSPLUGINS-2221)
omit eb1fc29dba ignore 'target' folder
omit c037bed1a6 refines plugin configuration abilities and removes default quartz.properties
omit dbbbb455b0 reduces Hibernate dependency to compile time only (fixes GRAILSPLUGINS-917)
omit 8c77a8b2b7 adds support for jobs interruption with Scheduler.interrupt() method (fixes GRAILSPLUGINS-2042)
omit 43d28c90f4 Job#execute() method invocation was completely rewritten to be more accurate with throwed exception (fix #2)
omit bda69d6136 * fixes some paths to the library sources
omit 90abe70c3a * updates some version numbers
omit a787308b51 * updates Quartz scheduler to the latest and greatest 1.8.3
omit 9d265d328c * update project files for IDEA 9
omit 344bac3801 Minor change to plugin to not set configLocation on the quartzScheduler if properties supplied via grails.config.quartz.props.
omit 5136fe9e30 Changes to allow more groovylike quartz configuration. Users can omit quartz.properties and supply them in QuartzConfig.groovy (or any of the merged config locations) as a quartz.props section. Falls back to quartz.properties if no grails quartz properties supplied.
omit d05fe8db08 Removed quartz.properties, allowed properties to be supplied in QuartzConfig.groovy
omit 45728fcd79 Removed unused files
omit ce7dcd8455 Removed unused file
omit f1fe0ce599 Updated version number to 1.0-SNAPSHOT
omit 8c51627328 Updated required Grails version to '1.1 > *'
omit 20c48139fa Readme markup fixes
omit 57bd14c1f8 First draft of README
omit 5a12df0ef6 Removed web-app, since it's not used by the plugin
omit 42cd4a8130 Added empty quartz.properties file
omit 739e4fab26 Reverted bad change
omit 09a4afa4d1 Fixed an error with scheduler shutdown in Tomcat (fix #GRAILSPLUGINS-1431)
omit 033871ae89 Fixed compilation warnings (fix #GRAILSPLUGINS-1845)
omit 1266b2a3f5 Changed QuartzBootStrap to not depend on the ApplicationContext directly and use autowiring instead (refs #GRAILSPLUGINS-1159)
omit c26a9df0f4 Removed debug throw
omit ccd1c18429 Updated to the latest Quartz 1.7.3
omit 80fc00ef22 Fix CRLF
omit 3f8439a503 Added 'requestsRecovery' configuration property for Jobs (fix #GRAILSPLUGINS-1701)
omit 1c2affd3a9 Updated project files to Grails 1.2
omit 3319a759cb Updated the plugin to work with Grails 1.2 (fix GRAILSPLUGINS-1808, GRAILSPLUGINS-1807)
omit 19668f2875 Fixed an error with durable jobs (fix GRAILSPLUGINS-1420)
omit 2dd59687fe Added reschedule(Trigger) and unschedule(name, group) dynamic methods (fix GRAILSPLUGINS-1647)
omit b0689cff4b quartz.properties file is now loaded properly (fix GRAILSPLUGINS-1207)
omit 2fa904f991 Fixed a typo (fix GRAILSPLUGINS-1460)
omit 14b68cdc10 Placed JobManagerService into a package (fix GRAILSPLUGINS-1410)
omit 191cedad84 Fixed an error with GString -> String convertion (fix GRAILSPLUGINS-1281)
omit db5b1d55ee Preparing 0.4.1 release
omit 373da2ee96 Fixing merge conflicts
omit be9de0c0eb Merge
omit 37d08d93df Updated 0.4.1-SNAPSHOT
omit b2fbebfc1f Turned off auto startup of the Quartz scheduler in test environment (fix GRAILSPLUGINS-1159)
omit be46a2f833 Upgraded to Grails 1.1.1
omit 35cefe9cc4 Reverted bean names to old-style since it doesn't look like a good idea to inject job beans into controllers or services
omit c95c718a5f Updated documentation
omit 13c8a1141f Switching to CustumTriggerFactoryBean for registering all types of triggers
omit c819a27b87 Updated documentation
omit 3370446197 Switching to CustumTriggerFactoryBean for registering all types of triggers
omit 9d684a84c3 Merge branch 'master' of git@github.com:nebolsin/grails-quartz
omit 1f568d4345 Reimplemented support for scheduling with custom triggers (fix GRAILSPLUGINS-1118)
omit fa8bf6e524 Added timezone parameter for the cron trigger
omit 2c82fc893e Removed another file from JobManagerController stuff
omit d018a0ec05 Merge branch 'master' of git@github.com:nebolsin/grails-quartz
omit b59a29ec85 Reimplemented support for scheduling with custom triggers (fix GRAILSPLUGINS-1118)
omit 0a7544d627 Added timezone parameter for the cron trigger
omit 06488b4069 Removed another file from JobManagerController stuff
omit e2215ae30c Fixed another error with 'def execute(JobExecutionContext context)' method
omit 01d2db1836 Fixed another error with 'def execute(JobExecutionContext context)' method
omit 32785e8131 Merge branch 'master' of git@github.com:nebolsin/grails-quartz
omit dc84b07da0 Updated the snapshot zip
omit 3b9d159131 Fixed an error with install-quartz-config script in Grails 1.1 (fix GRAILSPLUGINS-742)
omit fd5ca3d736 Added generated documentation to the repository
omit 27625822e6 Updated to Grails 1.1
omit b8624192ba Updated the snapshot zip
omit 4c1eff715b Fixed an error with install-quartz-config script in Grails 1.1 (fix GRAILSPLUGINS-742)
omit 0b48bab83f Added generated documentation to the repository
omit b6eee2bcdd Merge branch 'master' of git@github.com:nebolsin/grails-quartz
omit 2f135de275 Updated snapshot archive
omit 2c64ce73f1 Merge branch 'master' of git@github.com:nebolsin/grails-quartz
omit 3752a8697d Removed JobManager Controller since it is in pre-pre-alpha stage and is not very useful currently
omit 4e0ea0c2ee Fixed an error where def execute(JobExecutionContext context) method definition was not being detected (fix GRAILSPLUGINS-622)
omit 0ed670c423 Merge branch 'master' of git@github.com:nebolsin/grails-quartz
omit 9e944af3b5 Fixed an error where def execute(JobExecutionContext context) method definition was not being detected (fix GRAILSPLUGINS-622)
omit 7024512525 Updated Quartz to the latest 1.6.5 release
omit 3e440cc9b0 Merge branch 'master' of git@github.com:nebolsin/grails-quartz
omit 9f17a3b571 Updated Quartz to the latest 1.6.5 release
omit 67649ee89e Updated to Grails 1.1
omit 7841e3ca4d Updated to Grails 1.1
omit 60561f615d version of the Quartz plugin that works with 1.1-beta1
omit a0975e7163 Created first version of Quartz Management Tool
omit 4cd226e2a1 minor update to add support for specifying jobs within packages to the create-job command
omit ec2187923a Forgot to update snapshot with the latest fix
omit 02ee80139e Updated Gant script to use 'target' instead of 'task' since 'task' is deprecated in current version of Gant (fix for GRAILSPLUGINS-452)
omit 11cc3e9da7 Fix for GRAILSPLUGINS-451. Also updated project files for IntelliJ IDEA 8.
omit 345a26014c Added schedule(Date) method.
omit 8e040be91f Implemented first cut of dynamic jobs scheduling.
omit 0882a66370 Preparing 0.3.3 release
omit 9d50629959 Added 'volatility' and 'durability' parameters for JobDetails and 'volatility' parameter for Triggers (work in progress on GRAILSPLUGINS-409)
omit 7fbe9bb4d5 Fixed 'repeatCount = 0' parameter (GRAILSPLUGINS-415). Changed version number to 0.3.3-SNAPSHOT.
omit fcf3e02d26 First attempt to make JobDetails non-volatile
omit e72abb5a5d Updated version to 0.4-SNAPSHOT.
omit 42302501cf Removed test reports from zip distribution.
omit 8ce9bd8315 Added SQL scripts for creating Quartz DB schema in different databases. Updated version to 0.3.2.
omit 9d49a516d4 Renamed factory beans for triggers to not include 'Grails' prefix. Updated license info and javadocs.
omit 87ddcd9fd8 Renamed factory beans for triggers to not include 'Grails' prefix
omit 5e0fbab887 Rewrote trigger support to provide native Quartz's triggers instead of Spring wrappers for better serialization.
omit 41c58aac48 Removed unused imports.
omit d048efdd40 Added support for execute(context) method, so users could access JobExecutionContext from their execute methods
omit 18deb9efa0 Added 0.3.2-SNAPSHOT zip distribution
omit e2495fa8cd Changed version to 0.3.2-SNAPSHOT and fixed an issue with "stateful" jobs, now new job instance is created for each execution.
omit 6c59f09fc2 Corrected job template to use spaces instead of tabs.
omit b48dc81444 0.3.1 bugfix release
omit 3bf79e7dc1 reverted to MethodInvokingJodDetailFactoryBean since of GRAILSPLUGINS-374
omit 6d5a75b6f9 changed version to 0.3.1-SNAPSHOT since of a blocker bug in 0.3 release
omit a183f95f5d updated release info to 0.4-SNAPSHOT
omit 5ea697cd96 deleted 0.3-SNAPSHOT release
omit fbabfc347a 0.3 release prepared
omit e72a3bf384 First cut of multiple triggers configuration. Also improved test coverage.
omit d96b2c3e8e fixed some JavaDoc issues as well as unused imports
omit 13c74008ee moved default property value constants to the interface
omit 60fd11a063 added a validity check for the cron expression
omit dcf4d52190 new snapshot version
omit 5d241144c4 Forgotten import.
omit ba1077192d Added per-environment configuration. Fixed autoStartup configuration parameter. Added StatusFinal event with appropriate message to InstallQuartzConfig script.
omit bc1c98c4e4 Initial fix for GRAILSPLUGINS-364, GRAILSPLUGINS-359, GRAILSPLUGINS-47, GRAILSPLUGINS-307 and maybe others. Added clustering and JDBC storage suppot and plugin configuration with QuartzConfig.groovy (applied Burt's patch with slight modifications). Also moved scheduler startup into BootStrap file.
omit af8427be56 Added repeatCount parameter for Job classes (GRAILSPLUGINS-358)
omit 05c37c79d2 - removed unuser ExecutionControlTriggerListener since now all jobs are scheduled in doWithApplicationContext and there is no need for the trigger - upgraded to Grails 1.0.2 - fixed some code formatting issues
omit 94dace80fc - 0.3-SNAPSHOT zip distribution
omit 31ce1572da - several cleanups related to GRAILSPLUGINS-58
omit 3588a29ee4 - fix for GRAILSPLUGINS-58 (upgraded Quartz to 1.6 since it's now compatible with the Spring's version included in Grails 1.0)
omit b103d3d26b - fix for GRAILSPLUGINS-213 (Wolfgang Schell's patch applied with slight modifications)
omit e28917c55e - changed version to 0.3-SNAPSHOT - fix for GRAILSPLUGINS-190 (Wolfgang Schell's patch applied)
omit 28e503f607 Sorry just testing svn access
omit ef4905c145 - new version of packaged plugin's zip added
omit d2540d0488 - unused directories deleted
omit 2103af0310 - migrating to Grails 0.6
omit 26e4cb9a41 - migrating to Grails 0.6
omit 8a724252ca - fixed convention 'execute' method on GrailsTaskClass - added several unit tests
omit 567262d56b - removed unused 'jobs' directory
omit 6dd417bd31 updated SNAPSHOT version
omit 7b265dfe53 updated SNAPSHOT version
omit 3cf5fde44a - GRAILSPLUGINS-55: added check for negative 'timeout' and 'startDelay' parameters during application startup - updated to Grails 0.5.5-RC1
omit a52ec4bdcb - GRAILSPLUGINS-32: downgraded to quartz-1.5.2 due to incompatibility between Spring 2.0 and Quartz 1.6.0 - GRAILSPLUGINS-33: added global job listener which logs all exceptions occured during job's execution with ERROR log level
omit 368c34810f - GRAILSPLUGINS-34: added a trigger listener which prevents jobs execution until application will be fully started up - added an ability to set startDelay for cron jobs
omit 95b562b5ab version changed to 0.2-SNAPSHOT and QuartzGrailsPlugin.groovy updated to follow Plugin Distribution Convention
omit ea50c4e453 added empty lib/ and classes/ directories to prevent 'not-existing' errors
omit dfeb6007ca Install/upgrade scripts and licence file added
omit 8cad5a1038 Initial import
omit 3364307ee4 Created folder remotely
add ab50c393a5 feat: add SessionResolver infrastructure and extend core datastore APIs
add eea98724a3 fix: restore concrete Service trait methods to fix @CompileStatic compilation
add 9d11da0814 fix: widen MongoMappingContext.initialize visibility to public
add c382eed135 fix: address Copilot review findings on PR #15779
add 20966b0380 fix: address review feedback on SessionResolver/AbstractDatastore architecture
add 8374bc80e9 fix: guard getTenantId() DISCRIMINATOR mode and close review-flagged coverage gaps
add 36179ebc7d fix: address jdaugherty's follow-up review on SessionResolver/AbstractDatastore
add 7e50a21785 test(grails-datastore-core): close Codecov patch-coverage gap on getTenantId()'s lazy fallback
add a5d5d311e7 feat: GORM O(M+N) scaling — GormRegistry, GormEnhancer, and core API refactor
add ea2918717c fix: restore registerConstraints to GormEnhancer dropped in scaling refactor
add ab58259ece fix: restore registerConstraints hook and fix MongoStaticApi fields dropped by scaling refactor
add 30e08c99e3 fix: distinguish datasource connection qualifier from tenant ID in AbstractGormApi.execute()
add 974eb55700 fix: mode-aware tenant lookup and bound DatastoreResolvers in GormRegistry
add 6ac608bfe2 fix: register HibernateGormApiFactory in registerConstraints; update affected tests
add 93ffb0dee3 style: remove unused ConnectionSource import and fix consecutive blank lines in HibernateGormEnhancer
add 96d8e6f986 fix: restore deprecated GormEnhancer extension points for backward compatibility
add 7db88ca741 fix: restore deprecated backward-compat API surface for adapter modules
add 6c7fab8f4c fix: restore deprecated setDatastore and persistentEntity for H7 adapter compat
add 54e1b4d408 fix: resolve null datastore in H5/H7 validation and dynamic finder dispatch
add 76f800dcc4 fix: remove redundant this.datastore assignment in HibernateGormStaticApi
add 18133aa76f Fix MongoDB functional tests: fall back to enhancer API factory when no GormApiFactory registered
add 606ef97cae fix: restore null-tolerant service/datastore contracts in GormRegistry core
add a6b1691bd4 fix: clear GormRegistry core-impl regressions (H5 core 42→6)
add 0afca8b287 fix: resolve multi-tenant dynamic finder dispatch and tenant session passing (H5 core 6→3)
add 1937163907 fix: honor getAll id order, null slots, and id conversion in Hibernate retrieveAll (H5 core 3→0)
add 1da63f2e69 fix: register MongoGormApiFactory so Mongo entities resolve a MongoStaticApi
add 5d1df27928 fix: apply pagination args before Query.list() in findAll-by-example
add 3628b0d118 fix: implement find/findAll-by-example via findWhere/findAllWhere delegation
add 7acb40fae7 fix: H7 first/last(Map) inherit core's order-aware implementation
add 09b0a539cb test: align H7 core tests with the GormRegistry rewrite
add 76da056195 fix: H7 disjunction/conjunction/negation operate on detachedCriteria
add 0f78b71b1e fix: MultiTenant.eachTenant must not force current-tenant resolution
add efbf76cde3 test: isolate Mongo multi-tenancy specs from singleton GormRegistry pollution
add 325f167212 fix: @CurrentTenant data services resolve the primary datastore for tenant management
add ca3e87e7ba test: @PendingFeature the pre-existing Mongo count-over-OR disjunction bug
add 9b2ab9c06e fix: resolve GORM regressions surfaced by the registry refactor
add ca5d6e77db chore: strip scope-creep config noise from the GormRegistry PR
add a330c41ee7 fix: address Copilot review findings on PR #15780
add 41d533c51b test: verify @Service+@CurrentTenant routing in DATABASE multi-tenancy mode
add a8585dbfba fix: restore copyAnnotations dedup guard needed by ServiceTransformation
add 713b29290b test(grails-datamapping-core): add GormApiResolverSpec closing PR #15780 coverage gap
add 24c8518819 fix(grails-datamapping-core): restore saveAll's persisted-id return value; add GormStaticApiSpec
add 621efb88dc test(grails-datamapping-core): add GormRegistryCoverageSpec closing PR #15780 coverage gap
add b878c85a85 test(grails-datamapping-core): add GormEnhancerCoverageSpec closing PR #15780 coverage gap
add dbf1708317 test(grails-datamapping-core): add GormValidationApiCoverageSpec closing PR #15780 coverage gap
add 75ceaa4444 test(grails-datamapping-core): add GormInstanceApiSpec closing PR #15780 coverage gap
add 0e1cb948d5 test(grails-datamapping-core): add AbstractGormApiSpec closing PR #15780 coverage gap
add a0667f9316 test(grails-datamapping-core): add TenantsSpec closing PR #15780 coverage gap
add e5aec81dc0 test(grails-datamapping-core): add DynamicFinderCoverageSpec closing PR #15780 coverage gap
add 4e224360b2 test(grails-datamapping-core): add ServiceTransformationCoverageSpec closing PR #15780 coverage gap
add cbe8e1b9b4 test(grails-datamapping-core): add MultiTenantEventListenerSpec closing PR #15780 coverage gap
add e0e9c1fd93 test(grails-datamapping-core): add AbstractStringQueryImplementerCoverageSpec closing PR #15780 coverage gap
add 045740a725 test(grails-datamapping-core): add DefaultTenantServiceSpec closing PR #15780 coverage gap
add e8e15d7005 test(grails-datamapping-core): add CurrentTenantHolderSpec closing PR #15780 coverage gap
add d7efddc398 test(grails-datamapping-core): add TenantDelegatingGormOperationsSpec closing PR #15780 coverage gap
add 938bea4dc0 test(grails-datamapping-core): add GrailsTransactionTemplateSpec closing PR #15780 coverage gap
add 7d5809f0ca fix(grails-datamapping-core): guard CriteriaBuilder's cache/join/select against a null query
add 372604de53 test(grails-datamapping-core): add GormStaticApiRegistrySpec closing PR #15780 coverage gap
add 14ec1762f2 test(grails-datamapping-core): add ConnectionSourceNameResolverSpec closing PR #15780 coverage gap
add feeb017850 test(grails-datamapping-core): add GormValidationApiRegistrySpec and GormInstanceApiRegistrySpec closing PR #15780 coverage gap
add 9180ddec8a test(grails-datamapping-core): add AbstractFinderSpec closing PR #15780 coverage gap
add 2d05bf1e49 test(grails-datamapping-core): add FindAllByImplementerCoverageSpec closing PR #15780 coverage gap
add 163a9a5dd2 test(grails-datamapping-core): add FindOrSaveByFinderSpec closing PR #15780 coverage gap
add e71f238e24 test(grails-datamapping-core): add AbstractDatastoreApiSpec closing PR #15780 coverage gap
add 1ce31b5e94 test(grails-data-simple): add SimpleMapDatastoreSpec closing PR #15780 coverage gap
add 0c2816bfdc test(grails-datamapping-core): add AbstractServiceImplementerCoverageSpec closing PR #15780 coverage gap
add c5f3841388 test(grails-data-hibernate5-core): add GrailsDataTckManagerSpec closing PR #15780 coverage gap
add 13b03398d2 test(grails-datamapping-core): extend MappingContextTraversableResolverSpec closing PR #15780 coverage gap
add 560086aac6 test(grails-datamapping-core): add DefaultTransactionServiceSpec closing PR #15780 coverage gap
add 3e13f3a8bf test(grails-datamapping-core): add DefaultTransactionTemplateFactorySpec closing PR #15780 coverage gap
add 83ea657576 test(grails-datamapping-core): extend TransactionalTransformSpec closing PR #15780 coverage gap
add e049502377 test(grails-data-mongodb-core): add MongoStaticApiSpec closing PR #15780 coverage gap
add 184020c5c1 test(neo4j): give OptimisticLockingSpec's cross-thread heisenbug more headroom
new cd0502f3bc fix(neo4j): assert background thread completion in OptimisticLockingSpec
new 169193b014 fix(neo4j): fix cross-session commit races and de-flake OptimisticLockingSpec
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 (43fca1cf80)
\
N -- N -- N refs/heads/fix/optimistic-locking-spec-join-assert (169193b014)
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.
The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.agents/skills/gradle-developer/SKILL.md | 706 --
.agents/skills/grails-8-upgrade/SKILL.md | 3 +-
.agents/skills/grails-developer/SKILL.md | 4 +-
.agents/skills/groovy-developer/SKILL.md | 16 +-
.agents/skills/mono-repo-integration/SKILL.md | 2 +-
.git-blame-ignore-revs | 2 -
.github/dependabot.yml | 4 -
.github/dependency-graph/external-references.yml | 5 +-
....init.gradle => groovy-joint-build.init.gradle} | 4 +-
.github/scripts/ossIndexReport.sh | 94 -
.github/scripts/postStickyComment.sh | 60 -
.github/workflows/benchmark.yml | 394 --
.github/workflows/codeanalysis.yml | 4 +-
.github/workflows/codeql.yml | 4 +-
.github/workflows/codestyle.yml | 6 +-
.github/workflows/coverage.yml | 6 +-
.github/workflows/end-to-end.yml | 149 -
.github/workflows/forge-deploy-aws.yml | 223 -
.github/workflows/forge-deploy-next.yml | 119 +
.github/workflows/forge-deploy-prev-snapshot.yml | 119 +
.github/workflows/forge-deploy-prev.yml | 119 +
.github/workflows/forge-deploy-release.yml | 125 +
.github/workflows/forge-deploy-snapshot.yml | 115 +
.github/workflows/gradle.yml | 458 +-
...apshot-canary.yml => groovy-joint-workflow.yml} | 104 +-
.github/workflows/rat.yml | 4 +-
.github/workflows/release-close.yml | 3 +-
.github/workflows/release-notes.yml | 2 +-
.github/workflows/release-publish-docs.yml | 8 +-
.github/workflows/release-verify.yml | 34 +-
.github/workflows/release.yml | 110 +-
.github/workflows/sitemesh2.yml | 8 +-
.github/workflows/validate-actions.yml | 59 -
.github/workflows/vulnerability-scan.yml | 176 +-
.gitignore | 1 -
.sdkmanrc | 4 +-
AGENTS.md | 41 +-
CONTRIBUTING.md | 6 +-
DEVELOPMENT.md | 2 -
README.md | 2 +-
RELEASE.md | 59 +-
RENAME.md | 8 +-
THREAT_MODEL.md | 16 +-
build-logic/docs-core/build.gradle | 13 -
.../main/groovy/grails/doc/UserGuideBuilder.groovy | 169 -
.../grails/doc/gradle/PublishGuideTask.groovy | 170 +-
.../doc/gradle/PublishGuideWorkAction.groovy | 54 -
.../doc/gradle/PublishGuideWorkParameters.groovy | 59 -
.../doc/gradle/AuditGroovydocLinksTask.groovy | 87 -
.../grails/doc/gradle/GroovydocLinkAuditor.groovy | 209 -
.../test/groovy/grails/doc/GuideProbeMacro.groovy | 43 -
.../groovy/grails/doc/UserGuideBuilderSpec.groovy | 189 -
.../doc/gradle/GroovydocLinkAuditorSpec.groovy | 199 -
build-logic/gradle/wrapper/gradle-wrapper.jar | Bin 47505 -> 48462 bytes
.../gradle/wrapper/gradle-wrapper.properties | 2 +-
build-logic/gradlew | 4 +-
build-logic/gradlew.bat | 4 +-
build-logic/plugins/build.gradle | 26 -
.../buildsrc/AutoConfigurationImportsPlugin.groovy | 66 -
.../apache/grails/buildsrc/CompilePlugin.groovy | 33 -
.../buildsrc/ConfigurationMetadataPlugin.groovy | 829 ---
.../GenerateAutoConfigurationImportsTask.groovy | 181 -
.../GrailsDependencyValidatorPlugin.groovy | 159 +-
.../buildsrc/GrailsValidateActionsPlugin.groovy | 62 -
.../GroovyDslConfigurationMetadataParser.groovy | 345 -
.../buildsrc/GroovydocEnhancerExtension.groovy | 34 +-
.../grails/buildsrc/GroovydocEnhancerPlugin.groovy | 47 +-
.../apache/grails/buildsrc/GroovydocRunner.groovy | 89 -
.../apache/grails/buildsrc/PublishPlugin.groovy | 43 +-
.../org/apache/grails/buildsrc/SbomPlugin.groovy | 175 +-
.../grails/buildsrc/TestTaskShardingPlugin.groovy | 174 -
.../grails/buildsrc/ValidateActionsTask.groovy | 236 -
.../buildsrc/ValidateDependencyVersionsTask.groovy | 100 -
.../ValidateProductionClasspathTask.groovy | 102 -
.../grails/buildsrc/VulnerabilityScanPlugin.groovy | 17 +-
.../codenarc/codenarc.groovy | 4 -
.../apache/grails/buildsrc/groovydoc-runner.groovy | 72 -
.../grails/buildsrc/CompilePluginSpec.groovy | 137 -
.../ConfigurationMetadataPluginSpec.groovy | 1590 -----
...GenerateAutoConfigurationImportsTaskSpec.groovy | 195 -
.../GrailsDependencyValidatorPluginSpec.groovy | 38 +-
.../buildsrc/GroovydocEnhancerPluginSpec.groovy | 162 -
.../grails/buildsrc/PublishPluginSpec.groovy | 113 -
.../apache/grails/buildsrc/SbomPluginSpec.groovy | 100 -
.../buildsrc/TestTaskShardingPluginSpec.groovy | 387 -
build-logic/settings.gradle | 8 -
build.gradle | 58 +-
dependencies.gradle | 421 +-
end-to-end/README.md | 128 -
end-to-end/build.gradle | 41 -
end-to-end/gradle.properties | 25 -
end-to-end/gradle/test-config.gradle | 35 -
end-to-end/gradle/wrapper/gradle-wrapper.jar | Bin 47505 -> 0 bytes
.../gradle/wrapper/gradle-wrapper.properties | 9 -
end-to-end/gradlew | 248 -
end-to-end/gradlew.bat | 82 -
end-to-end/legacy-commands-plugin/build.gradle | 44 -
.../plugin/HelloLegacyGrailsCommand.groovy | 45 -
.../src/main/resources/META-INF/grails.factories | 15 -
.../src/main/scripts/hello-legacy-script.groovy | 24 -
end-to-end/legacy-commands/build.gradle | 98 -
.../legacy-commands/grails-app/conf/logback.xml | 31 -
.../services/legacycommands/GreetingService.groovy | 27 -
...egacyCommandCompatibilityIntegrationSpec.groovy | 236 -
end-to-end/legacy-g7-command-plugin/.sdkmanrc | 4 -
end-to-end/legacy-g7-command-plugin/build.gradle | 83 -
.../gradle/wrapper/gradle-wrapper.jar | Bin 47505 -> 0 bytes
.../gradle/wrapper/gradle-wrapper.properties | 6 -
end-to-end/legacy-g7-command-plugin/gradlew | 248 -
end-to-end/legacy-g7-command-plugin/gradlew.bat | 82 -
.../g7/commands/HelloDerivedNameCommand.groovy | 39 -
.../g7/commands/HelloG7PrecompiledCommand.groovy | 49 -
.../HelloG7PrecompiledGrailsCommand.groovy | 45 -
.../src/main/resources/META-INF/grails.factories | 1 -
end-to-end/settings.gradle | 133 -
end-to-end/taglib-index-incremental/build.gradle | 57 -
.../taglib/TagLibraryIndexIncrementalSpec.groovy | 242 -
etc/bin/Dockerfile | 28 +-
etc/bin/extract-build-artifact.sh | 6 +-
etc/bin/rename_gradle_artifacts.sh | 11 +-
etc/bin/test-bisect.groovy | 57 +-
etc/bin/test-reproducible-builds.sh | 18 +-
etc/bin/verify-jar-artifacts.sh | 14 -
etc/bin/verify-reproducible.sh | 66 +-
etc/bin/verify.sh | 20 +
gradle-bootstrap/build.gradle | 47 +-
gradle.properties | 79 +-
gradle/docs-dependencies.gradle | 110 +-
gradle/functional-test-config.gradle | 99 +-
gradle/grails-data-tck-config.gradle | 8 -
gradle/grails-extension-gradle-config.gradle | 3 +-
gradle/hibernate5-test-config.gradle | 25 +-
gradle/hibernate7-test-config.gradle | 25 +-
gradle/mongodb-forked-test-config.gradle | 21 +-
gradle/mongodb-test-config.gradle | 18 +-
gradle/publish-root-config.gradle | 19 +-
gradle/rat-root-config.gradle | 10 +-
gradle/redis-test-config.gradle | 5 +-
gradle/spring-security-test-config.gradle | 33 +-
gradle/test-config.gradle | 73 +-
gradle/wrapper/gradle-wrapper.jar | Bin 47505 -> 48462 bytes
gradle/wrapper/gradle-wrapper.properties | 2 +-
gradlew | 4 +-
gradlew.bat | 4 +-
.../async/factory/PromiseFactoryBuilder.groovy | 18 +-
.../future/CachedThreadPoolPromiseFactory.groovy | 2 -
.../factory/future/CompletableFuturePromise.groovy | 115 -
.../future/CompletableFuturePromiseFactory.groovy | 170 -
.../factory/future/ExecutorPromiseFactory.groovy | 2 -
.../async/factory/future/FutureTaskPromise.groovy | 2 -
.../CompletableFuturePromiseFactorySpec.groovy | 265 -
.../test/groovy/grails/async/PromiseMapSpec.groovy | 2 +-
.../test/groovy/grails/async/PromiseSpec.groovy | 3 +-
.../async/VirtualThreadPromiseFactorySpec.groovy | 188 -
grails-async/plugin/build.gradle | 7 +-
.../groovy/grails/async/web/AsyncController.groovy | 4 +-
.../grails/async/web/AsyncGrailsWebRequest.groovy | 2 -
.../groovy/grails/async/web/WebPromises.groovy | 84 +-
.../plugins/web/async/AsyncRequestSupport.groovy | 61 -
.../async/AsyncWebRequestPromiseDecorator.groovy | 53 +-
...WebRequestPromiseDecoratorLookupStrategy.groovy | 2 -
.../web/async/ControllersAsyncGrailsPlugin.groovy | 60 +-
.../plugins/web/async/GrailsAsyncContext.groovy | 2 -
.../web/async/GrailsWebRequestTaskDecorator.groovy | 68 -
.../async/mvc/AsyncActionResultTransformer.groovy | 98 +-
.../web/async/spring/PromiseFactoryBean.groovy | 2 -
.../grails/async/services/WebPromisesSpec.groovy | 212 +-
...equestPromiseDecoratorLookupStrategySpec.groovy | 102 -
.../AsyncWebRequestPromiseDecoratorSpec.groovy | 117 -
.../async/ControllersAsyncGrailsPluginSpec.groovy | 165 +-
.../async/GrailsWebRequestTaskDecoratorSpec.groovy | 64 -
.../mvc/AsyncActionResultTransformerSpec.groovy | 164 -
grails-beans-dsl/build.gradle | 73 -
.../compiler/beans/ConditionalOnGrailsEnv.java | 56 -
.../java/grails/compiler/beans/GrailsBeans.java | 355 -
.../beans/AutoConfigurationImportsWriter.java | 279 -
.../beans/GrailsBeansASTTransformation.java | 3319 ---------
.../compiler/beans/OnGrailsEnvCondition.java | 109 -
.../AutoConfigurationImportsWriterSpec.groovy | 355 -
.../beans/GrailsBeansASTTransformationSpec.groovy | 7371 --------------------
.../compiler/beans/OnGrailsEnvConditionSpec.groovy | 117 -
.../{neo4j => hibernate5-micronaut}/build.gradle | 68 +-
.../{neo4j => hibernate7-micronaut}/build.gradle | 68 +-
grails-bom/{neo4j => micronaut}/build.gradle | 65 +-
grails-bootstrap/build.gradle | 50 +-
.../org/grails/build/logging/ConsoleAnsi.java | 146 -
.../groovy/grails/build/logging/ConsoleLogger.java | 0
.../groovy/grails/build/logging/GrailsConsole.java | 164 +-
.../grails/build/logging/GrailsEclipseConsole.java | 0
.../CandidateListCompletionHandler.java | 0
.../build/logging/GrailsConsoleAntBuilder.java | 0
.../build/logging/GrailsConsoleBuildListener.java | 0
.../logging/GrailsConsoleErrorPrintStream.java | 0
.../build/logging/GrailsConsolePrintStream.java | 0
.../org/grails/io/watch/DirectoryWatcher.java | 74 +-
.../build/logging/GrailsConsoleLoggingSpec.groovy | 122 -
.../grails/build/logging/GrailsConsoleSpec.groovy | 298 -
.../logging/GrailsConsoleCompleterSpec.groovy | 0
.../grails/build/logging/GrailsConsoleSpec.groovy | 109 +
.../CandidateListCompletionHandlerSpec.groovy | 0
.../grails/io/watch/DirectoryWatcherSpec.groovy | 253 -
grails-cache/build.gradle | 7 -
.../grails/plugin/cache/CacheGrailsPlugin.groovy | 99 +-
.../cache/GrailsCacheAutoConfiguration.groovy | 69 +
...ata.json => spring-configuration-metadata.json} | 0
...rk.boot.autoconfigure.AutoConfiguration.imports | 2 +-
.../plugin/cache/CacheGrailsPluginSpec.groovy | 73 +
...ovy => GrailsCacheAutoConfigurationSpec.groovy} | 87 +-
.../codecs/Base64CodecExtensionMethods.groovy | 14 +-
.../org/grails/plugins/codecs/DigestUtils.groovy | 85 +-
.../plugins/codecs/HexCodecExtensionMethods.groovy | 52 +-
.../codecs/MD5BytesCodecExtensionMethods.groovy | 7 +-
.../plugins/codecs/MD5CodecExtensionMethods.groovy | 10 +-
.../codecs/SHA1BytesCodecExtensionMethods.groovy | 7 +-
.../codecs/SHA1CodecExtensionMethods.groovy | 9 +-
.../codecs/SHA256BytesCodecExtensionMethods.groovy | 7 +-
.../codecs/SHA256CodecExtensionMethods.groovy | 9 +-
.../org/grails/web/codecs/Base64CodecTests.groovy | 12 -
.../org/grails/web/codecs/HexCodecTests.groovy | 24 +-
grails-codecs/build.gradle | 4 +-
.../grails/plugins/codecs/CodecsConfiguration.java | 6 +-
.../plugins/codecs/CodecsConfigurationSpec.groovy | 48 -
.../grails/common/aot/AheadOfTimeProcessing.java | 54 -
.../apache/grails/common/aot/RegistrableTypes.java | 251 -
.../common/compiler/GroovyTransformOrder.groovy | 15 +-
.../grails/common/reflect/ReflectionUtils.java | 196 -
.../grails/common/aot/RegistrableTypesSpec.groovy | 194 -
.../common/reflect/ReflectionUtilsSpec.groovy | 174 -
.../common/reflect/beans/PublicCovariantBase.java | 25 -
.../grails/common/reflect/beans/PublicThing.java | 25 -
.../grails/common/reflect/beans/ThingFactory.java | 106 -
.../ConfigurationMetadataTransformation.groovy | 349 -
...org.codehaus.groovy.transform.ASTTransformation | 1 -
.../ConfigurationMetadataTransformationSpec.groovy | 700 --
grails-console/build.gradle | 3 +-
.../GrailsApplicationContextCommandRunner.groovy | 52 +-
.../ui/script/GrailsApplicationScriptRunner.groovy | 3 +-
...railsApplicationContextCommandRunnerSpec.groovy | 100 -
grails-controllers/build.gradle | 4 +-
.../main/groovy/grails/artefact/Controller.groovy | 77 +-
.../controller/support/AllowedMethodsHelper.groovy | 6 +-
.../controller/support/RequestForwarder.groovy | 2 +-
.../controller/support/ResponseRedirector.groovy | 2 +-
.../controller/support/ResponseRenderer.groovy | 22 +-
.../controllers/aot/ControllerRuntimeHints.java | 92 -
.../compiler/web/ControllerActionTransformer.java | 219 +-
.../controllers/ControllersAutoConfiguration.java | 50 +-
.../GrailsControllersEnvironmentPostProcessor.java | 60 -
...ilsHiddenHttpMethodFilterAutoConfiguration.java | 74 -
.../api/ControllersDomainBindingApi.java | 73 +-
.../src/main/resources/META-INF/spring.factories | 4 +-
.../main/resources/META-INF/spring/aot.factories | 2 -
...rk.boot.autoconfigure.AutoConfiguration.imports | 1 -
.../grails/artefact/ControllerRedirectSpec.groovy | 230 -
.../support/AllowedMethodsHelperSpec.groovy | 2 +-
.../controller/support/ResponseRendererSpec.groovy | 107 -
.../aot/ControllerRuntimeHintsSpec.groovy | 84 -
...tionTransformerSerializableParameterSpec.groovy | 171 -
.../ControllersAutoConfigurationSpec.groovy | 133 +-
...sControllersEnvironmentPostProcessorSpec.groovy | 55 -
...denHttpMethodFilterAutoConfigurationSpec.groovy | 148 -
.../api/ControllersDomainBindingApiSpec.groovy | 147 -
grails-converters/build.gradle | 9 +-
.../marshaller/json/GenericJavaBeanMarshaller.java | 9 +-
.../marshaller/json/GroovyBeanMarshaller.java | 8 +-
.../marshaller/xml/GenericJavaBeanMarshaller.java | 11 +-
.../marshaller/xml/GroovyBeanMarshaller.java | 8 +-
.../groovy/grails/converters/XMLParseSpec.groovy | 73 -
.../beans/DynamicGroovyPersonFactory.groovy | 41 -
.../converters/beans/GroovyPersonFactory.groovy | 81 -
.../web/converters/beans/HiddenCovariantBase.java | 28 -
.../converters/beans/HiddenCovariantJavaBean.java | 38 -
.../web/converters/beans/JavaPersonFactory.java | 92 -
.../PackagePrivateStandaloneGroovyBean.groovy | 41 -
.../beans/PackagePrivateStandaloneJavaBean.java | 36 -
.../grails/web/converters/beans/PublicPerson.java | 35 -
.../json/NonPublicClassMarshallingSpec.groovy | 314 -
.../xml/NonPublicClassMarshallingSpec.groovy | 322 -
grails-core-cli-legacy/build.gradle | 69 -
.../grails/dev/commands/ApplicationCommand.groovy | 77 -
.../grails/dev/commands/ExecutionContext.groovy | 55 -
.../dev/commands/GrailsApplicationCommand.groovy | 50 -
.../dev/commands/io/FileSystemInteraction.groovy | 146 -
.../commands/io/FileSystemInteractionImpl.groovy | 284 -
.../dev/commands/template/TemplateException.groovy | 32 -
.../dev/commands/template/TemplateRenderer.groovy | 174 -
.../commands/template/TemplateRendererImpl.groovy | 235 -
.../compat/LegacyApplicationCommandAdapter.groovy | 90 -
.../compat/LegacyApplicationCommandProvider.groovy | 163 -
.../cli/LegacyCommandRegistryLoadingSpec.groovy | 601 --
.../LegacyApplicationCommandAdapterSpec.groovy | 107 -
grails-core/build.gradle | 40 +-
.../core/cli/ApplicationCommandDiagnostics.groovy | 87 -
.../core/cli/ApplicationCommandProvider.groovy | 32 -
.../core/cli/ApplicationCommandRegistrar.groovy | 32 -
.../core/cli/ApplicationCommandTargetAware.groovy | 29 -
.../cli/ApplicationContextCommandRegistry.groovy | 216 +-
.../compiler/CommandFactoriesTransformation.groovy | 14 +-
.../core/cli/template/TemplateRendererImpl.groovy | 3 +-
.../main/groovy/grails/boot/GrailsBanner.groovy | 446 +-
.../config/GrailsApplicationPostProcessor.groovy | 55 +-
.../boot/config/GrailsAutoConfiguration.groovy | 69 +-
...GrailsEarlyPluginRegistrationPostProcessor.java | 39 +-
.../config/GrailsEnvironmentPostProcessor.java | 18 -
.../boot/config/tools/ClassPathScanner.groovy | 2 +-
.../src/main/groovy/grails/config/Settings.groovy | 56 +-
.../PersistenceContextInterceptorExecutor.groovy | 3 +-
.../grails/util/AbstractTypeConvertingMap.java | 17 -
.../src/main/groovy/grails/util/GrailsUtil.java | 42 +-
.../core/GrailsBootstrapRegistryInitializer.java | 139 -
.../aot/AbstractBeanDefinitionExcludeFilter.java | 48 -
...assesBeanFactoryInitializationAotProcessor.java | 155 -
.../AutowireModeBeanRegistrationAotProcessor.java | 92 -
.../grails/core/aot/BeanRegistrarRuntimeHints.java | 73 -
.../grails/core/aot/GrailsApiRuntimeHints.java | 90 -
.../grails/core/aot/GrailsBannerRuntimeHints.java | 70 -
.../grails/core/aot/GrailsClosureRuntimeHints.java | 156 -
.../core/aot/GrailsResourceRuntimeHints.java | 99 -
.../aot/GroovyExtensionModuleRuntimeHints.java | 152 -
.../aot/VarargsBeanRegistrationAotProcessor.java | 193 -
.../core/plugins/DefaultPluginDiscovery.java | 57 +-
.../apache/grails/core/plugins/PluginUtils.java | 2 -
.../TagLibraryInvokerTypeCheckingExtension.groovy | 7 -
.../injection/ArtefactTypeAstTransformation.java | 25 +-
.../DefaultGrailsDomainClassInjector.java | 7 -
.../injection/EntityASTTransformation.java | 20 +-
.../GlobalGrailsClassInjectorTransformation.groovy | 815 +--
.../injection/GrailsAwareInjectionOperation.java | 2 -
.../core/exceptions/DefaultErrorsPrinter.groovy | 9 +-
.../org/grails/core/io/MockFileResource.java | 0
.../org/grails/core/io/MockResourceLoader.java | 0
.../grails/core/io/MockStringResourceLoader.java | 0
.../core/io/support/GrailsFactoriesLoader.groovy | 54 -
.../org/grails/plugins/CoreGrailsPlugin.groovy | 240 +-
.../grails/plugins/MockGrailsPluginManager.java | 0
.../org/grails/plugins/MockPluginDiscovery.java | 0
.../plugins/ProfilingGrailsPluginManager.java | 38 +-
.../grails/plugins/core/CoreAutoConfiguration.java | 69 +
.../org/grails/plugins/support/WatchPattern.groovy | 3 +-
.../autoproxy/GroovyAwareAutoProxyCreators.java | 83 -
.../AbstractResourceLocatorPostProcessor.java | 98 -
...sIgnoringComponentScanBeanDefinitionParser.java | 170 +-
.../GrailsComponentScanPostProcessor.java | 95 -
.../support/GrailsPlaceholderConfigurer.java | 14 +-
.../PluginAwareResourceBundleMessageSource.java | 308 +
.../ReloadableResourceBundleMessageSource.java | 735 ++
.../transaction/GrailsTransactionAttribute.java | 54 +-
.../grails/transaction/MultiTransactionStatus.java | 2 +-
.../additional-spring-configuration-metadata.json | 522 +-
.../grails-core/native-image.properties | 30 -
...ata.json => spring-configuration-metadata.json} | 136 +-
.../main/resources/META-INF/spring/aot.factories | 17 -
...rk.boot.autoconfigure.AutoConfiguration.imports | 2 +-
.../core/cli/ApplicationCommandProviderSpec.groovy | 822 ---
.../grails/boot/GrailsBannerColourSpec.groovy | 156 -
.../grails/boot/GrailsBannerNativeMarkSpec.groovy | 225 -
.../boot/GrailsBannerVersionLookupSpec.groovy | 226 -
.../EarlyPluginRegistrationOrderingSpec.groovy | 87 +-
...icationPostProcessorAnnotationConfigSpec.groovy | 98 -
.../GrailsAutoConfigurationArtefactsSpec.groovy | 79 -
.../GrailsEnvironmentPostProcessorSpec.groovy | 19 -
...tGrailsPluginManagerRegistryContractSpec.groovy | 152 -
.../plugins/DefaultGrailsPluginManagerSpec.groovy | 140 +-
...aceHolderConfigurerCorePluginRuntimeSpec.groovy | 73 +
.../grails/util/ActiveProcessorCountForkTests.java | 58 -
.../grails/util/GrailsUtilStackFiltererSpec.groovy | 163 -
.../GrailsBootstrapRegistryInitializerSpec.groovy | 295 -
.../AbstractBeanDefinitionExcludeFilterSpec.groovy | 79 -
...eanFactoryInitializationAotProcessorSpec.groovy | 163 -
...wireModeBeanRegistrationAotProcessorSpec.groovy | 70 -
.../core/aot/BeanRegistrarRuntimeHintsSpec.groovy | 85 -
.../core/aot/GrailsApiRuntimeHintsSpec.groovy | 88 -
.../core/aot/GrailsBannerRuntimeHintsSpec.groovy | 79 -
.../core/aot/GrailsClosureRuntimeHintsSpec.groovy | 101 -
.../core/aot/GrailsResourceRuntimeHintsSpec.groovy | 100 -
.../GroovyExtensionModuleRuntimeHintsSpec.groovy | 115 -
.../VarargsBeanRegistrationAotProcessorSpec.groovy | 162 -
.../grails/core/cli/ConfigReportCommandSpec.groovy | 0
.../CommandFactoriesTransformationSpec.groovy | 16 -
.../grails/core/plugins/PluginDiscoverySpec.groovy | 276 +-
.../DefaultDomainClassInjectorSpec.groovy | 16 -
...balGrailsClassInjectorTransformationSpec.groovy | 1085 +--
.../reporting/StackTraceFiltererSpec.groovy | 95 +-
.../plugins/CoreAutoConfigurationSpec.groovy | 199 -
.../grails/plugins/CoreGrailsPluginAotSpec.groovy | 186 -
.../plugins/CoreGrailsPluginRegistrarSpec.groovy | 291 -
.../ProfilingGrailsPluginManagerSpec.groovy | 161 -
.../grails/plugins/SpringBeanPackagesSpec.groovy | 86 -
.../GroovyAwareAutoProxyCreatorsSpec.groovy | 90 -
...AbstractResourceLocatorPostProcessorSpec.groovy | 109 -
.../context/ResourceBundleMessageSourceSpec.groovy | 67 +
.../GrailsTransactionAttributeSpec.groovy | 289 -
.../org/grails/util/TypeConvertingMapTests.groovy | 15 -
.../grails/boot/version-in-a-resource.properties | 5 -
grails-core/src/test/resources/logback-test.xml | 22 -
.../grails/core/testing/support/LogCapture.groovy | 99 -
grails-data-docs/stage/build.gradle | 11 +-
grails-data-graphql/core/build.gradle | 2 -
.../grails/gorm/graphql/GraphQLEntityHelper.groovy | 4 +-
.../groovy/org/grails/gorm/graphql/Schema.groovy | 6 +-
.../gorm/graphql/entity/EntityFetchOptions.java | 41 +-
.../graphql/entity/arguments/CustomArgument.groovy | 9 +-
.../gorm/graphql/entity/dsl/GraphQLMapping.groovy | 27 +-
.../graphql/entity/dsl/helpers/Arguable.groovy | 4 +-
.../graphql/entity/dsl/helpers/ComplexTyped.groovy | 16 +-
.../entity/operations/CustomOperation.groovy | 12 +-
.../property/impl/PersistentGraphQLProperty.groovy | 52 +-
.../DefaultGraphQLDomainPropertyManager.groovy | 2 +-
.../fetcher/impl/CountEntityDataFetcher.groovy | 8 +-
.../gorm/graphql/testing/GraphQLSchemaSpec.groovy | 0
.../testing/MockDataFetchingEnvironment.groovy | 0
.../gorm/graphql/MongoSchemaSpec.groovy.disabled | 122 +
.../org/grails/gorm/graphql/SchemaSpec.groovy | 16 +-
.../binding/DataBinderNotFoundExceptionSpec.groovy | 41 -
.../graphql/entity/EntityFetchOptionsSpec.groovy | 105 -
.../entity/arguments/SimpleArgumentSpec.groovy | 89 -
.../graphql/entity/dsl/GraphQLMappingSpec.groovy | 35 +-
.../entity/dsl/helpers/ComplexTypedSpec.groovy | 69 -
.../HibernatePersistentGraphQLPropertySpec.groovy | 18 +-
.../DataFetcherNotFoundExceptionSpec.groovy | 43 -
.../fetcher/impl/ClosureDataFetcherSpec.groovy | 40 +-
.../impl/ClosureDataFetchingEnvironmentSpec.groovy | 75 -
.../fetcher/impl/CountEntityDataFetcherSpec.groovy | 61 -
.../impl/PaginatedEntityDataFetcherSpec.groovy | 87 -
.../impl/PersistentPropertyDataFetcherSpec.groovy | 43 -
.../CustomMutationInterceptorInvokerSpec.groovy | 38 -
.../CustomQueryInterceptorInvokerSpec.groovy | 38 -
.../MutationInterceptorInvokerSpec.groovy | 28 +-
.../interceptor/QueryInterceptorInvokerSpec.groovy | 28 +-
.../CachingGraphQLResponseHandlerSpec.groovy | 54 -
.../DefaultGraphQLErrorsResponseHandlerSpec.groovy | 19 -
.../gorm/graphql/types/KeyClassQuerySpec.groovy | 81 -
.../EmbeddedInputObjectTypeBuilderSpec.groovy | 2 +-
.../scalars/coercing/CurrencyCoercionSpec.groovy | 83 -
.../types/scalars/coercing/DateCoercionSpec.groovy | 119 -
.../scalars/coercing/SqlDateCoercionSpec.groovy | 110 -
.../types/scalars/coercing/TimeCoercionSpec.groovy | 102 -
.../scalars/coercing/TimeZoneCoercionSpec.groovy | 78 -
.../scalars/coercing/TimestampCoercionSpec.groovy | 102 -
.../types/scalars/coercing/URICoercionSpec.groovy | 91 -
.../types/scalars/coercing/URLCoercionSpec.groovy | 91 -
.../types/scalars/coercing/UUIDCoercionSpec.groovy | 97 -
.../coercing/jsr310/InstantCoercionSpec.groovy | 96 -
.../coercing/jsr310/LocalDateCoercionSpec.groovy | 101 -
.../jsr310/LocalDateTimeCoercionSpec.groovy | 93 -
.../coercing/jsr310/LocalTimeCoercionSpec.groovy | 93 -
.../jsr310/OffsetDateTimeCoercionSpec.groovy | 94 -
.../coercing/jsr310/OffsetTimeCoercionSpec.groovy | 94 -
.../jsr310/ZonedDateTimeCoercionSpec.groovy | 94 -
grails-data-graphql/plugin/build.gradle | 4 -
grails-data-hibernate5/core/build.gradle | 5 +-
.../AbstractHibernateGormInstanceApi.groovy | 192 +-
.../AbstractHibernateGormStaticApi.groovy | 14 +-
.../orm/hibernate/HibernateGormApiFactory.groovy | 2 +-
.../orm/hibernate/HibernateGormEnhancer.groovy | 5 +-
.../orm/hibernate/HibernateGormStaticApi.groovy | 115 +-
.../org/grails/orm/hibernate/HibernateSession.java | 11 +-
.../orm/hibernate/cfg/GrailsHibernateUtil.java | 19 +-
.../hibernate/cfg/HibernateMappingBuilder.groovy | 6 +-
.../orm/hibernate/cfg/HibernateMappingContext.java | 1 -
.../cfg/HibernateMappingContextConfiguration.java | 55 +-
.../compiler/HibernateEntityTransformation.groovy | 5 +-
.../HibernateConnectionSourceFactory.java | 13 +-
.../HibernateConnectionSourceSettings.groovy | 2 +-
.../query/AbstractHibernateCriteriaBuilder.java | 9 +-
.../hibernate/query/GrailsHibernateQueryUtils.java | 32 +-
.../hibernate/support/HibernateRuntimeUtils.groovy | 3 +-
...ata.json => spring-configuration-metadata.json} | 0
.../tests/Hibernate5JoinedLockDialectSpec.groovy | 192 -
.../gorm/tests/Hibernate5RefreshLockSpec.groovy | 1945 ------
.../gorm/tests/SortArgumentValidationSpec.groovy | 206 -
.../HibernateDatastoreMultiTenancySpec.groovy | 48 -
...HibernateMappingContextConfigurationSpec.groovy | 263 -
.../cfg/HibernateMappingContextSpec.groovy | 84 +-
.../HibernateConnectionSourceFactorySpec.groovy | 145 -
.../MultipleDataSourceConnectionsSpec.groovy | 43 -
grails-data-hibernate5/dbmigration/build.gradle | 6 -
.../databasemigration/DbUpdateCommandSpec.groovy | 0
.../DatabaseMigrationGrailsPlugin.groovy | 2 +-
...ata.json => spring-configuration-metadata.json} | 0
...ationContextDatabaseMigrationCommandSpec.groovy | 9 -
.../cli/DatabaseMigrationCommandConfigSpec.groovy | 0
.../cli/DatabaseMigrationCommandSpec.groovy | 0
.../cli/DbmChangelogSyncCommandSpec.groovy | 0
.../cli/DbmChangelogSyncCommandSqlSpec.groovy | 0
.../cli/DbmClearChecksumsCommandSpec.groovy | 0
.../dbmigration/cli/DbmDiffCommandSpec.groovy | 0
.../dbmigration/cli/DbmDropAllCommandSpec.groovy | 0
.../DbmFutureRollbackCountSqlCommandSpec.groovy | 0
.../cli/DbmFutureRollbackSqlCommandSpec.groovy | 0
.../cli/DbmGenerateChangelogCommandSpec.groovy | 0
.../cli/DbmGenerateGormChangelogCommandSpec.groovy | 0
.../dbmigration/cli/DbmGormDiffCommandSpec.groovy | 0
.../dbmigration/cli/DbmListLocksCommandSpec.groovy | 0
.../cli/DbmMarkNextChangesetRanCommandSpec.groovy | 0
.../DbmMarkNextChangesetRanSqlCommandSpec.groovy | 0
.../cli/DbmPreviousChangesetSqlCommandSpec.groovy | 0
.../cli/DbmReleaseLocksCommandSpec.groovy | 0
.../dbmigration/cli/DbmRollbackCommandSpec.groovy | 0
.../cli/DbmRollbackCountCommandSpec.groovy | 0
.../cli/DbmRollbackCountSqlCommandSpec.groovy | 0
.../cli/DbmRollbackSqlCommandSpec.groovy | 0
.../cli/DbmRollbackToDateCommandSpec.groovy | 0
.../cli/DbmRollbackToDateSqlCommandSpec.groovy | 0
.../dbmigration/cli/DbmStatusCommandSpec.groovy | 0
.../dbmigration/cli/DbmUpdateCommandSpec.groovy | 0
.../cli/DbmUpdateCountCommandSpec.groovy | 0
.../cli/DbmUpdateCountSqlCommandSpec.groovy | 0
.../dbmigration/cli/DbmUpdateSqlCommandSpec.groovy | 0
.../dbmigration/cli/DbmValidateCommandSpec.groovy | 0
.../cli/ScriptDatabaseMigrationCommandSpec.groovy | 0
.../liquibase/GroovyChangeLogSpec.groovy | 0
.../liquibase/GroovyPreconditionSpec.groovy | 0
grails-data-hibernate5/docs/build.gradle | 1 +
.../multipleDataSources/dataSourceNamespaces.adoc | 13 -
.../docs/asciidoc/persistenceBasics/locking.adoc | 159 +-
.../docs/src/docs/asciidoc/querying/finders.adoc | 2 -
grails-data-hibernate5/grails-plugin/build.gradle | 7 +-
.../data/hibernate5/cli/SchemaExportCommand.groovy | 23 +-
.../HibernateDatastoreSpringInitializer.groovy | 10 +-
.../plugin/hibernate/HibernateGrailsPlugin.groovy | 4 +-
.../commands/SchemaExportCommandSpec.groovy | 140 -
grails-data-hibernate7/core/build.gradle | 5 +-
.../groovy/grails/orm/CriteriaMethodInvoker.java | 17 +-
.../orm/hibernate/EventListenerIntegrator.java | 68 +-
.../orm/hibernate/HibernateGormEnhancer.groovy | 2 +-
.../orm/hibernate/HibernateGormInstanceApi.groovy | 118 +-
.../orm/hibernate/HibernateGormStaticApi.groovy | 135 +-
.../org/grails/orm/hibernate/HibernateSession.java | 11 +-
.../orm/hibernate/cfg/HibernateMappingContext.java | 1 -
.../cfg/HibernateMappingContextConfiguration.java | 46 +-
.../cfg/domainbinding/binder/ColumnBinder.java | 8 +-
.../cfg/domainbinding/binder/EnumTypeBinder.java | 59 +-
.../domainbinding/binder/GrailsPropertyBinder.java | 6 +-
.../binder/NumericColumnConstraintsBinder.java | 36 +-
.../cfg/domainbinding/binder/PropertyBinder.java | 8 +-
.../domainbinding/binder/SimpleValueBinder.java | 5 +-
.../binder/StringColumnConstraintsBinder.java | 20 +-
.../generator/GrailsSequenceStyleGenerator.java | 24 -
.../hibernate/HibernateBasicEnumProperty.java | 80 -
.../hibernate/HibernateEnumProperty.java | 47 +-
.../hibernate/HibernateMappingFactory.groovy | 11 +-
.../hibernate/HibernateToManyProperty.java | 72 +-
.../secondpass/BasicCollectionElementBinder.java | 9 +-
.../domainbinding/util/CascadeBehaviorFetcher.java | 25 +-
.../cfg/domainbinding/util/GrailsEnumType.java | 40 +-
.../domainbinding/util/TableForManyCalculator.java | 5 +-
.../compiler/HibernateEntityTransformation.groovy | 5 +-
.../HibernateConnectionSourceSettings.groovy | 8 +-
.../orm/hibernate/query/HqlListQueryBuilder.java | 40 +-
.../support/ClosureEventTriggeringInterceptor.java | 96 -
...rnateDatastoreConnectionSourcesRegistrar.groovy | 7 +-
...ata.json => spring-configuration-metadata.json} | 0
.../grails/gorm/tests/EnumHasManyDdlSpec.groovy | 248 -
.../gorm/tests/Hibernate7RefreshLockSpec.groovy | 1926 -----
.../gorm/tests/HibernateMappingFactorySpec.groovy | 7 +-
.../groovy/grails/gorm/tests/Issue16349Spec.groovy | 228 -
.../grails/gorm/tests/RLikeHibernate7Spec.groovy | 9 +-
.../gorm/tests/SortArgumentValidationSpec.groovy | 389 --
.../tests/hibernatequery/HibernateQuerySpec.groovy | 41 -
.../grails/orm/CriteriaMethodInvokerSpec.groovy | 45 -
.../hibernate/EventListenerIntegratorSpec.groovy | 111 -
.../GormNumericTypeColumnIntegrationSpec.groovy | 101 -
.../GormNumericTypeColumnPrecisionSpec.groovy | 108 -
.../GormTextTypeColumnIntegrationSpec.groovy | 105 -
.../hibernate/GormTextTypeColumnLengthSpec.groovy | 99 -
.../HibernateDatastoreMultiTenancySpec.groovy | 48 -
.../hibernate/HibernateGormInstanceApiSpec.groovy | 60 +-
.../cfg/GrailsHibernatePersistentEntitySpec.groovy | 3 -
...HibernateMappingContextConfigurationSpec.groovy | 157 -
.../cfg/HibernateMappingContextSpec.groovy | 131 +-
.../cfg/domainbinding/ColumnBinderSpec.groovy | 36 +-
.../cfg/domainbinding/EnumTypeBinderSpec.groovy | 52 +-
.../domainbinding/GrailsPropertyBinderSpec.groovy | 68 -
.../NumericColumnConstraintsBinderSpec.groovy | 85 +-
.../cfg/domainbinding/PropertyBinderSpec.groovy | 28 +-
.../domainbinding/SequenceGeneratorsSpec.groovy | 45 -
.../cfg/domainbinding/SimpleValueBinderSpec.groovy | 70 +-
.../StringColumnConstraintsBinderSpec.groovy | 78 +-
.../TableForManyCalculatorSpec.groovy | 25 -
.../GrailsSequenceStyleGeneratorSpec.groovy | 89 +-
.../hibernate/HibernateBasicPropertySpec.groovy | 40 +-
.../hibernate/HibernateToManyPropertySpec.groovy | 104 +-
.../BasicCollectionElementBinderSpec.groovy | 11 +-
...rnateConnectionSourceSettingsBuilderSpec.groovy | 14 -
.../HibernateConnectionSourceSettingsSpec.groovy | 23 +-
.../MultipleDataSourceConnectionsSpec.groovy | 43 -
.../hibernate/query/HqlListQueryBuilderSpec.groovy | 125 -
.../ClosureEventTriggeringInterceptorSpec.groovy | 117 -
...eDatastoreConnectionSourcesRegistrarSpec.groovy | 20 +-
grails-data-hibernate7/dbmigration/build.gradle | 8 +-
.../databasemigration/DbUpdateCommandSpec.groovy | 0
...ata.json => spring-configuration-metadata.json} | 0
...ationContextDatabaseMigrationCommandSpec.groovy | 4 -
.../cli/DatabaseMigrationCommandConfigSpec.groovy | 0
.../cli/DatabaseMigrationCommandSpec.groovy | 0
.../cli/DbmChangelogSyncCommandSpec.groovy | 0
.../cli/DbmChangelogSyncCommandSqlSpec.groovy | 0
.../cli/DbmClearChecksumsCommandSpec.groovy | 0
.../dbmigration/cli/DbmDiffCommandSpec.groovy | 0
.../dbmigration/cli/DbmDropAllCommandSpec.groovy | 0
.../DbmFutureRollbackCountSqlCommandSpec.groovy | 0
.../cli/DbmFutureRollbackSqlCommandSpec.groovy | 0
.../cli/DbmGenerateChangelogCommandSpec.groovy | 0
.../cli/DbmGenerateGormChangelogCommandSpec.groovy | 0
.../dbmigration/cli/DbmGormDiffCommandSpec.groovy | 0
.../dbmigration/cli/DbmListLocksCommandSpec.groovy | 0
.../cli/DbmMarkNextChangesetRanCommandSpec.groovy | 0
.../DbmMarkNextChangesetRanSqlCommandSpec.groovy | 0
.../cli/DbmPreviousChangesetSqlCommandSpec.groovy | 0
.../cli/DbmReleaseLocksCommandSpec.groovy | 0
.../dbmigration/cli/DbmRollbackCommandSpec.groovy | 0
.../cli/DbmRollbackCountCommandSpec.groovy | 0
.../cli/DbmRollbackCountSqlCommandSpec.groovy | 0
.../cli/DbmRollbackSqlCommandSpec.groovy | 0
.../cli/DbmRollbackToDateCommandSpec.groovy | 0
.../cli/DbmRollbackToDateSqlCommandSpec.groovy | 0
.../dbmigration/cli/DbmStatusCommandSpec.groovy | 0
.../dbmigration/cli/DbmUpdateCommandSpec.groovy | 0
.../cli/DbmUpdateCountCommandSpec.groovy | 0
.../cli/DbmUpdateCountSqlCommandSpec.groovy | 0
.../dbmigration/cli/DbmUpdateSqlCommandSpec.groovy | 0
.../dbmigration/cli/DbmValidateCommandSpec.groovy | 0
.../cli/ScriptDatabaseMigrationCommandSpec.groovy | 0
.../liquibase/GroovyChangeLogSpec.groovy | 0
.../liquibase/GroovyPreconditionSpec.groovy | 0
grails-data-hibernate7/docs/build.gradle | 1 +
.../eventsAutoTimestamping.adoc | 6 -
.../ormdsl/customNamingStrategy.adoc | 4 -
.../ormdsl/optimisticLockingAndVersioning.adoc | 4 +-
.../asciidoc/gettingStarted/hibernateVersions.adoc | 12 +
.../multipleDataSources/dataSourceNamespaces.adoc | 13 -
.../docs/asciidoc/persistenceBasics/locking.adoc | 136 +-
.../docs/src/docs/asciidoc/querying/finders.adoc | 2 -
grails-data-hibernate7/grails-plugin/build.gradle | 6 -
.../data/hibernate7/cli/SchemaExportCommand.groovy | 23 +-
.../HibernateDatastoreSpringInitializer.groovy | 10 +-
.../commands/SchemaExportCommandSpec.groovy | 140 -
grails-data-mongodb/boot-plugin/build.gradle | 5 +-
.../MongoDbGormAutoConfiguration.groovy | 32 +-
.../MongoDbGormAutoConfigurationCloseSpec.groovy | 114 +-
.../encoders/BasicCollectionTypeEncoder.groovy | 3 +-
.../grails/datastore/bson/json/JsonScanner.java | 5 +-
.../org/grails/datastore/bson/query/BsonQuery.java | 126 +-
.../codecs/CodecCustomTypeMarshallerSpec.groovy | 79 -
.../bson/codecs/CodecExtensionsSpec.groovy | 450 --
.../datastore/bson/codecs/SimpleCodecsSpec.groovy | 256 -
.../decoders/BasicCollectionTypeDecoderSpec.groovy | 155 -
.../codecs/decoders/CustomTypeDecoderSpec.groovy | 146 -
.../decoders/EmbeddedCollectionDecoderSpec.groovy | 148 -
.../codecs/decoders/EmbeddedDecoderSpec.groovy | 120 -
.../codecs/decoders/IdentityDecoderSpec.groovy | 120 -
.../bson/codecs/decoders/SimpleDecoderSpec.groovy | 158 -
.../decoders/TemporalTypeDecodersSpec.groovy | 64 -
.../codecs/decoders/TenantIdDecoderSpec.groovy | 91 -
.../datastore/bson/codecs/domain/Profile.groovy | 36 -
.../encoders/BasicCollectionTypeEncoderSpec.groovy | 179 -
.../codecs/encoders/CustomTypeEncoderSpec.groovy | 116 -
.../encoders/EmbeddedCollectionEncoderSpec.groovy | 213 -
.../codecs/encoders/EmbeddedEncoderSpec.groovy | 153 -
.../codecs/encoders/IdentityEncoderSpec.groovy | 215 -
.../bson/codecs/encoders/SimpleEncoderSpec.groovy | 189 -
.../encoders/TemporalTypeEncodersSpec.groovy | 70 -
.../codecs/encoders/TenantIdEncoderSpec.groovy | 65 -
.../datastore/bson/json/JsonReaderSpec.groovy | 457 --
.../datastore/bson/json/JsonWriterSpec.groovy | 342 -
.../datastore/bson/query/BsonQuerySpec.groovy | 217 +-
grails-data-mongodb/core/build.gradle | 14 +-
.../main/groovy/grails/mongodb/MongoEntity.groovy | 6 +-
.../MongoDbDataStoreSpringInitializer.groovy | 29 +-
.../gorm/mongo/MongoEntityTraitProvider.groovy | 15 -
.../gorm/mongo/MongoGormApiFactory.groovy | 4 +-
.../datastore/gorm/mongo/MongoGormEnhancer.groovy | 4 +-
.../datastore/gorm/mongo/api/MongoStaticApi.groovy | 25 +-
.../datastore/gorm/mongo/simple/EnumType.groovy | 3 +-
.../mapping/mongo/AbstractMongoSession.java | 14 +-
.../mapping/mongo/MongoCodecSession.groovy | 105 +-
.../datastore/mapping/mongo/MongoDatastore.java | 1011 +--
.../datastore/mapping/mongo/MongoSession.java | 148 +-
.../datastore/mapping/mongo/MongoTransaction.java | 11 +-
.../mapping/mongo/config/MongoMappingContext.java | 47 +-
.../mapping/mongo/config/MongoSettings.groovy | 48 +-
.../AbstractMongoConnectionSourceSettings.groovy | 22 -
.../mongo/connections/MongoConnectionSource.groovy | 100 -
.../MongoConnectionSourceFactory.groovy | 9 +-
.../mongo/connections/StringIdSettings.groovy | 2 +-
.../engine/AbstractMongoObectEntityPersister.java | 36 +-
.../mapping/mongo/engine/MongoEntityPersister.java | 18 +-
.../mapping/mongo/engine/MongoIdCoercion.java | 24 -
.../engine/codecs/PersistentEntityCodec.groovy | 39 +-
.../datastore/mapping/mongo/query/MongoQuery.java | 73 +-
...toreSpringInitializerBeanDefinitionsSpec.groovy | 85 -
.../groovy/grails/mongodb/geo/DistanceSpec.groovy | 63 -
.../mongo/core/GrailsDataMongoTckManager.groovy | 34 +-
.../core/GrailsDataMongoTckManagerSpec.groovy | 71 -
.../mongo/BrokenManyToManyAssociationSpec.groovy | 3 +-
.../gorm/mongo/BuildIndexesAsyncSpec.groovy | 247 -
.../mongo/BuildIndexesBackgroundFailureSpec.groovy | 198 -
.../BuildIndexesClassificationCostSpec.groovy | 168 -
.../gorm/mongo/BuildIndexesDisabledSpec.groovy | 110 -
.../mongo/BuildIndexesEnabledByDefaultSpec.groovy | 77 -
.../mongo/BuildIndexesFailureSummarySpec.groovy | 135 -
.../gorm/mongo/BuildIndexesHookSpec.groovy | 141 -
.../gorm/mongo/BuildIndexesKeyOrderSpec.groovy | 93 -
.../gorm/mongo/BuildIndexesLifecycleSpec.groovy | 326 -
.../gorm/mongo/BuildIndexesNameConflictSpec.groovy | 132 -
.../gorm/mongo/BuildIndexesOnDemandSpec.groovy | 191 -
.../BuildIndexesPartialClassificationSpec.groovy | 141 -
.../mongo/BuildIndexesRecreateSummarySpec.groovy | 95 -
.../mongo/BuildIndexesStaleSnapshotSpec.groovy | 124 -
.../gorm/mongo/BuildIndexesSummaryLogSpec.groovy | 137 -
.../mongo/BuildIndexesUnfinishedSummarySpec.groovy | 143 -
.../BuildIndexesUnreadableIndexListSpec.groovy | 136 -
.../grails/datastore/gorm/mongo/CapturedLog.groovy | 70 -
.../EmbeddedCollectionDirtyTrackingSpec.groovy | 159 -
.../EmbeddedWithNonEmbeddedCollectionsSpec.groovy | 9 +-
.../datastore/gorm/mongo/FailingMongoClient.groovy | 84 -
.../mongo/HasManyReassignDirtyTrackingSpec.groovy | 83 -
.../gorm/mongo/MapCriterionValueSpec.groovy | 128 -
.../gorm/mongo/MongoEntityIdentityTypeSpec.groovy | 129 -
.../gorm/mongo/MultipleConnectionsSpec.groovy | 205 +-
.../mongo/PortableIdentityPersistenceSpec.groovy | 47 -
.../gorm/mongo/SwitchDatabaseAtRuntimeSpec.groovy | 75 -
.../gorm/mongo/TextIndexViaAttributesSpec.groovy | 31 +-
.../bugs/MappingEngineStringIdStorageSpec.groovy | 458 --
.../gorm/mongo/bugs/MongoIdCoercionSpec.groovy | 161 -
.../bugs/StringIdAssociationStorageSpec.groovy | 639 --
.../bugs/StringIdDefaultStoredAsConfigSpec.groovy | 60 +-
.../bugs/StringIdWithObjectIdStorageSpec.groovy | 31 -
.../BuildIndexesPerConnectionSpec.groovy | 310 -
.../BuildIndexesSharedDeclarationSpec.groovy | 79 -
.../CheckpointRestoreConnectionsSpec.groovy | 111 -
.../connections/SchemaBasedMultiTenancySpec.groovy | 38 +-
.../SuppliedMongoClientSettingsSpec.groovy | 206 -
.../MongoTransactionDisabledSpec.groovy | 41 +-
.../mongo/transactions/MongoTransactionSpec.groovy | 28 +-
.../mongo/MongoDatastoreExternalClientSpec.groovy | 7 -
.../mongo/MongoDatastoreLifecycleSpec.groovy | 363 -
.../config/MongoConfigurationMetadataSpec.groovy | 71 -
.../config/MongoConnectionSourceFactorySpec.groovy | 4 -
.../MongoConnectionSourceSettingsSpec.groovy | 130 -
.../mongo/config/MongoMappingContextSpec.groovy | 113 -
.../connections/MongoConnectionSourceSpec.groovy | 120 -
.../mongo/engine/MongoIdCoercionSpec.groovy | 187 -
.../core/src/test/resources/logback-test.xml | 34 -
grails-data-mongodb/docs/build.gradle | 1 +
.../asciidoc/gettingStarted/advancedConfig.adoc | 51 +-
.../asciidoc/gettingStarted/embeddedMongo.adoc | 229 -
.../asciidoc/gettingStarted/springDataInterop.adoc | 4 +-
.../docs/src/docs/asciidoc/index.adoc | 3 -
.../docs/asciidoc/introduction/releaseNotes.adoc | 8 +-
.../docs/asciidoc/introduction/upgradeNotes.adoc | 65 -
.../multipleDataSources/mongoClientSwitching.adoc | 4 +-
.../docs/asciidoc/objectMapping/dirtyChecking.adoc | 30 +-
.../docs/asciidoc/objectMapping/idGeneration.adoc | 70 +-
.../src/docs/asciidoc/querying/queryIndexes.adoc | 155 -
.../src/docs/asciidoc/querying/queryingBasics.adoc | 51 -
.../docs/src/docs/asciidoc/testing.adoc | 2 +-
.../docs/src/docs/asciidoc/transactions.adoc | 30 +-
grails-data-mongodb/embedded/build.gradle | 87 -
.../mongodb/embedded/EmbeddedMongoBackend.java | 58 -
.../mongodb/embedded/EmbeddedMongoInitializer.java | 452 --
.../mongodb/embedded/EmbeddedMongoLifecycle.java | 85 -
.../mongodb/embedded/EmbeddedMongoSettings.java | 132 -
.../mongodb/embedded/FlapdoodleMongoBackend.java | 277 -
.../mongodb/embedded/InMemoryMongoBackend.java | 167 -
.../gorm/mongodb/embedded/ReplicaSetInitiator.java | 115 -
.../mongodb/embedded/RunningEmbeddedMongo.java | 66 -
.../src/main/resources/META-INF/spring.factories | 2 -
.../embedded/EmbeddedMongoInitializerSpec.groovy | 635 --
.../embedded/EmbeddedMongoLifecycleSpec.groovy | 374 -
.../embedded/EmbeddedMongoReplicaSetSpec.groovy | 149 -
.../embedded/EmbeddedMongoSettingsSpec.groovy | 70 -
.../embedded/FlapdoodleMongoBackendSpec.groovy | 56 -
.../embedded/InMemoryMongoBackendSpec.groovy | 109 -
.../embedded/ContextStoppedServerApplication.java | 56 -
grails-data-mongodb/ext/build.gradle | 4 -
.../mongo/extensions/MongoExtensionsSpec.groovy | 1195 ----
grails-data-mongodb/grails-plugin/build.gradle | 10 -
.../plugins/mongodb/MongodbGrailsPlugin.groovy | 2 +-
...ata.json => spring-configuration-metadata.json} | 16 +-
.../plugins/mongodb/MongodbGrailsPluginSpec.groovy | 117 -
grails-data-mongodb/spring-data/build.gradle | 9 +-
.../SpringDataMongoGormAutoConfiguration.groovy | 7 +-
.../DatastoreMongoClientDatabaseFactory.java | 52 -
...SharedSessionMongoTransactionManagerSpec.groovy | 137 -
...ataMongoGormAutoConfigurationContextSpec.groovy | 20 -
.../SpringDataMongoGormRestoreSpec.groovy | 65 -
.../springdata/UnifiedMongoTransactionSpec.groovy | 44 +-
.../GormSpringDataSessionSupportSpec.groovy | 11 +-
grails-data-neo4j/README.md | 25 +-
grails-data-neo4j/boot-plugin/build.gradle | 60 +-
.../autoconfigure/Neo4jAutoConfiguration.groovy | 16 +-
.../Neo4jAutoConfigurationSpec.groovy | 17 +-
grails-data-neo4j/build.gradle | 374 +
grails-data-neo4j/core/build.gradle | 97 -
.../gorm/neo4j/Neo4jGormApiFactory.groovy | 50 -
.../datastore/gorm/neo4j/engine/Neo4jQuery.groovy | 969 ---
.../datastore/gorm/neo4j/parsers/PlingStemmer.java | 966 ---
.../proxy/HashcodeEqualsAwareProxyFactory.java | 118 -
.../tests/HasManyReassignDirtyCheckingSpec.groovy | 77 -
.../grails/gorm/tests/NamedConnectionsSpec.groovy | 150 -
.../neo4j/core/GrailsDataNeo4jTckManager.groovy | 139 -
.../data/neo4j/core/Neo4jGormDatastoreSpec.groovy | 46 -
.../gorm/neo4j/Neo4jMappingContextSpec.groovy | 71 -
...ails.data.testing.tck.base.GrailsDataTckManager | 1 -
grails-data-neo4j/docs/build.gradle | 239 +-
.../docs/asciidoc/gettingStarted/springBoot.adoc | 2 +-
.../docs/asciidoc/gettingStarted/standalone.adoc | 2 +-
.../docs/asciidoc/introduction/releaseNotes.adoc | 6 -
.../src/docs/asciidoc/introduction/upgrading.adoc | 4 -
.../multipleDataSources/boltDriverSwitching.adoc | 4 +-
.../multipleDataSources/configuration.adoc | 2 +-
.../examples/grails3-neo4j-hibernate/build.gradle | 88 +
.../grails3-neo4j-hibernate/gradle.properties | 9 +-
.../assets/images/apple-touch-icon-retina.png | Bin
.../grails-app/assets/images/apple-touch-icon.png | Bin
.../grails-app/assets/images/favicon.ico | Bin
.../grails-app/assets/images/grails_logo.png | Bin
.../grails-app/assets/images/skin/database_add.png | Bin
.../assets/images/skin/database_delete.png | Bin
.../assets/images/skin/database_edit.png | Bin
.../assets/images/skin/database_save.png | Bin
.../assets/images/skin/database_table.png | Bin
.../grails-app/assets/images/skin/exclamation.png | Bin
.../grails-app/assets/images/skin/house.png | Bin
.../grails-app/assets/images/skin/information.png | Bin
.../grails-app/assets/images/skin/shadow.jpg | Bin
.../grails-app/assets/images/skin/sorted_asc.gif | Bin
.../grails-app/assets/images/skin/sorted_desc.gif | Bin
.../grails-app/assets/images/spinner.gif | Bin
.../grails-app/assets/javascripts/application.js | 0
.../grails-app/assets/stylesheets/application.css | 0
.../grails-app/assets/stylesheets/errors.css | 0
.../grails-app/assets/stylesheets/main.css | 0
.../grails-app/assets/stylesheets/mobile.css | 0
.../grails-app/conf/application.yml | 0
.../grails-app/conf/logback.xml | 0
.../grails-app/conf/spring/resources.groovy | 0
.../grails-app/controllers/UrlMappings.groovy | 0
.../functional/tests/AuthorController.groovy | 0
.../functional/tests/BookController.groovy | 0
.../domain/functional/tests/Author.groovy | 0
.../grails-app/domain/functional/tests/Book.groovy | 0
.../grails-app/i18n/messages.properties | 0
.../grails-app/i18n/messages_cs_CZ.properties | 0
.../grails-app/i18n/messages_da.properties | 0
.../grails-app/i18n/messages_de.properties | 0
.../grails-app/i18n/messages_es.properties | 0
.../grails-app/i18n/messages_fr.properties | 0
.../grails-app/i18n/messages_it.properties | 0
.../grails-app/i18n/messages_ja.properties | 0
.../grails-app/i18n/messages_nb.properties | 0
.../grails-app/i18n/messages_nl.properties | 0
.../grails-app/i18n/messages_pl.properties | 0
.../grails-app/i18n/messages_pt_BR.properties | 0
.../grails-app/i18n/messages_pt_PT.properties | 0
.../grails-app/i18n/messages_ru.properties | 0
.../grails-app/i18n/messages_sv.properties | 0
.../grails-app/i18n/messages_th.properties | 0
.../grails-app/i18n/messages_zh_CN.properties | 0
.../grails-app/init/BootStrap.groovy | 0
.../init/functional/tests/Application.groovy | 0
.../grails-app/views/author/create.gsp | 0
.../grails-app/views/author/edit.gsp | 0
.../grails-app/views/author/index.gsp | 0
.../grails-app/views/author/show.gsp | 0
.../grails-app/views/book/create.gsp | 0
.../grails-app/views/book/edit.gsp | 0
.../grails-app/views/book/index.gsp | 0
.../grails-app/views/book/show.gsp | 0
.../grails-app/views/error.gsp | 0
.../grails-app/views/index.gsp | 0
.../grails-app/views/layouts/main.gsp | 0
.../grails-app/views/notFound.gsp | 0
.../functional/tests/AuthorControllerSpec.groovy | 27 +-
.../functional/tests/BookControllerSpec.groovy | 26 +-
.../functional/tests/Neo4jWithHibernateSpec.groovy | 8 -
.../examples/grails3-neo4j/build.gradle | 90 +
.../examples/grails3-neo4j/gradle.properties | 9 +-
.../assets/images/apple-touch-icon-retina.png | Bin
.../grails-app/assets/images/apple-touch-icon.png | Bin
.../grails-app/assets/images/favicon.ico | Bin
.../grails-app/assets/images/grails_logo.png | Bin
.../grails-app/assets/images/skin/database_add.png | Bin
.../assets/images/skin/database_delete.png | Bin
.../assets/images/skin/database_edit.png | Bin
.../assets/images/skin/database_save.png | Bin
.../assets/images/skin/database_table.png | Bin
.../grails-app/assets/images/skin/exclamation.png | Bin
.../grails-app/assets/images/skin/house.png | Bin
.../grails-app/assets/images/skin/information.png | Bin
.../grails-app/assets/images/skin/shadow.jpg | Bin
.../grails-app/assets/images/skin/sorted_asc.gif | Bin
.../grails-app/assets/images/skin/sorted_desc.gif | Bin
.../grails-app/assets/images/spinner.gif | Bin
.../grails-app/assets/javascripts/application.js | 0
.../grails-app/assets/stylesheets/application.css | 0
.../grails-app/assets/stylesheets/errors.css | 0
.../grails-app/assets/stylesheets/main.css | 0
.../grails-app/assets/stylesheets/mobile.css | 0
.../grails3-neo4j}/grails-app/conf/application.yml | 0
.../grails3-neo4j}/grails-app/conf/logback.xml | 0
.../grails-app/conf/spring/resources.groovy | 0
.../grails-app/controllers/UrlMappings.groovy | 0
.../functional/tests/BookController.groovy | 0
.../grails-app/domain/functional/tests/Book.groovy | 0
.../domain/functional/tests/Person.groovy | 0
.../grails-app/i18n/messages.properties | 0
.../grails-app/i18n/messages_cs_CZ.properties | 0
.../grails-app/i18n/messages_da.properties | 0
.../grails-app/i18n/messages_de.properties | 0
.../grails-app/i18n/messages_es.properties | 0
.../grails-app/i18n/messages_fr.properties | 0
.../grails-app/i18n/messages_it.properties | 0
.../grails-app/i18n/messages_ja.properties | 0
.../grails-app/i18n/messages_nb.properties | 0
.../grails-app/i18n/messages_nl.properties | 0
.../grails-app/i18n/messages_pl.properties | 0
.../grails-app/i18n/messages_pt_BR.properties | 0
.../grails-app/i18n/messages_pt_PT.properties | 0
.../grails-app/i18n/messages_ru.properties | 0
.../grails-app/i18n/messages_sv.properties | 0
.../grails-app/i18n/messages_th.properties | 0
.../grails-app/i18n/messages_zh_CN.properties | 0
.../grails-app/init/BootStrap.groovy | 0
.../init/functional/tests/Application.groovy | 0
.../services/functional/tests/PersonService.groovy | 0
.../grails-app/views/book/create.gsp | 0
.../grails3-neo4j}/grails-app/views/book/edit.gsp | 0
.../grails3-neo4j}/grails-app/views/book/index.gsp | 0
.../grails3-neo4j}/grails-app/views/book/show.gsp | 0
.../grails3-neo4j}/grails-app/views/error.gsp | 0
.../grails3-neo4j}/grails-app/views/index.gsp | 0
.../grails-app/views/layouts/main.gsp | 0
.../grails3-neo4j}/grails-app/views/notFound.gsp | 0
.../functional/tests/BookControllerSpec.groovy | 27 +-
.../test/groovy/functional/tests/BookSpec.groovy | 0
.../test/groovy/functional/tests/PersonSpec.groovy | 0
.../functional/tests/StandaloneNeo4jSpec.groovy | 0
.../neo4j-spring-boot/build.gradle} | 51 +-
.../examples/neo4j-spring-boot/gradle.properties | 9 +-
.../src/main/groovy/example/Application.groovy | 0
.../src/main/groovy/example/Book.groovy | 0
.../src/main/groovy/example/BookController.groovy | 0
.../src/main/groovy/example/BookService.groovy | 0
.../src/main/resources/application.yml | 0
.../test/groovy/example/BookControllerSpec.groovy | 0
.../examples/neo4j-standalone/build.gradle | 7 +-
.../examples/neo4j-standalone/gradle.properties | 9 +-
.../src/main/groovy/example/Person.groovy | 0
.../src/main/groovy/example/PersonService.groovy | 0
.../test/groovy/example/PersonServiceSpec.groovy | 0
.../examples/test-data-service}/build.gradle | 37 +-
.../examples/test-data-service/gradle.properties | 9 +-
.../grails-app/conf/application.groovy | 0
.../grails-app/conf/application.yml | 31 +
.../test-data-service/grails-app/conf/logback.xml | 0
.../grails-app/conf/spring/resources.groovy | 0
.../example/ApplicationController.groovy | 0
.../controllers/example/UrlMappings.groovy | 0
.../grails-app/domain/example/Book.groovy | 0
.../grails-app/domain/example/Person.groovy | 0
.../grails-app/domain/example/Student.groovy | 0
.../grails-app/i18n/messages.properties | 0
.../grails-app/init/example/Application.groovy | 3 +-
.../grails-app/init/example/BootStrap.groovy | 1 -
.../grails-app/services/example/BookService.groovy | 0
.../services/example/LibraryService.groovy | 0
.../services/example/PersonService.groovy | 0
.../services/example/StudentService.groovy | 1 -
.../grails-app/services/example/TestService.groovy | 0
.../grails-app/views/application/index.gson | 0
.../test-data-service/grails-app/views/error.gson | 0
.../grails-app/views/errors/_errors.gson | 0
.../grails-app/views/notFound.gson | 0
.../grails-app/views/object/_object.gson | 0
.../groovy/example/StudentServiceSpec.groovy | 0
.../groovy/example/TestServiceSpec.groovy | 0
.../LoginAuthenticationSucessHandler.groovy | 6 +-
.../src/main/groovy/example/TestBean.groovy | 0
grails-data-neo4j/gradle.properties | 50 +
.../gradle/neo4j-harness-test-config.gradle | 80 -
.../grails-datastore-gorm-neo4j/build.gradle | 109 +
.../src/main/groovy/grails/neo4j/Direction.groovy | 3 +-
.../main/groovy/grails/neo4j/Neo4jEntity.groovy | 39 +-
.../src/main/groovy/grails/neo4j/Node.groovy | 4 +-
.../src/main/groovy/grails/neo4j/Path.groovy | 4 +-
.../main/groovy/grails/neo4j/Relationship.groovy | 26 +-
.../grails/neo4j/mapping/MappingBuilder.groovy | 9 +-
.../groovy/grails/neo4j/services/Cypher.groovy | 3 +-
.../grails/datastore/gorm/neo4j/CypherBuilder.java | 118 +-
.../datastore/gorm/neo4j/GraphClassMapping.groovy | 5 +-
.../gorm/neo4j/GraphGormMappingFactory.groovy | 39 +-
.../gorm/neo4j/GraphPersistentEntity.groovy | 156 +-
.../grails/datastore/gorm/neo4j/IdGenerator.java | 11 +-
.../datastore/gorm/neo4j/Neo4jDatastore.java | 277 +-
.../neo4j/Neo4jDatastoreTransactionManager.java | 15 +-
.../gorm/neo4j/Neo4jEntityTraitProvider.groovy | 7 +-
.../datastore/gorm/neo4j/Neo4jMappingContext.java | 132 +-
.../grails/datastore/gorm/neo4j/Neo4jSession.java | 213 +-
.../datastore/gorm/neo4j/Neo4jTransaction.groovy | 25 +-
.../gorm/neo4j/RelationshipPersistentEntity.groovy | 65 +-
.../datastore/gorm/neo4j/RelationshipUtils.groovy | 52 +-
.../datastore/gorm/neo4j/SessionFlushedEvent.java | 3 +-
.../datastore/gorm/neo4j/TypeDirectionPair.java | 19 +-
.../gorm/neo4j/api/Neo4jGormStaticApi.groovy | 215 +-
.../gorm/neo4j/collection/GraphAdapter.groovy | 45 +-
.../collection/Neo4jAssociationResultList.groovy | 6 +-
.../gorm/neo4j/collection/Neo4jList.groovy | 20 +-
.../gorm/neo4j/collection/Neo4jPath.groovy | 56 +-
.../neo4j/collection/Neo4jPersistentList.groovy | 15 +-
.../neo4j/collection/Neo4jPersistentSet.groovy | 24 +-
.../collection/Neo4jPersistentSortedSet.groovy | 19 +-
.../gorm/neo4j/collection/Neo4jRelationship.groovy | 5 +-
.../gorm/neo4j/collection/Neo4jResultList.groovy | 63 +-
.../gorm/neo4j/collection/Neo4jSet.groovy | 21 +-
.../gorm/neo4j/collection/Neo4jSortedSet.groovy | 20 +-
.../neo4j/config/Neo4jDriverConfigBuilder.groovy | 37 +-
.../datastore/gorm/neo4j/config/Settings.java | 3 +-
.../connections/Neo4jConnectionSourceFactory.java | 66 +-
.../Neo4jConnectionSourceSettings.groovy | 3 +-
.../Neo4jConnectionSourceSettingsBuilder.groovy | 4 +-
.../connections/Neo4jEmbeddedConnectionSource.java | 6 +-
.../neo4j/engine/DynamicAssociationSupport.java | 57 +-
.../engine/Neo4jAssociationQueryExecutor.groovy | 140 +-
.../gorm/neo4j/engine/Neo4jEntityPersister.java | 557 +-
.../Neo4jModificationTrackingEntityAccess.groovy | 1 -
.../datastore/gorm/neo4j/engine/Neo4jQuery.groovy | 871 +++
.../neo4j/engine/RelationshipPendingDelete.java | 37 +-
.../neo4j/engine/RelationshipPendingInsert.java | 105 +-
.../gorm/neo4j/extensions/Neo4jExtensions.groovy | 73 +-
.../gorm/neo4j/identity/SnowflakeIdGenerator.java | 21 +-
.../gorm/neo4j/mapping/config/Attribute.groovy | 3 +-
.../neo4j/mapping/config/DynamicAssociation.java | 1 -
.../mapping/config/DynamicToManyAssociation.java | 2 +-
.../mapping/config/DynamicToOneAssociation.java | 5 +-
.../gorm/neo4j/mapping/config/NodeConfig.groovy | 5 +-
.../neo4j/mapping/config/RelationshipConfig.groovy | 4 +-
.../neo4j/mapping/reflect/Neo4jNameUtils.groovy | 8 +-
.../datastore/gorm/neo4j/parsers/PlingStemmer.java | 979 +++
.../proxy/HashcodeEqualsAwareProxyFactory.java | 118 +
.../proxy/Neo4jAssociationQueryProxyHandler.java | 5 +-
.../gorm/neo4j/proxy/Neo4jProxyFactory.java | 5 +-
.../FindAllCypherQueryImplementer.groovy | 10 +-
.../FindOneCypherQueryImplementer.groovy | 11 +-
.../FindPathCypherQueryImplementer.groovy | 11 +-
.../FindShortestPathImplementer.groovy | 26 +-
.../StatementResultCypherQueryImplementer.groovy | 10 +-
.../UpdateCypherQueryImplementer.groovy | 28 +-
.../transform/CypherQueryStringTransformer.groovy | 9 +-
.../gorm/neo4j/util/EmbeddedNeo4jServer.java | 55 +-
.../datastore/gorm/neo4j/util/IteratorUtil.java | 7 +-
.../org.codehaus.groovy.runtime.ExtensionModule | 0
...rg.grails.compiler.gorm.GormEntityTraitProvider | 0
...ails.datastore.gorm.services.ServiceImplementer | 0
.../groovy/grails/gorm/tests/AssignedIdSpec.groovy | 0
.../grails/gorm/tests/CascadingDeleteSpec.groovy | 17 +-
.../CustomLabelWithDynamicAssociationSpec.groovy | 12 +-
.../grails/gorm/tests/CypherQueryStringSpec.groovy | 16 +-
.../grails/gorm/tests/EagerFetchingSpec.groovy | 24 +-
.../grails/gorm/tests/EntityParseSpec.groovy | 0
.../grails/gorm/tests/FindByIsNullSpec.groovy | 11 +-
.../grails/gorm/tests/GormDatastoreSpec.groovy | 125 +
.../grails/gorm/tests/GroovyProxySpec.groovy | 22 +-
.../gorm/tests/HasManyInheritanceSpec.groovy | 0
.../grails/gorm/tests/InheritanceProxySpec.groovy | 14 +-
.../grails/gorm/tests/JavaxValidationSpec.groovy | 11 +-
.../grails/gorm/tests/JoinCriteriaSpec.groovy | 11 +-
.../grails/gorm/tests/LabelStrategySpec.groovy | 13 +-
.../groovy/grails/gorm/tests/LikeQuerySpec.groovy | 20 +-
.../grails/gorm/tests/ManyToManyQuerySpec.groovy | 9 +-
.../groovy/grails/gorm/tests/ManyToManySpec.groovy | 61 +-
.../grails/gorm/tests/MapPropertySpec.groovy | 9 +-
.../grails/gorm/tests/MarkDirtyFalseSpec.groovy | 27 +-
.../test/groovy/grails/gorm/tests/MiscSpec.groovy | 92 +-
.../gorm/tests/MultipleConnectionsSpec.groovy | 9 +-
.../gorm/tests/NativeIdentityGeneratorSpec.groovy | 15 +-
.../grails/gorm/tests/Neo4jNameUtilsSpec.groovy | 0
.../grails/gorm/tests/Neo4jResultListSpec.groovy | 11 +-
.../grails/gorm/tests/NullValueEqualSpec.groovy | 10 +-
.../grails/gorm/tests/OneToManyUpdateSpec.groovy | 31 +-
.../groovy/grails/gorm/tests/OneToOneSpec.groovy | 18 +-
.../grails/gorm/tests/OptimisticLockingSpec.groovy | 77 +-
.../grails/gorm/tests/OrphanDeleteSpec.groovy | 12 +-
.../grails/gorm/tests/PagedResultSpec.groovy | 11 +-
.../gorm/tests/PersistenceEventListenerSpec.groovy | 37 +-
.../src/test/groovy/grails/gorm/tests/Pet.groovy | 3 -
.../grails/gorm/tests/ProjectionsSpec.groovy | 10 +-
.../test/groovy/grails/gorm/tests/ProxySpec.groovy | 17 +-
.../grails/gorm/tests/ReadManyObjectsSpec.groovy | 22 +-
.../gorm/tests/RelationshipMappingSpec.groovy | 27 +-
.../grails/gorm/tests/RelationshipUtilsSpec.groovy | 15 +-
.../groovy/grails/gorm/tests/SchemalessSpec.groovy | 75 +-
.../groovy/grails/gorm/tests/TransientsSpec.groovy | 11 +-
.../grails/gorm/tests/UniqueConstraintSpec.groovy | 21 +-
.../gorm/tests/UpdateWithProxyPresentSpec.groovy | 0
.../groovy/grails/gorm/tests/ValidationSpec.groovy | 29 +-
.../grails/gorm/tests/WithTransactionSpec.groovy | 12 +-
.../tests/assignedid/OneToManyCreateSpec.groovy | 0
.../gorm/tests/assignedid/domain/Owner.groovy | 0
.../grails/gorm/tests/assignedid/domain/Pet.groovy | 0
.../gorm/tests/cypher/OneToManyCreateSpec.groovy | 1 -
.../grails/gorm/tests/cypher/domain/Owner.groovy | 0
.../grails/gorm/tests/cypher/domain/Pet.groovy | 0
.../idgeneration/CustomIdGeneratorSpec.groovy | 0
.../idgeneration/SnowflakeIdGeneratorSpec.groovy | 0
.../tests/multitenancy/MultiTenancySpec.groovy | 0
.../tests/multitenancy/SingleTenancySpec.groovy | 10 +-
.../groovy/grails/gorm/tests/path/PathSpec.groovy | 0
.../grails/gorm/tests/path/RelationshipSpec.groovy | 0
.../grails/gorm/tests/path/domain/Person.groovy | 0
.../grails/gorm/tests/services/Author.groovy | 0
.../grails/gorm/tests/services/AuthorBooks.groovy | 0
.../groovy/grails/gorm/tests/services/Book.groovy | 0
.../services/CypherQueryTransformerSpec.groovy | 0
.../groovy/grails/neo4j/Neo4jEntitySpec.groovy | 0
.../datastore/gorm/neo4j/ApiExtensionsSpec.groovy | 17 +-
.../grails/datastore/gorm/neo4j/Neo4jSuite.groovy | 18 +-
.../gorm/neo4j/RelationshipUtilsSpec.groovy | 0
.../gorm/neo4j/TransactionPropagationSpec.groovy | 14 +-
.../Neo4jConnectionSourceSettingsSpec.groovy | 24 -
.../config/Neo4jDriverConfigBuilderSpec.groovy | 0
.../src/test/resources/logback.xml | 0
.../src/test/resources/neo4j-server.properties | 0
.../src/test/resources/spy.properties | 0
grails-data-neo4j/grails-plugin/build.gradle | 118 +-
.../Neo4jDataStoreSpringInitializer.groovy | 89 +-
.../main/groovy/grails/test/neo4j/Neo4jSpec.groovy | 17 +-
.../datastore/gorm/neo4j/Neo4jGrailsPlugin.groovy | 44 +-
.../neo4j/converters/InstantToLongConverter.groovy | 1 -
.../converters/LocalDateTimeToLongConverter.groovy | 1 -
.../converters/LocalDateToLongConverter.groovy | 1 -
.../converters/LocalTimeToLongConverter.groovy | 1 -
.../neo4j/converters/LongToInstantConverter.groovy | 1 -
.../converters/LongToLocalDateConverter.groovy | 1 -
.../converters/LongToLocalDateTimeConverter.groovy | 1 -
.../converters/LongToLocalTimeConverter.groovy | 3 +-
.../LongToOffsetDateTimeConverter.groovy | 1 -
.../converters/LongToOffsetTimeConverter.groovy | 1 -
.../converters/LongToZonedDateTimeConverter.groovy | 1 -
.../OffsetDateTimeToLongConverter.groovy | 1 -
.../converters/OffsetTimeToLongConverter.groovy | 1 -
.../converters/PeriodToStringConverter.groovy | 1 -
.../converters/StringToPeriodConverter.groovy | 1 -
.../converters/ZonedDateTimeToLongConverter.groovy | 1 -
.../Neo4jDataStoreSpringInitializerSpec.groovy | 46 +-
.../settings.gradle | 49 +-
.../mapping/simple/SimpleMapDatastore.java | 13 +-
.../mapping/simple/query/SimpleMapQuery.groovy | 28 +-
.../mapping/simple/SimpleMapDatastoreSpec.groovy | 9 +-
.../SimpleMapSessionPendingOperationsSpec.groovy | 102 -
.../grails/databinding/FrameworkPropertyNames.java | 55 -
.../grails/databinding/SimpleDataBinder.groovy | 71 +-
.../grails/databinding/SimpleDataBinderSpec.groovy | 36 -
grails-databinding/build.gradle | 7 +-
.../web/LocaleAwareNumberConverter.groovy | 2 +-
.../databinding/DataBindingConfiguration.java | 132 +
.../databinding/DataBindingGrailsPlugin.groovy | 87 -
...ata.json => spring-configuration-metadata.json} | 6 -
...rk.boot.autoconfigure.AutoConfiguration.imports | 1 +
grails-datamapping-async/build.gradle | 6 +-
.../grails/datastore/gorm/async/AsyncQuery.groovy | 4 +-
.../datastore/gorm/async/GormAsyncStaticApi.groovy | 4 +-
.../grails/gorm/async/AsyncEntitySpec.groovy | 93 -
.../datastore/gorm/async/AsyncQuerySpec.groovy | 91 -
.../gorm/async/GormAsyncStaticApiSpec.groovy | 115 -
grails-datamapping-core-test/build.gradle | 2 +-
.../partitioned/PartitionMultiTenancySpec.groovy | 22 -
.../tests/ConnectionScopeMultiTenancySpec.groovy | 113 -
.../gorm/tests/MultipleDataSourceSpec.groovy | 162 +-
grails-datamapping-core/build.gradle | 2 +-
.../grails/gorm/api/GormInstanceOperations.groovy | 58 +-
.../grails/gorm/api/GormStaticOperations.groovy | 71 +-
.../gorm/multitenancy/CurrentTenantHolder.groovy | 23 +-
.../groovy/grails/gorm/multitenancy/Tenants.groovy | 52 +-
.../transactions/GrailsTransactionAttribute.groovy | 43 +-
.../transactions/GrailsTransactionTemplate.groovy | 55 +-
.../grails/gorm/transactions/Transactional.java | 5 +-
.../grails/datamapping/aot/GormRuntimeHints.java | 112 -
.../compiler/gorm/DirtyCheckTransformation.groovy | 16 +-
.../compiler/gorm/DirtyCheckingTransformer.groovy | 70 +-
.../compiler/gorm/GormEntityTraitProvider.groovy | 17 -
.../compiler/gorm/GormEntityTransformation.groovy | 183 +-
.../gorm/JpaGormEntityTransformation.groovy | 14 +-
.../gorm/LocalTransformationSupport.groovy | 61 -
.../grails/datastore/gorm/AbstractGormApi.groovy | 59 +-
.../datastore/gorm/AbstractGormApiRegistry.groovy | 47 +-
.../gorm/ConnectionSourceNameResolver.groovy | 36 -
.../datastore/gorm/DelegatingGormEntityApi.groovy | 5 -
.../grails/datastore/gorm/GormApiResolver.groovy | 36 +-
.../org/grails/datastore/gorm/GormEnhancer.groovy | 107 +-
.../org/grails/datastore/gorm/GormEntity.groovy | 115 +-
.../org/grails/datastore/gorm/GormEntityApi.groovy | 36 -
.../grails/datastore/gorm/GormInstanceApi.groovy | 10 +-
.../org/grails/datastore/gorm/GormRegistry.groovy | 271 +-
.../org/grails/datastore/gorm/GormStaticApi.groovy | 245 +-
.../grails/datastore/gorm/GormValidationApi.groovy | 15 +-
.../bootstrap/AbstractDatastoreInitializer.groovy | 82 +-
...igurableApplicationContextEventPublisher.groovy | 58 +-
.../datastore/gorm/finders/DynamicFinder.java | 176 +-
.../datastore/gorm/finders/ListOrderByFinder.java | 11 +-
.../gorm/internal/RefreshLockArguments.groovy | 183 -
.../datastore/gorm/jdbc/DataSourceBuilder.java | 21 +-
.../gorm/jdbc/OriginCapablePropertyValue.java | 63 +
.../grails/datastore/gorm/jdbc/PropertyOrigin.java | 32 +-
.../gorm/jdbc/RelaxedConversionService.java | 26 +-
.../datastore/gorm/jdbc/RelaxedDataBinder.java | 79 +-
.../grails/datastore/gorm/jdbc/RelaxedNames.java | 6 +-
.../connections/DataSourceConnectionSource.java | 3 -
.../jdbc/connections/DataSourceSettings.groovy | 16 +-
.../SpringDataSourceConnectionSourceFactory.java | 4 +-
.../TenantDelegatingGormOperations.groovy | 249 +-
.../multitenancy/transform/TenantTransform.groovy | 2 +-
.../GlobalGormQuerySafetyASTTransformation.java | 76 -
.../transform/GormQuerySafetyTransformer.java | 690 --
.../gorm/services/DefaultTransactionService.groovy | 33 +-
...stractDetachedCriteriaServiceImplementor.groovy | 6 -
.../implementers/AbstractSaveImplementer.groovy | 6 +-
.../implementers/AbstractServiceImplementer.groovy | 7 +-
.../AbstractStringQueryImplementer.groovy | 23 -
.../implementers/AbstractWhereImplementer.groovy | 3 -
.../services/implementers/DeleteImplementer.groovy | 6 +-
.../implementers/DeleteWhereImplementer.groovy | 2 +-
.../implementers/FindAllByImplementer.groovy | 3 +-
.../implementers/FindOneImplementer.groovy | 5 -
.../FindOneStringQueryImplementer.groovy | 4 -
.../implementers/InterfaceProjectionBuilder.groovy | 39 +-
.../IterableInterfaceProjectionBuilder.groovy | 16 +-
.../services/implementers/SaveImplementer.groovy | 2 +-
.../implementers/UpdateOneImplementer.groovy | 3 +-
.../transform/ServiceTransformation.groovy | 4 +-
.../transform/TransactionalTransform.groovy | 24 +-
.../gorm/transform/AstPropertyResolveUtils.java | 146 +-
.../transform/OrderedGormTransformation.groovy | 4 +-
.../datastore/gorm/utils/ReflectionUtils.java | 6 +-
.../validation/jakarta/GormValidatorAdapter.groovy | 2 +-
.../jakarta/GormValidatorFactoryAdapter.groovy | 2 +-
.../jakarta/JakartaValidatorRegistry.groovy | 6 +-
.../gorm/validation/jakarta/MethodKey.java | 8 +-
.../MethodValidationImplementer.groovy | 11 +-
.../listener/ValidationEventListener.groovy | 4 +-
...org.codehaus.groovy.transform.ASTTransformation | 1 -
.../main/resources/META-INF/spring/aot.factories | 2 -
.../test/groovy/com/IgnoredPackageEntity.groovy | 27 -
.../MultiTenantCurrentTenantTransformSpec.groovy | 143 -
.../multitenancy/TenantTransformSpec.groovy | 176 -
.../transactions/TransactionalTransformSpec.groovy | 75 -
.../multitenancy/CurrentTenantHolderSpec.groovy | 30 -
.../grails/gorm/multitenancy/TenantsSpec.groovy | 33 +-
.../ConnectionRoutingServiceTransformSpec.groovy | 144 -
.../services/ServiceImplementerEdgeCaseSpec.groovy | 413 --
.../transform/ServiceTransformClasses.groovy | 382 -
.../services/transform/ServiceTransformSpec.groovy | 532 --
.../GrailsTransactionAttributeSpec.groovy | 288 -
.../TransactionRollbackRulePropagationSpec.groovy | 159 -
.../datamapping/aot/GormRuntimeHintsSpec.groovy | 81 -
.../gorm/GormEntityIdentityTypeSpec.groovy | 119 -
.../compiler/gorm/GormEntityTransformSpec.groovy | 8 -
.../compiler/gorm/JpaEntityTransformSpec.groovy | 52 -
.../gorm/AbstractGormApiRegistrySpec.groovy | 239 -
.../datastore/gorm/AbstractGormApiSpec.groovy | 20 +-
.../gorm/ActiveSessionDatastoreSelectorSpec.groovy | 73 -
.../gorm/ConnectionSourceNameResolverSpec.groovy | 51 -
.../gorm/DefaultDatastoreSelectorSpec.groovy | 95 -
.../gorm/DefaultGormApiFactorySpec.groovy | 63 -
.../datastore/gorm/GormApiFactorySpec.groovy | 132 -
.../datastore/gorm/GormApiRegistrySpec.groovy | 123 -
.../datastore/gorm/GormEnhancerCoverageSpec.groovy | 231 +-
.../datastore/gorm/GormInstanceApiSpec.groovy | 389 --
.../gorm/GormRegistryConcurrencySpec.groovy | 139 -
.../datastore/gorm/GormRegistryCoverageSpec.groovy | 41 +-
.../gorm/GormRegistryEntityRegistrationSpec.groovy | 185 -
.../datastore/gorm/GormRegistryFactorySpec.groovy | 73 -
.../grails/datastore/gorm/GormStaticApiSpec.groovy | 454 +-
.../gorm/GormValidationApiCoverageSpec.groovy | 64 +-
.../datastore/gorm/GormValidationApiSpec.groovy | 55 +-
.../gorm/PreferredDatastoreSelectorSpec.groovy | 75 -
.../gorm/QualifiedDatastoreSelectorSpec.groovy | 96 -
...actDatastoreInitializerConfigurationSpec.groovy | 190 -
.../DirtyCheckCollectionReassignmentSpec.groovy | 458 --
.../checking/DirtyCheckTransformationSpec.groovy | 7 -
...ableApplicationContextEventPublisherSpec.groovy | 115 -
.../gorm/finders/AbstractFinderSpec.groovy | 27 -
.../gorm/finders/DynamicFinderCoverageSpec.groovy | 262 +-
.../gorm/internal/RefreshLockArgumentsSpec.groovy | 173 -
.../datastore/gorm/jdbc/DatabaseDriverSpec.groovy | 89 -
.../gorm/jdbc/MultiTenantConnectionSpec.groovy | 34 -
.../gorm/jdbc/MultiTenantDataSourceSpec.groovy | 72 -
.../gorm/jdbc/RelaxedConversionServiceSpec.groovy | 116 -
.../gorm/jdbc/RelaxedDataBinderSpec.groovy | 123 -
.../datastore/gorm/jdbc/RelaxedNamesSpec.groovy | 77 -
...hedDataSourceConnectionSourceFactorySpec.groovy | 58 -
.../DataSourceConnectionSourceFactorySpec.groovy | 115 -
.../DataSourceConnectionSourceSpec.groovy | 108 -
.../DataSourceSettingsBuilderSpec.groovy | 75 -
.../jdbc/connections/DataSourceSettingsSpec.groovy | 123 -
...ingDataSourceConnectionSourceFactorySpec.groovy | 89 -
.../TenantDelegatingGormOperationsSpec.groovy | 1406 +---
.../DetachedCriteriaASTTransformationSpec.groovy | 131 -
...obalGormQuerySafetyASTTransformationSpec.groovy | 78 -
.../GormQuerySafetyTransformerSpec.groovy | 543 --
.../WhereQueryAggregateSubqueryErrorSpec.groovy | 131 -
.../transform/WhereQueryAssociationPathSpec.groovy | 233 -
.../transform/WhereQueryClosureCaptureSpec.groovy | 12 +-
.../WhereQueryDetachedCriteriaCastSpec.groovy | 131 -
.../WhereQueryEmbeddedBlockTransformSpec.groovy | 11 +-
.../WhereQueryEmbeddedPropertyPathSpec.groovy | 196 -
.../transform/WhereQueryFunctionCallSpec.groovy | 150 -
...reQueryMultiLevelAssociationFunctionSpec.groovy | 138 -
.../query/transform/WhereQueryNegationSpec.groovy | 121 -
.../query/transform/WhereQueryOperatorSpec.groovy | 283 -
.../transform/WhereQueryPropertyAliasSpec.groovy | 177 -
.../transform/WhereQueryStaticFieldSpec.groovy | 252 -
.../gorm/services/DefaultTenantServiceSpec.groovy | 2 +-
.../services/DefaultTransactionServiceSpec.groovy | 178 +-
.../transform/ServiceTransformationSpec.groovy | 183 -
.../support/AdaptedProbeServiceImplementer.groovy | 64 -
.../support/NoOpServiceImplementerAdapter.groovy | 41 -
.../support/ProbeServiceImplementer.groovy | 63 -
.../support/ProbeServiceImplementerAdapter.groovy | 43 -
.../AbstractGormASTTransformationSpec.groovy | 123 -
...ctTraitApplyingGormASTTransformationSpec.groovy | 170 -
.../ApplyNonCompilationUnitAwareTransform.java | 40 -
.../gorm/transform/ApplyTestTraitWeaving.java | 38 -
.../transform/ApplyUnloadableGormTransform.java | 39 -
.../transform/AstPropertyResolveUtilsSpec.groovy | 289 -
.../gorm/transform/DoubleGenericTestTrait.groovy | 37 -
...onCompilationUnitAwareTestTransformation.groovy | 39 -
.../transform/OrderedGormTransformationSpec.groovy | 69 -
.../gorm/transform/SingleGenericTestTrait.groovy | 31 -
.../TestTraitWeavingTransformation.groovy | 61 -
.../gorm/transform/TestWeavableTrait.groovy | 31 -
.../gorm/utils/ClasspathEntityScannerSpec.groovy | 71 +-
.../gorm/utils/ReflectionUtilsSpec.groovy | 80 -
...MappingContextAwareConstraintFactorySpec.groovy | 55 -
.../ConfigurableParameterNameProviderSpec.groovy | 79 -
.../jakarta/ConstraintViolationUtilsSpec.groovy | 68 -
.../jakarta/GormValidatorFactoryAdapterSpec.groovy | 149 -
.../jakarta/JakartaValidatorRegistrySpec.groovy | 98 -
.../gorm/validation/jakarta/MethodKeySpec.groovy | 58 -
.../listener/ValidationEventListenerSpec.groovy | 147 -
.../support/ValidatorRegistriesSpec.groovy | 67 -
...ails.datastore.gorm.services.ServiceImplementer | 1 -
...tastore.gorm.services.ServiceImplementerAdapter | 2 -
grails-datamapping-support/build.gradle | 3 +-
.../org/grails/compiler/gorm/GormTransformer.java | 9 +-
.../datastore/gorm/GormEntityTraitSpec.groovy | 197 -
grails-datamapping-tck/build.gradle | 1 -
...intWorksWithTargetProxiesConstraintsSpec.groovy | 4 +-
.../data/testing/tck/tests/DomainEventsSpec.groovy | 2 +-
.../data/testing/tck/tests/FindWhereSpec.groovy | 3 -
.../tck/tests/FirstAndLastMethodSpec.groovy | 2 +-
.../data/testing/tck/tests/ListOrderBySpec.groovy | 22 -
.../data/testing/tck/tests/OneToManySpec.groovy | 2 -
.../testing/tck/tests/OptimisticLockingSpec.groovy | 13 +-
.../data/testing/tck/tests/PagedResultSpec.groovy | 7 -
.../tck/tests/PersistenceEventListenerSpec.groovy | 4 +-
.../testing/tck/tests/WithTransactionSpec.groovy | 51 +-
grails-datamapping-validation/build.gradle | 1 +
.../aot/ConstrainedPropertyRuntimeHints.java | 75 -
.../main/resources/META-INF/spring/aot.factories | 2 -
.../aot/ConstrainedPropertyRuntimeHintsSpec.groovy | 69 -
grails-datasource/build.gradle | 4 +-
.../datasource/EmbeddedDatabaseShutdownHook.groovy | 2 +-
grails-datastore-core/build.gradle | 2 +-
.../mapping/config/AbstractGormMappingFactory.java | 40 +-
.../mapping/config/ConfigurationBuilder.groovy | 250 +-
.../datastore/mapping/config/Property.groovy | 11 +-
.../datastore/mapping/core/AbstractDatastore.java | 140 +-
.../datastore/mapping/core/AbstractSession.java | 20 +-
.../grails/datastore/mapping/core/Datastore.java | 11 +
.../datastore/mapping/core/DatastoreUtils.java | 26 +-
.../org/grails/datastore/mapping/core/Session.java | 14 +-
.../datastore/mapping/core/SessionResolver.groovy | 41 +-
...er.groovy => ThreadLocalSessionResolver.groovy} | 64 +-
.../AbstractConnectionSourceFactory.java | 11 +
.../connections/ConnectionSourceSettings.groovy | 7 +-
.../ConnectionSourceSettingsBuilder.groovy | 4 +
.../MultipleConnectionSourceCapableDatastore.java | 17 +
.../connections/SingleSessionCapableDatastore.java | 34 -
.../dirty/checking/DirtyCheckableCollection.java | 12 -
.../dirty/checking/DirtyCheckingCollection.groovy | 66 -
.../dirty/checking/DirtyCheckingList.groovy | 112 +-
.../mapping/dirty/checking/DirtyCheckingMap.groovy | 104 -
.../mapping/dirty/checking/DirtyCheckingSet.groovy | 6 +-
.../dirty/checking/DirtyCheckingSortedSet.groovy | 50 +-
.../dirty/checking/DirtyCheckingSupport.groovy | 186 -
.../mapping/model/AbstractMappingContext.java | 1 -
.../mapping/model/AbstractPersistentEntity.java | 11 +-
.../org/grails/datastore/mapping/query/Query.java | 2 +-
.../datastore/mapping/reflect/AstUtils.groovy | 28 +-
.../mapping/reflect/DevToolsClassLoaders.java | 107 -
.../datastore/mapping/reflect/NameUtils.java | 36 -
.../datastore/mapping/services/Service.groovy | 1 +
.../CustomizableRollbackTransactionAttribute.java | 64 +-
.../transactions/DatastoreTransactionManager.java | 13 +-
.../transactions/SessionOnlyTransaction.java | 24 +-
.../mapping/config/ConfigurationBuilderSpec.groovy | 567 --
.../mapping/core/AbstractDatastoreSpec.groovy | 298 +-
.../mapping/core/DatastoreUtilsSpec.groovy | 45 -
.../core/SessionResolverIntegrationSpec.groovy | 55 +-
.../core/ThreadLocalSessionResolverSpec.groovy | 128 +
...actionSynchronizationSessionResolverSpec.groovy | 254 -
.../AbstractConnectionSourceFactorySpec.groovy | 36 +-
.../ConnectionSourceSettingsBuilderSpec.groovy | 27 +-
.../checking/DirtyCheckingCollectionSpec.groovy | 501 --
.../config/DocumentMappingContextSpec.groovy | 89 -
.../mapping/KeyValueMappingFactoryTests.groovy | 53 +-
.../AbstractPersistentEntityGetTenantIdSpec.groovy | 122 +
.../datastore/mapping/reflect/AstUtilsSpec.groovy | 34 +-
.../reflect/DevToolsClassLoadersSpec.groovy | 186 -
.../datastore/mapping/reflect/NameUtilsSpec.groovy | 52 -
.../services/DefaultServiceRegistrySpec.groovy | 4 +-
...omizableRollbackTransactionAttributeSpec.groovy | 200 +-
.../DatastoreTransactionManagerSpec.groovy | 137 -
.../transactions/SessionOnlyTransactionSpec.groovy | 92 -
.../src/test/resources/logback-test.xml | 29 -
grails-dependencies/starter-web/build.gradle | 12 +-
grails-doc/build.gradle | 148 +-
grails-doc/src/en/guide/GORM/multiTenancy.adoc | 129 -
.../en/guide/GORM/quickStartGuide/basicCRUD.adoc | 38 -
.../src/en/guide/REST/callingRestServices.adoc | 64 -
.../src/en/guide/REST/linkingToResources.adoc | 25 -
.../extendingRestfulController.adoc | 1 -
.../restControllersStepByStep.adoc | 1 -
grails-doc/src/en/guide/async/asyncGorm.adoc | 2 +-
grails-doc/src/en/guide/async/asyncPromises.adoc | 54 +-
grails-doc/src/en/guide/async/asyncRequests.adoc | 13 +-
grails-doc/src/en/guide/async/asyncServletApi.adoc | 2 -
grails-doc/src/en/guide/async/events.adoc | 4 +-
grails-doc/src/en/guide/backgroundJobs.adoc | 81 -
.../backgroundJobs/backgroundJobsAdvanced.adoc | 48 -
.../backgroundJobsAdvanced/quartzClustering.adoc | 81 -
.../quartzConfiguration.adoc | 249 -
.../quartzDynamicScheduling.adoc | 91 -
.../backgroundJobsAdvanced/quartzInstallation.adoc | 74 -
.../quartzJobManagerService.adoc | 88 -
.../quartzJobProperties.adoc | 74 -
.../quartzLongRunningJobs.adoc | 157 -
.../backgroundJobsAdvanced/quartzScheduling.adoc | 138 -
.../backgroundJobsAdvanced/quartzTriggers.adoc | 180 -
.../backgroundJobsAdvanced/quartzUsefulLinks.adoc | 27 -
.../guide/backgroundJobs/backgroundJobsBasic.adoc | 170 -
.../guide/commandLine/creatingCustomCommands.adoc | 9 +-
.../gradleBuild/gradleDependencies.adoc | 1 +
.../applicationClass/applicationLifeCycle.adoc | 2 -
.../guide/conf/applicationClass/customizing.adoc | 34 +-
grails-doc/src/en/guide/conf/config.adoc | 33 -
grails-doc/src/en/guide/conf/config/logging.adoc | 137 +-
.../config/logging/loggingFullStackTraces.adoc | 9 -
.../guide/conf/dataSource/multipleDatasources.adoc | 13 -
grails-doc/src/en/guide/conf/micronaut.adoc | 74 +-
.../src/en/guide/deployment/deploymentAot.adoc | 172 -
.../en/guide/deployment/deploymentAotCache.adoc | 191 -
.../src/en/guide/gettingStarted/requirements.adoc | 5 +-
grails-doc/src/en/guide/i18n/changingLocales.adoc | 5 +-
.../en/guide/i18n/understandingMessageBundles.adoc | 67 -
grails-doc/src/en/guide/index.adoc | 85 -
grails-doc/src/en/guide/introduction/whatsNew.adoc | 392 +-
.../introduction/whatsNew/dependencyUpgrades.adoc | 2 +-
.../plugins/creatingAndInstallingPlugins.adoc | 12 +-
.../plugins/hookingIntoRuntimeConfiguration.adoc | 214 -
.../en/guide/plugins/providingBasicArtefacts.adoc | 9 -
grails-doc/src/en/guide/reference.adoc | 25 -
grails-doc/src/en/guide/scaffolding.adoc | 2 +-
grails-doc/src/en/guide/security/codecs.adoc | 6 -
.../en/guide/security/securingAgainstAttacks.adoc | 65 -
.../security/securityPlugins/springSecurity.adoc | 4 +-
.../springSecurity/cas/configuration.adoc | 26 +-
.../springSecurity/cas/introduction.adoc | 2 +-
.../securityPlugins/springSecurity/cas/usage.adoc | 20 +-
.../securityPlugins/springSecurity/core/ip.adoc | 2 -
.../springSecurity/ui/customization.adoc | 2 +-
.../src/en/guide/spring/springdslAdditional.adoc | 38 -
.../grailsCompileStatic.adoc | 26 -
.../src/en/guide/testing/integrationTesting.adoc | 2 +-
.../guide/testing/runningTests/withGrailsCli.adoc | 21 +-
.../src/en/guide/testing/testingMongodb.adoc | 74 -
.../guide/theWebLayer/controllers/dataBinding.adoc | 4 +-
.../guide/theWebLayer/controllers/formtokens.adoc | 2 -
.../theWebLayer/controllers/uploadingFiles.adoc | 39 +-
.../src/en/guide/theWebLayer/gson/gsonHal.adoc | 6 +-
.../src/en/guide/theWebLayer/gson/gsonTesting.adoc | 7 +-
.../theWebLayer/gsp/GSPBasics/expressions.adoc | 12 -
.../en/guide/theWebLayer/gsp/gspInSpringBoot.adoc | 164 -
.../theWebLayer/gsp/gspStaticCompilation.adoc | 253 -
.../src/en/guide/theWebLayer/gsp/layouts.adoc | 2 +-
.../gsp/makingChangesToADeployedApplication.adoc | 5 +-
.../theWebLayer/gsp/taglibs/compiledTags.adoc | 308 -
.../gsp/taglibs/usingJSPTagLibraries.adoc | 2 -
.../interceptors/interceptorMatching.adoc | 22 +-
.../theWebLayer/urlmappings/embeddedVariables.adoc | 2 -
.../theWebLayer/urlmappings/restfulMappings.adoc | 78 +-
grails-doc/src/en/guide/toc.yml | 22 -
grails-doc/src/en/guide/traits/traitsprovided.adoc | 2 +-
grails-doc/src/en/guide/upgrading.adoc | 25 -
.../src/en/guide/upgrading/upgrading60x.adoc | 118 -
.../src/en/guide/upgrading/upgrading70x.adoc | 6 +-
.../src/en/guide/upgrading/upgrading80x.adoc | 2667 +------
grails-doc/src/en/ref/Command Line/test-app.adoc | 13 +-
grails-doc/src/en/ref/Constraints/bindable.adoc | 5 +-
grails-doc/src/en/ref/Controllers/bindData.adoc | 50 +-
grails-doc/src/en/ref/Controllers/withForm.adoc | 2 -
grails-doc/src/en/ref/Database Mapping/type.adoc | 4 +-
grails-doc/src/en/ref/Dependency Versions.adoc | 5 +-
.../src/en/ref/Domain Classes/createCriteria.adoc | 2 -
grails-doc/src/en/ref/Domain Classes/list.adoc | 4 +-
.../src/en/ref/Domain Classes/listOrderBy.adoc | 2 +-
grails-doc/src/en/ref/Domain Classes/lock.adoc | 98 +-
grails-doc/src/en/ref/Domain Classes/refresh.adoc | 72 -
grails-doc/src/en/ref/Tags - GSP/set.adoc | 9 -
grails-doc/src/en/ref/Triggers.adoc | 41 -
grails-doc/src/en/ref/Triggers/cron.adoc | 59 -
grails-doc/src/en/ref/Triggers/custom.adoc | 58 -
grails-doc/src/en/ref/Triggers/simple.adoc | 57 -
grails-domain-class/build.gradle | 4 +-
.../DomainClassEnvironmentPostProcessor.groovy | 70 -
.../plugins/domain/DomainClassGrailsPlugin.groovy | 45 +-
...y => GrailsDomainClassAutoConfiguration.groovy} | 63 +-
.../src/main/resources/META-INF/spring.factories | 20 -
...rk.boot.autoconfigure.AutoConfiguration.imports | 2 +-
.../domain/AutoTimestampCacheDefaultSpec.groovy | 97 -
.../domain/DomainClassGrailsPluginSpec.groovy | 65 +
grails-encoder/build.gradle | 5 +-
.../grails/encoder/CodecMetaClassSupport.groovy | 79 +-
.../encoder/CodecMetaClassSupportSpec.groovy | 336 -
.../events/bus/spring/EventBusFactoryBean.groovy | 15 +-
.../grails/events/TaskExecuterEventBusSpec.groovy | 38 +-
grails-events/plugin/build.gradle | 7 +-
grails-fields/build.gradle | 9 +-
.../plugin/formfields/FormFieldsTagLib.groovy | 2 +-
.../formfields/FormFieldsTemplateService.groovy | 32 +-
.../model/DomainModelServiceImpl.groovy | 2 +-
.../formfields/DefaultFieldTemplateSpec.groovy | 104 +-
.../formfields/TemplateLookupCachingSpec.groovy | 38 -
grails-forge/README.md | 196 +-
grails-forge/build.gradle | 28 +-
grails-forge/config/checkstyle/checkstyle.xml | 4 +
grails-forge/docs/aws-elastic-beanstalk.md | 229 -
grails-forge/gradle.properties | 7 +-
grails-forge/gradle/test-config.gradle | 2 +-
grails-forge/gradle/wrapper/gradle-wrapper.jar | Bin 47505 -> 48462 bytes
.../gradle/wrapper/gradle-wrapper.properties | 2 +-
grails-forge/gradlew | 4 +-
grails-forge/gradlew.bat | 4 +-
.../grails/forge/api/GrailsForgeConfiguration.java | 72 +-
.../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/ApplicationControllerSpec.groovy | 23 -
.../forge/api/GrailsForgeConfigurationSpec.groovy | 49 -
.../create/github/GitHubApiMockedController.groovy | 101 +
.../github/GitHubCreateControllerSpec.groovy | 116 +
.../github/GitHubOauthMockedController.groovy | 45 +
.../src/test/resources/logback.xml | 1 +
grails-forge/grails-forge-cli/build.gradle | 7 +-
.../org/grails/forge/cli/InteractiveShell.java | 32 +-
.../groovy/org/grails/forge/cli/CommandSpec.groovy | 50 +-
grails-forge/grails-forge-core/build.gradle | 4 +-
.../dependencies/PomDependencyVersionResolver.java | 6 +-
.../forge/client/github/oauth/AccessToken.java | 59 +
.../client/github/oauth/GitHubOAuthClient.java | 20 +-
.../client/github/oauth/GitHubOAuthOperations.java | 25 +-
.../forge/client/github/v3/GitHubApiClient.java | 27 +-
.../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 | 41 +-
.../grails/forge/client/github/v3/GitHubUser.java | 68 +
.../forge/client/github/v3/GitHubWorkflowRun.java | 67 +
.../forge/client/github/v3/GitHubWorkflowRuns.java | 46 +-
.../templates/gradleWrapperProperties.rocker.raw | 2 +-
.../grails/forge/feature/database/AsyncGorm.java | 94 -
.../forge/feature/database/GrailsDataMongoDB.java | 29 +-
.../feature/database/MongoDBTestingSupport.java | 76 -
.../database/MongoDBTestingSupportValidator.java | 47 -
.../forge/feature/database/MongoFeature.java | 25 -
.../grails/forge/feature/database/MongoSync.java | 6 +-
.../grails/forge/feature/database/Neo4jGorm.java | 78 -
.../grails/templates/urlMappings.rocker.raw | 4 -
.../feature/lang/groovy/application.rocker.raw | 30 +-
.../forge/feature/lang/groovy/bootStrap.rocker.raw | 8 +-
.../org/grails/forge/feature/logging/Logback.java | 11 +-
.../forge/feature/logging/LogbackConfig.java | 84 -
.../forge/feature/security/SecurityFeature.java | 3 +-
.../security/SpringBootStarterSecurity.java | 12 +-
.../security/template/securityConfig.rocker.raw | 51 +
.../feature/security/template/user.rocker.raw | 15 +-
.../security/template/userClassic.rocker.raw | 11 +-
.../feature/security/template/userSpec.rocker.raw | 35 +-
.../org/grails/forge/feature/view/Scaffolding.java | 5 +
.../java/org/grails/forge/options/GormImpl.java | 3 +-
.../java/org/grails/forge/util/GitHubUtil.java | 94 +
.../src/main/resources/gradle/gradlew | 4 +-
.../src/main/resources/gradle/gradlew.bat | 4 +-
.../resources/gradle/wrapper/gradle-wrapper.jar | Bin 47505 -> 48462 bytes
.../src/main/resources/gsp/error.gsp | 4 +-
.../src/main/resources/gsp/index.gsp | 59 +-
.../src/main/resources/gsp/main.gsp | 35 +-
.../forge/ActiveProcessorCountForkSpec.groovy | 39 -
.../PomDependencyVersionResolverSpec.groovy | 39 +-
.../forge/feature/database/AsyncGormSpec.groovy | 94 -
.../feature/database/GrailsDataMongoDBSpec.groovy | 33 -
.../database/MongoDBTestingSupportSpec.groovy | 76 -
.../forge/feature/database/MongoSyncSpec.groovy | 18 -
.../forge/feature/database/Neo4JGormSpec.groovy | 67 -
.../feature/grails/GrailsUrlMappingsSpec.groovy | 63 -
.../forge/feature/logging/LogbackSpec.groovy | 32 +-
.../security/GrailsSpringSecuritySpec.groovy | 37 -
.../security/SpringBootStarterSecuritySpec.groovy | 95 +-
.../grails/forge/feature/view/GrailsGspSpec.groovy | 29 +-
.../forge/feature/view/ScaffoldingSpec.groovy | 4 +-
.../org/grails/forge/options/GormImplSpec.groovy | 2 +-
.../aws/.platform/nginx/conf.d/proxy.conf | 19 -
grails-forge/grails-forge-web-netty/aws/Procfile | 1 -
grails-forge/grails-forge-web-netty/aws/start.sh | 31 -
grails-forge/grails-forge-web-netty/build.gradle | 31 -
.../grails-forge-web-netty/reflect-config.json | 30 +
.../grails-forge-web-netty/resource-config.json | 5 +-
.../src/main/resources/application.yml | 13 +-
grails-forge/infrastructure/README.md | 84 -
grails-forge/infrastructure/environment.yaml | 293 -
grails-forge/infrastructure/shared.yaml | 400 --
grails-forge/settings.gradle | 10 +-
grails-geb/build.gradle | 1 -
.../grails/plugin/geb/GebGrailsPlugin.groovy | 2 +-
.../plugin/geb/GebRecordingTestListenerSpec.groovy | 80 -
.../plugin/geb/WebDriverContainerHolderSpec.groovy | 200 -
.../plugin/geb/GebRecordingTestListener.groovy | 14 -
.../plugin/geb/WebDriverContainerHolder.groovy | 52 +-
grails-gradle/build.gradle | 30 +-
.../grails/gradle/common/XmlParserFeature.java | 94 -
.../gradle/common/XmlParserFeatureSpec.groovy | 54 -
grails-gradle/gradle/docs-config.gradle | 1 +
grails-gradle/gradle/test-config.gradle | 2 +-
grails-gradle/gradle/wrapper/gradle-wrapper.jar | Bin 47505 -> 48462 bytes
.../gradle/wrapper/gradle-wrapper.properties | 2 +-
grails-gradle/gradlew | 4 +-
grails-gradle/gradlew.bat | 4 +-
grails-gradle/model/build.gradle | 3 +-
.../model/src/main/groovy/grails/io/IOUtils.groovy | 6 +-
.../main/groovy/grails/util/BuildSettings.groovy | 43 -
.../src/main/groovy/grails/util/Environment.groovy | 8 +-
.../org/grails/io/support/SpringIOUtils.java | 162 +-
.../org/grails/io/support/SpringIOUtilsSpec.groovy | 194 -
grails-gradle/plugins/build.gradle | 7 -
.../gradle/plugin/aot/AotCacheExtension.groovy | 67 -
.../plugin/aot/ExtractApplicationTask.groovy | 96 -
.../plugin/aot/GenerateNativeMetadataTask.groovy | 188 -
.../plugin/aot/NativeMetadataExtension.groovy | 62 -
.../apache/grails/gradle/plugin/aot/RunPort.groovy | 64 -
.../grails/gradle/plugin/aot/StartupLog.groovy | 113 -
.../plugin/aot/TraceNativeMetadataTask.groovy | 495 --
.../gradle/plugin/aot/TrainAotCacheTask.groovy | 385 -
.../plugin/bom/BomPropertyOverridesPlugin.groovy | 8 -
.../commands/GrailsCliArtifactGradlePlugin.groovy | 97 +-
.../plugin/commands/GrailsCliGradlePlugin.groovy | 100 +-
.../AutoConfigurationImportsCompileInput.groovy | 44 -
.../GrailsCompileStaticArtefactsProvider.groovy | 11 +-
.../plugin/core/GrailsCompileStaticOptions.groovy | 112 +-
.../core/GrailsCompilerConfigScriptTask.groovy | 87 -
.../gradle/plugin/core/GrailsExtension.groovy | 72 +-
.../plugin/core/GrailsGormIdTypeProvider.groovy | 76 -
.../gradle/plugin/core/GrailsGormOptions.groovy | 71 -
.../gradle/plugin/core/GrailsGradlePlugin.groovy | 709 +-
.../core/GrailsGspCompileStaticProvider.groovy | 79 -
.../gradle/plugin/core/GrailsI18nOptions.groovy | 64 -
.../plugin/core/GrailsPluginGradlePlugin.groovy | 150 +-
.../plugin/core/TestPhasesGradlePlugin.groovy | 2 +-
.../plugin/i18n/GenerateI18nDescriptorTask.groovy | 177 -
.../gradle/plugin/i18n/I18nBundleIndex.groovy | 222 -
.../scaffolding/GenerateScaffoldedViewsTask.groovy | 301 -
.../views/gsp/GenerateTagLibraryIndexTask.groovy | 206 -
.../views/gsp/GroovyPageForkCompileTask.groovy | 62 +-
.../plugin/views/gsp/GroovyPagePlugin.groovy | 404 +-
.../plugin/views/gsp/TagLibraryIndexFiles.groovy | 133 -
.../plugin/aot/ExtractApplicationTaskSpec.groovy | 54 -
.../aot/GenerateNativeMetadataTaskSpec.groovy | 182 -
.../grails/gradle/plugin/aot/RunPortSpec.groovy | 74 -
.../grails/gradle/plugin/aot/StartupLogSpec.groovy | 129 -
.../plugin/aot/TraceNativeMetadataTaskSpec.groovy | 345 -
.../gradle/plugin/aot/TracedRunFixture.groovy | 138 -
.../gradle/plugin/aot/TrainAotCacheTaskSpec.groovy | 383 -
.../gradle/plugin/aot/TrainingRunFixture.groovy | 66 -
.../bom/BomPropertyOverridesPluginSpec.groovy | 20 -
.../plugin/commands/CliAutoDiscoverySpec.groovy | 129 +-
.../commands/LegacyCommandTaskDiscoverySpec.groovy | 44 -
.../PluginScriptCommandPackagingSpec.groovy | 129 -
.../core/ActiveProcessorCountForkSpec.groovy | 38 -
.../plugin/core/AssetClasspathPackagingSpec.groovy | 47 -
.../core/AutoConfigurationImportsInputSpec.groovy | 53 -
.../plugin/core/BomPlatformFunctionalSpec.groovy | 32 +
.../core/GormDefaultIdTypeFunctionalSpec.groovy | 97 -
...GrailsCompileStaticArtefactsProviderSpec.groovy | 39 -
.../core/GrailsCompileStaticOptionsSpec.groovy | 14 +-
.../gradle/plugin/core/GrailsExtensionSpec.groovy | 43 +-
.../core/GrailsGormIdTypeProviderSpec.groovy | 121 -
.../core/GrailsGroovyCompilerConfigSpec.groovy | 369 -
.../core/GrailsGspCompileStaticProviderSpec.groovy | 153 -
.../core/GrailsNativeImageDefaultsSpec.groovy | 101 -
.../core/GrailsWebDaemonReuseFunctionalSpec.groovy | 56 -
.../plugin/core/TestPhasesGradlePluginSpec.groovy | 108 -
.../i18n/GenerateI18nDescriptorTaskSpec.groovy | 124 -
.../gradle/plugin/i18n/I18nBundleIndexSpec.groovy | 148 -
.../i18n/I18nDescriptorFunctionalSpec.groovy | 119 -
.../GenerateScaffoldedViewsTaskSpec.groovy | 335 -
.../gsp/GenerateTagLibraryIndexTaskSpec.groovy | 231 -
.../gsp/GroovyPagePluginFunctionalSpec.groovy | 131 -
.../views/gsp/GroovyPageToolchainSpec.groovy | 108 -
.../views/gsp/TagLibraryIndexFilesSpec.groovy | 113 -
.../gsp/TagLibraryIndexWiringFunctionalSpec.groovy | 131 -
.../asset-classpath-packaging/build.gradle | 42 -
.../asset-classpath-packaging/gradle.properties | 2 -
.../asset-classpath-packaging/settings.gradle | 1 -
.../build.gradle | 38 +
.../gradle.properties | 0
.../settings.gradle | 1 +
.../build.gradle | 49 +
.../gradle.properties | 0
.../settings.gradle | 1 +
.../cli-companion-autodiscovery/app/build.gradle | 37 +-
.../included-digit-bearing-plugin/build.gradle | 21 -
.../my-plugin-2fa-one/build.gradle | 1 -
.../my-plugin-2fa-snapshot/build.gradle | 1 -
.../my-plugin-2fa-timestamp/build.gradle | 1 -
.../my-plugin-2fa-unspecified/build.gradle | 1 -
.../included-digit-bearing-plugin/settings.gradle | 3 -
.../cli-companion-autodiscovery/settings.gradle | 9 -
.../app/build.gradle | 20 -
.../build.gradle | 0
.../producer/build.gradle | 3 -
.../runtime-only-producer/build.gradle | 3 -
.../settings.gradle | 4 -
.../build.gradle | 123 -
.../settings.gradle | 25 -
.../src/main/groovy/example/ConfiguredType.groovy | 29 -
.../build.gradle | 60 -
.../gradle.properties | 1 -
.../settings.gradle | 1 -
.../compiler-config-incremental/build.gradle | 11 -
.../compiler-config-incremental/gradle.properties | 1 -
.../compiler-config-incremental/settings.gradle | 1 -
.../compiler-config-late-assignment/build.gradle | 20 -
.../gradle.properties | 1 -
.../settings.gradle | 1 -
.../user-config.groovy | 1 -
.../compiler-config-late-source-set/build.gradle | 15 -
.../gradle.properties | 1 -
.../settings.gradle | 1 -
.../build.gradle | 7 -
.../gradle.properties | 1 -
.../settings.gradle | 1 -
.../compiler-config-plugin-inputs/build.gradle | 14 -
.../gradle.properties | 1 -
.../compiler-config-plugin-inputs/settings.gradle | 1 -
.../build.gradle | 40 -
.../gradle.properties | 1 -
.../settings.gradle | 1 -
.../compiler-config-standalone-task/build.gradle | 27 -
.../gradle.properties | 1 -
.../settings.gradle | 1 -
.../user-config.groovy | 1 -
.../compiler-config-star-imports/build.gradle | 17 -
.../compiler-config-star-imports/gradle.properties | 1 -
.../compiler-config-star-imports/settings.gradle | 1 -
.../app/build.gradle | 21 -
.../app/grails-app/conf/application.yml | 4 -
.../build.gradle | 31 -
.../gradle.properties | 1 -
.../plugin/build.gradle | 16 -
.../plugin/src/main/java/example/PortableBook.java | 14 -
.../settings.gradle | 11 -
.../gorm-default-id-type/build.gradle | 33 -
.../gorm-default-id-type/gradle.properties | 1 -
.../grails-app/conf/application.yml | 2 -
.../gorm-default-id-type/settings.gradle | 1 -
.../gsp-compile-classpath-grails/build.gradle | 30 -
.../gsp-compile-classpath-grails/gradle.properties | 2 -
.../gsp-compile-classpath-grails/settings.gradle | 1 -
.../gsp-compile-classpath/build.gradle | 66 -
.../compile-classpath-marker/marker.txt | 1 -
.../provided-compile-marker/marker.txt | 1 -
.../gsp-compile-classpath/settings.gradle | 1 -
.../test-projects/gsp-compile-static/build.gradle | 32 -
.../gsp-compile-static/gradle.properties | 1 -
.../grails-app/conf/application.yml | 0
.../gsp-compile-static/settings.gradle | 1 -
.../test-projects/i18n-descriptor-app/build.gradle | 3 -
.../i18n-descriptor-app/gradle.properties | 2 -
.../grails-app/i18n/api_errors.properties | 1 -
.../grails-app/i18n/messages.properties | 1 -
.../grails-app/i18n/messages_de.properties | 1 -
.../grails-app/i18n/messages_pt_BR.properties | 1 -
.../i18n-descriptor-app/settings.gradle | 1 -
.../i18n-descriptor-declared/build.gradle | 9 -
.../i18n-descriptor-declared/gradle.properties | 2 -
.../grails-app/i18n/api.properties | 1 -
.../grails-app/i18n/api_errors.properties | 1 -
.../i18n-descriptor-declared/settings.gradle | 1 -
.../i18n-descriptor-plugin-collision/build.gradle | 3 -
.../gradle.properties | 2 -
.../grails-app/i18n/messages.properties | 1 -
.../settings.gradle | 1 -
.../demo/SpringSecurityDemoGrailsPlugin.groovy | 5 -
.../i18n-descriptor-plugin/build.gradle | 3 -
.../i18n-descriptor-plugin/gradle.properties | 2 -
.../spring-security-demo-validation.properties | 1 -
.../i18n/spring-security-demo.properties | 1 -
.../i18n/spring-security-demo_fr.properties | 1 -
.../i18n-descriptor-plugin/settings.gradle | 1 -
.../demo/SpringSecurityDemoGrailsPlugin.groovy | 5 -
.../legacy-command-discovery/app/build.gradle | 15 -
.../legacy-command-discovery/gradle.properties | 2 -
.../legacy-command-api/build.gradle | 3 -
.../java/grails/dev/commands/ExecutionContext.java | 22 -
.../legacy-command-plugin/build.gradle | 14 -
.../example/legacy/HelloLegacyAppCommand.groovy | 40 -
.../src/main/resources/META-INF/grails.factories | 1 -
.../legacy-command-discovery/settings.gradle | 3 -
.../test-projects/native-defaults-aot/build.gradle | 10 -
.../native-defaults-aot/gradle.properties | 1 -
.../grails-app/conf/application.yml | 0
.../native-defaults-aot/settings.gradle | 1 -
.../test-projects/native-defaults-off/build.gradle | 12 -
.../native-defaults-off/gradle.properties | 1 -
.../grails-app/conf/application.yml | 0
.../native-defaults-off/settings.gradle | 1 -
.../test-projects/native-defaults-on/build.gradle | 10 -
.../native-defaults-on/gradle.properties | 1 -
.../grails-app/conf/application.yml | 0
.../native-defaults-on/settings.gradle | 1 -
.../native-metadata-ordering/build.gradle | 24 -
.../native-metadata-ordering/gradle.properties | 1 -
.../grails-app/conf/application.yml | 0
.../grails-app/views/index.gsp | 3 -
.../native-metadata-ordering/settings.gradle | 1 -
.../plugin-script-commands/gradle.properties | 2 -
.../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 -
.../test-projects/taglib-index-wiring/build.gradle | 32 -
.../taglib-index-wiring/settings.gradle | 1 -
.../test-projects/web-daemon-reuse/build.gradle | 3 -
.../web-daemon-reuse/gradle.properties | 1 -
.../grails-app/conf/application.yml | 0
.../test-projects/web-daemon-reuse/settings.gradle | 1 -
grails-gradle/settings.gradle | 8 -
grails-gsp/core/build.gradle | 13 +-
.../gsp/aot/PrecompiledPageRuntimeHints.java | 52 -
.../org/grails/gsp/CompileStaticGroovyPage.groovy | 5 -
.../src/main/groovy/org/grails/gsp/GroovyPage.java | 93 +-
.../groovy/org/grails/gsp/GroovyPageMetaInfo.java | 117 +-
.../org/grails/gsp/GroovyPagesMetaUtils.groovy | 25 +-
.../org/grails/gsp/GroovyPagesTemplateEngine.java | 12 +-
.../org/grails/gsp/ModelRecordingGroovyPage.groovy | 3 +-
.../grails/gsp/compiler/GroovyPageCompiler.groovy | 69 +-
.../org/grails/gsp/compiler/GroovyPageParser.java | 295 +-
.../org/grails/gsp/compiler/GroovyPageScanner.java | 13 +-
.../gsp/compiler/GroovyPageTypeCheckingConfig.java | 22 -
.../GroovyPageTypeCheckingExtension.groovy | 255 +-
.../gsp/compiler/PageScopeVariableScanner.java | 177 -
.../org/grails/gsp/compiler/tags/GroovyDefTag.java | 25 +-
.../grails/gsp/io/DefaultGroovyPageLocator.java | 25 +-
.../main/resources/META-INF/spring/aot.factories | 2 -
.../gsp/aot/PrecompiledPageRuntimeHintsSpec.groovy | 64 -
.../grails/gsp/GroovyPageMetaInfoReloadSpec.groovy | 162 -
.../grails/gsp/GroovyPageMethodMissingSpec.groovy | 120 -
.../GroovyPagesTemplateEngineChecksumSpec.groovy | 52 -
.../gsp/GroovyPagesTemplateEngineTests.groovy | 58 -
.../grails/gsp/GspCompileStaticConfigSpec.groovy | 721 --
.../org/grails/gsp/GspCompileStaticSpec.groovy | 133 -
.../GroovyPageCompilerReproducibilitySpec.groovy | 107 -
.../gsp/compiler/GroovyPageCompilerSpec.groovy | 116 -
.../compiler/PageScopeVariableScannerSpec.groovy | 119 -
.../DefaultGroovyPageLocatorPrecompiledSpec.groovy | 120 -
grails-gsp/grails-layout/build.gradle | 7 +-
...ilsSiteMeshViewResolverBeanPostProcessor.groovy | 18 +-
.../sitemesh3/Sitemesh3AutoConfiguration.groovy | 131 +
.../Sitemesh3EnvironmentPostProcessor.groovy | 38 +-
.../plugins/sitemesh3/Sitemesh3GrailsPlugin.groovy | 127 +-
.../plugins/sitemesh3/Sitemesh3LayoutTagLib.groovy | 8 -
.../sitemesh3/GrailsSiteMeshViewResolver.java | 12 +-
.../src/main/resources/META-INF/spring.factories | 2 +-
...iteMeshViewResolverBeanPostProcessorSpec.groovy | 22 -
...lsSiteMeshViewResolverServletContextSpec.groovy | 105 -
.../Sitemesh3AutoConfigurationSpec.groovy | 53 -
.../sitemesh3/Sitemesh3LayoutTagLibSpec.groovy | 20 -
grails-gsp/grails-taglib/build.gradle | 8 +-
.../grails/core/gsp/DefaultGrailsTagLibClass.java | 24 +-
.../org/grails/taglib/CompiledTagInvocation.java | 215 -
.../org/grails/taglib/GroovyPageAttributes.java | 13 +-
.../grails/taglib/NamespacedTagDispatcher.groovy | 23 +-
.../taglib/TagLibNamespaceMethodDispatcher.groovy | 2 +-
.../org/grails/taglib/TagLibraryMetaUtils.groovy | 56 +-
.../groovy/org/grails/taglib/TagMethodInvoker.java | 217 +-
.../main/groovy/org/grails/taglib/TagOutput.java | 2 +-
.../taglib/TemplateNamespacedTagDispatcher.groovy | 16 +-
.../grails/taglib/discovery/AstTagLibraryView.java | 85 -
.../grails/taglib/discovery/AstTagMethodView.java | 127 -
.../taglib/discovery/ReflectedTagLibraryView.java | 73 -
.../taglib/discovery/ReflectedTagMethodView.java | 110 -
.../grails/taglib/discovery/TagDiscoveryRules.java | 187 -
.../taglib/discovery/TagLibraryAstDiscovery.java | 88 -
.../grails/taglib/discovery/TagLibraryView.java | 53 -
.../org/grails/taglib/discovery/TagMethodView.java | 103 -
.../org/grails/taglib/index/TagLibraryIndex.java | 526 --
.../grails/taglib/index/TagLibraryIndexEntry.java | 32 -
.../taglib/index/TagLibraryIndexGenerator.java | 431 --
.../grails/taglib/index/TagLibraryIndexWriter.java | 212 -
.../grails/taglib/GroovyPageAttributesTests.groovy | 70 +-
.../grails/taglib/index/TagLibraryIndexSpec.groovy | 340 -
.../TagLibraryIndexWriterConcurrencySpec.groovy | 127 -
grails-gsp/grails-web-gsp-taglib/build.gradle | 2 -
.../web/pages/StandaloneTagLibraryLookup.java | 41 +-
grails-gsp/grails-web-gsp/build.gradle | 13 +-
.../gsp/io/GrailsConventionGroovyPageLocator.java | 2 +-
.../org/grails/web/pages/GSPResponseWriter.java | 2 +-
.../grails/web/servlet/view/GroovyPageView.java | 5 +-
.../web/servlet/view/GroovyPageViewResolver.java | 4 +-
.../GrailsConventionGroovyPageLocatorSpec.groovy | 1 +
grails-gsp/grails-web-jsp/build.gradle | 2 -
.../org/grails/gsp/jsp/GroovyPagesPageContext.java | 2 +-
.../org/grails/gsp/jsp/PageContextFactory.groovy | 2 +-
.../groovy/org/grails/gsp/jsp/TldReader.groovy | 3 +-
.../grails/gsp/jsp/WebXmlTagLibraryReader.groovy | 3 +-
grails-gsp/grails-web-taglib/build.gradle | 3 +-
.../main/groovy/grails/artefact/TagLibrary.groovy | 31 +-
.../grails/artefact/gsp/TagLibraryInvoker.groovy | 20 +-
.../taglib/compiler/CompiledTagCallRewriter.java | 616 --
.../gsp/taglib/compiler/LocalNameCollector.java | 131 -
.../gsp/taglib/compiler/PageBindingCollector.java | 93 -
.../TagLibArtefactTypeAstTransformation.java | 88 +-
.../taglib/WebRequestTemplateVariableBinding.java | 13 +-
.../taglib/discovery/TagDiscoveryRulesSpec.groovy | 122 -
.../taglib/discovery/TagSetAgreementSpec.groovy | 98 -
.../taglib/index/SingleIndexProducerSpec.groovy | 126 -
.../index/SourceResolvedIndexGeneratorSpec.groovy | 452 --
.../index/TagLibraryIndexGeneratorSpec.groovy | 301 -
.../web/taglib/NoMetaClassMutationSpec.groovy | 104 -
.../web/taglib/TagLibraryLookupIndexSpec.groovy | 118 -
.../org/grails/web/taglib/TagPrecedenceSpec.groovy | 112 -
grails-gsp/plugin/build.gradle | 15 +-
.../traits/CompiledTagCallTransformation.groovy | 109 -
...org.codehaus.groovy.transform.ASTTransformation | 1 -
.../TagLibBeanDefinitionsPostProcessor.groovy | 95 -
.../grails/gsp/taglib/aot/TagLibRuntimeHints.java | 136 -
.../plugins/web/GroovyPagesGrailsPlugin.groovy | 88 +-
.../grails/plugins/web/taglib/FormTagLib.groovy | 186 +-
.../plugins/web/taglib/ValidationTagLib.groovy | 4 +-
.../additional-spring-configuration-metadata.json | 116 -
.../META-INF/spring-configuration-metadata.json | 99 +
.../main/resources/META-INF/spring/aot.factories | 2 -
.../TagLibBeanDefinitionsPostProcessorSpec.groovy | 117 -
.../gsp/taglib/aot/TagLibRuntimeHintsSpec.groovy | 84 -
.../groovy/org/grails/gsp/compiler/ScanTests.java | 33 -
.../org/grails/gsp/jsp/JstlDocTypeTldSpec.groovy | 72 -
.../org/grails/gsp/jsp/TldReaderTests.groovy | 56 -
.../gsp/jsp/WebXmlTagLibraryReaderTests.groovy | 20 -
.../GroovyPagesGrailsPluginPrecompiledSpec.groovy | 77 -
.../groovy/org/grails/web/pages/ParseSpec.groovy | 2 +-
.../web/taglib/AbstractGrailsTagTests.groovy | 24 +-
.../web/taglib/CompiledPageTagCallSpec.groovy | 138 -
.../web/taglib/CompiledTagCallBytecodeSpec.groovy | 284 -
.../web/taglib/CompiledTagCallRewriterSpec.groovy | 53 -
.../CompiledTagCallTransformationOrderSpec.groovy | 68 -
.../web/taglib/CompiledTagInvocationSpec.groovy | 146 -
.../web/taglib/ControllerTagCallRewriteSpec.groovy | 156 -
.../web/taglib/FormTagLibResourceTests.groovy | 21 -
.../org/grails/web/taglib/FormTagLibTests.groovy | 15 -
.../taglib/GroovyMethodNameCollisionSpec.groovy | 212 -
.../web/taglib/GspStaticTagResolutionSpec.groovy | 181 -
.../grails/web/taglib/IndexEdgeCaseTagLib.groovy | 65 -
.../web/taglib/LocaleSelectRenderingSpec.groovy | 151 +-
.../grails/web/taglib/RewrittenCallsTagLib.groovy | 52 -
.../web/taglib/RewrittenPageRenderingSpec.groovy | 92 -
.../web/taglib/SameProjectTagResolutionSpec.groovy | 129 -
.../grails/web/taglib/TagCallShadowingSpec.groovy | 236 -
.../web/taglib/TagLibraryIndexAgreementSpec.groovy | 119 -
.../taglib/TagLibraryInvokerDispatchSpec.groovy | 176 -
.../org/grails/web/taglib/TypedSetTagSpec.groovy | 46 -
grails-gsp/spring-boot/README.md | 47 +-
grails-gsp/spring-boot/build.gradle | 6 -
.../java/grails/gsp/boot/GspAutoConfiguration.java | 189 +-
...oneGrailsApplicationAwareBeanPostProcessor.java | 63 -
.../gsp/boot/StandaloneGroovyPageViewResolver.java | 76 -
.../gsp/boot/GspAutoConfigurationSpec.groovy | 133 -
...ilsApplicationAwareBeanPostProcessorSpec.groovy | 109 -
.../StandaloneGroovyPageViewResolverSpec.groovy | 92 -
.../gsp/boot/StandaloneTagLibraryLookupSpec.groovy | 117 -
.../gsp/boot/TagLibraryLookupRegistrarSpec.groovy | 110 -
.../boot/UrlMappingsHolderConfigurationSpec.groovy | 91 -
.../src/test/resources/gsp/views.properties | 23 -
grails-i18n/build.gradle | 5 +-
.../plugins/i18n/AvailableLocaleResolver.java | 155 +-
.../plugins/i18n/EffectiveI18nDescriptors.java | 141 -
.../GrailsLocaleResolverAutoConfiguration.java | 22 +-
.../grails/plugins/i18n/I18nAutoConfiguration.java | 159 +
.../org/grails/plugins/i18n/I18nDescriptor.java | 60 -
.../org/grails/plugins/i18n/I18nDescriptors.java | 175 -
.../plugins/i18n/I18nEnvironmentPostProcessor.java | 251 -
.../grails/plugins/i18n/I18nGrailsPlugin.groovy | 112 +-
.../plugins/i18n/I18nRuntimeHintsProcessor.java | 117 -
.../src/main/resources/META-INF/spring.factories | 19 -
.../main/resources/META-INF/spring/aot.factories | 20 -
.../i18n/AvailableLocaleResolverSpec.groovy | 190 +-
...railsLocaleResolverAutoConfigurationSpec.groovy | 24 -
.../plugins/i18n/I18nAutoConfigurationSpec.groovy | 96 +-
.../grails/plugins/i18n/I18nDescriptorsSpec.groovy | 184 -
.../i18n/I18nEnvironmentPostProcessorSpec.groovy | 291 -
.../plugins/i18n/I18nGrailsPluginSpec.groovy | 17 +-
.../i18n/I18nRuntimeHintsProcessorSpec.groovy | 119 -
.../i18n/MessageSourcePrecedenceSpec.groovy | 124 -
.../plugins/i18n/MessageSourceReloadSpec.groovy | 97 -
.../test/resources/META-INF/grails/i18n.properties | 8 -
.../src/test/resources/alpha-plugin.properties | 3 -
.../src/test/resources/beta-plugin.properties | 3 -
grails-interceptors/build.gradle | 6 +-
.../main/groovy/grails/artefact/Interceptor.groovy | 48 +-
.../main/groovy/grails/interceptors/Matcher.groovy | 20 -
...ailsInterceptorHandlerInterceptorAdapter.groovy | 79 +-
.../web/interceptors/UrlMappingMatcher.groovy | 38 +-
...InterceptorHandlerInterceptorAdapterSpec.groovy | 325 -
.../groovy/grails/artefact/InterceptorSpec.groovy | 257 +-
.../web/interceptors/UrlMappingMatcherSpec.groovy | 67 +-
grails-logging/build.gradle | 2 -
grails-mail/build.gradle | 7 -
.../plugins/mail/MailAutoConfiguration.groovy | 118 +
.../grails/plugins/mail/MailGrailsPlugin.groovy | 93 +-
.../grails/plugins/mail/PlainTextMailTagLib.groovy | 2 +-
.../plugins/mail/MailAutoConfigurationSpec.groovy | 150 -
.../plugins/mail/PlainTextMailTagLibSpec.groovy | 50 -
.../build.gradle | 25 +-
.../micronaut/GrailsMicronautGrailsPlugin.groovy | 96 +
grails-mimetypes/build.gradle | 11 +-
.../grails/mimetypes/aot/MimeTypeRuntimeHints.java | 57 -
.../plugins/web/api/MimeTypesApiSupport.groovy | 2 +-
.../web/mime/HttpServletResponseExtension.groovy | 8 +-
.../main/resources/META-INF/spring/aot.factories | 2 -
grails-profiles/base/profile.yml | 2 +
.../skeleton/gradle/wrapper/gradle-wrapper.jar | Bin 47505 -> 48462 bytes
.../gradle/wrapper/gradle-wrapper.properties | 2 +-
grails-profiles/base/skeleton/gradlew | 4 +-
grails-profiles/base/skeleton/gradlew.bat | 4 +-
.../skeleton/grails-app/conf/logback-spring.xml | 25 +
.../skeleton/gradle/wrapper/gradle-wrapper.jar | Bin 47505 -> 48462 bytes
.../gradle/wrapper/gradle-wrapper.properties | 2 +-
grails-profiles/profile/skeleton/gradlew | 4 +-
grails-profiles/profile/skeleton/gradlew.bat | 4 +-
.../artifacts/scaffolding/Controller.groovy | 4 +-
.../web/skeleton/grails-app/views/error.gsp | 4 +-
.../web/skeleton/grails-app/views/index.gsp | 59 +-
.../web/skeleton/grails-app/views/layouts/main.gsp | 35 +-
grails-quartz/build.gradle | 89 -
.../grails/plugins/quartz/JobManagerService.groovy | 122 -
.../plugins/quartz/CustomTriggerFactoryBean.java | 125 -
.../plugins/quartz/DefaultGrailsJobClass.java | 128 -
.../grails/plugins/quartz/GrailsJobClass.java | 89 -
.../plugins/quartz/GrailsJobClassConstants.java | 92 -
.../grails/plugins/quartz/GrailsJobFactory.java | 181 -
.../plugins/quartz/JobArtefactHandler.groovy | 75 -
.../grails/plugins/quartz/JobDescriptor.groovy | 54 -
.../plugins/quartz/JobDetailFactoryBean.java | 130 -
.../groovy/grails/plugins/quartz/QuartzJob.groovy | 154 -
.../plugins/quartz/QuartzJobTraitInjector.groovy | 33 -
.../grails/plugins/quartz/TriggerDescriptor.groovy | 52 -
.../grails/plugins/quartz/TriggerUtils.groovy | 64 -
.../plugins/quartz/cleanup/JdbcCleanup.groovy | 63 -
.../quartz/config/TriggersConfigBuilder.groovy | 257 -
.../listeners/ExceptionPrinterJobListener.java | 46 -
.../quartz/listeners/SessionBinderJobListener.java | 94 -
.../main/groovy/quartz/QuartzGrailsPlugin.groovy | 453 --
grails-quartz/src/main/scripts/CreateJob.groovy | 39 -
grails-quartz/src/main/templates/Job.groovy | 11 -
.../plugins/quartz/CronTriggerTimeZoneSpec.groovy | 62 -
.../quartz/CustomTriggerFactoryBeanSpec.groovy | 140 -
.../quartz/DefaultGrailsJobClassSpec.groovy | 96 -
.../plugins/quartz/GrailsJobFactorySpec.groovy | 198 -
.../plugins/quartz/JobArtefactHandlerSpec.groovy | 61 -
.../grails/plugins/quartz/JobDescriptorSpec.groovy | 64 -
.../plugins/quartz/JobDetailFactoryBeanSpec.groovy | 162 -
.../grails/plugins/quartz/MockDoWithSpring.groovy | 49 -
.../grails/plugins/quartz/QuartzJobSpec.groovy | 325 -
.../quartz/QuartzJobTraitInjectorSpec.groovy | 34 -
.../grails/plugins/quartz/TestQuartzJob.groovy | 32 -
.../plugins/quartz/TriggerDescriptorSpec.groovy | 73 -
.../quartz/config/TriggersConfigBuilderSpec.groovy | 166 -
.../groovy/quartz/QuartzGrailsPluginSpec.groovy | 371 -
.../groovy/quartz/QuartzJobStoreCleanupSpec.groovy | 242 -
.../quartz/QuartzSchedulerContextSpec.groovy | 145 -
.../quartz/QuartzStartupSchedulingSpec.groovy | 198 -
.../test/groovy/quartz/jobs/ContextSpecJob.groovy | 42 -
grails-redis/build.gradle | 4 +-
.../src/main/groovy/redis/RedisGrailsPlugin.groovy | 21 +-
grails-rest-transforms/build.gradle | 7 +-
.../artefact/controller/RestResponder.groovy | 2 +-
.../groovy/grails/rest/RestfulController.groovy | 2 +-
.../rest/plugin/RestResponderGrailsPlugin.groovy | 2 +-
.../web/rest/render/ServletRenderContext.groovy | 7 +-
.../ServletRenderContextHttpMethodSpec.groovy | 58 -
grails-scaffolding/build.gradle | 9 +-
.../grails/plugin/scaffolding/GormService.groovy | 2 +
.../scaffolding/RestfulServiceController.groovy | 4 +-
.../scaffolding/ScaffoldingGrailsPlugin.groovy | 8 +-
.../scaffolding/aot/ScaffoldingRuntimeHints.java | 54 -
.../main/resources/META-INF/spring/aot.factories | 2 -
.../templates/scaffolding/AsyncController.groovy | 8 +-
.../main/templates/scaffolding/Controller.groovy | 6 +-
.../src/main/templates/scaffolding/create.gsp | 1 -
.../src/main/templates/scaffolding/edit.gsp | 1 -
.../src/main/templates/scaffolding/index.gsp | 3 +-
.../src/main/templates/scaffolding/show.gsp | 1 -
.../ScaffoldedIndexViewModelSpec.groovy | 63 -
grails-services/build.gradle | 4 +-
grails-shell-cli/build.gradle | 20 +-
.../main/groovy/org/grails/cli/GrailsCli.groovy | 58 +-
...SpringApplicationWebApplicationInitializer.java | 15 +-
.../cli/command/run/SpringApplicationRunner.java | 26 +-
...ltRepositorySystemSessionAutoConfiguration.java | 55 -
.../grails/cli/gradle/GradleAsyncInvoker.groovy | 3 +-
.../cli/gradle/cache/CachedGradleOperation.groovy | 3 +-
.../completers/ClassNameCompleter.groovy | 3 +-
.../org/grails/cli/profile/AbstractProfile.groovy | 4 +-
.../grails/cli/profile/ProfileRepoConfig.groovy | 2 +-
.../cli/profile/commands/CreateAppCommand.groovy | 4 +-
.../commands/DefaultMultiStepCommand.groovy | 3 +-
.../ApplicationContextCommandFactory.groovy | 62 +-
.../factory/GroovyScriptCommandFactory.groovy | 2 -
.../commands/templates/TemplateRendererImpl.groovy | 3 +-
.../repository/MavenProfileRepository.groovy | 35 +-
.../org/grails/cli/GrailsCliLoggingVerifier.groovy | 63 -
.../cli/GrailsCliProjectDetectionSpec.groovy | 57 -
.../groovy/org/grails/cli/GrailsCliSpec.groovy | 101 -
...ApplicationWebApplicationInitializerSpec.groovy | 97 -
.../cli/command/run/LifecycleVerifier.groovy | 195 -
.../command/run/SpringApplicationRunnerSpec.groovy | 133 -
...sitorySystemSessionAutoConfigurationSpec.groovy | 97 -
.../gradle/RunningApplicationProcessSpec.groovy | 20 +-
.../grails/cli/profile/AbstractProfileSpec.groovy | 119 -
.../profile/commands/CreateAppCommandSpec.groovy | 2 +-
.../ApplicationContextCommandFactorySpec.groovy | 113 -
.../factory/LegacyPluginScriptCompatSpec.groovy | 107 -
.../MavenProfileRepositorySnapshotSpec.groovy | 53 -
.../gradle/wrapper/gradle-wrapper.jar | Bin 47505 -> 48462 bytes
.../gradle/wrapper/gradle-wrapper.properties | 2 +-
.../src/test/resources/gradle-sample/gradlew | 4 +-
.../src/test/resources/gradle-sample/gradlew.bat | 4 +-
.../spring-boot-dependencies-effective-bom.xml | 9 -
.../acl/SpringSecurityAclGrailsPlugin.groovy | 8 +-
.../conf/DefaultCasSecurityConfig.groovy | 5 +-
.../cas/plugin/grails-app/conf/logback.xml | 1 +
.../cas/SpringSecurityCasGrailsPlugin.groovy | 48 +-
grails-spring-security/compat/build.gradle | 7 -
.../web/util/matcher/AntPathRequestMatcher.groovy | 38 +-
.../util/matcher/AntPathRequestMatcherSpec.groovy | 122 -
grails-spring-security/ldap/plugin/build.gradle | 4 -
.../ldap/plugin/grails-app/conf/logback.xml | 1 +
.../ldap/SpringSecurityLdapGrailsPlugin.groovy | 8 +-
grails-spring-security/oauth2/plugin/build.gradle | 6 +-
...urity-oauth2.properties => messages.properties} | 0
.../oauth2/SpringSecurityOauth2GrailsPlugin.groovy | 2 +-
grails-spring-security/plugin/build.gradle | 12 +-
.../plugin/springsecurity/ReflectionUtils.groovy | 7 +-
.../SpringSecurityCoreGrailsPlugin.groovy | 8 +-
.../springsecurity/SpringSecurityUtils.groovy | 12 +-
...tContextHolderExceptionTranslationFilter.groovy | 6 +
.../web/filter/IpAddressFilter.groovy | 50 +-
...ata.json => spring-configuration-metadata.json} | 124 +
.../ConfigurationMetadataSpec.groovy | 82 -
.../springsecurity/ReflectionUtilsSpec.groovy | 48 -
...textHolderExceptionTranslationFilterSpec.groovy | 93 -
.../web/filter/IpAddressFilterSpec.groovy | 178 -
grails-spring-security/rest/core/build.gradle | 3 -
.../rest/SpringSecurityRestGrailsPlugin.groovy | 10 +-
grails-spring-security/rest/gorm/build.gradle | 1 -
.../rest/SpringSecurityRestGormGrailsPlugin.groovy | 10 +-
.../rest/grailscache/build.gradle | 3 -
...pringSecurityRestGrailsCacheGrailsPlugin.groovy | 10 +-
grails-spring-security/rest/memcached/build.gradle | 1 -
.../SpringSecurityRestMemcachedGrailsPlugin.groovy | 8 +-
grails-spring-security/rest/redis/build.gradle | 1 -
.../SpringSecurityRestRedisGrailsPlugin.groovy | 10 +-
grails-spring-security/ui/plugin/build.gradle | 16 +-
...ties => messages.spring-security-ui.properties} | 0
.../ui/SpringSecurityUiGrailsPlugin.groovy | 8 +-
grails-spring/build.gradle | 1 -
.../spring/DefaultRuntimeSpringConfiguration.java | 32 +-
...DefaultRuntimeSpringConfigurationAotSpec.groovy | 96 -
grails-test-core/build.gradle | 32 +-
.../AbstractGrailsMockHttpServletResponse.groovy | 14 +-
.../grails/test/io/SystemOutAndErrSwapper.groovy | 24 +-
.../org/grails/test/report/junit/JUnitReports.java | 90 +
.../test/report/junit/JUnitReportsFactory.java | 75 +
.../grails/test/report/junit/PlainFormatter.java | 110 +
.../org/grails/test/report/junit/XMLFormatter.java | 62 +
grails-test-examples/aot/build.gradle | 96 -
.../aot/grails-app/conf/application.yml | 20 -
.../controllers/aot/GreetingController.groovy | 30 -
.../grails-app/controllers/aot/UrlMappings.groovy | 29 -
.../aot/grails-app/init/aot/Application.groovy | 112 -
.../grails-app/services/aot/GreetingService.groovy | 30 -
.../grails-app/taglib/aot/GreetingTagLib.groovy | 38 -
.../aot/grails-app/views/greeting/index.gsp | 35 -
.../app1/grails-app/conf/application.yml | 6 +-
.../functionaltests/IncludesController.groovy | 13 -
.../controllers/functionaltests/UrlMappings.groovy | 3 -
.../fileupload/FileUploadTestController.groovy | 20 -
.../requestpath/RequestPathController.groovy | 78 -
.../RequestPathForwarderController.groovy | 37 -
.../fileupload/FileUploadSpec.groovy | 81 -
.../requestpath/RequestPathSpec.groovy | 148 -
.../functionaltests/CompiledTagCallSpec.groovy | 66 -
.../controllers/app2/TestController.groovy | 8 -
.../GrailsUtilStackFiltererIntegrationSpec.groovy | 59 -
.../groovy/app2/RecordingStackTraceFilterer.groovy | 57 -
.../app4/grails-app/conf/application.yml | 4 -
.../controllers/app4/ErrorsController.groovy | 5 -
.../grails-app/controllers/app4/UrlMappings.groovy | 1 -
.../app4/OversizedUploadFunctionalSpec.groovy | 66 -
.../async-events-pubsub-demo/build.gradle | 1 +
.../grails-app/conf/logback.xml | 1 +
.../pubsub/demo/TimeoutController.groovy | 34 -
.../integration-test/resources/logback-test.xml | 1 +
grails-test-examples/beans-dsl-plugin/build.gradle | 68 -
.../example/plugin/FarewellGrailsPlugin.groovy | 47 -
.../example/plugin/GreetingGrailsPlugin.groovy | 52 -
.../example/plugin/SalutationGrailsPlugin.groovy | 50 -
.../FarewellGrailsPluginAutoDiscoverySpec.groovy | 74 -
.../GreetingGrailsPluginAutoDiscoverySpec.groovy | 82 -
.../SalutationGrailsPluginAutoDiscoverySpec.groovy | 101 -
grails-test-examples/beans-dsl/build.gradle | 63 -
.../groovy/beandsl/example/ExampleBeans.groovy | 45 -
.../groovy/beandsl/example/FancyGreeter.groovy | 31 -
.../main/groovy/beandsl/example/LoudGreeter.groovy | 37 -
.../ExampleBeansAutoConfigurationSpec.groovy | 74 -
.../example/ExampleBeansAutoDiscoverySpec.groovy | 62 -
grails-test-examples/benchmarks/README.adoc | 163 -
grails-test-examples/benchmarks/build.gradle | 305 -
.../controllers/ControllerActionBenchmark.java | 252 -
.../ControllerMappingCollectionBenchmark.java | 195 -
.../controllers/ControllerResponseBenchmark.java | 248 -
.../databinding/SimpleDataBinderBenchmark.java | 175 -
.../benchmarks/gsp/GroovyPageParserBenchmark.java | 97 -
.../interceptors/InterceptorChainBenchmark.java | 183 -
.../interceptors/UrlMappingMatcherBenchmark.java | 156 -
.../grails/benchmarks/ruler/CpuRulerBenchmark.java | 58 -
.../benchmarks/ruler/MemoryRulerBenchmark.java | 63 -
.../urlmappings/UrlMappingsBenchmark.java | 135 -
.../views/ViewTemplateRenderingBenchmark.java | 97 -
.../benchmarks/web/GrailsWebRequestBenchmark.java | 132 -
.../web/MultipartResolutionBenchmark.java | 135 -
.../web/RequestPropertyAccessBenchmark.java | 108 -
.../controllers/ControllerFixture.groovy | 108 -
.../controllers/ControllerMappingsFixture.groovy | 95 -
.../controllers/ControllerResponseFixture.groovy | 106 -
.../interceptors/InterceptorChainFixture.groovy | 54 -
.../interceptors/InterceptorFixture.groovy | 32 -
.../urlmappings/UrlMappingsFixture.groovy | 41 -
.../benchmarks/views/ViewTemplateFixture.groovy | 52 -
.../benchmarks/web/RequestPropertyFixture.groovy | 55 -
.../grails/benchmarks/web/WebContextFixture.groovy | 57 -
.../benchmarks/report/BenchmarkComparator.groovy | 133 -
.../grails/benchmarks/report/CommentPoster.groovy | 121 -
.../grails/benchmarks/report/Comparison.groovy | 60 -
.../grails/benchmarks/report/JmhCompare.groovy | 113 -
.../grails/benchmarks/report/JmhResults.groovy | 140 -
.../grails/benchmarks/report/ReportRenderer.groovy | 173 -
.../report/BenchmarkComparatorSpec.groovy | 69 -
.../report/GitHubCommentsHttpSpec.groovy | 119 -
.../benchmarks/report/GoldenReportSpec.groovy | 75 -
.../grails/benchmarks/report/JmhCompareSpec.groovy | 123 -
.../grails/benchmarks/report/PostFileSpec.groovy | 122 -
.../resources/jmh-golden/broad-base.json | 1 -
.../resources/jmh-golden/broad-head.json | 1 -
.../resources/jmh-golden/edges-base.json | 1 -
.../resources/jmh-golden/edges-head.json | 1 -
.../resources/jmh-golden/expected-broad.md | 37 -
.../resources/jmh-golden/expected-edges.md | 35 -
.../resources/jmh-golden/expected-headonly.md | 20 -
.../resources/jmh-golden/expected-norulers.md | 24 -
.../resources/jmh-golden/expected-numbers.md | 32 -
.../resources/jmh-golden/expected-shards.md | 32 -
.../resources/jmh-golden/norulers-base.json | 1 -
.../resources/jmh-golden/norulers-head.json | 1 -
.../resources/jmh-golden/numbers-base.json | 1 -
.../resources/jmh-golden/numbers-head.json | 1 -
.../resources/jmh-golden/shards-base/shard-a.json | 1 -
.../resources/jmh-golden/shards-base/shard-b.json | 1 -
.../resources/jmh-golden/shards-head/shard-a.json | 1 -
.../resources/jmh-golden/shards-head/shard-b.json | 1 -
grails-test-examples/cache/build.gradle | 1 +
.../src/test/groovy/demo/TestControllerSpec.groovy | 7 -
.../external-configuration/build.gradle | 1 +
.../grails-app/conf/logback-spring.xml | 1 +
grails-test-examples/geb-context-path/build.gradle | 1 +
grails-test-examples/geb-gebconfig/build.gradle | 1 +
.../grails-app/conf/logback-spring.xml | 1 +
grails-test-examples/geb/build.gradle | 1 +
.../geb/grails-app/conf/logback-spring.xml | 1 +
.../org/demo/spock/PerTestRecordingSpec.groovy | 54 +-
grails-test-examples/gorm/build.gradle | 7 +-
.../services/gorm/TransactionTestService.groovy | 16 -
.../groovy/gorm/TransactionPropagationSpec.groovy | 8 -
.../domain/grails/test/app/Address.groovy | 3 -
.../grails-app/domain/grails/test/app/User.groovy | 3 +-
.../domain/grails/test/app/UserRole.groovy | 2 -
.../groovy/grails/test/app/pogo/Profile.groovy | 6 -
.../gsp-compile-static/build.gradle | 70 -
.../controllers/gspstatic/DemoController.groovy | 40 -
.../controllers/gspstatic/UrlMappings.groovy | 29 -
.../grails-app/taglib/gspstatic/DemoTagLib.groovy | 32 -
.../grails-app/views/demo/declared.gsp | 30 -
.../grails-app/views/demo/frameworkNames.gsp | 31 -
.../grails-app/views/demo/index.gsp | 34 -
.../gsp-compile-static/grails-app/views/error.gsp | 20 -
.../grails-app/views/notFound.gsp | 20 -
.../groovy/gspstatic/GspCompileStaticSpec.groovy | 129 -
grails-test-examples/gsp-layout/build.gradle | 12 +-
.../gsp-layout/grails-app/conf/logback-spring.xml | 1 +
.../views/gsp/layout/AbstractGrailsTagTests.groovy | 24 +-
grails-test-examples/gsp-sitemesh3/build.gradle | 1 +
.../grails-app/conf/logback-spring.xml | 1 +
.../gsp-spring-boot/app/build.gradle | 69 +-
.../app/src/main/assets/javascripts/application.js | 24 -
.../app/src/main/assets/javascripts/theme.js | 75 -
.../src/main/assets/stylesheets/application.css | 32 -
.../app/src/main/java/hello/JspSupport.java | 53 -
.../app/src/main/java/hello/JspViewController.java | 40 -
.../app/src/main/java/hello/WebController.java | 62 +-
.../app/src/main/resources/application.properties | 17 +-
.../app/src/main/resources/templates/form.gsp | 54 +-
.../src/main/resources/templates/layouts/main.gsp | 94 +-
.../main/resources/templates/layouts/sample.gsp | 13 +-
.../app/src/main/resources/templates/results.gsp | 21 +-
.../gsp-spring-boot/app/src/main/webapp/form.jsp | 46 +-
.../app/src/test/java/hello/AssetLinkTest.java | 76 -
.../app/src/test/java/hello/ErrorPageTest.java | 61 -
.../app/src/test/java/hello/JspSupportTest.java | 58 -
.../app/src/test/java/hello/JspViewTest.java | 75 -
.../src/test/java/hello/PrecompiledViewTest.java | 57 -
.../src/test/java/hello/StandaloneContextTest.java | 68 -
.../app/src/test/java/hello/WebControllerTest.java | 108 +-
.../hibernate5/criteria-extension/build.gradle | 4 -
.../build.gradle | 2 -
.../grails-database-per-tenant/build.gradle | 2 -
.../grails-hibernate-groovy-proxy/build.gradle | 4 -
.../grails-multiple-datasources/build.gradle | 2 -
.../build.gradle | 2 -
.../grails-partitioned-multi-tenancy/build.gradle | 4 +-
.../grails-schema-per-tenant/build.gradle | 1 -
.../functionaltests/ManagedEntityDomain.groovy | 27 -
.../async-events-pubsub-demo/build.gradle | 1 +
.../grails-app/conf/logback.xml | 1 +
.../integration-test/resources/logback-test.xml | 1 +
.../hibernate7/criteria-extension/build.gradle | 4 -
.../src/test/groovy/demo/TestControllerSpec.groovy | 7 -
grails-test-examples/hibernate7/gorm/build.gradle | 2 +-
.../services/gorm/TransactionTestService.groovy | 16 -
.../groovy/gorm/TransactionPropagationSpec.groovy | 8 -
.../build.gradle | 2 -
.../grails-database-per-tenant/build.gradle | 1 -
.../grails-hibernate-groovy-proxy/build.gradle | 4 -
.../grails-multiple-datasources/build.gradle | 2 -
.../build.gradle | 2 -
.../grails-partitioned-multi-tenancy/build.gradle | 1 -
.../grails-schema-per-tenant/build.gradle | 1 -
.../grails-app/views/product/index.gson | 2 +-
.../issue-10279/grails-app/conf/logback.xml | 1 +
.../neo4j-standalone => issue-11767}/build.gradle | 23 +-
.../grails-app/conf/application.yml | 16 +-
.../grails-app/conf/logback.xml | 3 +
.../issue11767/app/AppController.groovy | 51 +
.../controllers/issue11767/app}/UrlMappings.groovy | 7 +-
.../init/issue11767/app}/Application.groovy | 4 +-
.../issue11767/app/ConfigLoadingSpec.groovy} | 29 +-
.../issue11767/app/AppGroovyMicronautBean.groovy | 15 +-
.../issue-15228/grails-app/conf/logback.xml | 1 +
grails-test-examples/jetty/build.gradle | 2 +-
.../jetty/grails-app/conf/application.yml | 5 -
.../jetty/grails-app/conf/logback-spring.xml | 1 +
.../controllers/issue12688/UploadController.groovy | 30 -
.../controllers/issue12688/UrlMappings.groovy | 1 -
.../issue12688/JettyOversizedUploadSpec.groovy | 61 -
grails-test-examples/mail/build.gradle | 3 +-
.../mail/grails-app/conf/logback-spring.xml | 1 +
.../build.gradle | 35 +-
.../grails-app/conf/application.yml | 30 +-
.../micronautgroovyonly}/UrlMappings.groovy | 3 +-
.../init/micronautgroovyonly}/Application.groovy | 4 +-
.../BeanInjectionService.groovy} | 28 +-
.../micronautgroovyonly/TestService.groovy} | 8 +-
.../BeanInjectionServiceSpec.groovy} | 40 +-
.../MicronautContextSpec.groovy | 83 +
.../MicronautQualifierSpec.groovy | 97 +
.../main/groovy/bean/injection/AppConfig.groovy} | 12 +-
.../bean/injection/FactoryCreatedService.groovy | 9 +-
.../groovy/bean/injection/NamedService.groovy} | 6 +-
.../bean/injection/PrimaryNamedService.groovy} | 17 +-
.../main/groovy/bean/injection/Qualified.groovy | 13 +-
.../bean/injection/QualifiedNamedService.groovy} | 18 +-
.../bean/injection/RegularNamedService.groovy} | 14 +-
.../groovy/bean/injection/ServiceFactory.groovy} | 20 +-
.../bean/injection/SpecialNamedService.groovy} | 14 +-
.../build.gradle | 47 +-
.../grails-app/conf/application.yml | 17 +-
.../grails-app/conf/logback.xml | 0
.../micronaut/hibernate5/UrlMappings.groovy} | 28 +-
.../init/micronaut/hibernate5/Application.groovy} | 27 +-
.../grails-app/views/index.gsp} | 24 +-
.../hibernate5/ApplicationStartupSpec.groovy | 33 +
.../gorm => micronaut-hibernate7}/build.gradle | 45 +-
.../grails-app/conf/application.yml | 17 +-
.../grails-app/conf/logback.xml | 0
.../micronaut/hibernate7/UrlMappings.groovy} | 28 +-
.../init/micronaut/hibernate7/Application.groovy} | 27 +-
.../grails-app/views/index.gsp} | 24 +-
.../hibernate7/ApplicationStartupSpec.groovy | 33 +
.../micronaut}/.gitignore | 0
.../{undertow => micronaut}/build.gradle | 54 +-
.../grails-app/assets}/images/advancedgrails.svg | 0
.../assets/images/apple-touch-icon-retina.png | Bin
.../grails-app/assets/images/apple-touch-icon.png | Bin
.../grails-app/assets/images}/documentation.svg | 0
.../grails-app/assets/images}/favicon.ico | Bin
.../assets/images}/grails-cupsonly-logo-white.svg | 0
.../micronaut/grails-app/assets/images}/grails.svg | 0
.../grails-app/assets/images/skin/database_add.png | Bin
.../assets/images/skin/database_delete.png | Bin
.../assets/images/skin/database_edit.png | Bin
.../assets/images/skin/database_save.png | Bin
.../assets/images/skin/database_table.png | Bin
.../grails-app/assets/images/skin/exclamation.png | Bin
.../grails-app/assets/images/skin/house.png | Bin
.../grails-app/assets/images/skin/information.png | Bin
.../grails-app/assets/images/skin/shadow.jpg | Bin
.../grails-app/assets/images/skin/sorted_asc.gif | Bin
.../grails-app/assets/images/skin/sorted_desc.gif | Bin
.../grails-app/assets/images/slack.svg | 0
.../grails-app/assets/images/spinner.gif | Bin
.../grails-app/assets/javascripts/application.js | 0
.../grails-app/assets/stylesheets/application.css | 0
.../grails-app/assets/stylesheets/errors.css | 0
.../grails-app/assets/stylesheets/grails.css | 0
.../grails-app/assets/stylesheets/main.css | 0
.../grails-app/assets/stylesheets/mobile.css | 0
.../grails-app/conf/application.yml | 60 +-
.../grails-app/conf/logback.xml | 0
.../grails-app/conf/spring/resources.groovy | 0
.../micronaut/ExternalApiController.groovy | 113 +
.../micronaut/MicronautTestController.groovy | 42 +-
.../controllers/micronaut/UrlMappings.groovy | 50 +
.../grails-app/i18n/messages.properties | 0
.../grails-app/i18n/messages_cs.properties | 0
.../grails-app/i18n/messages_da.properties | 0
.../grails-app/i18n/messages_de.properties | 0
.../grails-app/i18n/messages_es.properties | 0
.../grails-app/i18n/messages_fr.properties | 0
.../grails-app/i18n/messages_it.properties | 0
.../grails-app/i18n/messages_ja.properties | 0
.../grails-app/i18n/messages_nb.properties | 0
.../grails-app/i18n/messages_nl.properties | 0
.../grails-app/i18n/messages_pl.properties | 0
.../grails-app/i18n/messages_pt_BR.properties | 0
.../grails-app/i18n/messages_pt_PT.properties | 0
.../grails-app/i18n/messages_ru.properties | 0
.../grails-app/i18n/messages_sk.properties | 0
.../grails-app/i18n/messages_sv.properties | 0
.../grails-app/i18n/messages_th.properties | 0
.../grails-app/i18n/messages_zh_CN.properties | 0
.../grails-app/init/micronaut}/Application.groovy | 6 +-
.../grails-app/init/micronaut}/BootStrap.groovy | 4 +-
.../micronaut/BeanInjectionService.groovy} | 28 +-
.../services/micronaut/ExternalApiService.groovy | 110 +
.../services/micronaut/TestService.groovy} | 8 +-
.../base => micronaut}/grails-app/views/error.gsp | 0
.../grails-app/views/index.gsp | 0
.../grails-app/views/layouts/main.gsp | 0
.../grails-app/views/notFound.gsp | 0
.../micronaut/BeanInjectionServiceSpec.groovy} | 42 +-
.../micronaut/MicronautBeanDuplicationSpec.groovy | 105 +
.../groovy/micronaut/MicronautBeanTypesSpec.groovy | 99 +
.../groovy/micronaut/MicronautContextSpec.groovy | 92 +
.../MicronautDeclarativeClientSpec.groovy | 250 +
.../micronaut/MicronautErsatzAdvancedSpec.groovy | 563 ++
.../micronaut/MicronautErsatzPatternSpec.groovy | 450 ++
.../micronaut/MicronautErsatzRoundtripSpec.groovy | 429 ++
.../micronaut/MicronautPluginBeanSpec.groovy | 85 +
.../groovy/micronaut/MicronautQualifierSpec.groovy | 106 +
.../main/groovy/bean/injection/AppConfig.groovy} | 12 +-
.../bean/injection/FactoryCreatedService.groovy} | 8 +-
.../main/groovy/bean/injection/NamedService.java | 21 +-
.../bean/injection/PrimaryNamedService.groovy} | 18 +-
.../main/groovy/bean/injection/Qualified.groovy} | 18 +-
.../bean/injection/QualifiedNamedService.groovy} | 13 +-
.../bean/injection/RegularNamedService.groovy} | 14 +-
.../groovy/bean/injection/ServiceFactory.groovy} | 20 +-
.../bean/injection/SpecialNamedService.groovy} | 14 +-
.../client/MicronautAdvancedClient.groovy | 59 +
.../client/MicronautFilteredClient.groovy | 19 +-
.../micronaut/client/MicronautHeaderClient.groovy | 20 +-
.../micronaut/client/MicronautPathClient.groovy | 25 +-
.../client/MicronautReactiveClient.groovy | 39 +-
.../micronaut/client/MicronautTestClient.groovy | 42 +-
.../java/bean/injection/JavaMessageProvider.java | 21 +-
.../java/bean/injection/JavaSingletonService.java | 24 +-
.../micronaut/client/MicronautRetryableClient.java | 22 +-
.../micronaut/filter/AuthTokenClientFilter.java | 21 +-
grails-test-examples/mongodb/base/build.gradle | 1 +
.../functional/tests/LocalMongoUnitSpec.groovy | 2 +
.../mongodb/database-per-tenant/build.gradle | 1 +
.../mongodb/hibernate5/build.gradle | 1 +
.../mongodb/test-data-service/build.gradle | 2 -
grails-test-examples/neo4j/base/build.gradle | 68 -
.../groovy/functional/tests/pages/BookPages.groovy | 58 -
grails-test-examples/neo4j/hibernate5/build.gradle | 79 -
.../neo4j/hibernate5/grails-app/views/error.gsp | 49 -
.../functional/tests/pages/AuthorPages.groovy | 58 -
.../groovy/functional/tests/pages/BookPages.groovy | 58 -
.../neo4j/spring-boot/build.gradle | 53 -
.../neo4j/test-data-service/build.gradle | 60 -
.../plugins/issue-11767/build.gradle | 125 +
.../issue-11767}/grails-app/conf/plugin.yml | 5 +-
.../init/issue11767/plugin}/Application.groovy | 6 +-
.../issue11767/plugin/MyPluginGrailsPlugin.groovy | 19 +-
.../plugin/PluginGroovyMicronautBean.groovy | 16 +-
.../plugin/PluginGroovySpringBean.groovy} | 17 +-
.../issue11767/plugin/PluginJavaMicronautBean.java | 30 +-
.../{loadfirst.properties => messages.properties} | 0
..._en_US.properties => messages_en_US.properties} | 0
.../micronaut-singleton}/build.gradle | 25 +-
.../MicronautSingletonGrailsPlugin.groovy | 10 +-
.../plugins/micronaut/PluginMessageProvider.java | 22 +-
.../plugins/micronaut/PluginSingletonService.java | 24 +-
grails-test-examples/quartz/build.gradle | 66 -
.../quartz/grails-app/conf/application.yml | 20 -
.../grails-app/init/quartzapp/Application.groovy | 29 -
.../grails-app/init/quartzapp/BootStrap.groovy | 31 -
.../grails-app/jobs/quartzapp/DisabledJob.groovy | 31 -
.../jobs/quartzapp/InterruptibleJob.groovy | 52 -
.../jobs/quartzapp/LongRunningJob.groovy | 46 -
.../jobs/quartzapp/NeverFiringJob.groovy | 33 -
.../grails-app/jobs/quartzapp/OnDemandJob.groovy | 38 -
.../grails-app/jobs/quartzapp/RepeatingJob.groovy | 39 -
.../quartzapp/QuartzLongRunningJobSpec.groovy | 110 -
.../groovy/quartzapp/QuartzSchedulingSpec.groovy | 144 -
.../groovy/quartzapp/RecordingJobListener.groovy | 53 -
grails-test-examples/redis/build.gradle | 5 +-
grails-test-examples/scaffolding/build.gradle | 9 +-
.../controllers/com/example/BookController.groovy | 32 -
.../controllers/com/example/UrlMappings.groovy | 1 -
.../grails-app/domain/com/example/Book.groovy | 30 -
.../grails-app/init/com/example/Application.groovy | 22 +-
.../grails-app/init/com/example/BootStrap.groovy | 4 -
.../services/com/example/BookService.groovy | 27 -
.../groovy/com/example/BookControllerSpec.groovy | 61 -
.../groovy/com/example/pages/BookListPage.groovy | 32 -
.../spring-dependency-management/build.gradle | 53 +-
.../grails-app/conf/application.yml | 0
.../grails-app/controllers/UrlMappings.groovy | 0
.../controllers/springdm/HelloController.groovy | 0
.../grails-app/init/springdm/Application.groovy | 0
.../grails-app/views/error.gsp | 0
.../grails-app/views/index.gsp | 0
.../grails-app/views/notFound.gsp | 0
.../groovy/springdm/HelloControllerSpec.groovy | 0
.../acl/functional-test-app/build.gradle | 3 +-
.../grails-app/conf/logback.xml | 1 +
.../acl/integration-test-app/build.gradle | 2 -
.../grails-app/conf/logback.xml | 1 +
grails-test-examples/spring-security/cas/README.md | 85 +-
.../spring-security/cas/test1/build.gradle | 28 +-
.../cas/test1/grails-app/conf/application.groovy | 80 +-
.../cas/test1/grails-app/conf/logback.xml | 1 +
.../test1/grails-app/conf/spring/resources.groovy | 24 -
.../cas/test/SecureController.groovy | 58 -
.../spring/security/cas/SecureController.groovy} | 21 +-
.../security/cas}/UrlMappings.groovy | 2 +-
.../test1}/grails-app/domain/com/test/Role.groovy | 0
.../springsecurity/cas => com}/test/User.groovy | 2 +-
.../cas => com}/test/UserRole.groovy | 2 +-
.../plugin/springsecurity/cas/test/Role.groovy | 44 -
.../security}/cas/test/Application.groovy | 2 +-
.../security}/cas/test/BootStrap.groovy | 6 +-
.../springsecurity/cas/test/AbstractCasSpec.groovy | 185 -
.../springsecurity/cas/test/CasLoginSpec.groovy | 93 -
.../cas/test/CasNoProxyReceptorSpec.groovy | 81 -
.../cas/test/CasNoSingleSignOutSpec.groovy | 58 -
.../cas/test/CasProxyTicketSpec.groovy | 63 -
.../cas/test/CasSingleSignOutSpec.groovy | 74 -
.../cas/test/CasContainerHolder.groovy | 111 -
.../cas/test/CasServiceUrlConfigurer.groovy | 57 -
.../springsecurity/cas/test/CasTestConfig.groovy | 84 -
.../test/CasTestEnvironmentPostProcessor.groovy | 62 -
.../src/main/resources/META-INF/spring.factories | 19 -
.../cas/services/grailsTest-10000001.json | 12 -
.../core/functional-test-app/build.gradle | 2 -
.../core/integration-test-app/build.gradle | 2 -
.../springsecurity/PluginMessageBundleSpec.groovy | 55 -
.../misc-functional-test-app/group/build.gradle | 2 -
.../integration-test/groovy/demo/LoginPage.groovy | 6 -
.../misc-functional-test-app/roles/build.gradle | 2 -
.../integration-test/groovy/demo/LoginPage.groovy | 6 -
.../build.gradle | 3 +-
.../grails-app/conf/logback-spring.xml | 1 +
.../ldap/functional-test-app/build.gradle | 3 +-
.../grails-app/conf/logback-spring.xml | 1 +
.../ldap/retrieve-db-roles/build.gradle | 3 +-
.../grails-app/conf/logback-spring.xml | 1 +
.../ldap/retrieve-group-roles/build.gradle | 3 +-
.../grails-app/conf/logback-spring.xml | 1 +
.../spring-security/ui/common/build.gradle | 3 -
.../spring-security/ui/extended/build.gradle | 5 +-
.../ui/extended/grails-app/conf/logback.xml | 1 +
.../spring-security/ui/simple/build.gradle | 1 +
.../ui/simple/grails-app/conf/logback.xml | 1 +
grails-test-examples/undertow/build.gradle | 4 +-
.../undertow/grails-app/conf/application.yml | 5 -
.../undertow/grails-app/conf/logback-spring.xml | 1 +
.../undertowapp/UploadController.groovy | 30 -
.../controllers/undertowapp/UrlMappings.groovy | 1 -
.../undertowapp/UndertowOversizedUploadSpec.groovy | 61 -
.../grails-app/views/product/index.gson | 2 +-
grails-test-report/build.gradle | 23 +-
grails-test-suite-base/build.gradle | 1 -
grails-test-suite-persistence/build.gradle | 4 +-
.../web/databinding/GrailsWebDataBinderSpec.groovy | 447 +-
grails-test-suite-uber/build.gradle | 21 +-
.../ResourceAnnotationRestfulControllerSpec.groovy | 2 +-
.../grails/test/mixin/RestfulControllerSpec.groovy | 2 +-
.../commons/DefaultGrailsCodecClassTests.groovy | 16 -
.../grails/plugins/CoreGrailsPluginTests.groovy | 68 +-
.../groovy/org/grails/plugins/PluginTests.java | 7 +-
.../GrailsMockHttpServletResponseTests.groovy | 33 -
.../web/filters/HiddenHttpMethodFilterTests.groovy | 55 -
.../ParamsAwareLocaleChangeInterceptorTests.groovy | 51 -
.../DefaultGrailsApplicationAttributesSpec.groovy | 90 -
.../org/grails/web/util/WebUtilsTests.groovy | 40 -
grails-test-suite-web/build.gradle | 19 +-
...ollerActionTransformerAllowedMethodsSpec.groovy | 117 +-
...ngHelperDomainClassSpecialPropertiesSpec.groovy | 113 +-
.../DefaultDatabindingWhitelistBehaviorSpec.groovy | 117 -
.../groovy/org/grails/web/codecs/CodecSpec.groovy | 40 -
.../CommandObjectInstantiationSpec.groovy | 50 -
.../web/commandobjects/CommandObjectsSpec.groovy | 29 -
.../web/mapping/UrlMappingParameterTests.groovy | 6 +-
.../grails/web/servlet/BindDataMethodTests.groovy | 1437 +---
.../web/servlet/mvc/GrailsWebRequestSpec.groovy | 120 -
.../mvc/SynchronizerTokensHolderTests.groovy | 145 -
grails-testing-support-core/build.gradle | 2 -
.../grails/testing/services/ServiceUnitTest.groovy | 2 +-
.../IntegrationTestAstTransformation.groovy | 3 +-
.../org/grails/testing/GrailsUnitTest.groovy | 6 +-
grails-testing-support-datamapping/build.gradle | 1 -
grails-testing-support-http-client/README.md | 3 +-
grails-testing-support-http-client/build.gradle | 6 +-
.../testing/http/client/utils/XmlUtils.groovy | 41 +-
.../http/client/TestHttpResponseSpec.groovy | 29 +-
.../testing/http/client/utils/XmlUtilsSpec.groovy | 37 +-
grails-testing-support-mongodb/build.gradle | 5 -
.../testing/mongo/EmbeddedReplicaSetSpec.groovy | 126 -
grails-testing-support-redis/build.gradle | 1 -
grails-testing-support-views-gson/build.gradle | 4 +-
grails-testing-support-web/build.gradle | 5 +-
.../grails/testing/web/GrailsWebUnitTest.groovy | 8 +-
.../testing/spock/WebSetupSpecInterceptor.groovy | 2 +-
grails-undertow/plugin/build.gradle | 3 -
grails-url-mappings/build.gradle | 5 +-
.../web/mapping/UrlMappingsAutoConfiguration.java | 102 +
.../UrlMappingsBeanDefinitionsPostProcessor.groovy | 43 +-
.../web/mapping/UrlMappingsGrailsPlugin.groovy | 80 +-
.../UrlMappingsAutoConfigurationSpec.groovy | 84 -
.../web/mapping/UrlMappingsGrailsPluginSpec.groovy | 35 -
grails-validation/build.gradle | 4 +-
grails-views-core/build.gradle | 4 +-
.../mvc/GenericGroovyTemplateViewResolver.groovy | 4 +-
.../views/mvc/renderer/DefaultViewRenderer.groovy | 2 +-
.../resolve/GenericGroovyTemplateResolver.groovy | 2 +-
grails-views-gson/build.gradle | 11 +-
.../AbstractJsonViewContainerRenderer.groovy | 2 +-
.../plugin/json/view/JsonViewConfiguration.groovy | 2 -
.../plugin/json/view/JsonViewGrailsPlugin.groovy | 9 +-
.../plugin/json/view/api/HalViewHelper.groovy | 12 +-
.../view/api/internal/DefaultHalViewHelper.groovy | 10 +-
.../api/internal/DefaultJsonApiViewHelper.groovy | 2 +-
.../view/api/internal/DefaultJsonViewHelper.groovy | 34 +-
.../plugin/json/view/test/JsonRenderResult.groovy | 0
.../plugin/json/view/test/JsonViewTest.groovy | 0
.../plugin/json/view/test/TestLinkGenerator.groovy | 0
.../json/view/test/TestRequestConfigurer.groovy | 0
.../additional-spring-configuration-metadata.json | 123 -
.../META-INF/spring-configuration-metadata.json | 67 +
.../grails/plugin/json/view/ExpandSpec.groovy | 18 +-
.../grails/plugin/json/view/HalEmbeddedSpec.groovy | 52 +-
.../json/view/IncludeAssociationsSpec.groovy | 4 +-
.../plugin/json/view/IterableRenderSpec.groovy | 68 +-
.../json/view/JsonViewGrailsPluginSpec.groovy | 17 -
.../json/view/JsonViewTemplateResolverSpec.groovy | 30 +-
.../grails/plugin/json/view/MapRenderSpec.groovy | 31 +-
.../plugin/json/view/NullRenderingSpec.groovy | 26 +-
.../json/view/TemplateInheritanceSpec.groovy | 3 -
.../view/api/JsonApiHandleAssociationsSpec.groovy | 2 +-
.../grails/plugin/json/view/api/JsonApiSpec.groovy | 22 +-
.../plugin/json/view/api/PaginationSpec.groovy | 11 +-
.../view/api/handleassociations/Fixtures.groovy | 29 -
.../grails/plugin/json/view/expand/Fixtures.groovy | 46 -
.../plugin/json/view/halembedded/Fixtures.groovy | 62 -
.../plugin/json/view/include/Fixtures.groovy | 46 -
.../plugin/json/view/iterable/Fixtures.groovy | 46 -
.../plugin/json/view/maprender/Fixtures.groovy | 52 -
.../plugin/json/view/nullrendering/Fixtures.groovy | 52 -
grails-views-markup/build.gradle | 6 +-
.../markup/view/MarkupViewGrailsPlugin.groovy | 9 +-
.../additional-spring-configuration-metadata.json | 155 -
grails-web-boot/build.gradle | 4 +-
grails-web-common/build.gradle | 18 +-
.../groovy/grails/util/GrailsWebMockUtil.groovy | 0
.../groovy/grails/web/api/ServletAttributes.groovy | 2 +-
.../grails/web/servlet/mvc/GrailsHttpSession.java | 141 +-
.../grails/web/servlet/mvc/GrailsParameterMap.java | 48 +-
.../web/errors/GrailsWrappedRuntimeException.java | 10 +-
.../i18n/ParamsAwareLocaleChangeInterceptor.groovy | 7 -
.../web/json/PathCapturingJSONWriterWrapper.java | 64 +-
.../DefaultGrailsApplicationAttributes.java | 55 +-
.../org/grails/web/servlet/GrailsFlashScope.java | 2 +-
.../WebRequestDelegatingRequestContext.java | 2 +-
.../mvc/DefaultRequestStateLookupStrategy.java | 5 +-
.../grails/web/servlet/mvc/GrailsWebRequest.java | 123 +-
.../web/util/GrailsApplicationAttributes.java | 15 -
.../org/grails/web/util/HiddenHttpMethod.java | 144 -
.../main/groovy/org/grails/web/util/WebUtils.java | 134 +-
.../web/servlet/mvc/GrailsHttpSessionSpec.groovy | 24 -
.../web/servlet/mvc/GrailsParameterMapTests.groovy | 244 -
.../grails/web/util/HiddenHttpMethodSpec.groovy | 125 -
.../groovy/org/grails/web/util/WebUtilsSpec.groovy | 130 -
grails-web-core/build.gradle | 12 +-
.../web/servlet/HttpServletRequestExtension.groovy | 44 -
...ata.json => spring-configuration-metadata.json} | 82 +
.../servlet/HttpServletRequestExtensionSpec.groovy | 56 -
grails-web-databinding/build.gradle | 4 +-
.../groovy/grails/web/databinding/BindAllowed.java | 30 -
.../grails/web/databinding/DataBinder.groovy | 8 +-
.../grails/web/databinding/DataBindingUtils.java | 587 +-
.../web/databinding/GrailsWebDataBinder.groovy | 415 +-
.../web/databinding/MissingPropertyClearer.java | 823 ---
.../databinding/aot/DataBindingRuntimeHints.java | 62 -
.../DataBindingEventMulticastListener.groovy | 4 -
.../databinding/DefaultASTDatabindingHelper.java | 107 +-
...tractRequestBodyDataBindingSourceCreator.groovy | 7 +-
.../main/resources/META-INF/spring/aot.factories | 2 -
.../web/databinding/DataBindingUtilsSpec.groovy | 272 -
.../web/databinding/DenyByDefaultConfigSpec.groovy | 103 -
...tRequestBodyDataBindingSourceCreatorSpec.groovy | 45 +-
.../XmlDataBindingSourceCreatorSpec.groovy | 78 -
grails-web-mvc/build.gradle | 6 +-
.../grails/web/errors/GrailsExceptionResolver.java | 128 +-
.../grails/web/filters/HiddenHttpMethodFilter.java | 8 +-
.../web/servlet/mvc/GrailsDispatcherServlet.groovy | 34 +-
.../web/servlet/mvc/GrailsWebRequestFilter.java | 11 +-
.../servlet/mvc/SynchronizerTokensHolder.groovy | 90 +-
.../web/errors/GrailsExceptionResolverSpec.groovy | 274 +-
.../GrailsDispatcherServletHiddenMethodSpec.groovy | 130 -
.../servlet/mvc/GrailsDispatcherServletSpec.groovy | 136 -
.../servlet/mvc/GrailsWebRequestFilterSpec.groovy | 102 -
grails-web-mvc/src/test/resources/logback-test.xml | 22 -
grails-web-url-mappings/build.gradle | 17 +-
.../grails/web/mapping/ResponseRedirector.groovy | 2 +-
.../groovy/grails/web/mapping/UrlMappingInfo.java | 21 -
.../web/mapping/aot/UrlMappingRuntimeHints.java | 61 -
.../grails/web/mapping/AbstractUrlMappingInfo.java | 24 +-
.../grails/web/mapping/DefaultLinkGenerator.groovy | 4 +-
.../web/mapping/DefaultUrlMappingEvaluator.java | 67 +-
.../grails/web/mapping/DefaultUrlMappingInfo.java | 71 +-
.../web/mapping/DefaultUrlMappingsHolder.java | 58 +-
.../org/grails/web/mapping/RegexUrlMapping.java | 91 +-
.../web/mapping/RuntimeConstraintEvaluator.java | 72 -
.../mvc/AbstractGrailsControllerUrlMappings.groovy | 6 +-
.../mvc/GrailsControllerUrlMappingInfo.groovy | 3 -
.../mapping/mvc/UrlMappingsHandlerMapping.groovy | 79 +-
.../mvc/UrlMappingsInfoHandlerAdapter.groovy | 20 +-
.../AnsiConsoleUrlMappingsRenderer.groovy | 28 +-
.../additional-spring-configuration-metadata.json | 64 -
.../main/resources/META-INF/spring/aot.factories | 2 -
.../web/mapping/RestfulResourceMappingSpec.groovy | 36 +-
.../mapping/WildcardResourcesMappingSpec.groovy | 203 -
.../EffectiveMethodLinkGenerationSpec.groovy | 71 -
.../mapping/RuntimeConstraintEvaluatorSpec.groovy | 113 -
.../web/mapping/UrlMappingSegmentFilterSpec.groovy | 105 -
.../mapping/UrlMappingsWithHttpMethodSpec.groovy | 1 +
.../mvc/HiddenHttpMethodHandlerMappingSpec.groovy | 317 -
.../mvc/UrlMappingNameResolutionSpec.groovy | 178 -
.../mvc/UrlMappingsHandlerMappingSpec.groovy | 61 -
.../UrlMappingsInfoHandlerAdapterAsyncSpec.groovy | 79 -
.../AnsiConsoleUrlMappingsRendererSpec.groovy | 3 -
settings.gradle | 136 +-
threat-model.yaml | 28 +-
2807 files changed, 23512 insertions(+), 170383 deletions(-)
delete mode 100644 .agents/skills/gradle-developer/SKILL.md
rename .github/scripts/{groovy-snapshot-canary-build.init.gradle => groovy-joint-build.init.gradle} (92%)
delete mode 100755 .github/scripts/ossIndexReport.sh
delete mode 100755 .github/scripts/postStickyComment.sh
delete mode 100644 .github/workflows/benchmark.yml
delete mode 100644 .github/workflows/end-to-end.yml
delete mode 100644 .github/workflows/forge-deploy-aws.yml
create mode 100644 .github/workflows/forge-deploy-next.yml
create mode 100644 .github/workflows/forge-deploy-prev-snapshot.yml
create mode 100644 .github/workflows/forge-deploy-prev.yml
create mode 100644 .github/workflows/forge-deploy-release.yml
create mode 100644 .github/workflows/forge-deploy-snapshot.yml
rename .github/workflows/{groovy-snapshot-canary.yml => groovy-joint-workflow.yml} (59%)
delete mode 100644 .github/workflows/validate-actions.yml
delete mode 100644 build-logic/docs-core/src/main/groovy/grails/doc/UserGuideBuilder.groovy
delete mode 100644 build-logic/docs-core/src/main/groovy/grails/doc/gradle/PublishGuideWorkAction.groovy
delete mode 100644 build-logic/docs-core/src/main/groovy/grails/doc/gradle/PublishGuideWorkParameters.groovy
delete mode 100644 build-logic/docs-core/src/main/groovy/org/grails/doc/gradle/AuditGroovydocLinksTask.groovy
delete mode 100644 build-logic/docs-core/src/main/groovy/org/grails/doc/gradle/GroovydocLinkAuditor.groovy
delete mode 100644 build-logic/docs-core/src/test/groovy/grails/doc/GuideProbeMacro.groovy
delete mode 100644 build-logic/docs-core/src/test/groovy/grails/doc/UserGuideBuilderSpec.groovy
delete mode 100644 build-logic/docs-core/src/test/groovy/org/grails/doc/gradle/GroovydocLinkAuditorSpec.groovy
delete mode 100644 build-logic/plugins/src/main/groovy/org/apache/grails/buildsrc/AutoConfigurationImportsPlugin.groovy
delete mode 100644 build-logic/plugins/src/main/groovy/org/apache/grails/buildsrc/ConfigurationMetadataPlugin.groovy
delete mode 100644 build-logic/plugins/src/main/groovy/org/apache/grails/buildsrc/GenerateAutoConfigurationImportsTask.groovy
delete mode 100644 build-logic/plugins/src/main/groovy/org/apache/grails/buildsrc/GrailsValidateActionsPlugin.groovy
delete mode 100644 build-logic/plugins/src/main/groovy/org/apache/grails/buildsrc/GroovyDslConfigurationMetadataParser.groovy
delete mode 100644 build-logic/plugins/src/main/groovy/org/apache/grails/buildsrc/GroovydocRunner.groovy
delete mode 100644 build-logic/plugins/src/main/groovy/org/apache/grails/buildsrc/TestTaskShardingPlugin.groovy
delete mode 100644 build-logic/plugins/src/main/groovy/org/apache/grails/buildsrc/ValidateActionsTask.groovy
delete mode 100644 build-logic/plugins/src/main/groovy/org/apache/grails/buildsrc/ValidateDependencyVersionsTask.groovy
delete mode 100644 build-logic/plugins/src/main/groovy/org/apache/grails/buildsrc/ValidateProductionClasspathTask.groovy
delete mode 100644 build-logic/plugins/src/main/resources/org/apache/grails/buildsrc/groovydoc-runner.groovy
delete mode 100644 build-logic/plugins/src/test/groovy/org/apache/grails/buildsrc/CompilePluginSpec.groovy
delete mode 100644 build-logic/plugins/src/test/groovy/org/apache/grails/buildsrc/ConfigurationMetadataPluginSpec.groovy
delete mode 100644 build-logic/plugins/src/test/groovy/org/apache/grails/buildsrc/GenerateAutoConfigurationImportsTaskSpec.groovy
delete mode 100644 build-logic/plugins/src/test/groovy/org/apache/grails/buildsrc/GroovydocEnhancerPluginSpec.groovy
delete mode 100644 build-logic/plugins/src/test/groovy/org/apache/grails/buildsrc/PublishPluginSpec.groovy
delete mode 100644 build-logic/plugins/src/test/groovy/org/apache/grails/buildsrc/SbomPluginSpec.groovy
delete mode 100644 build-logic/plugins/src/test/groovy/org/apache/grails/buildsrc/TestTaskShardingPluginSpec.groovy
delete mode 100644 end-to-end/README.md
delete mode 100644 end-to-end/build.gradle
delete mode 100644 end-to-end/gradle.properties
delete mode 100644 end-to-end/gradle/test-config.gradle
delete mode 100644 end-to-end/gradle/wrapper/gradle-wrapper.jar
delete mode 100644 end-to-end/gradle/wrapper/gradle-wrapper.properties
delete mode 100755 end-to-end/gradlew
delete mode 100755 end-to-end/gradlew.bat
delete mode 100644 end-to-end/legacy-commands-plugin/build.gradle
delete mode 100644 end-to-end/legacy-commands-plugin/src/main/groovy/legacy/commands/plugin/HelloLegacyGrailsCommand.groovy
delete mode 100644 end-to-end/legacy-commands-plugin/src/main/resources/META-INF/grails.factories
delete mode 100644 end-to-end/legacy-commands-plugin/src/main/scripts/hello-legacy-script.groovy
delete mode 100644 end-to-end/legacy-commands/build.gradle
delete mode 100644 end-to-end/legacy-commands/grails-app/conf/logback.xml
delete mode 100644 end-to-end/legacy-commands/grails-app/services/legacycommands/GreetingService.groovy
delete mode 100644 end-to-end/legacy-commands/src/integration-test/groovy/legacycommands/LegacyCommandCompatibilityIntegrationSpec.groovy
delete mode 100644 end-to-end/legacy-g7-command-plugin/.sdkmanrc
delete mode 100644 end-to-end/legacy-g7-command-plugin/build.gradle
delete mode 100644 end-to-end/legacy-g7-command-plugin/gradle/wrapper/gradle-wrapper.jar
delete mode 100644 end-to-end/legacy-g7-command-plugin/gradle/wrapper/gradle-wrapper.properties
delete mode 100755 end-to-end/legacy-g7-command-plugin/gradlew
delete mode 100755 end-to-end/legacy-g7-command-plugin/gradlew.bat
delete mode 100644 end-to-end/legacy-g7-command-plugin/src/main/groovy/legacy/g7/commands/HelloDerivedNameCommand.groovy
delete mode 100644 end-to-end/legacy-g7-command-plugin/src/main/groovy/legacy/g7/commands/HelloG7PrecompiledCommand.groovy
delete mode 100644 end-to-end/legacy-g7-command-plugin/src/main/groovy/legacy/g7/commands/HelloG7PrecompiledGrailsCommand.groovy
delete mode 100644 end-to-end/legacy-g7-command-plugin/src/main/resources/META-INF/grails.factories
delete mode 100644 end-to-end/settings.gradle
delete mode 100644 end-to-end/taglib-index-incremental/build.gradle
delete mode 100644 end-to-end/taglib-index-incremental/src/test/groovy/org/apache/grails/e2e/taglib/TagLibraryIndexIncrementalSpec.groovy
delete mode 100644 grails-async/core/src/main/groovy/org/grails/async/factory/future/CompletableFuturePromise.groovy
delete mode 100644 grails-async/core/src/main/groovy/org/grails/async/factory/future/CompletableFuturePromiseFactory.groovy
delete mode 100644 grails-async/core/src/test/groovy/grails/async/CompletableFuturePromiseFactorySpec.groovy
delete mode 100644 grails-async/core/src/test/groovy/grails/async/VirtualThreadPromiseFactorySpec.groovy
delete mode 100644 grails-async/plugin/src/main/groovy/org/grails/plugins/web/async/AsyncRequestSupport.groovy
delete mode 100644 grails-async/plugin/src/main/groovy/org/grails/plugins/web/async/GrailsWebRequestTaskDecorator.groovy
delete mode 100644 grails-async/plugin/src/test/groovy/org/grails/plugins/web/async/AsyncWebRequestPromiseDecoratorLookupStrategySpec.groovy
delete mode 100644 grails-async/plugin/src/test/groovy/org/grails/plugins/web/async/AsyncWebRequestPromiseDecoratorSpec.groovy
delete mode 100644 grails-async/plugin/src/test/groovy/org/grails/plugins/web/async/GrailsWebRequestTaskDecoratorSpec.groovy
delete mode 100644 grails-async/plugin/src/test/groovy/org/grails/plugins/web/async/mvc/AsyncActionResultTransformerSpec.groovy
delete mode 100644 grails-beans-dsl/build.gradle
delete mode 100644 grails-beans-dsl/src/main/java/grails/compiler/beans/ConditionalOnGrailsEnv.java
delete mode 100644 grails-beans-dsl/src/main/java/grails/compiler/beans/GrailsBeans.java
delete mode 100644 grails-beans-dsl/src/main/java/org/grails/compiler/beans/AutoConfigurationImportsWriter.java
delete mode 100644 grails-beans-dsl/src/main/java/org/grails/compiler/beans/GrailsBeansASTTransformation.java
delete mode 100644 grails-beans-dsl/src/main/java/org/grails/compiler/beans/OnGrailsEnvCondition.java
delete mode 100644 grails-beans-dsl/src/test/groovy/org/grails/compiler/beans/AutoConfigurationImportsWriterSpec.groovy
delete mode 100644 grails-beans-dsl/src/test/groovy/org/grails/compiler/beans/GrailsBeansASTTransformationSpec.groovy
delete mode 100644 grails-beans-dsl/src/test/groovy/org/grails/compiler/beans/OnGrailsEnvConditionSpec.groovy
copy grails-bom/{neo4j => hibernate5-micronaut}/build.gradle (69%)
copy grails-bom/{neo4j => hibernate7-micronaut}/build.gradle (68%)
rename grails-bom/{neo4j => micronaut}/build.gradle (70%)
delete mode 100644 grails-bootstrap/src/cli/groovy/org/grails/build/logging/ConsoleAnsi.java
rename grails-bootstrap/src/{cli => main}/groovy/grails/build/logging/ConsoleLogger.java (100%)
rename grails-bootstrap/src/{cli => main}/groovy/grails/build/logging/GrailsConsole.java (82%)
rename grails-bootstrap/src/{cli => main}/groovy/grails/build/logging/GrailsEclipseConsole.java (100%)
rename grails-bootstrap/src/{cli => main}/groovy/org/grails/build/interactive/CandidateListCompletionHandler.java (100%)
rename grails-bootstrap/src/{cli => main}/groovy/org/grails/build/logging/GrailsConsoleAntBuilder.java (100%)
rename grails-bootstrap/src/{cli => main}/groovy/org/grails/build/logging/GrailsConsoleBuildListener.java (100%)
rename grails-bootstrap/src/{cli => main}/groovy/org/grails/build/logging/GrailsConsoleErrorPrintStream.java (100%)
rename grails-bootstrap/src/{cli => main}/groovy/org/grails/build/logging/GrailsConsolePrintStream.java (100%)
delete mode 100644 grails-bootstrap/src/test-cli/groovy/grails/build/logging/GrailsConsoleLoggingSpec.groovy
delete mode 100644 grails-bootstrap/src/test-cli/groovy/grails/build/logging/GrailsConsoleSpec.groovy
rename grails-bootstrap/src/{test-cli => test}/groovy/grails/build/logging/GrailsConsoleCompleterSpec.groovy (100%)
create mode 100644 grails-bootstrap/src/test/groovy/grails/build/logging/GrailsConsoleSpec.groovy
rename grails-bootstrap/src/{test-cli => test}/groovy/org/grails/build/interactive/CandidateListCompletionHandlerSpec.groovy (100%)
delete mode 100644 grails-bootstrap/src/test/groovy/org/grails/io/watch/DirectoryWatcherSpec.groovy
create mode 100644 grails-cache/src/main/groovy/grails/plugin/cache/GrailsCacheAutoConfiguration.groovy
rename grails-cache/src/main/resources/META-INF/{additional-spring-configuration-metadata.json => spring-configuration-metadata.json} (100%)
create mode 100644 grails-cache/src/test/groovy/grails/plugin/cache/CacheGrailsPluginSpec.groovy
rename grails-cache/src/test/groovy/grails/plugin/cache/{CacheAutoConfigurationSpec.groovy => GrailsCacheAutoConfigurationSpec.groovy} (53%)
delete mode 100644 grails-codecs/src/test/groovy/org/grails/plugins/codecs/CodecsConfigurationSpec.groovy
delete mode 100644 grails-common/src/main/groovy/org/apache/grails/common/aot/AheadOfTimeProcessing.java
delete mode 100644 grails-common/src/main/groovy/org/apache/grails/common/aot/RegistrableTypes.java
delete mode 100644 grails-common/src/main/groovy/org/apache/grails/common/reflect/ReflectionUtils.java
delete mode 100644 grails-common/src/test/groovy/org/apache/grails/common/aot/RegistrableTypesSpec.groovy
delete mode 100644 grails-common/src/test/groovy/org/apache/grails/common/reflect/ReflectionUtilsSpec.groovy
delete mode 100644 grails-common/src/test/groovy/org/apache/grails/common/reflect/beans/PublicCovariantBase.java
delete mode 100644 grails-common/src/test/groovy/org/apache/grails/common/reflect/beans/PublicThing.java
delete mode 100644 grails-common/src/test/groovy/org/apache/grails/common/reflect/beans/ThingFactory.java
delete mode 100644 grails-configuration-metadata/src/main/groovy/org/apache/grails/configuration/metadata/ConfigurationMetadataTransformation.groovy
delete mode 100644 grails-configuration-metadata/src/main/resources/META-INF/services/org.codehaus.groovy.transform.ASTTransformation
delete mode 100644 grails-configuration-metadata/src/test/groovy/org/apache/grails/configuration/metadata/ConfigurationMetadataTransformationSpec.groovy
delete mode 100644 grails-controllers/src/main/groovy/org/apache/grails/controllers/aot/ControllerRuntimeHints.java
delete mode 100644 grails-controllers/src/main/groovy/org/grails/plugins/web/controllers/GrailsControllersEnvironmentPostProcessor.java
delete mode 100644 grails-controllers/src/main/groovy/org/grails/plugins/web/controllers/GrailsHiddenHttpMethodFilterAutoConfiguration.java
delete mode 100644 grails-controllers/src/main/resources/META-INF/spring/aot.factories
delete mode 100644 grails-controllers/src/test/groovy/grails/artefact/ControllerRedirectSpec.groovy
delete mode 100644 grails-controllers/src/test/groovy/grails/artefact/controller/support/ResponseRendererSpec.groovy
delete mode 100644 grails-controllers/src/test/groovy/org/apache/grails/controllers/aot/ControllerRuntimeHintsSpec.groovy
delete mode 100644 grails-controllers/src/test/groovy/org/grails/compiler/web/ControllerActionTransformerSerializableParameterSpec.groovy
delete mode 100644 grails-controllers/src/test/groovy/org/grails/plugins/web/controllers/GrailsControllersEnvironmentPostProcessorSpec.groovy
delete mode 100644 grails-controllers/src/test/groovy/org/grails/plugins/web/controllers/GrailsHiddenHttpMethodFilterAutoConfigurationSpec.groovy
delete mode 100644 grails-controllers/src/test/groovy/org/grails/plugins/web/controllers/api/ControllersDomainBindingApiSpec.groovy
delete mode 100644 grails-converters/src/test/groovy/grails/converters/XMLParseSpec.groovy
delete mode 100644 grails-converters/src/test/groovy/org/grails/web/converters/beans/DynamicGroovyPersonFactory.groovy
delete mode 100644 grails-converters/src/test/groovy/org/grails/web/converters/beans/GroovyPersonFactory.groovy
delete mode 100644 grails-converters/src/test/groovy/org/grails/web/converters/beans/HiddenCovariantBase.java
delete mode 100644 grails-converters/src/test/groovy/org/grails/web/converters/beans/HiddenCovariantJavaBean.java
delete mode 100644 grails-converters/src/test/groovy/org/grails/web/converters/beans/JavaPersonFactory.java
delete mode 100644 grails-converters/src/test/groovy/org/grails/web/converters/beans/PackagePrivateStandaloneGroovyBean.groovy
delete mode 100644 grails-converters/src/test/groovy/org/grails/web/converters/beans/PackagePrivateStandaloneJavaBean.java
delete mode 100644 grails-converters/src/test/groovy/org/grails/web/converters/beans/PublicPerson.java
delete mode 100644 grails-converters/src/test/groovy/org/grails/web/converters/marshaller/json/NonPublicClassMarshallingSpec.groovy
delete mode 100644 grails-converters/src/test/groovy/org/grails/web/converters/marshaller/xml/NonPublicClassMarshallingSpec.groovy
delete mode 100644 grails-core-cli-legacy/build.gradle
delete mode 100644 grails-core-cli-legacy/src/main/groovy/grails/dev/commands/ApplicationCommand.groovy
delete mode 100644 grails-core-cli-legacy/src/main/groovy/grails/dev/commands/ExecutionContext.groovy
delete mode 100644 grails-core-cli-legacy/src/main/groovy/grails/dev/commands/GrailsApplicationCommand.groovy
delete mode 100644 grails-core-cli-legacy/src/main/groovy/grails/dev/commands/io/FileSystemInteraction.groovy
delete mode 100644 grails-core-cli-legacy/src/main/groovy/grails/dev/commands/io/FileSystemInteractionImpl.groovy
delete mode 100644 grails-core-cli-legacy/src/main/groovy/grails/dev/commands/template/TemplateException.groovy
delete mode 100644 grails-core-cli-legacy/src/main/groovy/grails/dev/commands/template/TemplateRenderer.groovy
delete mode 100644 grails-core-cli-legacy/src/main/groovy/grails/dev/commands/template/TemplateRendererImpl.groovy
delete mode 100644 grails-core-cli-legacy/src/main/groovy/org/apache/grails/core/cli/compat/LegacyApplicationCommandAdapter.groovy
delete mode 100644 grails-core-cli-legacy/src/main/groovy/org/apache/grails/core/cli/compat/LegacyApplicationCommandProvider.groovy
delete mode 100644 grails-core-cli-legacy/src/test/groovy/org/apache/grails/core/cli/LegacyCommandRegistryLoadingSpec.groovy
delete mode 100644 grails-core-cli-legacy/src/test/groovy/org/apache/grails/core/cli/compat/LegacyApplicationCommandAdapterSpec.groovy
delete mode 100644 grails-core/src/cli/groovy/org/apache/grails/core/cli/ApplicationCommandDiagnostics.groovy
delete mode 100644 grails-core/src/cli/groovy/org/apache/grails/core/cli/ApplicationCommandProvider.groovy
delete mode 100644 grails-core/src/cli/groovy/org/apache/grails/core/cli/ApplicationCommandRegistrar.groovy
delete mode 100644 grails-core/src/cli/groovy/org/apache/grails/core/cli/ApplicationCommandTargetAware.groovy
delete mode 100644 grails-core/src/main/groovy/org/apache/grails/core/aot/AbstractBeanDefinitionExcludeFilter.java
delete mode 100644 grails-core/src/main/groovy/org/apache/grails/core/aot/ArtefactClassesBeanFactoryInitializationAotProcessor.java
delete mode 100644 grails-core/src/main/groovy/org/apache/grails/core/aot/AutowireModeBeanRegistrationAotProcessor.java
delete mode 100644 grails-core/src/main/groovy/org/apache/grails/core/aot/BeanRegistrarRuntimeHints.java
delete mode 100644 grails-core/src/main/groovy/org/apache/grails/core/aot/GrailsApiRuntimeHints.java
delete mode 100644 grails-core/src/main/groovy/org/apache/grails/core/aot/GrailsBannerRuntimeHints.java
delete mode 100644 grails-core/src/main/groovy/org/apache/grails/core/aot/GrailsClosureRuntimeHints.java
delete mode 100644 grails-core/src/main/groovy/org/apache/grails/core/aot/GrailsResourceRuntimeHints.java
delete mode 100644 grails-core/src/main/groovy/org/apache/grails/core/aot/GroovyExtensionModuleRuntimeHints.java
delete mode 100644 grails-core/src/main/groovy/org/apache/grails/core/aot/VarargsBeanRegistrationAotProcessor.java
rename grails-core/src/{testFixtures/java => main/groovy}/org/grails/core/io/MockFileResource.java (100%)
rename grails-core/src/{testFixtures/java => main/groovy}/org/grails/core/io/MockResourceLoader.java (100%)
rename grails-core/src/{testFixtures/java => main/groovy}/org/grails/core/io/MockStringResourceLoader.java (100%)
rename grails-core/src/{testFixtures/java => main/groovy}/org/grails/plugins/MockGrailsPluginManager.java (100%)
rename grails-core/src/{testFixtures/java => main/groovy}/org/grails/plugins/MockPluginDiscovery.java (100%)
create mode 100644 grails-core/src/main/groovy/org/grails/plugins/core/CoreAutoConfiguration.java
delete mode 100644 grails-core/src/main/groovy/org/grails/spring/aop/autoproxy/GroovyAwareAutoProxyCreators.java
delete mode 100644 grails-core/src/main/groovy/org/grails/spring/beans/AbstractResourceLocatorPostProcessor.java
delete mode 100644 grails-core/src/main/groovy/org/grails/spring/context/annotation/GrailsComponentScanPostProcessor.java
create mode 100644 grails-core/src/main/groovy/org/grails/spring/context/support/PluginAwareResourceBundleMessageSource.java
create mode 100644 grails-core/src/main/groovy/org/grails/spring/context/support/ReloadableResourceBundleMessageSource.java
delete mode 100644 grails-core/src/main/resources/META-INF/native-image/org.apache.grails/grails-core/native-image.properties
copy grails-core/src/main/resources/META-INF/{additional-spring-configuration-metadata.json => spring-configuration-metadata.json} (67%)
delete mode 100644 grails-core/src/main/resources/META-INF/spring/aot.factories
delete mode 100644 grails-core/src/test-cli/groovy/org/apache/grails/core/cli/ApplicationCommandProviderSpec.groovy
delete mode 100644 grails-core/src/test/groovy/grails/boot/GrailsBannerColourSpec.groovy
delete mode 100644 grails-core/src/test/groovy/grails/boot/GrailsBannerNativeMarkSpec.groovy
delete mode 100644 grails-core/src/test/groovy/grails/boot/GrailsBannerVersionLookupSpec.groovy
delete mode 100644 grails-core/src/test/groovy/grails/boot/config/GrailsApplicationPostProcessorAnnotationConfigSpec.groovy
delete mode 100644 grails-core/src/test/groovy/grails/boot/config/GrailsAutoConfigurationArtefactsSpec.groovy
delete mode 100644 grails-core/src/test/groovy/grails/plugins/DefaultGrailsPluginManagerRegistryContractSpec.groovy
create mode 100644 grails-core/src/test/groovy/grails/spring/GrailsPlaceHolderConfigurerCorePluginRuntimeSpec.groovy
delete mode 100644 grails-core/src/test/groovy/grails/util/ActiveProcessorCountForkTests.java
delete mode 100644 grails-core/src/test/groovy/grails/util/GrailsUtilStackFiltererSpec.groovy
delete mode 100644 grails-core/src/test/groovy/org/apache/grails/core/GrailsBootstrapRegistryInitializerSpec.groovy
delete mode 100644 grails-core/src/test/groovy/org/apache/grails/core/aot/AbstractBeanDefinitionExcludeFilterSpec.groovy
delete mode 100644 grails-core/src/test/groovy/org/apache/grails/core/aot/ArtefactClassesBeanFactoryInitializationAotProcessorSpec.groovy
delete mode 100644 grails-core/src/test/groovy/org/apache/grails/core/aot/AutowireModeBeanRegistrationAotProcessorSpec.groovy
delete mode 100644 grails-core/src/test/groovy/org/apache/grails/core/aot/BeanRegistrarRuntimeHintsSpec.groovy
delete mode 100644 grails-core/src/test/groovy/org/apache/grails/core/aot/GrailsApiRuntimeHintsSpec.groovy
delete mode 100644 grails-core/src/test/groovy/org/apache/grails/core/aot/GrailsBannerRuntimeHintsSpec.groovy
delete mode 100644 grails-core/src/test/groovy/org/apache/grails/core/aot/GrailsClosureRuntimeHintsSpec.groovy
delete mode 100644 grails-core/src/test/groovy/org/apache/grails/core/aot/GrailsResourceRuntimeHintsSpec.groovy
delete mode 100644 grails-core/src/test/groovy/org/apache/grails/core/aot/GroovyExtensionModuleRuntimeHintsSpec.groovy
delete mode 100644 grails-core/src/test/groovy/org/apache/grails/core/aot/VarargsBeanRegistrationAotProcessorSpec.groovy
rename grails-core/src/{test-cli => test}/groovy/org/apache/grails/core/cli/ConfigReportCommandSpec.groovy (100%)
rename grails-core/src/{test-cli => test}/groovy/org/apache/grails/core/cli/compiler/CommandFactoriesTransformationSpec.groovy (82%)
delete mode 100644 grails-core/src/test/groovy/org/grails/plugins/CoreAutoConfigurationSpec.groovy
delete mode 100644 grails-core/src/test/groovy/org/grails/plugins/CoreGrailsPluginAotSpec.groovy
delete mode 100644 grails-core/src/test/groovy/org/grails/plugins/CoreGrailsPluginRegistrarSpec.groovy
delete mode 100644 grails-core/src/test/groovy/org/grails/plugins/ProfilingGrailsPluginManagerSpec.groovy
delete mode 100644 grails-core/src/test/groovy/org/grails/plugins/SpringBeanPackagesSpec.groovy
delete mode 100644 grails-core/src/test/groovy/org/grails/spring/aop/autoproxy/GroovyAwareAutoProxyCreatorsSpec.groovy
delete mode 100644 grails-core/src/test/groovy/org/grails/spring/beans/AbstractResourceLocatorPostProcessorSpec.groovy
create mode 100644 grails-core/src/test/groovy/org/grails/spring/context/ResourceBundleMessageSourceSpec.groovy
delete mode 100644 grails-core/src/test/groovy/org/grails/transaction/GrailsTransactionAttributeSpec.groovy
delete mode 100644 grails-core/src/test/resources/grails/boot/version-in-a-resource.properties
delete mode 100644 grails-core/src/test/resources/logback-test.xml
delete mode 100644 grails-core/src/testFixtures/groovy/org/apache/grails/core/testing/support/LogCapture.groovy
rename grails-data-graphql/core/src/{testFixtures => main}/groovy/org/grails/gorm/graphql/testing/GraphQLSchemaSpec.groovy (100%)
rename grails-data-graphql/core/src/{testFixtures => main}/groovy/org/grails/gorm/graphql/testing/MockDataFetchingEnvironment.groovy (100%)
create mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/MongoSchemaSpec.groovy.disabled
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/binding/DataBinderNotFoundExceptionSpec.groovy
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/entity/EntityFetchOptionsSpec.groovy
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/entity/arguments/SimpleArgumentSpec.groovy
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/entity/dsl/helpers/ComplexTypedSpec.groovy
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/fetcher/DataFetcherNotFoundExceptionSpec.groovy
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/fetcher/impl/ClosureDataFetchingEnvironmentSpec.groovy
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/fetcher/impl/CountEntityDataFetcherSpec.groovy
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/fetcher/impl/PaginatedEntityDataFetcherSpec.groovy
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/fetcher/impl/PersistentPropertyDataFetcherSpec.groovy
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/fetcher/interceptor/CustomMutationInterceptorInvokerSpec.groovy
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/fetcher/interceptor/CustomQueryInterceptorInvokerSpec.groovy
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/response/CachingGraphQLResponseHandlerSpec.groovy
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/types/KeyClassQuerySpec.groovy
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/types/scalars/coercing/CurrencyCoercionSpec.groovy
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/types/scalars/coercing/DateCoercionSpec.groovy
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/types/scalars/coercing/SqlDateCoercionSpec.groovy
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/types/scalars/coercing/TimeCoercionSpec.groovy
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/types/scalars/coercing/TimeZoneCoercionSpec.groovy
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/types/scalars/coercing/TimestampCoercionSpec.groovy
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/types/scalars/coercing/URICoercionSpec.groovy
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/types/scalars/coercing/URLCoercionSpec.groovy
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/types/scalars/coercing/UUIDCoercionSpec.groovy
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/types/scalars/coercing/jsr310/InstantCoercionSpec.groovy
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/types/scalars/coercing/jsr310/LocalDateCoercionSpec.groovy
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/types/scalars/coercing/jsr310/LocalDateTimeCoercionSpec.groovy
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/types/scalars/coercing/jsr310/LocalTimeCoercionSpec.groovy
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/types/scalars/coercing/jsr310/OffsetDateTimeCoercionSpec.groovy
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/types/scalars/coercing/jsr310/OffsetTimeCoercionSpec.groovy
delete mode 100644 grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/types/scalars/coercing/jsr310/ZonedDateTimeCoercionSpec.groovy
rename grails-data-hibernate5/core/src/main/resources/META-INF/{additional-spring-configuration-metadata.json => spring-configuration-metadata.json} (100%)
delete mode 100644 grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/Hibernate5JoinedLockDialectSpec.groovy
delete mode 100644 grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/Hibernate5RefreshLockSpec.groovy
delete mode 100644 grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/SortArgumentValidationSpec.groovy
delete mode 100644 grails-data-hibernate5/core/src/test/groovy/org/grails/orm/hibernate/cfg/HibernateMappingContextConfigurationSpec.groovy
rename grails-data-hibernate5/dbmigration/src/{integration-test-cli => integration-test}/groovy/org/grails/plugins/databasemigration/DbUpdateCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/main/resources/META-INF/{additional-spring-configuration-metadata.json => spring-configuration-metadata.json} (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/ApplicationContextDatabaseMigrationCommandSpec.groovy (96%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DatabaseMigrationCommandConfigSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DatabaseMigrationCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DbmChangelogSyncCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DbmChangelogSyncCommandSqlSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DbmClearChecksumsCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DbmDiffCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DbmDropAllCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DbmFutureRollbackCountSqlCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DbmFutureRollbackSqlCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DbmGenerateChangelogCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DbmGenerateGormChangelogCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DbmGormDiffCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DbmListLocksCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DbmMarkNextChangesetRanCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DbmMarkNextChangesetRanSqlCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DbmPreviousChangesetSqlCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DbmReleaseLocksCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DbmRollbackCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DbmRollbackCountCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DbmRollbackCountSqlCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DbmRollbackSqlCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DbmRollbackToDateCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DbmRollbackToDateSqlCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DbmStatusCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DbmUpdateCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DbmUpdateCountCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DbmUpdateCountSqlCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DbmUpdateSqlCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/DbmValidateCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate5/dbmigration/cli/ScriptDatabaseMigrationCommandSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/grails/plugins/databasemigration/liquibase/GroovyChangeLogSpec.groovy (100%)
rename grails-data-hibernate5/dbmigration/src/{test-cli => test}/groovy/org/grails/plugins/databasemigration/liquibase/GroovyPreconditionSpec.groovy (100%)
delete mode 100644 grails-data-hibernate5/grails-plugin/src/test-cli/groovy/grails/plugin/hibernate/commands/SchemaExportCommandSpec.groovy
delete mode 100644 grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/cfg/domainbinding/hibernate/HibernateBasicEnumProperty.java
rename grails-data-hibernate7/core/src/main/resources/META-INF/{additional-spring-configuration-metadata.json => spring-configuration-metadata.json} (100%)
delete mode 100644 grails-data-hibernate7/core/src/test/groovy/grails/gorm/tests/EnumHasManyDdlSpec.groovy
delete mode 100644 grails-data-hibernate7/core/src/test/groovy/grails/gorm/tests/Hibernate7RefreshLockSpec.groovy
delete mode 100644 grails-data-hibernate7/core/src/test/groovy/grails/gorm/tests/Issue16349Spec.groovy
delete mode 100644 grails-data-hibernate7/core/src/test/groovy/grails/gorm/tests/SortArgumentValidationSpec.groovy
delete mode 100644 grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/GormNumericTypeColumnIntegrationSpec.groovy
delete mode 100644 grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/GormNumericTypeColumnPrecisionSpec.groovy
delete mode 100644 grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/GormTextTypeColumnIntegrationSpec.groovy
delete mode 100644 grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/GormTextTypeColumnLengthSpec.groovy
rename grails-data-hibernate7/dbmigration/src/{integration-test-cli => integration-test}/groovy/org/grails/plugins/databasemigration/DbUpdateCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/main/resources/META-INF/{additional-spring-configuration-metadata.json => spring-configuration-metadata.json} (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/ApplicationContextDatabaseMigrationCommandSpec.groovy (98%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DatabaseMigrationCommandConfigSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DatabaseMigrationCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DbmChangelogSyncCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DbmChangelogSyncCommandSqlSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DbmClearChecksumsCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DbmDiffCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DbmDropAllCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DbmFutureRollbackCountSqlCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DbmFutureRollbackSqlCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DbmGenerateChangelogCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DbmGenerateGormChangelogCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DbmGormDiffCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DbmListLocksCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DbmMarkNextChangesetRanCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DbmMarkNextChangesetRanSqlCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DbmPreviousChangesetSqlCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DbmReleaseLocksCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DbmRollbackCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DbmRollbackCountCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DbmRollbackCountSqlCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DbmRollbackSqlCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DbmRollbackToDateCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DbmRollbackToDateSqlCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DbmStatusCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DbmUpdateCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DbmUpdateCountCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DbmUpdateCountSqlCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DbmUpdateSqlCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/DbmValidateCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/apache/grails/data/hibernate7/dbmigration/cli/ScriptDatabaseMigrationCommandSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/grails/plugins/databasemigration/liquibase/GroovyChangeLogSpec.groovy (100%)
rename grails-data-hibernate7/dbmigration/src/{test-cli => test}/groovy/org/grails/plugins/databasemigration/liquibase/GroovyPreconditionSpec.groovy (100%)
delete mode 100644 grails-data-hibernate7/grails-plugin/src/test-cli/groovy/grails/plugin/hibernate/commands/SchemaExportCommandSpec.groovy
delete mode 100644 grails-data-mongodb/bson/src/test/groovy/org/grails/datastore/bson/codecs/CodecCustomTypeMarshallerSpec.groovy
delete mode 100644 grails-data-mongodb/bson/src/test/groovy/org/grails/datastore/bson/codecs/CodecExtensionsSpec.groovy
delete mode 100644 grails-data-mongodb/bson/src/test/groovy/org/grails/datastore/bson/codecs/SimpleCodecsSpec.groovy
delete mode 100644 grails-data-mongodb/bson/src/test/groovy/org/grails/datastore/bson/codecs/decoders/BasicCollectionTypeDecoderSpec.groovy
delete mode 100644 grails-data-mongodb/bson/src/test/groovy/org/grails/datastore/bson/codecs/decoders/CustomTypeDecoderSpec.groovy
delete mode 100644 grails-data-mongodb/bson/src/test/groovy/org/grails/datastore/bson/codecs/decoders/EmbeddedCollectionDecoderSpec.groovy
delete mode 100644 grails-data-mongodb/bson/src/test/groovy/org/grails/datastore/bson/codecs/decoders/EmbeddedDecoderSpec.groovy
delete mode 100644 grails-data-mongodb/bson/src/test/groovy/org/grails/datastore/bson/codecs/decoders/IdentityDecoderSpec.groovy
delete mode 100644 grails-data-mongodb/bson/src/test/groovy/org/grails/datastore/bson/codecs/decoders/SimpleDecoderSpec.groovy
delete mode 100644 grails-data-mongodb/bson/src/test/groovy/org/grails/datastore/bson/codecs/decoders/TemporalTypeDecodersSpec.groovy
delete mode 100644 grails-data-mongodb/bson/src/test/groovy/org/grails/datastore/bson/codecs/decoders/TenantIdDecoderSpec.groovy
delete mode 100644 grails-data-mongodb/bson/src/test/groovy/org/grails/datastore/bson/codecs/domain/Profile.groovy
delete mode 100644 grails-data-mongodb/bson/src/test/groovy/org/grails/datastore/bson/codecs/encoders/BasicCollectionTypeEncoderSpec.groovy
delete mode 100644 grails-data-mongodb/bson/src/test/groovy/org/grails/datastore/bson/codecs/encoders/CustomTypeEncoderSpec.groovy
delete mode 100644 grails-data-mongodb/bson/src/test/groovy/org/grails/datastore/bson/codecs/encoders/EmbeddedCollectionEncoderSpec.groovy
delete mode 100644 grails-data-mongodb/bson/src/test/groovy/org/grails/datastore/bson/codecs/encoders/EmbeddedEncoderSpec.groovy
delete mode 100644 grails-data-mongodb/bson/src/test/groovy/org/grails/datastore/bson/codecs/encoders/IdentityEncoderSpec.groovy
delete mode 100644 grails-data-mongodb/bson/src/test/groovy/org/grails/datastore/bson/codecs/encoders/SimpleEncoderSpec.groovy
delete mode 100644 grails-data-mongodb/bson/src/test/groovy/org/grails/datastore/bson/codecs/encoders/TemporalTypeEncodersSpec.groovy
delete mode 100644 grails-data-mongodb/bson/src/test/groovy/org/grails/datastore/bson/codecs/encoders/TenantIdEncoderSpec.groovy
delete mode 100644 grails-data-mongodb/bson/src/test/groovy/org/grails/datastore/bson/json/JsonReaderSpec.groovy
delete mode 100644 grails-data-mongodb/bson/src/test/groovy/org/grails/datastore/bson/json/JsonWriterSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/main/groovy/org/grails/datastore/mapping/mongo/connections/MongoConnectionSource.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/grails/mongodb/bootstrap/MongoDbDataStoreSpringInitializerBeanDefinitionsSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/grails/mongodb/geo/DistanceSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/BuildIndexesAsyncSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/BuildIndexesBackgroundFailureSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/BuildIndexesClassificationCostSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/BuildIndexesDisabledSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/BuildIndexesEnabledByDefaultSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/BuildIndexesFailureSummarySpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/BuildIndexesHookSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/BuildIndexesKeyOrderSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/BuildIndexesLifecycleSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/BuildIndexesNameConflictSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/BuildIndexesOnDemandSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/BuildIndexesPartialClassificationSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/BuildIndexesRecreateSummarySpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/BuildIndexesStaleSnapshotSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/BuildIndexesSummaryLogSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/BuildIndexesUnfinishedSummarySpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/BuildIndexesUnreadableIndexListSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/CapturedLog.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/EmbeddedCollectionDirtyTrackingSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/FailingMongoClient.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/HasManyReassignDirtyTrackingSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/MapCriterionValueSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/MongoEntityIdentityTypeSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/PortableIdentityPersistenceSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/bugs/MappingEngineStringIdStorageSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/bugs/MongoIdCoercionSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/bugs/StringIdAssociationStorageSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/connections/BuildIndexesPerConnectionSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/connections/BuildIndexesSharedDeclarationSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/connections/CheckpointRestoreConnectionsSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/connections/SuppliedMongoClientSettingsSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/mapping/mongo/MongoDatastoreLifecycleSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/mapping/mongo/config/MongoConfigurationMetadataSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/mapping/mongo/config/MongoMappingContextSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/mapping/mongo/connections/MongoConnectionSourceSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/groovy/org/grails/datastore/mapping/mongo/engine/MongoIdCoercionSpec.groovy
delete mode 100644 grails-data-mongodb/core/src/test/resources/logback-test.xml
delete mode 100644 grails-data-mongodb/docs/src/docs/asciidoc/gettingStarted/embeddedMongo.adoc
delete mode 100644 grails-data-mongodb/embedded/build.gradle
delete mode 100644 grails-data-mongodb/embedded/src/main/java/org/grails/datastore/gorm/mongodb/embedded/EmbeddedMongoBackend.java
delete mode 100644 grails-data-mongodb/embedded/src/main/java/org/grails/datastore/gorm/mongodb/embedded/EmbeddedMongoInitializer.java
delete mode 100644 grails-data-mongodb/embedded/src/main/java/org/grails/datastore/gorm/mongodb/embedded/EmbeddedMongoLifecycle.java
delete mode 100644 grails-data-mongodb/embedded/src/main/java/org/grails/datastore/gorm/mongodb/embedded/EmbeddedMongoSettings.java
delete mode 100644 grails-data-mongodb/embedded/src/main/java/org/grails/datastore/gorm/mongodb/embedded/FlapdoodleMongoBackend.java
delete mode 100644 grails-data-mongodb/embedded/src/main/java/org/grails/datastore/gorm/mongodb/embedded/InMemoryMongoBackend.java
delete mode 100644 grails-data-mongodb/embedded/src/main/java/org/grails/datastore/gorm/mongodb/embedded/ReplicaSetInitiator.java
delete mode 100644 grails-data-mongodb/embedded/src/main/java/org/grails/datastore/gorm/mongodb/embedded/RunningEmbeddedMongo.java
delete mode 100644 grails-data-mongodb/embedded/src/main/resources/META-INF/spring.factories
delete mode 100644 grails-data-mongodb/embedded/src/test/groovy/org/grails/datastore/gorm/mongodb/embedded/EmbeddedMongoInitializerSpec.groovy
delete mode 100644 grails-data-mongodb/embedded/src/test/groovy/org/grails/datastore/gorm/mongodb/embedded/EmbeddedMongoLifecycleSpec.groovy
delete mode 100644 grails-data-mongodb/embedded/src/test/groovy/org/grails/datastore/gorm/mongodb/embedded/EmbeddedMongoReplicaSetSpec.groovy
delete mode 100644 grails-data-mongodb/embedded/src/test/groovy/org/grails/datastore/gorm/mongodb/embedded/EmbeddedMongoSettingsSpec.groovy
delete mode 100644 grails-data-mongodb/embedded/src/test/groovy/org/grails/datastore/gorm/mongodb/embedded/FlapdoodleMongoBackendSpec.groovy
delete mode 100644 grails-data-mongodb/embedded/src/test/groovy/org/grails/datastore/gorm/mongodb/embedded/InMemoryMongoBackendSpec.groovy
delete mode 100644 grails-data-mongodb/embedded/src/test/java/org/grails/datastore/gorm/mongodb/embedded/ContextStoppedServerApplication.java
delete mode 100644 grails-data-mongodb/ext/src/test/groovy/org/grails/datastore/gorm/mongo/extensions/MongoExtensionsSpec.groovy
rename grails-data-mongodb/grails-plugin/src/main/resources/META-INF/{additional-spring-configuration-metadata.json => spring-configuration-metadata.json} (88%)
delete mode 100644 grails-data-mongodb/grails-plugin/src/test/groovy/grails/plugins/mongodb/MongodbGrailsPluginSpec.groovy
delete mode 100644 grails-data-mongodb/spring-data/src/main/java/org/grails/datastore/gorm/mongodb/springdata/DatastoreMongoClientDatabaseFactory.java
delete mode 100644 grails-data-mongodb/spring-data/src/test/groovy/org/grails/datastore/gorm/mongodb/springdata/GormSharedSessionMongoTransactionManagerSpec.groovy
delete mode 100644 grails-data-mongodb/spring-data/src/test/groovy/org/grails/datastore/gorm/mongodb/springdata/SpringDataMongoGormRestoreSpec.groovy
create mode 100644 grails-data-neo4j/build.gradle
delete mode 100644 grails-data-neo4j/core/build.gradle
delete mode 100644 grails-data-neo4j/core/src/main/groovy/org/grails/datastore/gorm/neo4j/Neo4jGormApiFactory.groovy
delete mode 100644 grails-data-neo4j/core/src/main/groovy/org/grails/datastore/gorm/neo4j/engine/Neo4jQuery.groovy
delete mode 100644 grails-data-neo4j/core/src/main/groovy/org/grails/datastore/gorm/neo4j/parsers/PlingStemmer.java
delete mode 100644 grails-data-neo4j/core/src/main/groovy/org/grails/datastore/gorm/neo4j/proxy/HashcodeEqualsAwareProxyFactory.java
delete mode 100644 grails-data-neo4j/core/src/test/groovy/grails/gorm/tests/HasManyReassignDirtyCheckingSpec.groovy
delete mode 100644 grails-data-neo4j/core/src/test/groovy/grails/gorm/tests/NamedConnectionsSpec.groovy
delete mode 100644 grails-data-neo4j/core/src/test/groovy/org/apache/grails/data/neo4j/core/GrailsDataNeo4jTckManager.groovy
delete mode 100644 grails-data-neo4j/core/src/test/groovy/org/apache/grails/data/neo4j/core/Neo4jGormDatastoreSpec.groovy
delete mode 100644 grails-data-neo4j/core/src/test/groovy/org/grails/datastore/gorm/neo4j/Neo4jMappingContextSpec.groovy
delete mode 100644 grails-data-neo4j/core/src/test/resources/META-INF/services/org.apache.grails.data.testing.tck.base.GrailsDataTckManager
create mode 100644 grails-data-neo4j/examples/grails3-neo4j-hibernate/build.gradle
copy grails-core/src/test-cli/resources/META-INF/grails-cli.factories => grails-data-neo4j/examples/grails3-neo4j-hibernate/gradle.properties (78%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/assets/images/apple-touch-icon-retina.png (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/assets/images/apple-touch-icon.png (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/assets/images/favicon.ico (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/assets/images/grails_logo.png (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/assets/images/skin/database_add.png (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/assets/images/skin/database_delete.png (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/assets/images/skin/database_edit.png (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/assets/images/skin/database_save.png (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/assets/images/skin/database_table.png (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/assets/images/skin/exclamation.png (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/assets/images/skin/house.png (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/assets/images/skin/information.png (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/assets/images/skin/shadow.jpg (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/assets/images/skin/sorted_asc.gif (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/assets/images/skin/sorted_desc.gif (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/assets/images/spinner.gif (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/assets/javascripts/application.js (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/assets/stylesheets/application.css (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/assets/stylesheets/errors.css (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/assets/stylesheets/main.css (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/assets/stylesheets/mobile.css (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/conf/application.yml (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/conf/logback.xml (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/conf/spring/resources.groovy (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/controllers/UrlMappings.groovy (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/controllers/functional/tests/AuthorController.groovy (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/controllers/functional/tests/BookController.groovy (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/domain/functional/tests/Author.groovy (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/domain/functional/tests/Book.groovy (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/i18n/messages.properties (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/i18n/messages_cs_CZ.properties (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/i18n/messages_da.properties (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/i18n/messages_de.properties (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/i18n/messages_es.properties (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/i18n/messages_fr.properties (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/i18n/messages_it.properties (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/i18n/messages_ja.properties (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/i18n/messages_nb.properties (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/i18n/messages_nl.properties (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/i18n/messages_pl.properties (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/i18n/messages_pt_BR.properties (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/i18n/messages_pt_PT.properties (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/i18n/messages_ru.properties (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/i18n/messages_sv.properties (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/i18n/messages_th.properties (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/i18n/messages_zh_CN.properties (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/init/BootStrap.groovy (100%)
copy {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/init/functional/tests/Application.groovy (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/views/author/create.gsp (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/views/author/edit.gsp (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/views/author/index.gsp (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/views/author/show.gsp (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/views/book/create.gsp (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/views/book/edit.gsp (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/views/book/index.gsp (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/views/book/show.gsp (100%)
copy {grails-test-examples/geb-gebconfig => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/views/error.gsp (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/views/index.gsp (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/views/layouts/main.gsp (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j-hibernate}/grails-app/views/notFound.gsp (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j-hibernate}/src/integration-test/groovy/functional/tests/AuthorControllerSpec.groovy (64%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j-hibernate}/src/integration-test/groovy/functional/tests/BookControllerSpec.groovy (66%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j-hibernate}/src/test/groovy/functional/tests/Neo4jWithHibernateSpec.groovy (76%)
create mode 100644 grails-data-neo4j/examples/grails3-neo4j/build.gradle
rename grails-core-cli-legacy/src/main/resources/META-INF/grails-cli.factories => grails-data-neo4j/examples/grails3-neo4j/gradle.properties (78%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/assets/images/apple-touch-icon-retina.png (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/assets/images/apple-touch-icon.png (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/assets/images/favicon.ico (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/assets/images/grails_logo.png (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/assets/images/skin/database_add.png (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/assets/images/skin/database_delete.png (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/assets/images/skin/database_edit.png (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/assets/images/skin/database_save.png (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/assets/images/skin/database_table.png (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/assets/images/skin/exclamation.png (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/assets/images/skin/house.png (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/assets/images/skin/information.png (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/assets/images/skin/shadow.jpg (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/assets/images/skin/sorted_asc.gif (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/assets/images/skin/sorted_desc.gif (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/assets/images/spinner.gif (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/assets/javascripts/application.js (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/assets/stylesheets/application.css (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/assets/stylesheets/errors.css (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/assets/stylesheets/main.css (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/assets/stylesheets/mobile.css (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j}/grails-app/conf/application.yml (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/conf/logback.xml (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/conf/spring/resources.groovy (100%)
copy {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/controllers/UrlMappings.groovy (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j}/grails-app/controllers/functional/tests/BookController.groovy (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j}/grails-app/domain/functional/tests/Book.groovy (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j}/grails-app/domain/functional/tests/Person.groovy (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/i18n/messages.properties (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/i18n/messages_cs_CZ.properties (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/i18n/messages_da.properties (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/i18n/messages_de.properties (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/i18n/messages_es.properties (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/i18n/messages_fr.properties (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/i18n/messages_it.properties (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/i18n/messages_ja.properties (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/i18n/messages_nb.properties (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/i18n/messages_nl.properties (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/i18n/messages_pl.properties (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/i18n/messages_pt_BR.properties (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/i18n/messages_pt_PT.properties (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/i18n/messages_ru.properties (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/i18n/messages_sv.properties (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/i18n/messages_th.properties (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/i18n/messages_zh_CN.properties (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/init/BootStrap.groovy (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j}/grails-app/init/functional/tests/Application.groovy (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j}/grails-app/services/functional/tests/PersonService.groovy (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/views/book/create.gsp (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/views/book/edit.gsp (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/views/book/index.gsp (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/views/book/show.gsp (100%)
copy {grails-test-examples/geb-gebconfig => grails-data-neo4j/examples/grails3-neo4j}/grails-app/views/error.gsp (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/views/index.gsp (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/views/layouts/main.gsp (100%)
rename {grails-test-examples/neo4j/hibernate5 => grails-data-neo4j/examples/grails3-neo4j}/grails-app/views/notFound.gsp (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j}/src/integration-test/groovy/functional/tests/BookControllerSpec.groovy (65%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j}/src/test/groovy/functional/tests/BookSpec.groovy (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j}/src/test/groovy/functional/tests/PersonSpec.groovy (100%)
rename {grails-test-examples/neo4j/base => grails-data-neo4j/examples/grails3-neo4j}/src/test/groovy/functional/tests/StandaloneNeo4jSpec.groovy (100%)
copy grails-data-neo4j/{core/src/main/groovy/grails/neo4j/Direction.groovy => examples/neo4j-spring-boot/build.gradle} (53%)
rename grails-data-hibernate7/dbmigration/src/test-cli/resources/logging.properties => grails-data-neo4j/examples/neo4j-spring-boot/gradle.properties (78%)
rename {grails-test-examples/neo4j/spring-boot => grails-data-neo4j/examples/neo4j-spring-boot}/src/main/groovy/example/Application.groovy (100%)
rename {grails-test-examples/neo4j/spring-boot => grails-data-neo4j/examples/neo4j-spring-boot}/src/main/groovy/example/Book.groovy (100%)
rename {grails-test-examples/neo4j/spring-boot => grails-data-neo4j/examples/neo4j-spring-boot}/src/main/groovy/example/BookController.groovy (100%)
rename {grails-test-examples/neo4j/spring-boot => grails-data-neo4j/examples/neo4j-spring-boot}/src/main/groovy/example/BookService.groovy (100%)
rename {grails-test-examples/neo4j/spring-boot => grails-data-neo4j/examples/neo4j-spring-boot}/src/main/resources/application.yml (100%)
rename {grails-test-examples/neo4j/spring-boot => grails-data-neo4j/examples/neo4j-spring-boot}/src/test/groovy/example/BookControllerSpec.groovy (100%)
rename end-to-end/legacy-commands-plugin/src/main/groovy/legacy/commands/plugin/GreetingService.groovy => grails-data-neo4j/examples/neo4j-standalone/build.gradle (85%)
rename grails-data-hibernate5/dbmigration/src/test-cli/resources/logging.properties => grails-data-neo4j/examples/neo4j-standalone/gradle.properties (78%)
rename {grails-test-examples/neo4j => grails-data-neo4j/examples}/neo4j-standalone/src/main/groovy/example/Person.groovy (100%)
rename {grails-test-examples/neo4j => grails-data-neo4j/examples}/neo4j-standalone/src/main/groovy/example/PersonService.groovy (100%)
rename {grails-test-examples/neo4j => grails-data-neo4j/examples}/neo4j-standalone/src/test/groovy/example/PersonServiceSpec.groovy (100%)
rename {grails-configuration-metadata => grails-data-neo4j/examples/test-data-service}/build.gradle (50%)
rename grails-core/src/test-cli/resources/META-INF/grails-cli.factories => grails-data-neo4j/examples/test-data-service/gradle.properties (78%)
rename {grails-test-examples/neo4j => grails-data-neo4j/examples}/test-data-service/grails-app/conf/application.groovy (100%)
rename {grails-test-examples/neo4j => grails-data-neo4j/examples}/test-data-service/grails-app/conf/application.yml (69%)
rename {grails-test-examples/neo4j => grails-data-neo4j/examples}/test-data-service/grails-app/conf/logback.xml (100%)
rename {grails-test-examples/neo4j => grails-data-neo4j/examples}/test-data-service/grails-app/conf/spring/resources.groovy (100%)
rename {grails-test-examples/neo4j => grails-data-neo4j/examples}/test-data-service/grails-app/controllers/example/ApplicationController.groovy (100%)
rename {grails-test-examples/neo4j => grails-data-neo4j/examples}/test-data-service/grails-app/controllers/example/UrlMappings.groovy (100%)
rename {grails-test-examples/neo4j => grails-data-neo4j/examples}/test-data-service/grails-app/domain/example/Book.groovy (100%)
rename {grails-test-examples/neo4j => grails-data-neo4j/examples}/test-data-service/grails-app/domain/example/Person.groovy (100%)
rename {grails-test-examples/neo4j => grails-data-neo4j/examples}/test-data-service/grails-app/domain/example/Student.groovy (100%)
rename {grails-test-examples/neo4j => grails-data-neo4j/examples}/test-data-service/grails-app/i18n/messages.properties (100%)
copy {grails-test-examples/neo4j => grails-data-neo4j/examples}/test-data-service/grails-app/init/example/Application.groovy (99%)
copy {grails-test-examples/neo4j => grails-data-neo4j/examples}/test-data-service/grails-app/init/example/BootStrap.groovy (99%)
rename {grails-test-examples/neo4j => grails-data-neo4j/examples}/test-data-service/grails-app/services/example/BookService.groovy (100%)
rename {grails-test-examples/neo4j => grails-data-neo4j/examples}/test-data-service/grails-app/services/example/LibraryService.groovy (100%)
rename {grails-test-examples/neo4j => grails-data-neo4j/examples}/test-data-service/grails-app/services/example/PersonService.groovy (100%)
rename {grails-test-examples/neo4j => grails-data-neo4j/examples}/test-data-service/grails-app/services/example/StudentService.groovy (94%)
rename {grails-test-examples/neo4j => grails-data-neo4j/examples}/test-data-service/grails-app/services/example/TestService.groovy (100%)
rename {grails-test-examples/neo4j => grails-data-neo4j/examples}/test-data-service/grails-app/views/application/index.gson (100%)
rename {grails-test-examples/neo4j => grails-data-neo4j/examples}/test-data-service/grails-app/views/error.gson (100%)
rename {grails-test-examples/neo4j => grails-data-neo4j/examples}/test-data-service/grails-app/views/errors/_errors.gson (100%)
rename {grails-test-examples/neo4j => grails-data-neo4j/examples}/test-data-service/grails-app/views/notFound.gson (100%)
rename {grails-test-examples/neo4j => grails-data-neo4j/examples}/test-data-service/grails-app/views/object/_object.gson (100%)
rename {grails-test-examples/neo4j => grails-data-neo4j/examples}/test-data-service/src/integration-test/groovy/example/StudentServiceSpec.groovy (100%)
copy {grails-test-examples/neo4j => grails-data-neo4j/examples}/test-data-service/src/integration-test/groovy/example/TestServiceSpec.groovy (100%)
rename {grails-test-examples/neo4j => grails-data-neo4j/examples}/test-data-service/src/main/groovy/example/LoginAuthenticationSucessHandler.groovy (91%)
copy {grails-test-examples/neo4j => grails-data-neo4j/examples}/test-data-service/src/main/groovy/example/TestBean.groovy (100%)
create mode 100644 grails-data-neo4j/gradle.properties
delete mode 100644 grails-data-neo4j/gradle/neo4j-harness-test-config.gradle
create mode 100644 grails-data-neo4j/grails-datastore-gorm-neo4j/build.gradle
copy grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/grails/neo4j/Direction.groovy (99%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/grails/neo4j/Neo4jEntity.groovy (92%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/grails/neo4j/Node.groovy (99%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/grails/neo4j/Path.groovy (96%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/grails/neo4j/Relationship.groovy (76%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/grails/neo4j/mapping/MappingBuilder.groovy (97%)
copy grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/grails/neo4j/services/Cypher.groovy (99%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/CypherBuilder.java (85%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/GraphClassMapping.groovy (86%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/GraphGormMappingFactory.groovy (52%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/GraphPersistentEntity.groovy (87%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/IdGenerator.java (99%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/Neo4jDatastore.java (80%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/Neo4jDatastoreTransactionManager.java (97%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/Neo4jEntityTraitProvider.groovy (94%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/Neo4jMappingContext.java (77%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/Neo4jSession.java (89%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/Neo4jTransaction.groovy (86%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/RelationshipPersistentEntity.groovy (80%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/RelationshipUtils.groovy (87%)
copy grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/SessionFlushedEvent.java (99%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/TypeDirectionPair.java (92%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/api/Neo4jGormStaticApi.groovy (79%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/collection/GraphAdapter.groovy (78%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/collection/Neo4jAssociationResultList.groovy (94%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/collection/Neo4jList.groovy (90%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/collection/Neo4jPath.groovy (82%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/collection/Neo4jPersistentList.groovy (95%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/collection/Neo4jPersistentSet.groovy (91%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/collection/Neo4jPersistentSortedSet.groovy (94%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/collection/Neo4jRelationship.groovy (97%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/collection/Neo4jResultList.groovy (80%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/collection/Neo4jSet.groovy (89%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/collection/Neo4jSortedSet.groovy (89%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/config/Neo4jDriverConfigBuilder.groovy (69%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/config/Settings.java (97%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/connections/Neo4jConnectionSourceFactory.java (83%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/connections/Neo4jConnectionSourceSettings.groovy (99%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/connections/Neo4jConnectionSourceSettingsBuilder.groovy (99%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/connections/Neo4jEmbeddedConnectionSource.java (99%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/engine/DynamicAssociationSupport.java (82%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/engine/Neo4jAssociationQueryExecutor.groovy (71%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/engine/Neo4jEntityPersister.java (73%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/engine/Neo4jModificationTrackingEntityAccess.groovy (99%)
create mode 100644 grails-data-neo4j/grails-datastore-gorm-neo4j/src/main/groovy/org/grails/datastore/gorm/neo4j/engine/Neo4jQuery.groovy
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/engine/RelationshipPendingDelete.java (90%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/engine/RelationshipPendingInsert.java (71%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/extensions/Neo4jExtensions.groovy (77%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/identity/SnowflakeIdGenerator.java (94%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/mapping/config/Attribute.groovy (99%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/mapping/config/DynamicAssociation.java (99%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/mapping/config/DynamicToManyAssociation.java (98%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/mapping/config/DynamicToOneAssociation.java (93%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/mapping/config/NodeConfig.groovy (95%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/mapping/config/RelationshipConfig.groovy (96%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/mapping/reflect/Neo4jNameUtils.groovy (91%)
create mode 100644 grails-data-neo4j/grails-datastore-gorm-neo4j/src/main/groovy/org/grails/datastore/gorm/neo4j/parsers/PlingStemmer.java
create mode 100644 grails-data-neo4j/grails-datastore-gorm-neo4j/src/main/groovy/org/grails/datastore/gorm/neo4j/proxy/HashcodeEqualsAwareProxyFactory.java
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/proxy/Neo4jAssociationQueryProxyHandler.java (99%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/proxy/Neo4jProxyFactory.java (99%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/services/implementers/FindAllCypherQueryImplementer.groovy (93%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/services/implementers/FindOneCypherQueryImplementer.groovy (92%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/services/implementers/FindPathCypherQueryImplementer.groovy (83%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/services/implementers/FindShortestPathImplementer.groovy (76%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/services/implementers/StatementResultCypherQueryImplementer.groovy (88%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/services/implementers/UpdateCypherQueryImplementer.groovy (82%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/services/transform/CypherQueryStringTransformer.groovy (96%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/util/EmbeddedNeo4jServer.java (84%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/groovy/org/grails/datastore/gorm/neo4j/util/IteratorUtil.java (96%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/resources/META-INF/services/org.codehaus.groovy.runtime.ExtensionModule (100%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/resources/META-INF/services/org.grails.compiler.gorm.GormEntityTraitProvider (100%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/main/resources/META-INF/services/org.grails.datastore.gorm.services.ServiceImplementer (100%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/AssignedIdSpec.groovy (100%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/CascadingDeleteSpec.groovy (87%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/CustomLabelWithDynamicAssociationSpec.groovy (88%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/CypherQueryStringSpec.groovy (94%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/EagerFetchingSpec.groovy (88%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/EntityParseSpec.groovy (100%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/FindByIsNullSpec.groovy (87%)
create mode 100644 grails-data-neo4j/grails-datastore-gorm-neo4j/src/test/groovy/grails/gorm/tests/GormDatastoreSpec.groovy
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/GroovyProxySpec.groovy (83%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/HasManyInheritanceSpec.groovy (100%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/InheritanceProxySpec.groovy (81%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/JavaxValidationSpec.groovy (84%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/JoinCriteriaSpec.groovy (89%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/LabelStrategySpec.groovy (93%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/LikeQuerySpec.groovy (91%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/ManyToManyQuerySpec.groovy (90%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/ManyToManySpec.groovy (87%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/MapPropertySpec.groovy (88%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/MarkDirtyFalseSpec.groovy (73%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/MiscSpec.groovy (85%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/MultipleConnectionsSpec.groovy (93%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/NativeIdentityGeneratorSpec.groovy (87%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/Neo4jNameUtilsSpec.groovy (100%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/Neo4jResultListSpec.groovy (85%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/NullValueEqualSpec.groovy (84%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/OneToManyUpdateSpec.groovy (89%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/OneToOneSpec.groovy (82%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/OptimisticLockingSpec.groovy (70%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/OrphanDeleteSpec.groovy (87%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/PagedResultSpec.groovy (91%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/PersistenceEventListenerSpec.groovy (87%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/Pet.groovy (88%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/ProjectionsSpec.groovy (89%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/ProxySpec.groovy (86%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/ReadManyObjectsSpec.groovy (86%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/RelationshipMappingSpec.groovy (93%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/RelationshipUtilsSpec.groovy (73%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/SchemalessSpec.groovy (80%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/TransientsSpec.groovy (87%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/UniqueConstraintSpec.groovy (91%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/UpdateWithProxyPresentSpec.groovy (100%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/ValidationSpec.groovy (86%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/WithTransactionSpec.groovy (90%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/assignedid/OneToManyCreateSpec.groovy (100%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/assignedid/domain/Owner.groovy (100%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/assignedid/domain/Pet.groovy (100%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/cypher/OneToManyCreateSpec.groovy (91%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/cypher/domain/Owner.groovy (100%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/cypher/domain/Pet.groovy (100%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/idgeneration/CustomIdGeneratorSpec.groovy (100%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/idgeneration/SnowflakeIdGeneratorSpec.groovy (100%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/multitenancy/MultiTenancySpec.groovy (100%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/multitenancy/SingleTenancySpec.groovy (95%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/path/PathSpec.groovy (100%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/path/RelationshipSpec.groovy (100%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/path/domain/Person.groovy (100%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/services/Author.groovy (100%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/services/AuthorBooks.groovy (100%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/services/Book.groovy (100%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/gorm/tests/services/CypherQueryTransformerSpec.groovy (100%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/grails/neo4j/Neo4jEntitySpec.groovy (100%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/org/grails/datastore/gorm/neo4j/ApiExtensionsSpec.groovy (86%)
copy end-to-end/legacy-commands/grails-app/init/legacycommands/Application.groovy => grails-data-neo4j/grails-datastore-gorm-neo4j/src/test/groovy/org/grails/datastore/gorm/neo4j/Neo4jSuite.groovy (76%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/org/grails/datastore/gorm/neo4j/RelationshipUtilsSpec.groovy (100%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/org/grails/datastore/gorm/neo4j/TransactionPropagationSpec.groovy (89%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/org/grails/datastore/gorm/neo4j/config/Neo4jConnectionSourceSettingsSpec.groovy (60%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/groovy/org/grails/datastore/gorm/neo4j/config/Neo4jDriverConfigBuilderSpec.groovy (100%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/resources/logback.xml (100%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/resources/neo4j-server.properties (100%)
rename grails-data-neo4j/{core => grails-datastore-gorm-neo4j}/src/test/resources/spy.properties (100%)
rename {end-to-end/legacy-g7-command-plugin => grails-data-neo4j}/settings.gradle (54%)
delete mode 100644 grails-data-simple/src/test/groovy/org/grails/datastore/mapping/simple/SimpleMapSessionPendingOperationsSpec.groovy
delete mode 100644 grails-databinding-core/src/main/groovy/grails/databinding/FrameworkPropertyNames.java
create mode 100644 grails-databinding/src/main/groovy/org/grails/plugins/databinding/DataBindingConfiguration.java
rename grails-databinding/src/main/resources/META-INF/{additional-spring-configuration-metadata.json => spring-configuration-metadata.json} (83%)
create mode 100644 grails-databinding/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
delete mode 100644 grails-datamapping-async/src/test/groovy/grails/gorm/async/AsyncEntitySpec.groovy
delete mode 100644 grails-datamapping-async/src/test/groovy/org/grails/datastore/gorm/async/AsyncQuerySpec.groovy
delete mode 100644 grails-datamapping-async/src/test/groovy/org/grails/datastore/gorm/async/GormAsyncStaticApiSpec.groovy
delete mode 100644 grails-datamapping-core-test/src/test/groovy/grails/gorm/tests/ConnectionScopeMultiTenancySpec.groovy
delete mode 100644 grails-datamapping-core/src/main/groovy/org/apache/grails/datamapping/aot/GormRuntimeHints.java
delete mode 100644 grails-datamapping-core/src/main/groovy/org/grails/compiler/gorm/LocalTransformationSupport.groovy
delete mode 100644 grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/internal/RefreshLockArguments.groovy
create mode 100644 grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/jdbc/OriginCapablePropertyValue.java
rename grails-converters/src/test/groovy/org/grails/web/converters/beans/PackagePrivateJavaPerson.java => grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/jdbc/PropertyOrigin.java (65%)
delete mode 100644 grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/query/transform/GlobalGormQuerySafetyASTTransformation.java
delete mode 100644 grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/query/transform/GormQuerySafetyTransformer.java
delete mode 100644 grails-datamapping-core/src/main/resources/META-INF/spring/aot.factories
delete mode 100644 grails-datamapping-core/src/test/groovy/com/IgnoredPackageEntity.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/grails/gorm/annotation/multitenancy/MultiTenantCurrentTenantTransformSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/grails/gorm/annotation/multitenancy/TenantTransformSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/grails/gorm/services/ServiceImplementerEdgeCaseSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/grails/gorm/services/transform/ServiceTransformClasses.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/grails/gorm/services/transform/ServiceTransformSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/grails/gorm/transactions/GrailsTransactionAttributeSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/grails/gorm/transactions/TransactionRollbackRulePropagationSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/apache/grails/datamapping/aot/GormRuntimeHintsSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/compiler/gorm/GormEntityIdentityTypeSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/AbstractGormApiRegistrySpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/ActiveSessionDatastoreSelectorSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/DefaultDatastoreSelectorSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/DefaultGormApiFactorySpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/GormApiFactorySpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/GormApiRegistrySpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/GormRegistryConcurrencySpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/GormRegistryEntityRegistrationSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/GormRegistryFactorySpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/PreferredDatastoreSelectorSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/QualifiedDatastoreSelectorSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/bootstrap/AbstractDatastoreInitializerConfigurationSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/dirty/checking/DirtyCheckCollectionReassignmentSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/events/ConfigurableApplicationContextEventPublisherSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/internal/RefreshLockArgumentsSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/jdbc/DatabaseDriverSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/jdbc/MultiTenantDataSourceSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/jdbc/RelaxedConversionServiceSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/jdbc/RelaxedDataBinderSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/jdbc/RelaxedNamesSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/jdbc/connections/CachedDataSourceConnectionSourceFactorySpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/jdbc/connections/DataSourceConnectionSourceFactorySpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/jdbc/connections/DataSourceConnectionSourceSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/jdbc/connections/DataSourceSettingsBuilderSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/jdbc/connections/DataSourceSettingsSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/jdbc/connections/SpringDataSourceConnectionSourceFactorySpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/query/transform/DetachedCriteriaASTTransformationSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/query/transform/GlobalGormQuerySafetyASTTransformationSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/query/transform/GormQuerySafetyTransformerSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/query/transform/WhereQueryAggregateSubqueryErrorSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/query/transform/WhereQueryAssociationPathSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/query/transform/WhereQueryDetachedCriteriaCastSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/query/transform/WhereQueryEmbeddedPropertyPathSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/query/transform/WhereQueryFunctionCallSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/query/transform/WhereQueryMultiLevelAssociationFunctionSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/query/transform/WhereQueryNegationSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/query/transform/WhereQueryOperatorSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/query/transform/WhereQueryPropertyAliasSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/query/transform/WhereQueryStaticFieldSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/services/transform/ServiceTransformationSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/services/transform/support/AdaptedProbeServiceImplementer.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/services/transform/support/NoOpServiceImplementerAdapter.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/services/transform/support/ProbeServiceImplementer.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/services/transform/support/ProbeServiceImplementerAdapter.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/transform/AbstractGormASTTransformationSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/transform/AbstractTraitApplyingGormASTTransformationSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/transform/ApplyNonCompilationUnitAwareTransform.java
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/transform/ApplyTestTraitWeaving.java
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/transform/ApplyUnloadableGormTransform.java
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/transform/AstPropertyResolveUtilsSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/transform/DoubleGenericTestTrait.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/transform/NonCompilationUnitAwareTestTransformation.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/transform/OrderedGormTransformationSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/transform/SingleGenericTestTrait.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/transform/TestTraitWeavingTransformation.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/transform/TestWeavableTrait.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/utils/ReflectionUtilsSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/validation/constraints/MappingContextAwareConstraintFactorySpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/validation/jakarta/ConfigurableParameterNameProviderSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/validation/jakarta/ConstraintViolationUtilsSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/validation/jakarta/GormValidatorFactoryAdapterSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/validation/jakarta/JakartaValidatorRegistrySpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/validation/jakarta/MethodKeySpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/validation/listener/ValidationEventListenerSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/validation/registry/support/ValidatorRegistriesSpec.groovy
delete mode 100644 grails-datamapping-core/src/test/resources/META-INF/services/org.grails.datastore.gorm.services.ServiceImplementer
delete mode 100644 grails-datamapping-core/src/test/resources/META-INF/services/org.grails.datastore.gorm.services.ServiceImplementerAdapter
delete mode 100644 grails-datamapping-validation/src/main/groovy/org/apache/grails/datamapping/validation/aot/ConstrainedPropertyRuntimeHints.java
delete mode 100644 grails-datamapping-validation/src/main/resources/META-INF/spring/aot.factories
delete mode 100644 grails-datamapping-validation/src/test/groovy/org/apache/grails/datamapping/validation/aot/ConstrainedPropertyRuntimeHintsSpec.groovy
rename grails-datastore-core/src/main/groovy/org/grails/datastore/mapping/core/{TransactionSynchronizationSessionResolver.groovy => ThreadLocalSessionResolver.groovy} (56%)
delete mode 100644 grails-datastore-core/src/main/groovy/org/grails/datastore/mapping/core/connections/SingleSessionCapableDatastore.java
delete mode 100644 grails-datastore-core/src/main/groovy/org/grails/datastore/mapping/reflect/DevToolsClassLoaders.java
create mode 100644 grails-datastore-core/src/test/groovy/org/grails/datastore/mapping/core/ThreadLocalSessionResolverSpec.groovy
delete mode 100644 grails-datastore-core/src/test/groovy/org/grails/datastore/mapping/core/TransactionSynchronizationSessionResolverSpec.groovy
delete mode 100644 grails-datastore-core/src/test/groovy/org/grails/datastore/mapping/dirty/checking/DirtyCheckingCollectionSpec.groovy
delete mode 100644 grails-datastore-core/src/test/groovy/org/grails/datastore/mapping/document/config/DocumentMappingContextSpec.groovy
create mode 100644 grails-datastore-core/src/test/groovy/org/grails/datastore/mapping/model/AbstractPersistentEntityGetTenantIdSpec.groovy
delete mode 100644 grails-datastore-core/src/test/groovy/org/grails/datastore/mapping/reflect/DevToolsClassLoadersSpec.groovy
delete mode 100644 grails-datastore-core/src/test/groovy/org/grails/datastore/mapping/transactions/DatastoreTransactionManagerSpec.groovy
delete mode 100644 grails-datastore-core/src/test/groovy/org/grails/datastore/mapping/transactions/SessionOnlyTransactionSpec.groovy
delete mode 100644 grails-datastore-core/src/test/resources/logback-test.xml
delete mode 100644 grails-doc/src/en/guide/GORM/multiTenancy.adoc
delete mode 100644 grails-doc/src/en/guide/backgroundJobs.adoc
delete mode 100644 grails-doc/src/en/guide/backgroundJobs/backgroundJobsAdvanced.adoc
delete mode 100644 grails-doc/src/en/guide/backgroundJobs/backgroundJobsAdvanced/quartzClustering.adoc
delete mode 100644 grails-doc/src/en/guide/backgroundJobs/backgroundJobsAdvanced/quartzConfiguration.adoc
delete mode 100644 grails-doc/src/en/guide/backgroundJobs/backgroundJobsAdvanced/quartzDynamicScheduling.adoc
delete mode 100644 grails-doc/src/en/guide/backgroundJobs/backgroundJobsAdvanced/quartzInstallation.adoc
delete mode 100644 grails-doc/src/en/guide/backgroundJobs/backgroundJobsAdvanced/quartzJobManagerService.adoc
delete mode 100644 grails-doc/src/en/guide/backgroundJobs/backgroundJobsAdvanced/quartzJobProperties.adoc
delete mode 100644 grails-doc/src/en/guide/backgroundJobs/backgroundJobsAdvanced/quartzLongRunningJobs.adoc
delete mode 100644 grails-doc/src/en/guide/backgroundJobs/backgroundJobsAdvanced/quartzScheduling.adoc
delete mode 100644 grails-doc/src/en/guide/backgroundJobs/backgroundJobsAdvanced/quartzTriggers.adoc
delete mode 100644 grails-doc/src/en/guide/backgroundJobs/backgroundJobsAdvanced/quartzUsefulLinks.adoc
delete mode 100644 grails-doc/src/en/guide/backgroundJobs/backgroundJobsBasic.adoc
delete mode 100644 grails-doc/src/en/guide/deployment/deploymentAot.adoc
delete mode 100644 grails-doc/src/en/guide/deployment/deploymentAotCache.adoc
delete mode 100644 grails-doc/src/en/guide/testing/testingMongodb.adoc
delete mode 100644 grails-doc/src/en/guide/theWebLayer/gsp/gspInSpringBoot.adoc
delete mode 100644 grails-doc/src/en/guide/theWebLayer/gsp/gspStaticCompilation.adoc
delete mode 100644 grails-doc/src/en/guide/theWebLayer/gsp/taglibs/compiledTags.adoc
delete mode 100644 grails-doc/src/en/ref/Triggers.adoc
delete mode 100644 grails-doc/src/en/ref/Triggers/cron.adoc
delete mode 100644 grails-doc/src/en/ref/Triggers/custom.adoc
delete mode 100644 grails-doc/src/en/ref/Triggers/simple.adoc
delete mode 100644 grails-domain-class/src/main/groovy/org/grails/plugins/domain/DomainClassEnvironmentPostProcessor.groovy
copy grails-domain-class/src/main/groovy/org/grails/plugins/domain/{DomainClassGrailsPlugin.groovy => GrailsDomainClassAutoConfiguration.groovy} (51%)
delete mode 100644 grails-domain-class/src/main/resources/META-INF/spring.factories
delete mode 100644 grails-domain-class/src/test/groovy/org/grails/plugins/domain/AutoTimestampCacheDefaultSpec.groovy
create mode 100644 grails-domain-class/src/test/groovy/org/grails/plugins/domain/DomainClassGrailsPluginSpec.groovy
delete mode 100644 grails-encoder/src/test/groovy/org/grails/encoder/CodecMetaClassSupportSpec.groovy
delete mode 100644 grails-forge/docs/aws-elastic-beanstalk.md
mode change 100755 => 100644 grails-forge/gradlew.bat
create mode 100644 grails-forge/grails-forge-api/src/main/java/org/grails/forge/api/create/github/GitHubCreateController.java
create mode 100644 grails-forge/grails-forge-api/src/main/java/org/grails/forge/api/create/github/GitHubCreateDTO.java
create mode 100644 grails-forge/grails-forge-api/src/main/java/org/grails/forge/api/create/github/GitHubCreateOperation.java
create mode 100644 grails-forge/grails-forge-api/src/main/java/org/grails/forge/api/create/github/GitHubCreateService.java
create mode 100644 grails-forge/grails-forge-api/src/main/java/org/grails/forge/api/create/github/GitHubRedirectService.java
create mode 100644 grails-forge/grails-forge-api/src/main/resources/META-INF/native-image/org.grails.forge.api/grails-forge-api/native-image.properties
delete mode 100644 grails-forge/grails-forge-api/src/test/groovy/org/grails/forge/api/GrailsForgeConfigurationSpec.groovy
create mode 100644 grails-forge/grails-forge-api/src/test/groovy/org/grails/forge/api/create/github/GitHubApiMockedController.groovy
create mode 100644 grails-forge/grails-forge-api/src/test/groovy/org/grails/forge/api/create/github/GitHubCreateControllerSpec.groovy
create mode 100644 grails-forge/grails-forge-api/src/test/groovy/org/grails/forge/api/create/github/GitHubOauthMockedController.groovy
create mode 100644 grails-forge/grails-forge-core/src/main/java/org/grails/forge/client/github/oauth/AccessToken.java
rename grails-core/src/cli/groovy/org/apache/grails/core/cli/ApplicationCommandFactoryKeyProvider.groovy => grails-forge/grails-forge-core/src/main/java/org/grails/forge/client/github/oauth/GitHubOAuthClient.java (58%)
rename grails-async/core/src/main/groovy/org/grails/async/factory/future/VirtualThreadPromiseFactory.groovy => grails-forge/grails-forge-core/src/main/java/org/grails/forge/client/github/oauth/GitHubOAuthOperations.java (58%)
rename grails-data-neo4j/core/src/main/groovy/grails/neo4j/services/Cypher.groovy => grails-forge/grails-forge-core/src/main/java/org/grails/forge/client/github/v3/GitHubApiClient.java (56%)
create mode 100644 grails-forge/grails-forge-core/src/main/java/org/grails/forge/client/github/v3/GitHubApiOperations.java
create mode 100644 grails-forge/grails-forge-core/src/main/java/org/grails/forge/client/github/v3/GitHubRepository.java
create mode 100644 grails-forge/grails-forge-core/src/main/java/org/grails/forge/client/github/v3/GitHubSecret.java
rename grails-converters/src/test/groovy/org/grails/web/converters/beans/PackagePrivateGroovyPerson.groovy => grails-forge/grails-forge-core/src/main/java/org/grails/forge/client/github/v3/GitHubSecretsPublicKey.java (55%)
create mode 100644 grails-forge/grails-forge-core/src/main/java/org/grails/forge/client/github/v3/GitHubUser.java
create mode 100644 grails-forge/grails-forge-core/src/main/java/org/grails/forge/client/github/v3/GitHubWorkflowRun.java
rename grails-data-neo4j/core/src/main/groovy/grails/neo4j/Direction.groovy => grails-forge/grails-forge-core/src/main/java/org/grails/forge/client/github/v3/GitHubWorkflowRuns.java (51%)
delete mode 100644 grails-forge/grails-forge-core/src/main/java/org/grails/forge/feature/database/AsyncGorm.java
delete mode 100644 grails-forge/grails-forge-core/src/main/java/org/grails/forge/feature/database/MongoDBTestingSupport.java
delete mode 100644 grails-forge/grails-forge-core/src/main/java/org/grails/forge/feature/database/MongoDBTestingSupportValidator.java
delete mode 100644 grails-forge/grails-forge-core/src/main/java/org/grails/forge/feature/database/Neo4jGorm.java
delete mode 100644 grails-forge/grails-forge-core/src/main/java/org/grails/forge/feature/logging/LogbackConfig.java
create mode 100644 grails-forge/grails-forge-core/src/main/java/org/grails/forge/feature/security/template/securityConfig.rocker.raw
create mode 100644 grails-forge/grails-forge-core/src/main/java/org/grails/forge/util/GitHubUtil.java
mode change 100755 => 100644 grails-forge/grails-forge-core/src/main/resources/gradle/gradlew.bat
delete mode 100644 grails-forge/grails-forge-core/src/test/groovy/org/grails/forge/ActiveProcessorCountForkSpec.groovy
delete mode 100644 grails-forge/grails-forge-core/src/test/groovy/org/grails/forge/feature/database/AsyncGormSpec.groovy
delete mode 100644 grails-forge/grails-forge-core/src/test/groovy/org/grails/forge/feature/database/MongoDBTestingSupportSpec.groovy
delete mode 100644 grails-forge/grails-forge-core/src/test/groovy/org/grails/forge/feature/database/Neo4JGormSpec.groovy
delete mode 100644 grails-forge/grails-forge-core/src/test/groovy/org/grails/forge/feature/grails/GrailsUrlMappingsSpec.groovy
delete mode 100644 grails-forge/grails-forge-web-netty/aws/.platform/nginx/conf.d/proxy.conf
delete mode 100644 grails-forge/grails-forge-web-netty/aws/Procfile
delete mode 100644 grails-forge/grails-forge-web-netty/aws/start.sh
create 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
delete mode 100644 grails-forge/infrastructure/README.md
delete mode 100644 grails-forge/infrastructure/environment.yaml
delete mode 100644 grails-forge/infrastructure/shared.yaml
delete mode 100644 grails-geb/src/test/groovy/grails/plugin/geb/GebRecordingTestListenerSpec.groovy
delete mode 100644 grails-geb/src/test/groovy/grails/plugin/geb/WebDriverContainerHolderSpec.groovy
delete mode 100644 grails-gradle/common/src/main/groovy/org/apache/grails/gradle/common/XmlParserFeature.java
delete mode 100644 grails-gradle/common/src/test/groovy/org/apache/grails/gradle/common/XmlParserFeatureSpec.groovy
delete mode 100644 grails-gradle/model/src/test/groovy/org/grails/io/support/SpringIOUtilsSpec.groovy
delete mode 100644 grails-gradle/plugins/src/main/groovy/org/apache/grails/gradle/plugin/aot/AotCacheExtension.groovy
delete mode 100644 grails-gradle/plugins/src/main/groovy/org/apache/grails/gradle/plugin/aot/ExtractApplicationTask.groovy
delete mode 100644 grails-gradle/plugins/src/main/groovy/org/apache/grails/gradle/plugin/aot/GenerateNativeMetadataTask.groovy
delete mode 100644 grails-gradle/plugins/src/main/groovy/org/apache/grails/gradle/plugin/aot/NativeMetadataExtension.groovy
delete mode 100644 grails-gradle/plugins/src/main/groovy/org/apache/grails/gradle/plugin/aot/RunPort.groovy
delete mode 100644 grails-gradle/plugins/src/main/groovy/org/apache/grails/gradle/plugin/aot/StartupLog.groovy
delete mode 100644 grails-gradle/plugins/src/main/groovy/org/apache/grails/gradle/plugin/aot/TraceNativeMetadataTask.groovy
delete mode 100644 grails-gradle/plugins/src/main/groovy/org/apache/grails/gradle/plugin/aot/TrainAotCacheTask.groovy
delete mode 100644 grails-gradle/plugins/src/main/groovy/org/grails/gradle/plugin/core/AutoConfigurationImportsCompileInput.groovy
delete mode 100644 grails-gradle/plugins/src/main/groovy/org/grails/gradle/plugin/core/GrailsCompilerConfigScriptTask.groovy
delete mode 100644 grails-gradle/plugins/src/main/groovy/org/grails/gradle/plugin/core/GrailsGormIdTypeProvider.groovy
delete mode 100644 grails-gradle/plugins/src/main/groovy/org/grails/gradle/plugin/core/GrailsGormOptions.groovy
delete mode 100644 grails-gradle/plugins/src/main/groovy/org/grails/gradle/plugin/core/GrailsGspCompileStaticProvider.groovy
delete mode 100644 grails-gradle/plugins/src/main/groovy/org/grails/gradle/plugin/core/GrailsI18nOptions.groovy
delete mode 100644 grails-gradle/plugins/src/main/groovy/org/grails/gradle/plugin/i18n/GenerateI18nDescriptorTask.groovy
delete mode 100644 grails-gradle/plugins/src/main/groovy/org/grails/gradle/plugin/i18n/I18nBundleIndex.groovy
delete mode 100644 grails-gradle/plugins/src/main/groovy/org/grails/gradle/plugin/scaffolding/GenerateScaffoldedViewsTask.groovy
delete mode 100644 grails-gradle/plugins/src/main/groovy/org/grails/gradle/plugin/views/gsp/GenerateTagLibraryIndexTask.groovy
delete mode 100644 grails-gradle/plugins/src/main/groovy/org/grails/gradle/plugin/views/gsp/TagLibraryIndexFiles.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/apache/grails/gradle/plugin/aot/ExtractApplicationTaskSpec.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/apache/grails/gradle/plugin/aot/GenerateNativeMetadataTaskSpec.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/apache/grails/gradle/plugin/aot/RunPortSpec.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/apache/grails/gradle/plugin/aot/StartupLogSpec.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/apache/grails/gradle/plugin/aot/TraceNativeMetadataTaskSpec.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/apache/grails/gradle/plugin/aot/TracedRunFixture.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/apache/grails/gradle/plugin/aot/TrainAotCacheTaskSpec.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/apache/grails/gradle/plugin/aot/TrainingRunFixture.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/commands/LegacyCommandTaskDiscoverySpec.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/commands/PluginScriptCommandPackagingSpec.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/core/ActiveProcessorCountForkSpec.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/core/AssetClasspathPackagingSpec.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/core/AutoConfigurationImportsInputSpec.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/core/GormDefaultIdTypeFunctionalSpec.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/core/GrailsGormIdTypeProviderSpec.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/core/GrailsGroovyCompilerConfigSpec.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/core/GrailsGspCompileStaticProviderSpec.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/core/GrailsNativeImageDefaultsSpec.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/core/GrailsWebDaemonReuseFunctionalSpec.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/core/TestPhasesGradlePluginSpec.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/i18n/GenerateI18nDescriptorTaskSpec.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/i18n/I18nBundleIndexSpec.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/i18n/I18nDescriptorFunctionalSpec.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/scaffolding/GenerateScaffoldedViewsTaskSpec.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/views/gsp/GenerateTagLibraryIndexTaskSpec.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/views/gsp/GroovyPagePluginFunctionalSpec.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/views/gsp/GroovyPageToolchainSpec.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/views/gsp/TagLibraryIndexFilesSpec.groovy
delete mode 100644 grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/views/gsp/TagLibraryIndexWiringFunctionalSpec.groovy
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/asset-classpath-packaging/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/asset-classpath-packaging/gradle.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/asset-classpath-packaging/settings.gradle
create mode 100644 grails-gradle/plugins/src/test/resources/test-projects/bom-platform-hibernate7-micronaut-auto/build.gradle
rename grails-gradle/plugins/src/test/resources/test-projects/{compiler-config-classpath-decoupling => bom-platform-hibernate7-micronaut-auto}/gradle.properties (100%)
create mode 100644 grails-gradle/plugins/src/test/resources/test-projects/bom-platform-hibernate7-micronaut-auto/settings.gradle
create mode 100644 grails-gradle/plugins/src/test/resources/test-projects/bom-platform-hibernate7-micronaut-manual/build.gradle
rename grails-gradle/plugins/src/test/resources/test-projects/{compiler-config-generated-user-script-execution => bom-platform-hibernate7-micronaut-manual}/gradle.properties (100%)
create mode 100644 grails-gradle/plugins/src/test/resources/test-projects/bom-platform-hibernate7-micronaut-manual/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/cli-companion-autodiscovery/included-digit-bearing-plugin/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/cli-companion-autodiscovery/included-digit-bearing-plugin/my-plugin-2fa-one/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/cli-companion-autodiscovery/included-digit-bearing-plugin/my-plugin-2fa-snapshot/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/cli-companion-autodiscovery/included-digit-bearing-plugin/my-plugin-2fa-timestamp/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/cli-companion-autodiscovery/included-digit-bearing-plugin/my-plugin-2fa-unspecified/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/cli-companion-autodiscovery/included-digit-bearing-plugin/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-classpath-decoupling/app/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-classpath-decoupling/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-classpath-decoupling/producer/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-classpath-decoupling/runtime-only-producer/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-classpath-decoupling/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-generated-user-script-execution/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-generated-user-script-execution/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-generated-user-script-execution/src/main/groovy/example/ConfiguredType.groovy
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-generated-user-script/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-generated-user-script/gradle.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-generated-user-script/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-incremental/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-incremental/gradle.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-incremental/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-late-assignment/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-late-assignment/gradle.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-late-assignment/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-late-assignment/user-config.groovy
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-late-source-set/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-late-source-set/gradle.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-late-source-set/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-missing-user-script/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-missing-user-script/gradle.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-missing-user-script/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-plugin-inputs/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-plugin-inputs/gradle.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-plugin-inputs/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-runtime-classpath-producer/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-runtime-classpath-producer/gradle.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-runtime-classpath-producer/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-standalone-task/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-standalone-task/gradle.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-standalone-task/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-standalone-task/user-config.groovy
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-star-imports/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-star-imports/gradle.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/compiler-config-star-imports/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/gorm-default-id-type-plugin-consumer/app/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/gorm-default-id-type-plugin-consumer/app/grails-app/conf/application.yml
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/gorm-default-id-type-plugin-consumer/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/gorm-default-id-type-plugin-consumer/gradle.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/gorm-default-id-type-plugin-consumer/plugin/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/gorm-default-id-type-plugin-consumer/plugin/src/main/java/example/PortableBook.java
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/gorm-default-id-type-plugin-consumer/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/gorm-default-id-type/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/gorm-default-id-type/gradle.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/gorm-default-id-type/grails-app/conf/application.yml
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/gorm-default-id-type/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/gsp-compile-classpath-grails/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/gsp-compile-classpath-grails/gradle.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/gsp-compile-classpath-grails/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/gsp-compile-classpath/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/gsp-compile-classpath/compile-classpath-marker/marker.txt
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/gsp-compile-classpath/provided-compile-marker/marker.txt
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/gsp-compile-classpath/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/gsp-compile-static/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/gsp-compile-static/gradle.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/gsp-compile-static/grails-app/conf/application.yml
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/gsp-compile-static/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/i18n-descriptor-app/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/i18n-descriptor-app/gradle.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/i18n-descriptor-app/grails-app/i18n/api_errors.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/i18n-descriptor-app/grails-app/i18n/messages.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/i18n-descriptor-app/grails-app/i18n/messages_de.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/i18n-descriptor-app/grails-app/i18n/messages_pt_BR.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/i18n-descriptor-app/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/i18n-descriptor-declared/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/i18n-descriptor-declared/gradle.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/i18n-descriptor-declared/grails-app/i18n/api.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/i18n-descriptor-declared/grails-app/i18n/api_errors.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/i18n-descriptor-declared/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/i18n-descriptor-plugin-collision/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/i18n-descriptor-plugin-collision/gradle.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/i18n-descriptor-plugin-collision/grails-app/i18n/messages.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/i18n-descriptor-plugin-collision/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/i18n-descriptor-plugin-collision/src/main/groovy/demo/SpringSecurityDemoGrailsPlugin.groovy
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/i18n-descriptor-plugin/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/i18n-descriptor-plugin/gradle.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/i18n-descriptor-plugin/grails-app/i18n/spring-security-demo-validation.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/i18n-descriptor-plugin/grails-app/i18n/spring-security-demo.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/i18n-descriptor-plugin/grails-app/i18n/spring-security-demo_fr.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/i18n-descriptor-plugin/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/i18n-descriptor-plugin/src/main/groovy/demo/SpringSecurityDemoGrailsPlugin.groovy
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/legacy-command-discovery/app/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/legacy-command-discovery/gradle.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/legacy-command-discovery/legacy-command-api/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/legacy-command-discovery/legacy-command-api/src/main/java/grails/dev/commands/ExecutionContext.java
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/legacy-command-discovery/legacy-command-plugin/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/legacy-command-discovery/legacy-command-plugin/src/main/groovy/org/example/legacy/HelloLegacyAppCommand.groovy
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/legacy-command-discovery/legacy-command-plugin/src/main/resources/META-INF/grails.factories
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/legacy-command-discovery/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/native-defaults-aot/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/native-defaults-aot/gradle.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/native-defaults-aot/grails-app/conf/application.yml
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/native-defaults-aot/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/native-defaults-off/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/native-defaults-off/gradle.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/native-defaults-off/grails-app/conf/application.yml
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/native-defaults-off/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/native-defaults-on/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/native-defaults-on/gradle.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/native-defaults-on/grails-app/conf/application.yml
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/native-defaults-on/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/native-metadata-ordering/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/native-metadata-ordering/gradle.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/native-metadata-ordering/grails-app/conf/application.yml
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/native-metadata-ordering/grails-app/views/index.gsp
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/native-metadata-ordering/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/plugin-script-commands/gradle.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/plugin-script-commands/plugin-with-cli/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/plugin-script-commands/plugin-with-cli/grails-app/views/sample/show.gsp
delete 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
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/plugin-script-commands/plugin-with-cli/src/main/scripts/example-multi-step.yml
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/plugin-script-commands/plugin-with-cli/src/main/scripts/example-script.groovy
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/plugin-script-commands/plugin-with-cli/src/main/templates/example.gsp
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/plugin-script-commands/plugin-with-cli/src/main/templates/example.txt
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/plugin-script-commands/plugin-without-cli/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/plugin-script-commands/plugin-without-cli/src/main/scripts/legacy-only-script.groovy
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/plugin-script-commands/plugin-without-cli/src/main/templates/legacy-only.gsp
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/plugin-script-commands/plugin-without-cli/src/main/templates/legacy-only.txt
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/plugin-script-commands/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/taglib-index-wiring/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/taglib-index-wiring/settings.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/web-daemon-reuse/build.gradle
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/web-daemon-reuse/gradle.properties
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/web-daemon-reuse/grails-app/conf/application.yml
delete mode 100644 grails-gradle/plugins/src/test/resources/test-projects/web-daemon-reuse/settings.gradle
delete mode 100644 grails-gsp/core/src/main/groovy/org/apache/grails/gsp/aot/PrecompiledPageRuntimeHints.java
delete mode 100644 grails-gsp/core/src/main/groovy/org/grails/gsp/compiler/PageScopeVariableScanner.java
delete mode 100644 grails-gsp/core/src/main/resources/META-INF/spring/aot.factories
delete mode 100644 grails-gsp/core/src/test/groovy/org/apache/grails/gsp/aot/PrecompiledPageRuntimeHintsSpec.groovy
delete mode 100644 grails-gsp/core/src/test/groovy/org/grails/gsp/GroovyPageMetaInfoReloadSpec.groovy
delete mode 100644 grails-gsp/core/src/test/groovy/org/grails/gsp/GroovyPageMethodMissingSpec.groovy
delete mode 100644 grails-gsp/core/src/test/groovy/org/grails/gsp/GroovyPagesTemplateEngineChecksumSpec.groovy
delete mode 100644 grails-gsp/core/src/test/groovy/org/grails/gsp/GspCompileStaticConfigSpec.groovy
delete mode 100644 grails-gsp/core/src/test/groovy/org/grails/gsp/compiler/GroovyPageCompilerReproducibilitySpec.groovy
delete mode 100644 grails-gsp/core/src/test/groovy/org/grails/gsp/compiler/GroovyPageCompilerSpec.groovy
delete mode 100644 grails-gsp/core/src/test/groovy/org/grails/gsp/compiler/PageScopeVariableScannerSpec.groovy
delete mode 100644 grails-gsp/core/src/test/groovy/org/grails/gsp/io/DefaultGroovyPageLocatorPrecompiledSpec.groovy
create mode 100644 grails-gsp/grails-sitemesh3/src/main/groovy/org/grails/plugins/sitemesh3/Sitemesh3AutoConfiguration.groovy
delete mode 100644 grails-gsp/grails-sitemesh3/src/test/groovy/org/grails/plugins/sitemesh3/GrailsSiteMeshViewResolverServletContextSpec.groovy
delete mode 100644 grails-gsp/grails-taglib/src/main/groovy/org/grails/taglib/CompiledTagInvocation.java
delete mode 100644 grails-gsp/grails-taglib/src/main/groovy/org/grails/taglib/discovery/AstTagLibraryView.java
delete mode 100644 grails-gsp/grails-taglib/src/main/groovy/org/grails/taglib/discovery/AstTagMethodView.java
delete mode 100644 grails-gsp/grails-taglib/src/main/groovy/org/grails/taglib/discovery/ReflectedTagLibraryView.java
delete mode 100644 grails-gsp/grails-taglib/src/main/groovy/org/grails/taglib/discovery/ReflectedTagMethodView.java
delete mode 100644 grails-gsp/grails-taglib/src/main/groovy/org/grails/taglib/discovery/TagDiscoveryRules.java
delete mode 100644 grails-gsp/grails-taglib/src/main/groovy/org/grails/taglib/discovery/TagLibraryAstDiscovery.java
delete mode 100644 grails-gsp/grails-taglib/src/main/groovy/org/grails/taglib/discovery/TagLibraryView.java
delete mode 100644 grails-gsp/grails-taglib/src/main/groovy/org/grails/taglib/discovery/TagMethodView.java
delete mode 100644 grails-gsp/grails-taglib/src/main/groovy/org/grails/taglib/index/TagLibraryIndex.java
delete mode 100644 grails-gsp/grails-taglib/src/main/groovy/org/grails/taglib/index/TagLibraryIndexEntry.java
delete mode 100644 grails-gsp/grails-taglib/src/main/groovy/org/grails/taglib/index/TagLibraryIndexGenerator.java
delete mode 100644 grails-gsp/grails-taglib/src/main/groovy/org/grails/taglib/index/TagLibraryIndexWriter.java
delete mode 100644 grails-gsp/grails-taglib/src/test/groovy/org/grails/taglib/index/TagLibraryIndexSpec.groovy
delete mode 100644 grails-gsp/grails-taglib/src/test/groovy/org/grails/taglib/index/TagLibraryIndexWriterConcurrencySpec.groovy
delete mode 100644 grails-gsp/grails-web-taglib/src/main/groovy/grails/gsp/taglib/compiler/CompiledTagCallRewriter.java
delete mode 100644 grails-gsp/grails-web-taglib/src/main/groovy/grails/gsp/taglib/compiler/LocalNameCollector.java
delete mode 100644 grails-gsp/grails-web-taglib/src/main/groovy/grails/gsp/taglib/compiler/PageBindingCollector.java
delete mode 100644 grails-gsp/grails-web-taglib/src/test/groovy/org/grails/taglib/discovery/TagDiscoveryRulesSpec.groovy
delete mode 100644 grails-gsp/grails-web-taglib/src/test/groovy/org/grails/taglib/discovery/TagSetAgreementSpec.groovy
delete mode 100644 grails-gsp/grails-web-taglib/src/test/groovy/org/grails/taglib/index/SingleIndexProducerSpec.groovy
delete mode 100644 grails-gsp/grails-web-taglib/src/test/groovy/org/grails/taglib/index/SourceResolvedIndexGeneratorSpec.groovy
delete mode 100644 grails-gsp/grails-web-taglib/src/test/groovy/org/grails/taglib/index/TagLibraryIndexGeneratorSpec.groovy
delete mode 100644 grails-gsp/grails-web-taglib/src/test/groovy/org/grails/web/taglib/NoMetaClassMutationSpec.groovy
delete mode 100644 grails-gsp/grails-web-taglib/src/test/groovy/org/grails/web/taglib/TagLibraryLookupIndexSpec.groovy
delete mode 100644 grails-gsp/grails-web-taglib/src/test/groovy/org/grails/web/taglib/TagPrecedenceSpec.groovy
delete mode 100644 grails-gsp/plugin/src/ast/groovy/grails/compiler/traits/CompiledTagCallTransformation.groovy
delete mode 100644 grails-gsp/plugin/src/ast/resources/META-INF/services/org.codehaus.groovy.transform.ASTTransformation
delete mode 100644 grails-gsp/plugin/src/main/groovy/org/apache/grails/gsp/taglib/TagLibBeanDefinitionsPostProcessor.groovy
delete mode 100644 grails-gsp/plugin/src/main/groovy/org/apache/grails/gsp/taglib/aot/TagLibRuntimeHints.java
delete mode 100644 grails-gsp/plugin/src/main/resources/META-INF/additional-spring-configuration-metadata.json
create mode 100644 grails-gsp/plugin/src/main/resources/META-INF/spring-configuration-metadata.json
delete mode 100644 grails-gsp/plugin/src/main/resources/META-INF/spring/aot.factories
delete mode 100644 grails-gsp/plugin/src/test/groovy/org/apache/grails/gsp/taglib/TagLibBeanDefinitionsPostProcessorSpec.groovy
delete mode 100644 grails-gsp/plugin/src/test/groovy/org/apache/grails/gsp/taglib/aot/TagLibRuntimeHintsSpec.groovy
delete mode 100644 grails-gsp/plugin/src/test/groovy/org/grails/gsp/jsp/JstlDocTypeTldSpec.groovy
delete mode 100644 grails-gsp/plugin/src/test/groovy/org/grails/plugins/web/GroovyPagesGrailsPluginPrecompiledSpec.groovy
delete mode 100644 grails-gsp/plugin/src/test/groovy/org/grails/web/taglib/CompiledPageTagCallSpec.groovy
delete mode 100644 grails-gsp/plugin/src/test/groovy/org/grails/web/taglib/CompiledTagCallBytecodeSpec.groovy
delete mode 100644 grails-gsp/plugin/src/test/groovy/org/grails/web/taglib/CompiledTagCallRewriterSpec.groovy
delete mode 100644 grails-gsp/plugin/src/test/groovy/org/grails/web/taglib/CompiledTagCallTransformationOrderSpec.groovy
delete mode 100644 grails-gsp/plugin/src/test/groovy/org/grails/web/taglib/CompiledTagInvocationSpec.groovy
delete mode 100644 grails-gsp/plugin/src/test/groovy/org/grails/web/taglib/ControllerTagCallRewriteSpec.groovy
delete mode 100644 grails-gsp/plugin/src/test/groovy/org/grails/web/taglib/GroovyMethodNameCollisionSpec.groovy
delete mode 100644 grails-gsp/plugin/src/test/groovy/org/grails/web/taglib/GspStaticTagResolutionSpec.groovy
delete mode 100644 grails-gsp/plugin/src/test/groovy/org/grails/web/taglib/IndexEdgeCaseTagLib.groovy
delete mode 100644 grails-gsp/plugin/src/test/groovy/org/grails/web/taglib/RewrittenCallsTagLib.groovy
delete mode 100644 grails-gsp/plugin/src/test/groovy/org/grails/web/taglib/RewrittenPageRenderingSpec.groovy
delete mode 100644 grails-gsp/plugin/src/test/groovy/org/grails/web/taglib/SameProjectTagResolutionSpec.groovy
delete mode 100644 grails-gsp/plugin/src/test/groovy/org/grails/web/taglib/TagCallShadowingSpec.groovy
delete mode 100644 grails-gsp/plugin/src/test/groovy/org/grails/web/taglib/TagLibraryIndexAgreementSpec.groovy
delete mode 100644 grails-gsp/plugin/src/test/groovy/org/grails/web/taglib/TagLibraryInvokerDispatchSpec.groovy
delete mode 100644 grails-gsp/plugin/src/test/groovy/org/grails/web/taglib/TypedSetTagSpec.groovy
delete mode 100644 grails-gsp/spring-boot/src/main/java/grails/gsp/boot/StandaloneGrailsApplicationAwareBeanPostProcessor.java
delete mode 100644 grails-gsp/spring-boot/src/main/java/grails/gsp/boot/StandaloneGroovyPageViewResolver.java
delete mode 100644 grails-gsp/spring-boot/src/test/groovy/grails/gsp/boot/GspAutoConfigurationSpec.groovy
delete mode 100644 grails-gsp/spring-boot/src/test/groovy/grails/gsp/boot/StandaloneGrailsApplicationAwareBeanPostProcessorSpec.groovy
delete mode 100644 grails-gsp/spring-boot/src/test/groovy/grails/gsp/boot/StandaloneGroovyPageViewResolverSpec.groovy
delete mode 100644 grails-gsp/spring-boot/src/test/groovy/grails/gsp/boot/StandaloneTagLibraryLookupSpec.groovy
delete mode 100644 grails-gsp/spring-boot/src/test/groovy/grails/gsp/boot/TagLibraryLookupRegistrarSpec.groovy
delete mode 100644 grails-gsp/spring-boot/src/test/groovy/grails/gsp/boot/UrlMappingsHolderConfigurationSpec.groovy
delete mode 100644 grails-gsp/spring-boot/src/test/resources/gsp/views.properties
delete mode 100644 grails-i18n/src/main/groovy/org/grails/plugins/i18n/EffectiveI18nDescriptors.java
create mode 100644 grails-i18n/src/main/groovy/org/grails/plugins/i18n/I18nAutoConfiguration.java
delete mode 100644 grails-i18n/src/main/groovy/org/grails/plugins/i18n/I18nDescriptor.java
delete mode 100644 grails-i18n/src/main/groovy/org/grails/plugins/i18n/I18nDescriptors.java
delete mode 100644 grails-i18n/src/main/groovy/org/grails/plugins/i18n/I18nEnvironmentPostProcessor.java
delete mode 100644 grails-i18n/src/main/groovy/org/grails/plugins/i18n/I18nRuntimeHintsProcessor.java
delete mode 100644 grails-i18n/src/main/resources/META-INF/spring.factories
delete mode 100644 grails-i18n/src/main/resources/META-INF/spring/aot.factories
delete mode 100644 grails-i18n/src/test/groovy/org/grails/plugins/i18n/I18nDescriptorsSpec.groovy
delete mode 100644 grails-i18n/src/test/groovy/org/grails/plugins/i18n/I18nEnvironmentPostProcessorSpec.groovy
delete mode 100644 grails-i18n/src/test/groovy/org/grails/plugins/i18n/I18nRuntimeHintsProcessorSpec.groovy
delete mode 100644 grails-i18n/src/test/groovy/org/grails/plugins/i18n/MessageSourcePrecedenceSpec.groovy
delete mode 100644 grails-i18n/src/test/groovy/org/grails/plugins/i18n/MessageSourceReloadSpec.groovy
delete mode 100644 grails-i18n/src/test/resources/META-INF/grails/i18n.properties
delete mode 100644 grails-i18n/src/test/resources/alpha-plugin.properties
delete mode 100644 grails-i18n/src/test/resources/beta-plugin.properties
create mode 100644 grails-mail/src/main/groovy/grails/plugins/mail/MailAutoConfiguration.groovy
delete mode 100644 grails-mail/src/test/groovy/grails/plugins/mail/MailAutoConfigurationSpec.groovy
delete mode 100644 grails-mail/src/test/groovy/grails/plugins/mail/PlainTextMailTagLibSpec.groovy
copy {grails-testing-support-redis => grails-micronaut}/build.gradle (61%)
create mode 100644 grails-micronaut/src/main/groovy/org/apache/grails/micronaut/GrailsMicronautGrailsPlugin.groovy
delete mode 100644 grails-mimetypes/src/main/groovy/org/apache/grails/mimetypes/aot/MimeTypeRuntimeHints.java
delete mode 100644 grails-mimetypes/src/main/resources/META-INF/spring/aot.factories
create mode 100644 grails-profiles/base/skeleton/grails-app/conf/logback-spring.xml
delete mode 100644 grails-quartz/build.gradle
delete mode 100644 grails-quartz/grails-app/services/grails/plugins/quartz/JobManagerService.groovy
delete mode 100644 grails-quartz/src/main/groovy/grails/plugins/quartz/CustomTriggerFactoryBean.java
delete mode 100644 grails-quartz/src/main/groovy/grails/plugins/quartz/DefaultGrailsJobClass.java
delete mode 100644 grails-quartz/src/main/groovy/grails/plugins/quartz/GrailsJobClass.java
delete mode 100644 grails-quartz/src/main/groovy/grails/plugins/quartz/GrailsJobClassConstants.java
delete mode 100644 grails-quartz/src/main/groovy/grails/plugins/quartz/GrailsJobFactory.java
delete mode 100644 grails-quartz/src/main/groovy/grails/plugins/quartz/JobArtefactHandler.groovy
delete mode 100644 grails-quartz/src/main/groovy/grails/plugins/quartz/JobDescriptor.groovy
delete mode 100644 grails-quartz/src/main/groovy/grails/plugins/quartz/JobDetailFactoryBean.java
delete mode 100644 grails-quartz/src/main/groovy/grails/plugins/quartz/QuartzJob.groovy
delete mode 100644 grails-quartz/src/main/groovy/grails/plugins/quartz/QuartzJobTraitInjector.groovy
delete mode 100644 grails-quartz/src/main/groovy/grails/plugins/quartz/TriggerDescriptor.groovy
delete mode 100644 grails-quartz/src/main/groovy/grails/plugins/quartz/TriggerUtils.groovy
delete mode 100644 grails-quartz/src/main/groovy/grails/plugins/quartz/cleanup/JdbcCleanup.groovy
delete mode 100644 grails-quartz/src/main/groovy/grails/plugins/quartz/config/TriggersConfigBuilder.groovy
delete mode 100644 grails-quartz/src/main/groovy/grails/plugins/quartz/listeners/ExceptionPrinterJobListener.java
delete mode 100644 grails-quartz/src/main/groovy/grails/plugins/quartz/listeners/SessionBinderJobListener.java
delete mode 100644 grails-quartz/src/main/groovy/quartz/QuartzGrailsPlugin.groovy
delete mode 100644 grails-quartz/src/main/scripts/CreateJob.groovy
delete mode 100644 grails-quartz/src/main/templates/Job.groovy
delete mode 100644 grails-quartz/src/test/groovy/grails/plugins/quartz/CronTriggerTimeZoneSpec.groovy
delete mode 100644 grails-quartz/src/test/groovy/grails/plugins/quartz/CustomTriggerFactoryBeanSpec.groovy
delete mode 100644 grails-quartz/src/test/groovy/grails/plugins/quartz/DefaultGrailsJobClassSpec.groovy
delete mode 100644 grails-quartz/src/test/groovy/grails/plugins/quartz/GrailsJobFactorySpec.groovy
delete mode 100644 grails-quartz/src/test/groovy/grails/plugins/quartz/JobArtefactHandlerSpec.groovy
delete mode 100644 grails-quartz/src/test/groovy/grails/plugins/quartz/JobDescriptorSpec.groovy
delete mode 100644 grails-quartz/src/test/groovy/grails/plugins/quartz/JobDetailFactoryBeanSpec.groovy
delete mode 100644 grails-quartz/src/test/groovy/grails/plugins/quartz/MockDoWithSpring.groovy
delete mode 100644 grails-quartz/src/test/groovy/grails/plugins/quartz/QuartzJobSpec.groovy
delete mode 100644 grails-quartz/src/test/groovy/grails/plugins/quartz/QuartzJobTraitInjectorSpec.groovy
delete mode 100644 grails-quartz/src/test/groovy/grails/plugins/quartz/TestQuartzJob.groovy
delete mode 100644 grails-quartz/src/test/groovy/grails/plugins/quartz/TriggerDescriptorSpec.groovy
delete mode 100644 grails-quartz/src/test/groovy/grails/plugins/quartz/config/TriggersConfigBuilderSpec.groovy
delete mode 100644 grails-quartz/src/test/groovy/quartz/QuartzGrailsPluginSpec.groovy
delete mode 100644 grails-quartz/src/test/groovy/quartz/QuartzJobStoreCleanupSpec.groovy
delete mode 100644 grails-quartz/src/test/groovy/quartz/QuartzSchedulerContextSpec.groovy
delete mode 100644 grails-quartz/src/test/groovy/quartz/QuartzStartupSchedulingSpec.groovy
delete mode 100644 grails-quartz/src/test/groovy/quartz/jobs/ContextSpecJob.groovy
delete mode 100644 grails-rest-transforms/src/test/groovy/org/grails/plugins/web/rest/render/ServletRenderContextHttpMethodSpec.groovy
delete mode 100644 grails-scaffolding/src/main/groovy/org/apache/grails/scaffolding/aot/ScaffoldingRuntimeHints.java
delete mode 100644 grails-scaffolding/src/main/resources/META-INF/spring/aot.factories
delete mode 100644 grails-scaffolding/src/test/groovy/grails/plugin/scaffolding/ScaffoldedIndexViewModelSpec.groovy
delete mode 100644 grails-shell-cli/src/test/groovy/org/grails/cli/GrailsCliLoggingVerifier.groovy
delete mode 100644 grails-shell-cli/src/test/groovy/org/grails/cli/GrailsCliProjectDetectionSpec.groovy
delete mode 100644 grails-shell-cli/src/test/groovy/org/grails/cli/GrailsCliSpec.groovy
delete mode 100644 grails-shell-cli/src/test/groovy/org/grails/cli/boot/SpringApplicationWebApplicationInitializerSpec.groovy
delete mode 100644 grails-shell-cli/src/test/groovy/org/grails/cli/command/run/LifecycleVerifier.groovy
delete mode 100644 grails-shell-cli/src/test/groovy/org/grails/cli/command/run/SpringApplicationRunnerSpec.groovy
delete mode 100644 grails-shell-cli/src/test/groovy/org/grails/cli/compiler/grape/DefaultRepositorySystemSessionAutoConfigurationSpec.groovy
delete mode 100644 grails-shell-cli/src/test/groovy/org/grails/cli/profile/AbstractProfileSpec.groovy
delete mode 100644 grails-shell-cli/src/test/groovy/org/grails/cli/profile/commands/factory/ApplicationContextCommandFactorySpec.groovy
delete mode 100644 grails-shell-cli/src/test/groovy/org/grails/cli/profile/commands/factory/LegacyPluginScriptCompatSpec.groovy
delete mode 100644 grails-shell-cli/src/test/groovy/org/grails/cli/profile/repository/MavenProfileRepositorySnapshotSpec.groovy
mode change 100755 => 100644 grails-shell-cli/src/test/resources/gradle-sample/gradlew.bat
delete mode 100644 grails-shell-cli/src/test/resources/org/grails/cli/compiler/dependencies/spring-boot-dependencies-effective-bom.xml
delete mode 100644 grails-spring-security/compat/src/test/groovy/org/springframework/security/web/util/matcher/AntPathRequestMatcherSpec.groovy
rename grails-spring-security/oauth2/plugin/grails-app/i18n/{spring-security-oauth2.properties => messages.properties} (100%)
rename grails-spring-security/plugin/src/main/resources/META-INF/{additional-spring-configuration-metadata.json => spring-configuration-metadata.json} (90%)
delete mode 100644 grails-spring-security/plugin/src/test/groovy/grails/plugin/springsecurity/ConfigurationMetadataSpec.groovy
delete mode 100644 grails-spring-security/plugin/src/test/groovy/grails/plugin/springsecurity/web/UpdateRequestContextHolderExceptionTranslationFilterSpec.groovy
rename grails-spring-security/ui/plugin/grails-app/i18n/{spring-security-ui.properties => messages.spring-security-ui.properties} (100%)
delete mode 100644 grails-spring/src/test/groovy/org/grails/spring/DefaultRuntimeSpringConfigurationAotSpec.groovy
create mode 100644 grails-test-core/src/main/groovy/org/grails/test/report/junit/JUnitReports.java
create mode 100644 grails-test-core/src/main/groovy/org/grails/test/report/junit/JUnitReportsFactory.java
create mode 100644 grails-test-core/src/main/groovy/org/grails/test/report/junit/PlainFormatter.java
create mode 100644 grails-test-core/src/main/groovy/org/grails/test/report/junit/XMLFormatter.java
delete mode 100644 grails-test-examples/aot/build.gradle
delete mode 100644 grails-test-examples/aot/grails-app/conf/application.yml
delete mode 100644 grails-test-examples/aot/grails-app/controllers/aot/GreetingController.groovy
delete mode 100644 grails-test-examples/aot/grails-app/controllers/aot/UrlMappings.groovy
delete mode 100644 grails-test-examples/aot/grails-app/init/aot/Application.groovy
delete mode 100644 grails-test-examples/aot/grails-app/services/aot/GreetingService.groovy
delete mode 100644 grails-test-examples/aot/grails-app/taglib/aot/GreetingTagLib.groovy
delete mode 100644 grails-test-examples/aot/grails-app/views/greeting/index.gsp
delete mode 100644 grails-test-examples/app1/grails-app/controllers/functionaltests/requestpath/RequestPathController.groovy
delete mode 100644 grails-test-examples/app1/grails-app/controllers/functionaltests/requestpath/RequestPathForwarderController.groovy
delete mode 100644 grails-test-examples/app1/src/integration-test/groovy/functionaltests/requestpath/RequestPathSpec.groovy
delete mode 100644 grails-test-examples/app1/src/test/groovy/functionaltests/CompiledTagCallSpec.groovy
delete mode 100644 grails-test-examples/app2/src/integration-test/groovy/app2/GrailsUtilStackFiltererIntegrationSpec.groovy
delete mode 100644 grails-test-examples/app2/src/main/groovy/app2/RecordingStackTraceFilterer.groovy
delete mode 100644 grails-test-examples/app4/src/integration-test/groovy/app4/OversizedUploadFunctionalSpec.groovy
delete mode 100644 grails-test-examples/async-events-pubsub-demo/grails-app/controllers/pubsub/demo/TimeoutController.groovy
delete mode 100644 grails-test-examples/beans-dsl-plugin/build.gradle
delete mode 100644 grails-test-examples/beans-dsl-plugin/src/main/groovy/beandsl/example/plugin/FarewellGrailsPlugin.groovy
delete mode 100644 grails-test-examples/beans-dsl-plugin/src/main/groovy/beandsl/example/plugin/GreetingGrailsPlugin.groovy
delete mode 100644 grails-test-examples/beans-dsl-plugin/src/main/groovy/beandsl/example/plugin/SalutationGrailsPlugin.groovy
delete mode 100644 grails-test-examples/beans-dsl-plugin/src/test/groovy/beandsl/example/plugin/FarewellGrailsPluginAutoDiscoverySpec.groovy
delete mode 100644 grails-test-examples/beans-dsl-plugin/src/test/groovy/beandsl/example/plugin/GreetingGrailsPluginAutoDiscoverySpec.groovy
delete mode 100644 grails-test-examples/beans-dsl-plugin/src/test/groovy/beandsl/example/plugin/SalutationGrailsPluginAutoDiscoverySpec.groovy
delete mode 100644 grails-test-examples/beans-dsl/build.gradle
delete mode 100644 grails-test-examples/beans-dsl/src/main/groovy/beandsl/example/ExampleBeans.groovy
delete mode 100644 grails-test-examples/beans-dsl/src/main/groovy/beandsl/example/FancyGreeter.groovy
delete mode 100644 grails-test-examples/beans-dsl/src/main/groovy/beandsl/example/LoudGreeter.groovy
delete mode 100644 grails-test-examples/beans-dsl/src/test/groovy/beandsl/example/ExampleBeansAutoConfigurationSpec.groovy
delete mode 100644 grails-test-examples/beans-dsl/src/test/groovy/beandsl/example/ExampleBeansAutoDiscoverySpec.groovy
delete mode 100644 grails-test-examples/benchmarks/README.adoc
delete mode 100644 grails-test-examples/benchmarks/build.gradle
delete mode 100644 grails-test-examples/benchmarks/src/jmh/java/org/apache/grails/benchmarks/controllers/ControllerActionBenchmark.java
delete mode 100644 grails-test-examples/benchmarks/src/jmh/java/org/apache/grails/benchmarks/controllers/ControllerMappingCollectionBenchmark.java
delete mode 100644 grails-test-examples/benchmarks/src/jmh/java/org/apache/grails/benchmarks/controllers/ControllerResponseBenchmark.java
delete mode 100644 grails-test-examples/benchmarks/src/jmh/java/org/apache/grails/benchmarks/databinding/SimpleDataBinderBenchmark.java
delete mode 100644 grails-test-examples/benchmarks/src/jmh/java/org/apache/grails/benchmarks/gsp/GroovyPageParserBenchmark.java
delete mode 100644 grails-test-examples/benchmarks/src/jmh/java/org/apache/grails/benchmarks/interceptors/InterceptorChainBenchmark.java
delete mode 100644 grails-test-examples/benchmarks/src/jmh/java/org/apache/grails/benchmarks/interceptors/UrlMappingMatcherBenchmark.java
delete mode 100644 grails-test-examples/benchmarks/src/jmh/java/org/apache/grails/benchmarks/ruler/CpuRulerBenchmark.java
delete mode 100644 grails-test-examples/benchmarks/src/jmh/java/org/apache/grails/benchmarks/ruler/MemoryRulerBenchmark.java
delete mode 100644 grails-test-examples/benchmarks/src/jmh/java/org/apache/grails/benchmarks/urlmappings/UrlMappingsBenchmark.java
delete mode 100644 grails-test-examples/benchmarks/src/jmh/java/org/apache/grails/benchmarks/views/ViewTemplateRenderingBenchmark.java
delete mode 100644 grails-test-examples/benchmarks/src/jmh/java/org/apache/grails/benchmarks/web/GrailsWebRequestBenchmark.java
delete mode 100644 grails-test-examples/benchmarks/src/jmh/java/org/apache/grails/benchmarks/web/MultipartResolutionBenchmark.java
delete mode 100644 grails-test-examples/benchmarks/src/jmh/java/org/apache/grails/benchmarks/web/RequestPropertyAccessBenchmark.java
delete mode 100644 grails-test-examples/benchmarks/src/main/groovy/org/apache/grails/benchmarks/controllers/ControllerFixture.groovy
delete mode 100644 grails-test-examples/benchmarks/src/main/groovy/org/apache/grails/benchmarks/controllers/ControllerMappingsFixture.groovy
delete mode 100644 grails-test-examples/benchmarks/src/main/groovy/org/apache/grails/benchmarks/controllers/ControllerResponseFixture.groovy
delete mode 100644 grails-test-examples/benchmarks/src/main/groovy/org/apache/grails/benchmarks/interceptors/InterceptorChainFixture.groovy
delete mode 100644 grails-test-examples/benchmarks/src/main/groovy/org/apache/grails/benchmarks/interceptors/InterceptorFixture.groovy
delete mode 100644 grails-test-examples/benchmarks/src/main/groovy/org/apache/grails/benchmarks/urlmappings/UrlMappingsFixture.groovy
delete mode 100644 grails-test-examples/benchmarks/src/main/groovy/org/apache/grails/benchmarks/views/ViewTemplateFixture.groovy
delete mode 100644 grails-test-examples/benchmarks/src/main/groovy/org/apache/grails/benchmarks/web/RequestPropertyFixture.groovy
delete mode 100644 grails-test-examples/benchmarks/src/main/groovy/org/apache/grails/benchmarks/web/WebContextFixture.groovy
delete mode 100644 grails-test-examples/benchmarks/src/report/groovy/org/apache/grails/benchmarks/report/BenchmarkComparator.groovy
delete mode 100644 grails-test-examples/benchmarks/src/report/groovy/org/apache/grails/benchmarks/report/CommentPoster.groovy
delete mode 100644 grails-test-examples/benchmarks/src/report/groovy/org/apache/grails/benchmarks/report/Comparison.groovy
delete mode 100644 grails-test-examples/benchmarks/src/report/groovy/org/apache/grails/benchmarks/report/JmhCompare.groovy
delete mode 100644 grails-test-examples/benchmarks/src/report/groovy/org/apache/grails/benchmarks/report/JmhResults.groovy
delete mode 100644 grails-test-examples/benchmarks/src/report/groovy/org/apache/grails/benchmarks/report/ReportRenderer.groovy
delete mode 100644 grails-test-examples/benchmarks/src/reportTest/groovy/org/apache/grails/benchmarks/report/BenchmarkComparatorSpec.groovy
delete mode 100644 grails-test-examples/benchmarks/src/reportTest/groovy/org/apache/grails/benchmarks/report/GitHubCommentsHttpSpec.groovy
delete mode 100644 grails-test-examples/benchmarks/src/reportTest/groovy/org/apache/grails/benchmarks/report/GoldenReportSpec.groovy
delete mode 100644 grails-test-examples/benchmarks/src/reportTest/groovy/org/apache/grails/benchmarks/report/JmhCompareSpec.groovy
delete mode 100644 grails-test-examples/benchmarks/src/reportTest/groovy/org/apache/grails/benchmarks/report/PostFileSpec.groovy
delete mode 100644 grails-test-examples/benchmarks/src/reportTest/resources/jmh-golden/broad-base.json
delete mode 100644 grails-test-examples/benchmarks/src/reportTest/resources/jmh-golden/broad-head.json
delete mode 100644 grails-test-examples/benchmarks/src/reportTest/resources/jmh-golden/edges-base.json
delete mode 100644 grails-test-examples/benchmarks/src/reportTest/resources/jmh-golden/edges-head.json
delete mode 100644 grails-test-examples/benchmarks/src/reportTest/resources/jmh-golden/expected-broad.md
delete mode 100644 grails-test-examples/benchmarks/src/reportTest/resources/jmh-golden/expected-edges.md
delete mode 100644 grails-test-examples/benchmarks/src/reportTest/resources/jmh-golden/expected-headonly.md
delete mode 100644 grails-test-examples/benchmarks/src/reportTest/resources/jmh-golden/expected-norulers.md
delete mode 100644 grails-test-examples/benchmarks/src/reportTest/resources/jmh-golden/expected-numbers.md
delete mode 100644 grails-test-examples/benchmarks/src/reportTest/resources/jmh-golden/expected-shards.md
delete mode 100644 grails-test-examples/benchmarks/src/reportTest/resources/jmh-golden/norulers-base.json
delete mode 100644 grails-test-examples/benchmarks/src/reportTest/resources/jmh-golden/norulers-head.json
delete mode 100644 grails-test-examples/benchmarks/src/reportTest/resources/jmh-golden/numbers-base.json
delete mode 100644 grails-test-examples/benchmarks/src/reportTest/resources/jmh-golden/numbers-head.json
delete mode 100644 grails-test-examples/benchmarks/src/reportTest/resources/jmh-golden/shards-base/shard-a.json
delete mode 100644 grails-test-examples/benchmarks/src/reportTest/resources/jmh-golden/shards-base/shard-b.json
delete mode 100644 grails-test-examples/benchmarks/src/reportTest/resources/jmh-golden/shards-head/shard-a.json
delete mode 100644 grails-test-examples/benchmarks/src/reportTest/resources/jmh-golden/shards-head/shard-b.json
delete mode 100644 grails-test-examples/gsp-compile-static/build.gradle
delete mode 100644 grails-test-examples/gsp-compile-static/grails-app/controllers/gspstatic/DemoController.groovy
delete mode 100644 grails-test-examples/gsp-compile-static/grails-app/controllers/gspstatic/UrlMappings.groovy
delete mode 100644 grails-test-examples/gsp-compile-static/grails-app/taglib/gspstatic/DemoTagLib.groovy
delete mode 100644 grails-test-examples/gsp-compile-static/grails-app/views/demo/declared.gsp
delete mode 100644 grails-test-examples/gsp-compile-static/grails-app/views/demo/frameworkNames.gsp
delete mode 100644 grails-test-examples/gsp-compile-static/grails-app/views/demo/index.gsp
delete mode 100644 grails-test-examples/gsp-compile-static/grails-app/views/error.gsp
delete mode 100644 grails-test-examples/gsp-compile-static/grails-app/views/notFound.gsp
delete mode 100644 grails-test-examples/gsp-compile-static/src/integration-test/groovy/gspstatic/GspCompileStaticSpec.groovy
delete mode 100644 grails-test-examples/gsp-spring-boot/app/src/main/assets/javascripts/application.js
delete mode 100644 grails-test-examples/gsp-spring-boot/app/src/main/assets/javascripts/theme.js
delete mode 100644 grails-test-examples/gsp-spring-boot/app/src/main/assets/stylesheets/application.css
delete mode 100644 grails-test-examples/gsp-spring-boot/app/src/main/java/hello/JspSupport.java
delete mode 100644 grails-test-examples/gsp-spring-boot/app/src/main/java/hello/JspViewController.java
delete mode 100644 grails-test-examples/gsp-spring-boot/app/src/test/java/hello/AssetLinkTest.java
delete mode 100644 grails-test-examples/gsp-spring-boot/app/src/test/java/hello/ErrorPageTest.java
delete mode 100644 grails-test-examples/gsp-spring-boot/app/src/test/java/hello/JspSupportTest.java
delete mode 100644 grails-test-examples/gsp-spring-boot/app/src/test/java/hello/JspViewTest.java
delete mode 100644 grails-test-examples/gsp-spring-boot/app/src/test/java/hello/PrecompiledViewTest.java
delete mode 100644 grails-test-examples/gsp-spring-boot/app/src/test/java/hello/StandaloneContextTest.java
delete mode 100644 grails-test-examples/hibernate7/app1/grails-app/domain/functionaltests/ManagedEntityDomain.groovy
copy grails-test-examples/{neo4j/neo4j-standalone => issue-11767}/build.gradle (63%)
rename grails-test-examples/{gsp-compile-static => issue-11767}/grails-app/conf/application.yml (82%)
copy grails-test-examples/{spring-security/cas/test1 => issue-11767}/grails-app/conf/logback.xml (89%)
create mode 100644 grails-test-examples/issue-11767/grails-app/controllers/issue11767/app/AppController.groovy
copy grails-test-examples/{neo4j/hibernate5/grails-app/controllers => issue-11767/grails-app/controllers/issue11767/app}/UrlMappings.groovy (91%)
copy grails-test-examples/{neo4j/test-data-service/grails-app/init/example => issue-11767/grails-app/init/issue11767/app}/Application.groovy (91%)
rename grails-test-examples/{async-events-pubsub-demo/src/integration-test/groovy/pubsub/demo/TimeoutControllerSpec.groovy => issue-11767/src/integration-test/groovy/issue11767/app/ConfigLoadingSpec.groovy} (52%)
rename grails-data-mongodb/bson/src/test/groovy/org/grails/datastore/bson/codecs/domain/Address.groovy => grails-test-examples/issue-11767/src/main/groovy/issue11767/app/AppGroovyMicronautBean.groovy (81%)
delete mode 100644 grails-test-examples/jetty/grails-app/controllers/issue12688/UploadController.groovy
delete mode 100644 grails-test-examples/jetty/src/integration-test/groovy/issue12688/JettyOversizedUploadSpec.groovy
copy grails-test-examples/{hibernate7/grails-data-service-multi-datasource => micronaut-groovy-only}/build.gradle (59%)
rename {end-to-end/legacy-commands => grails-test-examples/micronaut-groovy-only}/grails-app/conf/application.yml (59%)
rename grails-test-examples/{neo4j/hibernate5/grails-app/controllers => micronaut-groovy-only/grails-app/controllers/micronautgroovyonly}/UrlMappings.groovy (96%)
rename grails-test-examples/{neo4j/test-data-service/grails-app/init/example => micronaut-groovy-only/grails-app/init/micronautgroovyonly}/Application.groovy (91%)
copy grails-test-examples/{neo4j/test-data-service/src/main/groovy/example/TestBean.groovy => micronaut-groovy-only/grails-app/services/micronautgroovyonly/BeanInjectionService.groovy} (68%)
copy grails-test-examples/{gsp-compile-static/grails-app/controllers/gspstatic/Book.groovy => micronaut-groovy-only/grails-app/services/micronautgroovyonly/TestService.groovy} (92%)
rename grails-test-examples/{neo4j/test-data-service/src/integration-test/groovy/example/TestServiceSpec.groovy => micronaut-groovy-only/src/integration-test/groovy/micronautgroovyonly/BeanInjectionServiceSpec.groovy} (56%)
create mode 100644 grails-test-examples/micronaut-groovy-only/src/integration-test/groovy/micronautgroovyonly/MicronautContextSpec.groovy
create mode 100644 grails-test-examples/micronaut-groovy-only/src/integration-test/groovy/micronautgroovyonly/MicronautQualifierSpec.groovy
copy grails-test-examples/{gsp-compile-static/grails-app/controllers/gspstatic/Book.groovy => micronaut-groovy-only/src/main/groovy/bean/injection/AppConfig.groovy} (85%)
rename grails-datamapping-core/src/test/groovy/org/grails/datastore/jakartafixture/JakartaTestEntity.groovy => grails-test-examples/micronaut-groovy-only/src/main/groovy/bean/injection/FactoryCreatedService.groovy (88%)
rename grails-test-examples/{hibernate5/grails-hibernate/grails-app/domain/functional/tests/Organization.groovy => micronaut-groovy-only/src/main/groovy/bean/injection/NamedService.groovy} (92%)
rename grails-test-examples/{beans-dsl-plugin/src/main/groovy/beandsl/example/plugin/Salutation.groovy => micronaut-groovy-only/src/main/groovy/bean/injection/PrimaryNamedService.groovy} (79%)
rename grails-gradle/plugins/src/test/resources/test-projects/legacy-command-discovery/legacy-command-api/src/main/java/grails/dev/commands/ApplicationCommand.java => grails-test-examples/micronaut-groovy-only/src/main/groovy/bean/injection/Qualified.groovy (79%)
rename grails-test-examples/{beans-dsl-plugin/src/main/groovy/beandsl/example/plugin/Greeting.groovy => micronaut-groovy-only/src/main/groovy/bean/injection/QualifiedNamedService.groovy} (78%)
copy grails-test-examples/{gsp-compile-static/grails-app/controllers/gspstatic/Book.groovy => micronaut-groovy-only/src/main/groovy/bean/injection/RegularNamedService.groovy} (81%)
copy grails-test-examples/{gsp-compile-static/grails-app/init/gspstatic/Application.groovy => micronaut-groovy-only/src/main/groovy/bean/injection/ServiceFactory.groovy} (73%)
copy grails-test-examples/{gsp-compile-static/grails-app/controllers/gspstatic/Book.groovy => micronaut-groovy-only/src/main/groovy/bean/injection/SpecialNamedService.groovy} (81%)
copy grails-test-examples/{gsp-sitemesh3 => micronaut-hibernate5}/build.gradle (55%)
copy {end-to-end/spring-dependency-management => grails-test-examples/micronaut-hibernate5}/grails-app/conf/application.yml (82%)
copy grails-test-examples/{app1 => micronaut-hibernate5}/grails-app/conf/logback.xml (100%)
copy grails-test-examples/{benchmarks/src/report/groovy/org/apache/grails/benchmarks/report/Benchmark.groovy => micronaut-hibernate5/grails-app/controllers/micronaut/hibernate5/UrlMappings.groovy} (56%)
copy grails-test-examples/{benchmarks/src/report/groovy/org/apache/grails/benchmarks/report/Benchmark.groovy => micronaut-hibernate5/grails-app/init/micronaut/hibernate5/Application.groovy} (57%)
copy grails-test-examples/{quartz/grails-app/conf/logback.xml => micronaut-hibernate5/grails-app/views/index.gsp} (67%)
create mode 100644 grails-test-examples/micronaut-hibernate5/src/integration-test/groovy/micronaut/hibernate5/ApplicationStartupSpec.groovy
copy grails-test-examples/{hibernate7/gorm => micronaut-hibernate7}/build.gradle (57%)
copy {end-to-end/spring-dependency-management => grails-test-examples/micronaut-hibernate7}/grails-app/conf/application.yml (82%)
copy grails-test-examples/{app1 => micronaut-hibernate7}/grails-app/conf/logback.xml (100%)
copy grails-test-examples/{benchmarks/src/report/groovy/org/apache/grails/benchmarks/report/Benchmark.groovy => micronaut-hibernate7/grails-app/controllers/micronaut/hibernate7/UrlMappings.groovy} (56%)
rename grails-test-examples/{benchmarks/src/report/groovy/org/apache/grails/benchmarks/report/Benchmark.groovy => micronaut-hibernate7/grails-app/init/micronaut/hibernate7/Application.groovy} (57%)
rename grails-test-examples/{quartz/grails-app/conf/logback.xml => micronaut-hibernate7/grails-app/views/index.gsp} (67%)
create mode 100644 grails-test-examples/micronaut-hibernate7/src/integration-test/groovy/micronaut/hibernate7/ApplicationStartupSpec.groovy
copy {grails-profiles/base/skeleton => grails-test-examples/micronaut}/.gitignore (100%)
copy grails-test-examples/{undertow => micronaut}/build.gradle (53%)
copy {grails-data-docs/data-mapping-website/src/main/resources => grails-test-examples/micronaut/grails-app/assets}/images/advancedgrails.svg (100%)
copy grails-test-examples/{geb-gebconfig => micronaut}/grails-app/assets/images/apple-touch-icon-retina.png (100%)
copy grails-test-examples/{geb-gebconfig => micronaut}/grails-app/assets/images/apple-touch-icon.png (100%)
copy {grails-data-docs/data-mapping-website/src/main/resources/images/confs => grails-test-examples/micronaut/grails-app/assets/images}/documentation.svg (100%)
copy {build-logic/docs-core/src/main/template/img => grails-test-examples/micronaut/grails-app/assets/images}/favicon.ico (100%)
copy {build-logic/docs-core/src/main/template/img => grails-test-examples/micronaut/grails-app/assets/images}/grails-cupsonly-logo-white.svg (100%)
copy {build-logic/docs-core/src/main/template/img => grails-test-examples/micronaut/grails-app/assets/images}/grails.svg (100%)
copy grails-test-examples/{app1 => micronaut}/grails-app/assets/images/skin/database_add.png (100%)
copy grails-test-examples/{app1 => micronaut}/grails-app/assets/images/skin/database_delete.png (100%)
copy grails-test-examples/{app1 => micronaut}/grails-app/assets/images/skin/database_edit.png (100%)
copy grails-test-examples/{app1 => micronaut}/grails-app/assets/images/skin/database_save.png (100%)
copy grails-test-examples/{app1 => micronaut}/grails-app/assets/images/skin/database_table.png (100%)
copy grails-test-examples/{app1 => micronaut}/grails-app/assets/images/skin/exclamation.png (100%)
copy grails-test-examples/{app1 => micronaut}/grails-app/assets/images/skin/house.png (100%)
copy grails-test-examples/{app1 => micronaut}/grails-app/assets/images/skin/information.png (100%)
copy grails-test-examples/{app1 => micronaut}/grails-app/assets/images/skin/shadow.jpg (100%)
copy grails-test-examples/{app1 => micronaut}/grails-app/assets/images/skin/sorted_asc.gif (100%)
copy grails-test-examples/{app1 => micronaut}/grails-app/assets/images/skin/sorted_desc.gif (100%)
copy grails-test-examples/{geb-gebconfig => micronaut}/grails-app/assets/images/slack.svg (100%)
copy grails-test-examples/{app1 => micronaut}/grails-app/assets/images/spinner.gif (100%)
copy grails-test-examples/{geb-gebconfig => micronaut}/grails-app/assets/javascripts/application.js (100%)
copy grails-test-examples/{demo33 => micronaut}/grails-app/assets/stylesheets/application.css (100%)
copy grails-test-examples/{demo33 => micronaut}/grails-app/assets/stylesheets/errors.css (100%)
copy grails-test-examples/{hibernate5/issue450 => micronaut}/grails-app/assets/stylesheets/grails.css (100%)
copy grails-test-examples/{hibernate5/issue450 => micronaut}/grails-app/assets/stylesheets/main.css (100%)
copy grails-test-examples/{demo33 => micronaut}/grails-app/assets/stylesheets/mobile.css (100%)
copy grails-test-examples/{app4 => micronaut}/grails-app/conf/application.yml (68%)
copy grails-test-examples/{app1 => micronaut}/grails-app/conf/logback.xml (100%)
copy grails-test-examples/{app2 => micronaut}/grails-app/conf/spring/resources.groovy (100%)
create mode 100644 grails-test-examples/micronaut/grails-app/controllers/micronaut/ExternalApiController.groovy
rename end-to-end/legacy-commands-plugin/src/main/groovy/legacy/commands/plugin/HelloLegacyAppCommand.groovy => grails-test-examples/micronaut/grails-app/controllers/micronaut/MicronautTestController.groovy (59%)
create mode 100644 grails-test-examples/micronaut/grails-app/controllers/micronaut/UrlMappings.groovy
copy grails-test-examples/{async-events-pubsub-demo => micronaut}/grails-app/i18n/messages.properties (100%)
copy grails-test-examples/{gsp-layout => micronaut}/grails-app/i18n/messages_cs.properties (100%)
copy grails-test-examples/{app1 => micronaut}/grails-app/i18n/messages_da.properties (100%)
copy grails-test-examples/{async-events-pubsub-demo => micronaut}/grails-app/i18n/messages_de.properties (100%)
copy grails-test-examples/{app1 => micronaut}/grails-app/i18n/messages_es.properties (100%)
copy grails-test-examples/{async-events-pubsub-demo => micronaut}/grails-app/i18n/messages_fr.properties (100%)
copy grails-test-examples/{app1 => micronaut}/grails-app/i18n/messages_it.properties (100%)
copy grails-test-examples/{async-events-pubsub-demo => micronaut}/grails-app/i18n/messages_ja.properties (100%)
copy grails-test-examples/{app1 => micronaut}/grails-app/i18n/messages_nb.properties (100%)
copy grails-test-examples/{app1 => micronaut}/grails-app/i18n/messages_nl.properties (100%)
copy grails-test-examples/{app1 => micronaut}/grails-app/i18n/messages_pl.properties (100%)
copy grails-test-examples/{async-events-pubsub-demo => micronaut}/grails-app/i18n/messages_pt_BR.properties (100%)
copy grails-test-examples/{app1 => micronaut}/grails-app/i18n/messages_pt_PT.properties (100%)
copy grails-test-examples/{app1 => micronaut}/grails-app/i18n/messages_ru.properties (100%)
copy grails-test-examples/{gsp-layout => micronaut}/grails-app/i18n/messages_sk.properties (100%)
copy grails-test-examples/{app1 => micronaut}/grails-app/i18n/messages_sv.properties (100%)
copy grails-test-examples/{app1 => micronaut}/grails-app/i18n/messages_th.properties (100%)
copy grails-test-examples/{app1 => micronaut}/grails-app/i18n/messages_zh_CN.properties (100%)
copy grails-test-examples/{gsp-compile-static/grails-app/init/gspstatic => micronaut/grails-app/init/micronaut}/Application.groovy (92%)
rename grails-test-examples/{neo4j/test-data-service/grails-app/init/example => micronaut/grails-app/init/micronaut}/BootStrap.groovy (97%)
rename grails-test-examples/{neo4j/test-data-service/src/main/groovy/example/TestBean.groovy => micronaut/grails-app/services/micronaut/BeanInjectionService.groovy} (69%)
create mode 100644 grails-test-examples/micronaut/grails-app/services/micronaut/ExternalApiService.groovy
copy grails-test-examples/{gsp-compile-static/grails-app/controllers/gspstatic/Book.groovy => micronaut/grails-app/services/micronaut/TestService.groovy} (93%)
rename grails-test-examples/{neo4j/base => micronaut}/grails-app/views/error.gsp (100%)
copy grails-test-examples/{spring-security/ldap/custom-user-details-context-mapper => micronaut}/grails-app/views/index.gsp (100%)
copy grails-test-examples/{cache => micronaut}/grails-app/views/layouts/main.gsp (100%)
copy grails-test-examples/{cache => micronaut}/grails-app/views/notFound.gsp (100%)
rename grails-test-examples/{hibernate5/grails-hibernate/src/integration-test/groovy/functional/tests/OrganizationValidationSpec.groovy => micronaut/src/integration-test/groovy/micronaut/BeanInjectionServiceSpec.groovy} (50%)
create mode 100644 grails-test-examples/micronaut/src/integration-test/groovy/micronaut/MicronautBeanDuplicationSpec.groovy
create mode 100644 grails-test-examples/micronaut/src/integration-test/groovy/micronaut/MicronautBeanTypesSpec.groovy
create mode 100644 grails-test-examples/micronaut/src/integration-test/groovy/micronaut/MicronautContextSpec.groovy
create mode 100644 grails-test-examples/micronaut/src/integration-test/groovy/micronaut/MicronautDeclarativeClientSpec.groovy
create mode 100644 grails-test-examples/micronaut/src/integration-test/groovy/micronaut/MicronautErsatzAdvancedSpec.groovy
create mode 100644 grails-test-examples/micronaut/src/integration-test/groovy/micronaut/MicronautErsatzPatternSpec.groovy
create mode 100644 grails-test-examples/micronaut/src/integration-test/groovy/micronaut/MicronautErsatzRoundtripSpec.groovy
create mode 100644 grails-test-examples/micronaut/src/integration-test/groovy/micronaut/MicronautPluginBeanSpec.groovy
create mode 100644 grails-test-examples/micronaut/src/integration-test/groovy/micronaut/MicronautQualifierSpec.groovy
copy grails-test-examples/{gsp-compile-static/grails-app/controllers/gspstatic/Book.groovy => micronaut/src/main/groovy/bean/injection/AppConfig.groovy} (85%)
rename grails-test-examples/{app1/grails-app/domain/functionaltests/ManagedEntityDomain.groovy => micronaut/src/main/groovy/bean/injection/FactoryCreatedService.groovy} (87%)
copy grails-data-neo4j/core/src/main/groovy/org/grails/datastore/gorm/neo4j/SessionFlushedEvent.java => grails-test-examples/micronaut/src/main/groovy/bean/injection/NamedService.java (62%)
rename grails-test-examples/{beans-dsl/src/main/groovy/beandsl/example/Greeter.groovy => micronaut/src/main/groovy/bean/injection/PrimaryNamedService.groovy} (79%)
rename grails-test-examples/{beans-dsl-plugin/src/main/groovy/beandsl/example/plugin/Farewell.groovy => micronaut/src/main/groovy/bean/injection/Qualified.groovy} (79%)
copy grails-test-examples/{gsp-compile-static/grails-app/controllers/gspstatic/Book.groovy => micronaut/src/main/groovy/bean/injection/QualifiedNamedService.groovy} (83%)
copy grails-test-examples/{gsp-compile-static/grails-app/controllers/gspstatic/Book.groovy => micronaut/src/main/groovy/bean/injection/RegularNamedService.groovy} (81%)
copy grails-test-examples/{gsp-compile-static/grails-app/init/gspstatic/Application.groovy => micronaut/src/main/groovy/bean/injection/ServiceFactory.groovy} (73%)
rename grails-test-examples/{gsp-compile-static/grails-app/controllers/gspstatic/Book.groovy => micronaut/src/main/groovy/bean/injection/SpecialNamedService.groovy} (81%)
create mode 100644 grails-test-examples/micronaut/src/main/groovy/micronaut/client/MicronautAdvancedClient.groovy
rename end-to-end/legacy-commands-plugin/src/main/groovy/legacy/commands/plugin/LegacyCommandsPluginGrailsPlugin.groovy => grails-test-examples/micronaut/src/main/groovy/micronaut/client/MicronautFilteredClient.groovy (67%)
rename grails-common/src/test/groovy/org/apache/grails/common/reflect/beans/PublicFieldBean.java => grails-test-examples/micronaut/src/main/groovy/micronaut/client/MicronautHeaderClient.groovy (65%)
rename grails-core/src/test/groovy/org/grails/plugins/scan/ScannedComponent.groovy => grails-test-examples/micronaut/src/main/groovy/micronaut/client/MicronautPathClient.groovy (62%)
rename grails-converters/src/test/groovy/org/grails/web/converters/beans/SerializableJavaBean.java => grails-test-examples/micronaut/src/main/groovy/micronaut/client/MicronautReactiveClient.groovy (50%)
rename grails-converters/src/test/groovy/org/grails/web/converters/beans/SerializableGroovyBean.groovy => grails-test-examples/micronaut/src/main/groovy/micronaut/client/MicronautTestClient.groovy (51%)
copy grails-data-neo4j/core/src/main/groovy/org/grails/datastore/gorm/neo4j/SessionFlushedEvent.java => grails-test-examples/micronaut/src/main/java/bean/injection/JavaMessageProvider.java (62%)
copy grails-data-neo4j/core/src/main/groovy/org/grails/datastore/gorm/neo4j/SessionFlushedEvent.java => grails-test-examples/micronaut/src/main/java/bean/injection/JavaSingletonService.java (63%)
copy end-to-end/legacy-commands/grails-app/controllers/legacycommands/UrlMappings.groovy => grails-test-examples/micronaut/src/main/java/micronaut/client/MicronautRetryableClient.java (70%)
rename end-to-end/legacy-commands/grails-app/controllers/legacycommands/UrlMappings.groovy => grails-test-examples/micronaut/src/main/java/micronaut/filter/AuthTokenClientFilter.java (67%)
delete mode 100644 grails-test-examples/neo4j/base/build.gradle
delete mode 100644 grails-test-examples/neo4j/base/src/integration-test/groovy/functional/tests/pages/BookPages.groovy
delete mode 100644 grails-test-examples/neo4j/hibernate5/build.gradle
delete mode 100644 grails-test-examples/neo4j/hibernate5/grails-app/views/error.gsp
delete mode 100644 grails-test-examples/neo4j/hibernate5/src/integration-test/groovy/functional/tests/pages/AuthorPages.groovy
delete mode 100644 grails-test-examples/neo4j/hibernate5/src/integration-test/groovy/functional/tests/pages/BookPages.groovy
delete mode 100644 grails-test-examples/neo4j/spring-boot/build.gradle
delete mode 100644 grails-test-examples/neo4j/test-data-service/build.gradle
create mode 100644 grails-test-examples/plugins/issue-11767/build.gradle
rename {grails-quartz => grails-test-examples/plugins/issue-11767}/grails-app/conf/plugin.yml (89%)
rename grails-test-examples/{gsp-compile-static/grails-app/init/gspstatic => plugins/issue-11767/grails-app/init/issue11767/plugin}/Application.groovy (84%)
rename grails-i18n/src/test/groovy/org/grails/plugins/i18n/fixtures/BetaPluginGrailsPlugin.groovy => grails-test-examples/plugins/issue-11767/src/main/groovy/issue11767/plugin/MyPluginGrailsPlugin.groovy (74%)
rename end-to-end/legacy-commands/grails-app/init/legacycommands/Application.groovy => grails-test-examples/plugins/issue-11767/src/main/groovy/issue11767/plugin/PluginGroovyMicronautBean.groovy (77%)
rename grails-test-examples/{neo4j/hibernate5/grails-app/init/functional/tests/Application.groovy => plugins/issue-11767/src/main/groovy/issue11767/plugin/PluginGroovySpringBean.groovy} (77%)
copy grails-data-neo4j/core/src/main/groovy/org/grails/datastore/gorm/neo4j/SessionFlushedEvent.java => grails-test-examples/plugins/issue-11767/src/main/java/issue11767/plugin/PluginJavaMicronautBean.java (63%)
rename grails-test-examples/plugins/loadfirst/grails-app/i18n/{loadfirst.properties => messages.properties} (100%)
rename grails-test-examples/plugins/loadfirst/grails-app/i18n/{loadfirst_en_US.properties => messages_en_US.properties} (100%)
rename grails-test-examples/{neo4j/neo4j-standalone => plugins/micronaut-singleton}/build.gradle (60%)
rename grails-i18n/src/test/groovy/org/grails/plugins/i18n/fixtures/AlphaPluginGrailsPlugin.groovy => grails-test-examples/plugins/micronaut-singleton/src/main/groovy/micronaut/singleton/MicronautSingletonGrailsPlugin.groovy (75%)
copy grails-data-neo4j/core/src/main/groovy/org/grails/datastore/gorm/neo4j/SessionFlushedEvent.java => grails-test-examples/plugins/micronaut-singleton/src/main/java/com/example/grails/plugins/micronaut/PluginMessageProvider.java (62%)
rename grails-data-neo4j/core/src/main/groovy/org/grails/datastore/gorm/neo4j/SessionFlushedEvent.java => grails-test-examples/plugins/micronaut-singleton/src/main/java/com/example/grails/plugins/micronaut/PluginSingletonService.java (63%)
delete mode 100644 grails-test-examples/quartz/build.gradle
delete mode 100644 grails-test-examples/quartz/grails-app/conf/application.yml
delete mode 100644 grails-test-examples/quartz/grails-app/init/quartzapp/Application.groovy
delete mode 100644 grails-test-examples/quartz/grails-app/init/quartzapp/BootStrap.groovy
delete mode 100644 grails-test-examples/quartz/grails-app/jobs/quartzapp/DisabledJob.groovy
delete mode 100644 grails-test-examples/quartz/grails-app/jobs/quartzapp/InterruptibleJob.groovy
delete mode 100644 grails-test-examples/quartz/grails-app/jobs/quartzapp/LongRunningJob.groovy
delete mode 100644 grails-test-examples/quartz/grails-app/jobs/quartzapp/NeverFiringJob.groovy
delete mode 100644 grails-test-examples/quartz/grails-app/jobs/quartzapp/OnDemandJob.groovy
delete mode 100644 grails-test-examples/quartz/grails-app/jobs/quartzapp/RepeatingJob.groovy
delete mode 100644 grails-test-examples/quartz/src/integration-test/groovy/quartzapp/QuartzLongRunningJobSpec.groovy
delete mode 100644 grails-test-examples/quartz/src/integration-test/groovy/quartzapp/QuartzSchedulingSpec.groovy
delete mode 100644 grails-test-examples/quartz/src/main/groovy/quartzapp/RecordingJobListener.groovy
delete mode 100644 grails-test-examples/scaffolding/grails-app/controllers/com/example/BookController.groovy
delete mode 100644 grails-test-examples/scaffolding/grails-app/domain/com/example/Book.groovy
delete mode 100644 grails-test-examples/scaffolding/grails-app/services/com/example/BookService.groovy
delete mode 100644 grails-test-examples/scaffolding/src/integrationTest/groovy/com/example/BookControllerSpec.groovy
delete mode 100644 grails-test-examples/scaffolding/src/integrationTest/groovy/com/example/pages/BookListPage.groovy
rename {end-to-end => grails-test-examples}/spring-dependency-management/build.gradle (52%)
rename {end-to-end => grails-test-examples}/spring-dependency-management/grails-app/conf/application.yml (100%)
rename {end-to-end => grails-test-examples}/spring-dependency-management/grails-app/controllers/UrlMappings.groovy (100%)
rename {end-to-end => grails-test-examples}/spring-dependency-management/grails-app/controllers/springdm/HelloController.groovy (100%)
rename {end-to-end => grails-test-examples}/spring-dependency-management/grails-app/init/springdm/Application.groovy (100%)
rename {end-to-end => grails-test-examples}/spring-dependency-management/grails-app/views/error.gsp (100%)
rename {end-to-end => grails-test-examples}/spring-dependency-management/grails-app/views/index.gsp (100%)
rename {end-to-end => grails-test-examples}/spring-dependency-management/grails-app/views/notFound.gsp (100%)
rename {end-to-end => grails-test-examples}/spring-dependency-management/src/integration-test/groovy/springdm/HelloControllerSpec.groovy (100%)
delete mode 100644 grails-test-examples/spring-security/cas/test1/grails-app/conf/spring/resources.groovy
delete mode 100644 grails-test-examples/spring-security/cas/test1/grails-app/controllers/grails/plugin/springsecurity/cas/test/SecureController.groovy
rename grails-test-examples/{app4/grails-app/controllers/app4/UploadController.groovy => spring-security/cas/test1/grails-app/controllers/spring/security/cas/SecureController.groovy} (75%)
rename grails-test-examples/spring-security/cas/test1/grails-app/controllers/{grails/plugin/springsecurity/cas/test => spring/security/cas}/UrlMappings.groovy (96%)
copy grails-test-examples/spring-security/{ldap/custom-user-details-context-mapper => cas/test1}/grails-app/domain/com/test/Role.groovy (100%)
rename grails-test-examples/spring-security/cas/test1/grails-app/domain/{grails/plugin/springsecurity/cas => com}/test/User.groovy (97%)
rename grails-test-examples/spring-security/cas/test1/grails-app/domain/{grails/plugin/springsecurity/cas => com}/test/UserRole.groovy (98%)
delete mode 100644 grails-test-examples/spring-security/cas/test1/grails-app/domain/grails/plugin/springsecurity/cas/test/Role.groovy
rename grails-test-examples/spring-security/cas/test1/grails-app/init/{grails/plugin/springsecurity => spring/security}/cas/test/Application.groovy (95%)
rename grails-test-examples/spring-security/cas/test1/grails-app/init/{grails/plugin/springsecurity => spring/security}/cas/test/BootStrap.groovy (93%)
delete mode 100644 grails-test-examples/spring-security/cas/test1/src/integration-test/groovy/grails/plugin/springsecurity/cas/test/AbstractCasSpec.groovy
delete mode 100644 grails-test-examples/spring-security/cas/test1/src/integration-test/groovy/grails/plugin/springsecurity/cas/test/CasLoginSpec.groovy
delete mode 100644 grails-test-examples/spring-security/cas/test1/src/integration-test/groovy/grails/plugin/springsecurity/cas/test/CasNoProxyReceptorSpec.groovy
delete mode 100644 grails-test-examples/spring-security/cas/test1/src/integration-test/groovy/grails/plugin/springsecurity/cas/test/CasNoSingleSignOutSpec.groovy
delete mode 100644 grails-test-examples/spring-security/cas/test1/src/integration-test/groovy/grails/plugin/springsecurity/cas/test/CasProxyTicketSpec.groovy
delete mode 100644 grails-test-examples/spring-security/cas/test1/src/integration-test/groovy/grails/plugin/springsecurity/cas/test/CasSingleSignOutSpec.groovy
delete mode 100644 grails-test-examples/spring-security/cas/test1/src/main/groovy/grails/plugin/springsecurity/cas/test/CasContainerHolder.groovy
delete mode 100644 grails-test-examples/spring-security/cas/test1/src/main/groovy/grails/plugin/springsecurity/cas/test/CasServiceUrlConfigurer.groovy
delete mode 100644 grails-test-examples/spring-security/cas/test1/src/main/groovy/grails/plugin/springsecurity/cas/test/CasTestConfig.groovy
delete mode 100644 grails-test-examples/spring-security/cas/test1/src/main/groovy/grails/plugin/springsecurity/cas/test/CasTestEnvironmentPostProcessor.groovy
delete mode 100644 grails-test-examples/spring-security/cas/test1/src/main/resources/META-INF/spring.factories
delete mode 100644 grails-test-examples/spring-security/cas/test1/src/main/resources/cas/services/grailsTest-10000001.json
delete mode 100644 grails-test-examples/spring-security/core/integration-test-app/src/integration-test/groovy/grails/plugin/springsecurity/PluginMessageBundleSpec.groovy
delete mode 100644 grails-test-examples/undertow/grails-app/controllers/undertowapp/UploadController.groovy
delete mode 100644 grails-test-examples/undertow/src/integration-test/groovy/undertowapp/UndertowOversizedUploadSpec.groovy
delete mode 100644 grails-test-suite-uber/src/test/groovy/org/grails/web/servlet/DefaultGrailsApplicationAttributesSpec.groovy
delete mode 100644 grails-test-suite-web/src/test/groovy/org/grails/web/binding/DefaultDatabindingWhitelistBehaviorSpec.groovy
delete mode 100644 grails-test-suite-web/src/test/groovy/org/grails/web/servlet/mvc/GrailsWebRequestSpec.groovy
delete mode 100644 grails-testing-support-mongodb/src/main/groovy/org/apache/grails/testing/mongo/EmbeddedReplicaSetSpec.groovy
create mode 100644 grails-url-mappings/src/main/groovy/org/grails/plugins/web/mapping/UrlMappingsAutoConfiguration.java
rename grails-views-gson/src/{testFixtures => main}/groovy/grails/plugin/json/view/test/JsonRenderResult.groovy (100%)
rename grails-views-gson/src/{testFixtures => main}/groovy/grails/plugin/json/view/test/JsonViewTest.groovy (100%)
rename grails-views-gson/src/{testFixtures => main}/groovy/grails/plugin/json/view/test/TestLinkGenerator.groovy (100%)
rename grails-views-gson/src/{testFixtures => main}/groovy/grails/plugin/json/view/test/TestRequestConfigurer.groovy (100%)
delete mode 100644 grails-views-gson/src/main/resources/META-INF/additional-spring-configuration-metadata.json
create mode 100644 grails-views-gson/src/main/resources/META-INF/spring-configuration-metadata.json
delete mode 100644 grails-views-gson/src/test/groovy/grails/plugin/json/view/api/handleassociations/Fixtures.groovy
delete mode 100644 grails-views-gson/src/test/groovy/grails/plugin/json/view/expand/Fixtures.groovy
delete mode 100644 grails-views-gson/src/test/groovy/grails/plugin/json/view/halembedded/Fixtures.groovy
delete mode 100644 grails-views-gson/src/test/groovy/grails/plugin/json/view/include/Fixtures.groovy
delete mode 100644 grails-views-gson/src/test/groovy/grails/plugin/json/view/iterable/Fixtures.groovy
delete mode 100644 grails-views-gson/src/test/groovy/grails/plugin/json/view/maprender/Fixtures.groovy
delete mode 100644 grails-views-gson/src/test/groovy/grails/plugin/json/view/nullrendering/Fixtures.groovy
delete mode 100644 grails-views-markup/src/main/resources/META-INF/additional-spring-configuration-metadata.json
rename grails-web-common/src/{testFixtures => main}/groovy/grails/util/GrailsWebMockUtil.groovy (100%)
delete mode 100644 grails-web-common/src/main/groovy/org/grails/web/util/HiddenHttpMethod.java
delete mode 100644 grails-web-common/src/test/groovy/org/grails/web/util/HiddenHttpMethodSpec.groovy
rename grails-web-core/src/main/resources/META-INF/{additional-spring-configuration-metadata.json => spring-configuration-metadata.json} (66%)
delete mode 100644 grails-web-databinding/src/main/groovy/grails/web/databinding/BindAllowed.java
delete mode 100644 grails-web-databinding/src/main/groovy/grails/web/databinding/MissingPropertyClearer.java
delete mode 100644 grails-web-databinding/src/main/groovy/org/apache/grails/web/databinding/aot/DataBindingRuntimeHints.java
delete mode 100644 grails-web-databinding/src/main/resources/META-INF/spring/aot.factories
delete mode 100644 grails-web-databinding/src/test/groovy/grails/web/databinding/DataBindingUtilsSpec.groovy
delete mode 100644 grails-web-databinding/src/test/groovy/grails/web/databinding/DenyByDefaultConfigSpec.groovy
delete mode 100644 grails-web-databinding/src/test/groovy/org/grails/web/databinding/bindingsource/XmlDataBindingSourceCreatorSpec.groovy
delete mode 100644 grails-web-mvc/src/test/groovy/org/grails/web/servlet/mvc/GrailsDispatcherServletHiddenMethodSpec.groovy
delete mode 100644 grails-web-mvc/src/test/groovy/org/grails/web/servlet/mvc/GrailsDispatcherServletSpec.groovy
delete mode 100644 grails-web-mvc/src/test/groovy/org/grails/web/servlet/mvc/GrailsWebRequestFilterSpec.groovy
delete mode 100644 grails-web-mvc/src/test/resources/logback-test.xml
delete mode 100644 grails-web-url-mappings/src/main/groovy/org/apache/grails/web/mapping/aot/UrlMappingRuntimeHints.java
delete mode 100644 grails-web-url-mappings/src/main/groovy/org/grails/web/mapping/RuntimeConstraintEvaluator.java
rename grails-web-url-mappings/src/{cli => main}/groovy/org/grails/web/mapping/reporting/AnsiConsoleUrlMappingsRenderer.groovy (86%)
delete mode 100644 grails-web-url-mappings/src/main/resources/META-INF/additional-spring-configuration-metadata.json
delete mode 100644 grails-web-url-mappings/src/main/resources/META-INF/spring/aot.factories
delete mode 100644 grails-web-url-mappings/src/test/groovy/grails/web/mapping/WildcardResourcesMappingSpec.groovy
delete mode 100644 grails-web-url-mappings/src/test/groovy/org/grails/web/mapping/EffectiveMethodLinkGenerationSpec.groovy
delete mode 100644 grails-web-url-mappings/src/test/groovy/org/grails/web/mapping/RuntimeConstraintEvaluatorSpec.groovy
delete mode 100644 grails-web-url-mappings/src/test/groovy/org/grails/web/mapping/UrlMappingSegmentFilterSpec.groovy
delete mode 100644 grails-web-url-mappings/src/test/groovy/org/grails/web/mapping/mvc/HiddenHttpMethodHandlerMappingSpec.groovy
delete mode 100644 grails-web-url-mappings/src/test/groovy/org/grails/web/mapping/mvc/UrlMappingNameResolutionSpec.groovy
delete mode 100644 grails-web-url-mappings/src/test/groovy/org/grails/web/mapping/mvc/UrlMappingsInfoHandlerAdapterAsyncSpec.groovy
rename grails-web-url-mappings/src/{test-cli => test}/groovy/org/grails/web/mapping/reporting/AnsiConsoleUrlMappingsRendererSpec.groovy (95%)
(grails-core) 01/02: fix(neo4j): assert background thread completion in OptimisticLockingSpec
Posted by jd...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
jdaugherty pushed a commit to branch fix/optimistic-locking-spec-join-assert
in repository https://gitbox.apache.org/repos/asf/grails-core.git
commit cd0502f3bc84a3d62a50b0035b7be33867c36fe7
Author: Walter Duque de Estrada <wb...@mac.com>
AuthorDate: Thu Jul 30 16:58:47 2026 -0500
fix(neo4j): assert background thread completion in OptimisticLockingSpec
Follow-up to #16070. Copilot's review flagged that the second test's
Thread.start { ... }.join(2000) can return on timeout without the
background thread having actually finished, so the "same headroom
rationale" comment added in #16070 was inaccurate there: the sleep
could still be masking a race with thread completion, unlike the
first test where the unbounded join() guarantees it. Capture the
thread and assert !isAlive() after the bounded join so a slow runner
fails loudly instead of silently racing the assertions that follow.
Co-Authored-By: Claude Sonnet 5 <no...@anthropic.com>
---
.../grails/gorm/tests/OptimisticLockingSpec.groovy | 21 +++++++++++----------
1 file changed, 11 insertions(+), 10 deletions(-)
diff --git a/grails-data-neo4j/grails-datastore-gorm-neo4j/src/test/groovy/grails/gorm/tests/OptimisticLockingSpec.groovy b/grails-data-neo4j/grails-datastore-gorm-neo4j/src/test/groovy/grails/gorm/tests/OptimisticLockingSpec.groovy
index 318bc0eb6f..e0160d0efa 100644
--- a/grails-data-neo4j/grails-datastore-gorm-neo4j/src/test/groovy/grails/gorm/tests/OptimisticLockingSpec.groovy
+++ b/grails-data-neo4j/grails-datastore-gorm-neo4j/src/test/groovy/grails/gorm/tests/OptimisticLockingSpec.groovy
@@ -130,17 +130,18 @@ class OptimisticLockingSpec extends GormDatastoreSpec {
when:
o = OptLockNotVersioned.get(o.id)
- try {
- Thread.start {
- OptLockNotVersioned.withNewSession { s ->
- def reloaded = OptLockNotVersioned.get(o.id)
- reloaded.name += ' in new session'
- reloaded.save(flush: true)
- }
- }.join(2000)
- } catch (InterruptedException e) {
- // ignore
+ def backgroundUpdate = Thread.start {
+ OptLockNotVersioned.withNewSession { s ->
+ def reloaded = OptLockNotVersioned.get(o.id)
+ reloaded.name += ' in new session'
+ reloaded.save(flush: true)
+ }
}
+ // Unlike the unbounded join() above, join(timeout) can return before the thread
+ // finishes; assert completion explicitly so a slow runner fails loudly instead of
+ // silently racing the assertions below.
+ backgroundUpdate.join(5000)
+ assert !backgroundUpdate.isAlive()
// Same headroom rationale as "Test optimistic locking" above.
sleep 5000
(grails-core) 02/02: fix(neo4j): fix cross-session commit races and de-flake OptimisticLockingSpec
Posted by jd...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
jdaugherty pushed a commit to branch fix/optimistic-locking-spec-join-assert
in repository https://gitbox.apache.org/repos/asf/grails-core.git
commit 169193b0147747723d017b592a4584e83b3bf6f1
Author: Walter Duque de Estrada <wb...@mac.com>
AuthorDate: Tue Aug 18 10:12:52 2026 -0500
fix(neo4j): fix cross-session commit races and de-flake OptimisticLockingSpec
Both background-thread updates were never actually committed/visible:
the 'version false' test read/wrote inside a bare withNewSession (no
withTransaction, so the save never committed) against an uncommitted
given: transaction (so the background session couldn't even see the
entity), making its final assertions pass regardless of whether the
concurrent write ever happened. The join(5000)/isAlive() completion
check was also a false positive - a thread whose closure throws is
equally not-alive.
Commit the given: transaction before spawning the thread, wrap the
background save in withTransaction, capture the background closure's
outcome via an AtomicReference<Throwable> instead of trusting
isAlive(), and use unbounded join() instead of a hard timeout. Add an
intermediate read via a throwaway session so the background write is
load-bearing for the test to pass. Replace both tests' fixed
sleep(5000) heisenbug workaround with PollingConditions polling on
real committed state, so a healthy run finishes in ~0.1-0.3s instead
of always paying 5s, and a genuine failure gets a real diagnostic
instead of racing past a guessed wait.
Co-Authored-By: Claude Sonnet 5 <no...@anthropic.com>
---
.../grails/gorm/tests/OptimisticLockingSpec.groovy | 60 ++++++++++++++++------
1 file changed, 45 insertions(+), 15 deletions(-)
diff --git a/grails-data-neo4j/grails-datastore-gorm-neo4j/src/test/groovy/grails/gorm/tests/OptimisticLockingSpec.groovy b/grails-data-neo4j/grails-datastore-gorm-neo4j/src/test/groovy/grails/gorm/tests/OptimisticLockingSpec.groovy
index e0160d0efa..af066d406f 100644
--- a/grails-data-neo4j/grails-datastore-gorm-neo4j/src/test/groovy/grails/gorm/tests/OptimisticLockingSpec.groovy
+++ b/grails-data-neo4j/grails-datastore-gorm-neo4j/src/test/groovy/grails/gorm/tests/OptimisticLockingSpec.groovy
@@ -19,6 +19,8 @@
package grails.gorm.tests
+import java.util.concurrent.atomic.AtomicReference
+
import grails.gorm.annotation.Entity
import org.grails.datastore.gorm.neo4j.Neo4jTransaction
import org.grails.datastore.mapping.core.OptimisticLockingException
@@ -27,6 +29,7 @@ import org.grails.datastore.mapping.transactions.SessionHolder
import org.neo4j.graphdb.GraphDatabaseService
import org.neo4j.graphdb.Transaction
import org.springframework.transaction.support.TransactionSynchronizationManager
+import spock.util.concurrent.PollingConditions
/**
* @author Burt Beckwith
@@ -96,11 +99,18 @@ class OptimisticLockingSpec extends GormDatastoreSpec {
}
}
}.join()
- // The background thread's save is already synchronized via join() above; this sleep is
- // headroom for the embedded Neo4j harness's own write durability, not thread completion.
- // A noisy/loaded CI runner can push that past a couple of seconds - give it more room
- // rather than risk a spurious failure (heisenbug).
- sleep 5000
+ // The background thread's save is already synchronized via join() above; poll (rather
+ // than sleep a fixed duration) until an independent session observes it, since the
+ // embedded Neo4j harness's own write-durability/visibility lag can outlast any fixed
+ // guess (heisenbug) - a noisy/loaded CI runner has been seen pushing past 2s, and this
+ // adapts instead of gambling on a bigger number.
+ new PollingConditions(timeout: 10, initialDelay: 0.1, delay: 0.2).eventually {
+ def observedName
+ OptLockVersioned.withNewSession { s ->
+ observedName = OptLockVersioned.get(o.id).name
+ }
+ assert observedName == 'locked in new session'
+ }
o.name += ' in main session'
def ex
@@ -125,25 +135,41 @@ class OptimisticLockingSpec extends GormDatastoreSpec {
given:
def o = new OptLockNotVersioned(name: 'locked').save(flush: true)
+ session.transaction.commit()
+ session.transaction.nativeTransaction.close()
session.clear()
when:
o = OptLockNotVersioned.get(o.id)
+ def failure = new AtomicReference<Throwable>()
def backgroundUpdate = Thread.start {
+ try {
+ OptLockNotVersioned.withNewSession { s ->
+ OptLockNotVersioned.withTransaction {
+ def reloaded = OptLockNotVersioned.get(o.id)
+ assert reloaded
+ reloaded.name += ' in new session'
+ reloaded.save(flush: true)
+ }
+ }
+ } catch (Throwable t) {
+ failure.set(t)
+ }
+ }
+ backgroundUpdate.join()
+ // A thread that dies from an uncaught exception is also no longer alive, so join()
+ // alone can't distinguish a completed write from a crashed one; assert the captured
+ // outcome explicitly.
+ assert failure.get() == null
+ // Same cross-session visibility-lag rationale as "Test optimistic locking" above.
+ def nameAfterBackgroundUpdate
+ new PollingConditions(timeout: 10, initialDelay: 0.1, delay: 0.2).eventually {
OptLockNotVersioned.withNewSession { s ->
- def reloaded = OptLockNotVersioned.get(o.id)
- reloaded.name += ' in new session'
- reloaded.save(flush: true)
+ nameAfterBackgroundUpdate = OptLockNotVersioned.get(o.id).name
}
+ assert nameAfterBackgroundUpdate == 'locked in new session'
}
- // Unlike the unbounded join() above, join(timeout) can return before the thread
- // finishes; assert completion explicitly so a slow runner fails loudly instead of
- // silently racing the assertions below.
- backgroundUpdate.join(5000)
- assert !backgroundUpdate.isAlive()
- // Same headroom rationale as "Test optimistic locking" above.
- sleep 5000
o.name += ' in main session'
def ex
@@ -159,6 +185,10 @@ class OptimisticLockingSpec extends GormDatastoreSpec {
o = OptLockNotVersioned.get(o.id)
then:
+ // Proves the background write actually landed before the main session's blind
+ // overwrite below; without it, these assertions would pass even if the background
+ // thread never ran.
+ nameAfterBackgroundUpdate == 'locked in new session'
ex == null
o.name == 'locked in main session'
}