blob: 38ac1cdb749fff21d6a1d010bf0e155a4c33cc2d [file] [log] [blame]
<!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.2: 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.2: Release Notes and Known Problems</h2>
<div>
<div class="sez">
<h4>Download</h4>
<p>
Rivet 2.2 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.2 works with the Apache Webserver version 2.x (running the
<strong>prefork</strong>
MPM) and requires Tcl &gt;= 8.5.11. Tcl &gt;= 8.6.1 is
recommended
</p>
</div>
<div class="sez">
<h4>Rivet 2.2.4 Release Notes</h4>
<p>
This release is meant to address bug
<a href="https://bz.apache.org/bugzilla/show_bug.cgi?id=58008" target="_blank">#58008</a>
that caused random segmentation faults when a child processes was shutting down.
Also minor improvements were done to the core module and to resolve a few problems
with the HTML manual DocBook output
</p>
</div>
<div class="sez">
<h4>Rivet 2.2.3 Release Notes</h4>
<p>
In this release further elaboration of bug
<a href="https://bz.apache.org/bugzilla/show_bug.cgi?id=57501">#57501</a>
lead to an improved error and abort_page handling and to consistent
closing of said problem.
</p>
</div>
<div class="sez">
<h4>Rivet 2.2.2 Release Notes</h4>
<p>We recommend to upgrade to this version of Rivet as it delivers two important bug fixes</p>
<ul>
<li>bug <a href="https://bz.apache.org/bugzilla/show_bug.cgi?id=57501">#57501</a>
fixed: abort_page does not stop page execution after a call to ::rivet::parse </li>
<li>bug <a href="https://bz.apache.org/bugzilla/show_bug.cgi?id=57686">#57686</a>
fixed:
wrong handling of file not found condition </li>
</ul>
</div>
<div class="sez">
<h4>Rivet 2.2.1 Release Notes</h4>
<p>New Tcl commands</p>
<ul>
<li>New command
<pre class="programlisting">::rivet::redirect URL ?permanent?</pre>
was introduced. The command achieves the same
function of <b>::rivet::headers redirect &lt;URL&gt;</b>
but it extends its functionalities
by triggering the execution of the <em>AbortScript</em>
when defined. The command
builds a dictionary carrying 2 keys with the reason for the abort (error_code) and the URL
the browser is diverted to. This dictionary can be fetched with command <b>::rivet::abort_code</b>
</li>
<li>New command <b>::rivet::header sent</b>
returns 1 if HTTP have been sent already
because either the output buffer was filled or command <b>flush stdout</b>
was
executed </li>
<li>New command <b>::rivet::headers get</b>
returns the value of an HTTP output
header </li>
</ul>
<p>mod_rivet internal changes and build system improvements</p>
<ul>
<li>Configuration of the package was extended by adding a new --with-apu-config macro
that allows fine control over the location of apr-util include files (contributed by <em>
Poor Yorick</em>
) </li>
<li>New directive <em>SeparateChannels</em>
allow finer control over Rivet internal channels.
I/O handling is done in
mod_rivet by creating a single channel per child process. This is true also if
<em>SeparateVirtualInterp</em>
is set, thus reducing the amount of memory allocated
for channel descriptors and buffers.This is good for most common usages of Rivet because
it's unlikely that applications will tamper with the channel parameters. Anyway if
you're deploying mod_rivet in an environment where different applications need to
have full control over channels setting the directive you restore previous
mod_rivet policy. This option has effect only if <em>SeparateVirtualInterp</em>
is set </li>
</ul>
</div>
<div class="sez">
<h4>Rivet 2.2.0 Release Notes</h4>
<p>Tcl level new commands </p>
<ul>
<li>New '::rivet::inspect server' command returns a dictionary with informative fields taken
from Apache server_rec object</li>
<li>New '::rivet::inspect script' command returns the name of the script being executed</li>
</ul>
<p>mod_rivet internal changes and build system improvements</p>
<ul>
<li>Commands gaining access to the request_rec object are now checking this pointer and
in case it's NULL they fain with a Tcl error. This is done through the CHECK_REQUEST_REC.
Even though this is correct the new behaviour potentially can break existing code in
initialization and termination scripts. Thats the main reason for tagging this release as
2.2.0</li>
<li>The code was further modularized and single components of the
module can be selected by configure. This should enable the development
or refactoring of components in mod_rivet without branching the whole code
tree. This new code selection is implemented through various macros in
configure.ac and various symbols in the Makefiles. See
<pre class="programlisting">./configure --help</pre>
to have a list of the available switches implemented by those macros
</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%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>
</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="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>
<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="support">
<h4>Support</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>
</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>