You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@freemarker.apache.org by dd...@apache.org on 2017/03/13 10:57:50 UTC
[14/50] incubator-freemarker-site git commit: 2.3.26-nightly docs
preview
http://git-wip-us.apache.org/repos/asf/incubator-freemarker-site/blob/52c070a9/builds/2.3.26-nightly/versions_2_1.html
----------------------------------------------------------------------
diff --git a/builds/2.3.26-nightly/versions_2_1.html b/builds/2.3.26-nightly/versions_2_1.html
new file mode 100644
index 0000000..ea18477
--- /dev/null
+++ b/builds/2.3.26-nightly/versions_2_1.html
@@ -0,0 +1,539 @@
+<!doctype html>
+<!-- Generated by FreeMarker/Docgen from DocBook -->
+<html lang="en" class="page-type-section">
+<head prefix="og: http://ogp.me/ns#">
+<meta charset="utf-8">
+<title>2.1 - Apache FreeMarker Manual</title>
+<meta http-equiv="X-UA-Compatible" content="IE=edge">
+<meta name="viewport" content="width=device-width,initial-scale=1">
+<meta name="format-detection" content="telephone=no">
+<meta property="og:site_name" content="Apache FreeMarker Manual">
+<meta property="og:title" content="2.1">
+<meta property="og:locale" content="en_US">
+<meta property="og:url" content="http://freemarker.org/docs/versions_2_1.html">
+<link rel="canonical" href="http://freemarker.org/docs/versions_2_1.html">
+<link rel="icon" href="favicon.png" type="image/png">
+<link rel="stylesheet" type="text/css" href="http://fonts.googleapis.com/css?family=Roboto:500,700,400,300|Droid+Sans+Mono">
+<link rel="stylesheet" type="text/css" href="docgen-resources/docgen.min.css?1489402528979">
+<script>
+(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+ga('create', 'UA-55420501-1', 'auto');
+ga('send', 'pageview');
+</script>
+</head>
+<body itemscope itemtype="https://schema.org/Code">
+ <meta itemprop="url" content="http://freemarker.org/docs/">
+ <meta itemprop="name" content="Apache FreeMarker Manual">
+
+ <!--[if lte IE 9]>
+ <div style="background-color: #C00; color: #fff; padding: 12px 24px;">Please use a modern browser to view this website.</div>
+ <![endif]--><div class="header-top-bg"><div class="site-width header-top"><a class="logo" href="http://freemarker.org" role="banner"> <img itemprop="image" src="logo.png" alt="FreeMarker">
+</a><ul class="tabs"><li><a href="http://freemarker.org/">Home</a></li><li class="current"><a href="index.html">Manual</a></li><li><a class="external" href="api/index.html">Java API</a></li></ul><ul class="secondary-tabs"><li><a class="tab icon-heart" href="http://freemarker.org/contribute.html" title="Contribute"><span>Contribute</span></a></li><li><a class="tab icon-bug" href="https://issues.apache.org/jira/browse/FREEMARKER/" title="Report a Bug"><span>Report a Bug</span></a></li><li><a class="tab icon-download" href="http://freemarker.org/freemarkerdownload.html" title="Download"><span>Download</span></a></li></ul></div></div><div class="header-bottom-bg"><div class="site-width search-row"><a href="index.html" class="navigation-header">Manual</a><div class="navigation-header"></div><form method="get" class="search-form" action="search-results.html"><fieldset><legend class="sr-only">Search form</legend><label for="search-field" class="sr-only">Search query</label><input id="searc
h-field" name="q" type="search" class="search-input" placeholder="Search" spellcheck="false" autocorrect="off" autocomplete="off"><button type="submit" class="search-btn"><span class="sr-only">Search</span></button></fieldset></form></div><div class="site-width breadcrumb-row"><ul class="breadcrumb" itemscope itemtype="http://schema.org/BreadcrumbList"><li class="step-0" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a class="label" itemprop="item" href="index.html"><span itemprop="name">Apache FreeMarker Manual</span></a></li><li class="step-1" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a class="label" itemprop="item" href="app.html"><span itemprop="name">Appendixes</span></a></li><li class="step-2" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a class="label" itemprop="item" href="app_versions.html"><span itemprop="name">Version history</span></a></li><li class="step-3" itemprop="itemListEl
ement" itemscope itemtype="http://schema.org/ListItem"><a class="label" itemprop="item" href="versions_2_1.html"><span itemprop="name">2.1</span></a></li></ul><div class="bookmarks" title="Bookmarks"><span class="sr-only">Bookmarks:</span><ul class="bookmark-list"><li><a href="alphaidx.html">Alpha. index</a></li><li><a href="gloss.html">Glossary</a></li><li><a href="dgui_template_exp.html#exp_cheatsheet">Expressions</a></li><li><a href="ref_builtins_alphaidx.html">?builtins</a></li><li><a href="ref_directive_alphaidx.html">#directives</a></li><li><a href="ref_specvar.html">.spec_vars</a></li><li><a href="app_faq.html">FAQ</a></li></ul></div></div></div> <div class="main-content site-width">
+ <div class="content-wrapper">
+ <div id="table-of-contents-wrapper" class="col-left">
+ <script>var breadcrumb = ["Apache FreeMarker Manual","Appendixes","Version history","2.1"];</script>
+ <script src="toc.js?1489402528979"></script>
+ <script src="docgen-resources/main.min.js?1489402528979"></script>
+ </div>
+<div class="col-right"><div class="page-content"><div class="page-title"><div class="pagers top"><a class="paging-arrow previous" href="versions_2_1_1.html"><span>Previous</span></a><a class="paging-arrow next" href="versions_2_01.html"><span>Next</span></a></div><div class="title-wrapper">
+<h1 class="content-header header-section1" id="versions_2_1" itemprop="headline">2.1</h1>
+</div></div><div class="page-menu">
+<div class="page-menu-title">Page Contents</div>
+<ul><li><a class="page-menu-link" href="#autoid_277" data-menu-target="autoid_277">Changes in FTL (FreeMarker Template Language)</a></li><li><a class="page-menu-link" href="#autoid_278" data-menu-target="autoid_278">Changes on the Java side</a></li><li><a class="page-menu-link" href="#autoid_279" data-menu-target="autoid_279">Other changes</a></li><li><a class="page-menu-link" href="#autoid_280" data-menu-target="autoid_280">Differences between the RC1 and final release</a></li></ul> </div><p>Date of release: 2002-10-17</p><p>Templates and the Java API are <em>not</em> fully
+ compatible with 2.0 releases. You will need to revisit existing code
+ and templates, or use 2.1 for new projects only. Sorry for this
+ inconvenience; FreeMarker has undergone some revolutionary changes
+ since the 1.x series. We hope things will soon be sufficiently mature
+ for us to offer (almost) backward-compatible releases. Note that there
+ is a backward-compatibility flag that can be set via
+ <code class="inline-code">Configuration.setClassicCompatible(true)</code> that
+ causes the new FreeMarker to emulate most of FreeMarker 1.x's
+ quirks.</p>
+
+
+
+
+<h2 class="content-header header-section2" id="autoid_277">Changes in FTL (FreeMarker Template Language)</h2>
+
+
+ <ul>
+ <li>
+ <p>More strict, reveals accidental mistakes in the templates,
+ prevents showing incorrect information when something went
+ wrong:</p>
+
+ <ul>
+ <li>
+ <p>An attempt to access an undefined variable causes an
+ error and aborts template processing (by default at least;
+ see later). In earlier versions undefined variables were
+ silently treated as empty (zero-length) strings. However,
+ you can handle undefined variables in the template with some
+ new built-ins. For example,
+ <code class="inline-code">${foo?if_exists}</code> is equivalent with the
+ <code class="inline-code">${foo}</code> of earlier versions. Another way
+ of looking at this is that null values no longer exist from
+ the viewpoint of a template designer. Anything referenced
+ must be a defined variable.</p>
+
+ <p>Note however that the programmer can configure
+ FreeMarker so that it ignores certain errors (say, undefined
+ variables), and continues template processing by skipping
+ the problematic part. This "loose" policy
+ should be used only for sites that don't show critical
+ information.</p>
+ </li>
+
+ <li>
+ <p>New variable type: <a href="gloss.html#gloss.boolean">boolean</a>. Conditions in
+ <code class="inline-code">if</code>/<code class="inline-code">elseif</code> and operands
+ of logical operators (<code class="inline-code">&&</code>,
+ <code class="inline-code">||</code>, <code class="inline-code">!</code>) must be
+ booleans. Empty strings are no longer treated as a logical
+ false.</p>
+ </li>
+ </ul>
+ </li>
+
+ <li>
+ <p>Local and global variables. More info: <a href="dgui_misc_var.html">Template Author's Guide/Miscellaneous/Defining variables in the template</a></p>
+
+ <ul>
+ <li>
+ <p>Local variables for macros. You can create/replace
+ local variables in macro definition bodies with the <a href="ref_directive_local.html#ref.directive.local"><code>local</code>
+ directive</a></p>
+ </li>
+
+ <li>
+ <p>You can create/replace global (non-local) variables
+ with the <a href="ref_directive_global.html#ref.directive.global"><code>global</code>
+ directive</a></p>
+ </li>
+ </ul>
+ </li>
+
+ <li>
+ <p>The <a href="ref_directive_include.html#ref.directive.include"><code>include</code></a>
+ directive now by default treats the passed filename as being
+ relative to the including template's path. To specify absolute
+ template paths, you now have to prepend them with a
+ slash.</p>
+ </li>
+
+ <li>
+ <p>The <a href="ref_directive_include.html#ref.directive.include"><code>include</code></a>
+ directive can now use the <em>acquisition
+ algorithm</em> (familiar from the Zope system) to look up
+ the template to include. Basically, if a template is not found
+ where it is looked up first, it is looked up in parent
+ directories. This is however not a default behavior, rather it
+ is triggered by a new syntactic element.</p>
+ </li>
+
+ <li>
+ <p>Strict syntax mode: Allows you to generate arbitrary SGML
+ (XML) without worrying about clashes with FreeMarker directives.
+ For more information read: <a href="ref_depr_oldsyntax.html">Template Language Reference/Deprecated FTL constructs/Old FTL syntax</a></p>
+ </li>
+
+ <li>
+ <p>Terse comments: you can use <code class="inline-code"><#--
+ <em class="code-color">...</em> --></code> instead of
+ <code class="inline-code"><comment><em class="code-color">...</em></comment></code></p>
+ </li>
+
+ <li>
+ <p>Directive that you can use to change the locale (and other
+ settings) inside the template: <a href="ref_directive_setting.html#ref.directive.setting"><code>setting</code></a></p>
+ </li>
+
+ <li>
+ <p>Directive to explicitly flush the output buffer: <a href="ref_directive_flush.html#ref.directive.flush"><code>flush</code></a></p>
+ </li>
+
+ <li>
+ <p>The top-level (root) hash is available via the variable
+ <code class="inline-code">root</code>, which is now a reserved name.</p>
+ </li>
+
+ <li>
+ <p>The misnamed <code class="inline-code">function</code> directive has
+ been renamed to <code class="inline-code">macro</code>.</p>
+ </li>
+
+ <li>
+ <p>String literals support various new <a href="dgui_template_exp.html#topic.escapeSequence">escape sequences</a>,
+ including UNICODE escapes
+ (<code class="inline-code">\x<em class="code-color">CODE</em></code>)</p>
+ </li>
+
+ <li>
+ <p>The <a href="ref_directive_compress.html#ref.directive.compress"><code>compress</code></a>
+ directive is now more conservative in removing line
+ breaks.</p>
+ </li>
+
+ <li>
+ <p>Built-in to capitalize the first word: <a href="ref_builtins_string.html#ref_builtin_cap_first"><code>cap_first</code></a></p>
+ </li>
+
+ <li>
+ <p>Built-in to generate on-the-fly templates: <a href="ref_builtins_expert.html#ref_builtin_interpret"><code>interpret</code></a></p>
+ </li>
+
+ <li>
+ <p><a href="ref_directive_stop.html#ref.directive.stop"><code>stop</code></a>
+ directive has an optional parameter to describe the reason of
+ termination</p>
+ </li>
+
+ <li>
+ <p>Better error messages.</p>
+ </li>
+
+ <li>
+ <p>New variable type: date. <em>Date support is
+ experimental. It can change substantially in the future. Keep
+ this in mind if you use it.</em></p>
+ </li>
+ </ul>
+
+
+
+
+
+<h2 class="content-header header-section2" id="autoid_278">Changes on the Java side</h2>
+
+
+ <ul>
+ <li>
+ <p><code class="inline-code">ObjectWrapper</code>: You can put
+ non-<code class="inline-code">TemplateModel</code> objects directly into
+ hashes, sequences and collections, and they will be
+ automatically wrapped with the appropriate
+ <code class="inline-code">TemplateModel</code> implementation. The API of
+ objects that are exposed to templates
+ (<code class="inline-code">Simple<em class="code-color">XXX</em></code>) has
+ been changed according to this, for example in
+ <code class="inline-code">SimpleHash</code> the old <code class="inline-code">put(String key,
+ TemplateModel value)</code> is now <code class="inline-code">put(String key,
+ Object object)</code>. Also, you can pass any kind of object
+ as data-model to <code class="inline-code">Template.process</code>. The
+ alternative reflection based <code class="inline-code">ObjectWrapper</code>
+ can expose the members of any Java object automatically for the
+ designer. More information: <a href="pgui_datamodel_objectWrapper.html">Object wrapping</a>,
+ <a href="pgui_misc_beanwrapper.html">Bean wrapper</a>, <a href="pgui_misc_jythonwrapper.html">Jython wrapper</a>.</p>
+ </li>
+
+ <li>
+ <p>The <code class="inline-code">Configuration</code> object was introduced
+ as a central point to hold all your FreeMarker-related global
+ settings, as well as commonly used variables that you want to
+ have available from any template. Also it encapsulates the
+ template cache and can be used to load templates. For more
+ information read <a href="pgui_config.html">Programmer's Guide/The Configuration</a>.</p>
+ </li>
+
+ <li>
+ <p><code class="inline-code">TemplateLoader</code>: pluggable template
+ loader, separates caching from template loading</p>
+ </li>
+
+ <li>
+ <p><code class="inline-code">TemplateNumberModel</code>-s do not control
+ their formatting anymore. They just store the data (i.e. a
+ number). Number formatting is done by the FreeMarker core based
+ on the <code class="inline-code">locale</code> and
+ <code class="inline-code">number_format</code> settings. This logic applies to
+ the new experimental date type as well.</p>
+ </li>
+
+ <li>
+ <p><code class="inline-code">TemplateBooleanModel</code> introduced: Only
+ objects that implements this interface can be used as a boolean
+ in true/false conditions. More info: <a href="pgui_datamodel_scalar.html">Programmer's Guide/The Data Model/Scalars</a></p>
+ </li>
+
+ <li>
+ <p><code class="inline-code">TemplateDateModel</code> introduced: objects
+ that implements this interface are recognized as dates and can
+ be locale-sensitively formatted. <em>Date support is
+ experimental in FreeMarker 2.1. It can change substantially in
+ the future. Keep this in mind if you use it.</em></p>
+ </li>
+
+ <li>
+ <p>The <code class="inline-code">TemplateModelRoot</code> interface was
+ deprecated. As of FreeMarker 2.1, you can simply use any
+ instance of <code class="inline-code">TemplateHashModel</code> instead. This
+ actually is due to a significant architectural change. Variables
+ set or defined in a template are stored in a separate
+ <code class="inline-code">Environment</code> object that only exists while the
+ template is being rendered. Thus, the template doesn't modify
+ the root hash.</p>
+ </li>
+
+ <li>
+ <p>Changes to transformations</p>
+
+ <ul>
+ <li>
+ <p>Completely rewritten
+ <code class="inline-code">TemplateTransformModel</code> interface. More
+ flexible, and does not impose output holding. More
+ information: <a href="pgui_datamodel_directive.html">Programmer's Guide/The Data Model/Directives</a></p>
+ </li>
+
+ <li>
+ <p>The <code class="inline-code">transform</code> directive now takes
+ an optional set of key/value pairs. <code class="inline-code"><transform
+ myTransform;
+ <em class="code-color">key1</em>=<em class="code-color">value1</em>,
+ <em class="code-color">key2</em>=<em class="code-color">value2</em>
+ <em class="code-color">...</em>></code>. More
+ information: <a href="ref_depr_transform.html#ref.directive.transform"><code>transform</code>
+ directive</a></p>
+ </li>
+
+ <li>
+ <p>The transforms that ship with the FreeMarker core are
+ now available by default to all templates - i.e.
+ <code class="inline-code"><transform html_escape></code> will invoke
+ the
+ <code class="inline-code">freemarker.template.utility.HtmlEscape</code>
+ transform. More information: <a href="pgui_config_sharedvariables.html">Programmer's Guide/The Configuration/Shared variables</a></p>
+ </li>
+ </ul>
+ </li>
+
+ <li>
+ <p>User-defined <code class="inline-code">TemplateModel</code> objects now
+ can access the runtime environment (read and set variables, get
+ the current locale, etc.) using an
+ <code class="inline-code">Environment</code> instance, which can be obtained
+ by the static
+ <code class="inline-code">Environment.getCurrentEnvironment()</code> method.
+ As a result, <code class="inline-code">TemplateScalarModel.getAsString</code>
+ has been changed: it has no locale parameter.</p>
+ </li>
+
+ <li>
+ <p><code class="inline-code">TemplateExceptionHandler</code>-s make it
+ possible to define your own rules on what to do when a runtime
+ error occurs (e.g. accessing a non existing variable) during
+ template processing. For example, you can abort template
+ processing (recommended for most sites), or skip the problematic
+ statement and continue template processing (similar to old
+ behavior). DebugMode has been removed, use
+ <code class="inline-code">TemplateExceptionHandler.DEBUG_HANDLER</code> or
+ <code class="inline-code">HTML_DEBUG_HANDLER</code> instead.</p>
+ </li>
+
+ <li>
+ <p>Logging: FreeMarker logs certain events (runtime errors
+ for example). For more information read <a href="pgui_misc_logging.html">Programmer's Guide/Miscellaneous/Logging</a>.</p>
+ </li>
+
+ <li>
+ <p><code class="inline-code">SimpleIterator</code> was removed, but we
+ provide a <code class="inline-code">TemplateCollectionModel</code>
+ implementation: <code class="inline-code">SimpleCollection</code>.</p>
+ </li>
+
+ <li>
+ <p>Arithmetic engine is pluggable
+ (<code class="inline-code">Configuration.setArithmeticEngine</code>). The core
+ distribution comes with two engines:
+ <code class="inline-code">ArithmeticEngine.BIGDECIMAL_ENGINE</code> (the
+ default) that converts all numbers to
+ <code class="inline-code">BigDecimal</code> and then operates on them, and
+ <code class="inline-code">ArithmeticEngine.CONSERVATIVE_ENGINE</code> that
+ uses (more-or-less) the widening conversions of Java language,
+ instead of converting everything to
+ <code class="inline-code">BigDecimal</code>.</p>
+ </li>
+
+ <li>
+ <p>Changes to <code class="inline-code">freemarker.ext.beans</code>
+ package: The JavaBeans adapter layer has suffered several major
+ changes. First, <code class="inline-code">BeansWrapper</code> is no longer a
+ static utility class - you can now create instances of it, and
+ every instance can have its own instance caching policy and
+ security settings. These security settings are also new - you
+ can now create JavaBeans wrappers that hide methods that are
+ considered unsafe or inappropriate in a templating environment.
+ By default, you can no longer call methods like
+ <code class="inline-code">System.exit()</code> from the template (although you
+ can manually turn off these safeguards). The
+ <code class="inline-code">StaticModel</code> and
+ <code class="inline-code">StaticModels</code> classes are gone; their
+ functionality is now replaced with the
+ <code class="inline-code">BeansWrapper.getStaticModels()</code> method.</p>
+ </li>
+
+ <li>
+ <p><code class="inline-code">freemarker.ext.jython</code> package:
+ FreeMarker can now directly use Jython objects as data-models
+ using the <a href="pgui_misc_jythonwrapper.html">Jython
+ wrapper</a>.</p>
+ </li>
+
+ <li>
+ <p>Changes to <code class="inline-code">freemarker.ext.jdom</code> package:
+ The package now uses the <em>Jaxen</em> package
+ instead of its predecessor, the
+ <em>werken.xpath</em> package to evaluate XPath
+ expressions. Since <em>Jaxen</em> is a successor to
+ <em>werken.xpath</em>, this can be considered to be
+ an upgrade. As a consequence, namespace prefixes are now
+ recognized in XPath expressions and the overall XPath
+ conformance is better.</p>
+ </li>
+
+ <li>
+ <p>Better error reporting: If the processing of a template is
+ aborted by a <code class="inline-code">TemplateException</code> being thrown,
+ or using a <code class="inline-code"><#stop></code> directive,
+ FreeMarker will now output an execution trace with line and
+ column numbers relative to the template source.</p>
+ </li>
+
+ <li>
+ <p>The output is written to a simple
+ <code class="inline-code">Writer</code>; no more
+ <code class="inline-code">PrintWriter</code>. This redesign causes FreeMarker
+ to no longer swallow <code class="inline-code">IOException</code>s during
+ template processing.</p>
+ </li>
+
+ <li>
+ <p>Various API cleanups, primarily the removing of
+ superfluous constructor and method overloads.</p>
+ </li>
+ </ul>
+
+
+
+
+
+<h2 class="content-header header-section2" id="autoid_279">Other changes</h2>
+
+
+ <ul>
+ <li>
+ <p>Documentation has been rewritten from scratch</p>
+ </li>
+ </ul>
+
+
+
+
+
+<h2 class="content-header header-section2" id="autoid_280">Differences between the RC1 and final release</h2>
+
+
+ <ul>
+ <li>
+ <p>Added the support for date models and locale-sensitive
+ date formatting. <em>Date support is experimental in
+ FreeMarker 2.1. It can change substantially in the future. Keep
+ this in mind if you use it.</em></p>
+ </li>
+
+ <li>
+ <p>Added the <code class="inline-code">default</code> built-in which makes
+ it possible to specify default values for undefined
+ expressions.</p>
+ </li>
+
+ <li>
+ <p><code class="inline-code">SimpleIterator</code> has been removed,
+ <code class="inline-code">SimpleCollection</code> has been introduced</p>
+ </li>
+
+ <li>
+ <p>Arithmetic engine is pluggable. The core now contains two
+ arithmetic engines:
+ <code class="inline-code">ArithmeticEngine.BIGDECIMAL_ENGINE</code> and
+ <code class="inline-code">ArithmeticEngine.CONSERVATIVE_ENGINE</code>.</p>
+ </li>
+
+ <li>
+ <p><code class="inline-code">BeansWrapper</code> supports a new exposure
+ level: <code class="inline-code">EXPOSE_NOTHING</code></p>
+ </li>
+
+ <li>
+ <p><code class="inline-code">Constants</code> interface was removed.
+ <code class="inline-code"><em class="code-color">...</em>_WRAPPER</code>
+ constants have been moved from <code class="inline-code">Constants</code> to
+ <code class="inline-code">ObjectWrapper</code>,
+ <code class="inline-code">EMPTY_STRING</code> constant was moved to
+ <code class="inline-code">TemplateScalarModel</code>,
+ <code class="inline-code">NOTHING</code> constant was moved to
+ <code class="inline-code">TemplateModel</code>, <code class="inline-code">TRUE</code> and
+ <code class="inline-code">FALSE</code> constants were moved to
+ <code class="inline-code">TemplateBooleanModel</code>.</p>
+ </li>
+
+ <li>
+ <p><code class="inline-code">JAVABEANS_WRAPPER</code> was renamed to
+ <code class="inline-code">BEANS_WRAPPER</code></p>
+ </li>
+
+ <li>
+ <p><code class="inline-code">Configuration.get</code> and
+ <code class="inline-code">put</code>, <code class="inline-code">putAll</code> were renamed
+ to <code class="inline-code">getSharedVariable</code> and
+ <code class="inline-code">setSharedVariable</code>,
+ <code class="inline-code">setAllSharedVariables</code></p>
+ </li>
+
+ <li>
+ <p><code class="inline-code">Configuration.getClassicCompatibility</code>,
+ <code class="inline-code">setClassicCompatibility</code> were renamed to
+ <code class="inline-code">isClassicCompatible</code>,
+ <code class="inline-code">setClassicCompatible</code></p>
+ </li>
+
+ <li>
+ <p><code class="inline-code">Template.process</code> method overloads with
+ <code class="inline-code">useReflection</code> parameter was removed. But now
+ we have <code class="inline-code">setObjectWrapper</code> method in the
+ <code class="inline-code">Configuration</code>, so you can set the preferred
+ root-object wrapper there.</p>
+ </li>
+
+ <li>
+ <p>Some superfluous method overloads were removed; these
+ changes are backward compatible with RC1</p>
+ </li>
+
+ <li>
+ <p>Various minor JavaDoc and Manual improvements</p>
+ </li>
+
+ <li>
+ <p>Bugfix: <code class="inline-code">include</code> directive has
+ calculated the base path of relative paths wrongly</p>
+ </li>
+
+ <li>
+ <p>Bugfix: We have accidentally used a J2SE 1.3 class, but
+ FreeMarker 2.1 must able to run on J2SE 1.2</p>
+ </li>
+ </ul>
+ <div class="bottom-pagers-wrapper"><div class="pagers bottom"><a class="paging-arrow previous" href="versions_2_1_1.html"><span>Previous</span></a><a class="paging-arrow next" href="versions_2_01.html"><span>Next</span></a></div></div></div></div> </div>
+ </div>
+<div class="site-footer"><div class="site-width"><div class="footer-top"><div class="col-left sitemap"><div class="column"><h3 class="column-header">Overview</h3><ul><li><a href="http://freemarker.org/">What is FreeMarker?</a></li><li><a href="http://freemarker.org/freemarkerdownload.html">Download</a></li><li><a href="app_versions.html">Version history</a></li><li><a href="http://freemarker.org/history.html">About us</a></li><li><a itemprop="license" href="app_license.html">License</a></li></ul></div><div class="column"><h3 class="column-header">Handy stuff</h3><ul><li><a href="http://freemarker-online.kenshoo.com/">Try template online</a></li><li><a href="dgui_template_exp.html#exp_cheatsheet">Expressions cheatsheet</a></li><li><a href="ref_directive_alphaidx.html">#directives</a></li><li><a href="ref_builtins_alphaidx.html">?built_ins</a></li><li><a href="ref_specvar.html">.special_vars</a></li></ul></div><div class="column"><h3 class="column-header">Community</h3><ul><li><a href
="https://github.com/freemarker/freemarker">FreeMarker on Github</a></li><li><a href="https://twitter.com/freemarker">Follow us on Twitter</a></li><li><a href="https://issues.apache.org/jira/browse/FREEMARKER/">Report a bug</a></li><li><a href="http://stackoverflow.com/questions/ask?tags=freemarker">Ask a question</a></li><li><a href="http://freemarker.org/mailing-lists.html">Mailing lists</a></li></ul></div></div><div class="col-right"><ul class="social-icons"><li><a class="github" href="https://github.com/freemarker/freemarker">Github</a></li><li><a class="twitter" href="https://twitter.com/freemarker">Twitter</a></li><li><a class="stack-overflow" href="http://stackoverflow.com/questions/ask?tags=freemarker">Stack Overflow</a></li></ul><a class="xxe" href="http://www.xmlmind.com/xmleditor/" rel="nofollow" title="Edited with XMLMind XML Editor"><span>Edited with XMLMind XML Editor</span></a></div></div><div class="footer-bottom"> <p class="last-generated">
+Last generated:
+<time itemprop="dateModified" datetime="2017-03-13T10:55:28Z" title="Monday, March 13, 2017 10:55:28 AM GMT">2017-03-13 10:55:28 GMT</time>, for Freemarker 2.3.26 </p>
+<p class="copyright">
+� <span itemprop="copyrightYear">1999</span>\u20132017
+<a itemtype="http://schema.org/Organization" itemprop="copyrightHolder" href="http://apache.org/">The Apache Software Foundation</a>. Apache FreeMarker, FreeMarker, Apache Incubator, Apache, the Apache FreeMarker logo are trademarks of The Apache Software Foundation. </p>
+</div></div></div></body>
+</html>
http://git-wip-us.apache.org/repos/asf/incubator-freemarker-site/blob/52c070a9/builds/2.3.26-nightly/versions_2_1_1.html
----------------------------------------------------------------------
diff --git a/builds/2.3.26-nightly/versions_2_1_1.html b/builds/2.3.26-nightly/versions_2_1_1.html
new file mode 100644
index 0000000..8c919ae
--- /dev/null
+++ b/builds/2.3.26-nightly/versions_2_1_1.html
@@ -0,0 +1,125 @@
+<!doctype html>
+<!-- Generated by FreeMarker/Docgen from DocBook -->
+<html lang="en" class="page-type-section">
+<head prefix="og: http://ogp.me/ns#">
+<meta charset="utf-8">
+<title>2.1.1 - Apache FreeMarker Manual</title>
+<meta http-equiv="X-UA-Compatible" content="IE=edge">
+<meta name="viewport" content="width=device-width,initial-scale=1">
+<meta name="format-detection" content="telephone=no">
+<meta property="og:site_name" content="Apache FreeMarker Manual">
+<meta property="og:title" content="2.1.1">
+<meta property="og:locale" content="en_US">
+<meta property="og:url" content="http://freemarker.org/docs/versions_2_1_1.html">
+<link rel="canonical" href="http://freemarker.org/docs/versions_2_1_1.html">
+<link rel="icon" href="favicon.png" type="image/png">
+<link rel="stylesheet" type="text/css" href="http://fonts.googleapis.com/css?family=Roboto:500,700,400,300|Droid+Sans+Mono">
+<link rel="stylesheet" type="text/css" href="docgen-resources/docgen.min.css?1489402528979">
+<script>
+(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+ga('create', 'UA-55420501-1', 'auto');
+ga('send', 'pageview');
+</script>
+</head>
+<body itemscope itemtype="https://schema.org/Code">
+ <meta itemprop="url" content="http://freemarker.org/docs/">
+ <meta itemprop="name" content="Apache FreeMarker Manual">
+
+ <!--[if lte IE 9]>
+ <div style="background-color: #C00; color: #fff; padding: 12px 24px;">Please use a modern browser to view this website.</div>
+ <![endif]--><div class="header-top-bg"><div class="site-width header-top"><a class="logo" href="http://freemarker.org" role="banner"> <img itemprop="image" src="logo.png" alt="FreeMarker">
+</a><ul class="tabs"><li><a href="http://freemarker.org/">Home</a></li><li class="current"><a href="index.html">Manual</a></li><li><a class="external" href="api/index.html">Java API</a></li></ul><ul class="secondary-tabs"><li><a class="tab icon-heart" href="http://freemarker.org/contribute.html" title="Contribute"><span>Contribute</span></a></li><li><a class="tab icon-bug" href="https://issues.apache.org/jira/browse/FREEMARKER/" title="Report a Bug"><span>Report a Bug</span></a></li><li><a class="tab icon-download" href="http://freemarker.org/freemarkerdownload.html" title="Download"><span>Download</span></a></li></ul></div></div><div class="header-bottom-bg"><div class="site-width search-row"><a href="index.html" class="navigation-header">Manual</a><div class="navigation-header"></div><form method="get" class="search-form" action="search-results.html"><fieldset><legend class="sr-only">Search form</legend><label for="search-field" class="sr-only">Search query</label><input id="searc
h-field" name="q" type="search" class="search-input" placeholder="Search" spellcheck="false" autocorrect="off" autocomplete="off"><button type="submit" class="search-btn"><span class="sr-only">Search</span></button></fieldset></form></div><div class="site-width breadcrumb-row"><ul class="breadcrumb" itemscope itemtype="http://schema.org/BreadcrumbList"><li class="step-0" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a class="label" itemprop="item" href="index.html"><span itemprop="name">Apache FreeMarker Manual</span></a></li><li class="step-1" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a class="label" itemprop="item" href="app.html"><span itemprop="name">Appendixes</span></a></li><li class="step-2" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a class="label" itemprop="item" href="app_versions.html"><span itemprop="name">Version history</span></a></li><li class="step-3" itemprop="itemListEl
ement" itemscope itemtype="http://schema.org/ListItem"><a class="label" itemprop="item" href="versions_2_1_1.html"><span itemprop="name">2.1.1</span></a></li></ul><div class="bookmarks" title="Bookmarks"><span class="sr-only">Bookmarks:</span><ul class="bookmark-list"><li><a href="alphaidx.html">Alpha. index</a></li><li><a href="gloss.html">Glossary</a></li><li><a href="dgui_template_exp.html#exp_cheatsheet">Expressions</a></li><li><a href="ref_builtins_alphaidx.html">?builtins</a></li><li><a href="ref_directive_alphaidx.html">#directives</a></li><li><a href="ref_specvar.html">.spec_vars</a></li><li><a href="app_faq.html">FAQ</a></li></ul></div></div></div> <div class="main-content site-width">
+ <div class="content-wrapper">
+ <div id="table-of-contents-wrapper" class="col-left">
+ <script>var breadcrumb = ["Apache FreeMarker Manual","Appendixes","Version history","2.1.1"];</script>
+ <script src="toc.js?1489402528979"></script>
+ <script src="docgen-resources/main.min.js?1489402528979"></script>
+ </div>
+<div class="col-right"><div class="page-content"><div class="page-title"><div class="pagers top"><a class="paging-arrow previous" href="versions_2_1_2.html"><span>Previous</span></a><a class="paging-arrow next" href="versions_2_1.html"><span>Next</span></a></div><div class="title-wrapper">
+<h1 class="content-header header-section1" id="versions_2_1_1" itemprop="headline">2.1.1</h1>
+</div></div><div class="page-menu">
+<div class="page-menu-title">Page Contents</div>
+<ul><li><a class="page-menu-link" href="#autoid_275" data-menu-target="autoid_275">Changes in FTL (FreeMarker Template Language)</a></li><li><a class="page-menu-link" href="#autoid_276" data-menu-target="autoid_276">Changes on the Java side</a></li></ul> </div><p>Date of release: 2002-11-04</p>
+
+
+
+
+<h2 class="content-header header-section2" id="autoid_275">Changes in FTL (FreeMarker Template Language)</h2>
+
+
+ <ul>
+ <li>
+ <p>Multi-type variables that are both string and number or
+ string and date are now output using their number or date value
+ instead of the string value when used in the
+ <code class="inline-code">${...}</code> interpolation. This practically makes
+ the string part of a string/number or a string/date variables
+ useless.</p>
+ </li>
+
+ <li>
+ <p>Bugfix: operator "or" (<code class="inline-code">||</code>)
+ worked wrongly when its left operand was a composite expression
+ (e.g., the second <code class="inline-code">||</code> in <code class="inline-code">false ||
+ true || false</code>; this was evaluated to
+ <code class="inline-code">false</code>, but it should be
+ <code class="inline-code">true</code>)</p>
+ </li>
+
+ <li>
+ <p>Bugfix: Less-than sign inside comments confused the FTL
+ parser (e.g. <code class="inline-code"><#-- blah < blah --></code>);
+ it commented out everything after the problematic
+ comment.</p>
+ </li>
+
+ <li>
+ <p>Bugfix: Comparing two numerical constants (e.g. <code class="inline-code">3
+ == 3</code>) caused internal error in the FTL parser, and
+ aborted template processing with error.</p>
+ </li>
+
+ <li>
+ <p>Experimental date/time type support was removed, since it
+ seems that this initial implementation was misguided. FreeMarker
+ 2.2 will certainly support data/time.</p>
+ </li>
+ </ul>
+
+
+
+
+
+<h2 class="content-header header-section2" id="autoid_276">Changes on the Java side</h2>
+
+
+ <ul>
+ <li>
+ <p>Bugfix: <code class="inline-code">Number</code>s wrapped with
+ <code class="inline-code">BEANS_WRAPPER</code> was displayed with the
+ <code class="inline-code">toString()</code> method of wrapped object. Now they
+ are rendered according to the <code class="inline-code">number_format</code>
+ setting, because multi-type variables that are both string and
+ number are now output using their number value instead of the
+ string value.</p>
+ </li>
+
+ <li>
+ <p>Experimental date/time type support was removed, since it
+ seems that this initial implementation was misguided. FreeMarker
+ 2.2 will certainly support data/time.</p>
+ </li>
+ </ul>
+ <div class="bottom-pagers-wrapper"><div class="pagers bottom"><a class="paging-arrow previous" href="versions_2_1_2.html"><span>Previous</span></a><a class="paging-arrow next" href="versions_2_1.html"><span>Next</span></a></div></div></div></div> </div>
+ </div>
+<div class="site-footer"><div class="site-width"><div class="footer-top"><div class="col-left sitemap"><div class="column"><h3 class="column-header">Overview</h3><ul><li><a href="http://freemarker.org/">What is FreeMarker?</a></li><li><a href="http://freemarker.org/freemarkerdownload.html">Download</a></li><li><a href="app_versions.html">Version history</a></li><li><a href="http://freemarker.org/history.html">About us</a></li><li><a itemprop="license" href="app_license.html">License</a></li></ul></div><div class="column"><h3 class="column-header">Handy stuff</h3><ul><li><a href="http://freemarker-online.kenshoo.com/">Try template online</a></li><li><a href="dgui_template_exp.html#exp_cheatsheet">Expressions cheatsheet</a></li><li><a href="ref_directive_alphaidx.html">#directives</a></li><li><a href="ref_builtins_alphaidx.html">?built_ins</a></li><li><a href="ref_specvar.html">.special_vars</a></li></ul></div><div class="column"><h3 class="column-header">Community</h3><ul><li><a href
="https://github.com/freemarker/freemarker">FreeMarker on Github</a></li><li><a href="https://twitter.com/freemarker">Follow us on Twitter</a></li><li><a href="https://issues.apache.org/jira/browse/FREEMARKER/">Report a bug</a></li><li><a href="http://stackoverflow.com/questions/ask?tags=freemarker">Ask a question</a></li><li><a href="http://freemarker.org/mailing-lists.html">Mailing lists</a></li></ul></div></div><div class="col-right"><ul class="social-icons"><li><a class="github" href="https://github.com/freemarker/freemarker">Github</a></li><li><a class="twitter" href="https://twitter.com/freemarker">Twitter</a></li><li><a class="stack-overflow" href="http://stackoverflow.com/questions/ask?tags=freemarker">Stack Overflow</a></li></ul><a class="xxe" href="http://www.xmlmind.com/xmleditor/" rel="nofollow" title="Edited with XMLMind XML Editor"><span>Edited with XMLMind XML Editor</span></a></div></div><div class="footer-bottom"> <p class="last-generated">
+Last generated:
+<time itemprop="dateModified" datetime="2017-03-13T10:55:28Z" title="Monday, March 13, 2017 10:55:28 AM GMT">2017-03-13 10:55:28 GMT</time>, for Freemarker 2.3.26 </p>
+<p class="copyright">
+� <span itemprop="copyrightYear">1999</span>\u20132017
+<a itemtype="http://schema.org/Organization" itemprop="copyrightHolder" href="http://apache.org/">The Apache Software Foundation</a>. Apache FreeMarker, FreeMarker, Apache Incubator, Apache, the Apache FreeMarker logo are trademarks of The Apache Software Foundation. </p>
+</div></div></div></body>
+</html>
http://git-wip-us.apache.org/repos/asf/incubator-freemarker-site/blob/52c070a9/builds/2.3.26-nightly/versions_2_1_2.html
----------------------------------------------------------------------
diff --git a/builds/2.3.26-nightly/versions_2_1_2.html b/builds/2.3.26-nightly/versions_2_1_2.html
new file mode 100644
index 0000000..81203aa
--- /dev/null
+++ b/builds/2.3.26-nightly/versions_2_1_2.html
@@ -0,0 +1,130 @@
+<!doctype html>
+<!-- Generated by FreeMarker/Docgen from DocBook -->
+<html lang="en" class="page-type-section">
+<head prefix="og: http://ogp.me/ns#">
+<meta charset="utf-8">
+<title>2.1.2 - Apache FreeMarker Manual</title>
+<meta http-equiv="X-UA-Compatible" content="IE=edge">
+<meta name="viewport" content="width=device-width,initial-scale=1">
+<meta name="format-detection" content="telephone=no">
+<meta property="og:site_name" content="Apache FreeMarker Manual">
+<meta property="og:title" content="2.1.2">
+<meta property="og:locale" content="en_US">
+<meta property="og:url" content="http://freemarker.org/docs/versions_2_1_2.html">
+<link rel="canonical" href="http://freemarker.org/docs/versions_2_1_2.html">
+<link rel="icon" href="favicon.png" type="image/png">
+<link rel="stylesheet" type="text/css" href="http://fonts.googleapis.com/css?family=Roboto:500,700,400,300|Droid+Sans+Mono">
+<link rel="stylesheet" type="text/css" href="docgen-resources/docgen.min.css?1489402528979">
+<script>
+(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+ga('create', 'UA-55420501-1', 'auto');
+ga('send', 'pageview');
+</script>
+</head>
+<body itemscope itemtype="https://schema.org/Code">
+ <meta itemprop="url" content="http://freemarker.org/docs/">
+ <meta itemprop="name" content="Apache FreeMarker Manual">
+
+ <!--[if lte IE 9]>
+ <div style="background-color: #C00; color: #fff; padding: 12px 24px;">Please use a modern browser to view this website.</div>
+ <![endif]--><div class="header-top-bg"><div class="site-width header-top"><a class="logo" href="http://freemarker.org" role="banner"> <img itemprop="image" src="logo.png" alt="FreeMarker">
+</a><ul class="tabs"><li><a href="http://freemarker.org/">Home</a></li><li class="current"><a href="index.html">Manual</a></li><li><a class="external" href="api/index.html">Java API</a></li></ul><ul class="secondary-tabs"><li><a class="tab icon-heart" href="http://freemarker.org/contribute.html" title="Contribute"><span>Contribute</span></a></li><li><a class="tab icon-bug" href="https://issues.apache.org/jira/browse/FREEMARKER/" title="Report a Bug"><span>Report a Bug</span></a></li><li><a class="tab icon-download" href="http://freemarker.org/freemarkerdownload.html" title="Download"><span>Download</span></a></li></ul></div></div><div class="header-bottom-bg"><div class="site-width search-row"><a href="index.html" class="navigation-header">Manual</a><div class="navigation-header"></div><form method="get" class="search-form" action="search-results.html"><fieldset><legend class="sr-only">Search form</legend><label for="search-field" class="sr-only">Search query</label><input id="searc
h-field" name="q" type="search" class="search-input" placeholder="Search" spellcheck="false" autocorrect="off" autocomplete="off"><button type="submit" class="search-btn"><span class="sr-only">Search</span></button></fieldset></form></div><div class="site-width breadcrumb-row"><ul class="breadcrumb" itemscope itemtype="http://schema.org/BreadcrumbList"><li class="step-0" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a class="label" itemprop="item" href="index.html"><span itemprop="name">Apache FreeMarker Manual</span></a></li><li class="step-1" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a class="label" itemprop="item" href="app.html"><span itemprop="name">Appendixes</span></a></li><li class="step-2" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a class="label" itemprop="item" href="app_versions.html"><span itemprop="name">Version history</span></a></li><li class="step-3" itemprop="itemListEl
ement" itemscope itemtype="http://schema.org/ListItem"><a class="label" itemprop="item" href="versions_2_1_2.html"><span itemprop="name">2.1.2</span></a></li></ul><div class="bookmarks" title="Bookmarks"><span class="sr-only">Bookmarks:</span><ul class="bookmark-list"><li><a href="alphaidx.html">Alpha. index</a></li><li><a href="gloss.html">Glossary</a></li><li><a href="dgui_template_exp.html#exp_cheatsheet">Expressions</a></li><li><a href="ref_builtins_alphaidx.html">?builtins</a></li><li><a href="ref_directive_alphaidx.html">#directives</a></li><li><a href="ref_specvar.html">.spec_vars</a></li><li><a href="app_faq.html">FAQ</a></li></ul></div></div></div> <div class="main-content site-width">
+ <div class="content-wrapper">
+ <div id="table-of-contents-wrapper" class="col-left">
+ <script>var breadcrumb = ["Apache FreeMarker Manual","Appendixes","Version history","2.1.2"];</script>
+ <script src="toc.js?1489402528979"></script>
+ <script src="docgen-resources/main.min.js?1489402528979"></script>
+ </div>
+<div class="col-right"><div class="page-content"><div class="page-title"><div class="pagers top"><a class="paging-arrow previous" href="versions_2_1_3.html"><span>Previous</span></a><a class="paging-arrow next" href="versions_2_1_1.html"><span>Next</span></a></div><div class="title-wrapper">
+<h1 class="content-header header-section1" id="versions_2_1_2" itemprop="headline">2.1.2</h1>
+</div></div><div class="page-menu">
+<div class="page-menu-title">Page Contents</div>
+<ul><li><a class="page-menu-link" href="#autoid_273" data-menu-target="autoid_273">Changes in FTL (FreeMarker Template Language)</a></li><li><a class="page-menu-link" href="#autoid_274" data-menu-target="autoid_274">Other changes</a></li></ul> </div><p>Date of release: 2002-11-28</p>
+
+
+
+
+<h2 class="content-header header-section2" id="autoid_273">Changes in FTL (FreeMarker Template Language)</h2>
+
+
+ <ul>
+ <li>
+ <p><code class="inline-code">FreeMarkerServlet</code> now has a setting for
+ the <code class="inline-code">Content-Type</code> header of the response,
+ defaulting to <code class="inline-code">text/html</code>. Previously it set no
+ content type, which made it not play nicely when integrated with
+ software that expected it (i.e. OpenSymphony SiteMesh).</p>
+ </li>
+
+ <li>
+ <p><code class="inline-code">FreeMarkerServlet</code> now works correctly
+ when mapped to an URL extension instead of URL path
+ prefix.</p>
+ </li>
+
+ <li>
+ <p>You can emulate <code class="inline-code">include</code> directive call
+ within Java code by calling
+ <code class="inline-code">Environment.include(<em class="code-color">templateName</em>,
+ <em class="code-color">charset</em>,
+ <em class="code-color">parse</em>)</code>.</p>
+ </li>
+ </ul>
+
+ <ul>
+ <li>
+ <p>Bugfix: When <code class="inline-code">Template.process()</code> was
+ called from another template processing, it set
+ <code class="inline-code">currentEnvironment</code> to null when it returned,
+ thus crashed the parent template processing.</p>
+ </li>
+
+ <li>
+ <p>Bugfix: the <code class="inline-code">_descendant</code> key in JDOM
+ support incorrectly left the document root element out of the
+ result when applied to a Document node.</p>
+ </li>
+
+ <li>
+ <p>Bugfix: because we incorrectly assumed certain behavior of
+ JDK 1.4 Beans introspector, calls to public interface methods on
+ non-public classes that implement the interface were causing
+ exceptions on JDK 1.4</p>
+ </li>
+ </ul>
+
+
+
+
+
+<h2 class="content-header header-section2" id="autoid_274">Other changes</h2>
+
+
+ <ul>
+ <li>
+ <p>Various minor supplements to the manual.</p>
+ </li>
+
+ <li>
+ <p>Documentation HTML pages don't try to load the SourceForge
+ logo from the Internet anymore.</p>
+ </li>
+
+ <li>
+ <p>The default ant target is <code class="inline-code">jar</code>, not
+ <code class="inline-code">dist</code>.</p>
+ </li>
+ </ul>
+ <div class="bottom-pagers-wrapper"><div class="pagers bottom"><a class="paging-arrow previous" href="versions_2_1_3.html"><span>Previous</span></a><a class="paging-arrow next" href="versions_2_1_1.html"><span>Next</span></a></div></div></div></div> </div>
+ </div>
+<div class="site-footer"><div class="site-width"><div class="footer-top"><div class="col-left sitemap"><div class="column"><h3 class="column-header">Overview</h3><ul><li><a href="http://freemarker.org/">What is FreeMarker?</a></li><li><a href="http://freemarker.org/freemarkerdownload.html">Download</a></li><li><a href="app_versions.html">Version history</a></li><li><a href="http://freemarker.org/history.html">About us</a></li><li><a itemprop="license" href="app_license.html">License</a></li></ul></div><div class="column"><h3 class="column-header">Handy stuff</h3><ul><li><a href="http://freemarker-online.kenshoo.com/">Try template online</a></li><li><a href="dgui_template_exp.html#exp_cheatsheet">Expressions cheatsheet</a></li><li><a href="ref_directive_alphaidx.html">#directives</a></li><li><a href="ref_builtins_alphaidx.html">?built_ins</a></li><li><a href="ref_specvar.html">.special_vars</a></li></ul></div><div class="column"><h3 class="column-header">Community</h3><ul><li><a href
="https://github.com/freemarker/freemarker">FreeMarker on Github</a></li><li><a href="https://twitter.com/freemarker">Follow us on Twitter</a></li><li><a href="https://issues.apache.org/jira/browse/FREEMARKER/">Report a bug</a></li><li><a href="http://stackoverflow.com/questions/ask?tags=freemarker">Ask a question</a></li><li><a href="http://freemarker.org/mailing-lists.html">Mailing lists</a></li></ul></div></div><div class="col-right"><ul class="social-icons"><li><a class="github" href="https://github.com/freemarker/freemarker">Github</a></li><li><a class="twitter" href="https://twitter.com/freemarker">Twitter</a></li><li><a class="stack-overflow" href="http://stackoverflow.com/questions/ask?tags=freemarker">Stack Overflow</a></li></ul><a class="xxe" href="http://www.xmlmind.com/xmleditor/" rel="nofollow" title="Edited with XMLMind XML Editor"><span>Edited with XMLMind XML Editor</span></a></div></div><div class="footer-bottom"> <p class="last-generated">
+Last generated:
+<time itemprop="dateModified" datetime="2017-03-13T10:55:28Z" title="Monday, March 13, 2017 10:55:28 AM GMT">2017-03-13 10:55:28 GMT</time>, for Freemarker 2.3.26 </p>
+<p class="copyright">
+� <span itemprop="copyrightYear">1999</span>\u20132017
+<a itemtype="http://schema.org/Organization" itemprop="copyrightHolder" href="http://apache.org/">The Apache Software Foundation</a>. Apache FreeMarker, FreeMarker, Apache Incubator, Apache, the Apache FreeMarker logo are trademarks of The Apache Software Foundation. </p>
+</div></div></div></body>
+</html>
http://git-wip-us.apache.org/repos/asf/incubator-freemarker-site/blob/52c070a9/builds/2.3.26-nightly/versions_2_1_3.html
----------------------------------------------------------------------
diff --git a/builds/2.3.26-nightly/versions_2_1_3.html b/builds/2.3.26-nightly/versions_2_1_3.html
new file mode 100644
index 0000000..a7e5335
--- /dev/null
+++ b/builds/2.3.26-nightly/versions_2_1_3.html
@@ -0,0 +1,94 @@
+<!doctype html>
+<!-- Generated by FreeMarker/Docgen from DocBook -->
+<html lang="en" class="page-type-section">
+<head prefix="og: http://ogp.me/ns#">
+<meta charset="utf-8">
+<title>2.1.3 - Apache FreeMarker Manual</title>
+<meta http-equiv="X-UA-Compatible" content="IE=edge">
+<meta name="viewport" content="width=device-width,initial-scale=1">
+<meta name="format-detection" content="telephone=no">
+<meta property="og:site_name" content="Apache FreeMarker Manual">
+<meta property="og:title" content="2.1.3">
+<meta property="og:locale" content="en_US">
+<meta property="og:url" content="http://freemarker.org/docs/versions_2_1_3.html">
+<link rel="canonical" href="http://freemarker.org/docs/versions_2_1_3.html">
+<link rel="icon" href="favicon.png" type="image/png">
+<link rel="stylesheet" type="text/css" href="http://fonts.googleapis.com/css?family=Roboto:500,700,400,300|Droid+Sans+Mono">
+<link rel="stylesheet" type="text/css" href="docgen-resources/docgen.min.css?1489402528979">
+<script>
+(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+ga('create', 'UA-55420501-1', 'auto');
+ga('send', 'pageview');
+</script>
+</head>
+<body itemscope itemtype="https://schema.org/Code">
+ <meta itemprop="url" content="http://freemarker.org/docs/">
+ <meta itemprop="name" content="Apache FreeMarker Manual">
+
+ <!--[if lte IE 9]>
+ <div style="background-color: #C00; color: #fff; padding: 12px 24px;">Please use a modern browser to view this website.</div>
+ <![endif]--><div class="header-top-bg"><div class="site-width header-top"><a class="logo" href="http://freemarker.org" role="banner"> <img itemprop="image" src="logo.png" alt="FreeMarker">
+</a><ul class="tabs"><li><a href="http://freemarker.org/">Home</a></li><li class="current"><a href="index.html">Manual</a></li><li><a class="external" href="api/index.html">Java API</a></li></ul><ul class="secondary-tabs"><li><a class="tab icon-heart" href="http://freemarker.org/contribute.html" title="Contribute"><span>Contribute</span></a></li><li><a class="tab icon-bug" href="https://issues.apache.org/jira/browse/FREEMARKER/" title="Report a Bug"><span>Report a Bug</span></a></li><li><a class="tab icon-download" href="http://freemarker.org/freemarkerdownload.html" title="Download"><span>Download</span></a></li></ul></div></div><div class="header-bottom-bg"><div class="site-width search-row"><a href="index.html" class="navigation-header">Manual</a><div class="navigation-header"></div><form method="get" class="search-form" action="search-results.html"><fieldset><legend class="sr-only">Search form</legend><label for="search-field" class="sr-only">Search query</label><input id="searc
h-field" name="q" type="search" class="search-input" placeholder="Search" spellcheck="false" autocorrect="off" autocomplete="off"><button type="submit" class="search-btn"><span class="sr-only">Search</span></button></fieldset></form></div><div class="site-width breadcrumb-row"><ul class="breadcrumb" itemscope itemtype="http://schema.org/BreadcrumbList"><li class="step-0" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a class="label" itemprop="item" href="index.html"><span itemprop="name">Apache FreeMarker Manual</span></a></li><li class="step-1" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a class="label" itemprop="item" href="app.html"><span itemprop="name">Appendixes</span></a></li><li class="step-2" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a class="label" itemprop="item" href="app_versions.html"><span itemprop="name">Version history</span></a></li><li class="step-3" itemprop="itemListEl
ement" itemscope itemtype="http://schema.org/ListItem"><a class="label" itemprop="item" href="versions_2_1_3.html"><span itemprop="name">2.1.3</span></a></li></ul><div class="bookmarks" title="Bookmarks"><span class="sr-only">Bookmarks:</span><ul class="bookmark-list"><li><a href="alphaidx.html">Alpha. index</a></li><li><a href="gloss.html">Glossary</a></li><li><a href="dgui_template_exp.html#exp_cheatsheet">Expressions</a></li><li><a href="ref_builtins_alphaidx.html">?builtins</a></li><li><a href="ref_directive_alphaidx.html">#directives</a></li><li><a href="ref_specvar.html">.spec_vars</a></li><li><a href="app_faq.html">FAQ</a></li></ul></div></div></div> <div class="main-content site-width">
+ <div class="content-wrapper">
+ <div id="table-of-contents-wrapper" class="col-left">
+ <script>var breadcrumb = ["Apache FreeMarker Manual","Appendixes","Version history","2.1.3"];</script>
+ <script src="toc.js?1489402528979"></script>
+ <script src="docgen-resources/main.min.js?1489402528979"></script>
+ </div>
+<div class="col-right"><div class="page-content"><div class="page-title"><div class="pagers top"><a class="paging-arrow previous" href="versions_2_1_4.html"><span>Previous</span></a><a class="paging-arrow next" href="versions_2_1_2.html"><span>Next</span></a></div><div class="title-wrapper">
+<h1 class="content-header header-section1" id="versions_2_1_3" itemprop="headline">2.1.3</h1>
+</div></div><div class="page-menu">
+<div class="page-menu-title">Page Contents</div>
+<ul><li><a class="page-menu-link" href="#autoid_271" data-menu-target="autoid_271">Changes on the FTL side</a></li><li><a class="page-menu-link" href="#autoid_272" data-menu-target="autoid_272">Other changes</a></li></ul> </div><p>Date of release: 2002-12-09</p>
+
+
+
+
+<h2 class="content-header header-section2" id="autoid_271">Changes on the FTL side</h2>
+
+
+ <ul>
+ <li>
+ <p>Bugfix: <code class="inline-code">cap_first</code> built-in did what
+ <code class="inline-code">double</code> built-in does.</p>
+ </li>
+ </ul>
+
+
+
+
+
+<h2 class="content-header header-section2" id="autoid_272">Other changes</h2>
+
+
+ <ul>
+ <li>
+ <p>The official extension of FreeMarker template files is
+ <code class="inline-code">ftl</code> from now, not <code class="inline-code">fm</code>.
+ (This is the name of the template language; FTL, for FreeMarker
+ Template Language.) Of course you can use any extensions, since
+ FreeMarker does not deal with the file extension. But we
+ recommend <code class="inline-code">ftl</code> extension as default.</p>
+ </li>
+
+ <li>
+ <p>Web application examples got tweaked again, as under JDK
+ 1.4 a class in an explicit (named) package can no longer import
+ classes from the default (unnamed) package. Our webapp example
+ was using classes in the default package, they are now moved
+ into named packages.</p>
+ </li>
+ </ul>
+ <div class="bottom-pagers-wrapper"><div class="pagers bottom"><a class="paging-arrow previous" href="versions_2_1_4.html"><span>Previous</span></a><a class="paging-arrow next" href="versions_2_1_2.html"><span>Next</span></a></div></div></div></div> </div>
+ </div>
+<div class="site-footer"><div class="site-width"><div class="footer-top"><div class="col-left sitemap"><div class="column"><h3 class="column-header">Overview</h3><ul><li><a href="http://freemarker.org/">What is FreeMarker?</a></li><li><a href="http://freemarker.org/freemarkerdownload.html">Download</a></li><li><a href="app_versions.html">Version history</a></li><li><a href="http://freemarker.org/history.html">About us</a></li><li><a itemprop="license" href="app_license.html">License</a></li></ul></div><div class="column"><h3 class="column-header">Handy stuff</h3><ul><li><a href="http://freemarker-online.kenshoo.com/">Try template online</a></li><li><a href="dgui_template_exp.html#exp_cheatsheet">Expressions cheatsheet</a></li><li><a href="ref_directive_alphaidx.html">#directives</a></li><li><a href="ref_builtins_alphaidx.html">?built_ins</a></li><li><a href="ref_specvar.html">.special_vars</a></li></ul></div><div class="column"><h3 class="column-header">Community</h3><ul><li><a href
="https://github.com/freemarker/freemarker">FreeMarker on Github</a></li><li><a href="https://twitter.com/freemarker">Follow us on Twitter</a></li><li><a href="https://issues.apache.org/jira/browse/FREEMARKER/">Report a bug</a></li><li><a href="http://stackoverflow.com/questions/ask?tags=freemarker">Ask a question</a></li><li><a href="http://freemarker.org/mailing-lists.html">Mailing lists</a></li></ul></div></div><div class="col-right"><ul class="social-icons"><li><a class="github" href="https://github.com/freemarker/freemarker">Github</a></li><li><a class="twitter" href="https://twitter.com/freemarker">Twitter</a></li><li><a class="stack-overflow" href="http://stackoverflow.com/questions/ask?tags=freemarker">Stack Overflow</a></li></ul><a class="xxe" href="http://www.xmlmind.com/xmleditor/" rel="nofollow" title="Edited with XMLMind XML Editor"><span>Edited with XMLMind XML Editor</span></a></div></div><div class="footer-bottom"> <p class="last-generated">
+Last generated:
+<time itemprop="dateModified" datetime="2017-03-13T10:55:28Z" title="Monday, March 13, 2017 10:55:28 AM GMT">2017-03-13 10:55:28 GMT</time>, for Freemarker 2.3.26 </p>
+<p class="copyright">
+� <span itemprop="copyrightYear">1999</span>\u20132017
+<a itemtype="http://schema.org/Organization" itemprop="copyrightHolder" href="http://apache.org/">The Apache Software Foundation</a>. Apache FreeMarker, FreeMarker, Apache Incubator, Apache, the Apache FreeMarker logo are trademarks of The Apache Software Foundation. </p>
+</div></div></div></body>
+</html>
http://git-wip-us.apache.org/repos/asf/incubator-freemarker-site/blob/52c070a9/builds/2.3.26-nightly/versions_2_1_4.html
----------------------------------------------------------------------
diff --git a/builds/2.3.26-nightly/versions_2_1_4.html b/builds/2.3.26-nightly/versions_2_1_4.html
new file mode 100644
index 0000000..80de0ac
--- /dev/null
+++ b/builds/2.3.26-nightly/versions_2_1_4.html
@@ -0,0 +1,73 @@
+<!doctype html>
+<!-- Generated by FreeMarker/Docgen from DocBook -->
+<html lang="en" class="page-type-section">
+<head prefix="og: http://ogp.me/ns#">
+<meta charset="utf-8">
+<title>2.1.4 - Apache FreeMarker Manual</title>
+<meta http-equiv="X-UA-Compatible" content="IE=edge">
+<meta name="viewport" content="width=device-width,initial-scale=1">
+<meta name="format-detection" content="telephone=no">
+<meta property="og:site_name" content="Apache FreeMarker Manual">
+<meta property="og:title" content="2.1.4">
+<meta property="og:locale" content="en_US">
+<meta property="og:url" content="http://freemarker.org/docs/versions_2_1_4.html">
+<link rel="canonical" href="http://freemarker.org/docs/versions_2_1_4.html">
+<link rel="icon" href="favicon.png" type="image/png">
+<link rel="stylesheet" type="text/css" href="http://fonts.googleapis.com/css?family=Roboto:500,700,400,300|Droid+Sans+Mono">
+<link rel="stylesheet" type="text/css" href="docgen-resources/docgen.min.css?1489402528979">
+<script>
+(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+ga('create', 'UA-55420501-1', 'auto');
+ga('send', 'pageview');
+</script>
+</head>
+<body itemscope itemtype="https://schema.org/Code">
+ <meta itemprop="url" content="http://freemarker.org/docs/">
+ <meta itemprop="name" content="Apache FreeMarker Manual">
+
+ <!--[if lte IE 9]>
+ <div style="background-color: #C00; color: #fff; padding: 12px 24px;">Please use a modern browser to view this website.</div>
+ <![endif]--><div class="header-top-bg"><div class="site-width header-top"><a class="logo" href="http://freemarker.org" role="banner"> <img itemprop="image" src="logo.png" alt="FreeMarker">
+</a><ul class="tabs"><li><a href="http://freemarker.org/">Home</a></li><li class="current"><a href="index.html">Manual</a></li><li><a class="external" href="api/index.html">Java API</a></li></ul><ul class="secondary-tabs"><li><a class="tab icon-heart" href="http://freemarker.org/contribute.html" title="Contribute"><span>Contribute</span></a></li><li><a class="tab icon-bug" href="https://issues.apache.org/jira/browse/FREEMARKER/" title="Report a Bug"><span>Report a Bug</span></a></li><li><a class="tab icon-download" href="http://freemarker.org/freemarkerdownload.html" title="Download"><span>Download</span></a></li></ul></div></div><div class="header-bottom-bg"><div class="site-width search-row"><a href="index.html" class="navigation-header">Manual</a><div class="navigation-header"></div><form method="get" class="search-form" action="search-results.html"><fieldset><legend class="sr-only">Search form</legend><label for="search-field" class="sr-only">Search query</label><input id="searc
h-field" name="q" type="search" class="search-input" placeholder="Search" spellcheck="false" autocorrect="off" autocomplete="off"><button type="submit" class="search-btn"><span class="sr-only">Search</span></button></fieldset></form></div><div class="site-width breadcrumb-row"><ul class="breadcrumb" itemscope itemtype="http://schema.org/BreadcrumbList"><li class="step-0" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a class="label" itemprop="item" href="index.html"><span itemprop="name">Apache FreeMarker Manual</span></a></li><li class="step-1" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a class="label" itemprop="item" href="app.html"><span itemprop="name">Appendixes</span></a></li><li class="step-2" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a class="label" itemprop="item" href="app_versions.html"><span itemprop="name">Version history</span></a></li><li class="step-3" itemprop="itemListEl
ement" itemscope itemtype="http://schema.org/ListItem"><a class="label" itemprop="item" href="versions_2_1_4.html"><span itemprop="name">2.1.4</span></a></li></ul><div class="bookmarks" title="Bookmarks"><span class="sr-only">Bookmarks:</span><ul class="bookmark-list"><li><a href="alphaidx.html">Alpha. index</a></li><li><a href="gloss.html">Glossary</a></li><li><a href="dgui_template_exp.html#exp_cheatsheet">Expressions</a></li><li><a href="ref_builtins_alphaidx.html">?builtins</a></li><li><a href="ref_directive_alphaidx.html">#directives</a></li><li><a href="ref_specvar.html">.spec_vars</a></li><li><a href="app_faq.html">FAQ</a></li></ul></div></div></div> <div class="main-content site-width">
+ <div class="content-wrapper">
+ <div id="table-of-contents-wrapper" class="col-left">
+ <script>var breadcrumb = ["Apache FreeMarker Manual","Appendixes","Version history","2.1.4"];</script>
+ <script src="toc.js?1489402528979"></script>
+ <script src="docgen-resources/main.min.js?1489402528979"></script>
+ </div>
+<div class="col-right"><div class="page-content"><div class="page-title"><div class="pagers top"><a class="paging-arrow previous" href="versions_2_1_5.html"><span>Previous</span></a><a class="paging-arrow next" href="versions_2_1_3.html"><span>Next</span></a></div><div class="title-wrapper">
+<h1 class="content-header header-section1" id="versions_2_1_4" itemprop="headline">2.1.4</h1>
+</div></div><p>Date of release: 2002-12-26</p>
+
+
+
+
+<h2 class="content-header header-section2" id="autoid_270">Changes on the Java side</h2>
+
+
+ <ul>
+ <li>
+ <p>Bugfix: Log4J is now found when automatically discovering
+ the logging library to use.</p>
+ </li>
+
+ <li>
+ <p>Bugfix: An exception is no longer thrown in the static
+ initializer of the <code class="inline-code">Configuration</code> if the
+ directory specified in the <code class="inline-code">"user.dir"</code> system
+ property is not readable.</p>
+ </li>
+ </ul>
+ <div class="bottom-pagers-wrapper"><div class="pagers bottom"><a class="paging-arrow previous" href="versions_2_1_5.html"><span>Previous</span></a><a class="paging-arrow next" href="versions_2_1_3.html"><span>Next</span></a></div></div></div></div> </div>
+ </div>
+<div class="site-footer"><div class="site-width"><div class="footer-top"><div class="col-left sitemap"><div class="column"><h3 class="column-header">Overview</h3><ul><li><a href="http://freemarker.org/">What is FreeMarker?</a></li><li><a href="http://freemarker.org/freemarkerdownload.html">Download</a></li><li><a href="app_versions.html">Version history</a></li><li><a href="http://freemarker.org/history.html">About us</a></li><li><a itemprop="license" href="app_license.html">License</a></li></ul></div><div class="column"><h3 class="column-header">Handy stuff</h3><ul><li><a href="http://freemarker-online.kenshoo.com/">Try template online</a></li><li><a href="dgui_template_exp.html#exp_cheatsheet">Expressions cheatsheet</a></li><li><a href="ref_directive_alphaidx.html">#directives</a></li><li><a href="ref_builtins_alphaidx.html">?built_ins</a></li><li><a href="ref_specvar.html">.special_vars</a></li></ul></div><div class="column"><h3 class="column-header">Community</h3><ul><li><a href
="https://github.com/freemarker/freemarker">FreeMarker on Github</a></li><li><a href="https://twitter.com/freemarker">Follow us on Twitter</a></li><li><a href="https://issues.apache.org/jira/browse/FREEMARKER/">Report a bug</a></li><li><a href="http://stackoverflow.com/questions/ask?tags=freemarker">Ask a question</a></li><li><a href="http://freemarker.org/mailing-lists.html">Mailing lists</a></li></ul></div></div><div class="col-right"><ul class="social-icons"><li><a class="github" href="https://github.com/freemarker/freemarker">Github</a></li><li><a class="twitter" href="https://twitter.com/freemarker">Twitter</a></li><li><a class="stack-overflow" href="http://stackoverflow.com/questions/ask?tags=freemarker">Stack Overflow</a></li></ul><a class="xxe" href="http://www.xmlmind.com/xmleditor/" rel="nofollow" title="Edited with XMLMind XML Editor"><span>Edited with XMLMind XML Editor</span></a></div></div><div class="footer-bottom"> <p class="last-generated">
+Last generated:
+<time itemprop="dateModified" datetime="2017-03-13T10:55:28Z" title="Monday, March 13, 2017 10:55:28 AM GMT">2017-03-13 10:55:28 GMT</time>, for Freemarker 2.3.26 </p>
+<p class="copyright">
+� <span itemprop="copyrightYear">1999</span>\u20132017
+<a itemtype="http://schema.org/Organization" itemprop="copyrightHolder" href="http://apache.org/">The Apache Software Foundation</a>. Apache FreeMarker, FreeMarker, Apache Incubator, Apache, the Apache FreeMarker logo are trademarks of The Apache Software Foundation. </p>
+</div></div></div></body>
+</html>
http://git-wip-us.apache.org/repos/asf/incubator-freemarker-site/blob/52c070a9/builds/2.3.26-nightly/versions_2_1_5.html
----------------------------------------------------------------------
diff --git a/builds/2.3.26-nightly/versions_2_1_5.html b/builds/2.3.26-nightly/versions_2_1_5.html
new file mode 100644
index 0000000..0277751
--- /dev/null
+++ b/builds/2.3.26-nightly/versions_2_1_5.html
@@ -0,0 +1,88 @@
+<!doctype html>
+<!-- Generated by FreeMarker/Docgen from DocBook -->
+<html lang="en" class="page-type-section">
+<head prefix="og: http://ogp.me/ns#">
+<meta charset="utf-8">
+<title>2.1.5 - Apache FreeMarker Manual</title>
+<meta http-equiv="X-UA-Compatible" content="IE=edge">
+<meta name="viewport" content="width=device-width,initial-scale=1">
+<meta name="format-detection" content="telephone=no">
+<meta property="og:site_name" content="Apache FreeMarker Manual">
+<meta property="og:title" content="2.1.5">
+<meta property="og:locale" content="en_US">
+<meta property="og:url" content="http://freemarker.org/docs/versions_2_1_5.html">
+<link rel="canonical" href="http://freemarker.org/docs/versions_2_1_5.html">
+<link rel="icon" href="favicon.png" type="image/png">
+<link rel="stylesheet" type="text/css" href="http://fonts.googleapis.com/css?family=Roboto:500,700,400,300|Droid+Sans+Mono">
+<link rel="stylesheet" type="text/css" href="docgen-resources/docgen.min.css?1489402528979">
+<script>
+(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+ga('create', 'UA-55420501-1', 'auto');
+ga('send', 'pageview');
+</script>
+</head>
+<body itemscope itemtype="https://schema.org/Code">
+ <meta itemprop="url" content="http://freemarker.org/docs/">
+ <meta itemprop="name" content="Apache FreeMarker Manual">
+
+ <!--[if lte IE 9]>
+ <div style="background-color: #C00; color: #fff; padding: 12px 24px;">Please use a modern browser to view this website.</div>
+ <![endif]--><div class="header-top-bg"><div class="site-width header-top"><a class="logo" href="http://freemarker.org" role="banner"> <img itemprop="image" src="logo.png" alt="FreeMarker">
+</a><ul class="tabs"><li><a href="http://freemarker.org/">Home</a></li><li class="current"><a href="index.html">Manual</a></li><li><a class="external" href="api/index.html">Java API</a></li></ul><ul class="secondary-tabs"><li><a class="tab icon-heart" href="http://freemarker.org/contribute.html" title="Contribute"><span>Contribute</span></a></li><li><a class="tab icon-bug" href="https://issues.apache.org/jira/browse/FREEMARKER/" title="Report a Bug"><span>Report a Bug</span></a></li><li><a class="tab icon-download" href="http://freemarker.org/freemarkerdownload.html" title="Download"><span>Download</span></a></li></ul></div></div><div class="header-bottom-bg"><div class="site-width search-row"><a href="index.html" class="navigation-header">Manual</a><div class="navigation-header"></div><form method="get" class="search-form" action="search-results.html"><fieldset><legend class="sr-only">Search form</legend><label for="search-field" class="sr-only">Search query</label><input id="searc
h-field" name="q" type="search" class="search-input" placeholder="Search" spellcheck="false" autocorrect="off" autocomplete="off"><button type="submit" class="search-btn"><span class="sr-only">Search</span></button></fieldset></form></div><div class="site-width breadcrumb-row"><ul class="breadcrumb" itemscope itemtype="http://schema.org/BreadcrumbList"><li class="step-0" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a class="label" itemprop="item" href="index.html"><span itemprop="name">Apache FreeMarker Manual</span></a></li><li class="step-1" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a class="label" itemprop="item" href="app.html"><span itemprop="name">Appendixes</span></a></li><li class="step-2" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a class="label" itemprop="item" href="app_versions.html"><span itemprop="name">Version history</span></a></li><li class="step-3" itemprop="itemListEl
ement" itemscope itemtype="http://schema.org/ListItem"><a class="label" itemprop="item" href="versions_2_1_5.html"><span itemprop="name">2.1.5</span></a></li></ul><div class="bookmarks" title="Bookmarks"><span class="sr-only">Bookmarks:</span><ul class="bookmark-list"><li><a href="alphaidx.html">Alpha. index</a></li><li><a href="gloss.html">Glossary</a></li><li><a href="dgui_template_exp.html#exp_cheatsheet">Expressions</a></li><li><a href="ref_builtins_alphaidx.html">?builtins</a></li><li><a href="ref_directive_alphaidx.html">#directives</a></li><li><a href="ref_specvar.html">.spec_vars</a></li><li><a href="app_faq.html">FAQ</a></li></ul></div></div></div> <div class="main-content site-width">
+ <div class="content-wrapper">
+ <div id="table-of-contents-wrapper" class="col-left">
+ <script>var breadcrumb = ["Apache FreeMarker Manual","Appendixes","Version history","2.1.5"];</script>
+ <script src="toc.js?1489402528979"></script>
+ <script src="docgen-resources/main.min.js?1489402528979"></script>
+ </div>
+<div class="col-right"><div class="page-content"><div class="page-title"><div class="pagers top"><a class="paging-arrow previous" href="versions_2_2.html"><span>Previous</span></a><a class="paging-arrow next" href="versions_2_1_4.html"><span>Next</span></a></div><div class="title-wrapper">
+<h1 class="content-header header-section1" id="versions_2_1_5" itemprop="headline">2.1.5</h1>
+</div></div><p>Date of release: 2003-02-08</p>
+
+
+
+
+<h2 class="content-header header-section2" id="autoid_269">Changes on the Java side</h2>
+
+
+ <ul>
+ <li>
+ <p>Bugfix: Fixed a bug that forced the cache to frequently
+ reload templates accessed through URL and multi template
+ loaders: Templates loaded with
+ <code class="inline-code">URLTemplateLoader</code> subclasses and
+ <code class="inline-code">MultiTemplateLoader</code> was removed from the
+ template cache after the template update delay has elapsed (5
+ seconds by default) even if the template file was unchanged.
+ This can cause lot of extra load for a high-traffic server if
+ you have many templates or if the template update delay was set
+ to 0 second.)</p>
+ </li>
+
+ <li>
+ <p>Bugfix: Many anomalies in the
+ <code class="inline-code">JythonWrapper</code> were resolved, making the
+ integration with Jython much smoother: Jython wrapper can now
+ wrap arbitrary Java objects, not only
+ <code class="inline-code">PyObject</code>-s. If an object is passed to the
+ wrapper that is neither a <code class="inline-code">TemplateModel</code>, nor
+ a <code class="inline-code">PyObject</code>, it is first coerced into a
+ <code class="inline-code">PyObject</code> using Jython's own wrapping
+ machinery, and then wrapped into a
+ <code class="inline-code">TemplateModel</code> as any other
+ <code class="inline-code">PyObject</code>.</p>
+ </li>
+ </ul>
+ <div class="bottom-pagers-wrapper"><div class="pagers bottom"><a class="paging-arrow previous" href="versions_2_2.html"><span>Previous</span></a><a class="paging-arrow next" href="versions_2_1_4.html"><span>Next</span></a></div></div></div></div> </div>
+ </div>
+<div class="site-footer"><div class="site-width"><div class="footer-top"><div class="col-left sitemap"><div class="column"><h3 class="column-header">Overview</h3><ul><li><a href="http://freemarker.org/">What is FreeMarker?</a></li><li><a href="http://freemarker.org/freemarkerdownload.html">Download</a></li><li><a href="app_versions.html">Version history</a></li><li><a href="http://freemarker.org/history.html">About us</a></li><li><a itemprop="license" href="app_license.html">License</a></li></ul></div><div class="column"><h3 class="column-header">Handy stuff</h3><ul><li><a href="http://freemarker-online.kenshoo.com/">Try template online</a></li><li><a href="dgui_template_exp.html#exp_cheatsheet">Expressions cheatsheet</a></li><li><a href="ref_directive_alphaidx.html">#directives</a></li><li><a href="ref_builtins_alphaidx.html">?built_ins</a></li><li><a href="ref_specvar.html">.special_vars</a></li></ul></div><div class="column"><h3 class="column-header">Community</h3><ul><li><a href
="https://github.com/freemarker/freemarker">FreeMarker on Github</a></li><li><a href="https://twitter.com/freemarker">Follow us on Twitter</a></li><li><a href="https://issues.apache.org/jira/browse/FREEMARKER/">Report a bug</a></li><li><a href="http://stackoverflow.com/questions/ask?tags=freemarker">Ask a question</a></li><li><a href="http://freemarker.org/mailing-lists.html">Mailing lists</a></li></ul></div></div><div class="col-right"><ul class="social-icons"><li><a class="github" href="https://github.com/freemarker/freemarker">Github</a></li><li><a class="twitter" href="https://twitter.com/freemarker">Twitter</a></li><li><a class="stack-overflow" href="http://stackoverflow.com/questions/ask?tags=freemarker">Stack Overflow</a></li></ul><a class="xxe" href="http://www.xmlmind.com/xmleditor/" rel="nofollow" title="Edited with XMLMind XML Editor"><span>Edited with XMLMind XML Editor</span></a></div></div><div class="footer-bottom"> <p class="last-generated">
+Last generated:
+<time itemprop="dateModified" datetime="2017-03-13T10:55:28Z" title="Monday, March 13, 2017 10:55:28 AM GMT">2017-03-13 10:55:28 GMT</time>, for Freemarker 2.3.26 </p>
+<p class="copyright">
+� <span itemprop="copyrightYear">1999</span>\u20132017
+<a itemtype="http://schema.org/Organization" itemprop="copyrightHolder" href="http://apache.org/">The Apache Software Foundation</a>. Apache FreeMarker, FreeMarker, Apache Incubator, Apache, the Apache FreeMarker logo are trademarks of The Apache Software Foundation. </p>
+</div></div></div></body>
+</html>