/srv/irclogs.ubuntu.com/2011/08/26/#bzr.txt

=== AdamdV is now known as AdamDV
siliWe have a team here in the states and another team in the Philippines. The problem with accessing a shared bzr repo is that there's a lot of latency when accessing from the philippines. Can anyone suggest a work flow that would allow us to access the remote repositories less frequently but still keep changes mirrored?00:11
AuroraBorealisif you branch it (instead of just checking out) then it uses the local branch until you commit00:12
AuroraBorealisor update / whatever00:13
silibranching is still quite slow over SSH. Is there a way to maintain the repositories with some kind of push/pull?00:13
silione repository at each site, then sync somehow00:14
AuroraBorealisthats what branching does.00:15
AuroraBorealisyou branch it once00:15
AuroraBorealisthen bind it to the place you just branched from00:15
AuroraBorealisthen you make your changes, and it commits back to the repo00:15
AuroraBorealisand then the branch essentially is a mirror of the repo00:16
silihmm00:40
silibranching is still slow00:40
=== bradm_ is now known as bradm
djzielinstill having problems with bzr04:54
djzielinthe issue I had in June just happened again.04:55
djzielinnamely I commit changes is some very small files.04:55
djzielinI issue the commit command...04:55
djzielinit shows the several small source code files that I modified.04:55
djzielinand then it uploads the entire branch04:55
djzielinwhich is 200+ MB04:56
djzielinwhy does this happen?04:56
djzielinI'm using sftp to a remote computer04:57
lifelessbecaues you're using sftp05:01
lifelessit has to manage the database on disk using just file operations, and part of database operation is a 'pack' which will happen every power-of-10 commits.05:01
lifelessyou should use bzr+ssh. *much* better.05:01
djzielinokay05:21
djzielinI'll change the branch.conf file05:22
djzielinthanks for the help!05:24
AuroraBorealiscan anyone else browse code on launchpad? i'm getting 503's ;<05:44
lifelessshould be fixed05:50
vilahi all06:26
* fullermd vilas at wave.06:27
=== Quintasan_ is now known as Quintasan
vila:)06:32
vilaudd hackers: interesting failure when running import_package.py locally for tests: http://paste.ubuntu.com/675052/06:33
vilatwo remarks on that:06:33
vila1) jubany doesn't use pycurl so we see a different error (probably caught as a socket error instead of a Connection error, may be (or not) worth fixing)06:34
vila2) The librarian may  dislike being queried for an arbitrary url06:35
vilaall in all, refresh_possible_transports is more brittle than expected, I wonder how we should make it more robust06:36
fullermdMan, things get worse with age.  Used to be, librarians just didn't like you talking...06:36
vilahehe06:37
=== 31NAAXP81 is now known as wallyworld_
fullermdFunny.  That makes me wonder if this library card I have still works...06:45
benstehi there - i took part in this years GSOC and now i need to know how i could get one big Diff file which includes all changes which I made to a branch08:26
benstehow can i do this ?08:26
benstePS: - talking about lp:mailmanwebgsoc201108:27
vilabenste: find the first revision your're interested in then bzr diff -r<first_revno - 1>..08:42
benstethanks08:42
fullermdAlternately: do you really want "diff of all my revisions", or do you really want "my changes relative to upstream"?08:43
benstefullermd: i do want to have all my changes i did during Gsoc --  used bzr blame atm.08:44
benstefullermd: if you do have something for all MY changes - that would be best08:44
fullermdIf you do something like "bzr diff -rancestor:<url of upstream trunk, or whatever you base your work off of>.." you'll wind up with "what I've changed relative to upstream"08:46
vilabenste: did you commit all your changes to a local branch before merging them upstream ?08:46
fullermdWhich will be more meaningful if e.g. you've merged upstream changes as part of your work.08:46
* vila nods08:46
bensteI've commited all my changes in about 150 commits08:47
benstewhich are all upstream08:47
benstebut there are a few in between which are made by other persons08:47
AuroraBorealisthe merge that took your changes and merged them upstream will probably have all differences08:47
AuroraBorealislook for that commit in the upstream branch08:47
vilaAuroraBorealis: only if he merged them all at once08:48
AuroraBorealisis it possible to combine multiple diffs?08:48
AuroraBorealisive never seen that done08:48
vilabenste: hence my question, did you commit all your changes on s a single branch or did you create multiple branches ?08:48
benstevila: i do only want to have the changes in one upstream branch which is lp:mailmanwebgsoc201108:49
vilaAuroraBorealis: oh yes, you certainly did but didn't realize it ;) bzr handles snapshots so when you ask for a diff between two snapshots you get a diff that can encompass multiple revisions08:49
vilabenste: there are various ways to get that, I'm searching for the easiest first08:50
AuroraBorealisdoes that work for revisions that are not sequential?08:50
AuroraBorealislike revisions 1, 2, 4, 7?08:50
vilait depends on whether you can find the right snapshots...08:51
vilaor revisions08:51
AuroraBorealiswell on his own branch08:52
AuroraBorealisor rather the upstream branch08:52
AuroraBorealiscant you do like for each revision (that he commited): get the diff of it and combine it?08:53
AuroraBorealisthat seems easiest08:55
vilabzr log -l 25 --match-author '.*Vincent.*' -n0 -p08:55
viladoesn't combine but shows all my commits08:56
AuroraBorealisyeah, but now you need a combined diff for all of those commits08:56
AuroraBorealisi'm not too familiar with diffs so i have no idea how you combine them08:56
vilayou can't08:56
AuroraBorealisyou can't with bzr or is it just not reasonable to have a combined diff of multiple commits08:56
vilathat's why I'm asking for some branch which may contain the right revision that can then be used to this combined diff08:57
vilawhat is the use case ?08:57
AuroraBorealisprobably showing to employers / google sumer of code people what exactly you did08:57
AuroraBorealisalthough a huge combined diff might not be the best way to visualize that, since if you create some code, then edit it, it would just show that you added it? i dunno08:58
vilaI can't think of way to combine arbitrary diffs, short of creating a branch with all these revisions either already there (and only them)08:58
AuroraBorealisit seems that you need the diff from the merge into the upstream branch08:58
vilasuch a branch can be created by cherry-picking all these revs though08:58
AuroraBorealisthat way it shows code that is new, and what code you edited that was already there08:59
fullermdvila: First you import it into darcs...   :p08:59
vilafullermd: then you wait for the universe to cool down a bit ;)08:59
AuroraBorealisto do this you would probably have to merge diffs. which would in turn create diffs.09:00
AuroraBorealisINCEPTION09:00
vilaAuroraBorealis: yes, but you imply that a single merge was done, I doubt it's the case09:00
fullermdThe universe cooling down would be nice...09:00
AuroraBorealissvn has a 'combinediff' plugin09:00
vilaAuroraBorealis: how does it deal with conflicts ?09:02
AuroraBorealislooking at the source09:02
AuroraBorealiswhich is C which i don't know very well09:02
vilaAuroraBorealis: and with renames ?09:02
vilaAuroraBorealis: and so on :)09:03
AuroraBorealishttp://cyberelk.net/tim/data/patchutils/stable/patchutils-0.3.2.tar.bz209:03
vilabenste: so, rolling back a bit, what's your need ?09:03
benstevila: sry was a little while afk09:04
benste- i need to submit all my code to google09:04
vilabenste: as a single patch or is a series of patches good enough ?09:04
vilaif series is good enough, 'bzr log -p' is your friend09:05
AuroraBorealisand god i hate C09:05
AuroraBorealisi can never find where the code i actually want is :<09:06
vilaand will contain more useful info than a single combined patch (like how many revisions, when, etc)09:06
vilabenste: try playing with "bzr log --match-author '.*benste.*' -n0" first to check you've got all the revisions you want and not more09:07
benstevila: will try that09:07
benste-- author name would be my fullname --used for commits correct ?09:08
vilabenste: you may want to tweak -n (aka --levels) depending on your branch history09:08
vilabenste: whatever bzr log display for your commits09:08
AuroraBorealisbzr log doesn't have match author?09:09
vilabenste: try 'bzr log -n0 -l 32' (tweak 32 until you get of yours, see at what depth (level) it is and use that )09:09
vilaAuroraBorealis: requires >= 2.4 maybe ?09:09
AuroraBorealismaybe09:10
benstebzr log does only show the commit messages09:12
benstehad to replace 32 to 162 which includes my first commit09:12
vilabenste: yes, '-p' will show you the diffs09:12
benstebzr log does show all users commits09:12
benstenot only mine09:12
vilabenste: but first you want to identify only *your* commits with --match-author09:13
vilas/identify/select/09:13
benste???09:13
benste--mathc author does not exist for log methode09:13
benste- AuroraBorealis said thsi earlier - can confirm that09:14
AuroraBorealisim using 2.3 though09:14
vilabenste: !paste the excerpt of your 'bzr log -n0  -l162'09:14
AuroraBorealismight exist for a later version09:14
vila!paste09:14
ubot5For posting multi-line texts into the channel, please use http://paste.ubuntu.com | To post !screenshots use http://imagebin.org/?page=add | !pastebinit to paste directly from command line | Make sure you give us the URL for your paste - see also the channel topic.09:14
vilaAuroraBorealis: yes, hence >= 2.409:14
benstehttp://paste.ubuntu.com/675112/09:15
bensteI've used 163 to include a revision which is not mine09:15
benste- the oldest one is my demo that it's not filtered09:16
vilaso, "bzr log -n0 -l 163 --match-author benste"09:16
benstevila: benste@benste-vpc-sb1c5e:~/Projects/Mailman/mailman_django$ bzr log -n0 -l 161 --match-author benste09:17
benstebzr: ERROR: no such option: --match-author09:17
vilabenste: upgrade to 2.4, what os are you using ?09:17
benste11.04 - ubuntu natty09:18
bensteit's 2.3.1109:19
benstebzr09:19
vilabenste: add the bzr stable ppa to your repositories and update09:19
vilahttps://launchpad.net/~bzr/+archive/ppa09:20
AuroraBorealisis 2.4 stable?09:20
AuroraBorealisit says that 2.4 is test09:20
vilanot officially released but stable nevertheless, announcement currently blocked waiting for windows installers themselve waiting for bzr-svn to be released, benste shouldn't have to care09:21
vilabenste: click the 'Read about installing' link for detailed instructions09:22
AuroraBorealisif this breaks my stuff i'm blaming you =P09:22
benstevila: thanks for the guide - although I'm quite new ot bzr I'm using ubuntu since 5.04 :)09:22
vilabenste: should be roughly 'sudo add-apt-repository ppa:bzr/ppa'09:23
vilaha cool, congratulations ;)09:23
bensteor open software center and add it in the GUI :) - open update manager and run updates - I'm just installing it09:23
AuroraBorealisi have as well. installing ppa's should be easier09:23
bensteI know sometimes CLI is faster :)09:23
AuroraBorealisrather then copy/pasting two links09:23
AuroraBorealisand then saving the public key to a text file and importing that09:23
benste-- AuroraBorealis you don't need the key09:24
benstethat done automaticly if you use the software center09:24
AuroraBorealisif i remember correctly, apt-get yells at you09:24
AuroraBorealisdoes it do it automatically now?09:24
vilabenste: \o/ I didn't know SC can automatically add the keys ! Thanks !09:24
AuroraBorealishttp://wiki.bazaar.canonical.com/WindowsDownloads09:24
AuroraBorealisno 2.4 beta release installer :<09:24
vilaAuroraBorealis: add-apt-repository does09:24
benstevila: my 2.4 doesn't have match author eitehr !09:25
AuroraBorealisive never seen that command before09:25
vilacrap09:25
vilalet me check09:25
fullermd's not in 2.4.0...09:26
benstevila: maybe I'll have to restart first09:26
bensteI've installed09:26
bensteVersion: 2.4.0-1~bazaar1~natty109:26
vilaargh, only available in 2.5dev1 :-(09:27
AuroraBorealisthere should just be a regex style matching thing for log09:27
benstevila: hopefully you do understand that I woun't install 2.5 on my working machine -- did you ?09:28
vilabenste: why ? That's what I use :)09:28
AuroraBorealisyou can download the source09:28
AuroraBorealisand then invoke it manually09:28
AuroraBorealisand not use it for production09:28
* vila searches for a fallback, yeah, AuroraBorealis suggestion could work for a one-shot case09:28
benstevila: I'm going to ZA for 11 months starting next week - accessing resources like updates or installation media in case of something brakes will be very difficult there09:29
vilabenste: sure thing, was kidding09:29
AuroraBorealisjust download the source onto your desktop09:29
bensteif it's really that easy couldn't I gently ask you to get me this big diff ?09:29
AuroraBorealisand cd to the directory and just do ./bzr log09:29
benstebtw . did you consider that there will be a lot more Gsoc students asking this in the couple of next weeks ?09:30
AuroraBorealiswell technically09:30
AuroraBorealishmm09:30
AuroraBorealisi still think its really easy to download a temporary copy of 2.5 to generate the log  :309:32
vilabenste: oh, you want fish ? ;) Here is some: http://paste.ubuntu.com/675122/09:32
vilabenste: does that includes all the wanted revisions ?09:32
benstelooks like this is correctly filtered09:33
benstenow the only thing missing is the code :)09:33
bensteyou said -p ?09:33
bensteAuroraBorealis: I'm not that confident which branch / file I'll have to download09:33
bensteI'm stuck on https://launchpad.net/~bzr/+archive/daily?field.series_filter=natty09:33
AuroraBorealisi just did a bzr branch lp:bzr09:34
vilabenste: uploading09:34
vilahttp://paste.ubuntu.com/675124/09:34
benste51000 lines of code WOW09:35
benstemany thanks09:35
vilalines of diff != lines of code ;-)09:35
benste-- should i write a short how to + need to use bzr 2.5 on the students list ?09:35
AuroraBorealisyeah09:35
AuroraBorealisjust say "you need 2.5, and to cd to the directory, ./bzr log -p --match-author "something"09:36
vilabenste: sounds like a good idea, but an even better one will be to recommand keeping a pristine branch of your work may be09:36
benstewhat's pristine ?09:37
vilaone keeping track of your commits only09:37
vilawhich can be merged upstream as you progress (but the merges will occur upstream not locally, keeping a clean branch there)09:38
vilafrom this branch, you can get a combined diff with only: 'bzr diff -rsubmit:'09:38
AuroraBorealisbut then dont you have to merge changes from upstream back into your own branch?09:38
vilaerrr, sorry, won't work for the parts already merged, what's the right revspec there...09:39
benste:)09:39
benstewill tell them to use 2.5 and the command we've had earlier09:40
vilabenste: yeah, there is no easy shortcut for such cases which could be used for a simple diff :-/09:46
benste:)09:46
bensteso, "bzr log -n0 -l 163 --match-author benste"09:46
benstemany thanks for your help09:46
vilaget rid of the '-l 163' it was just to limit the output while searching for the right range09:46
benstewell I think this might be helpful especially for those who contributed to their project before Gsoc as well09:47
benste+ I've already send the mail to the list09:47
vilahehe, that last one is definitive ;)09:48
=== AuroraBorealis is now known as aurora|sleep
zygahi11:04
zygawhen I'm branching stuff from lp:ubuntu/lucid/package I get strange new messages11:04
zygaMost recent Ubuntu Lucid version: 2.2.4-1build111:04
zygaPackaging branch status: CURRENT11:04
zygais that some new feature?11:04
jelmerzyga: yep11:13
jelmervila: finally made some progress on that bzr-svn bug11:13
jelmervila: doing the QA for 1.1.0 now11:13
vilajelmer: hey ! Very quiet around here this morning, I wondered for a minute it was Sunday or something...11:19
vilajelmer: that's *very* good news !11:19
jelmervila: accidentally working during the weekend11:19
jelmerbeen there, done that.11:19
jelmer:)11:19
vilahehe11:20
jamzyga: http://doc.bazaar.canonical.com/bzr.dev/en/release-notes/bzr-2.4.html#id4 item 211:39
=== mrevell is now known as mrevell-lunch
zygajam: thanks11:55
vilajam: you said "most-compatible way for 2.4", how come you did miss the *two* times I said I was talking about bzr.dev not 2.4 ?12:04
jamvila: I'm still not sure that I would change it for trunk either.12:12
vilaThat wasn't the question ;)12:13
vilaBut anyway, 6 classes sharing some API and no central place to control it is scary, if you can't introduce a base class, then may be you should add some sort or parametrized tests to limit the possible divergences12:14
vilagrrr, trying to reproduce a failure with an import taking >2 hours only to see it succeeds...12:18
jamvila: RemoteRepository doesn't inherit from Repository either12:20
jamwe've got a fair history of using duck-typed interface based apis12:20
jamrather than inheritance based12:20
vilaand you feel ok with code duplicated 6 times and no common tests ?12:21
jamvila: there really isn't a way to test that Graph acts like Repository, is there?12:22
jamit isn't duplicated code12:22
jamsince they all implement their history store differently12:22
vilawith respect to get_parent_map ?12:22
jamvila: yes12:22
vilaso you have the same API behaving in 6 different ways ?12:22
jamvila: sometimes get_parent_map() takes lists of tuples, sometimes lists of strings, sometimes ...12:23
jambut Graph can still walk the graph12:23
jamas long as you pass it things that the underlying parent_map can provide12:23
vilaeither it's the same API or it's not12:24
vilaif it's not having the same name is not good12:24
jamvila: the api is "give me X and I'll return a dict mapping X to its parents"12:25
jamwhich they do all conform to12:25
jamand is why you can use Graph(VersionedFile)12:25
jamor Graph(Repository)12:25
vilagood, if they conform, they can be tested12:25
jameven though the former thinks of "keys" and the latter of "revision_ids"12:25
jamvila: they're all pretty well tested, just not grouped12:25
vilathat's the point12:26
vilaif they aren't grouped they can (and will) diverge12:26
jamvila: they haven't in 5-ish years...12:26
vilasorry ?12:27
vilaI thought you just changed at least one of them ?12:27
=== mrevell-lunch is now known as mrevell
vilajam: if you don't want to address that *now*, I don't have *any* issue with that, but at least file a bug while all the needed bits are paged-in, you've just demonstrated how vital this piece of code is (dropped from 2hrs down to 54s) and how a bug can have a huge impact here. You can't just hope that nothing else will need the same amount of effort to debug.12:46
lagIs there a way to delete logs in bzr?13:00
=== yofel_ is now known as yofle
=== yofle is now known as yofel
=== beuno is now known as beuno-lunch
=== cbz_ is now known as cbz
skrapshelp get SSL options for everyone for free on pastebin like this page on face book http://pastebin.com/f4e0diQP15:55
=== tchan1 is now known as tchan
=== beuno-lunch is now known as beuno
=== deryck is now known as deryck[lunch]
=== deryck[lunch] is now known as deryck
vilajelmer_: \\o \o/ o// \\o \o/ o//18:08
jelmer_vila: :)18:08
cheaterhi!18:20
cheateri have a problem but i don't know how to properly describe it18:20
cheaterbasically i have a "huge" bzr repo18:20
cheateri would like to take one directory out of it and put it up on bitbucket18:20
cheaterwhich uses hg18:21
cheaterwhat is the best way to do that?18:21
cheateri would like to have bidirectional communication between the two18:21
cheateris that what you call an "external" or something to this effect?18:22
jelmer_cheater, probably using bzr-fastexport + hg-fastimport18:25
cheateris this something i have to "run" every time i update the one or the other?18:26
jelmer_cheater, yep18:26
jelmer_cheater, it would probably be one way18:27
cheaterwill doing bzr up "run" it?18:27
jelmer_no18:27
cheaterhmmmm18:28
cheateri wish bitbucket just had bzr support :(18:28
jelmer_cheater, it's likely something like what you're asking for will be supported in the future when either bzr-hg is improved or support for externals lands in the core18:29
jelmer_gtg, back later18:29
cheaterthanks18:29
yshavithi everyone... bzr push (and merge) say I have uncommitted changes, but bzr st doesn't list anything, and bzr ci tells me there's nothing to commit. Any ideas?19:45
yshavit(I expect there to be nothing to commit, btw -- it's push/merge that I believe are "broken", though it's probably pebkac)19:46
yshavitand also, when I check on lp, the most recent version is indeed the one I most recently committed19:47
yshavitOh, hm. I did a bzr ci --unchanged and it complained about three missing files and then forced the no-op commit through, now it all works. I think my IDE was the broken link.19:50
=== medberry is now known as med_out
=== med_out is now known as medberry

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!