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

Re: Questions about "Winding down my Debian involvement"



Sean Whitton writes ("Re: Questions about "Winding down my Debian involvement""):
> On Wed 20 Mar 2019 at 04:17PM +01, Joerg Jaspert wrote:
> > I would actually like if we end up with a "git push turns into an
> > upload". Which would need some central $thing for it to make it so. Not
> > sure thats salsa. Or something seperately (but maybe together with it).
> 
> We already have something that is quite close to this, in the form of
> `dgit push-source`.
> 
> I am not really sure why people think some salsa CI thing would be
> better than that -- but would be grateful to know.

Not having to prat about with source packages on your development
machine would be great.  But I don't think we are there yet.  The real
problem is that generation of the obsolete[1] .dsc source package
format is complex and fragile.


We don't even have a .dsc format that can represent every reasonable
source code tree.  So not only would the robot need to occasionally do
git-deborig or something, it would also fail occasionally with "could
not make a source package out of this thing" kind of errors.

In practice the real burden of dealing with source packages is this
kind of strange fragility of patch queue systems, unrepresentable
changes, files unexpectedly appearing or changing mode, etc.  If it
weren't for that then dealing with the (to the Debian neophyte) random
.dsc artefacts on your development machine would be a fairly mild
annoyance - worth getting rid of because of the increased friction and
to allow everyone to forget all about it, but not a serious problem.

But right now you can't be be a principal Debian packaging contributor
without knowing all this source package nonsense - because otherwise
how will you debug it when it goes wrong ?


If it were possible to reliably generate a source package without
making odd resttrictions about what kind of changes can b made in git,
then it would be great to move the source package generation to a
nebulous [2] robot.  The robot would probably want to use dgit to turn
the git branch into a source package (for the benefit of obsolete [1]
systems that still demand source packages) and a dgit view git branch
(for the benefit of normal git users who do not understand or want to
learn quilt, let alone peculiar Debian source code management
strategies).

This would be a nice step towards the goal of making dgit obsolete by
abolishing source packages.  (I apprecite that it is a long term goal.
For various reasons there are packages that will find it hard to
switch to modern version control and we will need to support them.)

But sadly I think a blocker for this is having a source package format
that can represent (reasonably efficiently) all reasonable trees.  So
part of the transition away from source packages is to first enhance
source packages so they are better for use as a gateway output format.

My `Format: 3.0 (rsync)' idea would do that but it is not likely to
get to the top of my todo list soon.

Ian.

[1] It's not officially deprecated by Debian, but it should be.  And
yes, I designed much of it in 1992/1993.  I still think it was right
at the time but we have much much better tools for source code
management now.

[2] "In the cloud".  Ie on someone else's computer, in this case
hopefully Debian's computer like, say, Salsa.

-- 
Ian Jackson <ijackson@chiark.greenend.org.uk>   These opinions are my own.

If I emailed you from an address @fyvzl.net or @evade.org.uk, that is
a private address which bypasses my fierce spamfilter.


Reply to: