Re: presumable last policy change before releasing Squeeze?

2009-11-12 Thread ERSEK Laszlo

On Sun, 4 Oct 2009, Paul Wise wrote:


Write an article for debaday.debian.net about lbzip2 to promote it and
get more users/testers.


The DebADay Team has reviewed and published my article under [0].

Many thanks to Ana Guerrero, Martín Ferrari, and the rest of the DebADay 
Team!


Also thank you, Paul, for the suggestion.

Cheers,
lacos

[0] http://debaday.debian.net/2009/11/12/lbzip2-parallel-bzip2-utility/

Re: presumable last policy change before releasing Squeeze?

2009-10-06 Thread Bernhard R. Link
* ERSEK Laszlo la...@caesar.elte.hu [091006 04:48]:
 On Mon, 5 Oct 2009, Bernhard R. Link wrote:

 Note that you might do without a patch. make is build for cases like
 that in mind, so replacing variables in a makefile you do not like just
 needs those variables as command line arguments.

 so just changing debian/rules to
$(MAKE) CFLAGS=$(CFLAGS) LDFLAGS=$(LDFLAGS) LIBS=$(LIBS)
 might do the same without needing to edit the Makefile.

 Those compiler options must be in the upstream Makefile(s). There isn't
 anything in the upstream release that would pass those compiler options
 to the Makefile from the outside. The upstream release is meant to be
 self-sufficient for any SUSv2 platform. So any port has to move those
 flags if they aren't in the right place for that port as shipped in
 upstream.

Perhaps I am misunderstanding something here.

Let's see if I got anything wrong:

1) we are speaking about lbzip2, aren't we?
2) that one has exactly one Makefile in the upstream tarball not
   calling any submakes in any strange way.
3) you patch that Makefile to no longer set CC CFLAGS LDFLAGS and LIBS

What I am saying is that this patch is unnecessary. you can do that
totally in debian/rules by placing those variables in the make
invocation within your build-stamp target.

 Looking at the definition of those variables in your debian/rules also
 looks very complicated. Unless there is a reason to rerun this script
 all the time?

 There is none, but lbzip2 consists of only 5 .c files, so it's not very
 wasteful when building.


 Otherwise e.g. some
 LDFLAGS := $(shell ./lfs.sh LDFLAGS)
 might be a bit more efficient and easier to look at...

 := would be certainly easier on the eyes, but it's not supported by SUSv2
 make [0], so := is avoided in the upstream version. I could use := in
 debian/rules, but the examples in the Policy [1] and other stuff I looked
 at originally IIRC don't use it, so I'm not convinced it wouldn't have
 side-effects. (Try it out and see if it works is not good enough :))

= and := are exactly the same, except that := is evaluated once and then
stored, whereas = is evaluated later. If I were you I would be more
worried that all the parsing and reparsing (which causes the need for
the extra $) has some side effects.

Hochachtungsvoll,
Bernhard R. Link
-- 
Never contain programs so few bugs, as when no debugging tools are available!
Niklaus Wirth


-- 
To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: presumable last policy change before releasing Squeeze?

2009-10-06 Thread ERSEK Laszlo

On Tue, 6 Oct 2009, Bernhard R. Link wrote:


3) you patch that Makefile to no longer set CC CFLAGS LDFLAGS and LIBS

What I am saying is that this patch is unnecessary. you can do that
totally in debian/rules by placing those variables in the make
invocation within your build-stamp target.


You're right, of course; macro definitions passed on the command line take 
precedence. I was very tired and didn't get your point, sorry.


The makefile patch is for other reasons necessary, but I can make it 
shorter by removing this part.




= and := are exactly the same, except that := is evaluated once and then
stored, whereas = is evaluated later. If I were you I would be more
worried that all the parsing and reparsing (which causes the need for
the extra $) has some side effects.


Okay, since you insist, I'll try to switch to :=.


Cheers,
lacos


--
To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: presumable last policy change before releasing Squeeze?

2009-10-06 Thread ERSEK Laszlo

On Sun, 4 Oct 2009, Paul Wise wrote:


Talk to the upstream tar maintainers about ways to make tar detect if
lbzip2 is available and use it instead of bzip2.


I made a proposal under [0]. I amended it under [1].

Please look at [1], it also summarizes how (I think) Debian would be 
affected. Comments appreciated.


Thank you,
lacos

[0] http://lists.gnu.org/archive/html/help-tar/2009-10/msg0.html
[1] http://lists.gnu.org/archive/html/help-tar/2009-10/msg1.html


--
To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: presumable last policy change before releasing Squeeze?

2009-10-06 Thread ERSEK Laszlo

On Tue, 6 Oct 2009, Bernhard R. Link wrote:


3) you patch that Makefile to no longer set CC CFLAGS LDFLAGS and LIBS

What I am saying is that this patch is unnecessary. you can do that
totally in debian/rules by placing those variables in the make
invocation within your build-stamp target.


I tried to do this, but I didn't like the result. I think I could identify 
with this approach if it wasn't necessary to patch the upstream Makefile 
at all. Since I have to patch the upstream Makefile, I have to edit it, 
look at it, and it is very disturbing that I do see (according to the 
suggestion above) macro definitions at the top, and have to remind myself, 
yes, those will be overridden by debian/rules. So maybe the Makefile 
patch is a little bit bigger, but the patched Makefile shows a much 
cleaner picture this way: no definitions for the macros used all over the 
place? They *must* be coming from the outside.


Why I have to patch the upstream Makefile: the target debian-sanity, 
which is optionally depended upon, and was developed (IIRC) because my 
sponsor asked for it, definitely belongs to the Makefile, not 
debian/rules. This target does real stuff, and in my mind debian/rules 
should be minimal and mostly contain debhelper invocations; IOW it should 
be a thin wrapper.




= and := are exactly the same, except that := is evaluated once and then
stored, whereas = is evaluated later. If I were you I would be more
worried that all the parsing and reparsing (which causes the need for
the extra $) has some side effects.


Wherever lfs.sh is called, I now use := and $(shell), as you suggested.

Thanks,
lacos


--
To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: presumable last policy change before releasing Squeeze?

2009-10-06 Thread ERSEK Laszlo

On Tue, 6 Oct 2009, ERSEK Laszlo wrote:


On Tue, 6 Oct 2009, Bernhard R. Link wrote:


= and := are exactly the same, except that := is evaluated once and then
stored, whereas = is evaluated later. If I were you I would be more
worried that all the parsing and reparsing (which causes the need for
the extra $) has some side effects.


Wherever lfs.sh is called, I now use := and $(shell), as you suggested.


I'm embarrassed to admit that I can't do even that. I have to temporarily 
patch lfs.sh (until a new upstream release) because of the move to EGLIBC. 
If I don't use the original macro definitions, then lfs.sh is called from 
debian/rules before it is patched by quilt, which is called only later 
from debian/rules.


lacos


--
To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: presumable last policy change before releasing Squeeze?

2009-10-05 Thread Bernhard R. Link
* ERSEK Laszlo la...@caesar.elte.hu [091004 21:54]:
 Take a look at the FreeBSD port and see if the Makefile patch is
 appropriate to include upstream or if not, contact the port maintainer
 about it.

 The FreeBSD port creator/maintainer, Gábor Kövesdán, personally offered
 to do the port [0], and I gratefully accepted (obviously). We already
 discussed the Makefile patch and concluded that the FreeBSD port needs
 it, and that upstream can't merge it. A minimal justification sounds
 like: (1) the port doesn't compile with -D _XOPEN_SOURCE=500, (2) SUSv2
 requires -D _XOPEN_SOURCE=500 [1], and upstream is written against SUSv2.

 No changes are planned for the upstream Makefile, so maintaining the
 patch shouldn't be much of a burden, hopefully.

Note that you might do without a patch. make is build for cases like
that in mind, so replacing variables in a makefile you do not like just
needs those variables as command line arguments.

so just changing debian/rules to
$(MAKE) CFLAGS=$(CFLAGS) LDFLAGS=$(LDFLAGS) LIBS=$(LIBS)
might do the same without needing to edit the Makefile.

Looking at the definition of those variables in your debian/rules also
looks very complicated. Unless there is a reason to rerun this script
all the time? Otherwise e.g. some
LDFLAGS := $(shell ./lfs.sh LDFLAGS)
might be a bit more efficient and easier to look at...

Hochachtungsvoll,
Bernhard R. Link
-- 
Never contain programs so few bugs, as when no debugging tools are available!
Niklaus Wirth


-- 
To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: presumable last policy change before releasing Squeeze?

2009-10-05 Thread ERSEK Laszlo

On Sun, 4 Oct 2009, Paul Wise wrote:


Write an article for debaday.debian.net about lbzip2 to promote it and
get more users/testers.


Should be in their queue now.



Have the package description and manual page reviewed by the Smith
Review Project:

http://wiki.debian.org/I18n/SmithReviewProject


People were kind enough to dissect the package description, I'll start to 
process their comments now.




Talk to the upstream tar maintainers about ways to make tar detect if
lbzip2 is available and use it instead of bzip2.


Sergey Poznyakoff says he'll accept a patch and guide me, so I'll look 
into it soon.



Thanks,
lacos


--
To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: presumable last policy change before releasing Squeeze?

2009-10-05 Thread ERSEK Laszlo

On Mon, 5 Oct 2009, Bernhard R. Link wrote:


Note that you might do without a patch. make is build for cases like
that in mind, so replacing variables in a makefile you do not like just
needs those variables as command line arguments.

so just changing debian/rules to
   $(MAKE) CFLAGS=$(CFLAGS) LDFLAGS=$(LDFLAGS) LIBS=$(LIBS)
might do the same without needing to edit the Makefile.


Those compiler options must be in the upstream Makefile(s). There isn't 
anything in the upstream release that would pass those compiler options to 
the Makefile from the outside. The upstream release is meant to be 
self-sufficient for any SUSv2 platform. So any port has to move those 
flags if they aren't in the right place for that port as shipped in 
upstream.




Looking at the definition of those variables in your debian/rules also
looks very complicated. Unless there is a reason to rerun this script
all the time?


There is none, but lbzip2 consists of only 5 .c files, so it's not very 
wasteful when building.




Otherwise e.g. some
LDFLAGS := $(shell ./lfs.sh LDFLAGS)
might be a bit more efficient and easier to look at...


:= would be certainly easier on the eyes, but it's not supported by SUSv2 
make [0], so := is avoided in the upstream version. I could use := in 
debian/rules, but the examples in the Policy [1] and other stuff I looked 
at originally IIRC don't use it, so I'm not convinced it wouldn't have 
side-effects. (Try it out and see if it works is not good enough :))



Thanks,
lacos


[0] http://www.opengroup.org/onlinepubs/007908775/xcu/make.html
[1] http://www.debian.org/doc/debian-policy/ch-source.html#s-debianrules-options


--
To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: presumable last policy change before releasing Squeeze?

2009-10-04 Thread ERSEK Laszlo

On Sun, 4 Oct 2009, Paul Wise wrote:


So as long as it is uploaded before the freeze date you should be
fine.


Thank you.



Most Standards-Version updates are of the form Bump
Standards-Version, no changes needed and such updates should not be
done unless they accompany some other update like fixing bugs or
adding a new upstream version.


I'm thinking about the whole thing only because a new upstream version is 
not impossible (documentation changes only).




Write an article for debaday.debian.net about lbzip2 to promote it and
get more users/testers.


I didn't know about debaday. I'll do this.



Have the package description and manual page reviewed by the Smith
Review Project:

http://wiki.debian.org/I18n/SmithReviewProject


Definitely.



Take a look at the FreeBSD port and see if the Makefile patch is
appropriate to include upstream or if not, contact the port maintainer
about it.


The FreeBSD port creator/maintainer, Gábor Kövesdán, personally offered to 
do the port [0], and I gratefully accepted (obviously). We already 
discussed the Makefile patch and concluded that the FreeBSD port needs it, 
and that upstream can't merge it. A minimal justification sounds like: (1) 
the port doesn't compile with -D _XOPEN_SOURCE=500, (2) SUSv2 requires -D 
_XOPEN_SOURCE=500 [1], and upstream is written against SUSv2.


No changes are planned for the upstream Makefile, so maintaining the patch 
shouldn't be much of a burden, hopefully.




Document in the manual page or README the TAR_OPTIONS environment
variable and how to make tar use lbzip2 by default.


I'm not sure if adding --use=lbzip2 to TAR_OPTIONS was any more useful 
than adding any --use=compressor option; you'd lose the ability to create 
non-compressed tar files. (Or you'd have to explicitly pass --use=cat on 
the command line.) You'd also be unable to extract plain tar archives. (Or 
you'd have to explicitly pass some identity filter with --use on the 
command line that doesn't choke on -d.)




Talk to the upstream tar maintainers about ways to make tar detect if
lbzip2 is available and use it instead of bzip2.


In that case, tar should support pbzip2 as well. I'll try.


Much obliged,
lacos

[0] http://hup.hu/node/66857#comment-714251
[1] http://www.opengroup.org/onlinepubs/007908775/xsh/compilation.html

Re: presumable last policy change before releasing Squeeze?

2009-10-04 Thread Ben Finney
ERSEK Laszlo la...@caesar.elte.hu writes:

 This is tedious and doesn't bring anything to users, so instead of
 rushing it and possibly making several Policy rounds until Squeeze
 ships

Don't do that. It's deprecated practice to have an upload that *only*
addresses Standards-Version; it should only ever be updated as part of a
new release being made for *other* reasons, since there's nothing wrong
with a package conforming with a slightly out-of-date Standards-Version.

 I'd like to concentrate it into one session/upload. In this case
 package tidyness through less work is more important to me than
 package availability, since it won't bring anything to users, just
 keep my stuff neat.

I only ever consider updating the Standards-Version of a package when
I'm already working on the package anyway. From reading other package
changelogs, it seems this is the normal way to do it.

 Are you saying that I should update the package as soon as said
 external stuff allows, and go with the then-current Policy version
 into Sqeeze, leaving my sponsor and the build network more time as
 well?

Yes, make a release whenever you think a new release is justified by
significant changes in either a new upstream version or the packaging
work. Conformance with latest Policy is not by itself sufficient
motivation for a new release.

Whenever you're already working on the package for other reasons, check
the latest version of Policy each time and make any changes necessary to
comply with the latest Standards-Version. Each new Policy release has a
helpful summary of changes that Debian package maintainers need to be
aware of; read them thoroughly and understand what changes you need to
make as a result.

You should be using the ‘lintian(1)’ tool in some kind of automated test
each time you build your package, which will test your package for
various problems including many that would be Policy violations (among
many other checks). The maintainer of that tool is also involved in
administration and development of Policy, so the tool is usually quite
up-to-date with the latest Policy.

If you routinely follow best practices as found in the various developer
documents for Debian (URL:http://www.debian.org/doc/#righthalfcol or
the corresponding document packages installed to your system), then you
will commonly find that your package needs no special changes even when
there is a new Policy version released. My ‘debian/changelog’ entries
frequently have items like:

* Conform to ‘Standards-Version: 3.8.3’. No additional changes needed.

This allows readers (including those involved in getting the package
into the official archive) to know that I'm aware of the new Policy
version, that I assert the package conforms with it, and exactly what
changes were needed to bring the package into conformance.

-- 
 \   “[T]he speed of response of the internet will re-introduce us |
  `\to that from which our political systems have separated us for |
_o__)so long, the consequences of our own actions.” —Douglas Adams |
Ben Finney


-- 
To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



presumable last policy change before releasing Squeeze?

2009-10-03 Thread ERSEK Laszlo

Hi,

what's the earliest event or point in time after which event/point but 
before Squeeze shipping as stable the policy won't be changed anymore but 
I as a sponsored maintainer will still be able to upload (ask my sponsor 
Paul Wise to upload) my lbzip2 package? I'd like to update the package to 
the (then) current policy version at that point.


Thanks,
lacos


--
To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: presumable last policy change before releasing Squeeze?

2009-10-03 Thread Ben Finney
ERSEK Laszlo la...@caesar.elte.hu writes:

 what's the earliest event or point in time after which event/point but
 before Squeeze shipping as stable the policy won't be changed anymore
 but I as a sponsored maintainer will still be able to upload (ask my
 sponsor Paul Wise to upload) my lbzip2 package? I'd like to update the
 package to the (then) current policy version at that point.

What's your motivation for this? It's not a problem if packages included
in a Debian release are conformant with a slightly outdated version of
Policy. I don't see that as a good reason for delaying the upload of an
otherwise-ready release of your package.

-- 
 \ “If we don't believe in freedom of expression for people we |
  `\   despise, we don't believe in it at all.” —Noam Chomsky, |
_o__)   1992-11-25 |
Ben Finney


-- 
To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: presumable last policy change before releasing Squeeze?

2009-10-03 Thread ERSEK Laszlo

On Sun, 4 Oct 2009, Ben Finney wrote:

It's not a problem if packages included in a Debian release are 
conformant with a slightly outdated version of Policy. I don't see that 
as a good reason for delaying the upload of an otherwise-ready release 
of your package.



-q:

- I don't have anything to upload yet,
- when I will, it won't really affect end users,
- I like a fresh Standards-Version,
- I'd like to work on the package in a single focussed session.


-v -v -v:

The version in Squeeze (0.15-1) corresponds to the current upstream 
version, so there's no new Debian package to release as of now. 0.15-1 
conforms to Policy version 3.8.1, supposedly not very far behind 3.8.3.0.


Although as upstream I consider the utility finished, I expect a small 
change in the documentation. (It depends on external stuff, so I can't do 
it just yet.) Once I cover that, I'd like to merge it into the Debian 
package, also updating the packaging itself to newest guidelines.


This is tedious and doesn't bring anything to users, so instead of rushing 
it and possibly making several Policy rounds until Squeeze ships, I'd like 
to concentrate it into one session/upload. In this case package tidyness 
through less work is more important to me than package availability, since 
it won't bring anything to users, just keep my stuff neat.


Are you saying that I should update the package as soon as said external 
stuff allows, and go with the then-current Policy version into Sqeeze, 
leaving my sponsor and the build network more time as well?



Thanks,
lacos


--
To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: presumable last policy change before releasing Squeeze?

2009-10-03 Thread Matthew Palmer
On Sun, Oct 04, 2009 at 01:34:12AM +0200, ERSEK Laszlo wrote:
 - I like a fresh Standards-Version,

This is not a valid reason to make an upload to Debian.  It is perfectly
permissible to have a package with an outdated standards version, especially
if the updates to policy do not apply to your package (which is the case in
99% of packages for a given change to policy, in my experience).

- Matt


-- 
To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: presumable last policy change before releasing Squeeze?

2009-10-03 Thread Paul Wise
On Sat, Oct 3, 2009 at 6:55 PM, ERSEK Laszlo la...@caesar.elte.hu wrote:

 what's the earliest event or point in time after which event/point but
 before Squeeze shipping as stable the policy won't be changed anymore but I
 as a sponsored maintainer will still be able to upload (ask my sponsor Paul
 Wise to upload) my lbzip2 package? I'd like to update the package to the
 (then) current policy version at that point.

Since the freeze date for squeeze hasn't yet been set, there is no way
of knowing which version of policy will be current for squeeze.
Usually the release team uses a mass freeze exception to allow
anything uploaded to unstable before the freeze into testing
regardless of the usual 10 days of waiting before testing migration.
So as long as it is uploaded before the freeze date you should be
fine.

Most Standards-Version updates are of the form Bump
Standards-Version, no changes needed and such updates should not be
done unless they accompany some other update like fixing bugs or
adding a new upstream version.

Anyway, here are some ideas about what you could do to improve lbzip2:

Write an article for debaday.debian.net about lbzip2 to promote it and
get more users/testers.

Have the package description and manual page reviewed by the Smith
Review Project:

http://wiki.debian.org/I18n/SmithReviewProject

Take a look at the FreeBSD port and see if the Makefile patch is
appropriate to include upstream or if not, contact the port maintainer
about it.

Document in the manual page or README the TAR_OPTIONS environment
variable and how to make tar use lbzip2 by default.

Talk to the upstream tar maintainers about ways to make tar detect if
lbzip2 is available and use it instead of bzip2.

Work on the bugs mentioned in the manual page if appropriate.

-- 
bye,
pabs

http://wiki.debian.org/PaulWise


-- 
To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org