Summary
Please consider cutting a maintenance release from the 3.x line (main-v3).
The last published 3.x tag is 3.0.2; main-v3 sits at an unreleased 3.0.3.
There is currently no released 3.x artifact that (a) builds from source today, or
(b) runs on Groovy 5.
Why 3.x still matters
4.x is a full rewrite (Gradle → Maven) that dropped the moco and wiremock
modules. Teams that depend on the moco/wiremock stub servers have no upgrade
path to 4.x, so the 3.x line is still their only option.
Problems on the current 3.x
-
It no longer builds. buildSrc depends on com.neva.gradle:fork-plugin,
whose transitive com.neva.commons:gitignore-file-filter:1.0.0 was only ever
published to JCenter/Bintray (shut down 2021). It is absent from Maven Central
and the Gradle Plugin Portal, and 7.0.11 is the latest fork-plugin release, so
there's no version to move to. ./gradlew fails at
:buildSrc:pluginUnderTestMetadata before any project code compiles.
-
It doesn't run on Groovy 5. The bundles compile against Groovy 4 and let
bnd derive Import-Package: groovy.*;version="[4.0,5)". On a Groovy 5 runtime
the mandatory groovy import in the core bundle falls outside that range, so
core stays Installed/unresolved and AEM Stubs is dead:
ERROR: groovy.lang,version=[4.0,5) -- Cannot be resolved
(Groovy 4 works; Groovy 5 breaks. The Groovy runtime is, for example, supplied
by aem-groovy-console, which I'd like to update to Groovy 5 as well.)
Request
Cut a 3.x maintenance release that at minimum:
- restores buildability (resolve/replace the dead fork-plugin dependency), and
- widens the Groovy import range so the bundles resolve on Groovy 4, 5 (and 6).
Offer
I have these fixes prepared and validated against Groovy 4.0.32, 5.0.6
and a 6.0.0-alpha-1 runtime — core+moco resolve and all sample stubs return
200 on all three. I will open PRs against main-v3:
- Groovy 4/5/6 support + build fix — widen the groovy import range to
[4,7)
in core/moco/wiremock; drop the dead JCenter-only fork-plugin.
- (Optional follow-up) Upgrade embedded moco 1.1.0 → 1.6.1 (newer
Netty/Guava/Freemarker) plus OSGi-wiring hardening so the moco server can't
silently fail to start. Backward-compatible for existing .json/.groovy
stubs (only edge case: xml() changed from a request-matcher to a
content-resource).
Summary
Please consider cutting a maintenance release from the 3.x line (
main-v3).The last published 3.x tag is 3.0.2;
main-v3sits at an unreleased3.0.3.There is currently no released 3.x artifact that (a) builds from source today, or
(b) runs on Groovy 5.
Why 3.x still matters
4.x is a full rewrite (Gradle → Maven) that dropped the
mocoandwiremockmodules. Teams that depend on the moco/wiremock stub servers have no upgrade
path to 4.x, so the 3.x line is still their only option.
Problems on the current 3.x
It no longer builds.
buildSrcdepends oncom.neva.gradle:fork-plugin,whose transitive
com.neva.commons:gitignore-file-filter:1.0.0was only everpublished to JCenter/Bintray (shut down 2021). It is absent from Maven Central
and the Gradle Plugin Portal, and 7.0.11 is the latest fork-plugin release, so
there's no version to move to.
./gradlewfails at:buildSrc:pluginUnderTestMetadatabefore any project code compiles.It doesn't run on Groovy 5. The bundles compile against Groovy 4 and let
bnd derive
Import-Package: groovy.*;version="[4.0,5)". On a Groovy 5 runtimethe mandatory groovy import in the
corebundle falls outside that range, socorestays Installed/unresolved and AEM Stubs is dead:(Groovy 4 works; Groovy 5 breaks. The Groovy runtime is, for example, supplied
by aem-groovy-console, which I'd like to update to Groovy 5 as well.)
Request
Cut a 3.x maintenance release that at minimum:
Offer
I have these fixes prepared and validated against Groovy 4.0.32, 5.0.6
and a 6.0.0-alpha-1 runtime — core+moco resolve and all sample stubs return
200 on all three. I will open PRs against
main-v3:[4,7)in core/moco/wiremock; drop the dead JCenter-only fork-plugin.
Netty/Guava/Freemarker) plus OSGi-wiring hardening so the moco server can't
silently fail to start. Backward-compatible for existing
.json/.groovystubs (only edge case:
xml()changed from a request-matcher to acontent-resource).