On 08/03/11 02:45, Bryce Harrington wrote:
<SNIP>
719324: ubuntu-geoip - GET should be uppercase
         Already approved, uploaded and pushed to bzr trunk

<SNIP>

I starting reviewing this one the other day and left it as a "Comment" rather than "Needs Fixing". The proposed branch (now merged) edits the upstream code directly, but the package is of format 3.0 (quilt). I admit I should have set a more appropriate review type. Additionally, I commented that perhaps it should be contributed directly upstream (particularly as it's a package native to Ubuntu), and has a Ubuntu derived Vcs-* field defined in debian/control.

This means that the changes have been generated into an automagic patch in debian/patches/debian-changes-0.0.2-0ubuntu5. Now we have a situation where what is in the archive [0], doesn't match what is in the UDD branch [1].

Last week, I had a similar situation where I dput'd and pushed to the UDD bzr at the same time, and someone else uploaded the same version bump around 10 minutes before me; causing mine to be rejected and theirs was now already accepted.

I was worried about this, so James Westby kindly explained that a branch mismatch between the archive and UDD should mean that the package-importer uncommits, land the version from the archive and raises a merge proposal for the delta (nice!), however there seems to be a bug at the moment. Although, neither the Maintainer, Last Uploader or Signer (sponsor) is made aware of it automagically.

Now, this is a tricky situation because we have three differing branches. Those that normally upload this package are no doubt expecting their Vcs-* branch to have trumps, so will continue committing there. If they attempt to upload 0.0.2-0ubuntu4_0.0.2-0ubuntu5, they'll become aware that there is a difference by their package being rejected. However, if they were to upload a new upstream version, the resolution that this bug was trying to address will be lost.

When I was reviewing this branch, I did try and reconcile the UDD ancestor based merge proposal and the ~ubuntu-desktop one, but lack of common ancestor and attempting to declare a base rev seemed to fail.... and for the small size of the patch, i gave up and suggested the merge proposal author rebase against the Vcs-* branch. I was tempted to do this myself setting the --author tag appropriately, but there is a fine line between trying to be helpful (do the right thing), and doing too much. Equally, I didn't feel comfortable committing to another teams branch, as I have commit access to lp:~ubuntu-desktop/* through inheritance of teams, rather than direct membership... which would mean raising a new merge proposal... which takes the original author out of the loop.

Another issue i'd like to raise that is related is UDD mismatches, there is an example here - not a major one, but another minimal example is [2]. A merge proposal author has gone to the effort of submitting code based on a UDD branch, which is the wrong version as the package-import failed; this means that somebody needs to reconcile the versions... without a current UDD branch, this is near impossible - which means reverting back to traditional development by creating a bzr based debdiff to apply to the the flat source... meaning that UDD has not won this situation.

I think what I am trying to raise, is some work flow process...

* With traditional development, we get a warning if we apt-get source and a Vcs-* field is set, with UDD we do not. * If the UDD branches have diverged or are out of date, the contributor has no way on knowing without checking manually, via rmadison, launchpad, etc. A contributor shouldn't have to do this manually, as its' easily missed and very frustrating. * Additionally, I when merge+commit someone elses branch - I feel really rude making the bzr history look like it was my work.. Whilst I agree I would be the "merge author" (as in the person that decided to do it), I am not the person that did most of the work. It seems only appropriate to set the --author tag appropriately and therefore bzr marking myself as the committer for traceability. I wish debcommit had native support for this, but instead of fixing this properly i've been lazy and written a crappy script[3] to automate this, which i call debcommit-sponsor (not really related to debcommit!)... bzr being awesome, pulls in the changelog difference in $EDITOR.

[0] http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/natty/ubuntu-geoip/natty/revision/6 [1] http://launchpadlibrarian.net/65830157/ubuntu-geoip_0.0.2-0ubuntu4_0.0.2-0ubuntu5.diff.gz [2] https://code.launchpad.net/~jamesodhunt/ubuntu/natty/vim/add-upstart-syntax/+merge/52440
[3] http://pb.daviey.com/MWe4/

Kind Regards,
Dave Walker

--
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel

Reply via email to