Hi Scott, I really value the effort you've put into modernizing Grails — the work on SiteMesh 3 has set an important direction.
I agree with many of your concerns, especially long-term ones like licensing and maintenance. That said, I also share James and Mattias’ view that in the short term, we need to get Grails 7 out the door. The broken layout scenarios are critical regressions that affect day-to-day use, and the path back to stability seems clearer with the release of Grails 7, with Sitemesh2, 2.6.x or even 2.7.x I’d like to see a roadmap emerge where Sitemesh 3 comes back stronger in Grails 8 — ideally alongside Hibernate 6 and other big lifts. Let's not lose that momentum, and please consider helping with Sitemesh 2.7.0. Den fre. 4. jul. 2025 kl. 00.13 skrev Mattias Reichel < mattias.reic...@gmail.com>: > Scott, I know this is disappointing, with all the work you have put in. > However, I think this ship has sailed, but there is always the next one. > > Some comments on you points below: > > * Rapid fix is feasible > * I can resolve the outstanding SiteMesh 3 issues in two weeks when my > schedule frees up. > > Time has run out and these issues have been on the board for 8+ months. > > * Risk of a major functional regression > * Downgrading to SiteMesh 2 undoes years of improvements and re-introduces > bugs that 7.x has already eliminated. > > Grails 6 is using Sitemesh 2.4.4 and I'm not aware of any bugs. > Which bugs are re-introduced? > > * Breaks the entire 7.x plugin ecosystem > * Every plugin released for Grails 7 compiled with this reversion will not > be compatible with future releases. This will force developers to have to > re-release plugins during the next release cycle further fragmenting the > community. > > This has always been the case, right? > Anyway, I think Grails 8 will follow pretty rapidly with other libraries > doing major version jumps. > > * Relies on obsolete, unmaintained code > * The proposal pulls in a fork last touched in 2009. Maintaining that > branch ourselves means assuming full responsibility for a decade of missing > security patches and refactorings. > > When I look at the project, the 2.4.x branch seems to have had 36 commits > and 2 releases with the last 2.4.4 release 2023-08-13. > The 2.6.x branch that is continuing this line has had work done in 2024 > updating it to Java 17 and migration to Jakarta. > > * Licensing back-slide > * SiteMesh 3 is Apache 2.0. The 2.x codebase is still under the > non-standard OpenSymphony license—one of the main reasons we migrated in > the first place. Reversion complicates legal compliance for commercial > users. > > The OpenSymphony license seems to be derivative of the Apache License with > some additions regarding naming and mentions. > > * Unrealistic test coverage > * Grails 7 has been running SiteMesh 3 for 15 months across thousands of CI > cycles. By contrast, SiteMesh 2 would receive very little time testing > before a major release—insufficient to surface edge-case failures. > > I think this is actually the opposite. Some tests seem to have been removed > with the upgrade to Sitemesh 3 and some had to be annotated with @Ignore > or @PendingFeature until the issues could be resolved, which they have not > yet. James' branch is to my knowledge now passing on all reintroduced and > previously muted tests. > > * Wrong 2.x baseline > * If we must downgrade, the logical starting point is the actively > developed 2.5/2.7 line, not the hastily patched 2.6.0 snapshot. Anything > else magnifies technical debt. > > As I read > https://github.com/apache/grails-core/issues/13058#issuecomment-1631552275 > the easiest path would be the continuation of 2.4.x which is 2.6.x. > Also it seems Grace is using Sitemesh 2.6.x in 2024.0.x. > > * Opportunity cost > * Diverting resources to re-integrate and stabilise SiteMesh 2 moves the > project “ten steps backward.” Investing the same effort into fixing the few > outstanding issues keeps Grails on a modern, maintained stack and delivers > value sooner. > > I'm not so worried about this, we can always upgrade again later when the > integration is ready for it. > > > Den tors 3 juli 2025 kl 18:23 skrev Scott Murphy Heiberg < > scottheib...@apache.org>: > > > -1 Do not proceed because ... > > > > * Rapid fix is feasible > > I can resolve the outstanding SiteMesh 3 issues in two weeks when my > > schedule frees up. > > > > * Risk of a major functional regression > > Downgrading to SiteMesh 2 undoes years of improvements and re-introduces > > bugs that 7.x has already eliminated. > > > > * Breaks the entire 7.x plugin ecosystem > > Every plugin released for Grails 7 compiled with this reversion will not > > be compatible with future releases. This will force developers to have to > > re-release plugins during the next release cycle further fragmenting the > > community. > > > > * Relies on obsolete, unmaintained code > > The proposal pulls in a fork last touched in 2009. Maintaining that > branch > > ourselves means assuming full responsibility for a decade of missing > > security patches and refactorings. > > > > * Licensing back-slide > > SiteMesh 3 is Apache 2.0. The 2.x codebase is still under the > non-standard > > OpenSymphony license—one of the main reasons we migrated in the first > > place. Reversion complicates legal compliance for commercial users. > > > > * Unrealistic test coverage > > Grails 7 has been running SiteMesh 3 for 15 months across thousands of CI > > cycles. By contrast, SiteMesh 2 would receive very little time testing > > before a major release—insufficient to surface edge-case failures. > > > > * Wrong 2.x baseline > > If we must downgrade, the logical starting point is the actively > developed > > 2.5/2.7 line, not the hastily patched 2.6.0 snapshot. Anything else > > magnifies technical debt. > > > > * Opportunity cost > > Diverting resources to re-integrate and stabilise SiteMesh 2 moves the > > project “ten steps backward.” Investing the same effort into fixing the > few > > outstanding issues keeps Grails on a modern, maintained stack and > delivers > > value sooner. > > > > > > On 2025/07/02 15:58:16 James Daugherty wrote: > > > Per discussion [1] and the unanimous feedback in the weekly meeting, > I'd > > > like to propose we revert to Sitemesh 2.x for Grails 7. Please see the > > > thread for the reasons, but the initial work is here: > > > https://github.com/apache/grails-core/tree/issue14193 The goal would > > be > > > to revert, and work through any issues as they come up. > > > > > > The vote is open for the next 72 hours and passes if all binding votes > > are > > > cast in favor. > > > > > > [] +1 proceed with the proposal > > > [] 0 I don't have a strong opinion about this, but I assume it's ok > > > [] -1 Do not proceed because ... > > > > > > Here is my vote: > > > > > > +1 (binding) > > > > > > -James > > > > > > > > > > > > [1] https://lists.apache.org/thread/8lynrl0yd6ykn749md1g2wjb8jph3s5l > > > > > > -- Med venlig hilsen, Søren Berg Glasius Hedevej 1, Gl. Rye, 8680 Ry Mobile: +45 40 44 91 88 --- Press ESC once to quit - twice to save the changes.