diff --git a/rivet/about.html b/rivet/about.html
deleted file mode 100644
index f7142d8..0000000
--- a/rivet/about.html
+++ /dev/null
@@ -1,115 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-  <head>
-    
-    <title>Apache Rivet Contact</title>
-    <link rel="stylesheet" href="rivet.css" />
-  </head>
-  <body>
-    	<!--p align="center"></p -->
-	<!-- ? parray ::rivetweb::html_menu ? -->
-	<div id="pageheadline">
-	    <div class="decoration" style="float: left;"><img src="picts/Rivetlogo_smaller.png" alt="Apache Rivet"></div>
-	    <div class="headline"> Apache Rivet Contact </div>
-	</div>
-	<div id="pagecontents">
-	    <div class="navbar navleft"><div class="staticmenu" id="main">
-    <div class="menuheader">Rivet</div>
-    <div class="itemcontainer">
-        <span class="navitem">
-            <a href="index.html" class="menuitem">
-		Rivet Homepage
-		</a>
-        </span>
-        <span class="navitem">
-            <a href="http://tcl.apache.org/">
-		Apache Tcl Home
-		</a>
-        </span>
-        <span class="navitem">
-            <a href="http://www.tcl.tk/"> 
-		The Tcl Language
-		</a>
-        </span>
-        <span class="navitem">
-            <a href="download.html" class="menuitem">
-		Download
-		</a>
-        </span>
-        <span class="navitem">
-            <a href="http://tcl.apache.org/rivet/docs/">
-		Documentation
-		</a>
-        </span>
-        <span class="navitem">
-            <a href="about.html" class="menuitem">
-		About Us - Contact
-		</a>
-        </span>
-    </div>
-</div>
-
-</div>
-	    <div class="navbar navright"></div>
-	    <div id="content"> 
-		<div class="contentheadline"></div>
-<div><pagetext>
- <p>
-  <h2>Contact</h2>
-  <p>
-	      To contact the <b>Apache Rivet</b>
- team, please write to
-	      our mailing list, at <a href="mailto:rivet-dev@tcl.apache.org">rivet-dev@tcl.apache.org</a>
-.
-	      </p>
-  <p>
-	      This list is archived here: <a href="http://mail-archives.apache.org/mod_mbox/tcl-rivet-dev/">
-		http://mail-archives.apache.org/mod_mbox/tcl-rivet-dev/</a>
-  </p>
-  <p>
-	      To subscribe, send email to <a href="mailto:rivet-dev-subscribe@tcl.apache.org">rivet-dev-subscribe@tcl.apache.org</a>
-  </p>
- </p>
- <p>
-  <h2>Credits</h2>
-  <p>
-   <b>Apache Rivet</b>
- owes its existance to a lot of
-	      people.  First and foremost, to the people behind the 
-	      <a href="http://httpd.apache.org/contributors/">Apache Web Server</a>
- 
-	      and the <a href="http://www.tcl.tk/community/coreteam/index.html">Tool
-	      Command Language</a>
-.
-	      </p>
-  <p>
-	      The two primary authors of the Rivet code are Damon
-	      Courtney and <a href="http://www.dedasys.com/davidw/">David
-	      Welton</a>
-. The nice logo was created by Randy Stanard,
-	      of <a href="http://dewittdesigns.com/">DeWitt Designs</a>
-.
-	      </p>
- </p>
-</pagetext>
-
-</div>
-	    </div>
-	    <div class="clearfloats"></div>
-	    <!--div class="leftaligned">:</div>
-	    <div class="rightaligned">:</div-->
-	<div>
-	<table align="center" width="100%">
-	<tr><td align="left">
-	    <a href="http://www.apache.org/"><img src="picts/apache_pb.gif" alt="Powered by Apache" border="0" width="259" height="32"></a>
-	</td>
-	<td align="right">
-	    <a href="http://www.tcl.tk/"><img src="picts/tclp.gif" alt="Powered by Tcl" border="0" width="42" height="64"></a>
-	</td>
-
-	</tr>
-	</table>
-	</div>
-	</div>
-  </body>
-</html>
diff --git a/rivet/download.html b/rivet/download.html
deleted file mode 100644
index b27da8f..0000000
--- a/rivet/download.html
+++ /dev/null
@@ -1,98 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-  <head>
-    
-    <title>Download Apache Rivet</title>
-    <link rel="stylesheet" href="rivet.css" />
-  </head>
-  <body>
-    	<!--p align="center"></p -->
-	<!-- ? parray ::rivetweb::html_menu ? -->
-	<div id="pageheadline">
-	    <div class="decoration" style="float: left;"><img src="picts/Rivetlogo_smaller.png" alt="Apache Rivet"></div>
-	    <div class="headline"> Download Apache Rivet </div>
-	</div>
-	<div id="pagecontents">
-	    <div class="navbar navleft"><div class="staticmenu" id="main">
-    <div class="menuheader">Rivet</div>
-    <div class="itemcontainer">
-        <span class="navitem">
-            <a href="index.html" class="menuitem">
-		Rivet Homepage
-		</a>
-        </span>
-        <span class="navitem">
-            <a href="http://tcl.apache.org/">
-		Apache Tcl Home
-		</a>
-        </span>
-        <span class="navitem">
-            <a href="http://www.tcl.tk/"> 
-		The Tcl Language
-		</a>
-        </span>
-        <span class="navitem">
-            <a href="download.html" class="menuitem">
-		Download
-		</a>
-        </span>
-        <span class="navitem">
-            <a href="http://tcl.apache.org/rivet/docs/">
-		Documentation
-		</a>
-        </span>
-        <span class="navitem">
-            <a href="about.html" class="menuitem">
-		About Us - Contact
-		</a>
-        </span>
-    </div>
-</div>
-
-</div>
-	    <div class="navbar navright"></div>
-	    <div id="content"> 
-		<div class="contentheadline"></div>
-<div><pagetext>
- <p>
-	      The latest stable <b>Rivet</b>
- release may be downloaded
-	      from the links provided at this page: <p>
-   <a href="http://www.apache.org/dyn/closer.cgi/tcl/rivet">http://www.apache.org/dyn/closer.cgi/tcl/rivet</a>
-  </p>
- </p>
- <p>
-  <b>Apache Rivet</b>
- is actively developed - you can
-	      always get the most recent version from SVN.
-	     </p>
- <p>
-  <code>svn co http://svn.apache.org/repos/asf/tcl/rivet/trunk rivet</code>
- </p>
- <p>
-
-	      In addition, for your convenience, snapshots of the CVS
-	      tree are available here: <a href="http://cvs.apache.org/snapshots/tcl-rivet/">http://cvs.apache.org/snapshots/tcl-rivet/</a>
- </p>
-</pagetext>
-
-</div>
-	    </div>
-	    <div class="clearfloats"></div>
-	    <!--div class="leftaligned">:</div>
-	    <div class="rightaligned">:</div-->
-	<div>
-	<table align="center" width="100%">
-	<tr><td align="left">
-	    <a href="http://www.apache.org/"><img src="picts/apache_pb.gif" alt="Powered by Apache" border="0" width="259" height="32"></a>
-	</td>
-	<td align="right">
-	    <a href="http://www.tcl.tk/"><img src="picts/tclp.gif" alt="Powered by Tcl" border="0" width="42" height="64"></a>
-	</td>
-
-	</tr>
-	</table>
-	</div>
-	</div>
-  </body>
-</html>
diff --git a/rivet/html/about.html b/rivet/html/about.html
index d526f83..a98f2c7 100644
--- a/rivet/html/about.html
+++ b/rivet/html/about.html
@@ -54,6 +54,9 @@
                         </p>
     <p>
                 Rivet's authors are
+                <a href="http://wiki.tcl.tk/20617">Massimo Manghi</a>
+
+,
                 <a href="http://wiki.tcl.tk/4843">Damon Courtney</a>
 
 , 
@@ -71,13 +74,6 @@
 . 
                         </p>
     <p>
-        <a href="http://wiki.tcl.tk/20617">Massimo Manghi</a>
-
- is taking
-                care of the project doing new developments and fixing bugs.
-                He's also packaging Rivet for Debian/Ubuntu.
-                        </p>
-    <p>
                 The nice logo was created by Randy Stanard,
                 of <a href="http://dewittdesigns.com/">DeWitt Designs</a>
 
@@ -142,7 +138,7 @@
     </ul>
 </li>
 <li id="manual">
-    <h4>Rivet Documentation</h4>
+    <h4>Documentation</h4>
     <ul class="blocklist">
         <li class="navitem">
             <a title="Rivet 2.1 Manual" target="rivetman2.1" href="http://tcl.apache.org/rivet/manual2.1/">Rivet 2.1</a>
@@ -190,4 +186,5 @@
     </div>
     <div style="text-align: center; font-size: 0.75em;">Design downloaded from <a href="http://www.freewebtemplates.com/">free website templates</a>.</div></body>
 </html>
+is_homepage: 0
 
diff --git a/rivet/html/ajax.html b/rivet/html/ajax.html
index 97a3093..1047fb0 100644
--- a/rivet/html/ajax.html
+++ b/rivet/html/ajax.html
@@ -204,7 +204,7 @@
     </ul>
 </li>
 <li id="manual">
-    <h4>Rivet Documentation</h4>
+    <h4>Documentation</h4>
     <ul class="blocklist">
         <li class="navitem">
             <a title="Rivet 2.1 Manual" target="rivetman2.1" href="http://tcl.apache.org/rivet/manual2.1/">Rivet 2.1</a>
@@ -262,4 +262,5 @@
     </div>
     <div style="text-align: center; font-size: 0.75em;">Design downloaded from <a href="http://www.freewebtemplates.com/">free website templates</a>.</div></body>
 </html>
+is_homepage: 0
 
diff --git a/rivet/html/calendar.html b/rivet/html/calendar.html
index 0792725..78bff57 100644
--- a/rivet/html/calendar.html
+++ b/rivet/html/calendar.html
@@ -112,7 +112,7 @@
     </ul>
 </li>
 <li id="manual">
-    <h4>Rivet Documentation</h4>
+    <h4>Documentation</h4>
     <ul class="blocklist">
         <li class="navitem">
             <a title="Rivet 2.1 Manual" target="rivetman2.1" href="http://tcl.apache.org/rivet/manual2.1/">Rivet 2.1</a>
@@ -170,4 +170,5 @@
     </div>
     <div style="text-align: center; font-size: 0.75em;">Design downloaded from <a href="http://www.freewebtemplates.com/">free website templates</a>.</div></body>
 </html>
+is_homepage: 0
 
diff --git a/rivet/html/colorful_table.html b/rivet/html/colorful_table.html
index 3f5c08d..394b164 100644
--- a/rivet/html/colorful_table.html
+++ b/rivet/html/colorful_table.html
@@ -101,7 +101,7 @@
     </ul>
 </li>
 <li id="manual">
-    <h4>Rivet Documentation</h4>
+    <h4>Documentation</h4>
     <ul class="blocklist">
         <li class="navitem">
             <a title="Rivet 2.1 Manual" target="rivetman2.1" href="http://tcl.apache.org/rivet/manual2.1/">Rivet 2.1</a>
@@ -159,4 +159,5 @@
     </div>
     <div style="text-align: center; font-size: 0.75em;">Design downloaded from <a href="http://www.freewebtemplates.com/">free website templates</a>.</div></body>
 </html>
+is_homepage: 0
 
diff --git a/rivet/html/download.html b/rivet/html/download.html
index 91e2eec..aeea723 100644
--- a/rivet/html/download.html
+++ b/rivet/html/download.html
@@ -154,7 +154,7 @@
     </ul>
 </li>
 <li id="manual">
-    <h4>Rivet Documentation</h4>
+    <h4>Documentation</h4>
     <ul class="blocklist">
         <li class="navitem">
             <a title="Rivet 2.1 Manual" target="rivetman2.1" href="http://tcl.apache.org/rivet/manual2.1/">Rivet 2.1</a>
@@ -202,4 +202,5 @@
     </div>
     <div style="text-align: center; font-size: 0.75em;">Design downloaded from <a href="http://www.freewebtemplates.com/">free website templates</a>.</div></body>
 </html>
+is_homepage: 0
 
diff --git a/rivet/html/file_download.html b/rivet/html/file_download.html
index eaa5067..dc6aade 100644
--- a/rivet/html/file_download.html
+++ b/rivet/html/file_download.html
@@ -145,7 +145,7 @@
     </ul>
 </li>
 <li id="manual">
-    <h4>Rivet Documentation</h4>
+    <h4>Documentation</h4>
     <ul class="blocklist">
         <li class="navitem">
             <a title="Rivet 2.1 Manual" target="rivetman2.1" href="http://tcl.apache.org/rivet/manual2.1/">Rivet 2.1</a>
@@ -203,4 +203,5 @@
     </div>
     <div style="text-align: center; font-size: 0.75em;">Design downloaded from <a href="http://www.freewebtemplates.com/">free website templates</a>.</div></body>
 </html>
+is_homepage: 0
 
diff --git a/rivet/html/file_upload.html b/rivet/html/file_upload.html
index 3c5b6e8..5c96ac5 100644
--- a/rivet/html/file_upload.html
+++ b/rivet/html/file_upload.html
@@ -105,7 +105,7 @@
     </ul>
 </li>
 <li id="manual">
-    <h4>Rivet Documentation</h4>
+    <h4>Documentation</h4>
     <ul class="blocklist">
         <li class="navitem">
             <a title="Rivet 2.1 Manual" target="rivetman2.1" href="http://tcl.apache.org/rivet/manual2.1/">Rivet 2.1</a>
@@ -163,4 +163,5 @@
     </div>
     <div style="text-align: center; font-size: 0.75em;">Design downloaded from <a href="http://www.freewebtemplates.com/">free website templates</a>.</div></body>
 </html>
+is_homepage: 0
 
diff --git a/rivet/html/hello_world.html b/rivet/html/hello_world.html
index 78866f2..e5d3e16 100644
--- a/rivet/html/hello_world.html
+++ b/rivet/html/hello_world.html
@@ -105,7 +105,7 @@
     </ul>
 </li>
 <li id="manual">
-    <h4>Rivet Documentation</h4>
+    <h4>Documentation</h4>
     <ul class="blocklist">
         <li class="navitem">
             <a title="Rivet 2.1 Manual" target="rivetman2.1" href="http://tcl.apache.org/rivet/manual2.1/">Rivet 2.1</a>
@@ -163,4 +163,5 @@
     </div>
     <div style="text-align: center; font-size: 0.75em;">Design downloaded from <a href="http://www.freewebtemplates.com/">free website templates</a>.</div></body>
 </html>
+is_homepage: 0
 
diff --git a/rivet/html/rn-2-0.html b/rivet/html/rn-2-0.html
new file mode 100644
index 0000000..5b48a02
--- /dev/null
+++ b/rivet/html/rn-2-0.html
@@ -0,0 +1,460 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    <title>Rivet 2.0: Release Notes and Known Problems</title>
+    <link rel="stylesheet" href="../templates/wondrous/styles.css" type="text/css" />
+</head>
+
+<body>
+    <div id="container">
+        <div id="header">
+            <h1><a href="../index.html">Rivet</a></h1>
+            <h2 id="slogan">Webscripting for Tcl'ers</h2>
+            <div class="clear"></div>
+        </div>
+        <div id="body">
+            <div id="content">
+                <h2>Rivet 2.0: Release Notes and Known Problems</h2>
+                <div>
+    <div class="sez">
+        <h4>Download</h4>
+        <p>
+			Rivet 2.0 is available for download from ASF mirror sites. Check the 
+			<a href="download.html">download page</a>
+
+ for information about 
+			downloading the source code, rpm files or packages for SuSE, 
+			Redhat, Debian and Ubuntu (packages for SuSE and Redhat are available thanks to 
+			Harald Oehlmann).
+		                        </p>
+        <p>
+			Code integrity for this release can be checked using the 
+			public keys in the <a href="http://www.apache.org/dist/tcl/KEYS">KEYS</a>
+
+ file.
+		                        </p>
+        <p>
+			Rivet 2.0 has been tested on Apache 1.3 , 2.2 and 2.4 servers.
+			<strong>Apache 2.2/2.4 servers must be running 
+			<tt>prefork</tt>
+
+ as multiprocess module                            </strong>
+
+ though. Rivet is incompatible with the 
+			'worker' and 'event' MPMs.
+		                        </p>
+    </div>
+    <div class="sez">
+        <h4>Release Notes for Rivet 2.0.6 <span class="timestamp">(30-Nov-2012)</span>
+        </h4>
+        <h5>Fixed Bugs</h5>
+        <p>
+			Test Suite 
+			<ul>
+                <li>
+				User and Group directives removed from the configuration file
+				template to make test suite independent from the command 'id' output from which 
+				the values for this parameters were inferred (Bug #53396)
+			    </li>
+            </ul>
+        </p>
+        <p>
+						mod_rivet.c
+						<ul>
+                <li>Add UploadDirectory to the list of handled options for RivetUserConf</li>
+                <li>The module returns now a HTTP_INTERNAL_SERVER_ERROR when a <b>::request</b>
+
+
+		    				namespace cannot be created                                    </li>
+            </ul>
+        </p>
+        <p> 
+						DIO Package bug fixes
+						<ul>
+                <li>
+								Improved DIO support for Sqlite fixes several bugs.
+							</li>
+                <li>
+								Fixed secs computation made by dio_Mysql when handling timestamp fields.
+							</li>
+                <li>
+								Fixed wrong declaration of 'insert' subcommand in page manual (Bug #53670)
+							</li>
+                <li>
+								Fixed method makeDBFieldValue in class Oracle (Bug #53703)
+							</li>
+                <li>
+								Method 'count' failed when no keyfield was set.
+							</li>
+                <li>
+								Index riv_sess_cache_ix had a incomplete unique key definition that missed the 
+								'package_' column (fixes bug #54063)
+							</li>
+            </ul>
+        </p>
+    </div>
+    <div class="sez">
+        <h4>Release Notes for Rivet 2.0.5 <span class="timestamp">(26-Jun-2012)</span>
+        </h4>
+        <h5>Fixed Bugs</h5>
+        <ul>
+            <li>	
+					    DIO: Mysql connection is now checked when connection reference is reused 
+					    because it could have dropped (contributed by Cyril Shtumf, fixes #53221)
+					</li>
+            <li>
+					    Fixed SQL syntax generated in delete method when multiple fields are
+					    used in the selection clause (contributed by Cyril Shtumf, fixes bug #53222)
+					</li>
+        </ul>
+        <h5>New Features</h5>
+        <ul>
+            <li>
+					    New shorthand expression <pre class="programlisting">&lt;?= ... ?&gt;</pre>
+
+ is
+					    transformed into <pre class="programlisting">&lt;? puts -nonewline "..." ?&gt;</pre>
+
+
+					    (contributed by Jeff Lawson, addresses #53217)
+					                            </li>
+            <li>
+					    http_accept.tcl: new command parsing of Accept HTTP header lines (contributed by 
+					    Harald Oehlmann)
+					</li>
+            <li>
+					    rivet/packages/entities/entities.tcl: package RivetEntities
+					    (contributed by Harald Oehlmann)
+					</li>
+            <li>
+					    tclconfig/ltmain.sh: updated from recent autotools installation
+					</li>
+            <li>
+					    Support for HttpOnly flag improves security and reduces the risk of
+					    cross-site scripting attacks (contributed by Cyril Shtumf, fixes #53224)
+					</li>
+            <li>
+                <b>form</b>
+
+ class objects create now automatic field ids if left undefined
+					    by the programmer 
+					                            </li>
+        </ul>
+        <h5>Manual Pages Expanded</h5>
+        <ul>
+            <li>New pages for package <b>entities</b>
+
+ and for command <b>http_accept</b>
+            </li>
+            <li>Improved manual entry for 'var list' (Fixes bug #52911)</li>
+        </ul>
+    </div>
+    <div class="sez">
+        <h4>Release Notes for Rivet 2.0.4 <span class="timestamp">(23-Sep-2011)</span>
+        </h4>
+        <h5>Bugs fixed</h5>
+        <p>
+						An Tcl error in an AbortScript would trigger a message that
+						erroneously printed that an ErrorScript was running.
+					</p>
+        <h5>Manual Pages Expanded</h5>
+        <p>
+						Manual pages have been expanded to include documentation for more
+						commands implemented but not yet documented. Section documenting 
+						single commands has been reorganized to list commands in alphabetical
+						order.
+					</p>
+        <h5>New Features</h5>
+        <p>
+						Commands <strong>load_env</strong>
+
+ and <strong>load_headers</strong>
+
+
+						accept an array name as argument. If not fully qualified the array
+						was created in either the <tt>::request</tt>
+
+ namespace (.rvt templates)
+						or the global namespace (.tcl scripts). Starting with 2.0.4 
+						these commands, when invoked from within a procedure, create
+						the array in the proc's local scope, unless the argument is a
+						fully qualifed name scoping the array in a user defined namespace.
+					                    </p>
+        <p>
+						Command <strong>makeurl</strong>
+
+ has been extended to be used in three forms
+						<ul>
+                <li>without argument
+								<pre class="programlisting">makeurl
+==&gt; Current script's url</pre>
+                </li>
+                <li>with an absolute path
+								<pre class="programlisting">makeurl /a/b/c
+==&gt; http://&lt;host&gt;:&lt;port&gt;/a/b/c</pre>
+                </li>
+                <li>with a relative path
+								<pre class="programlisting">makeurl a/b/c
+==&gt; http://&lt;host&gt;:&lt;port&gt;/&lt;current script&gt;/a/b/c</pre>
+                </li>
+            </ul>
+        </p>
+    </div>
+    <div class="sez">
+        <h4>Release Notes for Rivet 2.0.3 <span class="timestamp">(19-Mar-2011)</span>
+        </h4>
+        <h5>New Features</h5>
+        <p>
+				        Rivet 2.0.3 introduces 2 new configuration directives
+				        <ul>
+                <li>
+				                New configuration directive <strong>AbortScript</strong>
+
+: 
+				                Tcl script to be run if an <b>abort_page</b>
+
+ is called 
+				                in a request processing
+				                                                </li>
+                <li>
+						New configuration directive 
+				                <strong>AfterEveryScript</strong>
+
+: An <b>abort_page</b>
+
+ command stops the
+				                page generation and skips also a configured <strong>AfterScript</strong>
+
+ to
+						run an <strong>AbortScript</strong>
+
+. This new configuration script is to 
+						be run anyway, as last script of a single request processing, 
+						whether an abort condition took place during the page
+						generation or the procedure completed successfully.
+				                                                </li>
+                <li>
+				                Enhanced form for <strong>abort_page</strong>
+
+: page generation can
+				                be interrupted by calling <strong>abort_page</strong>
+
+. The new command 
+				                accepts now an argument whose value can be checked to determine which
+				                condition forced to call the page generation off.
+				                                                </li>
+                <li>
+				                New command <strong>abort_code</strong>
+
+ returns the value of the
+				                argument passed to <strong>abort_page</strong>
+
+. Useful in <b>AbortScript</b>
+
+
+				                or <b>AfterEveryScript</b>
+
+ code.
+				                                                </li>
+            </ul>
+        </p>
+        <h5>Problems fixed</h5>
+        <p>
+				        Code for command <strong>apache_table</strong>
+
+ was ported to Rivet for Apache 1.3
+				                        </p>
+    </div>
+    <div class="sez">
+        <h4>Release Notes for Rivet 2.0.2 <span class="timestamp">(25-Oct-2010)</span>
+        </h4>
+        <p>
+					   Rivet 2.0.2 is a maintainance release with the main purpose to adjust the 
+					   build process in a way that makes straightforward the generation of a Debian package.
+				    </p>
+        <p>
+					   Rivet (named 
+					   <a href="http://packages.qa.debian.org/liba/libapache2-mod-rivet.html">libapache2-mod-rivet</a>
+
+ 
+					   to follow the Debian Apache policy) is now in Debian.
+					   The package is sponsored by Sven Hoexter (Debian Developer). 
+				                        </p>
+    </div>
+    <div class="sez">
+        <h4>Relase Notes for Rivet 2.0.1 <span class="timestamp">(12-Jul-2010)</span>
+        </h4>
+        <h5>Fixed Bugs in Rivet 2.0.1</h5>
+        <ul>
+            <li>
+						Several error messages printed during the installation phase have been
+						fixed. The problems were harmless, but nonetheless annoying.
+					    </li>
+            <li>
+						Fixed bug in installation of the rivetparser library.
+					    </li>
+            <li>
+						Fixed tables creation for Postgres backend. The SQL script that 
+						creates the rivet_session_cache table misnamed 2 columns.
+						<b>Current DIO Postgres backend breaks Session package if the database
+						was created with an old Rivet version</b>
+
+. To fix the problem one has to
+						rename the 'key' and 'package' columns as 'key_' and 'package_'
+<pre class="programlisting">ALTER TABLE rivet_session_cache RENAME COLUMN key to key_
+ALTER TABLE rivet_session_cache RENAME COLUMN package to package_</pre>
+            </li>
+            <li>
+						Fixed dio_Postgres.tcl method. A mistyped variable caused at least method 
+						'store' to fail.	
+					    </li>
+        </ul>
+        <h5>New Features</h5>
+        <ul>
+            <li>
+                <p>
+                                A new package <b>Calendar</b>
+
+ has been added. Calendar provides 3 Itcl classes that 
+                                print Calendar tables in ASCII, XML and XHTML forms (see examples and related 
+                                manual page).
+                                                                </p>
+                <p>
+                    <em>
+                        <b>Calendar</b>
+
+ requires Tcl8.5 or Tcl8.4 with package 'dict'                                            </em>
+                </p>
+            </li>
+            <li>
+                            New page for package 'form' added to the manual							
+                        </li>
+        </ul>
+    </div>
+    <div class="sez">
+        <h4>Installation Issues</h4>
+        <p>
+					    Rivet is widely configurable to select custom directories where the module and
+					    its associated libraries have to reside.
+			    </p>
+        <ul>
+            <li>
+				    Even though you can install Rivet to run pure Tcl scripts, some associated packages
+				    (namely 'Session' and 'DIO') are written in Itcl, an OO extension of the base 
+				    language.In order to safely run those package, you have to check yourself if 
+				    the Itcl extension installed on your system is compatible with the Tcl version
+				    for which you're building Rivet.
+				</li>
+        </ul>
+    </div>
+    <div class="sez">
+        <h4>Known Problems</h4>
+        <ul>
+            <li>
+						    Rivet is reported to conflict with cgi scripts on some Linux machines.
+						    Symptom of the problem is when cgi scripts hang forever and don't send 
+						    any content to the client
+					    </li>
+        </ul>
+    </div>
+</div>
+
+
+
+                <div class="contentbottom">
+                    
+                </div>
+            </div>
+
+            <div class="sidebar">
+                <ul>
+                    <li id="news">
+    <h4>News</h4>
+    <ul class="blocklist">
+        <li class="navitem">
+            <a href="rn%2d2%2d3.html">11 Nov 2017: Rivet 2.3.5 released</a>
+        </li>
+        <li class="navitem">
+            <a href="rn%2d3%2d0.html">7 Jul 2018: Rivet 3.0.2 released</a>
+        </li>
+    </ul>
+</li>
+ 
+                </ul> 
+                <ul>
+                    <li id="home">
+    <h4>Rivet</h4>
+    <ul class="blocklist">
+        <li class="navitem">
+            <a title="A home for Rivet" href="../index.html">Rivet Homepage</a>
+        </li>
+        <li class="navitem">
+            <a title="Home of Apache Tcl related stuff" target="asf" href="http://tcl.apache.org/">Apache Tcl Home</a>
+        </li>
+        <li class="navitem">
+            <a title="Getting Rivet" href="download.html">Getting Rivet</a>
+        </li>
+        <li class="navitem">
+            <a title="Hello World!" href="hello%5fworld.html">Examples</a>
+        </li>
+        <li class="navitem">
+            <a title="The Rivet development team" href="about.html">About Us - Contact</a>
+        </li>
+    </ul>
+</li>
+<li id="manual">
+    <h4>Documentation</h4>
+    <ul class="blocklist">
+        <li class="navitem">
+            <a title="Rivet 2.1 Manual" target="rivetman2.1" href="http://tcl.apache.org/rivet/manual2.1/">Rivet 2.1</a>
+        </li>
+        <li class="navitem">
+            <a title="Rivet 2.2 Manual" target="rivetman2.2" href="http://tcl.apache.org/rivet/manual2.2/">Rivet 2.2</a>
+        </li>
+        <li class="navitem">
+            <a title="Rivet 2.3 Manual" target="rivetman2.3" href="http://tcl.apache.org/rivet/manual2.3/">Rivet 2.3</a>
+        </li>
+        <li class="navitem">
+            <a title="Rivet 3.0 Manual" target="rivetman3.0" href="http://tcl.apache.org/rivet/manual3.0/">Rivet 3.0</a>
+        </li>
+    </ul>
+</li>
+<li id="rn">
+    <h4>Release Notes</h4>
+    <ul class="blocklist">
+        <li class="navitem">
+            <a href="rn%2d2%2d0.html">v2.0</a>
+        </li>
+        <li class="navitem">
+            <a href="rn%2d2%2d1.html">v2.1</a>
+        </li>
+        <li class="navitem">
+            <a href="rn%2d2%2d2.html">v2.2</a>
+        </li>
+        <li class="navitem">
+            <a href="rn%2d2%2d3.html">v2.3</a>
+        </li>
+        <li class="navitem">
+            <a href="rn%2d3%2d0.html">v3.0</a>
+        </li>
+    </ul>
+</li>
+ 
+                </ul> 
+                <ul>
+                     
+                </ul> 
+            </div>
+            <div class="clear"></div>
+        </div>
+    </div>
+    <div id="footer">
+        <div class="footer-content">
+            <p><a href="http://www.apache.org/">Apache Software Foundation</a> | Design by <a href="http://www.spyka.net">Free CSS Templates</a> | <a href="http://www.justfreetemplates.com">Free Web Templates</a></p>
+        </div>
+    </div>
+    <div style="text-align: center; font-size: 0.75em;">Design downloaded from <a href="http://www.freewebtemplates.com/">free website templates</a>.</div></body>
+</html>
+is_homepage: 0
+
diff --git a/rivet/html/rn-2-1.html b/rivet/html/rn-2-1.html
index 68db2ab..04c6b70 100644
--- a/rivet/html/rn-2-1.html
+++ b/rivet/html/rn-2-1.html
@@ -286,16 +286,10 @@
     <h4>News</h4>
     <ul class="blocklist">
         <li class="navitem">
-            <a href="rn%2d2%2d1.html">3 Mar 2014: Rivet 2.1.4 released</a>
-        </li>
-        <li class="navitem">
-            <a href="rn%2d2%2d2.html">5 Dec 2015: Rivet 2.2.4 released</a>
-        </li>
-        <li class="navitem">
             <a href="rn%2d2%2d3.html">11 Nov 2017: Rivet 2.3.5 released</a>
         </li>
         <li class="navitem">
-            <a href="rn%2d3%2d0.html">9 Feb 2018: Rivet 3.0.1 released</a>
+            <a href="rn%2d3%2d0.html">7 Jul 2018: Rivet 3.0.2 released</a>
         </li>
     </ul>
 </li>
@@ -336,7 +330,7 @@
     </ul>
 </li>
 <li id="manual">
-    <h4>Rivet Documentation</h4>
+    <h4>Documentation</h4>
     <ul class="blocklist">
         <li class="navitem">
             <a title="Rivet 2.1 Manual" target="rivetman2.1" href="http://tcl.apache.org/rivet/manual2.1/">Rivet 2.1</a>
@@ -376,4 +370,5 @@
     </div>
     <div style="text-align: center; font-size: 0.75em;">Design downloaded from <a href="http://www.freewebtemplates.com/">free website templates</a>.</div></body>
 </html>
+is_homepage: 0
 
diff --git a/rivet/html/rn-2-2.html b/rivet/html/rn-2-2.html
index 38ac1cd..0b0af82 100644
--- a/rivet/html/rn-2-2.html
+++ b/rivet/html/rn-2-2.html
@@ -176,16 +176,10 @@
     <h4>News</h4>
     <ul class="blocklist">
         <li class="navitem">
-            <a href="rn%2d2%2d1.html">3 Mar 2014: Rivet 2.1.4 released</a>
-        </li>
-        <li class="navitem">
-            <a href="rn%2d2%2d2.html">5 Dec 2015: Rivet 2.2.4 released</a>
-        </li>
-        <li class="navitem">
             <a href="rn%2d2%2d3.html">11 Nov 2017: Rivet 2.3.5 released</a>
         </li>
         <li class="navitem">
-            <a href="rn%2d3%2d0.html">9 Feb 2018: Rivet 3.0.1 released</a>
+            <a href="rn%2d3%2d0.html">7 Jul 2018: Rivet 3.0.2 released</a>
         </li>
     </ul>
 </li>
@@ -226,7 +220,7 @@
     </ul>
 </li>
 <li id="manual">
-    <h4>Rivet Documentation</h4>
+    <h4>Documentation</h4>
     <ul class="blocklist">
         <li class="navitem">
             <a title="Rivet 2.1 Manual" target="rivetman2.1" href="http://tcl.apache.org/rivet/manual2.1/">Rivet 2.1</a>
@@ -266,4 +260,5 @@
     </div>
     <div style="text-align: center; font-size: 0.75em;">Design downloaded from <a href="http://www.freewebtemplates.com/">free website templates</a>.</div></body>
 </html>
+is_homepage: 0
 
diff --git a/rivet/html/rn-2-3.html b/rivet/html/rn-2-3.html
index 8790b5c..9c384fd 100644
--- a/rivet/html/rn-2-3.html
+++ b/rivet/html/rn-2-3.html
@@ -150,13 +150,19 @@
         <p>
                     Rivet 2.3.0 introduces the command <b>::rivet::try</b>
 
- as a wrapper of the Tcl core 
+ and <b>::rivet::catch</b>
+
+
+                    as a wrappers of the Tcl core 
                     language <b>try</b>
 
-. This command is not exported to the global namespace even when
+ and <b>catch</b>
+
+ commands. These commands are not exported to 
+                    the global namespace even when
                     mod_rivet is build with the <i>--enable-rivet-commands-export</i>
 
-. This command should be
+ and they should be
                     used within Rivet scripts to protect any <b>::rivet::abort_page</b>
 
  and
@@ -174,6 +180,28 @@
 
  fails if mod_rivet is not built with Tcl &gt;= 8.6
                                     </p>
+        <p>
+                    Command <b>::rivet::exit</b>
+
+ was also introduced to give the command
+                    <b>exit</b>
+
+ a more sensible behaviour within the context of the Apache HTTP Web Server. 
+                    In fact the core command has become an alias of <b>::rivet::exit</b>
+
+ which interrupts 
+                    the script execution and hands control on to an AbortScript. Then it completes the 
+                    request and just before returning to the web server framework it terminates the child
+                    process by calling <b>Tcl_Exit</b>
+        </p>
+        <p>
+                    This command replaces the <b>exit</b>
+
+ core command and it's provided as a way
+                    to give it a meaning within the Rivet and Apache context but the
+                    programmer should avoid to use it and instead adopt proper software design
+                    to bring about sudden process termination
+                                    </p>
     </div>
 </div>
 
@@ -234,7 +262,7 @@
     </ul>
 </li>
 <li id="manual">
-    <h4>Rivet Documentation</h4>
+    <h4>Documentation</h4>
     <ul class="blocklist">
         <li class="navitem">
             <a title="Rivet 2.1 Manual" target="rivetman2.1" href="http://tcl.apache.org/rivet/manual2.1/">Rivet 2.1</a>
@@ -274,4 +302,5 @@
     </div>
     <div style="text-align: center; font-size: 0.75em;">Design downloaded from <a href="http://www.freewebtemplates.com/">free website templates</a>.</div></body>
 </html>
+is_homepage: 0
 
diff --git a/rivet/html/rn-3-0.html b/rivet/html/rn-3-0.html
index f99bd51..79a7343 100644
--- a/rivet/html/rn-3-0.html
+++ b/rivet/html/rn-3-0.html
@@ -239,21 +239,8 @@
         </li>
     </ul>
 </li>
-<li id="tcl">
-    <h4>Tcl/Tk</h4>
-    <ul class="blocklist">
-        <li class="navitem">
-            <a title="The Tcl Developer Xchange" target="tclxchange" class="extern" href="http://www.tcl.tk/">
-                The Tcl/Tk Language
-                </a>
-        </li>
-        <li class="navitem">
-            <a title="Tcl community wiki site" target="tclwiki" class="extern" href="http://wiki.tcl.tk/">Tcl'ers Wiki</a>
-        </li>
-    </ul>
-</li>
 <li id="manual">
-    <h4>Rivet Documentation</h4>
+    <h4>Documentation</h4>
     <ul class="blocklist">
         <li class="navitem">
             <a title="Rivet 2.1 Manual" target="rivetman2.1" href="http://tcl.apache.org/rivet/manual2.1/">Rivet 2.1</a>
@@ -269,11 +256,23 @@
         </li>
     </ul>
 </li>
-<li id="support">
-    <h4>Support</h4>
+<li id="rn">
+    <h4>Release Notes</h4>
     <ul class="blocklist">
         <li class="navitem">
-            <a title="Apache Rivet Bugzilla" class="extern" href="https://issues.apache.org/bugzilla/buglist.cgi?quicksearch=Rivet">Bug Reports</a>
+            <a href="rn%2d2%2d0.html">v2.0</a>
+        </li>
+        <li class="navitem">
+            <a href="rn%2d2%2d1.html">v2.1</a>
+        </li>
+        <li class="navitem">
+            <a href="rn%2d2%2d2.html">v2.2</a>
+        </li>
+        <li class="navitem">
+            <a href="rn%2d2%2d3.html">v2.3</a>
+        </li>
+        <li class="navitem">
+            <a href="rn%2d3%2d0.html">v3.0</a>
         </li>
     </ul>
 </li>
@@ -293,4 +292,5 @@
     </div>
     <div style="text-align: center; font-size: 0.75em;">Design downloaded from <a href="http://www.freewebtemplates.com/">free website templates</a>.</div></body>
 </html>
+is_homepage: 0
 
diff --git a/rivet/html/var_access.html b/rivet/html/var_access.html
index 341f3ad..ca0058d 100644
--- a/rivet/html/var_access.html
+++ b/rivet/html/var_access.html
@@ -159,7 +159,7 @@
     </ul>
 </li>
 <li id="manual">
-    <h4>Rivet Documentation</h4>
+    <h4>Documentation</h4>
     <ul class="blocklist">
         <li class="navitem">
             <a title="Rivet 2.1 Manual" target="rivetman2.1" href="http://tcl.apache.org/rivet/manual2.1/">Rivet 2.1</a>
@@ -217,4 +217,5 @@
     </div>
     <div style="text-align: center; font-size: 0.75em;">Design downloaded from <a href="http://www.freewebtemplates.com/">free website templates</a>.</div></body>
 </html>
+is_homepage: 0
 
diff --git a/rivet/index.html b/rivet/index.html
index 5d16ded..910c151 100644
--- a/rivet/index.html
+++ b/rivet/index.html
@@ -143,7 +143,7 @@
     </ul>
 </li>
 <li id="manual">
-    <h4>Rivet Documentation</h4>
+    <h4>Documentation</h4>
     <ul class="blocklist">
         <li class="navitem">
             <a title="Rivet 2.1 Manual" target="rivetman2.1" href="http://tcl.apache.org/rivet/manual2.1/">Rivet 2.1</a>
@@ -191,4 +191,5 @@
     </div>
     <div style="text-align: center; font-size: 0.75em;">Design downloaded from <a href="http://www.freewebtemplates.com/">free website templates</a>.</div></body>
 </html>
+is_homepage: 1
 
diff --git a/rivet/navbar.html b/rivet/navbar.html
deleted file mode 100644
index ba2aaa5..0000000
--- a/rivet/navbar.html
+++ /dev/null
@@ -1,26 +0,0 @@
-  <td class="nav" valign="top" align="left">
-  <table class="nav">
-    <tr>
-      <td>
-	<a href="../">Apache Tcl Home</a>
-      </td>
-    </tr>
-    <tr>
-      <td>
-	<a href="index.rvt">Apache Rivet</a>
-      </td>
-    </tr>   <tr>
-      <td>
-	<a href="download.rvt">Download</a>
-      </td>
-    </tr>   <tr>
-      <td>
-	<a href="docs/">Documentation</a>
-      </td>
-    </tr>   <tr>
-      <td>
-	<a href="about.rvt">About Us - Contact</a>
-      </td>
-    </tr>
-  </table>
-  </td>
diff --git a/rivet/rivet.css b/rivet/rivet.css
deleted file mode 100644
index 4a7c367..0000000
--- a/rivet/rivet.css
+++ /dev/null
@@ -1,266 +0,0 @@
-/* */
-
-* {
-    margin:		0px;
-    padding:		0px;
-}
-
-body {
-
-}
-
-#announces {
-/*  border-top:		2px solid black; */
-    border-bottom:	2px solid black;
-    padding:		2.0em auto;
-    font-size:		1.5em; 
-}
-
-#announces>div {
-    margin:		0.7em auto;
-}
-
-#bigcontainer {
-    padding-right:	4em;
-}
-
-div#pageheadline {
-/*  position:		absolute;	*/
-    top:		0px;
-    left:		0px;
-    height:		105px;
-    padding:		2px;
-/*  border:		1px solid red;	*/
-/*  width:		805px;		*/
-}
-
-div.headline {
-    moz-box-shadow:	10px 10px 5px #888;
-    font-size:			22pt;
-    text-align:		left;
-    margin-left:		170px;
-    padding:			0.5em;
-    margin-top:		20px;
-    margin-bottom:	20px;
-    position:   		relative;
-/*  width:		20em;		*/
-    border:				1px solid blue; 
-}
-
-div.decoration {
-    float:				left;
-/*  
-    width:	     	100px;
-    background-color: 	lightblue; 
-*/
-}
-
-div#pagecontents {
-/*    position:	    	absolute;	*/
-    margin-top:		1em;
-    top:	    			105px;
-    left:	    		0px;
-/*  border:	    	1px solid green; */
-/*  width:	    	804px;		 */
-}
-
-#pagecontents img {
-     border:			1px solid black;
-     padding:			1px;
-}
-
-div.navbar {
-/*  width:	    	10em;		*/
-    width:				160px;
-    position:	    	relative;
-    padding:	    	2px;
-    font-family:		Arial,sans-serif;
-    font-size:			0.8em;
-/*  border:	    	1px dashed Navy; */
-}
-
-div.navleft {
-    float:	    	left;
-}
-
-div.navright {
-    float:	    	right;
-}
-
-div.staticmenu {
-    margin-top:	   2px;
-    margin-bottom:	1em;
-/*  border:	    	1px solid blue; */
-}
-
-div.menuheader {
-    border-top:		1px solid black;
-    padding-top:	4px;
-    padding-bottom:	4px;
-    background-color: 	#eee;
-}
-
-span.navitem {
-/*  font-size:	    	70%;		*/
-    display:	    	block;
-    margin:		0.5em;
-}
-
-span.navitem a {
-    text-decoration:	none;
-    padding:		2px;
-}
-
-span.navitem a:hover {
-    background-color:	#eee;
-    border:		1px solid #808080;
-}
-
-div#content {
-    margin-top:	    	2px;
-    font-size:		10pt;
-    position:	    	relative;
-    margin-left:    	162px;		
-/*  margin-right:   	162px;		*/
-/*  border:	    	1px solid red;  */
-    text-align:	    	justify;
-    padding:	    	0.5em;
-/*  width:		60em;		*/
-    font-family:	Arial,sans-serif;
-/*  background-color:	#ffff99;	*/
-}
-
-#content p {
-    margin:		0.8em auto;
-}
-
-#last_modified {
-    border-top:		1px solid #ccc;
-    font-size:		80%;
-    padding:		5px;
-    text-align:		right;
-    margin-top:		2em;
-}
-
-.example-contents p {
-    width:		90%;
-}
-
-.example-contents pre {
-    margin:		auto 5% auto 5%;
-}
-
-.foto {
-    float:  		left;
-    margin-right:   	0.5em;
-}
-
-#intestazione {
-    top:		0px;
-    left:		103px;
-/*  width:		604px;		*/
-}
-
-#intestazione img {
-    top:	    	0px;
-}
-
-#footer .rightaligned {
-    margin-right:	1em;
-    text-align:		right;
-    width:		50%;
-    float:		right;
-}
-
-#footer .leftaligned {
-    margin-left:	0.5em;
-    text-align:		left;
-    width:		40%;
-    float:		left;
-}
-
-div#footer {
-    margin-top:	    	0.3em;
-    border:	    	1px dotted red;
-    background-color: 	#cf9;
-    height:	    	1.5em;
-}
-
-.contentheadline {
-    text-align:	 	center;
-    font-size:		150%;
-    font-weight:	bold;
-    border-bottom:	1px solid #ccc;
-    margin-bottom:	1em;
-}
-
-ul {
-    margin-top:	    	0.8em;
-    margin-left:    	2em;
-}
-
-.clearfloats {
-    clear:		both;
-}
-
-code {
-    margin:		1em 2em;
-    border:		1px dashed black;
-    background-color:	#f0f0f0;
-    padding:		0.2em;
-}
-
-pre.code {
-    padding:		1ex;
-}
-
-blockquote {
-    font-size:		smaller;
-    font-style:		italic;
-}
-
-span.type {
-    color:		#4682B4;
-}
-
-td {
-    padding:		0.5em;
-}
-
-td.code {
-    font-size: 		smaller;
-    background-color:	black;
-    border:		1em solid white;
-    color:		white;
-}
-
-.programlisting {
-    background:	    #ddd; 
-    margin:	    2ex; 
-    margin-right:   10%;       
-    padding:	    1ex; 
-    border:	    dashed black 1px ; 
-    white-space:    pre;      
-    font-family:    monospace; 
-    font-size:	    90%;
-}
-
-span.variable-name {
-	 color: #228b22;
-} /* font-lock-variable-name-face */
-
-span.comment {
-	color: #ff7f24;
-} /* font-lock-comment-face */
-
-span.keyword {
-	color: #00ffff;
-} /* font-lock-keyword-face */
-
-span.function-name {
-	color: #87cefa;
-} /* font-lock-function-name-face */
-
-li {
-    margin:	1em;
-}
diff --git a/rivet/style.css b/rivet/style.css
deleted file mode 100644
index 64467b5..0000000
--- a/rivet/style.css
+++ /dev/null
@@ -1,50 +0,0 @@
-body {
-    font-family: Arial, sans-serif;
-    font-style: normal;
-    color: #000000;
-    background-color: #ddddff;
-}
-
-A:link { color: #cc3300 }
-A:visited { color : #003399; }
-A:hover { color : #000000 ; background-color : #aaaaaa }
-
-p {
-    font-size: smaller;
-}
-
-h1 {
-    font-family: Arial, sans-serif;
-    background-color: #003399;
-    color: #cc3300;
-}
-
-h2 {
-    font-family: Arial, sans-serif;
-}
-
-h3 {
-    font-family: Arial, sans-serif;
-}
-
-b {
-    font-weight: bold;
-}
-
-td {
-    font-family: Arial, sans-serif;
-    padding: 0.25em;
-    background-color: #ddddff;
-}
-
-td.nav {
-         font-weight: bold;
-}
-
-code {
-       color: #006600;
-}
-
-li {
-   margin-bottom: 0.5em;
-}
