541 lines
		
	
	
		
			15 KiB
		
	
	
	
		
			HTML
		
	
	
	
			
		
		
	
	
			541 lines
		
	
	
		
			15 KiB
		
	
	
	
		
			HTML
		
	
	
	
<?xml version="1.0" encoding="utf-8" ?>
 | 
						|
<!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>
 | 
						|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 | 
						|
<meta name="generator" content="Docutils 0.6: http://docutils.sourceforge.net/" />
 | 
						|
<title>shUnit2 2.1.x README</title>
 | 
						|
<style type="text/css">
 | 
						|
 | 
						|
/*
 | 
						|
:Author: David Goodger
 | 
						|
:Contact: goodger@users.sourceforge.net
 | 
						|
:Date: $Date: 2007-04-11 11:48:16 +0100 (Wed, 11 Apr 2007) $
 | 
						|
:Revision: $Revision: 2791 $
 | 
						|
:Copyright: This stylesheet has been placed in the public domain.
 | 
						|
:Modified by: Kate Ward <kate.ward@forestent.com>
 | 
						|
 | 
						|
Default cascading style sheet for the HTML output of Docutils.
 | 
						|
 | 
						|
See http://docutils.sf.net/docs/howto/html-stylesheets.html for how to
 | 
						|
customize this style sheet.
 | 
						|
*/
 | 
						|
 | 
						|
/* used to remove borders from tables and images */
 | 
						|
.borderless, table.borderless td, table.borderless th {
 | 
						|
  border: 0 }
 | 
						|
 | 
						|
table.borderless td, table.borderless th {
 | 
						|
  /* Override padding for "table.docutils td" with "! important".
 | 
						|
     The right padding separates the table cells. */
 | 
						|
  padding: 0 0.5em 0 0 ! important }
 | 
						|
 | 
						|
.first {
 | 
						|
  /* Override more specific margin styles with "! important". */
 | 
						|
  margin-top: 0 ! important }
 | 
						|
 | 
						|
.last, .with-subtitle {
 | 
						|
  margin-bottom: 0 ! important }
 | 
						|
 | 
						|
.hidden {
 | 
						|
  display: none }
 | 
						|
 | 
						|
a.toc-backref {
 | 
						|
  text-decoration: none ;
 | 
						|
  color: black }
 | 
						|
 | 
						|
blockquote.epigraph {
 | 
						|
  margin: 2em 5em ; }
 | 
						|
 | 
						|
dl.docutils dd {
 | 
						|
  margin-bottom: 0.5em }
 | 
						|
 | 
						|
/* Uncomment (and remove this text!) to get bold-faced definition list terms
 | 
						|
dl.docutils dt {
 | 
						|
  font-weight: bold }
 | 
						|
*/
 | 
						|
 | 
						|
div.abstract {
 | 
						|
  margin: 2em 5em }
 | 
						|
 | 
						|
div.abstract p.topic-title {
 | 
						|
  font-weight: bold ;
 | 
						|
  text-align: center }
 | 
						|
 | 
						|
div.admonition, div.attention, div.caution, div.danger, div.error,
 | 
						|
div.hint, div.important, div.note, div.tip, div.warning {
 | 
						|
  margin: 2em ;
 | 
						|
  border: medium outset ;
 | 
						|
  padding: 1em }
 | 
						|
 | 
						|
div.admonition p.admonition-title, div.hint p.admonition-title,
 | 
						|
div.important p.admonition-title, div.note p.admonition-title,
 | 
						|
div.tip p.admonition-title {
 | 
						|
  font-weight: bold ;
 | 
						|
  font-family: sans-serif }
 | 
						|
 | 
						|
div.attention p.admonition-title, div.caution p.admonition-title,
 | 
						|
div.danger p.admonition-title, div.error p.admonition-title,
 | 
						|
div.warning p.admonition-title {
 | 
						|
  color: red ;
 | 
						|
  font-weight: bold ;
 | 
						|
  font-family: sans-serif }
 | 
						|
 | 
						|
/* Uncomment (and remove this text!) to get reduced vertical space in
 | 
						|
   compound paragraphs.
 | 
						|
div.compound .compound-first, div.compound .compound-middle {
 | 
						|
  margin-bottom: 0.5em }
 | 
						|
 | 
						|
div.compound .compound-last, div.compound .compound-middle {
 | 
						|
  margin-top: 0.5em }
 | 
						|
*/
 | 
						|
 | 
						|
div.dedication {
 | 
						|
  margin: 2em 5em ;
 | 
						|
  text-align: center ;
 | 
						|
  font-style: italic }
 | 
						|
 | 
						|
div.dedication p.topic-title {
 | 
						|
  font-weight: bold ;
 | 
						|
  font-style: normal }
 | 
						|
 | 
						|
div.figure {
 | 
						|
  margin-left: 2em ;
 | 
						|
  margin-right: 2em }
 | 
						|
 | 
						|
div.footer, div.header {
 | 
						|
  clear: both;
 | 
						|
  font-size: smaller }
 | 
						|
 | 
						|
div.line-block {
 | 
						|
  display: block ;
 | 
						|
  margin-top: 1em ;
 | 
						|
  margin-bottom: 1em }
 | 
						|
 | 
						|
div.line-block div.line-block {
 | 
						|
  margin-top: 0 ;
 | 
						|
  margin-bottom: 0 ;
 | 
						|
  margin-left: 1.5em }
 | 
						|
 | 
						|
div.sidebar {
 | 
						|
  margin-left: 1em ;
 | 
						|
  border: medium outset ;
 | 
						|
  padding: 1em ;
 | 
						|
  background-color: #ffffee ;
 | 
						|
  width: 40% ;
 | 
						|
  float: right ;
 | 
						|
  clear: right }
 | 
						|
 | 
						|
div.sidebar p.rubric {
 | 
						|
  font-family: sans-serif ;
 | 
						|
  font-size: medium }
 | 
						|
 | 
						|
div.system-messages {
 | 
						|
  margin: 5em }
 | 
						|
 | 
						|
div.system-messages h1 {
 | 
						|
  color: red }
 | 
						|
 | 
						|
div.system-message {
 | 
						|
  border: medium outset ;
 | 
						|
  padding: 1em }
 | 
						|
 | 
						|
div.system-message p.system-message-title {
 | 
						|
  color: red ;
 | 
						|
  font-weight: bold }
 | 
						|
 | 
						|
div.topic {
 | 
						|
  margin: 2em }
 | 
						|
 | 
						|
h1.section-subtitle, h2.section-subtitle, h3.section-subtitle,
 | 
						|
h4.section-subtitle, h5.section-subtitle, h6.section-subtitle {
 | 
						|
  margin-top: 0.4em }
 | 
						|
 | 
						|
h1.title {
 | 
						|
  text-align: center }
 | 
						|
 | 
						|
h2.subtitle {
 | 
						|
  text-align: center }
 | 
						|
 | 
						|
hr.docutils {
 | 
						|
  width: 75% }
 | 
						|
 | 
						|
img.align-left {
 | 
						|
  clear: left }
 | 
						|
 | 
						|
img.align-right {
 | 
						|
  clear: right }
 | 
						|
 | 
						|
ol.simple, ul.simple {
 | 
						|
  margin-bottom: 1em }
 | 
						|
 | 
						|
ol.arabic {
 | 
						|
  list-style: decimal }
 | 
						|
 | 
						|
ol.loweralpha {
 | 
						|
  list-style: lower-alpha }
 | 
						|
 | 
						|
ol.upperalpha {
 | 
						|
  list-style: upper-alpha }
 | 
						|
 | 
						|
ol.lowerroman {
 | 
						|
  list-style: lower-roman }
 | 
						|
 | 
						|
ol.upperroman {
 | 
						|
  list-style: upper-roman }
 | 
						|
 | 
						|
p.attribution {
 | 
						|
  text-align: right ;
 | 
						|
  margin-left: 50% }
 | 
						|
 | 
						|
p.caption {
 | 
						|
  font-style: italic }
 | 
						|
 | 
						|
p.credits {
 | 
						|
  font-style: italic ;
 | 
						|
  font-size: smaller }
 | 
						|
 | 
						|
p.label {
 | 
						|
  white-space: nowrap }
 | 
						|
 | 
						|
p.rubric {
 | 
						|
  font-weight: bold ;
 | 
						|
  font-size: larger ;
 | 
						|
  color: maroon ;
 | 
						|
  text-align: center }
 | 
						|
 | 
						|
p.sidebar-title {
 | 
						|
  font-family: sans-serif ;
 | 
						|
  font-weight: bold ;
 | 
						|
  font-size: larger }
 | 
						|
 | 
						|
p.sidebar-subtitle {
 | 
						|
  font-family: sans-serif ;
 | 
						|
  font-weight: bold }
 | 
						|
 | 
						|
p.topic-title {
 | 
						|
  font-weight: bold }
 | 
						|
 | 
						|
pre.address {
 | 
						|
  margin-bottom: 0 ;
 | 
						|
  margin-top: 0 ;
 | 
						|
  font-family: serif ;
 | 
						|
  font-size: 100% }
 | 
						|
 | 
						|
pre.literal-block, pre.doctest-block {
 | 
						|
  margin-left: 2em ;
 | 
						|
  margin-right: 2em ;
 | 
						|
  background-color: #eeeeee }
 | 
						|
 | 
						|
span.classifier {
 | 
						|
  font-family: sans-serif ;
 | 
						|
  font-style: oblique }
 | 
						|
 | 
						|
span.classifier-delimiter {
 | 
						|
  font-family: sans-serif ;
 | 
						|
  font-weight: bold }
 | 
						|
 | 
						|
span.interpreted {
 | 
						|
  font-family: sans-serif }
 | 
						|
 | 
						|
span.option {
 | 
						|
  white-space: nowrap }
 | 
						|
 | 
						|
span.pre {
 | 
						|
  white-space: pre }
 | 
						|
 | 
						|
span.problematic {
 | 
						|
  color: red }
 | 
						|
 | 
						|
span.section-subtitle {
 | 
						|
  /* font-size relative to parent (h1..h6 element) */
 | 
						|
  font-size: 80% }
 | 
						|
 | 
						|
table.citation {
 | 
						|
  border-left: solid 1px gray;
 | 
						|
  margin-left: 1px }
 | 
						|
 | 
						|
table.docinfo {
 | 
						|
  margin: 2em 4em }
 | 
						|
 | 
						|
/*
 | 
						|
table.docutils {
 | 
						|
  margin-top: 0.5em ;
 | 
						|
  margin-bottom: 0.5em }
 | 
						|
*/
 | 
						|
 | 
						|
table.footnote {
 | 
						|
  border-left: solid 1px black;
 | 
						|
  margin-left: 1px ;
 | 
						|
  font-size: 80% }
 | 
						|
  }
 | 
						|
 | 
						|
table.docutils td, table.docutils th,
 | 
						|
table.docinfo td, table.docinfo th {
 | 
						|
  padding-left: 0.5em ;
 | 
						|
  padding-right: 0.5em ;
 | 
						|
  vertical-align: top }
 | 
						|
 | 
						|
table.docutils th.field-name, table.docinfo th.docinfo-name {
 | 
						|
  font-weight: bold ;
 | 
						|
  text-align: left ;
 | 
						|
  white-space: nowrap ;
 | 
						|
  padding-left: 0 }
 | 
						|
 | 
						|
h1 tt.docutils, h2 tt.docutils, h3 tt.docutils,
 | 
						|
h4 tt.docutils, h5 tt.docutils, h6 tt.docutils {
 | 
						|
  font-size: 100% }
 | 
						|
 | 
						|
/*
 | 
						|
tt.docutils {
 | 
						|
  background-color: #eeeeee }
 | 
						|
*/
 | 
						|
 | 
						|
ul.auto-toc {
 | 
						|
  list-style-type: none }
 | 
						|
 | 
						|
/* customizations by kward */
 | 
						|
 | 
						|
h1 { font-size: 133%; border-top:1px solid #CCCCFF; }
 | 
						|
h1.title { font-size: 150%; border-top:0px; padding-top: 1em; }
 | 
						|
/* div.document { font-size: 90% } */
 | 
						|
 | 
						|
</style>
 | 
						|
</head>
 | 
						|
<body>
 | 
						|
<div class="document" id="shunit2-2-1-x-readme">
 | 
						|
<h1 class="title">shUnit2 2.1.x README</h1>
 | 
						|
 | 
						|
<div class="section" id="code-google-com">
 | 
						|
<h1>code.google.com</h1>
 | 
						|
<p>This project is stored on code.google.com as <a class="reference external" href="http://code.google.com/p/shunit2/">http://code.google.com/p/shunit2/</a>.
 | 
						|
All releases as of 2.1.4 and full source are available there. Documentation is
 | 
						|
included as part of the source and each release. Source code is stored in
 | 
						|
Subversion and can be accessed using the following information.</p>
 | 
						|
<p>Browse the code in a web browser:</p>
 | 
						|
<ul class="simple">
 | 
						|
<li><a class="reference external" href="http://code.google.com/p/shunit2/source/browse">http://code.google.com/p/shunit2/source/browse</a></li>
 | 
						|
<li>svn > trunk > source > 2.1</li>
 | 
						|
</ul>
 | 
						|
<p>Check out the code locally</p>
 | 
						|
<pre class="literal-block">
 | 
						|
$ svn checkout http://shunit2.googlecode.com/svn/trunk/ shflags-read-only
 | 
						|
</pre>
 | 
						|
</div>
 | 
						|
<div class="section" id="sourceforge">
 | 
						|
<h1>SourceForge</h1>
 | 
						|
<p>DEPRECATED</p>
 | 
						|
<p>This project is stored on SourceForge as <a class="reference external" href="http://sf.net/projects/shunit2">http://sf.net/projects/shunit2</a>. The
 | 
						|
source code is stored in Subversion and can be accessed using the following
 | 
						|
information.</p>
 | 
						|
<p>Check out the code locally</p>
 | 
						|
<pre class="literal-block">
 | 
						|
$ svn co https://shunit2.svn.sourceforge.net/svnroot/shunit2/trunk/source/2.1 shunit2
 | 
						|
</pre>
 | 
						|
<p>Browse the code in a web browser:</p>
 | 
						|
<ul class="simple">
 | 
						|
<li><a class="reference external" href="http://shunit2.svn.sourceforge.net/viewvc/shunit2/trunk/source/2.1/">http://shunit2.svn.sourceforge.net/viewvc/shunit2/trunk/source/2.1/</a></li>
 | 
						|
<li><a class="reference external" href="http://shunit2.svn.sourceforge.net/svnroot/shunit2/trunk/source/2.1/">http://shunit2.svn.sourceforge.net/svnroot/shunit2/trunk/source/2.1/</a></li>
 | 
						|
</ul>
 | 
						|
</div>
 | 
						|
<div class="section" id="making-a-release">
 | 
						|
<h1>Making a release</h1>
 | 
						|
<p>For these steps, it is assumed we are working with release 2.0.0.</p>
 | 
						|
<p>Steps:</p>
 | 
						|
<ul class="simple">
 | 
						|
<li>write release notes</li>
 | 
						|
<li>update version</li>
 | 
						|
<li>finish changelog</li>
 | 
						|
<li>check all the code in</li>
 | 
						|
<li>tag the release</li>
 | 
						|
<li>export the release</li>
 | 
						|
<li>create tarball</li>
 | 
						|
<li>md5sum the tarball and sign with gpg</li>
 | 
						|
<li>update website</li>
 | 
						|
<li>post to SourceForge and Freshmeat</li>
 | 
						|
</ul>
 | 
						|
<div class="section" id="write-release-notes">
 | 
						|
<h2>Write Release Notes</h2>
 | 
						|
<p>This should be pretty self explanatory. Use one of the release notes from a
 | 
						|
previous release as an example.</p>
 | 
						|
<p>The versions of the various platforms and shells are included when the
 | 
						|
master unit test script is run, or when <tt class="docutils literal">bin/gen_test_results.sh</tt> is
 | 
						|
used. To determine the versions of the installed shells by hand, use the
 | 
						|
<tt class="docutils literal">lib/versions</tt> script.</p>
 | 
						|
<p>Alternatively, do the following:</p>
 | 
						|
<table border="1" class="docutils">
 | 
						|
<colgroup>
 | 
						|
<col width="9%" />
 | 
						|
<col width="12%" />
 | 
						|
<col width="79%" />
 | 
						|
</colgroup>
 | 
						|
<thead valign="bottom">
 | 
						|
<tr><th class="head">Shell</th>
 | 
						|
<th class="head">OS</th>
 | 
						|
<th class="head">Notes</th>
 | 
						|
</tr>
 | 
						|
</thead>
 | 
						|
<tbody valign="top">
 | 
						|
<tr><td>bash</td>
 | 
						|
<td> </td>
 | 
						|
<td><tt class="docutils literal">$ bash <span class="pre">--version</span></tt></td>
 | 
						|
</tr>
 | 
						|
<tr><td>dash</td>
 | 
						|
<td>Linux</td>
 | 
						|
<td><tt class="docutils literal">$ dpkg <span class="pre">-l</span> |grep dash</tt></td>
 | 
						|
</tr>
 | 
						|
<tr><td rowspan="3">ksh</td>
 | 
						|
<td> </td>
 | 
						|
<td><tt class="docutils literal">$ ksh <span class="pre">--version</span></tt>
 | 
						|
-or-
 | 
						|
<tt class="docutils literal">$ echo 'echo $KSH_VERSION' |ksh</tt></td>
 | 
						|
</tr>
 | 
						|
<tr><td>Cygwin</td>
 | 
						|
<td>see pdksh</td>
 | 
						|
</tr>
 | 
						|
<tr><td>Solaris</td>
 | 
						|
<td><tt class="docutils literal">$ strings /usr/bin/ksh |grep 'Version'</tt></td>
 | 
						|
</tr>
 | 
						|
<tr><td rowspan="2">pdksh</td>
 | 
						|
<td> </td>
 | 
						|
<td><tt class="docutils literal">$ strings /bin/pdksh |grep 'PD KSH'</tt></td>
 | 
						|
</tr>
 | 
						|
<tr><td>Cygwin</td>
 | 
						|
<td>look in the downloaded Cygwin directory</td>
 | 
						|
</tr>
 | 
						|
<tr><td>sh</td>
 | 
						|
<td>Solaris</td>
 | 
						|
<td>not possible</td>
 | 
						|
</tr>
 | 
						|
<tr><td>zsh</td>
 | 
						|
<td> </td>
 | 
						|
<td><tt class="docutils literal">$ zsh <span class="pre">--version</span></tt></td>
 | 
						|
</tr>
 | 
						|
</tbody>
 | 
						|
</table>
 | 
						|
</div>
 | 
						|
<div class="section" id="update-version">
 | 
						|
<h2>Update Version</h2>
 | 
						|
<p>Edit <tt class="docutils literal">src/shell/shunit2</tt> and change the version number in the comment, as well
 | 
						|
as in the <tt class="docutils literal">SHUNIT_VERSION</tt> variable.</p>
 | 
						|
</div>
 | 
						|
<div class="section" id="finish-documentation">
 | 
						|
<h2>Finish Documentation</h2>
 | 
						|
<p>Make sure that any remaining changes get put into the <tt class="docutils literal"><span class="pre">CHANGES-X.X.txt</span></tt> file.</p>
 | 
						|
<p>Finish writing the <tt class="docutils literal"><span class="pre">RELEASE_NOTES-X.X.X.txt</span></tt>. If necessary, run it
 | 
						|
through the <strong>fmt</strong> command to make it pretty (hopefully it is already).</p>
 | 
						|
<pre class="literal-block">
 | 
						|
$ fmt -w 80 RELEASE_NOTES-2.0.0.txt >RELEASE_NOTES-2.0.0.txt.new
 | 
						|
$ mv RELEASE_NOTES-2.0.0.txt.new RELEASE_NOTES-2.0.0.txt
 | 
						|
</pre>
 | 
						|
<p>We want to have an up-to-date version of the documentation in the release, so
 | 
						|
we'd better build it.</p>
 | 
						|
<pre class="literal-block">
 | 
						|
$ pwd
 | 
						|
.../shunit2/source/2.1
 | 
						|
$ cd doc
 | 
						|
$ RST2HTML_OPTS='--stylesheet-path=rst2html.css'
 | 
						|
$ rst2html ${RST2HTML_OPTS} shunit2.txt >shunit2.html
 | 
						|
$ rst2html ${RST2HTML_OPTS} README.txt >README.html
 | 
						|
</pre>
 | 
						|
</div>
 | 
						|
<div class="section" id="check-in-all-the-code">
 | 
						|
<h2>Check In All the Code</h2>
 | 
						|
<p>This step is pretty self-explanatory</p>
 | 
						|
<pre class="literal-block">
 | 
						|
$ pwd
 | 
						|
.../shunit2/source/2.0
 | 
						|
$ svn ci -m "finalizing release"
 | 
						|
</pre>
 | 
						|
</div>
 | 
						|
<div class="section" id="tag-the-release">
 | 
						|
<h2>Tag the Release</h2>
 | 
						|
<pre class="literal-block">
 | 
						|
$ pwd
 | 
						|
.../shunit2/source
 | 
						|
$ ls
 | 
						|
2.0  2.1
 | 
						|
$ svn cp -m "Release 2.0.0" 2.0 https://shunit2.googlecode.com/svn/tags/source/2.0.0
 | 
						|
</pre>
 | 
						|
</div>
 | 
						|
<div class="section" id="export-the-release">
 | 
						|
<h2>Export the Release</h2>
 | 
						|
<pre class="literal-block">
 | 
						|
$ pwd
 | 
						|
.../shunit2/builds
 | 
						|
$ svn export https://shunit2.googlecode.com/svn/tags/source/2.0.0 shunit2-2.0.0
 | 
						|
</pre>
 | 
						|
</div>
 | 
						|
<div class="section" id="create-tarball">
 | 
						|
<h2>Create Tarball</h2>
 | 
						|
<pre class="literal-block">
 | 
						|
$ tar cfz ../releases/shunit2-2.0.0.tgz shunit2-2.0.0
 | 
						|
</pre>
 | 
						|
</div>
 | 
						|
<div class="section" id="sign-the-tarball-with-gpg">
 | 
						|
<h2>Sign the Tarball with gpg</h2>
 | 
						|
<pre class="literal-block">
 | 
						|
$ cd ../releases
 | 
						|
$ gpg --default-key kate.ward@forestent.com --detach-sign shunit2-2.0.0.tgz
 | 
						|
</pre>
 | 
						|
</div>
 | 
						|
<div class="section" id="update-website">
 | 
						|
<h2>Update Website</h2>
 | 
						|
<p>Again, pretty self-explanatory. Make sure to copy the GPG signature file. Once
 | 
						|
that is done, make sure to tag the website so we can go back in time if needed.</p>
 | 
						|
<pre class="literal-block">
 | 
						|
$ pwd
 | 
						|
.../shunit2
 | 
						|
$ ls
 | 
						|
source  website
 | 
						|
$ svn cp -m "Release 2.0.0" \
 | 
						|
website https://shunit2.googlecode.com/svn/tags/website/20060916
 | 
						|
</pre>
 | 
						|
<p>Now, update the website. It too is held in Subversion, so <strong>ssh</strong> into the web
 | 
						|
server and use <tt class="docutils literal">svn up</tt> to grab the latest version.</p>
 | 
						|
</div>
 | 
						|
<div class="section" id="post-to-code-google-com-and-freshmeat">
 | 
						|
<h2>Post to code.google.com and Freshmeat</h2>
 | 
						|
<ul class="simple">
 | 
						|
<li><a class="reference external" href="http://code.google.com/p/shunit2/">http://code.google.com/p/shunit2/</a></li>
 | 
						|
<li><a class="reference external" href="http://freshmeat.net/">http://freshmeat.net/</a></li>
 | 
						|
</ul>
 | 
						|
</div>
 | 
						|
</div>
 | 
						|
<div class="section" id="related-documentation">
 | 
						|
<h1>Related Documentation</h1>
 | 
						|
<dl class="docutils">
 | 
						|
<dt>Docbook:</dt>
 | 
						|
<dd><a class="reference external" href="http://www.docbook.org/">http://www.docbook.org/</a></dd>
 | 
						|
<dt>Docbook XML</dt>
 | 
						|
<dd><dl class="first last docutils">
 | 
						|
<dt>docbook-xml-4.4.zip:</dt>
 | 
						|
<dd><a class="reference external" href="http://www.docbook.org/xml/4.4/docbook-xml-4.4.zip">http://www.docbook.org/xml/4.4/docbook-xml-4.4.zip</a>
 | 
						|
<a class="reference external" href="http://www.oasis-open.org/docbook/xml/4.4/docbook-xml-4.4.zip">http://www.oasis-open.org/docbook/xml/4.4/docbook-xml-4.4.zip</a></dd>
 | 
						|
<dt>docbook-xml-4.5.zip:</dt>
 | 
						|
<dd><a class="reference external" href="http://www.docbook.org/xml/4.5/docbook-xml-4.5.zip">http://www.docbook.org/xml/4.5/docbook-xml-4.5.zip</a></dd>
 | 
						|
</dl>
 | 
						|
</dd>
 | 
						|
<dt>Docbook XSL</dt>
 | 
						|
<dd><dl class="first last docutils">
 | 
						|
<dt>docbook-xsl-1.71.0.tar.bz2:</dt>
 | 
						|
<dd><a class="reference external" href="http://prdownloads.sourceforge.net/docbook/docbook-xsl-1.71.0.tar.bz2?download">http://prdownloads.sourceforge.net/docbook/docbook-xsl-1.71.0.tar.bz2?download</a></dd>
 | 
						|
<dt>docbook-xsl-1.71.1.tar.bz2:</dt>
 | 
						|
<dd><a class="reference external" href="http://downloads.sourceforge.net/docbook/docbook-xsl-1.71.1.tar.bz2?use_mirror=puzzle">http://downloads.sourceforge.net/docbook/docbook-xsl-1.71.1.tar.bz2?use_mirror=puzzle</a></dd>
 | 
						|
</dl>
 | 
						|
</dd>
 | 
						|
<dt>JUnit:</dt>
 | 
						|
<dd><a class="reference external" href="http://www.junit.org/">http://www.junit.org/</a></dd>
 | 
						|
<dt>reStructuredText:</dt>
 | 
						|
<dd><a class="reference external" href="http://docutils.sourceforge.net/docs/user/rst/quickstart.html">http://docutils.sourceforge.net/docs/user/rst/quickstart.html</a></dd>
 | 
						|
</dl>
 | 
						|
<!-- generate HTML using rst2html from Docutils of -->
 | 
						|
<!-- http://docutils.sourceforge.net/ -->
 | 
						|
<!--  -->
 | 
						|
<!-- vim:fileencoding=latin1:ft=rst:spell:tw=80 -->
 | 
						|
<!-- $Revision: 286 $ -->
 | 
						|
</div>
 | 
						|
</div>
 | 
						|
</body>
 | 
						|
</html>
 |