Last call for comments on 2.3.17 + release date

Daniel Dekany <[email protected]>
Newsgroups gmane.comp.web.freemarker.user,gmane.comp.web.freemarker.devel
Message-ID <[email protected]>
Unless something horrible happens, it will be released on 2011-05-16.
(There will be "freemarker-gae" too, on the same date, and in the
Maven Central Repo as well.)

A preview jar will be out on 2011-05-09 or 10; the more people tests
it the better. Many lines was/will be touched, so... just to be sure.

The current change log is:

  Changes on the FTL side:

  * The sort and sort_by built-ins now support sorting boolean values.

  Changes on the Java side:

  * FreeMarker now can log its messages directly using SLF4J or Apache
    Commons Logging. However, it will not use these logger libraries
    automatically, until 2.4; see more here... But it's recommended to
    switch to SLF4J now.

  * New setting: "auto_flush", Configurable.setAutoFlush(boolean).
    Sets whether the output Writer is automatically flushed at the end
    of Template.process(Object, Writer) (and its overloads). The
    default is true, which corresponds to the earlier behavior. Using
    false is needed for example when a Web page is composed from
    several boxes (like portlets, GUI panels, etc.) that aren't
    inserted with #include (or with similar directives) into a master
    FreeMarker template, rather they are all processed with a separate
    Template.process(...) call. In a such scenario the automatic
    flushes would commit the HTTP response after each box, hence
    interfering with full-page buffering, and also possibly decreasing
    performance with too frequent and too early response buffer
    flushes.

  * Added freemarker.cache.NullCacheStorage: Setting this as the cache
    storage in Configuration disables caching.

  * Log messages doesn't contain line-breaks (CR or LF) anymore, and
    quote paths and other arbitrary text with Java string literal
    syntax. This is most noticeable on template processing error
    entries, which will now quote the exception message. Note that how
    stack traces (the Throwable objects) are logged is still up to the
    logging framework you are using.

Things that will probably also go into 2.3.17:

  * "classname"?new will have configurable filter so that you can
    exclude classes/packages, even completely ban calling ?new.

  * ?iso_date, ?iso_time. ?iso_datetime] for formatting dates/times
    with ISO 8601 formats.

  * ?long works for date/time values (gives millisecs since the epoch)

  * New top-level special variables: "now", "today" (used like
    Generated: ${.now}) This is dirty, but people often ask for it as
    many environments (like source code templates in certain
    IDE-s) forget to expose such data.

  * Bugfix for ?seq_contians when used with BeansWrapper+CollectionModel

  * Logging messages further secured by escaping "<" where template
    names are logged (PCI requirement...)

  * Fix licencing mess with DTD/XSD included in freemarker.jar: use
    ASF variants

-- 
Best regards,
 Daniel Dekany


------------------------------------------------------------------------------
WhatsUp Gold - Download Free Network Management Software
The most intuitive, comprehensive, and cost-effective network 
management toolset available today.  Delivers lowest initial 
acquisition cost and overall TCO of any competing solution.
http://p.sf.net/sfu/whatsupgold-sd
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.