r1656 - in branches/1.1: . bin/varnishd doc man

des at projects.linpro.no des at projects.linpro.no
Thu Jul 5 18:11:14 CEST 2007


Author: des
Date: 2007-07-05 18:11:13 +0200 (Thu, 05 Jul 2007)
New Revision: 1656

Added:
   branches/1.1/doc/changes-1.0.4-1.1.xml
   branches/1.1/doc/changes-1.1.xml
   branches/1.1/doc/changes.css
Modified:
   branches/1.1/
   branches/1.1/bin/varnishd/varnishd.1
   branches/1.1/doc/Makefile.am
   branches/1.1/doc/changes-html.xsl
   branches/1.1/man/vcl.7
Log:
Merged revisions 1651-1654 via svnmerge from 
svn+ssh://projects.linpro.no/svn/varnish/trunk/varnish-cache

........
  r1651 | des | 2007-07-05 16:28:48 +0200 (Thu, 05 Jul 2007) | 2 lines
  
  Document server.ip.
........
  r1652 | des | 2007-07-05 16:54:50 +0200 (Thu, 05 Jul 2007) | 2 lines
  
  Add a CSS stylesheet.
........
  r1653 | des | 2007-07-05 17:31:25 +0200 (Thu, 05 Jul 2007) | 2 lines
  
  Document the -F option (introduced in r1557)
........
  r1654 | des | 2007-07-05 18:09:45 +0200 (Thu, 05 Jul 2007) | 2 lines
  
  Change log for 1.1.
........



Property changes on: branches/1.1
___________________________________________________________________
Name: svnmerge-integrated
   - /trunk/varnish-cache:1-1648
   + /trunk/varnish-cache:1-1648,1651-1654

Modified: branches/1.1/bin/varnishd/varnishd.1
===================================================================
--- branches/1.1/bin/varnishd/varnishd.1	2007-07-05 16:10:46 UTC (rev 1655)
+++ branches/1.1/bin/varnishd/varnishd.1	2007-07-05 16:11:13 UTC (rev 1656)
@@ -28,7 +28,7 @@
 .\"
 .\" $Id$
 .\"
-.Dd July 3, 2007
+.Dd July 5, 2007
 .Dt VARNISHD 1
 .Os
 .Sh NAME
@@ -39,6 +39,7 @@
 .Op Fl a Ar addrss Ns Op : Ns Ar port
 .Op Fl b Ar host Ns Op : Ns Ar port
 .Op Fl d
+.Op Fl F
 .Op Fl f Ar config
 .Op Fl g Ar group
 .Op Fl h Ar type Ns Op , Ns Ar options
@@ -111,6 +112,8 @@
 .Fl d
 flag is specified twice, the child process will not daemonize, and
 terminating the parent process will also terminate the child.
+.It Fl F
+Run in the foreground.
 .It Fl f Ar config
 Use the specified VCL configuration file instead of the builtin
 default.

Modified: branches/1.1/doc/Makefile.am
===================================================================
--- branches/1.1/doc/Makefile.am	2007-07-05 16:10:46 UTC (rev 1655)
+++ branches/1.1/doc/Makefile.am	2007-07-05 16:11:13 UTC (rev 1656)
@@ -1,6 +1,6 @@
 # $Id$
 
-CHANGELOGS = changes-1.0.4.html
+CHANGELOGS = changes-1.0.4.html changes-1.1.html
 
 EXTRA_DIST = ${CHANGELOGS}
 

Copied: branches/1.1/doc/changes-1.0.4-1.1.xml (from rev 1654, trunk/varnish-cache/doc/changes-1.0.4-1.1.xml)
===================================================================
--- branches/1.1/doc/changes-1.0.4-1.1.xml	                        (rev 0)
+++ branches/1.1/doc/changes-1.0.4-1.1.xml	2007-07-05 16:11:13 UTC (rev 1656)
@@ -0,0 +1,237 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE group [
+<!ENTITY mdash "&#8212;">
+]>
+<!-- $Id$ -->
+<group from="1.0.4" to="1.1">
+  <subsystem>
+    <name>varnishd</name>
+
+    <change type="enh" ref="1388">
+      <para>Readability of the C source code generated from VCL code
+      has been improved.</para>
+    </change>
+
+    <change type="enh" ref="1389">
+      <para>Equality (<literal>==</literal>) and inequality
+      (<literal>!=</literal>) operators have been implemented for IP
+      addresses (which previously could only be compared using
+      ACLs).</para>
+    </change>
+
+    <change type="enh" ref="1390">
+      <para>The address of the listening socket on which the client
+      connection was received is now available to VCL as the
+      <varname>server.ip</varname> variable.</para>
+    </change>
+
+    <change type="enh" ref="1395,1397,1398">
+      <para>Each object's hash key is now computed based on a string
+      which is available to VCL as <varname>req.hash</varname>.  A VCL
+      hook named <varname>vcl_hash</varname> has been added to allow
+      VCL scripts to control hash generation (for instance, whether or
+      not to include the value of the <literal>Host:</literal> header
+      in the hash).</para>
+    </change>
+
+    <change type="bug" ref="1423,1559">
+      <para>The setup code for listening sockets has been modified to
+      detect and handle situations where a host name resolves to
+      multiple IP addresses.  It will now attempt to bind to each IP
+      address separately, and report a failure only if none of them
+      worked.</para>
+    </change>
+
+    <change type="enh" ref="1474">
+      <para>Network or protocol errors that occur while retrieving an
+      object from a backend server now result in a synthetic error
+      page being inserted into the cache with a 30-second TTL.  This
+      should help avoid driving an overburdened backend server into
+      the ground by repeatedly requesting the same object.</para>
+    </change>
+
+    <change type="enh" ref="1482">
+      <para>The child process will now drop root privileges
+      immediately upon startup.  The user and group to use are
+      specified with the <varname>user</varname> and
+      <varname>group</varname> run-time parameters, which default to
+      <literal>nobody</literal> and <literal>nogroup</literal>,
+      respectively.  Other changes have been made in an effort to
+      increase the isolation between parent and child, and reduce the
+      impact of a compromise of the child process.</para>
+    </change>
+
+    <change type="enh" ref="1506">
+      <para>Objects which are received from the backend with a
+      <literal>Vary:</literal> header are now stored separately
+      according to the values of the headers specified in
+      <literal>Vary:</literal>.  This allows Varnish to correctly
+      cache e.g. compressed and uncompressed versions of the same
+      object.</para>
+    </change>
+
+    <change type="enh" ref="1521,1524,1525,1526,1528,1532,1533,1572,1573,1581">
+      <para>Each Varnish instance now has a name, which by default is
+      the host name of the machine it runs on, but can be any string
+      that would be valid as a relative or absolute directory name.
+      It is used to construct the name of a directory in which the
+      server state as well as all temporary files are stored.  This
+      makes it possible to run multiple Varnish instances on the same
+      machine without conflict.</para>
+    </change>
+
+    <change type="enh" ref="1549">
+      <para>When invoked with the <option>-C</option> option,
+      <command>varnishd</command> will now not just translate the VCL
+      code to C, but also compile the C code and attempt to load the
+      resulting shared object.</para>
+    </change>
+
+    <change type="enh" ref="1552,1576">
+      <para>Attempts by VCL code to reference a variable outside its
+      scope or to assign a value to a read-only variable will now
+      result in compile-time rather than run-time errors.</para>
+    </change>
+
+    <change type="enh" ref="1557,1558">
+      <para>The new command-line option <option>-F</option> will make
+      <command>varnishd</command> run in the foreground, without
+      enabling debugging.</para>
+    </change>
+
+    <change type="enh" ref="1560">
+      <para>New VCL variables have been introduced to allow inspection
+      and manipulation of the request sent to the backend
+      (<varname>bereq.request</varname>, <varname>bereq.url</varname>,
+      <varname>bereq.proto</varname> and
+      <varname>bereq.http</varname>) and the response to the client
+      (<varname>resp.proto</varname>, <varname>resp.status</varname>,
+      <varname>resp.response</varname> and
+      <varname>resp.http</varname>).</para>
+    </change>
+
+    <change type="enh" ref="1564,1565">
+      <para>Statistics from the storage code (including the amount of
+      data and free space in the cache) are now available to
+      <command>varnishstat</command> and other statistics-gathering
+      tools.</para>
+    </change>
+
+    <change type="enh" ref="1548,1561,1567,1568,1570,1586">
+      <para>Objects are now kept on an LRU list which is kept loosely
+      up-to-date (to within a few seconds).  When cache runs out, the
+      objects at the tail end of the LRU list are discarded one by one
+      until there is enough space for the freshly requested object(s).
+      A VCL hook, <function>vcl_discard</function>, is allowed to
+      inspect each object and determine its fate by returning either
+      <command>keep</command> or <command>discard</command>.</para>
+    </change>
+
+    <change type="enh" ref="1612,1640">
+      <para>A new VCL hook, <function>vcl_deliver</function>, provides
+      a chance to adjust the response before it is sent to the
+      client.</para>
+    </change>
+
+    <change type="enh" ref="1626">
+      <para>A new management command, <command>vcl.show</command>,
+      displays the VCL source code of any loaded configuration.</para>
+    </change>
+
+    <change type="enh" ref="1628">
+      <para>A new VCL variable, <varname>now</varname>, provides VCL
+      scripts with the current time in seconds since the epoch.</para>
+    </change>
+
+    <change type="enh" ref="1628,1629,1630">
+      <para>A new VCL variable, <varname>obj.lastuse</varname>,
+      reflects the time in seconds since the object in question was
+      last used.</para>
+    </change>
+
+    <change type="enh" ref="1645,1646,1648">
+      <para>VCL scripts can now add an HTTP header (or modify the
+      value of an existing one) by assigning a value to the
+      corresponding variable, and strip an HTTP header by using the
+      <command>remove</command> keyword.</para>
+    </change>
+  </subsystem>
+
+  <subsystem>
+    <name>varnishadm</name>
+
+    <change type="enh" ref="1502">
+      <para>This is a new utility which sends a single command to a
+      Varnish server's management port and prints the result to
+      <varname>stdout</varname>, greatly simplifying the use of the
+      management port from scripts.</para>
+    </change>
+  </subsystem>
+
+  <subsystem>
+    <name>varnishhist</name>
+
+    <change type="enh" ref="1593">
+      <para>The user interface has been greatly improved; the
+      histogram will be automatically rescaled and redrawn when the
+      window size changes, and it is updated regularly rather than at
+      a rate dependent on the amount of log data gathered.  In
+      addition, the name of the Varnish instance being watched is
+      displayed in the upper right corner.</para>
+    </change>
+  </subsystem>
+
+  <subsystem>
+    <name>varnishncsa</name>
+
+    <change type="enh" ref="1479">
+      <para>In addition to client traffic,
+      <command>varnishncsa</command> can now also process log data
+      from backend traffic.</para>
+    </change>
+  </subsystem>
+
+  <subsystem>
+    <name>varnishreplay</name>
+
+    <change type="enh" ref="1574,1594,1595,1597,1598,1620,1623,1624,1625">
+      <para>This new utility will attempt to recreate the HTTP traffic
+      which resulted in the raw Varnish log data which it is
+      fed.</para>
+    </change>
+  </subsystem>
+
+  <subsystem>
+    <name>varnishstat</name>
+
+    <change type="enh" ref="1587">
+      <para>Don't print lifetime averages when it doesn't make any
+      sense&mdash;for instance, there is no point in dividing the
+      amount in bytes of free cache space by the lifetime in seconds
+      of the <command>varnishd</command> process.</para>
+    </change>
+
+    <change type="enh" ref="1589,1590,1591">
+      <para>The user interface has been greatly improved;
+      <command>varnishstat</command> will no longer print more than
+      fits in the terminal, and will respond correctly to window
+      resize events.  The output produced in one-shot mode has been
+      modified to include symbolic names for each entry.  In addition,
+      the name of the Varnish instance being watched is displayed in
+      the upper right corner in curses mode.</para>
+    </change>
+  </subsystem>
+
+  <subsystem>
+    <name>varnishtop</name>
+
+    <change type="enh" ref="1592,1596">
+      <para>The user interface has been greatly improved;
+      <command>varnishtop</command> will now respond correctly to
+      window resize events, and one-shot mode (<option>-1</option>)
+      actually works.  In addition, the name of the Varnish instance
+      being watched is displayed in the upper right corner in curses
+      mode.</para>
+    </change>
+  </subsystem>
+</group>

Copied: branches/1.1/doc/changes-1.1.xml (from rev 1654, trunk/varnish-cache/doc/changes-1.1.xml)
===================================================================
--- branches/1.1/doc/changes-1.1.xml	                        (rev 0)
+++ branches/1.1/doc/changes-1.1.xml	2007-07-05 16:11:13 UTC (rev 1656)
@@ -0,0 +1,12 @@
+<?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.1</version>
+
+  <xi:include href="changes-1.0.4-1.1.xml"/>
+</changelog>

Modified: branches/1.1/doc/changes-html.xsl
===================================================================
--- branches/1.1/doc/changes-html.xsl	2007-07-05 16:10:46 UTC (rev 1655)
+++ branches/1.1/doc/changes-html.xsl	2007-07-05 16:11:13 UTC (rev 1656)
@@ -15,6 +15,7 @@
     <html>
       <head>
 	<title><xsl:call-template name="title"/></title>
+	<link rel="stylesheet" type="text/css" href="changes.css"/>
       </head>
       <body>
 	<h1><xsl:call-template name="title"/></h1>

Copied: branches/1.1/doc/changes.css (from rev 1654, trunk/varnish-cache/doc/changes.css)
===================================================================
--- branches/1.1/doc/changes.css	                        (rev 0)
+++ branches/1.1/doc/changes.css	2007-07-05 16:11:13 UTC (rev 1656)
@@ -0,0 +1,27 @@
+/* $Id$ */
+
+body {
+	background-color: white;
+	color: black;
+	font-family: sans-serif;
+	max-width: 40em;
+	margin: 1in auto 1in auto;
+}
+
+h1 {
+	font-size: 200%;
+	font-weight: bold;
+	color: maroon;
+}
+
+h2 {
+	font-size: 160%;
+	font-weight: bold;
+	color: maroon;
+}
+
+h3 {
+	font-size: 120%;
+	font-weight: bold;
+	color: maroon;
+}

Modified: branches/1.1/man/vcl.7
===================================================================
--- branches/1.1/man/vcl.7	2007-07-05 16:10:46 UTC (rev 1655)
+++ branches/1.1/man/vcl.7	2007-07-05 16:11:13 UTC (rev 1656)
@@ -360,6 +360,9 @@
 .Bl -tag -width 4n
 .It Va client.ip
 The client's IP address.
+.It Va server.ip
+The IP address of the socket on which the client connection was
+received.
 .It Va req.request
 The request type (e.g. "GET", "HEAD").
 .It Va req.url




More information about the varnish-commit mailing list