Re: New source package formats now available
Bastian Blank <firstname.lastname@example.org> writes:
> On Sat, Nov 21, 2009 at 04:54:36PM +0100, Raphael Hertzog wrote:
>> since a few weeks the Debian archive accepts source package using the new
>> formats "3.0 (quilt)" and "3.0 (native)".
> I tried "3.0 (quilt)" with several packages today and none worked
> properly, so several large packages will be stuck with "3.0 (native)".
> Bugs as of today.
> * Packages with different patch systems like linux-2.6. In this case
> dpkg-source ignores failures to register a patch and produces
> sources without the changes. (#557618)
As discussed on IRC this is a matter of false advertising by the
announcement and the wiki. Which also seems to be the main problem
Rhonda has with the format.
YOU CAN NOT MIX PATCH SYSTEMS.
If the package uses a patch system, which might or might not be quilt,
and you declare it 3.0 (quilt) format then dpkg also uses a patch
system, which might or might not be quilt. You then pitch two patch
systems against each other and most likely both will be using
debian/patches/ with, unsurprisingly, catastrophic results.
If you convert to 3.0 (quilt) then remove the patch system from
debian/rules. In extrem cases, like linux-2.6, where that isn't
possible you need to make sure it does not interfere with dpkg. The
simplest way would be to not use debian/patches. Use
debian/kernel-patches/ or something other.
> * The "3.0 (quilt)" format is incompatible with "quilt" by using
> different patch directories and features. (#557619)
Quilt supports alternative patches directories and series files. It
just isn't verry good at it as it requires QUILT_PATCHES /
QUILT_SERIES to be set correctly every time you work on the source.
The patch in #557623 makes quilt remember where it got its patches and
series file from the first time you use it (e.g. when called from
dpkg-source -x) so it just works out of the box after then.
> * Fuzzy patches leads to silent ignore of the complete patchset.
> * Different behaviour between quilt installed/not installed.
> Several others against quilt themself are missing.
> The whole thing is super fragile. It is mostly impossible to use both
> "3.0 (quilt)" and quilt themself because you use it to develop.
Yes, a matter of false advertising. Use a different dir for the
packages quilt use.
>> The last step for us (dpkg
>> maintainers) in this project is to change dpkg-source to use those new
>> formats by default.
> I will propose a GR to stop you if you go on until it works properly.
> And yes, this includes packages like linux-2.6, which have to use a more
> sophisticated patch system than quilt.
> Or you start and propose a different format that can be mostly like 3.0
> (quilt) for the result (multiple tars) but without the implicit quilt
>> However, before we do this we want to ensure that
>> no packages (in sid) will be broken due to this switch and there are
>> quite a few packages left to fix:
> You have to add the bugs above.
It seems more and more people are against switching and really what is
Everyone who wants the new format is creating debian/source/format
already. So all you do by switching the default is piss of those
people that are against 3.0 (quilt) format and please no one.
Further packages with patch systems need to be changed to work
reliably with 3.0 (quilt) format, i.e. need to remove the patch system
from debian/rules. Without adding debian/source/format at that time
the packages then don't build as 1.0 format anymore so backporting
breaks. Another large group of people and users pissed at you.