This is an automated email from the ASF dual-hosted git repository.
borinquenkid pushed a change to branch fix/stacktrace-filterer-test-log-capture
in repository https://gitbox.apache.org/repos/asf/grails-core.git
omit 5ec758dea8 fix: reuse LogCapture instead of hand-rolled ListAppender
helpers
omit 335a5b1f2d fix: capture STACK_LOG output via a Logback appender
instead of System.err
add 94067b6c1f Remove logback-spring.xml from the app skeleton
add 81e26bed44 Stop generating logback-spring.xml in Grails Forge
add 0eea153db8 feat: add opt-in Logback Configuration feature to Grails
Forge
add ed420b14a8 docs: document logback-spring.xml generation change and
Logback Configuration feature
add 2fac042396 Merge remote-tracking branch 'apache/8.0.x' into
remove-skeleton-logback-spring-xml
add 3f3732e681 docs: document zero-XML per-environment logging via the
environments block
add 45968fd538 Merge branch '8.0.x' into remove-skeleton-logback-spring-xml
add 298cd594ad Keep generating logback-spring.xml by default; make
zero-config the opt-in Forge feature
add d2422cdab8 Simplify generated logback-spring.xml: compose Spring Boot
defaults, INFO root level
add 2b1902fbc2 Docs: fix logback-spring.xml example and scope zero-config
vs generated-file behavior
add 8395a4775d Merge branch '8.0.x' into remove-skeleton-logback-spring-xml
add 537614e383 Stop generating logback-spring.xml by default; add opt-in
Logback Configuration feature
add a62acb7a9d Docs: expand config-driven logging coverage in the logging
reference
add 3f378fae04 Merge remote-tracking branch 'upstream/8.0.x' into
remove-skeleton-logback-spring-xml
add 07242bf9bf Merge remote-tracking branch 'upstream/8.0.x' into
remove-skeleton-logback-spring-xml
add 66a25164f3 Merge pull request #15757 from
codeconsole/remove-skeleton-logback-spring-xml
add 9a8a9a11dd Restore backwards compatibility for Grails 7 command
plugins on Grails 8
add 7831d7dfa2 Merge remote-tracking branch 'origin/8.0.x' into
feat/8.0.x-legacy-command-compat
add 71f73fc7a7 Address review feedback and expand backwards-compatibility
test coverage
add be98c6228a Deduplicate legacy command classes across classloaders and
fix docs
add 5069bef718 Use @Slf4j annotation for ApplicationContextCommandRegistry
logger
add d1fe4956a6 Isolate Grails 7 command compat into execution-only
grails-core-cli-legacy
add 7b53bcc56b Harden legacy command provider: single name resolution and
loud linkage failures
add d64cef31ad Merge origin/8.0.x into feat/8.0.x-legacy-command-compat
add c798c93778 Add default-on legacyCommandSupport flag beside
cliAutoProvision
add cd6cbb81bb Stop inventing named Gradle tasks for legacy application
commands
add 3587ed6478 Prove Grails 7 Groovy 4 precompiled application-command
compatibility
add 1d8edac99e Fix CodeNarc style in legacy command compatibility layer
add 116b0efab3 Default legacyCommandSupport to false (opt-in Grails 7
bridge)
add 75ed39351b Harden legacy command compatibility diagnostics
add 1ed1a30a04 Move legacy command compatibility tests into an end-to-end
build
add e1b93a6927 Merge pull request #16059 from
jdaugherty/test/8.0.x-legacy-command-e2e
add b5d87ae5ea Merge branch '8.0.x' into feat/8.0.x-legacy-command-compat
add 08121444e3 chore: add license header to end-to-end properties
add ed1961adfc test: capture application command diagnostics from logger
add bdb98a6636 test: capture StackTrace filterer emissions via LogCapture
add 301b40c20a Merge pull request #16011 from
apache/feat/8.0.x-legacy-command-compat
add 27d86820be fix: capture STACK_LOG output via a Logback appender
instead of System.err
add a8227fdbbb fix: convert GrailsExceptionResolverSpec to LogCapture,
remove last System.err capture
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 (5ec758dea8)
\
N -- N -- N refs/heads/fix/stacktrace-filterer-test-log-capture
(a8227fdbbb)
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/end-to-end.yml | 144 ++++
AGENTS.md | 1 +
end-to-end/README.md | 111 +++
.../build.gradle | 44 +-
.../gradle.properties | 6 +-
.../gradle/wrapper/gradle-wrapper.jar | Bin
.../gradle/wrapper/gradle-wrapper.properties | 2 -
gradlew => end-to-end/gradlew | 4 +-
gradlew.bat => end-to-end/gradlew.bat | 4 +-
.../legacy-commands-plugin}/build.gradle | 18 +-
.../legacy/commands/plugin/GreetingService.groovy | 10 +-
.../commands/plugin/HelloLegacyAppCommand.groovy | 37 +-
.../plugin/HelloLegacyGrailsCommand.groovy | 31 +-
.../plugin/LegacyCommandsPluginGrailsPlugin.groovy | 14 +-
.../src/main/resources/META-INF/grails.factories | 9 +-
.../src/main/scripts/hello-legacy-script.groovy | 15 +-
.../legacy-commands}/build.gradle | 80 +-
.../grails-app/conf/application.yml | 17 +-
.../legacy-commands}/grails-app/conf/logback.xml | 0
.../controllers/legacycommands}/UrlMappings.groovy | 2 +-
.../init/legacycommands}/Application.groovy | 4 +-
.../services/legacycommands/GreetingService.groovy | 10 +-
...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
.../gradle/wrapper/gradle-wrapper.properties | 6 +
.../legacy-g7-command-plugin/gradlew | 4 +-
.../legacy-g7-command-plugin/gradlew.bat | 4 +-
.../legacy-g7-command-plugin}/settings.gradle | 40 +-
.../g7/commands/HelloDerivedNameCommand.groovy | 29 +-
.../g7/commands/HelloG7PrecompiledCommand.groovy | 43 +-
.../HelloG7PrecompiledGrailsCommand.groovy | 27 +-
.../src/main/resources/META-INF/grails.factories | 1 +
end-to-end/settings.gradle | 112 +++
gradle-bootstrap/build.gradle | 47 +-
gradle/publish-root-config.gradle | 1 +
.../GrailsApplicationContextCommandRunner.groovy | 49 +-
...railsApplicationContextCommandRunnerSpec.groovy | 100 +++
.../build.gradle | 36 +-
.../grails/dev/commands}/ApplicationCommand.groovy | 5 +-
.../grails/dev/commands}/ExecutionContext.groovy | 5 +-
.../dev/commands}/GrailsApplicationCommand.groovy | 14 +-
.../dev}/commands/io/FileSystemInteraction.groovy | 6 +-
.../commands}/io/FileSystemInteractionImpl.groovy | 5 +-
.../commands/template}/TemplateException.groovy | 4 +-
.../dev/commands}/template/TemplateRenderer.groovy | 4 +-
.../commands}/template/TemplateRendererImpl.groovy | 8 +-
.../compat/LegacyApplicationCommandAdapter.groovy | 90 +++
.../compat/LegacyApplicationCommandProvider.groovy | 163 ++++
.../main/resources/META-INF/grails-cli.factories | 2 +-
.../cli/LegacyCommandRegistryLoadingSpec.groovy | 601 +++++++++++++++
.../LegacyApplicationCommandAdapterSpec.groovy | 107 +++
.../core/cli/ApplicationCommandDiagnostics.groovy | 87 +++
.../ApplicationCommandFactoryKeyProvider.groovy | 10 +-
.../core/cli/ApplicationCommandProvider.groovy | 13 +-
.../core/cli/ApplicationCommandRegistrar.groovy | 14 +-
.../core/cli/ApplicationCommandTargetAware.groovy | 10 +-
.../cli/ApplicationContextCommandRegistry.groovy | 216 +++++-
.../compiler/CommandFactoriesTransformation.groovy | 14 +-
.../core/io/support/GrailsFactoriesLoader.groovy | 54 ++
.../core/cli/ApplicationCommandProviderSpec.groovy | 822 +++++++++++++++++++++
.../CommandFactoriesTransformationSpec.groovy | 16 +
.../test/resources/META-INF/grails-cli.factories | 2 +-
grails-doc/src/en/guide/conf/config/logging.adoc | 67 +-
grails-doc/src/en/guide/introduction/whatsNew.adoc | 26 +-
.../src/en/guide/upgrading/upgrading80x.adoc | 199 ++++-
.../groovy/org/grails/forge/cli/CommandSpec.groovy | 50 +-
.../org/grails/forge/feature/logging/Logback.java | 11 +-
.../logging/{Logback.java => LogbackConfig.java} | 39 +-
.../forge/feature/logging/LogbackSpec.groovy | 32 +-
.../plugin/commands/GrailsCliGradlePlugin.groovy | 83 ++-
.../gradle/plugin/core/GrailsExtension.groovy | 15 +
.../plugin/commands/CliAutoDiscoverySpec.groovy | 129 +++-
.../commands/LegacyCommandTaskDiscoverySpec.groovy | 44 ++
.../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 +
.../legacy-command-discovery/app/build.gradle | 15 +
.../gradle.properties | 0
.../legacy-command-api/build.gradle | 3 +
.../grails/dev/commands/ApplicationCommand.java | 12 +-
.../java/grails/dev/commands/ExecutionContext.java | 6 +-
.../legacy-command-plugin/build.gradle | 14 +
.../example/legacy/HelloLegacyAppCommand.groovy | 22 +-
.../src/main/resources/META-INF/grails.factories | 1 +
.../legacy-command-discovery/settings.gradle | 3 +
.../skeleton/grails-app/conf/logback-spring.xml | 25 -
.../org/grails/cli/profile/AbstractProfile.groovy | 4 +-
.../ApplicationContextCommandFactory.groovy | 62 +-
.../factory/GroovyScriptCommandFactory.groovy | 2 +
.../grails/cli/profile/AbstractProfileSpec.groovy | 119 +++
.../ApplicationContextCommandFactorySpec.groovy | 113 +++
.../factory/LegacyPluginScriptCompatSpec.groovy | 107 +++
grails-web-mvc/build.gradle | 2 +-
.../web/errors/GrailsExceptionResolverSpec.groovy | 68 +-
settings.gradle | 1 +
102 files changed, 4518 insertions(+), 487 deletions(-)
create mode 100644 .github/workflows/end-to-end.yml
create mode 100644 end-to-end/README.md
copy
grails-databinding-core/src/main/groovy/org/grails/databinding/converters/FormattedLocalDateTimeValueConverter.groovy
=> end-to-end/build.gradle (50%)
copy
grails-test-suite-uber/src/test/resources/org/grails/commons/cfg/ExampleConfig.properties
=> end-to-end/gradle.properties (83%)
copy {build-logic => end-to-end}/gradle/wrapper/gradle-wrapper.jar (100%)
copy {build-logic => end-to-end}/gradle/wrapper/gradle-wrapper.properties (51%)
copy gradlew => end-to-end/gradlew (99%)
copy gradlew.bat => end-to-end/gradlew.bat (97%)
copy {grails-test-examples/views-functional-tests-plugin =>
end-to-end/legacy-commands-plugin}/build.gradle (61%)
copy grails-data-graphql/plugin/grails-app/views/graphql/invalidRequest.gson
=>
end-to-end/legacy-commands-plugin/src/main/groovy/legacy/commands/plugin/GreetingService.groovy
(91%)
copy
grails-test-examples/hibernate5/spring-boot-hibernate/src/main/groovy/example/BookController.groovy
=>
end-to-end/legacy-commands-plugin/src/main/groovy/legacy/commands/plugin/HelloLegacyAppCommand.groovy
(61%)
copy grails-test-examples/demo33/src/test/groovy/demo/FirstTagLibSpec.groovy
=>
end-to-end/legacy-commands-plugin/src/main/groovy/legacy/commands/plugin/HelloLegacyGrailsCommand.groovy
(60%)
copy
grails-test-examples/plugins/micronaut-singleton/src/main/groovy/micronaut/singleton/MicronautSingletonGrailsPlugin.groovy
=>
end-to-end/legacy-commands-plugin/src/main/groovy/legacy/commands/plugin/LegacyCommandsPluginGrailsPlugin.groovy
(71%)
copy
grails-data-neo4j/examples/neo4j-spring-boot/src/main/resources/application.yml
=>
end-to-end/legacy-commands-plugin/src/main/resources/META-INF/grails.factories
(85%)
copy grails-core/src/main/groovy/grails/boot/GrailsPluginApplication.groovy =>
end-to-end/legacy-commands-plugin/src/main/scripts/hello-legacy-script.groovy
(80%)
copy {grails-test-examples/geb => end-to-end/legacy-commands}/build.gradle
(53%)
copy {grails-test-examples/database-cleanup =>
end-to-end/legacy-commands}/grails-app/conf/application.yml (79%)
copy {grails-test-examples/config-report =>
end-to-end/legacy-commands}/grails-app/conf/logback.xml (100%)
copy {grails-test-examples/config-report/grails-app/controllers/configreport
=>
end-to-end/legacy-commands/grails-app/controllers/legacycommands}/UrlMappings.groovy
(97%)
copy
{grails-test-examples/hibernate5/grails-multitenant-multi-datasource/grails-app/init/example
=>
end-to-end/legacy-commands/grails-app/init/legacycommands}/Application.groovy
(97%)
copy
grails-data-graphql/plugin/grails-app/controllers/org/grails/gorm/graphql/plugin/UrlMappings.groovy
=>
end-to-end/legacy-commands/grails-app/services/legacycommands/GreetingService.groovy
(84%)
create mode 100644
end-to-end/legacy-commands/src/integration-test/groovy/legacycommands/LegacyCommandCompatibilityIntegrationSpec.groovy
create mode 100644 end-to-end/legacy-g7-command-plugin/.sdkmanrc
create mode 100644 end-to-end/legacy-g7-command-plugin/build.gradle
copy {build-logic =>
end-to-end/legacy-g7-command-plugin}/gradle/wrapper/gradle-wrapper.jar (100%)
create mode 100644
end-to-end/legacy-g7-command-plugin/gradle/wrapper/gradle-wrapper.properties
copy gradlew => end-to-end/legacy-g7-command-plugin/gradlew (99%)
copy gradlew.bat => end-to-end/legacy-g7-command-plugin/gradlew.bat (97%)
copy {grails-forge => end-to-end/legacy-g7-command-plugin}/settings.gradle
(66%)
copy grails-test-examples/demo33/src/test/groovy/demo/FirstTagLibSpec.groovy
=>
end-to-end/legacy-g7-command-plugin/src/main/groovy/legacy/g7/commands/HelloDerivedNameCommand.groovy
(54%)
copy
grails-core/src/main/groovy/grails/core/GrailsApplicationLifeCycleAdapter.groovy
=>
end-to-end/legacy-g7-command-plugin/src/main/groovy/legacy/g7/commands/HelloG7PrecompiledCommand.groovy
(56%)
copy
grails-test-examples/hibernate7/views-functional-tests/src/main/groovy/functional/tests/MyConverter.groovy
=>
end-to-end/legacy-g7-command-plugin/src/main/groovy/legacy/g7/commands/HelloG7PrecompiledGrailsCommand.groovy
(62%)
create mode 100644
end-to-end/legacy-g7-command-plugin/src/main/resources/META-INF/grails.factories
create mode 100644 end-to-end/settings.gradle
copy {grails-services => grails-core-cli-legacy}/build.gradle (78%)
copy {grails-core/src/cli/groovy/org/apache/grails/core/cli =>
grails-core-cli-legacy/src/main/groovy/grails/dev/commands}/ApplicationCommand.groovy
(89%)
copy {grails-core/src/cli/groovy/org/apache/grails/core/cli =>
grails-core-cli-legacy/src/main/groovy/grails/dev/commands}/ExecutionContext.groovy
(85%)
copy {grails-core/src/cli/groovy/org/apache/grails/core/cli =>
grails-core-cli-legacy/src/main/groovy/grails/dev/commands}/GrailsApplicationCommand.groovy
(75%)
copy {grails-shell-cli/src/main/groovy/org/grails/cli/profile =>
grails-core-cli-legacy/src/main/groovy/grails/dev}/commands/io/FileSystemInteraction.groovy
(93%)
copy {grails-core/src/cli/groovy/org/apache/grails/core/cli =>
grails-core-cli-legacy/src/main/groovy/grails/dev/commands}/io/FileSystemInteractionImpl.groovy
(96%)
copy
{grails-shell-cli/src/main/groovy/org/grails/cli/profile/commands/templates =>
grails-core-cli-legacy/src/main/groovy/grails/dev/commands/template}/TemplateException.groovy
(79%)
copy {grails-core/src/cli/groovy/org/apache/grails/core/cli =>
grails-core-cli-legacy/src/main/groovy/grails/dev/commands}/template/TemplateRenderer.groovy
(95%)
copy {grails-core/src/cli/groovy/org/apache/grails/core/cli =>
grails-core-cli-legacy/src/main/groovy/grails/dev/commands}/template/TemplateRendererImpl.groovy
(96%)
create mode 100644
grails-core-cli-legacy/src/main/groovy/org/apache/grails/core/cli/compat/LegacyApplicationCommandAdapter.groovy
create mode 100644
grails-core-cli-legacy/src/main/groovy/org/apache/grails/core/cli/compat/LegacyApplicationCommandProvider.groovy
copy grails-data-hibernate5/dbmigration/src/test/resources/logging.properties
=> grails-core-cli-legacy/src/main/resources/META-INF/grails-cli.factories (86%)
create mode 100644
grails-core-cli-legacy/src/test/groovy/org/apache/grails/core/cli/LegacyCommandRegistryLoadingSpec.groovy
create mode 100644
grails-core-cli-legacy/src/test/groovy/org/apache/grails/core/cli/compat/LegacyApplicationCommandAdapterSpec.groovy
create mode 100644
grails-core/src/cli/groovy/org/apache/grails/core/cli/ApplicationCommandDiagnostics.groovy
copy
grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/domain/hibernate/HibernatePackage.groovy
=>
grails-core/src/cli/groovy/org/apache/grails/core/cli/ApplicationCommandFactoryKeyProvider.groovy
(78%)
copy
grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/domain/hibernate/HibernatePackage.groovy
=>
grails-core/src/cli/groovy/org/apache/grails/core/cli/ApplicationCommandProvider.groovy
(72%)
copy
grails-async/core/src/main/groovy/grails/async/decorator/PromiseDecoratorProvider.groovy
=>
grails-core/src/cli/groovy/org/apache/grails/core/cli/ApplicationCommandRegistrar.groovy
(73%)
copy
grails-data-graphql/core/src/test/groovy/org/grails/gorm/graphql/domain/hibernate/HibernatePackage.groovy
=>
grails-core/src/cli/groovy/org/apache/grails/core/cli/ApplicationCommandTargetAware.groovy
(81%)
create mode 100644
grails-core/src/test/groovy/org/apache/grails/core/cli/ApplicationCommandProviderSpec.groovy
copy grails-data-hibernate5/dbmigration/src/test/resources/logging.properties
=> grails-core/src/test/resources/META-INF/grails-cli.factories (87%)
copy
grails-forge/grails-forge-core/src/main/java/org/grails/forge/feature/logging/{Logback.java
=> LogbackConfig.java} (58%)
create mode 100644
grails-gradle/plugins/src/test/groovy/org/grails/gradle/plugin/commands/LegacyCommandTaskDiscoverySpec.groovy
create mode 100644
grails-gradle/plugins/src/test/resources/test-projects/cli-companion-autodiscovery/included-digit-bearing-plugin/build.gradle
create mode 100644
grails-gradle/plugins/src/test/resources/test-projects/cli-companion-autodiscovery/included-digit-bearing-plugin/my-plugin-2fa-one/build.gradle
create mode 100644
grails-gradle/plugins/src/test/resources/test-projects/cli-companion-autodiscovery/included-digit-bearing-plugin/my-plugin-2fa-snapshot/build.gradle
create mode 100644
grails-gradle/plugins/src/test/resources/test-projects/cli-companion-autodiscovery/included-digit-bearing-plugin/my-plugin-2fa-timestamp/build.gradle
create mode 100644
grails-gradle/plugins/src/test/resources/test-projects/cli-companion-autodiscovery/included-digit-bearing-plugin/my-plugin-2fa-unspecified/build.gradle
create mode 100644
grails-gradle/plugins/src/test/resources/test-projects/cli-companion-autodiscovery/included-digit-bearing-plugin/settings.gradle
create mode 100644
grails-gradle/plugins/src/test/resources/test-projects/legacy-command-discovery/app/build.gradle
copy
grails-gradle/plugins/src/test/resources/test-projects/{cli-companion-autodiscovery
=> legacy-command-discovery}/gradle.properties (100%)
create mode 100644
grails-gradle/plugins/src/test/resources/test-projects/legacy-command-discovery/legacy-command-api/build.gradle
copy
grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/autoimport/other/A.groovy
=>
grails-gradle/plugins/src/test/resources/test-projects/legacy-command-discovery/legacy-command-api/src/main/java/grails/dev/commands/ApplicationCommand.java
(82%)
copy
grails-data-neo4j/examples/test-data-service/grails-app/domain/example/Book.groovy
=>
grails-gradle/plugins/src/test/resources/test-projects/legacy-command-discovery/legacy-command-api/src/main/java/grails/dev/commands/ExecutionContext.java
(93%)
create mode 100644
grails-gradle/plugins/src/test/resources/test-projects/legacy-command-discovery/legacy-command-plugin/build.gradle
copy
grails-forge/grails-forge-core/src/main/java/org/grails/forge/build/Comment.java
=>
grails-gradle/plugins/src/test/resources/test-projects/legacy-command-discovery/legacy-command-plugin/src/main/groovy/org/example/legacy/HelloLegacyAppCommand.groovy
(70%)
create mode 100644
grails-gradle/plugins/src/test/resources/test-projects/legacy-command-discovery/legacy-command-plugin/src/main/resources/META-INF/grails.factories
create mode 100644
grails-gradle/plugins/src/test/resources/test-projects/legacy-command-discovery/settings.gradle
delete mode 100644
grails-profiles/base/skeleton/grails-app/conf/logback-spring.xml
create mode 100644
grails-shell-cli/src/test/groovy/org/grails/cli/profile/AbstractProfileSpec.groovy
create mode 100644
grails-shell-cli/src/test/groovy/org/grails/cli/profile/commands/factory/ApplicationContextCommandFactorySpec.groovy
create mode 100644
grails-shell-cli/src/test/groovy/org/grails/cli/profile/commands/factory/LegacyPluginScriptCompatSpec.groovy