This is an automated email from the ASF dual-hosted git repository.
borinquenkid pushed a change to branch feat/neo4j-gorm-registry-migration
in repository https://gitbox.apache.org/repos/asf/grails-core.git
discard 66abf9014e fix(grails-neo4j-bom): align with 8.0.x derived-BOM pattern
discard d1ed0b091b test: add more coverage
discard a05a7dd8f8 Trigger GitHub mergeability recompute (no content change)
discard 12ef40975e [skip ci] Bump version to 8.0.0-SNAPSHOT
discard 262f0c03ee [skip ci] Release v8.0.0-M4
discard 8803895ebe fix(grails-data-neo4j): BOM-manage neo4j-harness version,
dedupe example-app Jetty config
discard c6a0538f98 test(tck): skip TCK criteria-pagination-without-sort
feature for Neo4j
discard 13a8a6271b test(tck): skip TCK "Test optimistic locking" for Neo4j
discard c07915f946 fix(grails-test-examples-neo4j): use ContainerGebSpec in
the restored example apps
discard 7afc166f79 fix(grails-data-neo4j): use grails-neo4j-bom platform in
docs module
discard a7638a3bb6 fix(grails-forge): update GormImplSpec's stale 'neo4j'
expectation
discard 25db72766a fix(grails-data-neo4j): add missing jakarta.servlet-api
test dep; fix CodeNarc GString nit
discard 72463be5d0 fix(grails-data-neo4j): implement embedded-component
support and fix basic-collection 'in' queries
discard 9668520c82 fix(grails-data-neo4j): remove dead GormEnhancer overrides
in Neo4jDatastore
discard f281a63767 fix(grails-data-neo4j): scope neo4j-java-driver pin to a
dedicated grails-neo4j-bom
discard 36c91be021 refactor(grails-data-neo4j): dedupe test/Jetty/driver build
config, drop redundant BOM force
discard 89885d5836 fix(grails-test-examples): drop stale
grailsSpringSecurityVersion property in neo4j test-data-service
discard 65a5186f10 fix(grails-data-neo4j): resolve all 270 CodeNarc violations
in grails-data-neo4j-core
discard e995b9bc22 refactor(grails-data-neo4j): rename example apps to
base/hibernate5
discard c091a9580d refactor(grails-data-neo4j): rename
grails-datastore-gorm-neo4j to grails-data-neo4j-core
discard 6202764304 feat(grails-forge): restore Neo4j GORM support
discard ccb0c51a62 feat(grails-data-neo4j): restore test-data-service example
app
discard fae0314806 feat(grails-data-neo4j): restore neo4j-standalone example
app
discard 3dd0850434 feat: add dedicated Neo4j functional-test CI job and
publish gating
discard 5375caf4c8 fix: rename gorm-neo4j-spring-boot to
grails-data-neo4j-spring-boot
discard 16069b2f08 fix: BOM-manage neo4j-java-driver with a strictly
constraint, not exclude
discard aef0d4f589 fix: address jdaugherty's review feedback on consolidated
Neo4j PR
discard 38c59c90dc chore(grails-data-neo4j): clean up Checkstyle/CodeNarc
violations in grails-datastore-gorm-neo4j
discard be8f5c7cd5 fix(grails-data-neo4j): declare intentional
Jetty/neo4j-driver BOM overrides
discard 61bae65804 feat(grails-data-neo4j): re-add example apps and docs into
monorepo (PR4)
discard 4a8ebf3620 feat: wire Neo4j adapter to GormRegistry's GormApiFactory
mechanism
discard ea80e63b2e fix: avoid Groovy MOP getProperty interception in
Neo4jDataStoreSpringInitializerSpec
discard 4d3fff3530 feat(grails-data-neo4j): fold standalone build into root
settings.gradle
discard 593982ddb2 fix: resolve Neo4j regressions surfaced by rebasing onto
Groovy 5
discard 51c8fda2fe fix: address Copilot review findings on PR #15816
discard b7c0489f89 feat: migrate grails-data-neo4j to Groovy 4/Jakarta/GORM 8
baseline
discard c2f5a4b112 docs: add Neo4j GormRegistry migration plan (PR1 baseline +
PR2 wiring)
discard 3cd2a97824 test(neo4j): give OptimisticLockingSpec's cross-thread
heisenbug more headroom
add d593bd2bbf Register the GSP codecs settings and servlet without live
instances
add ff515d199a Do not add a ConfigurationClassPostProcessor to an AOT
context
add 38e941fecd Keep abstract bean definitions out of AOT processing
add b3811adb75 Let the container supply the SiteMesh view resolver's
servlet context
add bc537807e3 Document ahead-of-time processing and cover it with tests
add 227d74695e Register the GORM event publisher as a bean definition
add 3206f60554 Read the Spring Security version without nested reflection
add 075c648872 Add the license header to the AOT example configuration
add df347f19fa Expand scaffolded views at build time
add 55b7dcc425 Register the request path's reflective API for
ahead-of-time images
add 3b3537d154 Register the framework's closures for ahead-of-time images
add 842ce6f07b Record an application's own classes and pages for
ahead-of-time images
add fa8e4e4fc1 Register the rendering, scaffolding and persistence runtimes
add 81ce34460a Register the classes a tag library declares inside itself
add f92e2e0cf8 Use the pages compiled at build time in an ahead-of-time
image
add d366841707 Ask one question about which scanned types may be registered
add e1e3aae3a3 Cover what an application records for an ahead-of-time image
add 29053d5f2d Follow the configured import order and indentation
add 22c100bdb2 Expand scaffolded views only where a controller is
scaffolded
add b1611e36ab Carry a bean's injection into the code generated for it
add 3e0a6fe23e Contribute tag library definitions without replacing what
is registered
add 2885d88f72 Gather a variable-argument constructor argument into the
array it feeds
add 36d20d1127 Leave a datastore's configuration to be read where the
application runs
add b70873614e Keep the bean definitions that were generated ahead of time
add d2ad00cc77 Do not add a second processor for configuration classes
add ee481ed207 Cover the two ahead-of-time processors contributing to one
bean
add c250a955da Let a plugin declare its beans from inside an image
add 07273ed9e1 Answer where the application runs, not where it was built,
for GSP
add 32e3467b64 Leave the Hibernate datastore's configuration to be read
where it runs too
add a650c42087 Inherit no search location while code is being generated
add d218534d47 Let an image call the classes that extend types Groovy did
not declare
add 33c54d8c45 Read the flag directly rather than looking it up
add 0d0dc239d1 Do not read the application's own bean declarations a
second time
add 2b0824fef5 Write down the artefacts an application is made of
add 26f464bef9 Leave the plugins' own artefacts to the plugins
add f304120624 Define the url mappings holder as reloadable only where it
can reload
add 9ba4d149a1 Carry what a page compiled at build time is read from
add feb740f097 Ship what an image needs with the framework rather than
asking for it
add 7d2bad0f02 Colour the output of an image that is being run at a shell
add 79f1dccc59 Show the banner art in the framework's colour
add af29982470 Let an application choose the colour the banner art is
shown in
add 181ac758a9 Address review: metadata only for a native build, and four
smaller things
add 7687f84639 Leave a datastore's proxy handler alone
add 813e1918da Let an image call the framework's own interfaces
add 7a063e3a98 Skip a closure whose surroundings cannot be loaded
add 5846c43855 Let an image call the Spring interfaces a plugin is handed
add ac091ad8a9 Use plain map-entry spacing in the native metadata task
add da9dcd733c Train a JDK AOT cache from a run of the application
add b2c7f4395d Document the AOT cache
add 59e644ba47 Package compiled assets where an executable jar can read
them
add 3fec0cd0a8 Correct the AOT cache figures
add aeb9004179 Address review of the AOT cache task
add b2009c4382 Assert what the registrar now says these beans produce
add ac9075ac5d Follow every type a class file names, not some of them
add 790b5c1f33 Train on the toolchain's JDK, and leave the cache beside
the application
add 03b9909ba4 Say under the banner how the application was started
add 2187890a6a Keep the banner's option enums usable in an image
add 8ba500ddc0 Read an optional version without setting the library going
add 8a28c10784 Show Spring Security by default, and leave out what cannot
be determined
add 199eb8e23e Show the container being served on, and stop at the first
one found
add 223ac95f26 Build on JDK 21.0.12
add bd86459603 Give an application building ahead of time what it needs
add f18532d7f8 Space a mark as it was written rather than shouting it
add 61d90312d6 Register an image's resources as hints rather than as build
arguments
add fe4c9cfc2e Stop caching what a forked compiler produced
add baf640289e Say how the extracted application is compared, so the task
validates
add 184821249d Say why the training run ended, not only that it did
add c465952f53 Do not hand the training run a variable the daemon kept but
emptied
add eef515dfae Ask about the return that rewinds a line, not the one that
ends it
add fa710fd59f Merge branch '8.0.x' into fix/aot-live-instance-beans-8.0.x
add 2876503929 Fold the task's two javadoc blocks into one
add 1240ce7857 Keep the setters a domain class's constraints are applied
through
add 49ec1f06a4 Record the reflection a running application does, from a
declared list of paths
add 2649ca482b Let a traced form be told what to put in it
add 33af958b12 Sort the AOT imports the cherry-pick left out of order
add 4b9352d453 Ask for nullability with the annotation Spring did not
deprecate
add 49a59448d6 Give two version lookups back the documentation left above
a third
add cbc1ffa172 Let every datastore name its event publisher rather than
hold one
add 4016bae65d Keep the image to the properties files something actually
reads
add 48d9d2b37a Tell Gradle what decides whether the views are staged
add 9bbd56625c Say which JDK a cache needs, rather than let the run fail
for it
add e517a9d7b4 Say which banner version option was not recognised
add 6fa81e7777 Write down what the banner now says without being asked
add 1d95c8eff2 Leave collectMappedClasses saying what it has always said
add 082b6b4829 Ask the post-processor about colour through the hook that
decides it
add 0a8b8f5022 Make the ahead-of-time application serve a page, not only
start
add 4788cebfc2 Say what makes standing down over the configuration
processor safe
add 35657c9b02 Leave Neo4j holding the configuration it can still reach
add 5a924d11b8 Put back the cookie handler the build was using
add cb374b1c3a Trace what was asked for, or say that it was not
add fb6518ead9 Check where a form page was answered from, as a path
already is
add abd0453525 Bind the qualified domain name when expanding scaffolded
views
add 2eb6d04f46 Read the Spring Security version off the package, not
through reflection
add e93d383ea8 Leave scaffolded views to be produced where they always were
add 79bd5b9488 Put the new ahead-of-time code under org.apache.grails
add 1714f2b055 Leave one thing deciding what the definitions are generated
for
add d81902f70b Ask in one place whether the code is being written out
add 437e627074 Say unknown where a version was asked for, and nothing
where it was not
add 67abf890b7 Reach the archive and the assets without resolving them
early
add b22be60569 Say what the artefacts are read from, and check it holds
add 6d4bb566bf Give the training run the archive by its full path
add 874c053068 Merge remote-tracking branch 'upstream/8.0.x' into
fix/aot-live-instance-beans-8.0.x
add 0021e820a5 Keep the project out of what the AOT tasks carry
add 03638e7424 Wait for the application to start, not for the word
"Started"
add cb76065a1e Close the client the trace ran with
add 709989ae37 Record the pages after they are compiled, not before
add e68da7d3db Ask for the asset task by name instead of holding the
container
add 3890b3466e Refuse a port something else is already answering on
add a3d5a48b39 Fingerprint the extraction by the JDK, not by where it lives
add 416096af49 Say what is wrong instead of publishing through a null
add 1ece28fbbb Refuse to generate Neo4j definitions that carry the
machine's configuration
add db49c9488f Quote the port message the way CodeNarc asks
add e28672d89e Move the Gradle plugin's AOT classes to org.apache.grails
add 63a462a776 Move the tag library bean registration to org.apache.grails
add 6d468648a8 Take asset pipeline 5.2.0-M3
add 5c836c436f Name the controller types this module declares as types
add 49e51adbdc Merge branch '8.0.x' into fix/aot-live-instance-beans-8.0.x
add ac919290f3 Take SiteMesh 3.3.0-RC1
add 620f651fed Fix flaky WhereQueryClosureCaptureSpec: key
AstPropertyResolveUtils cache by ClassNode identity
add 078ac9da53 Address review: cache per-ClassNode instead of a static
map, close test gaps
add c3a4d9235b Close a real synchronization gap found by adversarial
self-review
add 0d195f1493 Address review: skip caching interned nodes, compute
outside lock, fix isDomainClass javadoc claim
add 6ee0ba756a Merge pull request #16034 from
apache/fix/flaky-where-query-closure-capture-cache
add 8444cc5466 Merge remote-tracking branch 'upstream/8.0.x' into
fix/aot-live-instance-beans-8.0.x
add 983e502f1c Merge pull request #16094 from
codeconsole/fix/aot-live-instance-beans-8.0.x
add 468b0f79ed test(neo4j): give OptimisticLockingSpec's cross-thread
heisenbug more headroom
add 59d4475f24 docs: add Neo4j GormRegistry migration plan (PR1 baseline +
PR2 wiring)
add 2563f200bb feat: migrate grails-data-neo4j to Groovy 4/Jakarta/GORM 8
baseline
add 524cc18edc fix: address Copilot review findings on PR #15816
add 76bc8d0a7f fix: resolve Neo4j regressions surfaced by rebasing onto
Groovy 5
add b42929b8d2 feat(grails-data-neo4j): fold standalone build into root
settings.gradle
add 2d73848829 fix: avoid Groovy MOP getProperty interception in
Neo4jDataStoreSpringInitializerSpec
add a5a1b9d7bb feat: wire Neo4j adapter to GormRegistry's GormApiFactory
mechanism
add 8e00bd68c5 feat(grails-data-neo4j): re-add example apps and docs into
monorepo (PR4)
add 90d9579a87 fix(grails-data-neo4j): declare intentional
Jetty/neo4j-driver BOM overrides
add 3699ca6f67 chore(grails-data-neo4j): clean up Checkstyle/CodeNarc
violations in grails-datastore-gorm-neo4j
add c29f4e2073 fix: address jdaugherty's review feedback on consolidated
Neo4j PR
add 815061b207 fix: BOM-manage neo4j-java-driver with a strictly
constraint, not exclude
add 215e45e392 fix: rename gorm-neo4j-spring-boot to
grails-data-neo4j-spring-boot
add 3d25d538f9 feat: add dedicated Neo4j functional-test CI job and
publish gating
add 17b879af57 feat(grails-data-neo4j): restore neo4j-standalone example
app
add da94ae3db7 feat(grails-data-neo4j): restore test-data-service example
app
add 27b10f7ee1 feat(grails-forge): restore Neo4j GORM support
add aa908487ae refactor(grails-data-neo4j): rename
grails-datastore-gorm-neo4j to grails-data-neo4j-core
add cef152bdde refactor(grails-data-neo4j): rename example apps to
base/hibernate5
add 759f0d33b6 fix(grails-data-neo4j): resolve all 270 CodeNarc violations
in grails-data-neo4j-core
add 3a5a52bbc2 fix(grails-test-examples): drop stale
grailsSpringSecurityVersion property in neo4j test-data-service
add d173611246 refactor(grails-data-neo4j): dedupe test/Jetty/driver build
config, drop redundant BOM force
add d805c2828f fix(grails-data-neo4j): scope neo4j-java-driver pin to a
dedicated grails-neo4j-bom
add f338189fd7 fix(grails-data-neo4j): remove dead GormEnhancer overrides
in Neo4jDatastore
add 4ea01185cc fix(grails-data-neo4j): implement embedded-component
support and fix basic-collection 'in' queries
add 1aa298b5f0 fix(grails-data-neo4j): add missing jakarta.servlet-api
test dep; fix CodeNarc GString nit
add ed0a318605 fix(grails-forge): update GormImplSpec's stale 'neo4j'
expectation
add 5bfad28b34 fix(grails-data-neo4j): use grails-neo4j-bom platform in
docs module
add fa71cb1f71 fix(grails-test-examples-neo4j): use ContainerGebSpec in
the restored example apps
add fd5852ddc4 test(tck): skip TCK "Test optimistic locking" for Neo4j
add 0ad75241ce test(tck): skip TCK criteria-pagination-without-sort
feature for Neo4j
add 8ffeb76b59 fix(grails-data-neo4j): BOM-manage neo4j-harness version,
dedupe example-app Jetty config
add beb1806b67 [skip ci] Release v8.0.0-M4
add 91e3fa93ac [skip ci] Bump version to 8.0.0-SNAPSHOT
add 745ed00937 Trigger GitHub mergeability recompute (no content change)
add d7e1aa6489 test: add more coverage
add 462db7ac60 fix(grails-neo4j-bom): align with 8.0.x derived-BOM pattern
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 (66abf9014e)
\
N -- N -- N refs/heads/feat/neo4j-gorm-registry-migration
(462db7ac60)
You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.
Any revisions marked "omit" are not gone; other references still
refer to them. Any revisions marked "discard" are gone forever.
No new revisions were added by this update.
Summary of changes:
.github/workflows/release-publish-docs.yml | 2 +-
.github/workflows/release.yml | 2 +-
.sdkmanrc | 2 +-
dependencies.gradle | 8 +-
etc/bin/Dockerfile | 2 +-
.../grails/common/aot/AheadOfTimeProcessing.java | 54 +++
.../apache/grails/common/aot/RegistrableTypes.java | 251 +++++++++++
.../grails/common/aot/RegistrableTypesSpec.groovy | 194 ++++++++
.../controllers/aot/ControllerRuntimeHints.java | 92 ++++
.../main/resources/META-INF/spring/aot.factories | 2 +
.../aot/ControllerRuntimeHintsSpec.groovy | 84 ++++
.../main/groovy/grails/boot/GrailsBanner.groovy | 446 ++++++++++++++++---
.../config/GrailsApplicationPostProcessor.groovy | 55 ++-
.../boot/config/GrailsAutoConfiguration.groovy | 44 ++
.../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 ++++++++
.../org/grails/plugins/CoreGrailsPlugin.groovy | 59 ++-
.../AbstractResourceLocatorPostProcessor.java | 18 +-
.../additional-spring-configuration-metadata.json | 55 ++-
.../grails-core/native-image.properties | 30 ++
.../main/resources/META-INF/spring/aot.factories | 17 +
.../grails/boot/GrailsBannerColourSpec.groovy | 156 +++++++
.../grails/boot/GrailsBannerNativeMarkSpec.groovy | 225 ++++++++++
.../boot/GrailsBannerVersionLookupSpec.groovy | 226 ++++++++++
...icationPostProcessorAnnotationConfigSpec.groovy | 98 ++++
.../GrailsAutoConfigurationArtefactsSpec.groovy | 79 ++++
.../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/plugins/CoreGrailsPluginAotSpec.groovy | 186 ++++++++
...AbstractResourceLocatorPostProcessorSpec.groovy | 109 +++++
.../grails/boot/version-in-a-resource.properties | 5 +
.../HibernateDatastoreSpringInitializer.groovy | 10 +-
...rnateDatastoreConnectionSourcesRegistrar.groovy | 7 +-
...eDatastoreConnectionSourcesRegistrarSpec.groovy | 20 +-
.../HibernateDatastoreSpringInitializer.groovy | 10 +-
.../MongoDbDataStoreSpringInitializer.groovy | 29 +-
...toreSpringInitializerBeanDefinitionsSpec.groovy | 85 ++++
.../Neo4jDataStoreSpringInitializer.groovy | 54 ++-
.../grails/datamapping/aot/GormRuntimeHints.java | 112 +++++
.../bootstrap/AbstractDatastoreInitializer.groovy | 79 +++-
...igurableApplicationContextEventPublisher.groovy | 58 ++-
.../gorm/transform/AstPropertyResolveUtils.java | 146 +++++-
.../main/resources/META-INF/spring/aot.factories | 2 +
.../datamapping/aot/GormRuntimeHintsSpec.groovy | 81 ++++
...actDatastoreInitializerConfigurationSpec.groovy | 190 ++++++++
...ableApplicationContextEventPublisherSpec.groovy | 115 +++++
.../transform/WhereQueryClosureCaptureSpec.groovy | 12 +-
.../WhereQueryEmbeddedBlockTransformSpec.groovy | 11 +-
.../transform/AstPropertyResolveUtilsSpec.groovy | 289 ++++++++++++
.../aot/ConstrainedPropertyRuntimeHints.java | 75 ++++
.../main/resources/META-INF/spring/aot.factories | 2 +
.../aot/ConstrainedPropertyRuntimeHintsSpec.groovy | 69 +++
.../guide/conf/applicationClass/customizing.adoc | 34 +-
.../src/en/guide/deployment/deploymentAot.adoc | 172 +++++++
.../en/guide/deployment/deploymentAotCache.adoc | 191 ++++++++
grails-doc/src/en/guide/introduction/whatsNew.adoc | 62 +++
grails-doc/src/en/guide/toc.yml | 2 +
.../src/en/guide/upgrading/upgrading80x.adoc | 38 ++
.../src/main/resources/gsp/index.gsp | 8 +-
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 ++++++++++++++++
.../gradle/plugin/core/GrailsGradlePlugin.groovy | 355 +++++++++++++++
.../views/gsp/GroovyPageForkCompileTask.groovy | 22 +-
.../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 +++
.../plugin/core/AssetClasspathPackagingSpec.groovy | 47 ++
.../core/GrailsNativeImageDefaultsSpec.groovy | 101 +++++
.../views/gsp/GroovyPageToolchainSpec.groovy | 2 +-
.../asset-classpath-packaging/build.gradle | 42 ++
.../asset-classpath-packaging/gradle.properties | 2 +
.../asset-classpath-packaging/settings.gradle | 1 +
.../test-projects/native-defaults-aot/build.gradle | 10 +
.../gradle.properties | 0
.../grails-app/conf/application.yml | 0
.../native-defaults-aot/settings.gradle | 1 +
.../test-projects/native-defaults-off/build.gradle | 12 +
.../gradle.properties | 0
.../grails-app/conf/application.yml | 0
.../native-defaults-off/settings.gradle | 1 +
.../test-projects/native-defaults-on/build.gradle | 10 +
.../gradle.properties | 0
.../grails-app/conf/application.yml | 0
.../native-defaults-on/settings.gradle | 1 +
.../native-metadata-ordering/build.gradle | 24 +
.../gradle.properties | 0
.../grails-app/conf/application.yml | 0
.../grails-app/views/index.gsp | 3 +
.../native-metadata-ordering/settings.gradle | 1 +
.../gsp/aot/PrecompiledPageRuntimeHints.java | 52 +++
.../grails/gsp/io/DefaultGroovyPageLocator.java | 25 +-
.../main/resources/META-INF/spring/aot.factories | 2 +
.../gsp/aot/PrecompiledPageRuntimeHintsSpec.groovy | 64 +++
.../DefaultGroovyPageLocatorPrecompiledSpec.groovy | 125 ++++++
.../sitemesh3/GrailsSiteMeshViewResolver.java | 12 +-
...lsSiteMeshViewResolverServletContextSpec.groovy | 105 +++++
.../TagLibBeanDefinitionsPostProcessor.groovy | 95 ++++
.../grails/gsp/taglib/aot/TagLibRuntimeHints.java | 136 ++++++
.../plugins/web/GroovyPagesGrailsPlugin.groovy | 84 ++--
.../main/resources/META-INF/spring/aot.factories | 2 +
.../TagLibBeanDefinitionsPostProcessorSpec.groovy | 117 +++++
.../gsp/taglib/aot/TagLibRuntimeHintsSpec.groovy | 84 ++++
.../GroovyPagesGrailsPluginPrecompiledSpec.groovy | 77 ++++
.../grails/mimetypes/aot/MimeTypeRuntimeHints.java | 57 +++
.../main/resources/META-INF/spring/aot.factories | 2 +
.../web/skeleton/grails-app/views/index.gsp | 8 +-
.../scaffolding/aot/ScaffoldingRuntimeHints.java | 54 +++
.../main/resources/META-INF/spring/aot.factories | 2 +
.../src/main/templates/scaffolding/index.gsp | 2 +-
grails-spring/build.gradle | 1 +
.../spring/DefaultRuntimeSpringConfiguration.java | 32 +-
...DefaultRuntimeSpringConfigurationAotSpec.groovy | 96 ++++
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 ++
.../databinding/aot/DataBindingRuntimeHints.java | 62 +++
.../main/resources/META-INF/spring/aot.factories | 2 +
.../web/mapping/aot/UrlMappingRuntimeHints.java | 61 +++
.../main/resources/META-INF/spring/aot.factories | 2 +
settings.gradle | 2 +
153 files changed, 11666 insertions(+), 204 deletions(-)
create mode 100644
grails-common/src/main/groovy/org/apache/grails/common/aot/AheadOfTimeProcessing.java
create mode 100644
grails-common/src/main/groovy/org/apache/grails/common/aot/RegistrableTypes.java
create mode 100644
grails-common/src/test/groovy/org/apache/grails/common/aot/RegistrableTypesSpec.groovy
create mode 100644
grails-controllers/src/main/groovy/org/apache/grails/controllers/aot/ControllerRuntimeHints.java
create mode 100644
grails-controllers/src/main/resources/META-INF/spring/aot.factories
create mode 100644
grails-controllers/src/test/groovy/org/apache/grails/controllers/aot/ControllerRuntimeHintsSpec.groovy
create mode 100644
grails-core/src/main/groovy/org/apache/grails/core/aot/AbstractBeanDefinitionExcludeFilter.java
create mode 100644
grails-core/src/main/groovy/org/apache/grails/core/aot/ArtefactClassesBeanFactoryInitializationAotProcessor.java
create mode 100644
grails-core/src/main/groovy/org/apache/grails/core/aot/AutowireModeBeanRegistrationAotProcessor.java
create mode 100644
grails-core/src/main/groovy/org/apache/grails/core/aot/BeanRegistrarRuntimeHints.java
create mode 100644
grails-core/src/main/groovy/org/apache/grails/core/aot/GrailsApiRuntimeHints.java
create mode 100644
grails-core/src/main/groovy/org/apache/grails/core/aot/GrailsBannerRuntimeHints.java
create mode 100644
grails-core/src/main/groovy/org/apache/grails/core/aot/GrailsClosureRuntimeHints.java
create mode 100644
grails-core/src/main/groovy/org/apache/grails/core/aot/GrailsResourceRuntimeHints.java
create mode 100644
grails-core/src/main/groovy/org/apache/grails/core/aot/GroovyExtensionModuleRuntimeHints.java
create mode 100644
grails-core/src/main/groovy/org/apache/grails/core/aot/VarargsBeanRegistrationAotProcessor.java
create mode 100644
grails-core/src/main/resources/META-INF/native-image/org.apache.grails/grails-core/native-image.properties
create mode 100644 grails-core/src/main/resources/META-INF/spring/aot.factories
create mode 100644
grails-core/src/test/groovy/grails/boot/GrailsBannerColourSpec.groovy
create mode 100644
grails-core/src/test/groovy/grails/boot/GrailsBannerNativeMarkSpec.groovy
create mode 100644
grails-core/src/test/groovy/grails/boot/GrailsBannerVersionLookupSpec.groovy
create mode 100644
grails-core/src/test/groovy/grails/boot/config/GrailsApplicationPostProcessorAnnotationConfigSpec.groovy
create mode 100644
grails-core/src/test/groovy/grails/boot/config/GrailsAutoConfigurationArtefactsSpec.groovy
create mode 100644
grails-core/src/test/groovy/org/apache/grails/core/aot/AbstractBeanDefinitionExcludeFilterSpec.groovy
create mode 100644
grails-core/src/test/groovy/org/apache/grails/core/aot/ArtefactClassesBeanFactoryInitializationAotProcessorSpec.groovy
create mode 100644
grails-core/src/test/groovy/org/apache/grails/core/aot/AutowireModeBeanRegistrationAotProcessorSpec.groovy
create mode 100644
grails-core/src/test/groovy/org/apache/grails/core/aot/BeanRegistrarRuntimeHintsSpec.groovy
create mode 100644
grails-core/src/test/groovy/org/apache/grails/core/aot/GrailsApiRuntimeHintsSpec.groovy
create mode 100644
grails-core/src/test/groovy/org/apache/grails/core/aot/GrailsBannerRuntimeHintsSpec.groovy
create mode 100644
grails-core/src/test/groovy/org/apache/grails/core/aot/GrailsClosureRuntimeHintsSpec.groovy
create mode 100644
grails-core/src/test/groovy/org/apache/grails/core/aot/GrailsResourceRuntimeHintsSpec.groovy
create mode 100644
grails-core/src/test/groovy/org/apache/grails/core/aot/GroovyExtensionModuleRuntimeHintsSpec.groovy
create mode 100644
grails-core/src/test/groovy/org/apache/grails/core/aot/VarargsBeanRegistrationAotProcessorSpec.groovy
create mode 100644
grails-core/src/test/groovy/org/grails/plugins/CoreGrailsPluginAotSpec.groovy
create mode 100644
grails-core/src/test/groovy/org/grails/spring/beans/AbstractResourceLocatorPostProcessorSpec.groovy
create mode 100644
grails-core/src/test/resources/grails/boot/version-in-a-resource.properties
create mode 100644
grails-data-mongodb/core/src/test/groovy/grails/mongodb/bootstrap/MongoDbDataStoreSpringInitializerBeanDefinitionsSpec.groovy
create mode 100644
grails-datamapping-core/src/main/groovy/org/apache/grails/datamapping/aot/GormRuntimeHints.java
create mode 100644
grails-datamapping-core/src/main/resources/META-INF/spring/aot.factories
create mode 100644
grails-datamapping-core/src/test/groovy/org/apache/grails/datamapping/aot/GormRuntimeHintsSpec.groovy
create mode 100644
grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/bootstrap/AbstractDatastoreInitializerConfigurationSpec.groovy
create mode 100644
grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/events/ConfigurableApplicationContextEventPublisherSpec.groovy
create mode 100644
grails-datamapping-core/src/test/groovy/org/grails/datastore/gorm/transform/AstPropertyResolveUtilsSpec.groovy
create mode 100644
grails-datamapping-validation/src/main/groovy/org/apache/grails/datamapping/validation/aot/ConstrainedPropertyRuntimeHints.java
create mode 100644
grails-datamapping-validation/src/main/resources/META-INF/spring/aot.factories
create mode 100644
grails-datamapping-validation/src/test/groovy/org/apache/grails/datamapping/validation/aot/ConstrainedPropertyRuntimeHintsSpec.groovy
create mode 100644 grails-doc/src/en/guide/deployment/deploymentAot.adoc
create mode 100644 grails-doc/src/en/guide/deployment/deploymentAotCache.adoc
create mode 100644
grails-gradle/plugins/src/main/groovy/org/apache/grails/gradle/plugin/aot/AotCacheExtension.groovy
create mode 100644
grails-gradle/plugins/src/main/groovy/org/apache/grails/gradle/plugin/aot/ExtractApplicationTask.groovy
create mode 100644
grails-gradle/plugins/src/main/groovy/org/apache/grails/gradle/plugin/aot/GenerateNativeMetadataTask.groovy
create mode 100644
grails-gradle/plugins/src/main/groovy/org/apache/grails/gradle/plugin/aot/NativeMetadataExtension.groovy
create mode 100644
grails-gradle/plugins/src/main/groovy/org/apache/grails/gradle/plugin/aot/RunPort.groovy
create mode 100644
grails-gradle/plugins/src/main/groovy/org/apache/grails/gradle/plugin/aot/StartupLog.groovy
create mode 100644
grails-gradle/plugins/src/main/groovy/org/apache/grails/gradle/plugin/aot/TraceNativeMetadataTask.groovy
create mode 100644
grails-gradle/plugins/src/main/groovy/org/apache/grails/gradle/plugin/aot/TrainAotCacheTask.groovy
create mode 100644
grails-gradle/plugins/src/test/groovy/org/apache/grails/gradle/plugin/aot/ExtractApplicationTaskSpec.groovy
create mode 100644
grails-gradle/plugins/src/test/groovy/org/apache/grails/gradle/plugin/aot/GenerateNativeMetadataTaskSpec.groovy
create mode 100644
grails-gradle/plugins/src/test/groovy/org/apache/grails/gradle/plugin/aot/RunPortSpec.groovy
create mode 100644
grails-gradle/plugins/src/test/groovy/org/apache/grails/gradle/plugin/aot/StartupLogSpec.groovy
create mode 100644
grails-gradle/plugins/src/test/groovy/org/apache/grails/gradle/plugin/aot/TraceNativeMetadataTaskSpec.groovy
create mode 100644
grails-gradle/plugins/src/test/groovy/org/apache/grails/gradle/plugin/aot/TracedRunFixture.groovy
create mode 100644
grails-gradle/plugins/src/test/groovy/org/apache/grails/gradle/plugin/aot/TrainAotCacheTaskSpec.groovy
create mode 100644
grails-gradle/plugins/src/test/groovy/org/apache/grails/gradle/plugin/aot/TrainingRunFixture.groovy
create mode 100644
grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/core/AssetClasspathPackagingSpec.groovy
create mode 100644
grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/core/GrailsNativeImageDefaultsSpec.groovy
create mode 100644
grails-gradle/plugins/src/test/resources/test-projects/asset-classpath-packaging/build.gradle
create mode 100644
grails-gradle/plugins/src/test/resources/test-projects/asset-classpath-packaging/gradle.properties
create 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/native-defaults-aot/build.gradle
copy
grails-gradle/plugins/src/test/resources/test-projects/{auto-apply-bom-disabled
=> native-defaults-aot}/gradle.properties (100%)
copy grails-gradle/plugins/src/test/resources/test-projects/{boot-run-pid-web
=> native-defaults-aot}/grails-app/conf/application.yml (100%)
create mode 100644
grails-gradle/plugins/src/test/resources/test-projects/native-defaults-aot/settings.gradle
create mode 100644
grails-gradle/plugins/src/test/resources/test-projects/native-defaults-off/build.gradle
copy
grails-gradle/plugins/src/test/resources/test-projects/{auto-apply-bom-disabled
=> native-defaults-off}/gradle.properties (100%)
copy grails-gradle/plugins/src/test/resources/test-projects/{boot-run-pid-web
=> native-defaults-off}/grails-app/conf/application.yml (100%)
create mode 100644
grails-gradle/plugins/src/test/resources/test-projects/native-defaults-off/settings.gradle
create mode 100644
grails-gradle/plugins/src/test/resources/test-projects/native-defaults-on/build.gradle
copy
grails-gradle/plugins/src/test/resources/test-projects/{auto-apply-bom-disabled
=> native-defaults-on}/gradle.properties (100%)
copy grails-gradle/plugins/src/test/resources/test-projects/{boot-run-pid-web
=> native-defaults-on}/grails-app/conf/application.yml (100%)
create mode 100644
grails-gradle/plugins/src/test/resources/test-projects/native-defaults-on/settings.gradle
create mode 100644
grails-gradle/plugins/src/test/resources/test-projects/native-metadata-ordering/build.gradle
copy
grails-gradle/plugins/src/test/resources/test-projects/{auto-apply-bom-disabled
=> native-metadata-ordering}/gradle.properties (100%)
copy grails-gradle/plugins/src/test/resources/test-projects/{boot-run-pid-web
=> native-metadata-ordering}/grails-app/conf/application.yml (100%)
create mode 100644
grails-gradle/plugins/src/test/resources/test-projects/native-metadata-ordering/grails-app/views/index.gsp
create mode 100644
grails-gradle/plugins/src/test/resources/test-projects/native-metadata-ordering/settings.gradle
create mode 100644
grails-gsp/core/src/main/groovy/org/apache/grails/gsp/aot/PrecompiledPageRuntimeHints.java
create mode 100644
grails-gsp/core/src/main/resources/META-INF/spring/aot.factories
create mode 100644
grails-gsp/core/src/test/groovy/org/apache/grails/gsp/aot/PrecompiledPageRuntimeHintsSpec.groovy
create mode 100644
grails-gsp/core/src/test/groovy/org/grails/gsp/io/DefaultGroovyPageLocatorPrecompiledSpec.groovy
create mode 100644
grails-gsp/grails-sitemesh3/src/test/groovy/org/grails/plugins/sitemesh3/GrailsSiteMeshViewResolverServletContextSpec.groovy
create mode 100644
grails-gsp/plugin/src/main/groovy/org/apache/grails/gsp/taglib/TagLibBeanDefinitionsPostProcessor.groovy
create mode 100644
grails-gsp/plugin/src/main/groovy/org/apache/grails/gsp/taglib/aot/TagLibRuntimeHints.java
create mode 100644
grails-gsp/plugin/src/main/resources/META-INF/spring/aot.factories
create mode 100644
grails-gsp/plugin/src/test/groovy/org/apache/grails/gsp/taglib/TagLibBeanDefinitionsPostProcessorSpec.groovy
create mode 100644
grails-gsp/plugin/src/test/groovy/org/apache/grails/gsp/taglib/aot/TagLibRuntimeHintsSpec.groovy
create mode 100644
grails-gsp/plugin/src/test/groovy/org/grails/plugins/web/GroovyPagesGrailsPluginPrecompiledSpec.groovy
create mode 100644
grails-mimetypes/src/main/groovy/org/apache/grails/mimetypes/aot/MimeTypeRuntimeHints.java
create mode 100644
grails-mimetypes/src/main/resources/META-INF/spring/aot.factories
create mode 100644
grails-scaffolding/src/main/groovy/org/apache/grails/scaffolding/aot/ScaffoldingRuntimeHints.java
create mode 100644
grails-scaffolding/src/main/resources/META-INF/spring/aot.factories
create mode 100644
grails-spring/src/test/groovy/org/grails/spring/DefaultRuntimeSpringConfigurationAotSpec.groovy
create mode 100644 grails-test-examples/aot/build.gradle
create mode 100644 grails-test-examples/aot/grails-app/conf/application.yml
create mode 100644
grails-test-examples/aot/grails-app/controllers/aot/GreetingController.groovy
create mode 100644
grails-test-examples/aot/grails-app/controllers/aot/UrlMappings.groovy
create mode 100644
grails-test-examples/aot/grails-app/init/aot/Application.groovy
create mode 100644
grails-test-examples/aot/grails-app/services/aot/GreetingService.groovy
create mode 100644
grails-test-examples/aot/grails-app/taglib/aot/GreetingTagLib.groovy
create mode 100644 grails-test-examples/aot/grails-app/views/greeting/index.gsp
create mode 100644
grails-web-databinding/src/main/groovy/org/apache/grails/web/databinding/aot/DataBindingRuntimeHints.java
create mode 100644
grails-web-databinding/src/main/resources/META-INF/spring/aot.factories
create mode 100644
grails-web-url-mappings/src/main/groovy/org/apache/grails/web/mapping/aot/UrlMappingRuntimeHints.java
create mode 100644
grails-web-url-mappings/src/main/resources/META-INF/spring/aot.factories