[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Native packages, broken uploads, and debian policy



>>>>> "Manoj" == Manoj Srivastava <srivasta@debian.org> writes:

    Manoj> 	I feel that native packages should not have a debian
    Manoj> revision, but not strongly enough or with reasons to be
    Manoj> able to convincingly argue that feeling be made mandatory
    Manoj> in policy.

I disagree.


The problem here is that the Debian version serves two tasks:

1. has the package changed from the upstream version?

2. has the package been rebuilt?


So obviously 1 is not relevant but 2 still is. eg. consider a package
that was built against a buggy library, and the package has to be
rebuilt in order to fix the problem. No source needs to change, so
updating the version number is (IMHO) an overkill.

Then again, the current solution isn't very optimal either. As
changing the Debian revision number requires changing the name of the
source file, even though the source file has not changed.

-------------------------------------------------------------------------------
I would suggest we have either 1:

non-native packages (no change):
/home/bam/source/notmine/libpam-heimdal_1.0-8.diff.gz
/home/bam/source/notmine/libpam-heimdal_1.0-8.dsc
/home/bam/source/notmine/libpam-heimdal_1.0-8_i386.changes
/home/bam/source/notmine/libpam-heimdal_1.0-8_i386.deb
/home/bam/source/notmine/libpam-heimdal_1.0-8_i386.upload
/home/bam/source/notmine/libpam-heimdal_1.0.orig.tar.gz

native packages:
/home/bam/source/notmine/libpam-heimdal_1.0.dsc
/home/bam/source/notmine/libpam-heimdal_1.0-1_i386.changes
/home/bam/source/notmine/libpam-heimdal_1.0-1_i386.deb
/home/bam/source/notmine/libpam-heimdal_1.0-1_i386.upload
/home/bam/source/notmine/libpam-heimdal_1.0.orig.tar.gz

so no diff is required (as no changes to source code should occur),
but a Debian revision number is used to identify the binary, so it can
be recompiled.

-------------------------------------------------------------------------------
or 2:

non-native packages (no change):
/home/bam/source/notmine/libpam-heimdal_1.0-8.diff.gz
/home/bam/source/notmine/libpam-heimdal_1.0-8.dsc
/home/bam/source/notmine/libpam-heimdal_1.0-8!1_i386.changes
/home/bam/source/notmine/libpam-heimdal_1.0-8!1_i386.deb
/home/bam/source/notmine/libpam-heimdal_1.0-8!1_i386.upload
/home/bam/source/notmine/libpam-heimdal_1.0.orig.tar.gz

native packages:
/home/bam/source/notmine/libpam-heimdal_1.0.dsc
/home/bam/source/notmine/libpam-heimdal_1.0!1_i386.changes
/home/bam/source/notmine/libpam-heimdal_1.0!1_i386.deb
/home/bam/source/notmine/libpam-heimdal_1.0!1_i386.upload
/home/bam/source/notmine/libpam-heimdal_1.0.orig.tar.gz


(replace ! with more appropriate character)

so the two separate tasks for the Debian revision number are clearly
split apart. This method means that the version for the diff filename
does not change if the package is simply rebuilt.

I suspect this might have certain implications for autobuilders too,
for the same reasons. ie. it is possible to rebuild the package for a
particular architecture without hacking around with the version
number.

I would recommend this solution.
-- 
Brian May <bam@debian.org>



Reply to: