Debian Bug report logs - #445203
Log files: /etc/logrotate.d/<package> preferred

version graph

Package: debian-policy; Maintainer for debian-policy is Debian Policy List <debian-policy@lists.debian.org>; Source for debian-policy is src:debian-policy.

Reported by: Paul Martin <pm@debian.org>

Date: Thu, 4 Oct 2007 00:12:01 UTC

Severity: wishlist

Found in version debian-policy/3.7.2.2

Fixed in version debian-policy/3.9.1.0

Done: Russ Allbery <rra@debian.org>

Bug is archived. No further changes may be made.

Toggle useless messages

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#445203; Package debian-policy. Full text and rfc822 format available.

Acknowledgement sent to Paul Martin <pm@debian.org>:
New Bug report received and forwarded. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. Full text and rfc822 format available.

Message #5 received at submit@bugs.debian.org (full text, mbox):

From: Paul Martin <pm@debian.org>
To: Debian Bug Tracking System <submit@bugs.debian.org>
Subject: debian-policy: 10.8. Log files: /etc/logrotate.d/<package> preferred
Date: Thu, 04 Oct 2007 01:09:14 +0100
Package: debian-policy
Version: 3.7.2.2
Severity: wishlist

Section 10.8 suggests the use of a configuration file in 
/etc/logrotate.d, but doesn't suggest a name.

I propose that the suggested name be /etc/logrotate.d/<package> in 
almost all circumstances, irrespective of the name(s) of the files being 
rotated. A logrotate.d configuration file can control the rotation of 
multiple logfiles.

In addition, could the "missingok" directive be added to the example 
script? If the maintainer forgets to use it and the package is removed 
but not purged before the package generates any log files, it can cause 
logrotate to throw errors during the cron.daily run.




Changed Bug title to `Log files: /etc/logrotate.d/<package> preferred' from `debian-policy: 10.8. Log files: /etc/logrotate.d/<package> preferred'. Request was from Russ Allbery <rra@debian.org> to control@bugs.debian.org. (Mon, 17 Mar 2008 05:24:15 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#445203; Package debian-policy. (Sat, 03 Jul 2010 20:15:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Russ Allbery <rra@debian.org>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. (Sat, 03 Jul 2010 20:15:03 GMT) Full text and rfc822 format available.

Message #12 received at 445203@bugs.debian.org (full text, mbox):

From: Russ Allbery <rra@debian.org>
To: Paul Martin <pm@debian.org>
Cc: 445203@bugs.debian.org
Subject: Re: Bug#445203: debian-policy: 10.8. Log files: /etc/logrotate.d/<package> preferred
Date: Sat, 03 Jul 2010 13:13:41 -0700
Paul Martin <pm@debian.org> writes:

> Section 10.8 suggests the use of a configuration file in
> /etc/logrotate.d, but doesn't suggest a name.

> I propose that the suggested name be /etc/logrotate.d/<package> in
> almost all circumstances, irrespective of the name(s) of the files being
> rotated. A logrotate.d configuration file can control the rotation of
> multiple logfiles.

> In addition, could the "missingok" directive be added to the example
> script? If the maintainer forgets to use it and the package is removed
> but not purged before the package generates any log files, it can cause
> logrotate to throw errors during the cron.daily run.

Here's a proposed patch that implements this.  Objections or seconds?

diff --git a/policy.sgml b/policy.sgml
index bad28af..a676e71 100644
--- a/policy.sgml
+++ b/policy.sgml
@@ -7868,11 +7868,13 @@ ln -fs ../sbin/sendmail debian/tmp/usr/bin/runq
 	</p>
 
 	<p>
-	  Log files must be rotated occasionally so that they don't
-	  grow indefinitely; the best way to do this is to drop a log
-	  rotation configuration file into the directory
-	  <file>/etc/logrotate.d</file> and use the facilities provided by
-	  logrotate.<footnote>
+	  Log files must be rotated occasionally so that they don't grow
+	  indefinitely.  The best way to do this is to install a log
+	  rotation configuration file in the
+	  directory <file>/etc/logrotate.d</file>, normally
+	  named <file>/etc/logrotate.d/<var>package</var></file>, and use
+	  the facilities provided by <prgn>logrotate</prgn>.
+	  <footnote>
 	    <p>
 	      The traditional approach to log files has been to set up
 	      <em>ad hoc</em> log rotation schemes using simple shell
@@ -7897,25 +7899,28 @@ ln -fs ../sbin/sendmail debian/tmp/usr/bin/runq
 	    section="8">):
 	  <example compact="compact">
 /var/log/foo/*.log {
-rotate 12
-weekly
-compress
-postrotate
-/etc/init.d/foo force-reload
-endscript
+    rotate 12
+    weekly
+    compress
+    missingok
+    postrotate
+        /etc/init.d/foo force-reload
+    endscript
 }
 	  </example>
 	  This rotates all files under <file>/var/log/foo</file>, saves 12
 	  compressed generations, and forces the daemon to reload its
-	  configuration information after the log rotation.
+	  configuration information after the log rotation.  It skips this
+	  log rotation (via <tt>missingok</tt>) if no such log file is
+	  present, which avoids errors if the package is removed but not
+	  purged.
 	</p>
 
 	<p>
-	  Log files should be removed when the package is
-	  purged (but not when it is only removed).  This should be
-	  done by the <prgn>postrm</prgn> script when it is called
-	  with the argument <tt>purge</tt> (see <ref
-	  id="removedetails">).
+	  Log files should be removed when the package is purged (but not
+	  when it is only removed).  This should be done by
+	  the <prgn>postrm</prgn> script when it is called with the
+	  argument <tt>purge</tt> (see <ref id="removedetails">).
 	</p>
       </sect>

-- 
Russ Allbery (rra@debian.org)               <http://www.eyrie.org/~eagle/>




Added tag(s) patch. Request was from Russ Allbery <rra@debian.org> to control@bugs.debian.org. (Sat, 03 Jul 2010 20:15:11 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#445203; Package debian-policy. (Sun, 04 Jul 2010 01:06:02 GMT) Full text and rfc822 format available.

Message #17 received at 445203@bugs.debian.org (full text, mbox):

From: Raphael Geissert <geissert@debian.org>
To: 445203@bugs.debian.org
Cc: Paul Martin <pm@debian.org>
Subject: Re: Bug#445203: debian-policy: 10.8. Log files: /etc/logrotate.d/<package> preferred
Date: Sat, 3 Jul 2010 20:03:25 -0500
[Message part 1 (text/plain, inline)]
Hi,

On Saturday 03 July 2010 15:13:41 Russ Allbery wrote:
> 
> Here's a proposed patch that implements this.  Objections or seconds?
> 
> diff --git a/policy.sgml b/policy.sgml
> index bad28af..a676e71 100644
> --- a/policy.sgml
> +++ b/policy.sgml
> @@ -7868,11 +7868,13 @@ ln -fs ../sbin/sendmail debian/tmp/usr/bin/runq
>  	</p>
> 
>  	<p>
> -	  Log files must be rotated occasionally so that they don't
> -	  grow indefinitely; the best way to do this is to drop a log
> -	  rotation configuration file into the directory
> -	  <file>/etc/logrotate.d</file> and use the facilities provided by
> -	  logrotate.<footnote>
> +	  Log files must be rotated occasionally so that they don't grow
> +	  indefinitely.  The best way to do this is to install a log
> +	  rotation configuration file in the
> +	  directory <file>/etc/logrotate.d</file>, normally
> +	  named <file>/etc/logrotate.d/<var>package</var></file>, and use
> +	  the facilities provided by <prgn>logrotate</prgn>.
> +	  <footnote>
>  	    <p>
>  	      The traditional approach to log files has been to set up
>  	      <em>ad hoc</em> log rotation schemes using simple shell
> @@ -7897,25 +7899,28 @@ ln -fs ../sbin/sendmail debian/tmp/usr/bin/runq
>  	    section="8">):
>  	  <example compact="compact">
>  /var/log/foo/*.log {
> -rotate 12
> -weekly
> -compress
> -postrotate
> -/etc/init.d/foo force-reload
> -endscript
> +    rotate 12
> +    weekly
> +    compress
> +    missingok
> +    postrotate
> +        /etc/init.d/foo force-reload
> +    endscript
>  }

While we are at it please let's use invoke-rc.d, which is what should be used.
The current example could actually be considered as a violation of section 
9.3.3.2 (if a logrotate file is considered as a "package maintainer script,") 
so please take this email as an objection.

If invoke-rc.d is not used and the init script follows Policy's requirements 
for 'force-reload' and 'restart,' the service could be started in a runlevel 
where it has been explicitly disabled by the administrator.
This does not address the case where a service has been stopped but is not 
disabled for the current runlevel, but that's an issue with invoke-rc.d.

The rest looks good.

Cheers,
-- 
Raphael Geissert - Debian Developer
www.debian.org - get.debian.net
[signature.asc (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#445203; Package debian-policy. (Sun, 04 Jul 2010 01:15:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Russ Allbery <rra@debian.org>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. (Sun, 04 Jul 2010 01:15:03 GMT) Full text and rfc822 format available.

Message #22 received at 445203@bugs.debian.org (full text, mbox):

From: Russ Allbery <rra@debian.org>
To: Raphael Geissert <geissert@debian.org>
Cc: 445203@bugs.debian.org, Paul Martin <pm@debian.org>
Subject: Re: Bug#445203: debian-policy: 10.8. Log files: /etc/logrotate.d/<package> preferred
Date: Sat, 03 Jul 2010 18:13:19 -0700
Raphael Geissert <geissert@debian.org> writes:

> While we are at it please let's use invoke-rc.d, which is what should be
> used.  The current example could actually be considered as a violation
> of section 9.3.3.2 (if a logrotate file is considered as a "package
> maintainer script,") so please take this email as an objection.

> If invoke-rc.d is not used and the init script follows Policy's
> requirements for 'force-reload' and 'restart,' the service could be
> started in a runlevel where it has been explicitly disabled by the
> administrator.  This does not address the case where a service has been
> stopped but is not disabled for the current runlevel, but that's an
> issue with invoke-rc.d.

Good point.  Here's an updated patch.

diff --git a/policy.sgml b/policy.sgml
index bad28af..9399b1a 100644
--- a/policy.sgml
+++ b/policy.sgml
@@ -7868,11 +7868,13 @@ ln -fs ../sbin/sendmail debian/tmp/usr/bin/runq
 	</p>
 
 	<p>
-	  Log files must be rotated occasionally so that they don't
-	  grow indefinitely; the best way to do this is to drop a log
-	  rotation configuration file into the directory
-	  <file>/etc/logrotate.d</file> and use the facilities provided by
-	  logrotate.<footnote>
+	  Log files must be rotated occasionally so that they don't grow
+	  indefinitely.  The best way to do this is to install a log
+	  rotation configuration file in the
+	  directory <file>/etc/logrotate.d</file>, normally
+	  named <file>/etc/logrotate.d/<var>package</var></file>, and use
+	  the facilities provided by <prgn>logrotate</prgn>.
+	  <footnote>
 	    <p>
 	      The traditional approach to log files has been to set up
 	      <em>ad hoc</em> log rotation schemes using simple shell
@@ -7897,25 +7899,28 @@ ln -fs ../sbin/sendmail debian/tmp/usr/bin/runq
 	    section="8">):
 	  <example compact="compact">
 /var/log/foo/*.log {
-rotate 12
-weekly
-compress
-postrotate
-/etc/init.d/foo force-reload
-endscript
+    rotate 12
+    weekly
+    compress
+    missingok
+    postrotate
+        invoke-rc.d foo force-reload
+    endscript
 }
 	  </example>
 	  This rotates all files under <file>/var/log/foo</file>, saves 12
 	  compressed generations, and forces the daemon to reload its
-	  configuration information after the log rotation.
+	  configuration information after the log rotation.  It skips this
+	  log rotation (via <tt>missingok</tt>) if no such log file is
+	  present, which avoids errors if the package is removed but not
+	  purged.
 	</p>
 
 	<p>
-	  Log files should be removed when the package is
-	  purged (but not when it is only removed).  This should be
-	  done by the <prgn>postrm</prgn> script when it is called
-	  with the argument <tt>purge</tt> (see <ref
-	  id="removedetails">).
+	  Log files should be removed when the package is purged (but not
+	  when it is only removed).  This should be done by
+	  the <prgn>postrm</prgn> script when it is called with the
+	  argument <tt>purge</tt> (see <ref id="removedetails">).
 	</p>
       </sect>

-- 
Russ Allbery (rra@debian.org)               <http://www.eyrie.org/~eagle/>




Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#445203; Package debian-policy. (Sun, 04 Jul 2010 01:54:09 GMT) Full text and rfc822 format available.

Message #25 received at 445203@bugs.debian.org (full text, mbox):

From: Raphael Geissert <geissert@debian.org>
To: 445203@bugs.debian.org
Cc: Paul Martin <pm@debian.org>
Subject: Re: Bug#445203: debian-policy: 10.8. Log files: /etc/logrotate.d/<package> preferred
Date: Sat, 3 Jul 2010 20:50:24 -0500
[Message part 1 (text/plain, inline)]
On Saturday 03 July 2010 20:13:19 Russ Allbery wrote:
> Good point.  Here's an updated patch.
> 
> diff --git a/policy.sgml b/policy.sgml
> index bad28af..9399b1a 100644
> --- a/policy.sgml
> +++ b/policy.sgml
> @@ -7868,11 +7868,13 @@ ln -fs ../sbin/sendmail debian/tmp/usr/bin/runq
>  	</p>
> 
>  	<p>
> -	  Log files must be rotated occasionally so that they don't
> -	  grow indefinitely; the best way to do this is to drop a log
> -	  rotation configuration file into the directory
> -	  <file>/etc/logrotate.d</file> and use the facilities provided by
> -	  logrotate.<footnote>
> +	  Log files must be rotated occasionally so that they don't grow
> +	  indefinitely.  The best way to do this is to install a log
> +	  rotation configuration file in the
> +	  directory <file>/etc/logrotate.d</file>, normally
> +	  named <file>/etc/logrotate.d/<var>package</var></file>, and use
> +	  the facilities provided by <prgn>logrotate</prgn>.
> +	  <footnote>
>  	    <p>
>  	      The traditional approach to log files has been to set up
>  	      <em>ad hoc</em> log rotation schemes using simple shell
> @@ -7897,25 +7899,28 @@ ln -fs ../sbin/sendmail debian/tmp/usr/bin/runq
>  	    section="8">):
>  	  <example compact="compact">
>  /var/log/foo/*.log {
> -rotate 12
> -weekly
> -compress
> -postrotate
> -/etc/init.d/foo force-reload
> -endscript
> +    rotate 12
> +    weekly
> +    compress
> +    missingok
> +    postrotate
> +        invoke-rc.d foo force-reload
> +    endscript
>  }
>  	  </example>
>  	  This rotates all files under <file>/var/log/foo</file>, saves 12
>  	  compressed generations, and forces the daemon to reload its
> -	  configuration information after the log rotation.
> +	  configuration information after the log rotation.  It skips this
> +	  log rotation (via <tt>missingok</tt>) if no such log file is
> +	  present, which avoids errors if the package is removed but not
> +	  purged.
>  	</p>
> 
>  	<p>
> -	  Log files should be removed when the package is
> -	  purged (but not when it is only removed).  This should be
> -	  done by the <prgn>postrm</prgn> script when it is called
> -	  with the argument <tt>purge</tt> (see <ref
> -	  id="removedetails">).
> +	  Log files should be removed when the package is purged (but not
> +	  when it is only removed).  This should be done by
> +	  the <prgn>postrm</prgn> script when it is called with the
> +	  argument <tt>purge</tt> (see <ref id="removedetails">).
>  	</p>
>        </sect>

Seconded.

Cheers,
-- 
Raphael Geissert - Debian Developer
www.debian.org - get.debian.net
[signature.asc (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#445203; Package debian-policy. (Sun, 04 Jul 2010 07:57:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Steve Langasek <vorlon@debian.org>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. (Sun, 04 Jul 2010 07:57:04 GMT) Full text and rfc822 format available.

Message #30 received at 445203@bugs.debian.org (full text, mbox):

From: Steve Langasek <vorlon@debian.org>
To: Raphael Geissert <geissert@debian.org>, 445203@bugs.debian.org
Cc: Paul Martin <pm@debian.org>
Subject: Re: Bug#445203: debian-policy: 10.8. Log files: /etc/logrotate.d/<package> preferred
Date: Sun, 4 Jul 2010 00:54:11 -0700
[Message part 1 (text/plain, inline)]
On Sat, Jul 03, 2010 at 08:03:25PM -0500, Raphael Geissert wrote:
> > @@ -7897,25 +7899,28 @@ ln -fs ../sbin/sendmail debian/tmp/usr/bin/runq
> >  	    section="8">):
> >  	  <example compact="compact">
> >  /var/log/foo/*.log {
> > -rotate 12
> > -weekly
> > -compress
> > -postrotate
> > -/etc/init.d/foo force-reload
> > -endscript
> > +    rotate 12
> > +    weekly
> > +    compress
> > +    missingok
> > +    postrotate
> > +        /etc/init.d/foo force-reload
> > +    endscript
> >  }

> While we are at it please let's use invoke-rc.d, which is what should be used.
> The current example could actually be considered as a violation of section 
> 9.3.3.2 (if a logrotate file is considered as a "package maintainer script,") 
> so please take this email as an objection.

> If invoke-rc.d is not used and the init script follows Policy's requirements 
> for 'force-reload' and 'restart,' the service could be started in a runlevel 
> where it has been explicitly disabled by the administrator.
> This does not address the case where a service has been stopped but is not 
> disabled for the current runlevel, but that's an issue with invoke-rc.d.

This force-reload also caught my eye when I first read the patch, but I
think this should be treated as a separate bug.  logrotate scripts are *not*
maintainer scripts, and recommending use of invoke-rc.d for non-maintainer
scripts is a separate substantive change that ought to be discussed in its
own bug.

-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                    http://www.debian.org/
slangasek@ubuntu.com                                     vorlon@debian.org
[signature.asc (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#445203; Package debian-policy. (Sun, 04 Jul 2010 15:33:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Russ Allbery <rra@debian.org>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. (Sun, 04 Jul 2010 15:33:03 GMT) Full text and rfc822 format available.

Message #35 received at 445203@bugs.debian.org (full text, mbox):

From: Russ Allbery <rra@debian.org>
To: Steve Langasek <vorlon@debian.org>
Cc: 445203@bugs.debian.org, Raphael Geissert <geissert@debian.org>, Paul Martin <pm@debian.org>
Subject: Re: Bug#445203: debian-policy: 10.8. Log files: /etc/logrotate.d/<package> preferred
Date: Sun, 04 Jul 2010 08:29:32 -0700
Steve Langasek <vorlon@debian.org> writes:

> This force-reload also caught my eye when I first read the patch, but I
> think this should be treated as a separate bug.  logrotate scripts are *not*
> maintainer scripts, and recommending use of invoke-rc.d for non-maintainer
> scripts is a separate substantive change that ought to be discussed in its
> own bug.

Using it definitely isn't a bug, though, so is it okay if I change this
example while we're in here anyway?  (I selfishly would like to just
because I'd already written the patch that way.  :))

I agree that we should separately consider whether to say all packages
should always use invoke-rc.d.

-- 
Russ Allbery (rra@debian.org)               <http://www.eyrie.org/~eagle/>




Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#445203; Package debian-policy. (Sun, 04 Jul 2010 19:24:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Steve Langasek <vorlon@debian.org>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. (Sun, 04 Jul 2010 19:24:02 GMT) Full text and rfc822 format available.

Message #40 received at 445203@bugs.debian.org (full text, mbox):

From: Steve Langasek <vorlon@debian.org>
To: Russ Allbery <rra@debian.org>
Cc: 445203@bugs.debian.org, Raphael Geissert <geissert@debian.org>, Paul Martin <pm@debian.org>
Subject: Re: Bug#445203: debian-policy: 10.8. Log files: /etc/logrotate.d/<package> preferred
Date: Sun, 4 Jul 2010 12:20:42 -0700
On Sun, Jul 04, 2010 at 08:29:32AM -0700, Russ Allbery wrote:
> Steve Langasek <vorlon@debian.org> writes:

> > This force-reload also caught my eye when I first read the patch, but I
> > think this should be treated as a separate bug.  logrotate scripts are *not*
> > maintainer scripts, and recommending use of invoke-rc.d for non-maintainer
> > scripts is a separate substantive change that ought to be discussed in its
> > own bug.

> Using it definitely isn't a bug, though, so is it okay if I change this
> example while we're in here anyway?  (I selfishly would like to just
> because I'd already written the patch that way.  :))

I'm not nearly so certain that it's not a bug to use invoke-rc.d here.  The
desired semantics of a logrotate script are "after rotating the log, *iff
the daemon is running*, reload it to trigger it to reopen the logfile;
otherwise do nothing".  *Neither* the existing example, nor invoke-rc.d,
gives these semantics; and switching to invoke-rc.d only makes the wrongness
of logrotate's behavior less difficult to understand.

-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                    http://www.debian.org/
slangasek@ubuntu.com                                     vorlon@debian.org




Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#445203; Package debian-policy. (Sun, 04 Jul 2010 21:54:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Russ Allbery <rra@debian.org>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. (Sun, 04 Jul 2010 21:54:02 GMT) Full text and rfc822 format available.

Message #45 received at 445203@bugs.debian.org (full text, mbox):

From: Russ Allbery <rra@debian.org>
To: Steve Langasek <vorlon@debian.org>
Cc: 445203@bugs.debian.org, Raphael Geissert <geissert@debian.org>, Paul Martin <pm@debian.org>
Subject: Re: Bug#445203: debian-policy: 10.8. Log files: /etc/logrotate.d/<package> preferred
Date: Sun, 04 Jul 2010 14:51:27 -0700
Steve Langasek <vorlon@debian.org> writes:

> I'm not nearly so certain that it's not a bug to use invoke-rc.d here.
> The desired semantics of a logrotate script are "after rotating the log,
> *iff the daemon is running*, reload it to trigger it to reopen the
> logfile; otherwise do nothing".  *Neither* the existing example, nor
> invoke-rc.d, gives these semantics; and switching to invoke-rc.d only
> makes the wrongness of logrotate's behavior less difficult to
> understand.

What if I change the logrotate example to:

    invoke-rc.d foo reload > /dev/null

That appears to be the common practice right now, and that should avoid
that problem.

-- 
Russ Allbery (rra@debian.org)               <http://www.eyrie.org/~eagle/>




Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#445203; Package debian-policy. (Sun, 04 Jul 2010 22:42:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Steve Langasek <vorlon@debian.org>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. (Sun, 04 Jul 2010 22:42:03 GMT) Full text and rfc822 format available.

Message #50 received at 445203@bugs.debian.org (full text, mbox):

From: Steve Langasek <vorlon@debian.org>
To: Russ Allbery <rra@debian.org>
Cc: 445203@bugs.debian.org, Raphael Geissert <geissert@debian.org>, Paul Martin <pm@debian.org>
Subject: Re: Bug#445203: debian-policy: 10.8. Log files: /etc/logrotate.d/<package> preferred
Date: Sun, 4 Jul 2010 15:38:24 -0700
[Message part 1 (text/plain, inline)]
On Sun, Jul 04, 2010 at 02:51:27PM -0700, Russ Allbery wrote:
> Steve Langasek <vorlon@debian.org> writes:

> > I'm not nearly so certain that it's not a bug to use invoke-rc.d here.
> > The desired semantics of a logrotate script are "after rotating the log,
> > *iff the daemon is running*, reload it to trigger it to reopen the
> > logfile; otherwise do nothing".  *Neither* the existing example, nor
> > invoke-rc.d, gives these semantics; and switching to invoke-rc.d only
> > makes the wrongness of logrotate's behavior less difficult to
                                                ^^^^ heh, "more"
> > understand.

> What if I change the logrotate example to:

>     invoke-rc.d foo reload > /dev/null

> That appears to be the common practice right now, and that should avoid
> that problem.

I think "invoke-rc.d" is wrong per se for this.  Where the behavior of
'invoke-rc.d foo reload' differs from that of '/etc/init.d/reload', it's
*incorrect* in the context of log rotation: the post-rotation reopening of
logfiles should complete regardless of the runlevel policy for the service.

Cf. my follow-up to bug #588085.

-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                    http://www.debian.org/
slangasek@ubuntu.com                                     vorlon@debian.org
[signature.asc (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#445203; Package debian-policy. (Wed, 07 Jul 2010 16:03:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Russ Allbery <rra@debian.org>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. (Wed, 07 Jul 2010 16:03:03 GMT) Full text and rfc822 format available.

Message #55 received at 445203@bugs.debian.org (full text, mbox):

From: Russ Allbery <rra@debian.org>
To: Steve Langasek <vorlon@debian.org>
Cc: 445203@bugs.debian.org, Raphael Geissert <geissert@debian.org>, Paul Martin <pm@debian.org>
Subject: Re: Bug#445203: debian-policy: 10.8. Log files: /etc/logrotate.d/<package> preferred
Date: Wed, 07 Jul 2010 08:59:24 -0700
Steve Langasek <vorlon@debian.org> writes:

> I think "invoke-rc.d" is wrong per se for this.  Where the behavior of
> 'invoke-rc.d foo reload' differs from that of '/etc/init.d/reload', it's
> *incorrect* in the context of log rotation: the post-rotation reopening
> of logfiles should complete regardless of the runlevel policy for the
> service.

> Cf. my follow-up to bug #588085.

I propose the following patch for this bug instead in order to get it
clear of this discussion.  We can always go back and sort out whether it
should use invoke-rc.d after we work through the other bug.

Does this look okay?

diff --git a/policy.sgml b/policy.sgml
index 7736ddb..a7bf76e 100644
--- a/policy.sgml
+++ b/policy.sgml
@@ -7903,11 +7903,13 @@ ln -fs ../sbin/sendmail debian/tmp/usr/bin/runq
 	</p>
 
 	<p>
-	  Log files must be rotated occasionally so that they don't
-	  grow indefinitely; the best way to do this is to drop a log
-	  rotation configuration file into the directory
-	  <file>/etc/logrotate.d</file> and use the facilities provided by
-	  logrotate.<footnote>
+	  Log files must be rotated occasionally so that they don't grow
+	  indefinitely.  The best way to do this is to install a log
+	  rotation configuration file in the
+	  directory <file>/etc/logrotate.d</file>, normally
+	  named <file>/etc/logrotate.d/<var>package</var></file>, and use
+	  the facilities provided by <prgn>logrotate</prgn>.
+	  <footnote>
 	    <p>
 	      The traditional approach to log files has been to set up
 	      <em>ad hoc</em> log rotation schemes using simple shell
@@ -7932,17 +7934,20 @@ ln -fs ../sbin/sendmail debian/tmp/usr/bin/runq
 	    section="8">):
 	  <example compact="compact">
 /var/log/foo/*.log {
-rotate 12
-weekly
-compress
-postrotate
-/etc/init.d/foo force-reload
-endscript
+    rotate 12
+    weekly
+    compress
+    missingok
+    postrotate
+        [ -f /var/run/foo.pid ] && kill -s HUP `cat /var/run/foo.pid`
+    endscript
 }
 	  </example>
 	  This rotates all files under <file>/var/log/foo</file>, saves 12
-	  compressed generations, and forces the daemon to reload its
-	  configuration information after the log rotation.
+	  compressed generations, and tells the daemon to reopen its log
+	  files after the log rotation.  It skips this log rotation
+	  (via <tt>missingok</tt>) if no such log file is present, which
+	  avoids errors if the package is removed but not purged.
 	</p>
 
 	<p>

-- 
Russ Allbery (rra@debian.org)               <http://www.eyrie.org/~eagle/>




Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#445203; Package debian-policy. (Thu, 08 Jul 2010 12:18:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Guillem Jover <guillem@debian.org>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. (Thu, 08 Jul 2010 12:18:03 GMT) Full text and rfc822 format available.

Message #60 received at 445203@bugs.debian.org (full text, mbox):

From: Guillem Jover <guillem@debian.org>
To: Russ Allbery <rra@debian.org>, 445203@bugs.debian.org
Cc: Steve Langasek <vorlon@debian.org>, Raphael Geissert <geissert@debian.org>, Paul Martin <pm@debian.org>
Subject: Re: Bug#445203: debian-policy: 10.8. Log files: /etc/logrotate.d/<package> preferred
Date: Thu, 8 Jul 2010 14:13:47 +0200
[Message part 1 (text/plain, inline)]
Hi!

On Wed, 2010-07-07 at 08:59:24 -0700, Russ Allbery wrote:
> I propose the following patch for this bug instead in order to get it
> clear of this discussion.  We can always go back and sort out whether it
> should use invoke-rc.d after we work through the other bug.
> 
> Does this look okay?
> 
> diff --git a/policy.sgml b/policy.sgml
> index 7736ddb..a7bf76e 100644
> --- a/policy.sgml
> +++ b/policy.sgml
> @@ -7903,11 +7903,13 @@ ln -fs ../sbin/sendmail debian/tmp/usr/bin/runq
>  	</p>
>  
>  	<p>
> -	  Log files must be rotated occasionally so that they don't
> -	  grow indefinitely; the best way to do this is to drop a log
> -	  rotation configuration file into the directory
> -	  <file>/etc/logrotate.d</file> and use the facilities provided by
> -	  logrotate.<footnote>
> +	  Log files must be rotated occasionally so that they don't grow
> +	  indefinitely.  The best way to do this is to install a log
> +	  rotation configuration file in the
> +	  directory <file>/etc/logrotate.d</file>, normally
> +	  named <file>/etc/logrotate.d/<var>package</var></file>, and use
> +	  the facilities provided by <prgn>logrotate</prgn>.
> +	  <footnote>
>  	    <p>
>  	      The traditional approach to log files has been to set up
>  	      <em>ad hoc</em> log rotation schemes using simple shell
> @@ -7932,17 +7934,20 @@ ln -fs ../sbin/sendmail debian/tmp/usr/bin/runq
>  	    section="8">):
>  	  <example compact="compact">
>  /var/log/foo/*.log {
> -rotate 12
> -weekly
> -compress
> -postrotate
> -/etc/init.d/foo force-reload
> -endscript
> +    rotate 12
> +    weekly
> +    compress
> +    missingok
> +    postrotate
> +        [ -f /var/run/foo.pid ] && kill -s HUP `cat /var/run/foo.pid`
> +    endscript

Probably better to recommend using start-stop-daemon, as it's more
robust and should properly handle for example the case of a stale pid
file pointing to the wrong binary (which with HUP might terminate an
unsuspecting victim).

>  }
>  	  </example>
>  	  This rotates all files under <file>/var/log/foo</file>, saves 12
> -	  compressed generations, and forces the daemon to reload its
> -	  configuration information after the log rotation.
> +	  compressed generations, and tells the daemon to reopen its log
> +	  files after the log rotation.  It skips this log rotation
> +	  (via <tt>missingok</tt>) if no such log file is present, which
> +	  avoids errors if the package is removed but not purged.
>  	</p>
>  
>  	<p>

With that comment addressed, seconded.

regards,
guillem
[signature.asc (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#445203; Package debian-policy. (Thu, 08 Jul 2010 16:27:06 GMT) Full text and rfc822 format available.

Acknowledgement sent to Russ Allbery <rra@debian.org>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. (Thu, 08 Jul 2010 16:27:06 GMT) Full text and rfc822 format available.

Message #65 received at 445203@bugs.debian.org (full text, mbox):

From: Russ Allbery <rra@debian.org>
To: Guillem Jover <guillem@debian.org>
Cc: 445203@bugs.debian.org, Steve Langasek <vorlon@debian.org>, Raphael Geissert <geissert@debian.org>, Paul Martin <pm@debian.org>
Subject: Re: Bug#445203: debian-policy: 10.8. Log files: /etc/logrotate.d/<package> preferred
Date: Thu, 08 Jul 2010 09:22:28 -0700
Guillem Jover <guillem@debian.org> writes:
> On Wed, 2010-07-07 at 08:59:24 -0700, Russ Allbery wrote:

>> +    postrotate
>> +        [ -f /var/run/foo.pid ] && kill -s HUP `cat /var/run/foo.pid`
>> +    endscript

> Probably better to recommend using start-stop-daemon, as it's more
> robust and should properly handle for example the case of a stale pid
> file pointing to the wrong binary (which with HUP might terminate an
> unsuspecting victim).

Good point.  I now have:

    postrotate
        start-stop-daemon -K -p /var/run/foo.pid -s HUP -x /usr/sbin/foo -q
    endscript

-- 
Russ Allbery (rra@debian.org)               <http://www.eyrie.org/~eagle/>




Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#445203; Package debian-policy. (Sun, 11 Jul 2010 06:03:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Steve Langasek <vorlon@debian.org>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. (Sun, 11 Jul 2010 06:03:03 GMT) Full text and rfc822 format available.

Message #70 received at 445203@bugs.debian.org (full text, mbox):

From: Steve Langasek <vorlon@debian.org>
To: Russ Allbery <rra@debian.org>, 445203@bugs.debian.org
Cc: Guillem Jover <guillem@debian.org>, Raphael Geissert <geissert@debian.org>, Paul Martin <pm@debian.org>
Subject: Re: Bug#445203: debian-policy: 10.8. Log files: /etc/logrotate.d/<package> preferred
Date: Sat, 10 Jul 2010 22:58:15 -0700
[Message part 1 (text/plain, inline)]
On Thu, Jul 08, 2010 at 09:22:28AM -0700, Russ Allbery wrote:
> Guillem Jover <guillem@debian.org> writes:
> > On Wed, 2010-07-07 at 08:59:24 -0700, Russ Allbery wrote:

> >> +    postrotate
> >> +        [ -f /var/run/foo.pid ] && kill -s HUP `cat /var/run/foo.pid`
> >> +    endscript

> > Probably better to recommend using start-stop-daemon, as it's more
> > robust and should properly handle for example the case of a stale pid
> > file pointing to the wrong binary (which with HUP might terminate an
> > unsuspecting victim).

> Good point.  I now have:

>     postrotate
>         start-stop-daemon -K -p /var/run/foo.pid -s HUP -x /usr/sbin/foo -q
>     endscript

Heh, that's just makes me want to weep at the awkwardness of duplicating
information that should be encapsulated in the init script. :)  I really
think "/etc/init.d/$foo reload" makes a more suitable example, but I at
least don't think the above is wrong - so no objections.  I'll just focus on
making sysvinit scripts obsolete by way of upstart, I think. :)

-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                    http://www.debian.org/
slangasek@ubuntu.com                                     vorlon@debian.org
[signature.asc (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#445203; Package debian-policy. (Mon, 19 Jul 2010 20:09:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Thijs Kinkhorst <thijs@debian.org>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. (Mon, 19 Jul 2010 20:09:03 GMT) Full text and rfc822 format available.

Message #75 received at 445203@bugs.debian.org (full text, mbox):

From: Thijs Kinkhorst <thijs@debian.org>
To: 445203@bugs.debian.org
Subject: Re: Bug#445203: debian-policy: 10.8. Log files: /etc/logrotate.d/<package> preferred
Date: Mon, 19 Jul 2010 22:06:55 +0200
[Message part 1 (text/plain, inline)]
On snein 11 July 2010, Steve Langasek wrote:
>   On Thu, Jul 08, 2010 at 09:22:28AM -0700, Russ Allbery wrote:
> > Guillem Jover <guillem@debian.org> writes:
> > > On Wed, 2010-07-07 at 08:59:24 -0700, Russ Allbery wrote:
> > >> +    postrotate
> > >> +        [ -f /var/run/foo.pid ] && kill -s HUP `cat /var/run/foo.pid`
> > >> +    endscript
> > > 
> > > Probably better to recommend using start-stop-daemon, as it's more
> > > robust and should properly handle for example the case of a stale pid
> > > file pointing to the wrong binary (which with HUP might terminate an
> > > unsuspecting victim).
> > 
> > Good point.  I now have:
> >     postrotate
> >         start-stop-daemon -K -p /var/run/foo.pid -s HUP -x /usr/sbin/foo
> >-q endscript
> 
> Heh, that's just makes me want to weep at the awkwardness of duplicating
> information that should be encapsulated in the init script. :)  I really
> think "/etc/init.d/$foo reload" makes a more suitable example, but I at
> least don't think the above is wrong - so no objections.  I'll just focus
> on making sysvinit scripts obsolete by way of upstart, I think. :)

I would also use Steve's suggestion as the most straightforward example. 

Proposal seconded either with Rus's line quoted above or Steve's suggested 
line for postrotate.


Thijs
[signature.asc (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, Debian Policy List <debian-policy@lists.debian.org>:
Bug#445203; Package debian-policy. (Sun, 25 Jul 2010 04:12:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Russ Allbery <rra@debian.org>:
Extra info received and forwarded to list. Copy sent to Debian Policy List <debian-policy@lists.debian.org>. (Sun, 25 Jul 2010 04:12:03 GMT) Full text and rfc822 format available.

Message #80 received at 445203@bugs.debian.org (full text, mbox):

From: Russ Allbery <rra@debian.org>
To: 445203@bugs.debian.org
Subject: Re: Bug#445203: debian-policy: 10.8. Log files: /etc/logrotate.d/<package> preferred
Date: Sat, 24 Jul 2010 21:10:46 -0700
Thijs Kinkhorst <thijs@debian.org> writes:
> On snein 11 July 2010, Steve Langasek wrote:
>>  On Thu, Jul 08, 2010 at 09:22:28AM -0700, Russ Allbery wrote:
>>> Guillem Jover <guillem@debian.org> writes:

>>>> Probably better to recommend using start-stop-daemon, as it's more
>>>> robust and should properly handle for example the case of a stale pid
>>>> file pointing to the wrong binary (which with HUP might terminate an
>>>> unsuspecting victim).

>>> Good point.  I now have:
>>>     postrotate
>>>         start-stop-daemon -K -p /var/run/foo.pid -s HUP -x /usr/sbin/foo
>>>-q endscript

>> Heh, that's just makes me want to weep at the awkwardness of
>> duplicating information that should be encapsulated in the init
>> script. :)  I really think "/etc/init.d/$foo reload" makes a more
>> suitable example, but I at least don't think the above is wrong - so no
>> objections.  I'll just focus on making sysvinit scripts obsolete by way
>> of upstart, I think. :)

> I would also use Steve's suggestion as the most straightforward example. 

> Proposal seconded either with Rus's line quoted above or Steve's suggested 
> line for postrotate.

I've gone ahead and merged this using start-stop-daemon while we discuss
how to deal with init scripts in the other bug.  I think we need to
overhaul the init script policy, both for that and for other reasons (such
as LSB headers), and once we do that, we can fix up this example again.
The start-stop-daemon example has the advantage of not taking a side and
not being wrong whichever direction we go.

Thank you all for the review!

-- 
Russ Allbery (rra@debian.org)               <http://www.eyrie.org/~eagle/>




Added tag(s) pending; removed tag(s) patch. Request was from Russ Allbery <rra@debian.org> to control@bugs.debian.org. (Sun, 25 Jul 2010 04:12:04 GMT) Full text and rfc822 format available.

Reply sent to Russ Allbery <rra@debian.org>:
You have taken responsibility. (Mon, 26 Jul 2010 05:06:20 GMT) Full text and rfc822 format available.

Notification sent to Paul Martin <pm@debian.org>:
Bug acknowledged by developer. (Mon, 26 Jul 2010 05:06:20 GMT) Full text and rfc822 format available.

Message #87 received at 445203-close@bugs.debian.org (full text, mbox):

From: Russ Allbery <rra@debian.org>
To: 445203-close@bugs.debian.org
Subject: Bug#445203: fixed in debian-policy 3.9.1.0
Date: Mon, 26 Jul 2010 05:02:07 +0000
Source: debian-policy
Source-Version: 3.9.1.0

We believe that the bug you reported is fixed in the latest version of
debian-policy, which is due to be installed in the Debian FTP archive:

debian-policy_3.9.1.0.dsc
  to main/d/debian-policy/debian-policy_3.9.1.0.dsc
debian-policy_3.9.1.0.tar.gz
  to main/d/debian-policy/debian-policy_3.9.1.0.tar.gz
debian-policy_3.9.1.0_all.deb
  to main/d/debian-policy/debian-policy_3.9.1.0_all.deb



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 445203@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Russ Allbery <rra@debian.org> (supplier of updated debian-policy package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.8
Date: Sun, 25 Jul 2010 19:38:21 -0700
Source: debian-policy
Binary: debian-policy
Architecture: source all
Version: 3.9.1.0
Distribution: unstable
Urgency: low
Maintainer: Debian Policy List <debian-policy@lists.debian.org>
Changed-By: Russ Allbery <rra@debian.org>
Description: 
 debian-policy - Debian Policy Manual and related documents
Closes: 104373 175202 184064 186102 218897 232448 400322 402721 436105 445203 475101 477240 509932 509933 555977 561413 588750 589362 589605 589609
Changes: 
 debian-policy (3.9.1.0) unstable; urgency=low
 .
   * Policy: Include GPL version 1 in common-licenses
     Wording: Russ Allbery <rra@debian.org>
     Seconded: gregor herrmann <gregoa@debian.org>
     Seconded: Damyan Ivanov <dmn@debian.org>
     Seconded: Giacomo A. Catenazzi <cate@debian.org>
     Closes: #436105
   * Policy: Libtool *.la files should generally not be installed
     Wording: Russ Allbery <rra@debian.org>
     Seconded: Julien Cristau <jcristau@debian.org>
     Seconded: Cyril Brulebois <kibi@debian.org>
     Closes: #561413
   * Policy: Require dpkg-divert --package when adding/removing diversions
     Wording: Russ Allbery <rra@debian.org>
     Seconded: Raphaël Hertzog <hertzog@debian.org>
     Seconded: Raphael Geissert <geissert@debian.org>
     Closes: #218897
   * Policy: Remove encouragement to create shlibs.local
     Wording: Russ Allbery <rra@debian.org>
     Seconded: Julien Cristau <jcristau@debian.org>
     Seconded: Jakub Wilk <jwilk@debian.org>
     Seconded: Cyril Brulebois <kibi@debian.org>
   * Policy: Document alternate SONAME format with version before .so
     Wording: Russ Allbery <rra@debian.org>
     Seconded: Julien Cristau <jcristau@debian.org>
     Seconded: Raphaël Hertzog <hertzog@debian.org>
     Closes: #509932
   * Policy: Architecture wildcards also allowed in binary relationships
     Wording: Russ Allbery <rra@debian.org>
     Seconded: Guillem Jover <guillem@debian.org>
     Seconded: Raphaël Hertzog <hertzog@debian.org>
     Closes: #400322
   * Policy: Say Conflicts should not be used unless necessary
     Wording: Russ Allbery <rra@debian.org>
     Seconded: Guillem Jover <guillem@debian.org>
     Seconded: Jakub Wilk <jwilk@debian.org>
     Closes: #402721
   * Policy: Remove obsolete _REENTRANT, require thread-safe libraries
     Wording: Russ Allbery <rra@debian.org>
     Seconded: Kurt Roeckx <kurt@roeckx.be>
     Seconded: Giacomo A. Catenazzi <cate@debian.org>
     Closes: #475101
   * Policy: Allow subdirectories of /usr/lib/cgi-bin to be used
     Wording: Russ Allbery <rra@debian.org>
     Seconded: Andrew McMillan <andrew@morphoss.com>
     Seconded: Charles Plessy <plessy@debian.org>
     Closes: #104373
   * Policy: More specific requirements around date-based versions
     Wording: Russ Allbery <rra@debian.org>
     Seconded: Julien Cristau <jcristau@debian.org>
     Seconded: Cyril Brulebois <kibi@debian.org>
     Seconded: Steve Langasek <vorlon@debian.org>
     Closes: #186102
   * Policy: Require slave alternatives for manual pages
     Wording: Russ Allbery <rra@debian.org>
     Seconded: Guillem Jover <guillem@debian.org>
     Seconded: Jakub Wilk <jwilk@debian.org>
     Seconded: Emilio Pozuelo Monfort <pochu@debian.org>
     Closes: #184064
   * Policy: More explicit requirements around library SONAMEs
     Wording: Russ Allbery <rra@debian.org>
     Seconded: Raphaël Hertzog <hertzog@debian.org>
     Seconded: Emilio Pozuelo Monfort <pochu27@gmail.com>
     Closes: #509933
   * Policy: Only dpkg-gencontrol supports variable substitutions
     Wording: Charles Plessy <plessy@debian.org>
     Seconded: Emilio Pozuelo Monfort <pochu@debian.org>
     Seconded: Guillem Jover <guillem@debian.org>
     Closes: #589609
   * Policy: Ada Library Information files must be read-only
     Wording: Russ Allbery <rra@debian.org>
     Seconded: Emilio Pozuelo Monfort <pochu@debian.org>
     Seconded: Ludovic Brenta <ludovic@ludovic-brenta.org>
     Closes: #232448
   * Policy: Recommend /etc/logrotate.d/package for logrotate rules
     Wording: Russ Allbery <rra@debian.org>
     Seconded: Guillem Jover <guillem@debian.org>
     Seconded: Thijs Kinkhorst <thijs@debian.org>
     Closes: #445203
   * Policy: Allow /bin/sh scripts to rely on XSI for kill and trap
     Wording: Russ Allbery <rra@debian.org>
     Seconded: Giacomo A. Catenazzi <cate@debian.org>
     Seconded: Raphael Geissert <geissert@debian.org>
     Closes: #477240
   * Policy: Ownership and permissions for control information files
     Wording: Russ Allbery <rra@debian.org>
     Seconded: Emilio Pozuelo Monfort <pochu@debian.org>
     Seconded: Julien Cristau <jcristau@debian.org>
     Closes: #555977
   * Set the version of the Perl Policy to match the version of the Policy
     package.
   * Explain the Perl module package naming policy more explicitly and
     provide some examples.  (Closes: #175202)
   * Revise the footnote discussing shlibs creation to not talk about the
     switch to objdump as if it were a new innovation and to explicitly
     mention the NEEDED attribute as the source of dependency information.
   * Introduce "control information file" to refer to the contents of the
     Debian package control.tar.gz, following the dpkg documentation.  Use
     that terminology consistently, and change possibly confusing
     references to fields in control files to use "control field"
     uniformly.
   * Document that the first line of the changelog entry is conventionally
     an explanation for the upload if the uploader is not the regular
     maintainer.  Patch from Charles Plessy.  (Closes: #589605)
   * Fix typo in upgrading-checklist.  (Closes: #588750)
   * Fix formatting error in footnote to 7.7.  (Closes: #589362)
   * Remove ancient Conflicts and Replaces.
Checksums-Sha1: 
 1dc24a34db96f2c812fc560281cd3460256f72e7 1204 debian-policy_3.9.1.0.dsc
 af1c2192f6fc3c241618b48688f4d714aa630da2 690539 debian-policy_3.9.1.0.tar.gz
 1a94fda2ee6ad584efc2dab420178b993b028545 1852358 debian-policy_3.9.1.0_all.deb
Checksums-Sha256: 
 e81bc2f72659dd75a94ee4b6ba3dfe26ddf09811ece2e00cf2ebf9372ca68b98 1204 debian-policy_3.9.1.0.dsc
 7322f07e9bcd80dc3379f2545e7be7b93a2dc48b30b490b6277082024d98e847 690539 debian-policy_3.9.1.0.tar.gz
 facfbcbc037f7fb768cb9a42f72da3bff750922b8828fce633cc400012a71744 1852358 debian-policy_3.9.1.0_all.deb
Files: 
 10aae2bd3a3c14fb6853f26b9b97de55 1204 doc optional debian-policy_3.9.1.0.dsc
 3a8ac906da51c3574c6e92aa6c12af8e 690539 doc optional debian-policy_3.9.1.0.tar.gz
 182e7d0f26b29101150014c9bd2fa8eb 1852358 doc optional debian-policy_3.9.1.0_all.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)

iEYEARECAAYFAkxNE9EACgkQ+YXjQAr8dHZzsACg2tBvXhJKJNRtTDg2XwJdG1es
RzcAoI2YCA0+mnxQa4QapbxlH44szEML
=8Iyg
-----END PGP SIGNATURE-----





Bug archived. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Thu, 02 Sep 2010 07:30:03 GMT) Full text and rfc822 format available.

Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Sat Apr 19 15:39:51 2014; Machine Name: buxtehude.debian.org

Debian Bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.