http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/FirstMatchTemplateConfigurationFactory.html
----------------------------------------------------------------------
diff --git 
a/docs/api/freemarker/cache/FirstMatchTemplateConfigurationFactory.html 
b/docs/api/freemarker/cache/FirstMatchTemplateConfigurationFactory.html
index 4a19141..2fbb43a 100644
--- a/docs/api/freemarker/cache/FirstMatchTemplateConfigurationFactory.html
+++ b/docs/api/freemarker/cache/FirstMatchTemplateConfigurationFactory.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:48 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:41 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>FirstMatchTemplateConfigurationFactory (FreeMarker 2.3.27-incubating 
API)</title>
-<meta name="date" content="2017-11-11">
+<title>FirstMatchTemplateConfigurationFactory (FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="FirstMatchTemplateConfigurationFactory 
(FreeMarker 2.3.27-incubating API)";
+            parent.document.title="FirstMatchTemplateConfigurationFactory 
(FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/MergingTemplateConfigurationFactory.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/MergingTemplateConfigurationFactory.html 
b/docs/api/freemarker/cache/MergingTemplateConfigurationFactory.html
index 1d5d419..f14d9fd 100644
--- a/docs/api/freemarker/cache/MergingTemplateConfigurationFactory.html
+++ b/docs/api/freemarker/cache/MergingTemplateConfigurationFactory.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:48 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:41 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>MergingTemplateConfigurationFactory (FreeMarker 2.3.27-incubating 
API)</title>
-<meta name="date" content="2017-11-11">
+<title>MergingTemplateConfigurationFactory (FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="MergingTemplateConfigurationFactory 
(FreeMarker 2.3.27-incubating API)";
+            parent.document.title="MergingTemplateConfigurationFactory 
(FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/MruCacheStorage.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/MruCacheStorage.html 
b/docs/api/freemarker/cache/MruCacheStorage.html
index 843c240..dd728d4 100644
--- a/docs/api/freemarker/cache/MruCacheStorage.html
+++ b/docs/api/freemarker/cache/MruCacheStorage.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:48 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:41 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>MruCacheStorage (FreeMarker 2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>MruCacheStorage (FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="MruCacheStorage (FreeMarker 
2.3.27-incubating API)";
+            parent.document.title="MruCacheStorage (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/MultiTemplateLoader.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/MultiTemplateLoader.html 
b/docs/api/freemarker/cache/MultiTemplateLoader.html
index 64c6587..ca01e84 100644
--- a/docs/api/freemarker/cache/MultiTemplateLoader.html
+++ b/docs/api/freemarker/cache/MultiTemplateLoader.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:48 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:41 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>MultiTemplateLoader (FreeMarker 2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>MultiTemplateLoader (FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="MultiTemplateLoader (FreeMarker 
2.3.27-incubating API)";
+            parent.document.title="MultiTemplateLoader (FreeMarker 2.3.28 
API)";
         }
     }
     catch(err) {
@@ -363,7 +363,11 @@ implements <a 
href="../../freemarker/cache/StatefulTemplateLoader.html" title="i
  <a 
href="../../freemarker/cache/TemplateLoader.html#findTemplateSource-java.lang.String-"><code>TemplateLoader.findTemplateSource(String)</code></a>
 and <a 
href="../../freemarker/cache/TemplateLoader.html#getLastModified-java.lang.Object-"><code>TemplateLoader.getLastModified(Object)</code></a>
 it was determined that the cached copy
  of the template is stale. Then, if it turns out that the 
<code>encoding</code> parameter used doesn't match the actual
  template content (based on the <code>#ftl encoding=...</code> header), this 
method will be called for a second time
- with the correct <code>encoding</code> parameter value.</div>
+ with the correct <code>encoding</code> parameter value.
+ 
+ <p>
+ Unlike <a 
href="../../freemarker/cache/TemplateLoader.html#findTemplateSource-java.lang.String-"><code>TemplateLoader.findTemplateSource(String)</code></a>,
 this method must not tolerate if the template is not found, and
+ must throw <code>IOException</code> in that case.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a 
href="../../freemarker/cache/TemplateLoader.html#getReader-java.lang.Object-java.lang.String-">getReader</a></code>&nbsp;in
 interface&nbsp;<code><a href="../../freemarker/cache/TemplateLoader.html" 
title="interface in freemarker.cache">TemplateLoader</a></code></dd>
@@ -375,9 +379,9 @@ implements <a 
href="../../freemarker/cache/StatefulTemplateLoader.html" title="i
             to the byte representation of the template stream, and instead 
directly obtain a character stream.
             These loaders should ignore the encoding parameter.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>A <code>Reader</code> representing the template character stream. It's the 
responsibility of the caller (which
-         is <a href="../../freemarker/cache/TemplateCache.html" title="class 
in freemarker.cache"><code>TemplateCache</code></a> usually) to 
<code>close()</code> it. The <code>Reader</code> is not required to work after
-         the <code>templateSource</code> was closed (<a 
href="../../freemarker/cache/TemplateLoader.html#closeTemplateSource-java.lang.Object-"><code>TemplateLoader.closeTemplateSource(Object)</code></a>).</dd>
+<dd>A <code>Reader</code> representing the template character stream; not 
<code>null</code>. It's the responsibility of
+         the caller (which is <a 
href="../../freemarker/cache/TemplateCache.html" title="class in 
freemarker.cache"><code>TemplateCache</code></a> usually) to 
<code>close()</code> it. The <code>Reader</code> is not
+         required to work after the <code>templateSource</code> was closed (<a 
href="../../freemarker/cache/TemplateLoader.html#closeTemplateSource-java.lang.Object-"><code>TemplateLoader.closeTemplateSource(Object)</code></a>).</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
 <dd><code>java.io.IOException</code> - if an I/O error occurs while accessing 
the stream.</dd>
 </dl>

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/NotMatcher.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/NotMatcher.html 
b/docs/api/freemarker/cache/NotMatcher.html
index b90b356..88c0c3c 100644
--- a/docs/api/freemarker/cache/NotMatcher.html
+++ b/docs/api/freemarker/cache/NotMatcher.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:48 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:41 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>NotMatcher (FreeMarker 2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>NotMatcher (FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="NotMatcher (FreeMarker 2.3.27-incubating 
API)";
+            parent.document.title="NotMatcher (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/NullCacheStorage.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/NullCacheStorage.html 
b/docs/api/freemarker/cache/NullCacheStorage.html
index 449e8c7..2db471e 100644
--- a/docs/api/freemarker/cache/NullCacheStorage.html
+++ b/docs/api/freemarker/cache/NullCacheStorage.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:48 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:41 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>NullCacheStorage (FreeMarker 2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>NullCacheStorage (FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="NullCacheStorage (FreeMarker 
2.3.27-incubating API)";
+            parent.document.title="NullCacheStorage (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/OrMatcher.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/OrMatcher.html 
b/docs/api/freemarker/cache/OrMatcher.html
index d85dc2c..d5dd796 100644
--- a/docs/api/freemarker/cache/OrMatcher.html
+++ b/docs/api/freemarker/cache/OrMatcher.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:48 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:42 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>OrMatcher (FreeMarker 2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>OrMatcher (FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="OrMatcher (FreeMarker 2.3.27-incubating 
API)";
+            parent.document.title="OrMatcher (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/PathGlobMatcher.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/PathGlobMatcher.html 
b/docs/api/freemarker/cache/PathGlobMatcher.html
index 999e8ff..8e19ffb 100644
--- a/docs/api/freemarker/cache/PathGlobMatcher.html
+++ b/docs/api/freemarker/cache/PathGlobMatcher.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:48 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:42 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>PathGlobMatcher (FreeMarker 2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>PathGlobMatcher (FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="PathGlobMatcher (FreeMarker 
2.3.27-incubating API)";
+            parent.document.title="PathGlobMatcher (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/PathRegexMatcher.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/PathRegexMatcher.html 
b/docs/api/freemarker/cache/PathRegexMatcher.html
index 7721c52..c32023c 100644
--- a/docs/api/freemarker/cache/PathRegexMatcher.html
+++ b/docs/api/freemarker/cache/PathRegexMatcher.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:48 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:42 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>PathRegexMatcher (FreeMarker 2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>PathRegexMatcher (FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="PathRegexMatcher (FreeMarker 
2.3.27-incubating API)";
+            parent.document.title="PathRegexMatcher (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/SoftCacheStorage.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/SoftCacheStorage.html 
b/docs/api/freemarker/cache/SoftCacheStorage.html
index 5b7946d..4828440 100644
--- a/docs/api/freemarker/cache/SoftCacheStorage.html
+++ b/docs/api/freemarker/cache/SoftCacheStorage.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:48 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:42 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>SoftCacheStorage (FreeMarker 2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>SoftCacheStorage (FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="SoftCacheStorage (FreeMarker 
2.3.27-incubating API)";
+            parent.document.title="SoftCacheStorage (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/StatefulTemplateLoader.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/StatefulTemplateLoader.html 
b/docs/api/freemarker/cache/StatefulTemplateLoader.html
index 306aad4..a150b43 100644
--- a/docs/api/freemarker/cache/StatefulTemplateLoader.html
+++ b/docs/api/freemarker/cache/StatefulTemplateLoader.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:48 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:42 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>StatefulTemplateLoader (FreeMarker 2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>StatefulTemplateLoader (FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="StatefulTemplateLoader (FreeMarker 
2.3.27-incubating API)";
+            parent.document.title="StatefulTemplateLoader (FreeMarker 2.3.28 
API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/StringTemplateLoader.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/StringTemplateLoader.html 
b/docs/api/freemarker/cache/StringTemplateLoader.html
index d11e44f..9800dfc 100644
--- a/docs/api/freemarker/cache/StringTemplateLoader.html
+++ b/docs/api/freemarker/cache/StringTemplateLoader.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:48 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:42 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>StringTemplateLoader (FreeMarker 2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>StringTemplateLoader (FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="StringTemplateLoader (FreeMarker 
2.3.27-incubating API)";
+            parent.document.title="StringTemplateLoader (FreeMarker 2.3.28 
API)";
         }
     }
     catch(err) {
@@ -455,7 +455,11 @@ implements <a 
href="../../freemarker/cache/TemplateLoader.html" title="interface
  <a 
href="../../freemarker/cache/TemplateLoader.html#findTemplateSource-java.lang.String-"><code>TemplateLoader.findTemplateSource(String)</code></a>
 and <a 
href="../../freemarker/cache/TemplateLoader.html#getLastModified-java.lang.Object-"><code>TemplateLoader.getLastModified(Object)</code></a>
 it was determined that the cached copy
  of the template is stale. Then, if it turns out that the 
<code>encoding</code> parameter used doesn't match the actual
  template content (based on the <code>#ftl encoding=...</code> header), this 
method will be called for a second time
- with the correct <code>encoding</code> parameter value.</div>
+ with the correct <code>encoding</code> parameter value.
+ 
+ <p>
+ Unlike <a 
href="../../freemarker/cache/TemplateLoader.html#findTemplateSource-java.lang.String-"><code>TemplateLoader.findTemplateSource(String)</code></a>,
 this method must not tolerate if the template is not found, and
+ must throw <code>IOException</code> in that case.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a 
href="../../freemarker/cache/TemplateLoader.html#getReader-java.lang.Object-java.lang.String-">getReader</a></code>&nbsp;in
 interface&nbsp;<code><a href="../../freemarker/cache/TemplateLoader.html" 
title="interface in freemarker.cache">TemplateLoader</a></code></dd>
@@ -467,9 +471,9 @@ implements <a 
href="../../freemarker/cache/TemplateLoader.html" title="interface
             to the byte representation of the template stream, and instead 
directly obtain a character stream.
             These loaders should ignore the encoding parameter.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>A <code>Reader</code> representing the template character stream. It's the 
responsibility of the caller (which
-         is <a href="../../freemarker/cache/TemplateCache.html" title="class 
in freemarker.cache"><code>TemplateCache</code></a> usually) to 
<code>close()</code> it. The <code>Reader</code> is not required to work after
-         the <code>templateSource</code> was closed (<a 
href="../../freemarker/cache/TemplateLoader.html#closeTemplateSource-java.lang.Object-"><code>TemplateLoader.closeTemplateSource(Object)</code></a>).</dd>
+<dd>A <code>Reader</code> representing the template character stream; not 
<code>null</code>. It's the responsibility of
+         the caller (which is <a 
href="../../freemarker/cache/TemplateCache.html" title="class in 
freemarker.cache"><code>TemplateCache</code></a> usually) to 
<code>close()</code> it. The <code>Reader</code> is not
+         required to work after the <code>templateSource</code> was closed (<a 
href="../../freemarker/cache/TemplateLoader.html#closeTemplateSource-java.lang.Object-"><code>TemplateLoader.closeTemplateSource(Object)</code></a>).</dd>
 </dl>
 </li>
 </ul>

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/StrongCacheStorage.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/StrongCacheStorage.html 
b/docs/api/freemarker/cache/StrongCacheStorage.html
index abee9ce..e9df168 100644
--- a/docs/api/freemarker/cache/StrongCacheStorage.html
+++ b/docs/api/freemarker/cache/StrongCacheStorage.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:48 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:42 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>StrongCacheStorage (FreeMarker 2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>StrongCacheStorage (FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="StrongCacheStorage (FreeMarker 
2.3.27-incubating API)";
+            parent.document.title="StrongCacheStorage (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/TemplateCache.MaybeMissingTemplate.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/TemplateCache.MaybeMissingTemplate.html 
b/docs/api/freemarker/cache/TemplateCache.MaybeMissingTemplate.html
index 33d4716..ef7f05f 100644
--- a/docs/api/freemarker/cache/TemplateCache.MaybeMissingTemplate.html
+++ b/docs/api/freemarker/cache/TemplateCache.MaybeMissingTemplate.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:48 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:42 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>TemplateCache.MaybeMissingTemplate (FreeMarker 2.3.27-incubating 
API)</title>
-<meta name="date" content="2017-11-11">
+<title>TemplateCache.MaybeMissingTemplate (FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="TemplateCache.MaybeMissingTemplate 
(FreeMarker 2.3.27-incubating API)";
+            parent.document.title="TemplateCache.MaybeMissingTemplate 
(FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/TemplateCache.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/TemplateCache.html 
b/docs/api/freemarker/cache/TemplateCache.html
index 9b77eb4..9bd5989 100644
--- a/docs/api/freemarker/cache/TemplateCache.html
+++ b/docs/api/freemarker/cache/TemplateCache.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:48 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:42 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>TemplateCache (FreeMarker 2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>TemplateCache (FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="TemplateCache (FreeMarker 2.3.27-incubating 
API)";
+            parent.document.title="TemplateCache (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/TemplateConfigurationFactory.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/TemplateConfigurationFactory.html 
b/docs/api/freemarker/cache/TemplateConfigurationFactory.html
index c8b63a5..f46f13d 100644
--- a/docs/api/freemarker/cache/TemplateConfigurationFactory.html
+++ b/docs/api/freemarker/cache/TemplateConfigurationFactory.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:48 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:42 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>TemplateConfigurationFactory (FreeMarker 2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>TemplateConfigurationFactory (FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="TemplateConfigurationFactory (FreeMarker 
2.3.27-incubating API)";
+            parent.document.title="TemplateConfigurationFactory (FreeMarker 
2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/TemplateConfigurationFactoryException.html
----------------------------------------------------------------------
diff --git 
a/docs/api/freemarker/cache/TemplateConfigurationFactoryException.html 
b/docs/api/freemarker/cache/TemplateConfigurationFactoryException.html
index 1df19d5..5952ab5 100644
--- a/docs/api/freemarker/cache/TemplateConfigurationFactoryException.html
+++ b/docs/api/freemarker/cache/TemplateConfigurationFactoryException.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:48 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:42 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>TemplateConfigurationFactoryException (FreeMarker 2.3.27-incubating 
API)</title>
-<meta name="date" content="2017-11-11">
+<title>TemplateConfigurationFactoryException (FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="TemplateConfigurationFactoryException 
(FreeMarker 2.3.27-incubating API)";
+            parent.document.title="TemplateConfigurationFactoryException 
(FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/TemplateLoader.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/TemplateLoader.html 
b/docs/api/freemarker/cache/TemplateLoader.html
index 40597e5..1520ca8 100644
--- a/docs/api/freemarker/cache/TemplateLoader.html
+++ b/docs/api/freemarker/cache/TemplateLoader.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:48 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:42 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>TemplateLoader (FreeMarker 2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>TemplateLoader (FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="TemplateLoader (FreeMarker 
2.3.27-incubating API)";
+            parent.document.title="TemplateLoader (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {
@@ -277,7 +277,11 @@ var activeTableTab = "activeTableTab";
  <a 
href="../../freemarker/cache/TemplateLoader.html#findTemplateSource-java.lang.String-"><code>findTemplateSource(String)</code></a>
 and <a 
href="../../freemarker/cache/TemplateLoader.html#getLastModified-java.lang.Object-"><code>getLastModified(Object)</code></a>
 it was determined that the cached copy
  of the template is stale. Then, if it turns out that the 
<code>encoding</code> parameter used doesn't match the actual
  template content (based on the <code>#ftl encoding=...</code> header), this 
method will be called for a second time
- with the correct <code>encoding</code> parameter value.</div>
+ with the correct <code>encoding</code> parameter value.
+ 
+ <p>
+ Unlike <a 
href="../../freemarker/cache/TemplateLoader.html#findTemplateSource-java.lang.String-"><code>findTemplateSource(String)</code></a>,
 this method must not tolerate if the template is not found, and
+ must throw <code>IOException</code> in that case.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>templateSource</code> - an object representing a template source, 
obtained through a prior call to
@@ -287,9 +291,9 @@ var activeTableTab = "activeTableTab";
             to the byte representation of the template stream, and instead 
directly obtain a character stream.
             These loaders should ignore the encoding parameter.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>A <code>Reader</code> representing the template character stream. It's the 
responsibility of the caller (which
-         is <a href="../../freemarker/cache/TemplateCache.html" title="class 
in freemarker.cache"><code>TemplateCache</code></a> usually) to 
<code>close()</code> it. The <code>Reader</code> is not required to work after
-         the <code>templateSource</code> was closed (<a 
href="../../freemarker/cache/TemplateLoader.html#closeTemplateSource-java.lang.Object-"><code>closeTemplateSource(Object)</code></a>).</dd>
+<dd>A <code>Reader</code> representing the template character stream; not 
<code>null</code>. It's the responsibility of
+         the caller (which is <a 
href="../../freemarker/cache/TemplateCache.html" title="class in 
freemarker.cache"><code>TemplateCache</code></a> usually) to 
<code>close()</code> it. The <code>Reader</code> is not
+         required to work after the <code>templateSource</code> was closed (<a 
href="../../freemarker/cache/TemplateLoader.html#closeTemplateSource-java.lang.Object-"><code>closeTemplateSource(Object)</code></a>).</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
 <dd><code>java.io.IOException</code> - if an I/O error occurs while accessing 
the stream.</dd>
 </dl>

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/TemplateLookupContext.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/TemplateLookupContext.html 
b/docs/api/freemarker/cache/TemplateLookupContext.html
index d015581..65e5dfb 100644
--- a/docs/api/freemarker/cache/TemplateLookupContext.html
+++ b/docs/api/freemarker/cache/TemplateLookupContext.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:48 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:42 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>TemplateLookupContext (FreeMarker 2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>TemplateLookupContext (FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="TemplateLookupContext (FreeMarker 
2.3.27-incubating API)";
+            parent.document.title="TemplateLookupContext (FreeMarker 2.3.28 
API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/TemplateLookupResult.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/TemplateLookupResult.html 
b/docs/api/freemarker/cache/TemplateLookupResult.html
index 63fa60b..9b7ae93 100644
--- a/docs/api/freemarker/cache/TemplateLookupResult.html
+++ b/docs/api/freemarker/cache/TemplateLookupResult.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:48 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:42 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>TemplateLookupResult (FreeMarker 2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>TemplateLookupResult (FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="TemplateLookupResult (FreeMarker 
2.3.27-incubating API)";
+            parent.document.title="TemplateLookupResult (FreeMarker 2.3.28 
API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/TemplateLookupStrategy.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/TemplateLookupStrategy.html 
b/docs/api/freemarker/cache/TemplateLookupStrategy.html
index 64a58d7..30c9c3f 100644
--- a/docs/api/freemarker/cache/TemplateLookupStrategy.html
+++ b/docs/api/freemarker/cache/TemplateLookupStrategy.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:48 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:42 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>TemplateLookupStrategy (FreeMarker 2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>TemplateLookupStrategy (FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="TemplateLookupStrategy (FreeMarker 
2.3.27-incubating API)";
+            parent.document.title="TemplateLookupStrategy (FreeMarker 2.3.28 
API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/TemplateNameFormat.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/TemplateNameFormat.html 
b/docs/api/freemarker/cache/TemplateNameFormat.html
index eb3f11e..8b801bb 100644
--- a/docs/api/freemarker/cache/TemplateNameFormat.html
+++ b/docs/api/freemarker/cache/TemplateNameFormat.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:48 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:42 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>TemplateNameFormat (FreeMarker 2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>TemplateNameFormat (FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="TemplateNameFormat (FreeMarker 
2.3.27-incubating API)";
+            parent.document.title="TemplateNameFormat (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {
@@ -207,10 +207,10 @@ extends java.lang.Object</pre>
  template names like <code>"classpath:foo.ftl"</code> interpreted as an 
absolute name with scheme <code>"classpath"</code>
  and absolute path "foo.ftl". The scheme name before the <code>":"</code> 
can't contain <code>"/"</code>, or else it's
  treated as a malformed name. The scheme part can be separated either with 
<code>"://"</code> or just <code>":"</code> from
- the path. Hence, <code>myschme:/x</code> is normalized to 
<code>myschme:x</code>, while <code>myschme:///x</code> is normalized
- to <code>myschme://x</code>, but <code>myschme://x</code> or 
<code>myschme:/x</code> aren't changed by normalization. It's up
- the <a href="../../freemarker/cache/TemplateLoader.html" title="interface in 
freemarker.cache"><code>TemplateLoader</code></a> to which the normalized names 
are passed to decide which of these scheme separation
- conventions are valid (maybe both).</li>
+ the path. Hence, <code>myscheme:/x</code> is normalized to 
<code>myscheme:x</code>, while <code>myscheme:///x</code> is
+ normalized to <code>myscheme://x</code>, but <code>myscehme://x</code> or 
<code>myscheme:/x</code> aren't changed by
+ normalization. It's up the <a 
href="../../freemarker/cache/TemplateLoader.html" title="interface in 
freemarker.cache"><code>TemplateLoader</code></a> to which the normalized names 
are passed to decide which of
+ these scheme separation conventions are valid (maybe both).</li>
  
  <li><code>":"</code> is not allowed in template names, except as the scheme 
separator (see previous point).
  

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/TemplateSourceMatcher.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/TemplateSourceMatcher.html 
b/docs/api/freemarker/cache/TemplateSourceMatcher.html
index 467447e..a2d3051 100644
--- a/docs/api/freemarker/cache/TemplateSourceMatcher.html
+++ b/docs/api/freemarker/cache/TemplateSourceMatcher.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:48 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:42 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>TemplateSourceMatcher (FreeMarker 2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>TemplateSourceMatcher (FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="TemplateSourceMatcher (FreeMarker 
2.3.27-incubating API)";
+            parent.document.title="TemplateSourceMatcher (FreeMarker 2.3.28 
API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/URLTemplateLoader.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/URLTemplateLoader.html 
b/docs/api/freemarker/cache/URLTemplateLoader.html
index 9fbd07a..49a76a4 100644
--- a/docs/api/freemarker/cache/URLTemplateLoader.html
+++ b/docs/api/freemarker/cache/URLTemplateLoader.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:48 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:42 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>URLTemplateLoader (FreeMarker 2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>URLTemplateLoader (FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="URLTemplateLoader (FreeMarker 
2.3.27-incubating API)";
+            parent.document.title="URLTemplateLoader (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {
@@ -344,7 +344,11 @@ implements <a 
href="../../freemarker/cache/TemplateLoader.html" title="interface
  <a 
href="../../freemarker/cache/TemplateLoader.html#findTemplateSource-java.lang.String-"><code>TemplateLoader.findTemplateSource(String)</code></a>
 and <a 
href="../../freemarker/cache/TemplateLoader.html#getLastModified-java.lang.Object-"><code>TemplateLoader.getLastModified(Object)</code></a>
 it was determined that the cached copy
  of the template is stale. Then, if it turns out that the 
<code>encoding</code> parameter used doesn't match the actual
  template content (based on the <code>#ftl encoding=...</code> header), this 
method will be called for a second time
- with the correct <code>encoding</code> parameter value.</div>
+ with the correct <code>encoding</code> parameter value.
+ 
+ <p>
+ Unlike <a 
href="../../freemarker/cache/TemplateLoader.html#findTemplateSource-java.lang.String-"><code>TemplateLoader.findTemplateSource(String)</code></a>,
 this method must not tolerate if the template is not found, and
+ must throw <code>IOException</code> in that case.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a 
href="../../freemarker/cache/TemplateLoader.html#getReader-java.lang.Object-java.lang.String-">getReader</a></code>&nbsp;in
 interface&nbsp;<code><a href="../../freemarker/cache/TemplateLoader.html" 
title="interface in freemarker.cache">TemplateLoader</a></code></dd>
@@ -356,9 +360,9 @@ implements <a 
href="../../freemarker/cache/TemplateLoader.html" title="interface
             to the byte representation of the template stream, and instead 
directly obtain a character stream.
             These loaders should ignore the encoding parameter.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>A <code>Reader</code> representing the template character stream. It's the 
responsibility of the caller (which
-         is <a href="../../freemarker/cache/TemplateCache.html" title="class 
in freemarker.cache"><code>TemplateCache</code></a> usually) to 
<code>close()</code> it. The <code>Reader</code> is not required to work after
-         the <code>templateSource</code> was closed (<a 
href="../../freemarker/cache/TemplateLoader.html#closeTemplateSource-java.lang.Object-"><code>TemplateLoader.closeTemplateSource(Object)</code></a>).</dd>
+<dd>A <code>Reader</code> representing the template character stream; not 
<code>null</code>. It's the responsibility of
+         the caller (which is <a 
href="../../freemarker/cache/TemplateCache.html" title="class in 
freemarker.cache"><code>TemplateCache</code></a> usually) to 
<code>close()</code> it. The <code>Reader</code> is not
+         required to work after the <code>templateSource</code> was closed (<a 
href="../../freemarker/cache/TemplateLoader.html#closeTemplateSource-java.lang.Object-"><code>TemplateLoader.closeTemplateSource(Object)</code></a>).</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
 <dd><code>java.io.IOException</code> - if an I/O error occurs while accessing 
the stream.</dd>
 </dl>

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/WebappTemplateLoader.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/WebappTemplateLoader.html 
b/docs/api/freemarker/cache/WebappTemplateLoader.html
index f90c20f..0fd912e 100644
--- a/docs/api/freemarker/cache/WebappTemplateLoader.html
+++ b/docs/api/freemarker/cache/WebappTemplateLoader.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:48 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:42 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>WebappTemplateLoader (FreeMarker 2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>WebappTemplateLoader (FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="WebappTemplateLoader (FreeMarker 
2.3.27-incubating API)";
+            parent.document.title="WebappTemplateLoader (FreeMarker 2.3.28 
API)";
         }
     }
     catch(err) {
@@ -380,7 +380,11 @@ implements <a 
href="../../freemarker/cache/TemplateLoader.html" title="interface
  <a 
href="../../freemarker/cache/TemplateLoader.html#findTemplateSource-java.lang.String-"><code>TemplateLoader.findTemplateSource(String)</code></a>
 and <a 
href="../../freemarker/cache/TemplateLoader.html#getLastModified-java.lang.Object-"><code>TemplateLoader.getLastModified(Object)</code></a>
 it was determined that the cached copy
  of the template is stale. Then, if it turns out that the 
<code>encoding</code> parameter used doesn't match the actual
  template content (based on the <code>#ftl encoding=...</code> header), this 
method will be called for a second time
- with the correct <code>encoding</code> parameter value.</div>
+ with the correct <code>encoding</code> parameter value.
+ 
+ <p>
+ Unlike <a 
href="../../freemarker/cache/TemplateLoader.html#findTemplateSource-java.lang.String-"><code>TemplateLoader.findTemplateSource(String)</code></a>,
 this method must not tolerate if the template is not found, and
+ must throw <code>IOException</code> in that case.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a 
href="../../freemarker/cache/TemplateLoader.html#getReader-java.lang.Object-java.lang.String-">getReader</a></code>&nbsp;in
 interface&nbsp;<code><a href="../../freemarker/cache/TemplateLoader.html" 
title="interface in freemarker.cache">TemplateLoader</a></code></dd>
@@ -392,9 +396,9 @@ implements <a 
href="../../freemarker/cache/TemplateLoader.html" title="interface
             to the byte representation of the template stream, and instead 
directly obtain a character stream.
             These loaders should ignore the encoding parameter.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>A <code>Reader</code> representing the template character stream. It's the 
responsibility of the caller (which
-         is <a href="../../freemarker/cache/TemplateCache.html" title="class 
in freemarker.cache"><code>TemplateCache</code></a> usually) to 
<code>close()</code> it. The <code>Reader</code> is not required to work after
-         the <code>templateSource</code> was closed (<a 
href="../../freemarker/cache/TemplateLoader.html#closeTemplateSource-java.lang.Object-"><code>TemplateLoader.closeTemplateSource(Object)</code></a>).</dd>
+<dd>A <code>Reader</code> representing the template character stream; not 
<code>null</code>. It's the responsibility of
+         the caller (which is <a 
href="../../freemarker/cache/TemplateCache.html" title="class in 
freemarker.cache"><code>TemplateCache</code></a> usually) to 
<code>close()</code> it. The <code>Reader</code> is not
+         required to work after the <code>templateSource</code> was closed (<a 
href="../../freemarker/cache/TemplateLoader.html#closeTemplateSource-java.lang.Object-"><code>TemplateLoader.closeTemplateSource(Object)</code></a>).</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
 <dd><code>java.io.IOException</code> - if an I/O error occurs while accessing 
the stream.</dd>
 </dl>

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/class-use/AndMatcher.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/class-use/AndMatcher.html 
b/docs/api/freemarker/cache/class-use/AndMatcher.html
index 70c2959..a32f337 100644
--- a/docs/api/freemarker/cache/class-use/AndMatcher.html
+++ b/docs/api/freemarker/cache/class-use/AndMatcher.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:51 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:47 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class freemarker.cache.AndMatcher (FreeMarker 2.3.27-incubating 
API)</title>
-<meta name="date" content="2017-11-11">
+<title>Uses of Class freemarker.cache.AndMatcher (FreeMarker 2.3.28 
API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class freemarker.cache.AndMatcher 
(FreeMarker 2.3.27-incubating API)";
+            parent.document.title="Uses of Class freemarker.cache.AndMatcher 
(FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/class-use/ByteArrayTemplateLoader.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/class-use/ByteArrayTemplateLoader.html 
b/docs/api/freemarker/cache/class-use/ByteArrayTemplateLoader.html
index d2853d1..7fd4028 100644
--- a/docs/api/freemarker/cache/class-use/ByteArrayTemplateLoader.html
+++ b/docs/api/freemarker/cache/class-use/ByteArrayTemplateLoader.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:51 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:47 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class freemarker.cache.ByteArrayTemplateLoader (FreeMarker 
2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>Uses of Class freemarker.cache.ByteArrayTemplateLoader (FreeMarker 
2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class 
freemarker.cache.ByteArrayTemplateLoader (FreeMarker 2.3.27-incubating API)";
+            parent.document.title="Uses of Class 
freemarker.cache.ByteArrayTemplateLoader (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/class-use/CacheStorage.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/class-use/CacheStorage.html 
b/docs/api/freemarker/cache/class-use/CacheStorage.html
index 10615cf..7c443c9 100644
--- a/docs/api/freemarker/cache/class-use/CacheStorage.html
+++ b/docs/api/freemarker/cache/class-use/CacheStorage.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:51 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:47 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Interface freemarker.cache.CacheStorage (FreeMarker 
2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>Uses of Interface freemarker.cache.CacheStorage (FreeMarker 2.3.28 
API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Interface 
freemarker.cache.CacheStorage (FreeMarker 2.3.27-incubating API)";
+            parent.document.title="Uses of Interface 
freemarker.cache.CacheStorage (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/class-use/CacheStorageWithGetSize.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/class-use/CacheStorageWithGetSize.html 
b/docs/api/freemarker/cache/class-use/CacheStorageWithGetSize.html
index f4a6f93..8ecc631 100644
--- a/docs/api/freemarker/cache/class-use/CacheStorageWithGetSize.html
+++ b/docs/api/freemarker/cache/class-use/CacheStorageWithGetSize.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:51 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:47 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Interface freemarker.cache.CacheStorageWithGetSize (FreeMarker 
2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>Uses of Interface freemarker.cache.CacheStorageWithGetSize (FreeMarker 
2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Interface 
freemarker.cache.CacheStorageWithGetSize (FreeMarker 2.3.27-incubating API)";
+            parent.document.title="Uses of Interface 
freemarker.cache.CacheStorageWithGetSize (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/class-use/ClassTemplateLoader.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/class-use/ClassTemplateLoader.html 
b/docs/api/freemarker/cache/class-use/ClassTemplateLoader.html
index 1b1d855..752876d 100644
--- a/docs/api/freemarker/cache/class-use/ClassTemplateLoader.html
+++ b/docs/api/freemarker/cache/class-use/ClassTemplateLoader.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:51 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:47 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class freemarker.cache.ClassTemplateLoader (FreeMarker 
2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>Uses of Class freemarker.cache.ClassTemplateLoader (FreeMarker 2.3.28 
API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class 
freemarker.cache.ClassTemplateLoader (FreeMarker 2.3.27-incubating API)";
+            parent.document.title="Uses of Class 
freemarker.cache.ClassTemplateLoader (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/class-use/ConcurrentCacheStorage.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/class-use/ConcurrentCacheStorage.html 
b/docs/api/freemarker/cache/class-use/ConcurrentCacheStorage.html
index 8e5674a..01a935e 100644
--- a/docs/api/freemarker/cache/class-use/ConcurrentCacheStorage.html
+++ b/docs/api/freemarker/cache/class-use/ConcurrentCacheStorage.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:51 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:47 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Interface freemarker.cache.ConcurrentCacheStorage (FreeMarker 
2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>Uses of Interface freemarker.cache.ConcurrentCacheStorage (FreeMarker 
2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Interface 
freemarker.cache.ConcurrentCacheStorage (FreeMarker 2.3.27-incubating API)";
+            parent.document.title="Uses of Interface 
freemarker.cache.ConcurrentCacheStorage (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/class-use/ConditionalTemplateConfigurationFactory.html
----------------------------------------------------------------------
diff --git 
a/docs/api/freemarker/cache/class-use/ConditionalTemplateConfigurationFactory.html
 
b/docs/api/freemarker/cache/class-use/ConditionalTemplateConfigurationFactory.html
index 8d26067..7a52e97 100644
--- 
a/docs/api/freemarker/cache/class-use/ConditionalTemplateConfigurationFactory.html
+++ 
b/docs/api/freemarker/cache/class-use/ConditionalTemplateConfigurationFactory.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:51 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:47 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class freemarker.cache.ConditionalTemplateConfigurationFactory 
(FreeMarker 2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>Uses of Class freemarker.cache.ConditionalTemplateConfigurationFactory 
(FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class 
freemarker.cache.ConditionalTemplateConfigurationFactory (FreeMarker 
2.3.27-incubating API)";
+            parent.document.title="Uses of Class 
freemarker.cache.ConditionalTemplateConfigurationFactory (FreeMarker 2.3.28 
API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/class-use/FileExtensionMatcher.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/class-use/FileExtensionMatcher.html 
b/docs/api/freemarker/cache/class-use/FileExtensionMatcher.html
index 0c448a6..6af31e1 100644
--- a/docs/api/freemarker/cache/class-use/FileExtensionMatcher.html
+++ b/docs/api/freemarker/cache/class-use/FileExtensionMatcher.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:51 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:47 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class freemarker.cache.FileExtensionMatcher (FreeMarker 
2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>Uses of Class freemarker.cache.FileExtensionMatcher (FreeMarker 2.3.28 
API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class 
freemarker.cache.FileExtensionMatcher (FreeMarker 2.3.27-incubating API)";
+            parent.document.title="Uses of Class 
freemarker.cache.FileExtensionMatcher (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/class-use/FileNameGlobMatcher.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/class-use/FileNameGlobMatcher.html 
b/docs/api/freemarker/cache/class-use/FileNameGlobMatcher.html
index f3892cd..b0c7786 100644
--- a/docs/api/freemarker/cache/class-use/FileNameGlobMatcher.html
+++ b/docs/api/freemarker/cache/class-use/FileNameGlobMatcher.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:51 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:47 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class freemarker.cache.FileNameGlobMatcher (FreeMarker 
2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>Uses of Class freemarker.cache.FileNameGlobMatcher (FreeMarker 2.3.28 
API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class 
freemarker.cache.FileNameGlobMatcher (FreeMarker 2.3.27-incubating API)";
+            parent.document.title="Uses of Class 
freemarker.cache.FileNameGlobMatcher (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/class-use/FileTemplateLoader.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/class-use/FileTemplateLoader.html 
b/docs/api/freemarker/cache/class-use/FileTemplateLoader.html
index fcda779..24d5000 100644
--- a/docs/api/freemarker/cache/class-use/FileTemplateLoader.html
+++ b/docs/api/freemarker/cache/class-use/FileTemplateLoader.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:51 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:47 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class freemarker.cache.FileTemplateLoader (FreeMarker 
2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>Uses of Class freemarker.cache.FileTemplateLoader (FreeMarker 2.3.28 
API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class 
freemarker.cache.FileTemplateLoader (FreeMarker 2.3.27-incubating API)";
+            parent.document.title="Uses of Class 
freemarker.cache.FileTemplateLoader (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/class-use/FirstMatchTemplateConfigurationFactory.html
----------------------------------------------------------------------
diff --git 
a/docs/api/freemarker/cache/class-use/FirstMatchTemplateConfigurationFactory.html
 
b/docs/api/freemarker/cache/class-use/FirstMatchTemplateConfigurationFactory.html
index 3c0f5bf..d81bf2b 100644
--- 
a/docs/api/freemarker/cache/class-use/FirstMatchTemplateConfigurationFactory.html
+++ 
b/docs/api/freemarker/cache/class-use/FirstMatchTemplateConfigurationFactory.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:51 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:47 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class freemarker.cache.FirstMatchTemplateConfigurationFactory 
(FreeMarker 2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>Uses of Class freemarker.cache.FirstMatchTemplateConfigurationFactory 
(FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class 
freemarker.cache.FirstMatchTemplateConfigurationFactory (FreeMarker 
2.3.27-incubating API)";
+            parent.document.title="Uses of Class 
freemarker.cache.FirstMatchTemplateConfigurationFactory (FreeMarker 2.3.28 
API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/class-use/MergingTemplateConfigurationFactory.html
----------------------------------------------------------------------
diff --git 
a/docs/api/freemarker/cache/class-use/MergingTemplateConfigurationFactory.html 
b/docs/api/freemarker/cache/class-use/MergingTemplateConfigurationFactory.html
index 437292d..fa77a75 100644
--- 
a/docs/api/freemarker/cache/class-use/MergingTemplateConfigurationFactory.html
+++ 
b/docs/api/freemarker/cache/class-use/MergingTemplateConfigurationFactory.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:51 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:47 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class freemarker.cache.MergingTemplateConfigurationFactory 
(FreeMarker 2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>Uses of Class freemarker.cache.MergingTemplateConfigurationFactory 
(FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class 
freemarker.cache.MergingTemplateConfigurationFactory (FreeMarker 
2.3.27-incubating API)";
+            parent.document.title="Uses of Class 
freemarker.cache.MergingTemplateConfigurationFactory (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/class-use/MruCacheStorage.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/class-use/MruCacheStorage.html 
b/docs/api/freemarker/cache/class-use/MruCacheStorage.html
index 34ae36d..4ee487a 100644
--- a/docs/api/freemarker/cache/class-use/MruCacheStorage.html
+++ b/docs/api/freemarker/cache/class-use/MruCacheStorage.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:51 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:47 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class freemarker.cache.MruCacheStorage (FreeMarker 
2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>Uses of Class freemarker.cache.MruCacheStorage (FreeMarker 2.3.28 
API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class 
freemarker.cache.MruCacheStorage (FreeMarker 2.3.27-incubating API)";
+            parent.document.title="Uses of Class 
freemarker.cache.MruCacheStorage (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/class-use/MultiTemplateLoader.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/class-use/MultiTemplateLoader.html 
b/docs/api/freemarker/cache/class-use/MultiTemplateLoader.html
index aa8080a..647c278 100644
--- a/docs/api/freemarker/cache/class-use/MultiTemplateLoader.html
+++ b/docs/api/freemarker/cache/class-use/MultiTemplateLoader.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:51 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:47 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class freemarker.cache.MultiTemplateLoader (FreeMarker 
2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>Uses of Class freemarker.cache.MultiTemplateLoader (FreeMarker 2.3.28 
API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class 
freemarker.cache.MultiTemplateLoader (FreeMarker 2.3.27-incubating API)";
+            parent.document.title="Uses of Class 
freemarker.cache.MultiTemplateLoader (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/class-use/NotMatcher.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/class-use/NotMatcher.html 
b/docs/api/freemarker/cache/class-use/NotMatcher.html
index 447e79f..656f8c3 100644
--- a/docs/api/freemarker/cache/class-use/NotMatcher.html
+++ b/docs/api/freemarker/cache/class-use/NotMatcher.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:51 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:47 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class freemarker.cache.NotMatcher (FreeMarker 2.3.27-incubating 
API)</title>
-<meta name="date" content="2017-11-11">
+<title>Uses of Class freemarker.cache.NotMatcher (FreeMarker 2.3.28 
API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class freemarker.cache.NotMatcher 
(FreeMarker 2.3.27-incubating API)";
+            parent.document.title="Uses of Class freemarker.cache.NotMatcher 
(FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/class-use/NullCacheStorage.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/class-use/NullCacheStorage.html 
b/docs/api/freemarker/cache/class-use/NullCacheStorage.html
index e23a97d..4a00352 100644
--- a/docs/api/freemarker/cache/class-use/NullCacheStorage.html
+++ b/docs/api/freemarker/cache/class-use/NullCacheStorage.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:51 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:47 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class freemarker.cache.NullCacheStorage (FreeMarker 
2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>Uses of Class freemarker.cache.NullCacheStorage (FreeMarker 2.3.28 
API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class 
freemarker.cache.NullCacheStorage (FreeMarker 2.3.27-incubating API)";
+            parent.document.title="Uses of Class 
freemarker.cache.NullCacheStorage (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/class-use/OrMatcher.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/class-use/OrMatcher.html 
b/docs/api/freemarker/cache/class-use/OrMatcher.html
index 276063c..1ee7a24 100644
--- a/docs/api/freemarker/cache/class-use/OrMatcher.html
+++ b/docs/api/freemarker/cache/class-use/OrMatcher.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:51 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:47 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class freemarker.cache.OrMatcher (FreeMarker 2.3.27-incubating 
API)</title>
-<meta name="date" content="2017-11-11">
+<title>Uses of Class freemarker.cache.OrMatcher (FreeMarker 2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class freemarker.cache.OrMatcher 
(FreeMarker 2.3.27-incubating API)";
+            parent.document.title="Uses of Class freemarker.cache.OrMatcher 
(FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/class-use/PathGlobMatcher.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/class-use/PathGlobMatcher.html 
b/docs/api/freemarker/cache/class-use/PathGlobMatcher.html
index 2666d3d..932a3a6 100644
--- a/docs/api/freemarker/cache/class-use/PathGlobMatcher.html
+++ b/docs/api/freemarker/cache/class-use/PathGlobMatcher.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:51 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:47 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class freemarker.cache.PathGlobMatcher (FreeMarker 
2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>Uses of Class freemarker.cache.PathGlobMatcher (FreeMarker 2.3.28 
API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class 
freemarker.cache.PathGlobMatcher (FreeMarker 2.3.27-incubating API)";
+            parent.document.title="Uses of Class 
freemarker.cache.PathGlobMatcher (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/class-use/PathRegexMatcher.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/class-use/PathRegexMatcher.html 
b/docs/api/freemarker/cache/class-use/PathRegexMatcher.html
index 27e5397..6650531 100644
--- a/docs/api/freemarker/cache/class-use/PathRegexMatcher.html
+++ b/docs/api/freemarker/cache/class-use/PathRegexMatcher.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:51 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:47 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class freemarker.cache.PathRegexMatcher (FreeMarker 
2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>Uses of Class freemarker.cache.PathRegexMatcher (FreeMarker 2.3.28 
API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class 
freemarker.cache.PathRegexMatcher (FreeMarker 2.3.27-incubating API)";
+            parent.document.title="Uses of Class 
freemarker.cache.PathRegexMatcher (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/class-use/SoftCacheStorage.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/class-use/SoftCacheStorage.html 
b/docs/api/freemarker/cache/class-use/SoftCacheStorage.html
index f17a5e9..1cb7401 100644
--- a/docs/api/freemarker/cache/class-use/SoftCacheStorage.html
+++ b/docs/api/freemarker/cache/class-use/SoftCacheStorage.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:51 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:47 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class freemarker.cache.SoftCacheStorage (FreeMarker 
2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>Uses of Class freemarker.cache.SoftCacheStorage (FreeMarker 2.3.28 
API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class 
freemarker.cache.SoftCacheStorage (FreeMarker 2.3.27-incubating API)";
+            parent.document.title="Uses of Class 
freemarker.cache.SoftCacheStorage (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/class-use/StatefulTemplateLoader.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/class-use/StatefulTemplateLoader.html 
b/docs/api/freemarker/cache/class-use/StatefulTemplateLoader.html
index 1cc3d8c..6231aa3 100644
--- a/docs/api/freemarker/cache/class-use/StatefulTemplateLoader.html
+++ b/docs/api/freemarker/cache/class-use/StatefulTemplateLoader.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:51 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:47 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Interface freemarker.cache.StatefulTemplateLoader (FreeMarker 
2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>Uses of Interface freemarker.cache.StatefulTemplateLoader (FreeMarker 
2.3.28 API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Interface 
freemarker.cache.StatefulTemplateLoader (FreeMarker 2.3.27-incubating API)";
+            parent.document.title="Uses of Interface 
freemarker.cache.StatefulTemplateLoader (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

http://git-wip-us.apache.org/repos/asf/freemarker-site/blob/e3ae7133/docs/api/freemarker/cache/class-use/StringTemplateLoader.html
----------------------------------------------------------------------
diff --git a/docs/api/freemarker/cache/class-use/StringTemplateLoader.html 
b/docs/api/freemarker/cache/class-use/StringTemplateLoader.html
index b3af31f..8367e04 100644
--- a/docs/api/freemarker/cache/class-use/StringTemplateLoader.html
+++ b/docs/api/freemarker/cache/class-use/StringTemplateLoader.html
@@ -2,10 +2,10 @@
 <!-- NewPage -->
 <html lang="en">
 <head>
-<!-- Generated by javadoc (1.8.0_144) on Sat Nov 11 19:25:51 CET 2017 -->
+<!-- Generated by javadoc (1.8.0_144) on Fri Mar 30 23:10:47 CEST 2018 -->
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Uses of Class freemarker.cache.StringTemplateLoader (FreeMarker 
2.3.27-incubating API)</title>
-<meta name="date" content="2017-11-11">
+<title>Uses of Class freemarker.cache.StringTemplateLoader (FreeMarker 2.3.28 
API)</title>
+<meta name="date" content="2018-03-30">
 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" 
title="Style">
 <script type="text/javascript" src="../../../script.js"></script>
 </head>
@@ -13,7 +13,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class 
freemarker.cache.StringTemplateLoader (FreeMarker 2.3.27-incubating API)";
+            parent.document.title="Uses of Class 
freemarker.cache.StringTemplateLoader (FreeMarker 2.3.28 API)";
         }
     }
     catch(err) {

Reply via email to