Wednesday, 13 November 2013

Re: Giving developers access to requeue package imports [Was: Ubuntu Platform developers BOF session?]

On Wed, Nov 13, 2013 at 04:38:17PM -0500, Barry Warsaw wrote:
> On Nov 13, 2013, at 04:28 PM, Stéphane Graber wrote:
> >For UDD, if we can't commit to the branch, then there's zero benefit in
> >even using it as the source branch as I could just as well use apt-get
> >source, which will get me the current package from the archive (which
> >UDD doesn't necessarily give me...), then apply changes and push that.
> For simple package changes, you could have a point, but I rarely encounter
> simple package changes specifically in Ubuntu. Usually I'm merging a new
> upstream, or Debian version, and then local version control is often a
> godsend. Sometimes the merge goes badly, or you have conflicts, or it's not
> enough to get a working Ubuntu package. I can do the merge, commit that local
> change, and then do further commits locally as I refine the package to build
> and work properly. I can diff between revisions, revert changes, etc.
> E.g. all the benefits of version control. I can create side branches of my
> main branch to try things out, then merge them back into my main branch. All
> this is especially useful if you are working on a package over some span of
> time.
> apt-get source is like performing without a net. Let's say you head down the
> wrong path while updating a package. It's very difficult to backup and try
> again, take side travels for experimentation, etc. Oh, and chdist is nice,
> but I prefer having ubuntu:<series>{,-proposed}/<package> branches.

Well, to be fair my fallback process when not doing UDD is:
- pull-lp-source <package> <series>
- cd */
- bzr init && bzr add && bzr commit -m "current"
- Do whatever changes, commit when needed, revert, ...
- bzr bd -S
- dput

Which based on what you described about commitless UDD seems pretty much
identical with the significant improvement that I don't have to grab the
whole branch on top of that :)

I could also push and share that temporary branch with others and
there'd be no downside to this since I wouldn't be able to merge that
branch back into the UDD one anyway.

At least for me, UDD without commit rights, would mean lost granularity
in some changes I'm doing in the archive, for example for some of the
edubuntu packages I've had dozens of commits before an actual upload,
and I quite enjoy having that present in the UDD history, loosing that
ability would be loosing much of UDD's benefits.

> >Not having commit rights to the UDD branch would make UDD a simple
> >archiving service and based on its current state, a pretty bad one at
> >that.
> >
> >To clarifiy my position, I really like UDD and I think that kind of VCS
> >integration is what we want for the distro, but it's never been working
> >reliably enough to gain sufficient momentum.
> >
> >In a perfect world, I'd have a VCS repository containing branches for
> >all Ubuntu series and pockets, for the various Debian releases and for
> >the upstream code, making any rebase/cherry-pick trivial and having LP
> >trigger builds on either a special signed commit or a signed tag.
> >
> >Also in that perfect world, the inner workings of our upload process
> >would be tied to that, so that it wouldn't be possible for the branch to
> >be out of sync with the archive. This could be achieved by either making
> >this the only way to upload or making the "legacy" upload path, commit
> >to the branch and export from there prior to processing.
> I'll agree with you there. I'd love to live in this world. :)
> -Barry

Stéphane Graber
Ubuntu developer