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

codeconsole pushed a commit to branch 8.0.x
in repository https://gitbox.apache.org/repos/asf/grails-core.git

commit 983e502f1c4e542a154c44e29a12b53a2346e0ab
Merge: 6ee0ba756a 8444cc5466
Author: Scott Murphy <[email protected]>
AuthorDate: Wed Aug 19 13:50:20 2026 -0700

    Merge pull request #16094 from codeconsole/fix/aot-live-instance-beans-8.0.x
    
    Make Grails applications processable by Spring AOT (Leyden AOT Cache + 
GraalVM Native Image Support)

 .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         |  59 ++-
 .../grails/datamapping/aot/GormRuntimeHints.java   | 112 +++++
 .../bootstrap/AbstractDatastoreInitializer.groovy  |  79 +++-
 ...igurableApplicationContextEventPublisher.groovy |  58 ++-
 .../main/resources/META-INF/spring/aot.factories   |   2 +
 .../datamapping/aot/GormRuntimeHintsSpec.groovy    |  81 ++++
 ...actDatastoreInitializerConfigurationSpec.groovy | 190 ++++++++
 ...ableApplicationContextEventPublisherSpec.groovy | 115 +++++
 .../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 +
 .../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 +
 .../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 +
 149 files changed, 11236 insertions(+), 185 deletions(-)

Reply via email to