On 12/01/2010 10:40 AM, Vincent Massol wrote:
fyi.... At some point we'll need to migrate.
Some things I've noticed from the release notes:
- their new syntax #[[...]]# is going to be fun for us... :(
Why the sad face?
- the velocimacro.context.localscope replacement is
important for us
Not quite, it means the default behavior is getting closer to what we're
doing.
-Vincent
Begin forwarded message:
> From: Nathan Bubna<nbubna(a)apache.org>
> Date: December 1, 2010 7:46:29 AM GMT+01:00
> To: announce(a)apache.org, Velocity Developers List<dev(a)velocity.apache.org>rg>,
Velocity Users List<user(a)velocity.apache.org>rg>,
general<general(a)velocity.apache.org>
> Subject: [ANNOUNCE] Apache Velocity Engine 1.7
>
> The Apache Velocity Team announces the immediate availability of the
> of Apache Velocity Engine 1.7. This release is fully compatible with
> the previous release and includes significant improvements in
> performance, stability and features.
>
> Apache Velocity is well-known in the Java field as a lightweight,
> easy-to-use templating library for creating dynamic web sites and
> performing other text-generation tasks.
>
> Much work in this release has gone to making Velocity more
> user-friendly, adding some long-desired features and improving many
> others. Apart from this, numerous bugs were fixed (both common and
> obscure), deprecation warnings were added to push people toward the
> eventual 2.0 version, and performance continues to be improved. Some
> details are listed below:
>
> * There are four new syntax features:
> - #[[ This is a literal text block. It is not parsed, but directly
> fed into the output. ]]#
> - #@yourMacro() can now have body content. Just remember to add the
> @ when calling it with a body! #end
> - You can use brackets to get and set values in lists (and arrays).
> e.g. #set( $foo[2] = $bar[$i] )
> - Quotes, both single and double, may be escaped in string literals
> via doubling. e.g. #set( $foo = "Like ""this""!" )
>
> * There are five notable deprecations:
> - $velocityCount should be changed to $foreach.index (0-base) or
> $foreach.count (1-base)
^This is important for us, since we've been using $velocityCount in many
places.
> - $velocityHasNext should be changed to
$foreach.hasNext,
> $foreach.last or $foreach.first
> - The #literal directive has been replaced by #[[ the much superior
> textblock ]]#
> - The velocimacro.context.localscope setting is being phased out;
> please get/set local #macro references as members of the optional,
> context-aware and self-documenting $macro "namespace" object. (e.g.
> #set( $macro.foo = 'bar' ) and $macro.foo). Enable this by setting
> macro.provide.scope.control=true in your properties.
> - The directive.evaluate.context.class setting is being phased out;
> please get/set local #evaluate references as members of the $evaluate
> "namespace" object. Enable this by setting
> evaluate.provide.scope.control=true in your properties.
>
> * The are three important changes:
> - The #stop directive now stops rendering instead of parsing, making
> it much more useful.
> - The #break directive can now be used in any scope, not just in a
> nested #foreach. It will terminate the nearest content "block",
> whether a directive, a macro body, or an entire template.
^This is cool.
> - All templates, standard block (aka
"content") directives, macros,
> macro bodies, #evaluate content and #define blocks can be easily
> configured to have an automatically-provided, context-aware and
> self-documenting namespace reference in which you can safely and
> securely #set and get any "local" references to keep them out of the
> global context.
^This is nice for local, temporary variables which normally leak out
globally in our current code. We should enable some local scopes and
start using them.
> See the change log for a more complete explanation
of any and all of
> these, or ask us about them at user(a)velocity.apache.org.
>
> Documentation Velocity 1.7 can be found here:
>
http://velocity.apache.org/engine/releases/velocity-1.7/
>
> The change log is here:
>
http://velocity.apache.org/engine/releases/velocity-1.7/changes-report.html
>
> Apache Velocity 1.7 can be downloaded here:
>
http://velocity.apache.org/download.cgi
>
> For the Apache Velocity Team
> Nathan Bubna
--
Sergiu Dumitriu
http://purl.org/net/sergiu/