Re: Velocity Engine 2.5 RC1 ${foo.bar}
"Claude Brisson via dev" <[email protected]> Tue, 16 Jun 2026 11:42:02 +0200
| Newsgroups | gmane.comp.jakarta.velocity.devel |
|---|---|
| Message-ID | <[email protected]> |
Hi Greg. The 2.x branch will never require the change. At most, in 2.x, the warning will become true by default and you will have to turn it off. We don't plan to retire the 2.x branch. Velocity Engine 3.0 may be a bit of a different beast, but you can stick to 2.x. I'm pretty sure that we can provide some templates migration tooling for those wanting to update to 3.0 when it is released, though. I realize that a lot of the discussions happened among PMCs on [email protected] or is scattered in comments on github and jira, so let me take the opportunity of this mail to try to present the direction in which I'd like to go: - after engine 2.5 is released, we'll release two concurrent versions of velocity-tools: 3.2 and 4.0. Tools 4.0 will use the jakarta J2EE instead of javax, and provide Spring 6/7 mvc support, but they should be similar. Both the 3.x and 4.x branches will be maintained. - engine 3.0 (/if/ it goes as planned) will use kotlin multiplatform, the antlr parser, the gradle build system, and a VTL syntax which can not incorporate $foo.bar because its syntax has to be a super-set of the kotlin string template syntax. Well, at least, that's my proposal. The "if" is the transition from javacc to antlr, which I have to technically validate (but I don't see why it couldn't be done). Claude B On 16/06/2026 09.29, Greg Huber wrote: > Hello, > > Looking at the release notes: > > * Deprecation of some VTL syntax constructs: the formal reference > notation |${...}| is now preferred for non-bare references (|$foo| > is still fine, but |$foo.bar| should be rewritten as |${foo.bar}|). > Deprecation warnings are off by default; the next minor release will > turn them on by default, and the next major release will remove > support for those deprecated forms. > > I enabled runtime.deprecation.warn=true, to see the warnings, there > are hundreds : > > 2026-06-16 08:19:17,094 WARN org.apache.velocity.rendering > ASTReference:init - the informal notation > '$utils.formatDate($utils.now, $text.get("date.toStringFormat"))' is > deprecated in output; use the formal notation ${...} instead [line > 634, column 21] > > This is a very big change, adding ${} to 95% of our velocity statements. > > Going forward > 2.5 is this change necessary or can it be ignored? > > Cheers Greg > > On 14/06/2026 18:06, Claude Brisson via dev wrote: >> The test build of Velocity Engine 2.5 RC1 is available. >> >> No determination as to the quality ('alpha,' 'beta,' or 'GA') of >> Velocity Engine 2.5 has been made, and at this time it is simply a >> "test build". We welcome any comments you may have, and will take all >> feedback into account if a quality vote is called for this build. >> >> Release notes: >> >> * >> https://dist.apache.org/repos/dist/dev/velocity/velocity-engine/2.5/release-notes.html >> >> Distribution: >> >> * https://dist.apache.org/repos/dist/dev/velocity/velocity-engine/2.5/ >> >> Maven 2 staging repository: >> >> * >> https://repository.apache.org/content/repositories/orgapachevelocity-1050/ >> >> Documentation: >> >> * https://velocity.apache.org/engine/2.5/ >> >> Sources: >> >> * https://github.com/apache/velocity-engine/releases/tag/2.5-RC1 >> >> A vote regarding the quality of this test build will be initiated >> within the next couple of days. >> >> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [email protected] >> For additional commands, e-mail: [email protected] >>