Patch systems in packages
steve.langasek at ubuntu.com
Tue Aug 19 17:25:23 BST 2008
On Sat, Aug 16, 2008 at 11:31:27PM -0700, Jordan Mantha wrote:
> On Sat, Aug 16, 2008 at 9:49 PM, Nicolas Valcarcel
> <nvalcarcel at ubuntu.com> wrote:
> > Currently there is no policy about how to make changes in the packages,
> > there are some good practices and a lot of developers try to use patch
> > systems whenever they can and don't touch the source code outside
> > debian/ directly, but that's still at the developer's discretion.
> > For that reason i wanted to start a discussion on the topic, to start
> > working with debian on preparing the packages with a patch system, so we
> > (and other derivatives) can make patches without the need of changing
> > the packaging. Also i will suggest to the revu reviewers to ask the
> > packagers to add a patch system on their packages.
> > What did you think about it? Any comments?
> > 1. https://bugs.edge.launchpad.net/ubuntu/+source/supertux/+bug/249195
> I think our job as downstreams is to provide patches to Debian, not
> tell them how to maintain their packages. IMO anyway, it's our
> obligation to either 1) give ordinary diff patches 2) use whatever
> patch system or lack thereof that upstream uses. There are so many
> common ways to patch and maintain a package (debhelper, cdbs, quilt,
> dpatch, svn, git, bzr ...) that I can't foresee a comprehensive,
> archive-wide policy.
> Additionally, IMO again, a primary goal of at least MOTU should be
> minimizing the divergence from Debian. The more changes we make, and
> the more useless they are (bumping standards version??) the more time
> we spend maintaining the divergence and the less time we have for more
> important tasks. Adding a patch system really *should not* be done in
> Ubuntu. If we're maintaining that much divergence we need to talk to
> Debian about how we can better minimize and maintain it.
If you have more than one change to the upstream source of a Debian package,
then you need some system to manage the changes to indicate which parts of
the patch belong to which functional change -- i.e., a "patch management
system". This can be a set of VCS feature branches, if you prefer (in which
case it's important to use the Vcs-* headers in debian/control in the Ubuntu
upload), or it can be an in-package patch system; but it is important to
have /some/ mechanism for labelling your changes so that you aren't left
with a single massive diff.
If the Debian maintainer already has a patch system in place, it's far
better to continue using that one (no matter how bad it is, sometimes);
otherwise, adding a patch system *should* be done when needed.
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 at ubuntu.com vorlon at debian.org
More information about the Ubuntu-motu