Re: Feedback on merging via bzr

2010-01-31 Thread James Westby
On Thu, 28 Jan 2010 09:38:20 -0500 (EST), Scott Kitterman 
ubu...@kitterman.com wrote:
 Then maybe the description of what is happening just needs to be improved
 because as I said in the bug, it sure appears to be looking upstream and
 getting the tarball from there before it checks Debian.  I understand the
 theory, it isn't clear to me that's what's happening.

Both of you are correct.

pristine-tar is supposed to make the problems go away, but it isn't
perfect. When it doesn't work bzr-builddeb will try some other methods
to grab the tarball, but I didn't think to try Debian explicitly (if you
have deb-src lines for debian in your sources.list it should work). I
intend to add this feature when I get a little time, or I would happily
help someone else add it.

Thanks,

James

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


Re: Feedback on merging via bzr

2010-01-29 Thread Reinhard Tartler
On Do, Jan 28, 2010 at 11:55:07 (CET), Dmitrijs Ledkovs wrote:

 On 28 January 2010 10:09, Reinhard Tartler siret...@ubuntu.com wrote:
 On Do, Jan 28, 2010 at 11:01:37 (CET), Dmitrijs Ledkovs wrote:


 it would be great if grab-merge could additionally
  - check the freshness of the import branches
  - download the orig.tar.gz/orig.tar.bz2 files from debian


 The branches are pristine-tar enabled you can just
 $ bzr bd them and a tarball will appear in your tarball's directory.

 I expected that as well, but it didn't work with the xine-lib package.


 I think it's a bug. Was it you who added .bzr-builddeb folder with
 Native config?

That's interesting: obviously the debian import is faulty: in the source
pacakge published at
http://ftp.debian.org/debian/pool/main/x/xine-lib/xine-lib_1.1.17-1.dsc,
there is no .bzr-builddeb/default.conf, but in lp:debian/xine-lib is.

I remember that I did play around with bzr on the xine-lib package, but
I abandoned this idea. For this reason it was removed from debian.

This indeed looks like a bug.

 That's documented already in the Distributed Development wiki. See
 tips section [1]

 which requires developers to open up yet another tool. Having the
 documentation at hand improves the workflow espc. when the wiki is down
 or you don't have a decently fast internet connection.


 Fair enough =) then it should probably live in the bzr builddeb plugin
 as one of the help topics.
 Cause you need it to work UDD style with packages anyway ;-)

indeed

-- 
Gruesse/greetings,
Reinhard Tartler, KeyID 945348A4

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


Re: Feedback on merging via bzr

2010-01-29 Thread Reinhard Tartler
On Do, Jan 28, 2010 at 11:01:37 (CET), Dmitrijs Ledkovs wrote:


 it would be great if grab-merge could additionally
  - check the freshness of the import branches
  - download the orig.tar.gz/orig.tar.bz2 files from debian


 The branches are pristine-tar enabled you can just
 $ bzr bd them and a tarball will appear in your tarball's directory.

I expected that as well, but it didn't work with the xine-lib package.

 Perhaps bzr help grab-merge should give recipes for the common diffs
 that we want instead of actually generating them?

 Yes, that would espc. help people less familiar with bzr.


 That's documented already in the Distributed Development wiki. See
 tips section [1]

which requires developers to open up yet another tool. Having the
documentation at hand improves the workflow espc. when the wiki is down
or you don't have a decently fast internet connection.

 I did a similar script which just creates a bunch of shared repos and
 pulls debian  ubuntu branches [2] It doesn't attempt to merge it's
 just there to grab a few merges in one go.

Sounds interesting, I'll have a look.

 To be fair the UDD wiki needs some love from people who used bzr for
 development.

indeed.

-- 
Gruesse/greetings,
Reinhard Tartler, KeyID 945348A4

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


Re: Feedback on merging via bzr

2010-01-28 Thread Dmitrijs Ledkovs
On 28 January 2010 06:14, Reinhard Tartler siret...@ubuntu.com wrote:
 On Do, Jan 28, 2010 at 00:06:52 (CET), Andrew SB wrote:

 On Sun, Jan 24, 2010 at 9:21 PM, James Westby jw+deb...@jameswestby.net 
 wrote:
 I would love to have something more akin to grab-merge, and again I
 would be happy to help someone work on this. I would suggest it get
 added to bzr-builddeb as that will make some things easier.

 Here's a quick attempt:

 https://code.edge.launchpad.net/~andrewsomething/bzr-builddeb/bzr-grab-merge

 Purpose: Grab packaging branchs for merging.
 Usage:   bzr grab-merge PACKAGE

 Description:
   This initiates a shared repository and then grabs both
   lp:ubuntu/package and lp:debian/package. Next, these
   branches are merged in ./package/working_tree.

 Mostly I'm hoping that the ugliness of my code (I'm really just a
 packaging monkey) will scare someone who knows better into stepping
 up. =)

 I didn't implement any changelog handling as that seems to be
 in-progress elsewhere.

 I suppose the real question here is exactly what features we want this
 to have. Do we want to generate diffs like the current grab-merge? Do
 we feel the need to write a REPORT-like file locally?

 I think a 'bzr st -rbranch:../debian' and 'bzr st -rbranch:../ubuntu'
 would be indeed interesting to have in REPORT.

 it would be great if grab-merge could additionally
  - check the freshness of the import branches
  - download the orig.tar.gz/orig.tar.bz2 files from debian


The branches are pristine-tar enabled you can just
$ bzr bd them and a tarball will appear in your tarball's directory.

 Perhaps bzr help grab-merge should give recipes for the common diffs
 that we want instead of actually generating them?

 Yes, that would espc. help people less familiar with bzr.


That's documented already in the Distributed Development wiki. See
tips section [1]

I did a similar script which just creates a bunch of shared repos and
pulls debian  ubuntu branches [2] It doesn't attempt to merge it's
just there to grab a few merges in one go.


To be fair the UDD wiki needs some love from people who used bzr for
development.

[1] https://wiki.ubuntu.com/DistributedDevelopment/Documentation/Merging
[2] http://people.ubuntuwire.org/~lucas/grab-branches.sh


-- 
With best regards


Dmitrijs Ledkovs (for short Dima),
Ледков Дмитрий Юрьевич

()  ascii ribbon campaign - against html e-mail
/\  www.asciiribbon.org   - against proprietary attachments

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


Re: Feedback on merging via bzr

2010-01-28 Thread Dmitrijs Ledkovs
On 28 January 2010 10:09, Reinhard Tartler siret...@ubuntu.com wrote:
 On Do, Jan 28, 2010 at 11:01:37 (CET), Dmitrijs Ledkovs wrote:


 it would be great if grab-merge could additionally
  - check the freshness of the import branches
  - download the orig.tar.gz/orig.tar.bz2 files from debian


 The branches are pristine-tar enabled you can just
 $ bzr bd them and a tarball will appear in your tarball's directory.

 I expected that as well, but it didn't work with the xine-lib package.


I think it's a bug. Was it you who added .bzr-builddeb folder with
Native config?

IMHO that shouldn't be in there. And for example revision 36 of the
lp:ubuntu/xine-lib reconstructs original tarball just fine and builds
fine.

You can try $bzr bd -r36 lp:ubuntu/xine-lib

At some point branch got the .bzr-builddeb folder with native package
option. Since then the orig-tarballs where not imported using
pristine-tar.

Investigate further and file a bug against bzr-builddeb or udd
porojects on launchpad.

 Perhaps bzr help grab-merge should give recipes for the common diffs
 that we want instead of actually generating them?

 Yes, that would espc. help people less familiar with bzr.


 That's documented already in the Distributed Development wiki. See
 tips section [1]

 which requires developers to open up yet another tool. Having the
 documentation at hand improves the workflow espc. when the wiki is down
 or you don't have a decently fast internet connection.


Fair enough =) then it should probably live in the bzr builddeb plugin
as one of the help topics.
Cause you need it to work UDD style with packages anyway ;-)

 I did a similar script which just creates a bunch of shared repos and
 pulls debian  ubuntu branches [2] It doesn't attempt to merge it's
 just there to grab a few merges in one go.

 Sounds interesting, I'll have a look.

 To be fair the UDD wiki needs some love from people who used bzr for
 development.

 indeed.




-- 
With best regards


Dmitrijs Ledkovs (for short Dima),
Ледков Дмитрий Юрьевич

()  ascii ribbon campaign - against html e-mail
/\  www.asciiribbon.org   - against proprietary attachments

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


Re: Feedback on merging via bzr

2010-01-28 Thread Scott Kitterman
 On 28 January 2010 06:14, Reinhard Tartler siret...@ubuntu.com wrote:
...
 Â - download the orig.tar.gz/orig.tar.bz2 files from debian


 The branches are pristine-tar enabled you can just
 $ bzr bd them and a tarball will appear in your tarball's directory.

Right, but which tarball?  It's not always obvious.  It's important that
we md5sum match Debian [1].  In cases where we don't we end up having to
do fake syncs once the differences between Debian and Ubuntu are resolved.

Scott K

[1] https://bugs.launchpad.net/ubuntu/+source/bzr-builddeb/+bug/510312

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


Re: Feedback on merging via bzr

2010-01-28 Thread Dmitrijs Ledkovs
On 28 January 2010 12:04, Scott Kitterman ubu...@kitterman.com wrote:
 On 28 January 2010 06:14, Reinhard Tartler siret...@ubuntu.com wrote:
 ...
 Â - download the orig.tar.gz/orig.tar.bz2 files from debian


 The branches are pristine-tar enabled you can just
 $ bzr bd them and a tarball will appear in your tarball's directory.

 Right, but which tarball?  It's not always obvious.  It's important that
 we md5sum match Debian [1].  In cases where we don't we end up having to
 do fake syncs once the differences between Debian and Ubuntu are resolved.


Well just pick your favorite package branch and inspect it with $bzr
visualise or the kde equivalent. The import is quite good.

Original tarballs are taken from debian and are imported using
pristine-tar into the upstream branch nick. Then the debian
packaging is done on the debian branch nick which has upstream as
ancestor and then the ubuntu is another branch nick which is diverging
from the debian one again.

So from the resulting lp:ubuntu/package you can branch off any
upstream release, debian or ubuntu package release. And each revision
has the corresponding pristine-tarball delta, such that all tarballs
can be regenerated with identical checksums as in the debian archive.

So the branch import has been engineered really well in this respect
and we should not have fake syncs anymore.

This even scales to when the branches will get rebased ontop of the
upstream releases, cause the pristine-tarball delta will be committed
into a new branch nick based off upstream branch adding all the
Makefile.in's and etc with the tarball delta.

Can't remember either Karmic or Jaunty UDS had a video on this UDD
master plan with all the explanations.


-- 
With best regards


Dmitrijs Ledkovs (for short Dima),
Ледков Дмитрий Юрьевич

()  ascii ribbon campaign - against html e-mail
/\  www.asciiribbon.org   - against proprietary attachments

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


Re: Feedback on merging via bzr

2010-01-28 Thread Scott Kitterman
 On 28 January 2010 12:04, Scott Kitterman ubu...@kitterman.com wrote:
 On 28 January 2010 06:14, Reinhard Tartler siret...@ubuntu.com wrote:
 ...
 Â - download the orig.tar.gz/orig.tar.bz2 files from debian


 The branches are pristine-tar enabled you can just
 $ bzr bd them and a tarball will appear in your tarball's directory.

 Right, but which tarball? Â It's not always obvious. Â It's important
 that
 we md5sum match Debian [1]. Â In cases where we don't we end up having
 to
 do fake syncs once the differences between Debian and Ubuntu are
 resolved.


 Well just pick your favorite package branch and inspect it with $bzr
 visualise or the kde equivalent. The import is quite good.

 Original tarballs are taken from debian and are imported using
 pristine-tar into the upstream branch nick. Then the debian
 packaging is done on the debian branch nick which has upstream as
 ancestor and then the ubuntu is another branch nick which is diverging
 from the debian one again.

 So from the resulting lp:ubuntu/package you can branch off any
 upstream release, debian or ubuntu package release. And each revision
 has the corresponding pristine-tarball delta, such that all tarballs
 can be regenerated with identical checksums as in the debian archive.

 So the branch import has been engineered really well in this respect
 and we should not have fake syncs anymore.

 This even scales to when the branches will get rebased ontop of the
 upstream releases, cause the pristine-tarball delta will be committed
 into a new branch nick based off upstream branch adding all the
 Makefile.in's and etc with the tarball delta.

 Can't remember either Karmic or Jaunty UDS had a video on this UDD
 master plan with all the explanations.

Then maybe the description of what is happening just needs to be improved
because as I said in the bug, it sure appears to be looking upstream and
getting the tarball from there before it checks Debian.  I understand the
theory, it isn't clear to me that's what's happening.

Scott K

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


Re: Feedback on merging via bzr

2010-01-27 Thread John Arbash Meinel
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1


...
 Then uses Bryce's merge_changelog script and 'dch -i -m' to handle the
 repetitive changelog stuff.
 
 Ideally, the script would also produce something along the lines of
 MoM's REPORT, listing the conflicts and giving instructions on how to
 proceed.

I'm looking into working on this bug:
https://bugs.edge.launchpad.net/bzr/+bug/160521

Which describes adding a changelog-specific per-file merge for
bzr-builddeb. (if you have the plugin, and do 'bzr merge' that contains
a merge of a file that looks like 'changelog', then the custom merge
algorithm gets invoked for that file.)

I'm wondering if you have a link towards where this Bryce's
merge_changelog script might exist and how I might get ahold of it as a
reference.

John
=:-

-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.9 (Cygwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAktgHL4ACgkQJdeBCYSNAAM6TgCfXRhg6fJmHMyBFhrqf4+jWipf
oeQAoLkNvtEzrtFkMGSW2UpB4XigbMmh
=UTKn
-END PGP SIGNATURE-

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


Re: Feedback on merging via bzr

2010-01-27 Thread Michael Bienia
On 2010-01-27 05:00:15 -0600, John Arbash Meinel wrote:
 I'm looking into working on this bug:
 https://bugs.edge.launchpad.net/bzr/+bug/160521
 
 Which describes adding a changelog-specific per-file merge for
 bzr-builddeb. (if you have the plugin, and do 'bzr merge' that contains
 a merge of a file that looks like 'changelog', then the custom merge
 algorithm gets invoked for that file.)
 
 I'm wondering if you have a link towards where this Bryce's
 merge_changelog script might exist and how I might get ahold of it as a
 reference.

https://lists.ubuntu.com/archives/ubuntu-distributed-devel/attachments/20100114/6936c7d4/attachment.obj
(it was attached to an other mail on this list:
https://lists.ubuntu.com/archives/ubuntu-distributed-devel/2010-January/000357.html)

As this script does its own version comparison and changelog parsing,
you might also want to look at the python-debian package which has a
python module for handling changelogs (parsing) and also a python module
for Debian version strings.

Michael

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


Re: Feedback on merging via bzr

2010-01-27 Thread Andrew SB
On Sun, Jan 24, 2010 at 9:22 PM, James Westby jw+deb...@jameswestby.net wrote:
 On Sun, 17 Jan 2010 23:35:05 -0500, Andrew SB a.star...@gmail.com wrote:
 Ideally, the script would also produce something along the lines of
 MoM's REPORT, listing the conflicts and giving instructions on how to
 proceed.

 I'm working on something to do this centrally to replace
 merges.ubuntu.com, but it's not ready for use yet.

 I'm not sure writing a file when used locally would be all that useful
 would it?

Maybe not... My thought was that it could help ease the transition for
folks not yet familiar with using bzr for packaging by providing some
instruction locally without having to go searching through the wiki.
Of course this can be done in the command's output as well.

Any one else have an opinion?

-- Andrew SB

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


Re: Feedback on merging via bzr

2010-01-27 Thread Andrew SB
On Sun, Jan 24, 2010 at 9:21 PM, James Westby jw+deb...@jameswestby.net wrote:
 I would love to have something more akin to grab-merge, and again I
 would be happy to help someone work on this. I would suggest it get
 added to bzr-builddeb as that will make some things easier.

Here's a quick attempt:

https://code.edge.launchpad.net/~andrewsomething/bzr-builddeb/bzr-grab-merge

Purpose: Grab packaging branchs for merging.
Usage:   bzr grab-merge PACKAGE

Description:
  This initiates a shared repository and then grabs both
  lp:ubuntu/package and lp:debian/package. Next, these
  branches are merged in ./package/working_tree.

Mostly I'm hoping that the ugliness of my code (I'm really just a
packaging monkey) will scare someone who knows better into stepping
up. =)

I didn't implement any changelog handling as that seems to be
in-progress elsewhere.

I suppose the real question here is exactly what features we want this
to have. Do we want to generate diffs like the current grab-merge? Do
we feel the need to write a REPORT-like file locally? Perhaps bzr
help grab-merge should give recipes for the common diffs that we want
instead of actually generating them?

-- Andrew SB

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


Re: Feedback on merging via bzr

2010-01-27 Thread Reinhard Tartler
On Do, Jan 28, 2010 at 00:06:52 (CET), Andrew SB wrote:

 On Sun, Jan 24, 2010 at 9:21 PM, James Westby jw+deb...@jameswestby.net 
 wrote:
 I would love to have something more akin to grab-merge, and again I
 would be happy to help someone work on this. I would suggest it get
 added to bzr-builddeb as that will make some things easier.

 Here's a quick attempt:

 https://code.edge.launchpad.net/~andrewsomething/bzr-builddeb/bzr-grab-merge

 Purpose: Grab packaging branchs for merging.
 Usage:   bzr grab-merge PACKAGE

 Description:
   This initiates a shared repository and then grabs both
   lp:ubuntu/package and lp:debian/package. Next, these
   branches are merged in ./package/working_tree.

 Mostly I'm hoping that the ugliness of my code (I'm really just a
 packaging monkey) will scare someone who knows better into stepping
 up. =)

 I didn't implement any changelog handling as that seems to be
 in-progress elsewhere.

 I suppose the real question here is exactly what features we want this
 to have. Do we want to generate diffs like the current grab-merge? Do
 we feel the need to write a REPORT-like file locally?

I think a 'bzr st -rbranch:../debian' and 'bzr st -rbranch:../ubuntu'
would be indeed interesting to have in REPORT.

it would be great if grab-merge could additionally
 - check the freshness of the import branches
 - download the orig.tar.gz/orig.tar.bz2 files from debian

 Perhaps bzr help grab-merge should give recipes for the common diffs
 that we want instead of actually generating them?

Yes, that would espc. help people less familiar with bzr.


-- 
Gruesse/greetings,
Reinhard Tartler, KeyID 945348A4


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


Re: Feedback on merging via bzr

2010-01-24 Thread James Westby
On Mon, 18 Jan 2010 15:33:30 -0500, Barry Warsaw ba...@canonical.com wrote:
 Unfortunately, the diff that's automatically generated on the merge proposal
 isn't what Scott wants for the review.  As shown above, he really wants the
 diffs between the branch and current Ubuntu, and branch and current Debian.
 Perhaps merge proposals for distro packages need a different kind of automatic
 diff?

It could do that, but we would only want it for merge proposals for
merges from Debian, and that's tricky to detect, and there is currently
no facility to select they type of proposal.

In addition, you often want to look at any of a few different types of
diffs. To that end I filed a bug against launchpad-code the other day
requesting attachments on merge-proposals, which will allow us to attach
the extra diffs so the reviewer doesn't have to generate them.

We can then provide a wrapper command that proposes the merge and
attaches the diffs.

If you like this idea then I suggest you go subscribe to the bug report
and comment with any further suggestions you have for how the feature
should work.

Thanks,

James

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


Re: Feedback on merging via bzr

2010-01-24 Thread James Westby
On Sun, 17 Jan 2010 23:35:05 -0500, Andrew SB a.star...@gmail.com wrote:
 Ideally, the script would also produce something along the lines of
 MoM's REPORT, listing the conflicts and giving instructions on how to
 proceed.

I'm working on something to do this centrally to replace
merges.ubuntu.com, but it's not ready for use yet.

I'm not sure writing a file when used locally would be all that useful
would it?

Thanks,

James

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


Re: Feedback on merging via bzr

2010-01-24 Thread James Westby
On Mon, 18 Jan 2010 14:26:48 -0500, Barry Warsaw ba...@canonical.com wrote:
 I think it would make sense to submit bug reports to help streamline things,
 but I'm not sure where those bug reports would go.  On the bzr-builddeb plugin
 on Launchpad?

Yes, I appreciate everyone's feedback here. I would love to get more
feedback in terms of bug reports. Even if you aren't sure that it is a
bug as such, if you think something is too complicated then it shows
that we probably need to make some changes, and I'm happy to work with
you in a bug report to work out what would solve the problem. Plus, bug
reports stick around as reminders of what needs to be fixed.

bzr-builddeb is a fine place to report them, if you know somewhere more
specific then you can do that, but I am happy to reassign if needed.

Thanks,

James

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


Re: Feedback on merging via bzr

2010-01-24 Thread James Westby
On Wed, 20 Jan 2010 09:36:38 +, Dmitrijs Ledkovs dmitrij.led...@gmail.com 
wrote:
 Hmmm = I *think* lp can do this already
 
 In the merge proposals options set lp:debian/sid/package as pre-requisite.
 
 Then the diff will be the one sponsors require!

Wow, that's a cunning idea.

I'm not sure it's the right thing to do as it's abusing that field
somewhat, and also means it is not free for its intended use should the
need arise.

Thanks,

James

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


Re: Feedback on merging via bzr

2010-01-24 Thread James Westby
On 18 Jan 2010 12:07:41 +0100, Michael Bienia mich...@bienia.de wrote:
 On 2010-01-17 22:45:53 -0500, Scott Kitterman wrote:
 
 Currently I often insert a step 0 before starting on merging with bzr:
 - Check if the Debian branch is uptodate.
 
 Perhaps I got unlucky when picking a package to merge but several of the
 packages I wanted to merge had outdated Debian branches so I had to do
 it by hand (download the Debian .dsc and the Ubuntu delta from PTS and
 merge it).

Yes, this has been a problem due to operational issues. I hope that it
will be far less frequent in future. I'm sorry you got hit repeatedly.

 I usually do a bzr init-repo before and branch both the Ubuntu and
 Debian branch and use the local Debian branch for merging and diffing.
 
 It would be really nice if bzr warned one if the format of local branch
 and the remote repository differ *before* I start working on something.

Please file a bug against bzr.

Thanks,

James

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


Re: Feedback on merging via bzr

2010-01-24 Thread James Westby
On Mon, 18 Jan 2010 06:56:13 -0600, charlie cj...@cableone.net wrote:
 On Mon, 2010-01-18 at 12:07 +0100, Michael Bienia wrote:
  On 2010-01-17 22:45:53 -0500, Scott Kitterman wrote:
  
  Currently I often insert a step 0 before starting on merging with bzr:
  - Check if the Debian branch is uptodate.
  
 This has bitten me a few times.  When you go to a packages launchpad
 page under branches, it would be nice if there were links to the ubuntu
 and debian branches.  This way one could quickly determine if the debian
 branch has been updated.

Please file a bug against launchpad-code requesting this.

Thanks,

James

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


Re: Feedback on merging via bzr

2010-01-24 Thread James Westby
On Sun, 17 Jan 2010 22:45:53 -0500, Scott Kitterman ubu...@kitterman.com 
wrote:
 I spent some time over the holidays giving merging via bzr and the UDD tools. 
  
 I understand that development of the tools to support this is still a work in 
 progress and the much of this feedback probably represents work that you 
 already know needs doing.  This mail is based on notes I took recently while 
 doing a merge of regina-normal.  As merges go, it was not a complex one.

Hi Scott,

Thanks for taking the time to try Bazaar and writing up this detailed
feedback, it is very valuable.

 I'm writing this from the perspective of someone who is reasonably familiar 
 with merging using merge-o-matic (~3 years of experience), but relatively 
 knew 
 to bzr.  I would have been dead almost immediately if not for the w.u.c 
 documentation [1].

I'm glad there was at least documentation to help you through it.

 Step 1: Getting the source:
 
 Using MoM, I would have grab-merge.sh regina-normal and then had local copies 
 of the common ancestor package, the current Debian package, the current 
 Ubuntu 
 package, and a proposed merge with any conflicting files listed.
 
 The UDD equivalent seems to be:
 
 $bzr branch lp:ubuntu/regina-normal regina-normal
 $password for ssh key
 $cd regina-normal
 $bzr merge-package lp:debian/squeeze/regina-normal
 
 Text conflict in debian/changelog
 1 conflicts encountered.
 The merge resulted in 1 conflicts. Please resolve these and commit the 
 changes 
 with bzr commit.
 
 This gives me the proposed merge.  The conflict in this case seems to occur 
 with every merge I try.  The most recent Debian and Ubuntu debian/changelog 
 entries conflict with each other and the file has to be edited to move the 
 most 
 recent Debian entry above the most recent Ubuntu entry.  Additionally, MoM 
 would create a stub changelog entry for the new merged package which was 
 quite 
 convenient.  None of this additional work is difficult, but it is tedious and 
 seems ripe for automation.

Indeed it is. I'm more than happy to help someone implement these
things, they won't be particularly hard, I just have more pressing
issues before I get to them. At least the changelog stuff will be
resolved before we release Lucid either way.

I would love to have something more akin to grab-merge, and again I
would be happy to help someone work on this. I would suggest it get
added to bzr-builddeb as that will make some things easier.

 Step 3 checking the package:
 
 At this point I want to check the package against the previous Debian and 
 Ubuntu packages to make sure I have it correct.  Traditionally, I would 
 locally debdiff the proposed merge with both the previous Debian and Ubuntu 
 packages to make sure I had documented all of the Ubuntu diff and not lost 
 any 
 needed changes in the merge.  To do it the new way, I did:
 
 $bzr diff --old lp:debian/squeeze/regina-normal | less
 ssh key
 (repeat, including redownloading each time the diff is done)
 
 I assume bzr diff --old lp:ubuntu/regina-normal would have worked for the 
 diff 
 from the previous Ubuntu package, but it isn't documented and I didn't think 
 to try it at the time.

Indeed it would have.

 Then commit the result:
 
 $ bzr ci -m * Update debian/changelog to include undocumented differences 
 from 
 Debian
  * Remove extraneous whitespace changes
 Committing to: ~/devel/boost/merge/regina-normal/
 modified debian/changelog
 modified python/testsuite/trigeneral.test
 Committed revision 20.
 
 This method of diffing works fine, except that the previous branch has to be 
 re-
 downloaded each time the diff is done.  In this case I was trying to remove 
 extraneous white space changes that had crept into the packages so it took 
 several tries to get them all.  For larger packages or people with a slow 
 internet connection, the need to re-download the diff will have a substantial 
 negative impact.  Additionally, I miss a way to diff just the debian 
 directories.  For new upstream releases (which this wasn't, so I didn't hit 
 it) I find this a critical way to review the packaging differences between 
 the 
 old and new packages.

How did you diff just ./debian/ before if not for filterdiff? Why can't
you do that now?

 Step 4: Building the package:
 
 In the old method, I would debuild -S (-sa if needed) -v and have a package 
 ready for uploading. 
 
 bzr builddeb -S -- -v4.6-1ubuntu1
 
 Now this one looks easy, but has the hidden trap of bzr builddeb providing 
 only -S from dpkg-buildpackage and requiring an extra flag to pass other 
 options to dpkg-buildpackage (--).  I think this needs a rethink [2].  

Indeed it does. It was never intended to be a lasting solution, but it
was a stop-gap from the

  bzr builddeb -S --builder debuild -S -v4.6-1ubuntu1

that it was before. I knew it was non-obvious, but at least it was
there.

Again, I will happily help someone who wants to fix this, it should be
fairly straightforward.

 Step 6: Uploading 

Re: Feedback on merging via bzr

2010-01-24 Thread Dmitrijs Ledkovs
2010/1/25 James Westby jw+deb...@jameswestby.net:
 bzr-builddeb is a fine place to report them, if you know somewhere more
 specific then you can do that, but I am happy to reassign if needed.


I guess launchpad.net/udd is not nice place for bugreports? Swamped
with what it seems like automatic bug reports



-- 
With best regards


Dmitrijs Ledkovs (for short Dima),
Ледков Дмитрий Юрьевич

()  ascii ribbon campaign - against html e-mail
/\  www.asciiribbon.org   - against proprietary attachments

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


Re: Feedback on merging via bzr

2010-01-24 Thread James Westby
On Mon, 25 Jan 2010 03:35:40 +, Dmitrijs Ledkovs dmitrij.led...@gmail.com 
wrote:
 2010/1/25 James Westby jw+deb...@jameswestby.net:
  bzr-builddeb is a fine place to report them, if you know somewhere more
  specific then you can do that, but I am happy to reassign if needed.
 
 
 I guess launchpad.net/udd is not nice place for bugreports? Swamped
 with what it seems like automatic bug reports

It works, and I plan to clear out the automatic reports soon.

Thanks,

James

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


Re: Feedback on merging via bzr

2010-01-20 Thread Dmitrijs Ledkovs
2010/1/19 Michael Hudson michael.hud...@canonical.com:
 Barry Warsaw wrote:
 On Jan 17, 2010, at 10:45 PM, Scott Kitterman wrote:

 At this point I want to check the package against the previous Debian and
 Ubuntu packages to make sure I have it correct.  Traditionally, I would
 locally debdiff the proposed merge with both the previous Debian and Ubuntu
 packages to make sure I had documented all of the Ubuntu diff and not lost
 any needed changes in the merge.  To do it the new way, I did:

 $bzr diff --old lp:debian/squeeze/regina-normal | less
 ssh key
 (repeat, including redownloading each time the diff is done)

 I assume bzr diff --old lp:ubuntu/regina-normal would have worked for the 
 diff
from the previous Ubuntu package, but it isn't documented and I didn't think
 to try it at the time.

 I just asked Scott to review a change to Lucid's distribute package
 (python-distribute).  I merged debian/sid's version into the ubuntu/lucid
 version to get us to 0.6.10.  Then I committed and pushed a branch to
 lp:~barry/ubuntu/lucid/distribute/sync-to-sid

 Unfortunately, the diff that's automatically generated on the merge proposal
 isn't what Scott wants for the review.  As shown above, he really wants the
 diffs between the branch and current Ubuntu, and branch and current Debian.
 Perhaps merge proposals for distro packages need a different kind of 
 automatic
 diff?

 This can probably be arranged, I guess.  File a bug.  Patches likely
 welcome :-)

 Cheers,
 mwh


Hmmm = I *think* lp can do this already

In the merge proposals options set lp:debian/sid/package as pre-requisite.

Then the diff will be the one sponsors require!

I'm so excited about this. Gonna test this and then comment on the bug.

This will then need documentation as part of UDD-docs.



-- 
With best regards


Dmitrijs Ledkovs (for short Dima),
Ледков Дмитрий Юрьевич

()  ascii ribbon campaign - against html e-mail
/\  www.asciiribbon.org   - against proprietary attachments

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


Re: Feedback on merging via bzr

2010-01-19 Thread Michael Hudson
Barry Warsaw wrote:
 On Jan 17, 2010, at 10:45 PM, Scott Kitterman wrote:
 
 At this point I want to check the package against the previous Debian and
 Ubuntu packages to make sure I have it correct.  Traditionally, I would
 locally debdiff the proposed merge with both the previous Debian and Ubuntu
 packages to make sure I had documented all of the Ubuntu diff and not lost
 any needed changes in the merge.  To do it the new way, I did:

 $bzr diff --old lp:debian/squeeze/regina-normal | less
 ssh key
 (repeat, including redownloading each time the diff is done)

 I assume bzr diff --old lp:ubuntu/regina-normal would have worked for the 
 diff 
from the previous Ubuntu package, but it isn't documented and I didn't think 
 to try it at the time.
 
 I just asked Scott to review a change to Lucid's distribute package
 (python-distribute).  I merged debian/sid's version into the ubuntu/lucid
 version to get us to 0.6.10.  Then I committed and pushed a branch to
 lp:~barry/ubuntu/lucid/distribute/sync-to-sid
 
 Unfortunately, the diff that's automatically generated on the merge proposal
 isn't what Scott wants for the review.  As shown above, he really wants the
 diffs between the branch and current Ubuntu, and branch and current Debian.
 Perhaps merge proposals for distro packages need a different kind of automatic
 diff?

This can probably be arranged, I guess.  File a bug.  Patches likely
welcome :-)

Cheers,
mwh

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


Re: Feedback on merging via bzr

2010-01-19 Thread Barry Warsaw
On Jan 20, 2010, at 11:10 AM, Michael Hudson wrote:

This can probably be arranged, I guess.  File a bug.  Patches likely
welcome :-)

For now: https://bugs.edge.launchpad.net/launchpad-code/+bug/509901

-Barry


signature.asc
Description: PGP signature
-- 
ubuntu-distributed-devel mailing list
ubuntu-distributed-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-distributed-devel


Re: Feedback on merging via bzr

2010-01-18 Thread Michael Bienia
On 2010-01-18 16:18:44 +1100, Andrew Bennetts wrote:
 That's right.  If you're interested, bug 491711
 https://bugs.launchpad.net/bzr/+bug/491711 is tracking progress on this,
 and there's a branch at adds the hook point going through code review at the
 moment.  Perhaps there should be a bzr-builddeb bug (or bug task on 491711?)
 too?  

I've filed a bug against bzr-builddeb about this before I knew about the
ongoing work on hooks:
https://bugs.launchpad.net/bugs/501754 (Better support for merging
debian/changelog)

Michael

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


Re: Feedback on merging via bzr

2010-01-18 Thread Michael Bienia
On 2010-01-17 22:45:53 -0500, Scott Kitterman wrote:

Currently I often insert a step 0 before starting on merging with bzr:
- Check if the Debian branch is uptodate.

Perhaps I got unlucky when picking a package to merge but several of the
packages I wanted to merge had outdated Debian branches so I had to do
it by hand (download the Debian .dsc and the Ubuntu delta from PTS and
merge it).

 Step 1: Getting the source:
 
 Using MoM, I would have grab-merge.sh regina-normal and then had local copies 
 of the common ancestor package, the current Debian package, the current 
 Ubuntu 
 package, and a proposed merge with any conflicting files listed.
 
 The UDD equivalent seems to be:
 
 $bzr branch lp:ubuntu/regina-normal regina-normal
 $password for ssh key
 $cd regina-normal
 $bzr merge-package lp:debian/squeeze/regina-normal

I usually do a bzr init-repo before and branch both the Ubuntu and
Debian branch and use the local Debian branch for merging and diffing.

It would be really nice if bzr warned one if the format of local branch
and the remote repository differ *before* I start working on something.

I merged fuse the usual way (and used bzr init-repo for storing the
branches) and when I was about to push the branch towards my LP account
for sponsoring, I got told that bzr can't push it because the LP branch
uses a different format.
I branched the Ubuntu branch once again (this time without bzr
init-repo so it keeps its format) and kind of redid the merge (I copied
the changed files from the other branch into this one). This time the
pushing worked. But it cost me unnecessary time.

Michael

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


Re: Feedback on merging via bzr

2010-01-18 Thread charlie
On Mon, 2010-01-18 at 12:07 +0100, Michael Bienia wrote:
 On 2010-01-17 22:45:53 -0500, Scott Kitterman wrote:
 
 Currently I often insert a step 0 before starting on merging with bzr:
 - Check if the Debian branch is uptodate.
 
This has bitten me a few times.  When you go to a packages launchpad
page under branches, it would be nice if there were links to the ubuntu
and debian branches.  This way one could quickly determine if the debian
branch has been updated.

Best regards
Charlie 


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


Re: Feedback on merging via bzr

2010-01-18 Thread Dmitrijs Ledkovs
2010/1/18 Scott Kitterman ubu...@kitterman.com:
 I spent some time over the holidays giving merging via bzr and the UDD tools.
 I understand that development of the tools to support this is still a work in
 progress and the much of this feedback probably represents work that you
 already know needs doing.  This mail is based on notes I took recently while
 doing a merge of regina-normal.  As merges go, it was not a complex one.

 I'm writing this from the perspective of someone who is reasonably familiar
 with merging using merge-o-matic (~3 years of experience), but relatively knew
 to bzr.  I would have been dead almost immediately if not for the w.u.c
 documentation [1].

 Step 1: Getting the source:

 Using MoM, I would have grab-merge.sh regina-normal and then had local copies
 of the common ancestor package, the current Debian package, the current Ubuntu
 package, and a proposed merge with any conflicting files listed.

 The UDD equivalent seems to be:

 $bzr branch lp:ubuntu/regina-normal regina-normal
 $password for ssh key
 $cd regina-normal
 $bzr merge-package lp:debian/squeeze/regina-normal


I do

$bzr init-repo package
$cd package
$bzr branch lp:ubuntu/package lucid
$bzr branch lp:debian/package squeeze

 Text conflict in debian/changelog
 1 conflicts encountered.
 The merge resulted in 1 conflicts. Please resolve these and commit the changes
 with bzr commit.


Hopefully per-file hook will solve this


 Step 2 working on the package:


 Step 3 checking the package:

 At this point I want to check the package against the previous Debian and
 Ubuntu packages to make sure I have it correct.  Traditionally, I would
 locally debdiff the proposed merge with both the previous Debian and Ubuntu
 packages to make sure I had documented all of the Ubuntu diff and not lost any
 needed changes in the merge.  To do it the new way, I did:

 $bzr diff --old lp:debian/squeeze/regina-normal | less
 ssh key
 (repeat, including redownloading each time the diff is done)


At this point in the package/lucid branch you have all package
revisions and tags so you can do this :

$bzr diff -r tag:0.1-3ubuntu5  #debdiff against old ubuntu
$bzr diff -r tag:0.1-6 #debdiff against debian

Or any package release for that matter. see $bzr tags

Also you might want to add --prefix=old-version/:new-version/ such
that bzr diff looks like debdiff.

 I assume bzr diff --old lp:ubuntu/regina-normal would have worked for the 
 diff
 from the previous Ubuntu package, but it isn't documented and I didn't think
 to try it at the time.


Again use your local revisions. After you grab debian  ubuntu branch
disconnect your network =) It will make you think UDD way.

 Then commit the result:

 $ bzr ci -m * Update debian/changelog to include undocumented differences 
 from
 Debian
 * Remove extraneous whitespace changes
 Committing to: ~/devel/boost/merge/regina-normal/
 modified debian/changelog
 modified python/testsuite/trigeneral.test
 Committed revision 20.


Better use debcommit it takes new entries from debian/changlog and
appends --fixes lp:XX such that when you push this branch it will get
linked to bugs in lp.


 This method of diffing works fine, except that the previous branch has to be 
 re-
 downloaded each time the diff is done.  In this case I was trying to remove
 extraneous white space changes that had crept into the packages so it took
 several tries to get them all.  For larger packages or people with a slow
 internet connection, the need to re-download the diff will have a substantial
 negative impact.  Additionally, I miss a way to diff just the debian
 directories.  For new upstream releases (which this wasn't, so I didn't hit
 it) I find this a critical way to review the packaging differences between the
 old and new packages.


No see above

 Step 4: Building the package:

 In the old method, I would debuild -S (-sa if needed) -v and have a package
 ready for uploading.

 bzr builddeb -S -- -v4.6-1ubuntu1


? huh I just use
$bzr bd#regular build
$bzr bd --quick #customised to build with pbuilder (should be named slow)
$bzr bd --source   #create source package

 Now this one looks easy, but has the hidden trap of bzr builddeb providing
 only -S from dpkg-buildpackage and requiring an extra flag to pass other
 options to dpkg-buildpackage (--).  I think this needs a rethink [2].


See builddeb manual for builddeb.conf

 Step 5: Testing the package:

 This is orthogonal to UDD, so I won't cover it.

 Step 6: Uploading the package:


I don't have upload rights so I can't comment.

 $ dput ubuntu regina-normal_4.6-1.1ubuntu1_source.changes

 At this point, I'd be done under the old method (and I could have stopped here
 now and let the branch be created from the uploaded package, but I decided to
 persevere).

 $ bzr mark-uploaded

 $ bzr push lp:ubuntu/regina-normal
 ssh key ...

 Now we are done and have both an updated package in the archive and an updated
 branch on 

Re: Feedback on merging via bzr

2010-01-18 Thread Mathias Gug
On Mon, Jan 18, 2010 at 12:21 PM, Scott Kitterman ubu...@kitterman.com wrote:

 I usually use the ancestor revision shortcut for selecting the revision to
 diff:

 Ubuntu patch compared to the common base version:

 ~/src/pkg-name/lucid/ $ bzr diff -rancestor:../squeeze/

 Debian patch compared to the common base version:

 ~/src/pkg-name/squeeze/ $ bzr diff -rancestor:../lucid/

 These two commands should generate the equivalent of the .patch files from
 MoM.

 That doesn't solve the issue with the data being local versus remote, but
 it definitely looks very helpful.

As mentioned earlier in the thread, it makes sense to always work from
local branches with a local repository:

 1. Create a local repository:
~/src/$ bzr init-repo src-pkg-name
 2. Checkout latest Ubuntu version:
~/src/pkg-name/$ bzr co lp:ubuntu/pkg-name/ lucid
 3. Checkout latest Debian version:
~/src/pkg-name/$ bzr co lp:debian/pkg-name/ squeeze
 4. Create a local branch to work on the merge:
~/src/pkg-name/$ bzr branch lucid l-merge

 Would you add that to the wiki page on merging?

Done (it's a wiki page - anyone can edit it ;) ).

-- 
Mathias Gug
Ubuntu Developer  http://www.ubuntu.com

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


Re: Feedback on merging via bzr

2010-01-18 Thread Barry Warsaw
On Jan 17, 2010, at 10:45 PM, Scott Kitterman wrote:

I spent some time over the holidays giving merging via bzr and the UDD tools.
I understand that development of the tools to support this is still a work in
progress and the much of this feedback probably represents work that you
already know needs doing.  This mail is based on notes I took recently while
doing a merge of regina-normal.  As merges go, it was not a complex one.

This is good stuff Scott.  It mirrors some of my recent experience using UDD
to do various kinds of development.  Of course, my packaging experience is
weeks old, not years old :), so I don't have much comparison of the
traditional way to draw on.

The UDD equivalent seems to be:

$bzr branch lp:ubuntu/regina-normal regina-normal
$password for ssh key

ssh-agent helps here so that you only have to enter this once.

$cd regina-normal
$bzr merge-package lp:debian/squeeze/regina-normal

Text conflict in debian/changelog
1 conflicts encountered.
The merge resulted in 1 conflicts. Please resolve these and commit the changes 
with bzr commit.

This gives me the proposed merge.  The conflict in this case seems to occur
with every merge I try.  The most recent Debian and Ubuntu debian/changelog
entries conflict with each other and the file has to be edited to move the
most recent Debian entry above the most recent Ubuntu entry.

Yep, I noticed exactly the same thing.
To get ready to start to work on the actual merge, I need to also do:

$ vim debian/changelog (re-arrange as described)
$ bzr resolve
All conflicts resolved.

Emacs to the rescue here (for the crazy people who use it :).  Emacs
auto-resolves files when you save them.  It's a nice convenience that hasn't
bitten me yet :).

Step 3 checking the package:

At this point I want to check the package against the previous Debian and 
Ubuntu packages to make sure I have it correct.  Traditionally, I would 
locally debdiff the proposed merge with both the previous Debian and Ubuntu 
packages to make sure I had documented all of the Ubuntu diff and not lost any 
needed changes in the merge.  To do it the new way, I did:

$bzr diff --old lp:debian/squeeze/regina-normal | less
ssh key
(repeat, including redownloading each time the diff is done)

It would probably be better branch these locally if you're going to do a lot
of diffing.

I know a huge amount of work has gotten to getting things as far as they are.  
This feedback is not meant to miminize this accomplishment.  I do not, 
however, feel like this facility is really ready for general use yet.

I think it would make sense to submit bug reports to help streamline things,
but I'm not sure where those bug reports would go.  On the bzr-builddeb plugin
on Launchpad?

-Barry


signature.asc
Description: PGP signature
-- 
ubuntu-distributed-devel mailing list
ubuntu-distributed-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-distributed-devel


Re: Feedback on merging via bzr

2010-01-18 Thread Barry Warsaw
On Jan 17, 2010, at 10:45 PM, Scott Kitterman wrote:

I spent some time over the holidays giving merging via bzr and the UDD tools.
I understand that development of the tools to support this is still a work in
progress and the much of this feedback probably represents work that you
already know needs doing.  This mail is based on notes I took recently while
doing a merge of regina-normal.  As merges go, it was not a complex one.

Oh, also, there are some interesting steps you took that I did not notice were
documented on the wiki page.  Maybe you can take a pass through them and
update them with some of the things you learned (e.g. bzr mark-uploaded,
diffing the Ubuntu and Debian sources).

https://wiki.ubuntu.com/DistributedDevelopment/Documentation

-Barry


signature.asc
Description: PGP signature
-- 
ubuntu-distributed-devel mailing list
ubuntu-distributed-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-distributed-devel


Re: Feedback on merging via bzr

2010-01-18 Thread Scott Kitterman
 On Mon, Jan 18, 2010 at 12:21 PM, Scott Kitterman ubu...@kitterman.com
 wrote:

 I usually use the ancestor revision shortcut for selecting the revision
 to
 diff:

 Ubuntu patch compared to the common base version:

 ~/src/pkg-name/lucid/ $ bzr diff -rancestor:../squeeze/

 Debian patch compared to the common base version:

 ~/src/pkg-name/squeeze/ $ bzr diff -rancestor:../lucid/

 These two commands should generate the equivalent of the .patch files
 from
 MoM.

 That doesn't solve the issue with the data being local versus remote,
 but
 it definitely looks very helpful.

 As mentioned earlier in the thread, it makes sense to always work from
 local branches with a local repository:

  1. Create a local repository:
 ~/src/$ bzr init-repo src-pkg-name
  2. Checkout latest Ubuntu version:
 ~/src/pkg-name/$ bzr co lp:ubuntu/pkg-name/ lucid
  3. Checkout latest Debian version:
 ~/src/pkg-name/$ bzr co lp:debian/pkg-name/ squeeze
  4. Create a local branch to work on the merge:
 ~/src/pkg-name/$ bzr branch lucid l-merge

 Would you add that to the wiki page on merging?

 Done (it's a wiki page - anyone can edit it ;) ).

Certainly, but I think wiki edits should generally be done by people who
understand what they are talking about.  In this area, I don't
particularly qualify yet.

Thanks,

Scott K

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


Re: Feedback on merging via bzr

2010-01-18 Thread Reinhard Tartler
On Mo, Jan 18, 2010 at 04:45:53 (CET), Scott Kitterman wrote:

 This method of diffing works fine, except that the previous branch has
 to be re- downloaded each time the diff is done.  In this case I was
 trying to remove extraneous white space changes that had crept into
 the packages so it took several tries to get them all.  For larger
 packages or people with a slow internet connection, the need to
 re-download the diff will have a substantial negative impact.

As already mentioned, fetching both branches (the ubuntu and debian
import) into a local repository mitigates this problem. The
'grab-merge'-like wrapper that you proposed could and probably should do
exactly that.

 Additionally, I miss a way to diff just the debian directories.  For
 new upstream releases (which this wasn't, so I didn't hit it) I find
 this a critical way to review the packaging differences between the
 old and new packages.

This is possible and in fact for me a killer argument for using DVCS
tools for managing packages in the first place:

bzr diff --old lp:debian/package debian/control

for diffing only debian control, or 

bzr diff --old lp:debian/package debian

for diffing the debian subdirectory only.


-- 
Gruesse/greetings,
Reinhard Tartler, KeyID 945348A4


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


Re: Feedback on merging via bzr

2010-01-18 Thread Scott Kitterman
 forgot mailing list sorry silly gmail

So then you get to read the reply twice.  ;-)

 -- Forwarded message --
 From: Dmitrijs Ledkovs dmitrij.led...@gmail.com
 Date: 2010/1/18
 Subject: Re: Feedback on merging via bzr
 To: Scott Kitterman ubu...@kitterman.com


 2010/1/18 Scott Kitterman ubu...@kitterman.com:
 Ubuntu patch compared to the common base version:

 ~/src/pkg-name/lucid/ $ bzr diff -rancestor:../squeeze/

 Debian patch compared to the common base version:

 ~/src/pkg-name/squeeze/ $ bzr diff -rancestor:../lucid/

 These two commands should generate the equivalent of the .patch files
 from
 MoM.

 That doesn't solve the issue with the data being local versus remote,
 but
 it definitely looks very helpful. Â Would you add that to the wiki page
 on
 merging?

 Scott K


 What do you mean? These commands _do not_ require access to remote
 branches at all! It's all local no trips to launchpad.

I'd missed that he was working from local checkouts when I read the message.

Scott K

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


Re: Feedback on merging via bzr

2010-01-17 Thread David Strauss
On 2010-01-18 03:45, Scott Kitterman wrote:
 Text conflict in debian/changelog
 1 conflicts encountered.
 The merge resulted in 1 conflicts. Please resolve these and commit the 
 changes 
 with bzr commit.
 
 This gives me the proposed merge.  The conflict in this case seems to occur 
 with every merge I try.  The most recent Debian and Ubuntu debian/changelog 
 entries conflict with each other and the file has to be edited to move the 
 most 
 recent Debian entry above the most recent Ubuntu entry.  Additionally, MoM 
 would create a stub changelog entry for the new merged package which was 
 quite 
 convenient.  None of this additional work is difficult, but it is tedious and 
 seems ripe for automation.

At least for the changelog issue, Bazaar is moving forward with per-file
conflict resolution hooks that will allow type-specific merge behavior
for things like changelogs.

-- 
David Strauss
   | da...@fourkitchens.com
Four Kitchens
   | http://fourkitchens.com
   | +1 512 454 6659 [office]
   | +1 512 870 8453 [direct]



signature.asc
Description: OpenPGP digital signature
-- 
ubuntu-distributed-devel mailing list
ubuntu-distributed-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-distributed-devel


Re: Feedback on merging via bzr

2010-01-17 Thread Andrew SB
Thanks for writing this Scott. It touches on a couple things I've been
meaning to write about myself.

On Sun, Jan 17, 2010 at 10:45 PM, Scott Kitterman ubu...@kitterman.com wrote:
 1.  The most important change would be to have some kind of a wrapper for
 getting the source.  It would be nice to have a script that would download
 branches for the common ancestor, current Ubuntu, and current Debian branches,
 and do the proposed merge.  Without local access to the different versions of
 the package, it is very difficult to know if you've got a correct merge.

I think this is an important point. Especially with MoM not updating
correctly, we really need something to help ease people into these new
methods. I think a grab-merge like script would go a long way to
helping both simplify the repetitive work as well as introduce people
to UDD methods.

I've personally been using a hackish shell script that I'd be
embarrassed to distributed. It basically does:

bzr init-repo $PACKAGE
cd $PACKAGE
bzr branch lp:ubuntu/$PACKAGE $PACKAGE-ubuntu
bzr branch lp:debian/$PACKAGE $PACKAGE-debian
bzr branch $PACKAGE-ubuntu working-tree
cd working-tree
bzr merge-package ../$PACKAGE-debian

Then uses Bryce's merge_changelog script and 'dch -i -m' to handle the
repetitive changelog stuff.

Ideally, the script would also produce something along the lines of
MoM's REPORT, listing the conflicts and giving instructions on how to
proceed.

 In the old method, I would debuild -S (-sa if needed) -v and have a package
 ready for uploading.

 bzr builddeb -S -- -v4.6-1ubuntu1

 Now this one looks easy, but has the hidden trap of bzr builddeb providing
 only -S from dpkg-buildpackage and requiring an extra flag to pass other
 options to dpkg-buildpackage (--).  I think this needs a rethink [2].

I didn't know that was even possible. I've been using

bzr bd --builder=debuild -S -v4.6-1ubuntu1

I very much agree with:

 3.  As mentioned, the bzr builddeb interface and documentation needs work.
 Ideally it would act similarly to debuild and pass all the dpkg-buildpackage
 options to it without special flags.  Yet another interface that is almost the
 same is problematic.

- Andrew Starr-Bochicchio

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


Re: Feedback on merging via bzr

2010-01-17 Thread Martin Pool
2010/1/18 Scott Kitterman ubu...@kitterman.com:
 I feel like I've gone through a process that is far more complex than the old
 one for no real benefit.  I have some recommendations for improving and
 simplifying this process.  I think simplification is an essential element
 because the learning curve for new contributors is very steep already and
 raising the barrier to entry is not something that will benefit Ubuntu.

Thanks for the feedback, and yes, a major point of this is to make
contribution easier not harder.  So we need to smooth off some fairly
rough edges.

 1.  The most important change would be to have some kind of a wrapper for
 getting the source.  It would be nice to have a script that would download
 branches for the common ancestor, current Ubuntu, and current Debian branches,
 and do the proposed merge.  Without local access to the different versions of
 the package, it is very difficult to know if you've got a correct merge.

 Additionally, if there were checkouts for the previous Debian and Ubuntu
 packages locally, then it should be easy enough to diff the debian directories
 to check for packaging changes when a new upstream version is involved.

That sounds good, and not too hard to do.

 2.  As you no doubt know, the changelog merging could be better and would
 reduce repetitive, boring work potential contributors have to do.

Andrew has a framework for this up for review, so we should be able to
integrate the existing code for debian/changelog merging.

We will probably also cut out the explicit and I think unnecessary
'bzr resolve' step.

-- 
Martin http://launchpad.net/~mbp/

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


Re: Feedback on merging via bzr

2010-01-17 Thread Andrew Bennetts
David Strauss wrote:
 On 2010-01-18 03:45, Scott Kitterman wrote:
  Text conflict in debian/changelog
  1 conflicts encountered.
  The merge resulted in 1 conflicts. Please resolve these and commit the 
  changes 
  with bzr commit.
  
  This gives me the proposed merge.  The conflict in this case seems to occur 
  with every merge I try.  The most recent Debian and Ubuntu debian/changelog 
[...]
 
 At least for the changelog issue, Bazaar is moving forward with per-file
 conflict resolution hooks that will allow type-specific merge behavior
 for things like changelogs.

That's right.  If you're interested, bug 491711
https://bugs.launchpad.net/bzr/+bug/491711 is tracking progress on this,
and there's a branch at adds the hook point going through code review at the
moment.  Perhaps there should be a bzr-builddeb bug (or bug task on 491711?)
too?  Using that hook point I've successfully written a custom merge for
bzr's NEWS file, so it should be suitable for debian/changelog files too.

I'm about to go on paternity leave, but many bzr devs will sprinting
together next week.  I've suggested they take a look at creating a custom
merge for debian/changelog files; considering there's some code already
written for doing 2-way merges of that file (see
https://lists.ubuntu.com/archives/ubuntu-distributed-devel/2010-January/000357.html)
it shouldn't be too hard.

-Andrew.


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