r1441 - in trunk/varnish-cache: . doc

des at projects.linpro.no des at projects.linpro.no
Thu May 17 13:48:35 CEST 2007


Author: des
Date: 2007-05-17 13:48:35 +0200 (Thu, 17 May 2007)
New Revision: 1441

Added:
   trunk/varnish-cache/doc/
   trunk/varnish-cache/doc/Makefile.am
   trunk/varnish-cache/doc/changes-1.0.3-1.0.4.xml
   trunk/varnish-cache/doc/changes-1.0.4.xml
   trunk/varnish-cache/doc/changes-html.xsl
Modified:
   trunk/varnish-cache/Makefile.am
   trunk/varnish-cache/configure.ac
Log:
Add an XML+XSLT-based change log.  Unlike the change logs for previous
releases, this one was written by hand, which makes it user-readable.


Modified: trunk/varnish-cache/Makefile.am
===================================================================
--- trunk/varnish-cache/Makefile.am	2007-05-16 21:08:43 UTC (rev 1440)
+++ trunk/varnish-cache/Makefile.am	2007-05-17 11:48:35 UTC (rev 1441)
@@ -1,5 +1,5 @@
 # $Id$
 
-SUBDIRS = include lib bin man etc
+SUBDIRS = include lib bin man etc doc
 
 EXTRA_DIST = LICENSE autogen.sh debian redhat

Modified: trunk/varnish-cache/configure.ac
===================================================================
--- trunk/varnish-cache/configure.ac	2007-05-16 21:08:43 UTC (rev 1440)
+++ trunk/varnish-cache/configure.ac	2007-05-17 11:48:35 UTC (rev 1441)
@@ -19,6 +19,7 @@
 AC_PROG_INSTALL
 AC_PROG_LIBTOOL
 AC_PROG_MAKE_SET
+AC_CHECK_PROGS(XSLTPROC, [xsltproc])
 
 # Checks for libraries.
 save_LIBS="${LIBS}"
@@ -130,6 +131,7 @@
     bin/varnishncsa/Makefile
     bin/varnishstat/Makefile
     bin/varnishtop/Makefile
+    doc/Makefile
     etc/Makefile
     include/Makefile
     lib/Makefile

Added: trunk/varnish-cache/doc/Makefile.am
===================================================================
--- trunk/varnish-cache/doc/Makefile.am	2007-05-16 21:08:43 UTC (rev 1440)
+++ trunk/varnish-cache/doc/Makefile.am	2007-05-17 11:48:35 UTC (rev 1441)
@@ -0,0 +1,12 @@
+# $Id$
+
+CHANGELOGS = changes-1.0.4.html
+
+EXTRA_DIST = ${CHANGELOGS}
+
+CLEANFILES = ${CHANGELOGS}
+
+SUFFIXES = .xml .html
+
+.xml.html:
+	${XSLTPROC} --xinclude -o $@ $<


Property changes on: trunk/varnish-cache/doc/Makefile.am
___________________________________________________________________
Name: svn:keywords
   + Id

Added: trunk/varnish-cache/doc/changes-1.0.3-1.0.4.xml
===================================================================
--- trunk/varnish-cache/doc/changes-1.0.3-1.0.4.xml	2007-05-16 21:08:43 UTC (rev 1440)
+++ trunk/varnish-cache/doc/changes-1.0.3-1.0.4.xml	2007-05-17 11:48:35 UTC (rev 1441)
@@ -0,0 +1,206 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE group [
+<!ENTITY mdash "&#8212;">
+]>
+<!-- $Id$ -->
+<group from="1.0.3" to="1.0.4">
+  <subsystem>
+    <name>varnishd</name>
+
+    <change type="enh,bug" ref="1277">
+      <para>The request workflow has been redesigned to simplify
+      request processing and eliminate code duplication.  All
+      codepaths which need to speak HTTP now share a single
+      implementation of the protocol.  Some new VCL hooks have been
+      added, though they aren't much use yet.  The only real
+      user-visible change should be that Varnish now handles
+      persistent backend connections correctly (see <ticket
+      ref="56"/>).</para>
+    </change>
+
+    <change type="enh" ref="1280">
+      <para>Support for multiple listen addresses has been
+      added.</para>
+    </change>
+
+    <change type="enh" ref="1281">
+      <para>An "include" facility has been added to VCL, allowing
+      VCL code to pull in code fragments from multiple files.</para>
+    </change>
+
+    <change type="enh" ref="1284">
+      <para>Multiple definitions of the same VCL function are now
+      concatenated into one in the order in which they appear in the
+      source.  This simplifies the mechanism for falling back to the
+      built-in default for cases which aren't handled in custom
+      code, and facilitates modularization.</para>
+    </change>
+
+    <change type="bug" ref="1287,1288">
+      <para>The code used to format management command arguments
+      before passing them on to the child process would
+      underestimate the amount of space needed to hold each argument
+      once quotes and special characters were properly escaped,
+      resulting in a buffer overflow.  This has been
+      corrected.</para>
+    </change>
+
+    <change type="enh,bug" ref="1289-1291,1294,1296-1303,1306">
+      <para>The VCL compiler has been overhauled.  Several memory
+      leaks have been plugged, and error detection and reporting has
+      been improved throughout.  Parts of the compiler have been
+      refactored to simplify future extension of the
+      language.</para>
+    </change>
+
+    <change type="bug" ref="1293">
+      <para>A bug in the VCL compiler which resulted in incorrect
+      parsing of the decrement (<code>-=</code>) operator has been
+      fixed.</para>
+    </change>
+
+    <change type="enh" ref="1309,1312,1381">
+      <para>A new <code>-C</code> command-line option has been added
+      which causes <code>varnishd</code> to compile the VCL code
+      (either from a file specified with <code>-f</code> or the
+      built-in default), print the resulting C code and exit.</para>
+    </change>
+
+    <change type="bug" ref="1359">
+      <para>When processing a backend response using chunked
+      encoding, if a chunk header crosses a read buffer boundary,
+      read additional bytes from the backend connection until the
+      chunk header is complete.</para>
+    </change>
+
+    <change type="enh" ref="1373">
+      <para>A new <code>ping_interval</code> run-time parameter
+      controls how often the management process checks that the
+      worker process is alive.</para>
+    </change>
+
+    <change type="bug" ref="1376">
+      <para>A bug which would cause the worker process to
+      dereference a <code>NULL</code> pointer and crash if the
+      backend did not respond has been fixed.</para>
+    </change>
+
+    <change type="bug" ref="1382">
+      <para>In some cases, such as when they are used by AJAX
+      applications to circumvent Internet Explorer's over-eager disk
+      cache, it may be desirable to cache <code>POST</code>
+      requests.  However, the code path responsible for delivering
+      objects from cache would only transmit the response body when
+      replying to a <code>GET</code> request.  This has been
+      extended to also apply to <code>POST</code>.</para>
+
+      <para>This should be revisited at a later date to allow VCL
+      code to control whether the body is delivered.</para>
+    </change>
+
+    <change type="bug" ref="1386">
+      <para>Varnish now respects <code>Cache-control:
+      s-maxage</code>, and prefers it to <code>Cache-control:
+      max-age</code> if both are present.</para>
+
+      <para>This should be revisited at a later date to allow VCL
+      code to control which headers are used and how they are
+      interpreted.</para>
+    </change>
+
+    <change type="enh" ref="1394">
+      <para>When loading a new VCL script, the management process
+      will now load the compiled object to verify that it links
+      correctly before instructing the worker process to load
+      it.</para>
+    </change>
+
+    <change type="enh" ref="1415">
+      <para>A new <code>-P</code> command-line options has been
+      added which causes <code>varnishd</code> to create a PID
+      file.</para>
+    </change>
+
+    <change type="bug" ref="1417">
+      <para>The <code>sendfile_threshold</code> run-time parameter's
+      default value has been set to infinity after a variety of
+      <code>sendfile()</code>-related bugs were discovered on
+      several platforms.</para>
+    </change>
+  </subsystem>
+
+  <subsystem>
+    <name>varnishlog</name>
+
+    <change type="bug" ref="1372,1374">
+      <para>When grouping log entries by request,
+      <code>varnishlog</code> attempts to collapse the log entry for
+      a call to a VCL function with the log entry for the
+      corresponding return from VCL.  When two VCL calls were made
+      in succession, <code>varnishlog</code> would incorrectly omit
+      the newline between the two calls (see <ticket
+      ref="95"/>).</para>
+    </change>
+
+    <change type="enh" ref="1411">
+      <para>New <code>-D</code> and <code>-P</code> command-line
+      options have been added to daemonize and create a pidfile,
+      respectively.</para>
+    </change>
+  </subsystem>
+
+  <subsystem>
+    <name>varnishncsa</name>
+
+    <change type="enh,bug" ref="1361-1363">
+      <para>The formatting callback has been largely rewritten for
+      clarity, robustness and efficiency.</para>
+
+      <para>If a request included a <code>Host:</code> header,
+      construct and output an absolute URL.  This makes
+      <code>varnishncsa</code> output from servers which handle
+      multiple virtual hosts far more useful.</para>
+    </change>
+  </subsystem>
+
+  <subsystem>
+    <name>Documentation</name>
+
+    <change type="enh">
+      <para>The documentation&mdash;especially the VCL
+      documentation&mdash;has been greatly extended and improved.</para>
+    </change>
+  </subsystem>
+
+  <subsystem>
+    <name>Build system</name>
+
+    <change type="bug" ref="1364">
+      <para>The name and location of the <code>curses</code> or
+      <code>ncurses</code> library is now correctly detected by the
+      <code>configure</code> script instead of being hardcoded into
+      affected Makefiles.  This allows Varnish to build correctly on
+      a wider range of platforms.</para>
+    </change>
+
+    <change type="enh" ref="1368">
+      <para>Compatibility shims for <code>clock_gettime()</code> are
+      now correctly applied where needed, allowing Varnish to build
+      on MacOS X.</para>
+    </change>
+
+    <change type="bug" ref="1399">
+      <para>The <code>autogen.sh</code> script will now correctly
+      detect and warn about <code>automake</code> versions which are
+      known not to work correctly.</para>
+    </change>
+  </subsystem>
+
+  <!--subsystem>
+    <name>Packaging</name>
+
+    <change type="enh">
+      <para>XXX</para>
+    </change>
+  </subsystem-->
+</group>


Property changes on: trunk/varnish-cache/doc/changes-1.0.3-1.0.4.xml
___________________________________________________________________
Name: svn:keywords
   + Id

Added: trunk/varnish-cache/doc/changes-1.0.4.xml
===================================================================
--- trunk/varnish-cache/doc/changes-1.0.4.xml	2007-05-16 21:08:43 UTC (rev 1440)
+++ trunk/varnish-cache/doc/changes-1.0.4.xml	2007-05-17 11:48:35 UTC (rev 1441)
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="utf-8"?>
+<?xml-stylesheet type="text/xml" href="changes-html.xsl"?>
+<!DOCTYPE changelog [
+ <!ENTITY mdash "&#8212;">
+]>
+<!-- $Id$ -->
+<changelog xmlns:xi="http://www.w3.org/2001/XInclude">
+  <package>Varnish</package>
+  <version>1.0.4</version>
+
+  <xi:include href="changes-1.0.3-1.0.4.xml"/>
+  <!--xi:include href="changes-1.0.2-1.0.3.xml"/-->
+  <!--xi:include href="changes-1.0.1-1.0.2.xml"/-->
+  <!--xi:include href="changes-1.0-1.0.1.xml"/-->
+  <!--xi:include href="changes-0.9-1.0.xml"/-->
+</changelog>


Property changes on: trunk/varnish-cache/doc/changes-1.0.4.xml
___________________________________________________________________
Name: svn:keywords
   + Id

Added: trunk/varnish-cache/doc/changes-html.xsl
===================================================================
--- trunk/varnish-cache/doc/changes-html.xsl	2007-05-16 21:08:43 UTC (rev 1440)
+++ trunk/varnish-cache/doc/changes-html.xsl	2007-05-17 11:48:35 UTC (rev 1441)
@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE stylesheet [
+ <!ENTITY space "&#32;">
+ <!ENTITY nbsp "&#160;">
+]>
+<!-- $Id$ -->
+<xsl:stylesheet version="1.0"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns="http://www.w3.org/1999/xhtml">
+  <xsl:output method="xml" encoding="utf-8" media-type="text/html" indent="yes"/>
+
+  <xsl:strip-space elements="*"/>
+
+  <xsl:template match="/changelog">
+    <html>
+      <head>
+	<title><xsl:call-template name="title"/></title>
+      </head>
+      <body>
+	<h1><xsl:call-template name="title"/></h1>
+	<xsl:apply-templates select="group"/>
+      </body>
+    </html>
+  </xsl:template>
+
+  <xsl:template name="title">
+    <xsl:text>Change log for&space;</xsl:text>
+    <xsl:value-of select="package"/>
+    <xsl:text>&space;</xsl:text>
+    <xsl:value-of select="version"/>
+  </xsl:template>
+
+  <xsl:template match="group">
+    <h2>
+      <xsl:text>Changes between&space;</xsl:text>
+      <xsl:value-of select="@from"/>
+      <xsl:text>&space;and&space;</xsl:text>
+      <xsl:value-of select="@to"/>
+    </h2>
+    <xsl:apply-templates select="subsystem"/>
+  </xsl:template>
+
+  <xsl:template match="subsystem">
+    <h3>
+      <xsl:value-of select="name"/>
+    </h3>
+    <ul>
+      <xsl:apply-templates select="change"/>
+    </ul>
+  </xsl:template>
+
+  <xsl:template match="change">
+    <li>
+      <xsl:apply-templates/>
+    </li>
+  </xsl:template>
+
+  <xsl:template match="para">
+    <p>
+      <xsl:apply-templates/>
+    </p>
+  </xsl:template>
+
+  <xsl:template match="ticket">
+    <a>
+      <xsl:attribute name="href">
+	<xsl:text>http://varnish.projects.linpro.no/ticket/</xsl:text>
+	<xsl:value-of select="@ref"/>
+      </xsl:attribute>
+      <xsl:text>ticket #</xsl:text>
+      <xsl:value-of select="@ref"/>
+    </a>
+  </xsl:template>
+</xsl:stylesheet>




More information about the varnish-commit mailing list