Author: cbrisson
Date: Tue Jan 3 17:07:37 2017
New Revision: 1777166
URL: http://svn.apache.org/viewvc?rev=1777166&view=rev
Log:
[site] push markdown changes into production
Modified:
velocity/site/production/engine/2.0/changes.html
velocity/site/production/engine/2.0/developer-guide.html
velocity/site/production/engine/devel/changes.html
velocity/site/production/engine/devel/developer-guide.html
velocity/site/production/release-process.html
velocity/site/production/tools/devel/changes.html
Modified: velocity/site/production/engine/2.0/changes.html
URL:
http://svn.apache.org/viewvc/velocity/site/production/engine/2.0/changes.html?rev=1777166&r1=1777165&r2=1777166&view=diff
==============================================================================
--- velocity/site/production/engine/2.0/changes.html (original)
+++ velocity/site/production/engine/2.0/changes.html Tue Jan 3 17:07:37 2017
@@ -317,6 +317,27 @@ h2:hover > .headerlink, h3:hover > .head
<td>
<img src="images/add.png"/>
</td>
+ <td> Reviewed event handling API: <ul> <li> added a Context argument
for all events </li> <li> got rid of the Executor pattern ; event handlers are
directly called by the cartridge </li> </ul> . </td>
+ <td>cbrisson</td>
+ </tr>
+ <tr>
+ <td>
+ <img src="images/add.png"/>
+ </td>
+ <td> Removed references to ExtProperties from the engine configuration
API. . </td>
+ <td>cbrisson</td>
+ </tr>
+ <tr>
+ <td>
+ <img src="images/add.png"/>
+ </td>
+ <td> Default encoding is now UTF-8. . </td>
+ <td>cbrisson</td>
+ </tr>
+ <tr>
+ <td>
+ <img src="images/add.png"/>
+ </td>
<td> Make Velocity use the base logger namespace 'org.apache.velocity'
unless specified with runtime.log.name in the configuration, and have the
runtime instance log with this base namespace, and other modules log with
children namespaces: <ul> <li> directive, and
velocity.directive.[directivename] </li> <li> parser </li> <li> loader and
loader.[loadername] </li> <li> macro </li> <li> rendering </li> <li> event
</li> </ul> Get rid of UberspectLoggable interface. . </td>
<td>cbrisson</td>
</tr>
@@ -464,7 +485,7 @@ h2:hover > .headerlink, h3:hover > .head
<td>
<img src="images/add.png"/>
</td>
- <td> The ResourceLoader API now provides a Reader rather than an
InputStream. The InputStream getter method has been deprecated. Also fixes
VELOCITY-599. . Fixes <a
href="https://issues.apache.org/jira/browse/VELOCITY-793">VELOCITY-793</a>.
</td>
+ <td> The ResourceLoader API now provides a Reader rather than an
InputStream. Also fixes VELOCITY-599. . Fixes <a
href="https://issues.apache.org/jira/browse/VELOCITY-793">VELOCITY-793</a>.
</td>
<td>cbrisson</td>
</tr>
<tr>
@@ -587,13 +608,6 @@ h2:hover > .headerlink, h3:hover > .head
<td>apetrelli</td>
</tr>
<tr>
- <td>
- <img src="images/add.png"/>
- </td>
- <td> Shading of Commons Lang and Commons Collections . Fixes <a
href="https://issues.apache.org/jira/browse/VELOCITY-789">VELOCITY-789</a>.
</td>
- <td>apetrelli</td>
- </tr>
- <tr>
<td>
<img src="images/add.png"/>
</td>
Modified: velocity/site/production/engine/2.0/developer-guide.html
URL:
http://svn.apache.org/viewvc/velocity/site/production/engine/2.0/developer-guide.html?rev=1777166&r1=1777165&r2=1777166&view=diff
==============================================================================
--- velocity/site/production/engine/2.0/developer-guide.html (original)
+++ velocity/site/production/engine/2.0/developer-guide.html Tue Jan 3
17:07:37 2017
@@ -272,7 +272,6 @@ h2:hover > .headerlink, h3:hover > .head
<li><a
href="#orgapachevelocityappeventincludeeventhandler">org.apache.velocity.app.event.IncludeEventHandler</a></li>
<li><a
href="#orgapachevelocityappeventinvalidreferenceeventhandler">org.apache.velocity.app.event.InvalidReferenceEventHandler</a></li>
<li><a
href="#orgapachevelocityappeventmethodexceptioneventhandler">org.apache.velocity.app.event.MethodExceptionEventHandler</a></li>
-<li><a
href="#orgapachevelocityappeventnullseteventhandler">org.apache.velocity.app.event.NullSetEventHandler</a></li>
<li><a
href="#orgapachevelocityappeventreferenceinsertioneventhandler">org.apache.velocity.app.event.ReferenceInsertionEventHandler</a></li>
<li><a href="#registering-event-handlers">Registering Event Handlers</a></li>
</ul>
@@ -713,28 +712,30 @@ see the Javadoc API documentation.</p>
</pre></div>
-<p>And, assuming you have a directory <code>/opt/templates</code> and the
template <code>testtemplate.vm</code> is in there, then things would work just
fine. If you try this and have a problem, be sure to look at the velocity.log
for information - the error messages are pretty good for figuring out what is
wrong.</p>
-<p>If you need to place objects into the Velocity properties then you cannot
use the Velocity.init(Properties p) method. Instead you should create a new
instance of the <code>org.apache.velocity.util.ExtProperties</code> class, copy
all properties from an existing Properties object into the ExtProperties and
then add new properties with your objects to the ExtProperties object.</p>
-<div class="codehilite"><pre> ...
+<p>And the same if you want to use a VelocityEngine object rather than the
singleton engine:</p>
+<div class="codehilite"><pre> <span class="o">...</span>
-VelocityEngine velocityEngine = new VelocityEngine();
-ExtProperties eprops = null;
-if (props==null) {
- eprops = new ExtProperties();
-} else {
- eprops = ExtProperties.convertProperties(props);
-}
+<span class="kn">import</span> <span
class="nn">java.util.Properties</span><span class="p">;</span>
+ <span class="o">...</span>
-// Now set the property with your object instance
-eprops.setProperty("name", object);
+<span class="n">public</span> <span class="n">static</span> <span
class="n">void</span> <span class="n">main</span><span class="p">(</span> <span
class="n">String</span> <span class="n">args</span><span class="p">[]</span>
<span class="p">)</span>
+<span class="p">{</span>
+ <span class="o">/*</span> <span class="n">first</span><span
class="p">,</span> <span class="n">we</span> <span class="n">init</span> <span
class="n">the</span> <span class="n">runtime</span> <span
class="n">engine</span><span class="o">.</span> <span class="o">*/</span>
+
+ <span class="n">Properties</span> <span class="n">p</span> <span
class="o">=</span> <span class="n">new</span> <span
class="n">Properties</span><span class="p">();</span>
+ <span class="n">p</span><span class="o">.</span><span
class="n">setProperty</span><span class="p">(</span><span
class="s2">"file.resource.loader.path"</span><span class="p">,</span>
<span class="s2">"/opt/templates"</span><span class="p">);</span>
+ <span class="n">VelocityEngine</span> <span class="n">engine</span> <span
class="o">=</span> <span class="n">new</span> <span
class="n">VelocityEngine</span><span class="p">();</span>
+ <span class="n">engine</span><span class="o">.</span><span
class="n">init</span><span class="p">(</span> <span class="n">p</span> <span
class="p">);</span>
+
+ <span class="o">/*</span> <span class="n">lets</span> <span
class="n">make</span> <span class="n">a</span> <span class="n">Context</span>
<span class="ow">and</span> <span class="n">put</span> <span
class="n">data</span> <span class="n">into</span> <span class="n">it</span>
<span class="o">*/</span>
-...
-velocityEngine.setExtendedProperties(eprops);
-velocityEngine.init();
-...
+<span class="o">...</span>
</pre></div>
+<p>And, assuming you have a directory <code>/opt/templates</code> and the
template <code>testtemplate.vm</code> is in there, then things would work just
fine. If you try this and have a problem, be sure to look at the velocity.log
for information - the error messages are pretty good for figuring out what is
wrong.</p>
+<p>If you need to place objects into the Velocity properties, you may do so:
the <code>java.util.Properties</code> class <em>does</em> accept Object values
(which will only invalidate the use of its <code>load</code> and
<code>store</code> methods).</p>
+<p>To combine multiple properties files, you may call several times
<code>setProperties(Properties)</code>, <code>setProperty(String,
Object)</code> or <code>addProperty(String, Object)</code> before calling
<code>init()</code>.</p>
<p>You may want to also consider using the Application Attributes feature
described in the following section.</p>
<h2 id="logging">Logging<a class="headerlink" href="#logging" title="Permanent
link">¶</a></h2>
<p>Since version 2.0, Velocity has switched to the <a
href="http://www.slf4j.org/">SLF4J</a> logging facade.</p>
@@ -1060,14 +1061,16 @@ velocityEngine.init();
<p>Note that internal components cannot set the value of the key, just get it.
if the internal component must communicate information to the application
layer, it must do so via the Object passed as the value.</p>
<h2 id="event-handlers">Event Handlers<a class="headerlink"
href="#event-handlers" title="Permanent link">¶</a></h2>
-<p>Velocity contains a fine-grained event handling system that allows you to
customize the operation of the engine. For example, you may change the text of
references that are inserted into a page, modify which templates are actually
included with <code>#include</code> or <code>#parse</code>, or capture all
invalid references.</p>
+<p>Velocity contains a fine-grained event handling system that allows you to
customize the operation of the engine. Those events are synchronous, and act as
callback handlers.</p>
+<p>For example, you may change the text of references that are inserted into a
page, modify which templates are actually included with <code>#include</code>
or <code>#parse</code>, or capture all invalid references.</p>
<p>All event handler interfaces available in Velocity are in the package
<code>org.apache.velocity.app.event</code>. You may create your own
implementation or use one of the sample implementations in the package
<code>org.apache.velocity.app.event.implement</code>. (See the javadocs for
more details on the provided implementations).</p>
<h3
id="orgapachevelocityappeventincludeeventhandler"><code>org.apache.velocity.app.event.IncludeEventHandler</code><a
class="headerlink" href="#orgapachevelocityappeventincludeeventhandler"
title="Permanent link">¶</a></h3>
<blockquote>
<p>The <code>IncludeEventHandler</code> can be used to modify the template
that is included in a page with <code>#include</code> or <code>#parse</code>.
For example, this may be used to make all includes relative to the current
directory or to prevent access to unauthorized resources. Multiple
<code>IncludeEventHandler</code>'s may be chained, with the return value of the
final call used as the name of the template to retrieve.</p>
<div class="codehilite"><pre>public IncludeEventHandler extends EventHandler
{
- public String includeEvent( String includeResourcePath,
+ public String includeEvent( Context context,
+ String includeResourcePath,
String currentResourcePath,
String directiveName );
}
@@ -1115,7 +1118,8 @@ velocityEngine.init();
<p>When a user-supplied method throws an exception, the
<code>MethodExceptionEventHandler</code> is invoked with the Class, method name
and thrown Exception. The handler can either return a valid Object to be used
as the return value of the method call or throw the passed-in or new Exception,
which will be wrapped and propogated to the user as a
<code>MethodInvocationException</code>. While
<code>MethodExceptionEventHandler</code>'s can be chained only the first
handler is actually called -- all others are ignored.</p>
<div class="codehilite"><pre>public interface MethodExceptionEventHandler
extends EventHandler
{
- public Object methodException( Class claz,
+ public Object methodException( Context context,
+ Class claz,
String method,
Exception e )
throws Exception;
@@ -1128,28 +1132,13 @@ velocityEngine.init();
<li><code>org.apache.velocity.app.event.implement.PrintExceptions</code></li>
</ul>
</blockquote>
-<h3
id="orgapachevelocityappeventnullseteventhandler"><code>org.apache.velocity.app.event.NullSetEventHandler</code><a
class="headerlink" href="#orgapachevelocityappeventnullseteventhandler"
title="Permanent link">¶</a></h3>
-<blockquote>
-<p>When a #set() rejects an assignment due to the right hand side being an
invalid or null reference, this is normally logged. The
<code>NullSetEventHandler</code> allows you to 'veto' the logging of this
condition. Multiple <code>NullSetEventHandler</code>'s can be chained; each
event handler is called in sequence until a false is returned.</p>
-<div class="codehilite"><pre>public interface NullSetEventHandler extends
EventHandler
-{
- public boolean shouldLogOnNullSet( String lhs,
- String rhs );
-}
-</pre></div>
-
-
-<p>Available implementations include:</p>
-<ul>
-<li><em>none provided</em></li>
-</ul>
-</blockquote>
<h3
id="orgapachevelocityappeventreferenceinsertioneventhandler"><code>org.apache.velocity.app.event.ReferenceInsertionEventHandler</code><a
class="headerlink"
href="#orgapachevelocityappeventreferenceinsertioneventhandler"
title="Permanent link">¶</a></h3>
<blockquote>
<p>A <code>ReferenceInsertionEventHandler</code> allows the developer to
intercept each write of a reference ($foo) value to the output stream and
modify that output. Multiple <code>ReferenceInsertionEventHandler</code>'s may
be chained with each step potentially altering the inserted reference.</p>
<div class="codehilite"><pre>public interface ReferenceInsertionEventHandler
extends EventHandler
{
- public Object referenceInsert( String reference,
+ public Object referenceInsert( Context context,
+ String reference,
Object value );
}
</pre></div>
Modified: velocity/site/production/engine/devel/changes.html
URL:
http://svn.apache.org/viewvc/velocity/site/production/engine/devel/changes.html?rev=1777166&r1=1777165&r2=1777166&view=diff
==============================================================================
--- velocity/site/production/engine/devel/changes.html (original)
+++ velocity/site/production/engine/devel/changes.html Tue Jan 3 17:07:37 2017
@@ -317,6 +317,20 @@ h2:hover > .headerlink, h3:hover > .head
<td>
<img src="images/add.png"/>
</td>
+ <td> Reviewed event handling API: <ul> <li> added a Context argument
for all events </li> <li> got rid of the Executor pattern ; event handlers are
directly called by the cartridge </li> </ul> . </td>
+ <td>cbrisson</td>
+ </tr>
+ <tr>
+ <td>
+ <img src="images/add.png"/>
+ </td>
+ <td> Removed references to ExtProperties from the engine configuration
API. . </td>
+ <td>cbrisson</td>
+ </tr>
+ <tr>
+ <td>
+ <img src="images/add.png"/>
+ </td>
<td> Default encoding is now UTF-8. . </td>
<td>cbrisson</td>
</tr>
Modified: velocity/site/production/engine/devel/developer-guide.html
URL:
http://svn.apache.org/viewvc/velocity/site/production/engine/devel/developer-guide.html?rev=1777166&r1=1777165&r2=1777166&view=diff
==============================================================================
--- velocity/site/production/engine/devel/developer-guide.html (original)
+++ velocity/site/production/engine/devel/developer-guide.html Tue Jan 3
17:07:37 2017
@@ -272,7 +272,6 @@ h2:hover > .headerlink, h3:hover > .head
<li><a
href="#orgapachevelocityappeventincludeeventhandler">org.apache.velocity.app.event.IncludeEventHandler</a></li>
<li><a
href="#orgapachevelocityappeventinvalidreferenceeventhandler">org.apache.velocity.app.event.InvalidReferenceEventHandler</a></li>
<li><a
href="#orgapachevelocityappeventmethodexceptioneventhandler">org.apache.velocity.app.event.MethodExceptionEventHandler</a></li>
-<li><a
href="#orgapachevelocityappeventnullseteventhandler">org.apache.velocity.app.event.NullSetEventHandler</a></li>
<li><a
href="#orgapachevelocityappeventreferenceinsertioneventhandler">org.apache.velocity.app.event.ReferenceInsertionEventHandler</a></li>
<li><a href="#registering-event-handlers">Registering Event Handlers</a></li>
</ul>
@@ -713,28 +712,30 @@ see the Javadoc API documentation.</p>
</pre></div>
-<p>And, assuming you have a directory <code>/opt/templates</code> and the
template <code>testtemplate.vm</code> is in there, then things would work just
fine. If you try this and have a problem, be sure to look at the velocity.log
for information - the error messages are pretty good for figuring out what is
wrong.</p>
-<p>If you need to place objects into the Velocity properties then you cannot
use the Velocity.init(Properties p) method. Instead you should create a new
instance of the <code>org.apache.velocity.util.ExtProperties</code> class, copy
all properties from an existing Properties object into the ExtProperties and
then add new properties with your objects to the ExtProperties object.</p>
-<div class="codehilite"><pre> ...
+<p>And the same if you want to use a VelocityEngine object rather than the
singleton engine:</p>
+<div class="codehilite"><pre> <span class="o">...</span>
-VelocityEngine velocityEngine = new VelocityEngine();
-ExtProperties eprops = null;
-if (props==null) {
- eprops = new ExtProperties();
-} else {
- eprops = ExtProperties.convertProperties(props);
-}
+<span class="kn">import</span> <span
class="nn">java.util.Properties</span><span class="p">;</span>
+ <span class="o">...</span>
-// Now set the property with your object instance
-eprops.setProperty("name", object);
+<span class="n">public</span> <span class="n">static</span> <span
class="n">void</span> <span class="n">main</span><span class="p">(</span> <span
class="n">String</span> <span class="n">args</span><span class="p">[]</span>
<span class="p">)</span>
+<span class="p">{</span>
+ <span class="o">/*</span> <span class="n">first</span><span
class="p">,</span> <span class="n">we</span> <span class="n">init</span> <span
class="n">the</span> <span class="n">runtime</span> <span
class="n">engine</span><span class="o">.</span> <span class="o">*/</span>
+
+ <span class="n">Properties</span> <span class="n">p</span> <span
class="o">=</span> <span class="n">new</span> <span
class="n">Properties</span><span class="p">();</span>
+ <span class="n">p</span><span class="o">.</span><span
class="n">setProperty</span><span class="p">(</span><span
class="s2">"file.resource.loader.path"</span><span class="p">,</span>
<span class="s2">"/opt/templates"</span><span class="p">);</span>
+ <span class="n">VelocityEngine</span> <span class="n">engine</span> <span
class="o">=</span> <span class="n">new</span> <span
class="n">VelocityEngine</span><span class="p">();</span>
+ <span class="n">engine</span><span class="o">.</span><span
class="n">init</span><span class="p">(</span> <span class="n">p</span> <span
class="p">);</span>
+
+ <span class="o">/*</span> <span class="n">lets</span> <span
class="n">make</span> <span class="n">a</span> <span class="n">Context</span>
<span class="ow">and</span> <span class="n">put</span> <span
class="n">data</span> <span class="n">into</span> <span class="n">it</span>
<span class="o">*/</span>
-...
-velocityEngine.setExtendedProperties(eprops);
-velocityEngine.init();
-...
+ <span class="o">...</span>
</pre></div>
+<p>And, assuming you have a directory <code>/opt/templates</code> and the
template <code>testtemplate.vm</code> is in there, then things would work just
fine. If you try this and have a problem, be sure to look at the velocity.log
for information - the error messages are pretty good for figuring out what is
wrong.</p>
+<p>If you need to place objects into the Velocity properties, you may do so:
the <code>java.util.Properties</code> class <em>does</em> accept Object values
(which will only invalidate the use of its <code>load</code> and
<code>store</code> methods).</p>
+<p>To combine multiple properties files, you may call several times
<code>setProperties(Properties)</code>, <code>setProperty(String,
Object)</code> or <code>addProperty(String, Object)</code> before calling
<code>init()</code>.</p>
<p>You may want to also consider using the Application Attributes feature
described in the following section.</p>
<h2 id="logging">Logging<a class="headerlink" href="#logging" title="Permanent
link">¶</a></h2>
<p>Since version 2.0, Velocity has switched to the <a
href="http://www.slf4j.org/">SLF4J</a> logging facade.</p>
@@ -1060,14 +1061,16 @@ velocityEngine.init();
<p>Note that internal components cannot set the value of the key, just get it.
if the internal component must communicate information to the application
layer, it must do so via the Object passed as the value.</p>
<h2 id="event-handlers">Event Handlers<a class="headerlink"
href="#event-handlers" title="Permanent link">¶</a></h2>
-<p>Velocity contains a fine-grained event handling system that allows you to
customize the operation of the engine. For example, you may change the text of
references that are inserted into a page, modify which templates are actually
included with <code>#include</code> or <code>#parse</code>, or capture all
invalid references.</p>
+<p>Velocity contains a fine-grained event handling system that allows you to
customize the operation of the engine. Those events are synchronous, and act as
callback handlers.</p>
+<p>For example, you may change the text of references that are inserted into a
page, modify which templates are actually included with <code>#include</code>
or <code>#parse</code>, or capture all invalid references.</p>
<p>All event handler interfaces available in Velocity are in the package
<code>org.apache.velocity.app.event</code>. You may create your own
implementation or use one of the sample implementations in the package
<code>org.apache.velocity.app.event.implement</code>. (See the javadocs for
more details on the provided implementations).</p>
<h3
id="orgapachevelocityappeventincludeeventhandler"><code>org.apache.velocity.app.event.IncludeEventHandler</code><a
class="headerlink" href="#orgapachevelocityappeventincludeeventhandler"
title="Permanent link">¶</a></h3>
<blockquote>
<p>The <code>IncludeEventHandler</code> can be used to modify the template
that is included in a page with <code>#include</code> or <code>#parse</code>.
For example, this may be used to make all includes relative to the current
directory or to prevent access to unauthorized resources. Multiple
<code>IncludeEventHandler</code>'s may be chained, with the return value of the
final call used as the name of the template to retrieve.</p>
<div class="codehilite"><pre>public IncludeEventHandler extends EventHandler
{
- public String includeEvent( String includeResourcePath,
+ public String includeEvent( Context context,
+ String includeResourcePath,
String currentResourcePath,
String directiveName );
}
@@ -1115,7 +1118,8 @@ velocityEngine.init();
<p>When a user-supplied method throws an exception, the
<code>MethodExceptionEventHandler</code> is invoked with the Class, method name
and thrown Exception. The handler can either return a valid Object to be used
as the return value of the method call or throw the passed-in or new Exception,
which will be wrapped and propogated to the user as a
<code>MethodInvocationException</code>. While
<code>MethodExceptionEventHandler</code>'s can be chained only the first
handler is actually called -- all others are ignored.</p>
<div class="codehilite"><pre>public interface MethodExceptionEventHandler
extends EventHandler
{
- public Object methodException( Class claz,
+ public Object methodException( Context context,
+ Class claz,
String method,
Exception e )
throws Exception;
@@ -1128,28 +1132,13 @@ velocityEngine.init();
<li><code>org.apache.velocity.app.event.implement.PrintExceptions</code></li>
</ul>
</blockquote>
-<h3
id="orgapachevelocityappeventnullseteventhandler"><code>org.apache.velocity.app.event.NullSetEventHandler</code><a
class="headerlink" href="#orgapachevelocityappeventnullseteventhandler"
title="Permanent link">¶</a></h3>
-<blockquote>
-<p>When a #set() rejects an assignment due to the right hand side being an
invalid or null reference, this is normally logged. The
<code>NullSetEventHandler</code> allows you to 'veto' the logging of this
condition. Multiple <code>NullSetEventHandler</code>'s can be chained; each
event handler is called in sequence until a false is returned.</p>
-<div class="codehilite"><pre>public interface NullSetEventHandler extends
EventHandler
-{
- public boolean shouldLogOnNullSet( String lhs,
- String rhs );
-}
-</pre></div>
-
-
-<p>Available implementations include:</p>
-<ul>
-<li><em>none provided</em></li>
-</ul>
-</blockquote>
<h3
id="orgapachevelocityappeventreferenceinsertioneventhandler"><code>org.apache.velocity.app.event.ReferenceInsertionEventHandler</code><a
class="headerlink"
href="#orgapachevelocityappeventreferenceinsertioneventhandler"
title="Permanent link">¶</a></h3>
<blockquote>
<p>A <code>ReferenceInsertionEventHandler</code> allows the developer to
intercept each write of a reference ($foo) value to the output stream and
modify that output. Multiple <code>ReferenceInsertionEventHandler</code>'s may
be chained with each step potentially altering the inserted reference.</p>
<div class="codehilite"><pre>public interface ReferenceInsertionEventHandler
extends EventHandler
{
- public Object referenceInsert( String reference,
+ public Object referenceInsert( Context context,
+ String reference,
Object value );
}
</pre></div>
Modified: velocity/site/production/release-process.html
URL:
http://svn.apache.org/viewvc/velocity/site/production/release-process.html?rev=1777166&r1=1777165&r2=1777166&view=diff
==============================================================================
--- velocity/site/production/release-process.html (original)
+++ velocity/site/production/release-process.html Tue Jan 3 17:07:37 2017
@@ -317,6 +317,15 @@ h2:hover > .headerlink, h3:hover > .head
<p>These steps must be performed <strong>for each</strong> release.</p>
<ul>
<li>
+<p>Archive the previous release candidate</p>
+<p>If it's not the first release candidate you're trying to release, you
should archive the previous release candidate. For instance:</p>
+<div class="codehilite"><pre>svn mv ci -m "[engine] archive engine 2.0
RC4"
https://[email protected]/repos/asf/velocity/engine/tags/2.0
https://[email protected]/repos/asf/velocity/engine/tags/2.0-RC4
+</pre></div>
+
+
+<p>And don't forget to also drop the staged artifact.</p>
+</li>
+<li>
<p>Prepare the release tag</p>
<p>To prepare the release Subversion tag, check out the branch/trunk from where
you are preparing the release and type:</p>
@@ -336,7 +345,7 @@ you are preparing the release and type:<
</li>
<li>
<p>Close the staging repository</p>
-<p>Login to {{{https://repository.apache.org using} Nexus repository}} your
Apache LDAP credentials.</p>
+<p>Login to <a href="https://repository.apache.org">Nexus repository</a> using
your Apache LDAP credentials.</p>
<p>Click on "Staging". Then click on "velocity" in the list of
repositories.</p>
<p>In the panel below you should see an open repository that is linked to your
username and ip.</p>
<p>Right click on this repository and select "Close".</p>
@@ -350,7 +359,7 @@ you are preparing the release and type:<
<p>If you click on your repository, a tree view will appear below.</p>
<p>You can then browse the contents to ensure the artifacts are as you expect
them.</p>
<p>Pay particular attention to the existence of *.asc (signature) files.</p>
-<p>If the you don't like the content of the repository, right click your
repository and choose "Drop".</p>
+<p>If you don't like the content of the repository, right click your
repository and choose "Drop".</p>
<p>You can then rollback your release and repeat the process.</p>
<p>Note the repository URL, you will need this in your vote email.</p>
</li>
@@ -471,7 +480,7 @@ Everyone who has tested the build is inv
<li>Promote staged artifacts</li>
</ul>
<p>Once the release is deemed fit for public consumption it can be transfered
to a production repository where it will be available to all users.</p>
-<p>Login to {{{https://repository.apache.org}Nexus repository}} again.</p>
+<p>Login to <a href="https://repository.apache.org">Nexus repository</a>
again.</p>
<p>Click on "Staging" and then on the repository with id
"velocity-staging".</p>
<p>Find your closed staging repository, right click on it and choose
"Promote".</p>
<p>Select the "Releases" repository and click "Promote".</p>
Modified: velocity/site/production/tools/devel/changes.html
URL:
http://svn.apache.org/viewvc/velocity/site/production/tools/devel/changes.html?rev=1777166&r1=1777165&r2=1777166&view=diff
==============================================================================
--- velocity/site/production/tools/devel/changes.html (original)
+++ velocity/site/production/tools/devel/changes.html Tue Jan 3 17:07:37 2017
@@ -279,6 +279,69 @@ h2:hover > .headerlink, h3:hover > .head
<tbody>
<tr>
<td>
+ <img src="images/add.png"/>
+ </td>
+ <td> ImportTool reenginering: <ul> <li> the ImportSupport utility
class has been splitted between o.a.v.generic.ImportSupport and
o.a.v.view.ViewImportSupport </li> <li> the ImportTool now has a generic
version (for remote URLs import) and a view version (for local URLs import)
which cannot use remote URLs in safe mode </li> </ul> . </td>
+ <td>cbrisson</td>
+ </tr>
+ <tr>
+ <td>
+ <img src="images/add.png"/>
+ </td>
+ <td> XmlTool now uses the standard JRE XML parser instead of the
org.jdom API ; it is now in two flavors, the generic tools one and the view
tools one. The view tools flavor allows the parsing of http query xml post
data. . </td>
+ <td>cbrisson</td>
+ </tr>
+ <tr>
+ <td>
+ <img src="images/add.png"/>
+ </td>
+ <td> Added a new JsonTool for parsing json. It is in two flavors, the
generic tools one and the view tools one. The view tools flavor allows the
parsing of http query json post data. . </td>
+ <td>cbrisson</td>
+ </tr>
+ <tr>
+ <td>
+ <img src="images/add.png"/>
+ </td>
+ <td> Added an EscapeTool.unurl(String) unescaping method . </td>
+ <td>cbrisson</td>
+ </tr>
+ <tr>
+ <td>
+ <img src="images/add.png"/>
+ </td>
+ <td> Deprecated ConversionTool: date/time parsing and formatting
methods belong to DateTool, while number parsing and formatting methods belong
to NumberTool ; toLocale() method is now in LocaleConfig . </td>
+ <td>cbrisson</td>
+ </tr>
+ <tr>
+ <td>
+ <img src="images/add.png"/>
+ </td>
+ <td> Deprecated SortTool, and added a CollectionTool to gather lists
sorting/splitting methods . </td>
+ <td>cbrisson</td>
+ </tr>
+ <tr>
+ <td>
+ <img src="images/add.png"/>
+ </td>
+ <td> Deprecated MathTool number parsing methods, which are redundant
with NumberTool ones . </td>
+ <td>cbrisson</td>
+ </tr>
+ <tr>
+ <td>
+ <img src="images/add.png"/>
+ </td>
+ <td> Deprecated AlternateTool . </td>
+ <td>cbrisson</td>
+ </tr>
+ <tr>
+ <td>
+ <img src="images/add.png"/>
+ </td>
+ <td> DateTool reenginering: <ul> <li> added iso and iso_tz
date/datetime standard formats </li> <li> added intl and intl_tz for
human-readable international format (time zone displayed by id) </li> </ul> .
</td>
+ <td>cbrisson</td>
+ </tr>
+ <tr>
+ <td>
<img src="images/fix.png"/>
</td>
<td> use static logging in Tools classes . </td>