/srv/irclogs.ubuntu.com/2009/02/27/#bzr.txt

garyvdmHow do we write a test for say qdiff?00:00
garyvdmside - by - side qdiff00:01
garyvdmand check that the systax highlighting is working?00:01
bialixpuzzling00:01
fullermdObviously, you write two tests and run them side by side!00:01
bialixif our internal data is correct then colors should be correct00:01
bialixfullermd :-P00:02
garyvdmOk - thats a very extreame case.00:02
garyvdmqlog should not be too hard - just lots of work.00:02
bialixgaryvdm: I've installed winmerge today. it's more powerful than qdiff s-b-s, albeit lacks syntax highlighting00:03
bialixthere is too much 3rd party diff gui tools00:03
bialixmay be we just need ad them00:04
garyvdmOn windows - I prefer Araxis Merge - unfortunately it is proprietary.00:04
garyvdmBut I'm doing most of my dev on ubuntu these days - so I use meld00:04
bialixsome people can buy proprietary soft00:04
garyvdmor crack pro^H^H^H^H^H^H^H^H^H^H^H^H^H^00:05
bialixI dunno, luks rewrote qdiff s-b-s several times and we still is not perfect00:06
bialixgaryvdm, I understand00:06
bialixthere is one area we can do better: qann00:07
garyvdmYes - we need to be able to select the revision you are annotating.00:07
garyvdmGo back00:07
bialixyes, something like this00:08
garyvdmI personally don't gannotate's ui for that though.00:08
bialixdon't? don't like?00:08
garyvdmerr - yes - don't like00:08
garyvdmI would rather have this: you right click on a revision in the revision list - and click "Annotate this revision"00:09
bialixI don't ran bzr-gtk for ages, I don;t remember how it00:09
bialixthis is fine way00:10
garyvdmThe revision that is annotated is highlighted in the list.00:10
* fullermd just wishes viz would stop polluting his clipboard...00:10
bialixone thing that turn me mad in qt is clipboard00:10
bialixI'm selecting some text in qdiff, close it -- and then find that clipboad is empty00:11
garyvdmYou need to go back to an older qt00:11
bialixerr, I mean I'm copy text to clipboard but qt clear it on exit00:12
bialixolder?00:12
bialixI'm using 4.3.100:12
bialixfullermd: switch to qbzr and your clipboard will be empty all the time00:13
garyvdmAre you sure - We had a discussion on the ml about it - you told me that it worked in 4.3.100:13
garyvdmSubject: Copy, Close Window, Paste does not work00:14
fullermdqbzr requires qp 4 though, don't it?00:14
garyvdmYes00:14
bialixyes, I'm observing this issue only in qdiff, but not in qlog00:14
fullermdI don't have 4 around.  And QT is freakin' HUGE.00:14
fullermd(only reason I have bzr-gtk around is that I already have GTK anyway)00:14
bialixfullermd: windows installer is about 12MB00:14
bialixit's not very huge for me :-P00:15
* fullermd doesn't own a machine that runs Windows :p00:15
igcmorning00:15
bialixgood day igc00:15
fullermdHeck, even QT 3 takes longer to build than Firefox, IIRC.  Nutbar.00:15
garyvdmfullermd: so you have never tried qbzr?00:16
bialixthat's why I prefer python tools: I don;t need to compile tem (usually)00:16
fullermdNo.  I wouldn't have tried bzr-gtk if I didn't already have all the pieces but the python gtk bindings either.00:16
fullermdI don't have any real use for it.00:16
fullermdI don't think I've ever even fired up anything but viz, and I've only used viz recreationally.00:17
bialixgaryvdm: I've re-read that discussion about clipboard00:17
bialixI have no problem with most of the q-windows, only with qdiff00:18
bialixonly with s-b-s qdiff, because it's default00:18
garyvdmbialix: ok00:18
=== mark1 is now known as markh
bialixI suspect it's because there is different widget used00:18
bialixmaybe something related to painting00:19
* bialix checks00:19
garyvdmbialix: linux desktops generally have clipboard managers. I wounder if you can find one for windows.00:19
fullermd(I note that viz resets its clipboard damage when it exits too, which makes it either better or worse; I'm not actually sure which)00:20
bialixwow00:20
bialixit looks interesting00:20
igchi bialix00:20
bialixit works now on win xp for black text00:20
bialixian, I have question about fast-import00:20
lifelessgaryvdm: http://msdn.microsoft.com/en-us/library/ms649014(VS.85).aspx00:20
igcbialix: sure, and I have a Q for you!00:21
lifelessgaryvdm: which is, its built in. You can supply the content or you can be called back.00:21
igcbialix: bug 328007 - any thoughts?00:21
ubottuLaunchpad bug 328007 in bzr "UnicodeDecodeError on 'log -p'" [Undecided,Confirmed] https://launchpad.net/bugs/32800700:21
bialixgaryvdm: but it does not work as expected with win2k I'm using at work00:21
* bialix looks00:22
igcbialix: my simply fix breaks a fair few tests that I think you wrote so I wanted to hear how you thought we should proceed there00:22
* bialix cough00:23
bialixit's tricky00:23
bialixhonestly, I think we should have versioned properties to store encoding of files00:23
bialixor at least rules00:24
garyvdmlifeless: thanks00:24
bialixit's ideal situation I know00:24
bialixigc: you can't use exact on log00:25
bialixotherwise you have to manually encode log messages00:26
igcbialix: I'm not sure I understand how encoding files/rules will help here?00:27
bialixigc: because then you can decode them to unicode00:28
jelmerlifeless, do you remember the subject of your email with instructions on running bzr serve from homedir on a remote side?00:28
jelmer*site00:28
bialixigc: I think to fix this issue one have to provide exact stream for log formatter but create another wrapped stream internally to log everything but diff00:29
lifelessstreaming-push alpha testing00:29
bialixigc: is it correct?00:29
igcbialix: something like that but I have next to no idea on how to do that :-(00:30
bialixok, I can try to figure it out, but I have a question about fast-import first00:31
igcbialix: my knowledge in the whole encode/decode space is "just the basics"00:31
igcbialix: fire away00:31
pooliehey igc00:32
igchi poolie00:32
bialixigc: I'm pleased to hear you think I'm expert in unicode, of course, I hope I can help00:32
igclifeless, jam, poolie: got a bzr-1.12 branch converted to gcchk255 yesterday00:33
poolieoh ok00:33
igcit took 4.5 hours00:33
poolieigc, i'd like to set them up on orcadas00:33
bialixigc: I have a real need to replay some my branches and filter them in very smart way. But I need to preserve file-ids00:33
igcbut it's 1/2 the size!!!00:33
igcjam: I've been trying to benchmark it this morning but I've been running into gremlins here and there - mostly in my setup00:34
pooliei had many gremlins on orcadas00:34
igcjam: however, "./bzr log -r-1 NEWS" doesn't work for me on brisbane-core00:35
pooliethe patch i sent you was really pathetically small for how long it took me to work out :-}00:35
bialixigc: where the code for generating diff in log lives?00:35
bialixpoolie: what is orcadas00:35
pooliebialix: the machine that's http://benchmark.bazaar-vcs.org/00:35
igcbialix: the diff gets generated by calling into diff.py - the result is stored in a StringIO00:36
poolieyou can really see in that first graph how the noise makes it hard to say straight away whether there was a meaningful change or not00:36
bialixpoolie: your genius to choose right names for things is imressive00:36
igcbialix: later on, the LOgFormatter calls a method called show_diff that tries to dump it to self.outf00:36
pooliebialix: is that sarcasm or not? :)00:36
bialixpoolie: but Kergelen is a bit offensive :-P00:37
bialixa bit00:37
poolieah ok00:37
bialixthe naming of cat is a difficult matter00:37
pooliewell, that one i did not choose00:37
bialix:-)00:37
poolieOrcadas Base <http://en.wikipedia.org/wiki/Orcadas_Base>00:37
pooliethe worst canonical machine name (for me) is in russian actually00:38
poolieum00:38
bialixsoyuz00:38
igcpoolie: sorry that the usertest code is pretty rough - it gets minimal love because it doesn't necessarily deserve/need more00:38
bialixyes?00:38
poolieNovolazarevskaya00:38
igcpoolie: well until some other por sucker tries to tweak it :-(00:38
bialixLOL LOL LOL LOL00:38
igcs/por/poor/00:38
poolieigc, i know, it's ok00:39
bialixROTFL!!!!!!!!!!!!!!!!!!!!00:39
bialixpoolie: you know the English is hard language too00:39
pooliei'm not sure if this is true but i've heard it means something like "New Miami Beach"00:40
pooliewhich is a joke because it's a place in Antarctica00:40
bialixthey have a bath there00:41
bialixbath == warm00:41
bialixwarm == beach00:41
bialixNovolazarevskaya is just a name00:42
bialixNovo == new00:42
pooliemaybe it's the nickname for the place or something00:43
pooliesoyuz is about the last part of landscape to have an obscure code name00:43
bialixlazarevskaya it's the beach near the Sochi00:43
bialixBlack Sea00:43
bialixso yes, it's ~= New Maiami Beach00:44
bialixigc: so what about fast import and file ids?00:45
igcbialix: its a good question!00:46
igcbialix: fast-import has some support for incremental changes ...00:46
igcbut I feel it needs some deeper thought00:47
igcat a minimuym, some better ui polish and doc on how to do it and the limitations would be nice00:47
bialixigc: until I saw fast-import in action I'm thinking about writing my tool for this00:47
bialixalso, I have many failures with renames00:48
igcbialix: I really need to bug Jelmer about this topic when we both have some time00:48
bialixsome of my branches even have cyclic renames???00:48
igcbialix: please raise bugs for the rename issues00:48
igcbialix: I've recently added a heap of tests for fast import, though fast-export doesn't have any yet00:49
bialixigc: it's occured on private branches00:49
igcbialix: I know I'm still missing fast-import tests for renaming and copying directories though00:49
bialixI dunno how to properly write bug report00:50
lifelessigc: 1/2 size, thats a bit disappointing00:50
igcbialix: all I need is a minimal fast-import stream showing the scenario and expected outcome00:50
bialixigc: ok I see LogFormatter.show_diff, but who call it?00:50
igclifeless: you were expecting more?00:51
bialixrats00:51
bialixI'm back00:51
lifelessigc: yes, various sample data goes to 1/7th00:51
lifelessjam: probably need the byte-length encoding for gc 'i' instructions00:51
igclifeless: the other curious thing about running brisbane-core/bzr upgrade --gcchk255 was that the dirstate size went up00:51
igcnot by much but a bit (328 blocks to 36) - something like that)00:52
lifelessigc: ? *blink*00:52
igcs/36)/360/00:52
bialixigc: how about this fix for log -p00:52
bialixigc: store original exact stream as self.exact_stream and use it for show_diff00:53
igcbialix: show_diff is called by the ShortLOgFormatter and LOngLF00:53
lifelessigc: did you do a full branch of the result?00:53
bialixigc: and wrap it as in command.py Commad._setup_outf and store as self.to_file00:53
lifelessigc: that will get rid of some redundancy (outside a shared repo, obviously)00:54
igcbialix: line 1311 of log.py is one called to show_diff()00:54
bialixigc: I'll write it for you. Here is just 02:56 and I'm don;t sleep anyway00:55
igcbialix: legend00:55
igclifeless: I was upgrading from a pack branch - no shared repo before or after00:55
bialixlegend?00:55
* bialix hates chatzilla but have no better irc client00:56
igcbialix: I was trying to say thnk-you very, very much00:56
igcs/thnk/thank/00:56
igclifeless: I'll upload the branch (as an archive) to orcadas - I just wanted to make sure it mostly worked first00:57
bialixlifeless: I've used to pb. don't see it with bzr 1.12 is hurt00:58
bialixigc: one downside with using exact encoding for log: output will be LF-only on Windows01:00
lifelessbialix: yeah, I'm not sure whats going on; if it was 1.13 I'd know (because spiv and I broke it temporarily)01:02
bialixbut I think for Windows qlog is rocks01:02
bialixlifeless: and I don;t see pb in qbzr too, it seems it's just disappear01:03
igcbialix: does diff have the same issue?01:04
bialixigc: what issue?01:04
bialixigc: for plain diff exact is right thing01:05
bialixigc: but for plain log -- i'm not sure01:05
bialixbut I can live with this01:05
bialixI just want to inform you abut this side effect01:06
bialixigc: ping01:12
shtylmanis there a way to delete a bazaar branch remotely? without logging into launchpad per se?01:12
poolieshtylman: there probably is an API for it in launchpadlib but i don't think there is a UI at present01:13
shtylmanpoolie: thanks01:13
bialixigc: I have the patch for you01:13
igcbialix: thanks! I'll test it later today01:14
bialixsend it to list or to you personally?01:14
poolieshtylman: you could add one to bzr's launchpad plugin if you're keen01:15
bialixI've tested it manually only, have no desire to write unittest01:15
shtylmanpoolie: well, I don't just want to be able to do it in launchpad, but for other projects as well01:16
bialixigc: sent to ML01:18
bialixperhaps I need to manage me to sleep. bye01:19
Stanlinwhos bazaar for windows developer?01:34
khemicalshow does one duplicate a bzr repository to another bzr repository -- do you have to do it one branch at a time?01:46
Peng_khemicals: I'd probably use rsync.01:46
khemicalsrsync doesn't talk http01:46
Peng_There might be a plugin that helps, but if so, I don't remember it.01:47
khemicalsso -- there's no command I am m issing01:47
khemicalsbut bzr doesn't natively support it01:47
Peng_If it's plain HTTP, there's no way to walk the file system, so unless bzr kept a list of branches somewhere, which it doesn't, it isn't possible...01:48
Peng_Mmm, commas.01:48
khemicalsk01:48
mlhit doesn't keep a list of branches?01:48
Peng_mlh: Correct.01:49
mlhnowhere?01:49
Peng_mlh: Correct.01:49
mlhso you can't discover branches remotely, you have to know what you want.01:49
khemicalsSo, I pulled a branch from an existing public repo (just playing with bzr here to see how it goes) and tossed it into a local repo (was created using repo-init) using something akin to bzr push bzr+ssh://host/PATH_TO_REPO but now I cannot check it out since I don't know what the branch name is01:49
Peng_There are find_bzrdirs and find_branches methods, but they just go recursing through the file system.01:50
khemicalsis there a default branch name01:50
Peng_khemicals: ...What?01:50
Peng_khemicals: Branch names shouldn't matter, just the specific location.01:50
khemicalsit errors01:50
khemicalslet me get the error for you01:50
* Peng_ avoids knowing much about checkouts01:50
khemicalsbzr: ERROR: Not a branch:01:51
khemicalsand then the path thereafter01:51
khemicalswith git, for instance, I can clone the ENTIRE repository01:52
khemicalsjust trying to figure out how to do the same without filesystem access to the repo I am trying to duplicate01:53
khemicalsPeng_: Why do you avoid knowing much about checkouts?01:53
khemicalstrying to figure out where I am going wrong here01:53
Peng_khemicals: Checkouts are something extra to learn. Regular branches are usually enough for me.01:56
khemicalswhat's the difference between pull/checkout/branch commands?01:57
* khemicals reads the man I guess01:57
Peng_Ehh, I'm not good at explaining things.01:57
Peng_khemicals: Were you trying to "bzr branch" from a repository or checkout instead of a branch?01:58
khemicalsit was a branch since none of it worked against the repo root I don't think02:00
lifelesskhemicals: pull maintains a mirror; checkout creates a checkout - a place to edit an existing branch, branch creates a new branch (and if the target is local it can be edited in-place)02:00
khemicalsso, pull still only works against a branch though, right?02:00
Peng_khemicals: Right. Use "update" against a checkout.02:01
khemicalsso, can I pull a branch from one repository and use push to push it to another?02:02
lifelesskhemicals: yes02:02
khemicalsdo I need to create a destination branch in the repo I am pushing to first? -- or is that was export is for?02:02
lifelesskhemicals: no, push will make a branch if one doesn't exist alrady02:03
khemicalswhat's the name of the branch -- the same as what I pulled?02:03
lifelesskhemicals: branches have urls, not names02:03
lifelesskhemicals: in git branches are 'refs in a repo', in bzr 'branches are directories at a url'02:04
lifelesss/refs in a repo/'named refs in a repo'02:04
khemicalswell, the name is essentially just a subdir of the repo02:04
khemicalsso, how is that name determined02:04
lifelesskhemicals: you don't need a repo02:04
lifelesskhemicals: try it - bzr branch [some branch] /tmp/demo02:05
khemicalsbzr branch http://bazaar-vcs.org/bzr/bzr.dev bzr02:10
khemicalsso, how do I populate a new repo, that I want to share, with that content (including full history)?02:10
AfCkhemicals: bzr branch02:12
khemicalsbzr branch bzr SOME_NEW_URL ?02:12
Peng_khemicals: Sure.02:12
lifelesskhemicals: if you have a lot of branches, or a lot of history, you can run 'bzr init-repo URL' to create a history-sharing repository with no content, then whenever you bzr branch URL/suffix, or bzr push URL/suffix, bzr will use that repository to share branch content02:13
lifelesskhemicals: but generally most folk don't need this02:14
lifelessthe folk that do tend to be server admins and developers on projects with hundreds of MB's of history02:14
khemicalsI found my issue02:22
khemicalsin checking out the various protocols server side, I set the --directory option on the bzr daemon02:22
khemicalsit stripped too much of the path out02:22
khemicalsso it didn't match the path used by the other mechanism02:23
khemicalsthus confusing the heck out of me02:23
khemicalsbut I do understand it enough to limp along now -- will keep reading, thx for the assist02:24
lifelesskhemicals: no problem02:24
lifelesskhemicals: most folk just use 'bzr+ssh://' as the protocol, which sets --directory automatically02:24
khemicalsI am just toying with all its server side functions02:25
khemicalsbzr+ssh is fine02:25
lifelesscool02:25
khemicalsbut wanted to try native bzr02:25
khemicalsprotocol02:25
khemicalsas well02:25
lifelessfeel free to shout if you want any more input02:25
khemicalsyou can checkout from loggerhead to? or no?02:25
lifelessI think you can branch from loggerhead in the very latest versions02:25
lifelessmwhudson: ^ please confirm or deny02:25
mwhudsonyes you can02:26
khemicalss/checkout/branch02:26
khemicalswrapping head around new nomenclature that overlaps others02:26
mwhudsonbut it doesn't support Range:s so don't use it on anything big...02:26
lifelessyeah, I can appreciate that02:26
lifelessstrictly speaking you could checkout from loggerhead, but it doesn't support writing back to it, so you wouldn't be able to commit -> checkout isn't that useful in that case :)02:27
mwhudsonloggerhead will do bzr+http sooner or later i guess02:32
igclifeless: can you help me with a CHKInventory issue please?03:06
igclifeless: what's the way forward wrt referencing "children" of an InventoryDirectory?03:07
igcit looks like iter_entries() on a  chk-inventory can break because the attribute is now _children, not children, and there's a children() method on the ...03:08
igcChkInventryDirectory class but not one I can see on InventoryDirectory?03:08
igcjam: ^^^03:09
jamigc: I would say we need to add one to InventoryDirectory()03:10
jamwe really want to be able to lazily bring stuff in03:10
igcjam: ok, I'll do that and change the references to .children to .children()03:11
igcjam: sound right?03:11
jamsounds right to me03:11
igcjam: thanks03:11
igcjam: fyi, to see the bug in action, try bzr ls -r-1 on a chk branch and you'll see nothing listed03:12
jaminteresting03:13
jamigc: btw, I just finished another improvement to chk+gc03:13
jamwhich improves inventory compression by 50-100%03:13
igcjam: sweet03:13
jamI'm pushing it up now03:13
=== montywi is now known as montywi|zzz
igcjam: is gcchk255 still the preferred format for me to be benchmarking?03:14
jamigc: I need to do another round of testing myself03:14
igcjam: it souded like you were leaning towards a 127?03:14
jamI might also be cheating more than I realized03:14
jamigc: I have to test *after* compression03:14
jamit can make smaller things become bigger03:14
* fullermd blinks.03:16
fullermdSomething went screwy with pushing multi-initial-rev branches?03:17
* fullermd really needs to watch bugs more closely...03:17
spivfullermd: apparently!03:18
spivfullermd: I was surprised too.03:18
* fullermd is extremely surprised.03:19
fullermdA very large number (quite possibly a majority) of my branches have >1 initial rev.03:19
fullermdI've never seen issues pushing with say a up to 1.5 version spread between my bzr.dev client and the latest-release-mod-upgrade-slack-time server.03:20
fullermdIt's only a blowup, right?  Not a "gee, it worked fine, but it's gonna screw you later"?03:20
spivRight.03:20
spivAnd it's purely a client-side issue.03:21
jamspiv, lifeless: question on the new stream tests03:21
jamif an entry is in "Chunked" encoding03:21
fullermdOh, good.  That leaves me with only 38,849 entries on my worry stack for today.03:21
jamthe "capture_stream()" fails03:21
jambecause "self.assertIsInstance(factory.get_bytes_as(factory_kind), str)"03:21
jamgroupcompress hits this03:21
jambecause it only talks in fulltexts/chunked (so far)03:21
lifelessigc: so as jam says, it needs to stay lazy03:21
lifelessigc: there is a property for children; if the property isn't working correctly there is a bug03:22
jamI would guess that ultimately we want to have gc go the same route as your "knit-delta-closure" patch03:22
lifelessigc: it sounds like something changed in bzr.dev03:22
lifelessjam: yes, knit-delta-closure is roughly the same problem case as gc for streaming network03:22
lifelessjam: I just haven't gotten around to it03:23
lifelessjam: that might be a bug in the test; but generally we don't want any stream returning direct Chunked or Fulltext objects, because they don't have a small network representation03:24
jamigc: for example, I expect 255-way to compress better, because you have a big top level page, and fewer intermediate pages03:28
jamso even though its raw size is slightly larger03:28
jamit may end up smaller post compression03:28
* igc lunch03:32
jamigc: So if you pull the latest groupcompress, you should be able to 'bzr pack'03:34
jamand have it spend far too long with no progress bars03:34
jambut end up with a smaller inventories03:35
igcjam: so just running pack is enough? I don't need to upgrade to another format then upgrade back for example?03:40
jamigc: for this, that should be enough03:40
jamso in my quick test03:40
igclifeless,jam: so I missed the @property bit - make me wonder whether the bug is in the inventory building rather than the inventory lookup?03:41
igclifeless,jam: but lots of stuff *is* working03:41
igcso it's not obvious to me yet where the bug is03:42
jampre-compression, gc+chk16 is 20MB versus gc+chk255 is 31MB, after compression it is 9.5MB versus 7MB03:42
jamso 20MB raw => 9.5MB comp, 31MB raw => 7MB comp03:42
jamwhich makes gc255 better03:42
jamThere are other factors to test, though, so I'll get there03:42
igcjam: any do you expect lookup speed to be much the same? or 255 faster?03:43
igcs/any/and/03:43
fullermdHow relevant are those compression numbers, though?  Aren't you still to-do delta compression or other schemata on them?03:44
jamigc: smaller == less bytes to read, larger fan-out means you filter more keys per pass. So overall, I expect 255 to be better on both counts03:45
jambut expect != measured03:45
jamfullermd: this is one form of delta compressino03:45
jamstill one of the factors to be evaluated03:45
fullermdWell.  But does it have the same properties as $FINAL, though.03:46
jamit should at least have *similar* properties03:48
igcjam: pulled groupcompress rev 50 and kicked off that pack now03:48
lifelessigc: So yeah, there is a property; it should work; there are tests - perhaps the input is flawed in some way. Cross checking by using iter_entries_by_dir or something might be enlightening03:52
jamigc: wait03:52
jamI just found a quick bug when there are signatures03:53
jamI'll have a fix in just a sec03:53
igcjam: ok, I'll stop it03:54
jamI'll also get a quick progress on the texts done03:54
igclifeless: sure. I tried a quikc corss check using entries but it's not defined on CommonInventory, just Inventory, so I might move that up a level too03:55
lifelessigc: when moving up just take the time to check it uses public interfaces not private attributes03:56
igclifeless: sure03:58
jamigc: revno 52 is available04:00
jamshould give you some idea of progress now04:00
jamI also noted that converting is slower than 'bzr pack', which is good04:00
jamwell, good that 'pack' is faster :)04:00
igcjam, lifeless: so I'm closer t finding that children() bug - the "slow path" in CHKInventoryDirectory.children() gives a good result while the code after that if statement finds no children04:10
jamlifeless: so here are some hard numbers for including/removing 'label' and 'sha1' sum fields.04:13
jamfor gc+chk255, the inventories go from 8.3MB compressed down to 7.0MB compressed04:14
jamthe texts go from 11.0MB => 9.6MB04:14
jamor approx 107 bytes per object for inventories04:15
jamand 202 bytes/object for texts04:16
jam[compressed]04:16
jamthough interestingly enough, after a 'bzr pack', the final inventories shrunk dramatilaly04:20
jamas it is now 6.5MB rather than 8.3 (so w/ labels is smaller than w/o labels)04:21
jamthough after 'bzr pack' the *text* size went up, 11.0MB => 11.3MB.04:22
mwhudsonhm04:42
mwhudsonin a test, i want to create a (local) branch, then open it over the smart protocol04:43
mwhudsonwhat's the easiest way to do this?04:43
mwhudsonnm, got something working04:46
jmllifeless: I deleted your subunit/filter merge proposal and created it again so that I could blog about something more easily05:04
jmllifeless: please ignore the mail :)05:04
jamigc: a quick update. revno 53 drops it by another 2MB, so now 4.4MB down from 6.505:10
Stanlinhow to undo last changes in my directory05:11
jamStanlin: "bzr revert"05:12
jamlifeless: woot!. Surprisingly, changing the grouping had a much bigger impact than I expected.05:19
Stanlinthanks05:19
jamBy creating more groups, I'm down to 1.5MB, which is actually finally *smaller* than the knit source05:19
jam(1.8MB)05:19
jamI'm going to do a conversion from scratch to confirm, but it looks good so far05:19
jam(raw size is identical, etc)05:19
jamigc: You may want to stop it and use revno 5505:20
jmljelmer: so, it's still running05:20
jmljelmer: "copying revision 1405/6696" (I killed it and restarted it at one point, in a bout of nervous fear)05:20
eferraiuoloI was wondering if there was an appropriate way to delete a branch that's in a shared repo?05:37
eferraiuoloif I have /repo and /repo/b1 and b1 branch is using the shared repo for storage, I've just been deleting the b1 directory... Does that leave un-wanted cruft around in my shared repo?05:38
eferraiuoloIs this where the pack command comes in? I guess I'm just unsure since there isn't a remove-branch from repo command...05:39
poolieeferraiuolo: there's a bzr gc plugin that will remove it05:40
poolienormally people just leave it there unless it's unreasonably big05:40
eferraiuolopoolie: so there is some cruft left around in my repo if I just delete the branch dir?05:41
poolieyes05:41
eferraiuolopoolie: thanks. I'll look into the gc (garbage collection??) plugin05:42
poolieyes05:42
poolieigc, are if you're still here, is http://pastebin.ubuntu.com/123652/ correct/reasonable?05:43
poolieigc, also, i was wondering about encoding eg the project name, scenario name, script name into the csv file05:43
igcpoolie: back from reviewing some chk code06:13
igcpoolie: that pastebin looks fine bar lines 54/55 which is a partial sentence06:13
igcpoolie: I'm open to any encoding suggestions, though the current output of 'just a table' has value in it's simplicity06:15
=== mark1 is now known as markh
pooliei was basically thinking about putting just a couple of other heading rows06:23
poolielike tool, version, project, scenario06:23
pooliesuite06:23
igcpoolie: sure06:34
poolieit shouldn't break anyone using them in eg  a spreadsheet06:52
poolieas long as they can cope with there being nonnumeric data06:53
poolieand it'll make it more selfcontained06:53
vilahi all07:07
igchi vila07:18
vilahi Ian :)07:19
berto-abentley: hi.07:35
thropehelp - tried to upgrade bzr and now get: bzr: ERROR: The API for "<module 'bzrlib' from '/usr/lib/python2.4/site-packages/bzrlib/__init__.pyc'>" is not compatible with "(1, 9, 0)". It supports versions "(1, 11, 0)" to "(1, 12, 0)".08:00
thropebut bazaar is 1.12 - I don't know where 1.9 is coming from08:00
luksfrom a plugin, probably08:03
thropedeleting bzr-lib seemed to work08:03
thropenow when I try to update bzr-svn directory I get bzr: ERROR: Not a branch: "http://bazaar.launchpad.net/~jelmer/bzr-svn/trunk/"./      0kB08:04
igcnight all08:16
vilathrope: what do you mean by 'deleting bzr-lib' ? bzrlib ? Where did you delete that ?08:19
thropevila: site-packages08:20
thropeanyway thats ok now - but it seems bzr-svn and bzr-rebase that I had a branch of have moved or something so I just gave up and downloaded a tar ball08:21
vilathrope: So you deleted the bzrlib fron you site-installed packages (but you may still have the bzr script somewhere). What OS are you using ?08:22
thropevila: centos - its really fine now - I had installed a new version without manually deleting the old one08:22
thropeso i deleted the old one (script and site-packages) and reinstalled the new one08:22
vilathrope: ok08:23
=== montywi|zzz is now known as montywi
=== serg is now known as serg|phone
Spazis it possible to allow checkins to bzr via http?10:45
finitesetI want to delete Bazaar from one of my projects completely. How do I do that?10:45
ollie_hey what is the parameter for adding a dir but not recursively10:46
=== ollie_ is now known as Ollie_R
luksbzr help add is hard to read?10:47
Ollie_Rluks: nope :)10:48
Ollie_Rluks: thanks10:48
Spazfiniteset, what do you mean?10:48
=== serg|phone is now known as serg
finitesetSpaz: I have this folder for one of my projects which is a Bazaar branch. It has all the .bzr stuff in it. Now I want to get rid of Bazaar from the folder. I was wondering if I can use a Bazaar command to remove Bazaar from the folder.10:51
Spazjust rm -rf .bzr10:51
Spazno special commands needed10:51
finitesetSo all Bazaar files are in .bzr folder?10:52
finitesetits done thanks10:54
vilaSpaz: commit needs write access, you need to either install a smart server or configure DAV and use the webdav plugin10:55
Spazhm ok10:55
vilaThe former is preferred for performance reasons, the later exists for people who just can't administer their http server10:55
vilaSpaz: what is your server ?10:56
Spazit's internal10:56
Spaz:p10:56
Spaz(not publically accessible)10:56
vilaSpaz: or more to the point, what is available on this server ? bzr+ssh it easy to setup, or even bzr: if it's really internal on you don't need to implement access rules10:57
vilas/internal on/internal and/10:57
Spazwell access rules will still be necessary10:57
Spazbzr+ssh is a possibility10:57
Peng_If you don't mind configuring ssh, bzr+ssh is probably best.10:59
vilaSpaz: Just as Peng_ said :-)10:59
wysekHi, I have a user-question. Is this the proper place to ask?11:49
luksI'd say it's *a* proper place11:52
LarstiQassuming it's about bzr :)11:53
wysekOk. I have a bzr repo with some revs. I need to commit these into svn repo.11:53
wysekIt started as a normal bzr repo; there is no module/branch in the svn repo yet, I have to create it11:54
wysekhow should I do it?11:54
LarstiQwysek: I'd use the bzr-svn plugin11:55
wysek(well, I want to test it before I commit to svn, so I did: svnadmin create ~/repo)11:55
LarstiQwysek: how did you install bzr?11:55
wysekLarstiQ: I had bzr from ubuntu, but 10min ago I upgraded to latest stable11:55
LarstiQwysek: via the ppa?11:57
wysekyes11:57
wysekassuming a clean svn repo is at ~/svn and my bzr repo is at ~/bzr/$dir.11:57
wysekI need to commit $dir to ~/svn/$dir11:58
LarstiQwysek: (with bzr-svn installed), afaics that should be `cd ~/bzr/$dir; bzr push ~/svn/$dir`11:58
* LarstiQ goes to work, later11:58
wysekgreat, I've just encountered an "internal error"12:00
awilkinswysek: You want the dpush command12:04
awilkinsPushing new branches just off "push" doesn't work yeyt12:05
awilkins*yet12:05
wysekok, I'll try12:07
wysekhmm12:08
rcmoranobtw, does anybody knows if it is technically possible to push a complete branch to a svn repo served via http and preserve the commiters in the log??12:08
wysekwysek@scout:~/bzr/radardaemon$ bzr dpush /home/wysek/svn/radardaemon12:08
wysekbzr: ERROR: Not a branch: "/home/wysek/svn/radardaemon".12:08
rcmoranoi have been trying hard with bzr-svn12:08
rcmoranoeven hacking it a bit12:08
rcmoranobut i always got something like i wasnt allowed to change the revprop on that scenario12:09
rcmoranoscenario = context = using post-revprop-change hook in server side12:11
wysekwysek@scout:~/bzr/radardaemon$ bzr dpush /home/wysek/svn/radardaemon12:15
wysekbzr: ERROR: These branches have diverged. Use the merge command to reconcile them.12:15
wysekwysek@scout:~/bzr/radardaemon$ bzr merge /home/wysek/svn/radardaemon12:15
wysekbzr: ERROR: Branches have no common ancestor, and no merge base revision was specified.12:15
wysekawilkins: what now? :)12:16
wysek(I did svn mkdir file:///home/wysek/svn/radardaemon before that)12:16
awilkinsAre you pushing the trunk branch?12:25
awilkinsOr a branch branch?12:25
awilkinswysek: You are creating a new folder, so push to the URI that makes sense for that new folder ; i'd go for12:26
awilkinsbzr dpush /home/wysek/svn/radardaemon/trunk12:26
wysek(I don't know much about svn, trunk...)12:26
awilkinsThe usual convention is   /project/trunk|tags|branches12:27
wysekbzr: ERROR: Not a branch: "/home/wysek/svn/radardaemon/trunk".12:27
wysekawilkins: and trunk|tags|branches are just dirs?12:27
awilkinsOops, make that into a file:/// URI12:27
wysekok12:27
awilkinswysek: Yes, everything in SVN is a "cheap copy"12:27
wysekthe same12:28
awilkinswysek: There's no technical distinction between tags and branches, it's just convention12:28
* awilkins looks at the scripts he has doing thing12:28
awilkinsTry svn-push12:29
wysekactually I need to commit to some svn repo: svn://repo/trunk/<project>/radardaemon/12:29
wysekand I'm just testing it locally12:29
awilkinsYuck, they have the _other_ convention12:29
awilkinsI thikn it's svn-push, not dpush12:29
awilkinsAt least, that's what I've got here - I've been converting old archives into bzr repos and then SVN repos12:30
wysekso first I need to svn_mkdir $SVN/trunk/12:31
wysekand svn_mkdir $SVN/trunk/radardaemon/ ? or just the trunk?12:31
awilkinsI'm not so sure about that layout12:31
awilkinsBut hey, it's a test12:31
wysekwysek@scout:~/bzr/radardaemon$ bzr svn-push file:///home/wysek/svn/trunk/12:31
wysekInitialising Subversion metadata cache in /home/wysek/.bazaar/svn-cache/921462df-d7b4-450a-9d4b-2ef3c14a844f12:31
wysekbzr: ERROR: These branches have diverged. Use the merge command to reconcile them.12:32
wysek*diverged* :D12:32
awilkinsAre you pushing to a folder that exists?12:32
awilkinsrm -rf /home/wysek/snv12:32
awilkinssvnadmin create ~/svn12:32
awilkinsmkdir ~/svn_template12:33
awilkinsmkdir ~/svn_template/trunk12:33
awilkinsmkdir ~/svn_template/trunk/project12:33
awilkinssvn import svn_template file:///home/wysek/svn -m "Initial folder structure"12:34
awilkinsbzr svn-push -d ${bzr_branch} file:///home/wysek/svn/trunk/project/radardaemon12:34
* awilkins crosses fingers12:35
wysekInitialising Subversion metadata cache in /home/wysek/.bazaar/svn-cache/52c0211b-6b7a-4d98-8a1d-2bbbabca63ca12:35
wysekbzr: ERROR: Prefix missing for trunk/project/radardaemon; please create it before pushing.12:35
wyseksvn import does not need commit?12:36
jelmerwysek, what version of bzr-svn are you using?12:36
awilkinsNot afaik12:36
* awilkins cheers jelmer12:36
jelmerwysek, iirc older versions of dpush don't support creating new branches12:36
wysek0.5.0-112:36
wysekok12:37
wysekit almost worked12:38
wysek*** Bazaar has encountered an internal error.12:38
wysekit pushed 24/33 revisions12:38
wysekthe error was:12:38
wysekbzr: ERROR: subvertpy.SubversionException: ('Attempted to get textual contents of a *non*-file node', 160017)12:38
wysekhmm, there is a link in my repo, maybe that's the problem12:39
jelmerwysek, does the problem occur if you push repeatedly?12:40
wysekjelmer: yes12:40
wysekit seems it "sees" that it has pushed some revs and goes just to the error12:40
jelmerwysek: Can you pastebin the traceback?12:40
wysek(no progress bar)12:41
wyseksure12:41
jelmerback in 10m12:42
wysekhttp://pastebin.com/m72316e4c12:43
wysekok it has nothing to do with the link as it stopped 6 revisions before the link appeared12:44
wysekin the revision it stopped I have added a binary file12:46
wysekand the error is: SubversionException: ('Attempted to get textual contents of a *non*-file node', 160017)12:46
wyseknote _textual_12:46
wysekseems like a bug:)12:47
jelmerwysek, please run with BZR_PDB=1 set12:49
jelmerthat should land you in a debugger12:49
wysekyep12:50
jelmerwysek, after that, please run "up" followed by "print new_inv.id2path(child_ie.file_id)"12:50
wysek(Pdb) up12:51
wysek> /usr/lib/python2.5/site-packages/bzrlib/plugins/svn/commit.py(319)dir_editor_send_changes()12:51
wysek-> modified_files[child_ie.file_id](child_ie), child_editor)12:51
wysek(Pdb) print new_inv.id2path(child_ie.file_id)12:51
wysektests/src/radardaemonTest/radardaemonTest.csproj12:51
wysek(hmm, this is not thah binary file I was talking about)12:51
jelmerwhat about "print new_inv.revision_id" ?12:52
wysekNone12:52
jelmerwysek, what about "print base_revnum" ?12:53
wysek2412:53
=== barry-away is now known as barry
jelmerwysek, does that file exist in svn, and is it actually a file ?12:53
wysekjelmer: it does not exist as the push process threw an exception12:55
wysekbtw, in bzr_last_rev it does not exist too, as I removed it from the bzr repo12:56
jelmerwysek, so "print child_ie.file.id in base_inv" returns False?12:57
wysekafter up?12:57
wysek*** AttributeError: 'InventoryFile' object has no attribute 'file'12:58
wysekok12:58
jelmersorry12:58
wysekshould be file_id12:58
wysekreturns True12:58
jelmeryeah12:58
jelmerwysek, that suggests the file should already be there in the svn repository12:59
wysekwell, the repo was empty before the svn-push13:00
jelmerwysek: but it should exist now, since the push has partially succeeded13:00
wysekwhich file? radardaemonTest.csproj?13:01
jelmerwysek, yep13:01
wysekwell, it sort of exists. but it's in a different dir and it's name is different too.13:01
wysekthat is, radardaemonTest.csproj is the name in the last_bzr_rev (and the desired name)13:02
wysekbut in rev24 it is named differently and is in a differrent dir13:02
jelmerwysek, 24 would be the name of the revision in svn13:03
wysek(I've heard svn does not support filename changes or mv in a "normal" way)13:03
jelmerwysek, not the bzr revno13:03
wysekyeah, they differ by 113:03
wysekI mean the revno the svn-push process stopped13:03
wysekso what now?13:04
wysekany ideas?:)13:04
jelmerwysek, is this bzr repo public?13:07
wysekjelmer: no13:08
jelmerwysek, so the "svn log -v" output doesn't match the "bzr log -v" output for the revisions already pushed?13:08
wysekfor the revs pushed it matcheds13:11
wysek*matches13:12
jelmerwysek, do the contents of that particular file match?13:13
wysekthe rev it stopps is full of binary_files add and files moves13:13
wysekjelmer: yes13:14
wysekok I've found sth13:15
wysekin bzr_rev 24 there is :13:15
wysekrenamed: radardTest => tests/src/radardaemonTest/radardaemonTest.csproj13:16
wysekremoved: radardTest/radardTest.csproj13:16
wysekas I remember I did some renames automatically and I did a mistake13:17
jelmerwysek, ah, that may be it13:17
wysekI renamed a dir into a filename13:17
wyseksomehow I got the file back13:17
jelmerwysek, so13:18
jelmerwysek, radardTest is a directory13:18
jelmerwysek, and tests/src/radardaemonTest/radardaemonTest.csproj is a file ?13:18
wysekright13:19
jelmerwysek, please file a bug about this13:19
jelmerwysek, I'll see if I can commit a test + fix for this this afternoon13:19
wysekis it a bug with bzr or bzr-svn??13:19
wysekI think its bzr bug as it shouldn't allow me such a change, I think13:20
wysek(or at least, without a warning)13:20
jelmerwysek, it's a bzr-svn bug13:25
jelmerI think such a change is allowed13:26
jelmerit's not a really common kind of change though..13:26
wysekI don't know what bzr actually did as the order of file/dir name changes is important in this case13:27
wysekif bzr did well then it's a bzr-svn bug :)13:27
wysekI'll try to recreate the bug first, and then file it13:27
wysekok I recreated the bug13:37
wysekbut13:37
wysekI still think it's a bzr bug13:37
wysekwhat I did is:13:37
wysekI had: dir1/ dir2/ dir2/file113:38
wysekthen I did: bzr rm dir2/file1 ; bzr mv dir1 dir2/file ; rm -r dir2/file ; echo "new file contents" > dir2/file13:38
wysekthen bzr commit13:39
wyseklog says:13:39
wysekremoved: dir2/file113:39
wysekrenamed: dir1 => dir2/file113:39
wysekmodified: dir2/file113:39
wysekit does not say that a dir changed into a file :)13:39
abentleywysek: When you did "bzr rm", you told bzr that you deleted the file.  If you wanted to change the file type, you should have just used "rm".13:43
wysekabentley: I did that by a mistake. I didn't want to revert the changes as there were too many changes.13:44
vilamthaddon, spm, herb: PQM stucked again, should be the moon...13:47
vilaherb: I don't know if you changed the way you kill whatever process but the yesterday occurrence was slightly different than usual13:47
herbvila: how so?13:47
vilathe merge succeeded, yet the public branch didn't contain it... is pqm using some sort of local branch and push regularly ? (The next sumbision went well and made the first merge apparent)13:48
wysekjelmer: I've just submitted a bugreport13:50
herbvila: that's strange. I don't know what would have caused that.  pqm should build a fresh tree every time from the public branch.13:50
jelmerwysek, thanks13:50
vilaAlso, I think poolie has a fix for it in the bzr-email plugin but 1) I'm not sure, 2) I don't really know what should be done to get that fix taken into account on pqm (but don't spend time investigatin until we at least try that fix)13:50
jelmerabentley, a kind change while keeping the file id is allowed inside bzr though, right?13:51
jelmerabentley, even if not recommended13:51
abentleyjelmer: Sure thing.13:51
wysekok thanks a lot, cu guys13:54
herbvila: should be fixed now.13:56
vilaherb: sounds like some thing happened, http://bazaar-vcs.org/bzr/bzr.dev/ doesn't mention revno 4064 (revision-id:v.ladeuil+lp@free.fr-20090227084553-ritia8ukxh8i25po)13:59
vilas/some/same/13:59
vilagrrr13:59
vilaherb: yet, I'm pretty sure the merge succeeded, is there some mirroring between pqm and bazaar-vcs.org ?14:00
jimmy_deananyone know if it's possible to push a local bzr branch up to a central repository with tortoisebzr?14:06
barryjelmer: hi!  it's morning here in dc, so i want to try to find some time today to get bzr-svn 0.5.2 up on code.py.org14:06
herbvila: no.  pqm commits to the public branch at the end of the run if the test suite completes successfully. It *may* do that after the email is sent though. I don't know pqm internals well enough to comment on that.14:07
vilaherb: ok, thanks for the help anyway. I'll have to resubmit with crossed fingers :-/14:08
jimmy_deanit doesn't seem like the functionality is in there yet and I just want to make sure I didn't miss it somewhere14:08
RaceConditionis it possible to have bzr generate patches to reverse existing patches?14:17
RaceConditionI wan't to revert the effect of a certain patch14:18
luksbzr merge (X-1)..X14:19
lukser14:19
luksbzr merge -r (X-1)..X14:19
luksactually, still wrong14:19
luksbzr merge -r X..(X-1)14:19
RaceConditionand I can also do bzr merge -r (X-n)...(X-m)?14:20
luksyou can use any revision range14:20
RaceConditionand the range is inclusive on both ends, right?14:20
RaceConditionso when I do -r 19..9, all revisions from 9 to 19 including 9 and 19 are reverted?14:21
luksif you are talking about revisions, then yes14:21
RaceConditionyeah14:21
luksit will take revision 19 and revision 914:21
luksand compare them14:21
RaceCondition$ bzr merge -r 19..914:21
RaceConditionbzr: ERROR: No location specified or remembered14:21
luksuse . as the location14:21
RaceConditionok14:22
RaceConditionand is it also possible to delete existing patches?14:25
luksbzr doesn't have patches, you mean revisions?14:25
RaceConditionlooks like the 19..9 range was a bit wrong because some changes were not reverted14:25
RaceConditionrevisions, yeah, same thing..14:25
luksno, it's all immutable14:25
luksthe point is that revisions are states, not changes14:26
luksmaybe the range was incorrect14:26
RaceConditionit's all immutable? like SVN?14:26
RaceConditionthat's bad14:26
luks"more" immutable than SVN :)14:26
RaceConditionis there just some way I can simply return to a specific revision?14:27
vilaherb: right, this is getting more obscure by the minute :-) pqm now refuses to merge saying there is nothing to merge, yet the branch it is asking to merge contain my revisions :-) Oh well, I think we need to escalate that :) lifeless ?14:27
luksdo you want a new branch completely ignoring the old revisions or the existing branch changed to have files like in the old revisions?14:27
RaceConditionluks: looks like the range is non-inclusive14:28
RaceCondition19..9 means 19-10 really14:28
luksRaceCondition: because you are thinking in changesets, not revisions14:28
luksthe -r option specificies revisions14:28
RaceConditionwhatever14:28
RaceConditionI mean, even revision wise, this could still have been inclusive14:29
luksthey are14:29
luks19..9 does exaclty this: take revision 19, take revision 9, compare them and apply the reversed patch14:29
herbvila: what was your change?14:31
vilarevno 4064 (revision-id:v.ladeuil+lp@free.fr-20090227084553-ritia8ukxh8i25po)14:31
herbvila: was that a change to the NEWS file?14:33
vilaherb: revno 4063 v.ladeuil+lp@free.fr-20090227082909-6i864fof6qyksm87 includes a change to NEWS, 4064 fixed a 2.4 compatibility bug in bzrlib/transport/ftp/__init__.py14:35
vilathe submission includes both14:36
herbvila: ok.  I'm going to get the tree in a state where you can submit 4063 and 4064 again.  give me a couple of minutes.14:37
vilaherb: ok, so the tree is refreshed instead of created from scratch then ?14:38
herbvila: it seems that way.14:38
jammorning all14:45
beunohiya jam14:45
barryjam: morning!14:46
barryjelmer: any possibility of getting bzr-svn 0.5.2 into the ppa?  i'd really love to update code.py.org today14:47
jamhi beuno, barry14:47
herbvila: try to submit now. it should work.14:48
vilaherb: thanks, done14:49
jelmerbarry, I've just uploaded to the PPA (hardy only)14:50
barryjelmer: perfect!  let me see if i can grab it.  thanks14:50
jelmerbarry, it'll take some time to build14:50
barryjelmer: right!  okay, i'll wait a bit, thanks14:50
jelmerIs there any chance brisbane-core is going to make it into 1.13?14:52
jamjelmer: I think we are targetting late March, after the next get-together14:53
jelmerah, hmm14:53
jamI *just* got it to the point where inventory compression is reasonable14:53
jelmerso the OOo folks won't be able to take that into account14:53
jamwe've had excuses to push things earlier based on real-world needs14:53
jambut I think we'd like to make this one a bit more polished14:54
jamWe might have it as a '--development' in 1.13, but I don't think OOo would count that, right?14:54
jelmerI have no idea14:54
jelmerthey said "released versions", so I guess not14:55
jelmerconverting to 1.9-rich-root is a real PITA, took me a whole night to do 30k revisions14:56
=== ja1 is now known as jam
barryjelmer: ROCK!  time bzr pull on the 2.5 branch: 1m8s :)15:38
jelmerbarry: :-)15:39
barryjelmer: thanks so much.  i'm wondering if i should try svn-import again?15:39
barryjelmer: i have branches = ... in my subversion.conf file, which should limit to just the branches i care about, right?15:40
barryjelmer: that does not include the 2.0 branch which we were having problems with15:40
jelmerbarry, yep15:40
jelmerbarry, in that case, I think it should work15:40
barryjelmer: let's give it a shot!15:41
jamjelmer: do you know if the caching changes I gave you had a perf impact for importing something like OOo?15:57
jelmerjam, I haven't tried yet15:57
vilaherb: submitted and... stucked again, not my day :-)16:00
herbvila: boo16:01
herbvila: ok. I'll see if I can clear it up.16:01
* LarstiQ gets confused trying to preserve merged revisions with bzr-svn pushing back to svn16:02
rbriggsatuiowais there a quick way I could find what revision I deleted a file in?16:02
LarstiQrbriggsatuiowa: other than looking at `bzr log -v`?16:04
vilaherb: I submitted once again but with a different public branch, let's see if it works better16:04
herbvila: I was going to suggest breaking it up into two commits to see if one part or the other is causing a problem.16:05
herbvila: but we'll go ahead with this.16:05
rbriggsatuiowayeah - my bzr log -v is dragging down my machine16:06
vilaherb: I usually submit a single revision and still encounter the problem, so I'm pretty sure this isn't related16:06
herbok16:07
=== Leonidas is now known as Leonidas1880
=== Leonidas1880 is now known as Leonidas1980
=== Leonidas1980 is now known as Leonidas
barryjelmer: ping17:48
jelmerbarry, pong17:49
barryjelmer: hi.  bzr svn-import pulled in too much it seems17:49
jelmertoo much?17:50
barryjelmer: well, i wanted to limit it to updating only the 5 or so branches that we're publishing through bzr, but it pulled in everything under http://svn.python.org/projects17:51
barryjelmer: i guess what i'm trying to mimic is say 'bzr pull in each of the 5 branches i care about' and ignore everything else in that svn repo17:52
jelmerbarry, what was the output from svn-import exactly?17:53
barryjelmer: it didn't really output much except for the progress bar, which i didn't watch too closely17:54
jelmerbarry, there should be a line saying what repository layout it was going to use17:54
barryjelmer: if it did, it didn't survive my control-C :/17:56
barryjelmer: but the subversion.conf now has branching-scheme = trunk1 branching-scheme-guess = trunk117:56
jambarry: sounds like it didn't see your specific listing request17:57
jamor I had you format it wrong, etc17:57
barryjam, jelmer let me pastebin what i've got17:57
jelmerah, of course..17:58
barryjam, jelmer http://pastebin.ca/134888417:58
jelmerbarry: branches = * won't work with v3 mappings17:59
barryah17:59
barrysounds like i really want to update to v4 ;)17:59
barrywell, for now i think i'll just cron a 'bzr pull' in each directory separately17:59
barryand when/if the experiment ends, i'll do things the right way at that time18:00
barrywith bzr-svn 0.5.2, those are very quick now! :)18:00
barryjam: we talked about doing the bzr pack.  should i do that in the shared repo directory or in the individual branch directories?18:01
barry<barry> ah18:02
barry<barry> sounds like i really want to update to v4 ;)18:02
barry<barry> well, for now i think i'll just cron a 'bzr pull' in each directory separately18:02
barry<barry> and when/if the experiment ends, i'll do things the right way at that time18:02
barry<barry> with bzr-svn 0.5.2, those are very quick now! :)18:02
barry* thekorn_ (n=markus@a89-183-70-151.net-htp.de) has joined #bzr18:02
barry<barry> jam: we talked about doing the bzr pack.  should i do that in the shared repo directory or in the individual branch directories?18:02
jambarry: so first off, I see your repo got quite a bit bigger, is this because of the extra branches? or is there just a lot of stuff going on?18:03
jamand you run 'bzr pack' at the root of the repo18:03
barryjam: i think it's because of all the extra branches i got with svn-import18:03
barryjam: i guess there's no way to clear that out?18:03
jambarry: well, branch out to another repo, and then bring it back, but not easily18:04
jamfor now, we'll just live with it18:04
barryjam: dang.  yeah18:04
jamit shouldn't impact things *too* much18:04
jambarry: though I seem to see about 200MB *more* data that was just brought in18:05
jamperhaps there is a mapping issue causing the data to be copied 2x ?18:05
jamugh18:09
jambarry, jelmer: I see a mix of "svn-v3-trunk1" and "svn-v3-single1" in the index files18:10
jamwhich certainly sounds like a mismatched conversion18:10
barryjam: it's certainly possible that i f'd up somewhere ;)18:10
barryjam, jelmer the pack is finished18:11
jambarry: well, it just sounds like you effectively have 2 different conversions18:11
jamstored in the same repo18:11
jamwhich is a bit less than ideal18:11
barryjam: that doesn't sound good ;)18:11
jamsince instead of being a 200MB repo, it is a 400MB now18:11
barryjam: that could affect branch times for clients, right?18:11
jambarry: so we should only be copying half the data, but it means seeking through the other data as we do it18:12
jamjelmer: do you know how you would get "svn-v3-single1" mapping?18:13
jamIs that what you get when you do "bzr branch" instead of "bzr svn-import" ?18:13
jelmerjam: Yes, that's what bzr-svn will use if the branching scheme it's determined doesn't match18:13
jambarry: so looking closer, it seems the only extras might be:18:14
jamsandbox%2Ftrunk%2F2to318:14
jelmerjam: (also specific to v3, v4 will always create the same svn-v4 mappings)18:15
jamis that one of the important branches?18:15
barryjam: no, that's one of the ones i don't care about and deleted after killing the svn-import18:15
jambarry: so what are the *specific* branches you are interested in?18:16
jam(I'm a bit confused between '2.6/' and 'experimental/2.6' and some other such differences)18:16
barryjam: 2.5, 2.6, 3.0, py3k, trunk18:17
jambarry: and probably the 'users/'?18:17
barryjam: the experimental stuff is not the svn mirrors18:17
jam(though I assume those are native bzr branches)18:17
barryjam: right, users too18:17
barryi guess we care about experimental but i don't think anyone's using it afaik18:17
barryi don't even know what shared is for18:17
=== thekorn_ is now known as thekorn
barryjam: perhaps we should get rid of experimental and shared18:18
vilaherb: sorry for the delay, my last submission (using an http: public branch instead of a lp: one) went through18:30
=== beuno_ is now known as beuno
herbvila: good news18:46
vilaherb: I'll stick to that until I'm in a better position to diagnose the problem, I'm not sure using http is the right solution (I seem to remember having problems with that too, but my memory is blurry (it's hard to keep straight facts which such transient bugs))18:48
luke-jrHow can I clear the related branches (pull, push, submit) info?19:16
james_wluke-jr: there's currently no way through the UI19:19
james_wluke-jr: you can delete the entries from the config files19:19
james_w.bzr/branch/branch.conf or ~/.bazaar/locations.conf19:19
Spazhm20:11
tyhicksI'm trying to figure out how to get a unified diff with commit message out of bzr.  Google suggests that it it isn't possible, is that still the case?20:21
LarstiQtyhicks: you'll have to be a bit more specific. diff and log produce that output, so what about that isn't good enough?20:22
LarstiQtyhicks: or do you mean log -p?20:23
tyhicksLarstiQ: Well those are 2 different commands - maybe I'm being selfish in wanting it done in a single command?20:23
LarstiQtyhicks: you're not being selfish20:23
tyhicksLarstiQ: I need to post a patch to a bugzilla ticket20:23
LarstiQtyhicks: oh, in that case, use `bzr send`20:24
LarstiQtyhicks: assuming the project uses bzr, maybe I shouldn't have assumed so?20:25
tyhicksLarstiQ: Yes, my project uses bzr20:25
LarstiQtyhicks: this would be easier if I had enough context information :)20:25
LarstiQtyhicks: ok, then `bzr send` sounds like the way to go20:26
Spazi'm having issues with bzr svn-import20:26
Spaz[root@ind-prod003 /home/awos-bzr/repo]# bzr svn-import https://awos.svn.sourceforge.net/svnroot/awos .20:26
Spazbzr: ERROR: Not a branch: "https://awos.svn.sourceforge.net/svnroot/awos/".20:26
* tyhicks runs off to play with bzr send20:26
LarstiQSpaz: is bzr-svn listed in `bzr plugins` ?20:26
Spazjust svn20:27
LarstiQright20:27
LarstiQSpaz: bzr: ERROR: [Errno 0] Path 'https://awos.svn.sourceforge.net/svnroot/awos/' is not canonicalized; there is a problem with the client.20:34
LarstiQSpaz: is what I get20:34
Spazhm20:35
tyhicksLarstiQ: I'm still missing something with bzr send. I've already written up a nice commit message - but bzr send doesn't seem to include it in the unified diff.20:37
LarstiQtyhicks: the produced bundle actually includes all metadata20:41
LarstiQtyhicks: so you can bzr pull/merge that file20:41
tyhicksLarstiQ: But that bundle means nothing to the package maintainer who is viewing the bugzilla ticket20:42
tyhicksLarstiQ: No worries, I piped bzr diff to a file and copied the commit message from bzr log to the top of the diff. That doesn't take too long to do by hand20:43
LarstiQtyhicks: I thought you said the project was in bzr?20:43
tyhicksLarstiQ: It is in bzr, but this is an external bug tracker and people viewing the bug need to see the commit message, not the bzr bundle20:44
LarstiQmaybe I'm too tird to make sense of this20:44
LarstiQtyhicks: so what I think the maintainer would do, is bzr pull url/to/bug/tracker/attachement20:45
LarstiQtyhicks: and get your changes20:45
LarstiQtyhicks: no monkeying with diff and patch20:45
Spazgrr20:45
LarstiQtyhicks: but if you want to do things manually, look at `bzr log -p` from 1.12+20:45
Spazwhat's the best (most reliable) way to migrate a bzr repository to svn20:46
Spazi can't make a dump unfortunately20:46
Spazas the repo is hosted on sourceforge20:46
LarstiQSpaz: svn->bzr or bzr->svn?20:46
SpazLarstiQ, svn->bzr20:46
LarstiQSpaz: I would use bzr-svn20:46
tyhicksLarstiQ: They could do a pull, but it would be nice if they could simply view the patch and commit message in a vcs agnostic way in the bug ticket20:46
Spazthat requires a dump20:46
Spazi can't get a dump as aforementioned20:47
tyhicksLarstiQ: Thanks for the help, I will take a look at bzr log -p as well20:47
LarstiQSpaz: it doesn't, are you thinking of svn2bzr?20:47
LarstiQtyhicks: hmkay, I don't understand your use case then20:47
LarstiQSpaz: it does seem like the svn repo is acting up20:48
Spazooh, apparently i can get an svn dump via rsync20:49
Spazhm20:49
radixyeah, bzr-svn doesn't need an SVN dump20:49
SpazLarstiQ, i tried bzr-svn but it gave me errors20:49
Spazand an inconsistent repo which made bzr reconcile crash20:50
LarstiQjelmer: ^^20:50
tyhicksLarstiQ: The use case is that not everyone uses bzr and lp. Sometimes individual patches have to be carried by maintainers, patches need to be shared through email, etc.20:51
tyhicksLarstiQ: I was just looking for a vcs agnostic way to share a diff and the commit message I already wrote for it20:52
LarstiQtyhicks: That I get, but doesn't match my understanding of what you described.20:52
LarstiQtyhicks: well, log -p for the simple case then20:52
tyhicksLarstiQ: cool, thanks again!20:52
LarstiQtyhicks: little bit more involved if you need to roll up more than one revision20:52
jelmerSpaz: If you can make bzr-svn 0.5.x do that, I'd be very interested in a bug report..20:56
LarstiQjelmer: I can make 0.5.x do that20:57
LarstiQjelmer: oh, depends on what you mean with 'that'20:57
LarstiQjelmer: bzr ls 'https://awos.svn.sourceforge.net/svnroot/awos/'20:57
LarstiQjelmer: for the canonicalized path20:58
LarstiQand now I'm going to bed, ciao20:58
jelmerLarstiQ, the making reconcile crash20:58
LarstiQjelmer: that, I don't know how to do20:58
Spazjelmer, i'm using 0.5.220:59
Spazjelmer, atm it doesn't work on my fbsd box, it works fine on my linux box but it results in a corrupted repo20:59
jelmerSpaz, public repo ?20:59
Spazthe repo isn't public20:59
Spazbut i can give you a tarball20:59
Spaz(well, not public yet, getting it ready)21:00
jelmerI'd be interested in a copy of the svn repo21:00
jelmerNot aware there are any corruption bugs left21:00
Spazjelmer, https://awos.svn.sourceforge.net/svnroot/awos/, or get the raw repo by rsync -az awos.svn.sourceforge.net::svn/awos/ /foo/bar/21:02
jelmerLarstiQ, fixed that one21:04
jelmerSpaz, imports fine here, at least trunk21:06
jelmerSpaz, what exactly goes wrong on your end?21:07
=== thumper_laptop is now known as thumper
Spazhm21:08
Spazjelmer, http://pastebin.ca/134902621:09
Spazon checkout21:09
jimmy_deanok, so my co-worker had bzr delete a file (unintentionally) today when trying to do a commit to a bound branch21:10
jimmy_deanis there any kind of condition where this would happen because it's obviously not desirable21:10
Spazjelmer, as for reconcile21:11
Spazjelmer, http://pastebin.ca/134902821:11
jimmy_deanhe did: bzr add myfile.doc21:11
jimmy_deanbzr commit21:11
jimmy_deansaid his bound branch was out of date so he did "bzr commit --local"21:11
jimmy_deanbzr update (at this point his file was gone)21:11
Spazjelmer, that's the result of doing bzr svn-import https://awos.svn.sourceforge.net/svnroot/awos/ .21:11
Spazon the box it actually works21:11
Spazon21:12
Spazjelmer, should i just try doing trunk/branches separate?21:12
jelmerSpaz, ah, I think I can reproduce it as well now21:12
jimmy_deananybody have any ideas? I can't seem to reproduce this myself21:13
jelmerjimmy_dean: Did he perhaps do a bzr revert after the update?21:13
jimmy_deanyes he did21:14
jelmerjimmy_dean, that would explain it21:14
jelmerjimmy_dean, "bzr up" will turn local commits into pending merges21:14
jelmerand "bzr revert" removes pending changes, including pending merges21:14
jimmy_deanjelmer, but the bzr revert was done after he had already lost the file21:15
jelmerSpaz, looks like a bzr-svn bug21:16
Spazwhee.21:16
jelmerSpaz, it's not picking up the fact there are old bzr-svn revisions in that svn repo for some reason21:16
Spazjelmer, any workaround?21:16
jelmerSpaz, no idea what's causing it yet21:16
Spazah ok21:17
jimmy_deanjelmer, I have the .bzrlog file from his Windows machine, mind taking a look at it on pastebin?21:17
jelmerjimmy_dean, sorry, already kindof busy looking into this bug spaz is running into21:17
jimmy_deanoh ok, thanks anyway!21:18
jamjimmy_dean: I'll take a peek21:18
jimmy_deanjam: thanks, one sec21:19
jelmerSpaz, found it21:22
Spazhm?21:23
Spazjelmer, where is it? :o21:23
jimmy_deanjam: ok21:24
radixaw dang, bzr-svn isn't built for dapper?21:24
jimmy_deanjam: the file to look for in the log is: Battery Controller CoProcessor Specifications.doc21:24
jimmy_deanjam: http://pastebin.ca/134904721:24
Spazjelmer, the reconcile problem was discovered a while ago: https://bugs.launchpad.net/bzr/+bug/29702421:25
ubottuUbuntu bug 297024 in bzr "bzr reconcile crashes" [Undecided,New]21:25
jamjimmy_dean: there is no 'update' or 'commit' in this log21:25
jamperhaps in ".bzr.log.old" ?21:26
jam(we keep 1 level of backlog)21:26
jelmerSpaz, that's just a similar traceback, it's a different bug21:26
jimmy_deanjam: I truncated it, perhaps I was too aggressive, let me paste the whole thing21:26
jimmy_deanjam: http://pastebin.ca/134905221:27
jelmerSpaz, I've pushed a fix21:28
jelmerSpaz, You'll have to remove ~/.bazaar/svn-cache and your existing repo21:28
Spazok21:28
jamjimmy_dean: so.. it looks like it was an 'update' triggers a merge, which failed half-way through because of an open file, and then the following update finished, but the file was gone21:33
jamthe good news, is that you should be able to do "bzr heads --dead"21:34
jamand find the revision that the branch used to be at21:34
jamso you can do "bzr merge . -r revid:XXX"21:34
jimmy_deanexcellent, thanks...we'll give that a shot21:34
jmljelmer: hi21:34
jamI would have thought that a merger failing half-way through would have rolled-back the action, but I guess not21:34
jmljelmer: so, I'm importing Twisted with bzr-svn using "bzr svn-import --incremental svn+ssh://svn.twistedmatrix.com/svn/Twisted Twisted"21:35
jelmerjml: Hey!21:35
jmljelmer: it's copied 20000+ revisions, but it's going really, really, really slowly on the last few thousand.21:35
* jelmer gives it a try as well21:36
jelmerjml: how large is the tree?21:37
jmljelmer: an svn checkout is 42M21:37
jml< 2000 files and directories.21:38
Spazjelmer, http://pastebin.ca/134906321:39
Spaz:S21:39
jimmy_deanjam: success! my co-worker said I'm his hero, how you're my hero21:40
jelmerSpaz, you need bzr.dev for bzr-svn trunk21:40
Spazah ok21:40
jelmerSpaz, sorry about that21:40
Spazeh it's fine.21:41
jamjimmy_dean: always happy to help21:42
jimmy_deanjam: so do you think that's a bug for bzr on Windows?21:42
jimmy_deanbecause Windows is super aggressive in its file locking21:42
eixjimmy_dean did you ever tried linux ?21:43
jamjimmy_dean: sort of, yeah. we certainly should have an alternate way of resolving a locked file than aborting in the middle of an update21:43
jamwe'd still have to do some sort of conflict resolution21:43
jimmy_deaneix: yes, I use Linux but this machine has to be Windows21:44
jimmy_deanand he uses Linux for certain things21:44
eixjimmy_dean no machine has to be Windows :-)21:44
jimmy_deaneix: it does if only certain software runs on it21:45
eixjimmy_dean use alternatives21:45
jimmy_deanthere aren't any21:45
menesissame wiht my girlfriends computer - she has to use a certain licensed application for her job. but I admit I have not tried to run it under WINE...21:46
jelmerjml: And you're using bzr-svn trunk?21:47
jelmerjml: whoa, that's a lot of branches21:47
jmljelmer: yes and YES21:50
jmljelmer: Twisted's been using the same dev process as bzr and Launchpad except in Subversion :)21:50
jelmerjml: nice :-) I think that's the first project I see that actually uses cheap branching in subversion21:51
radixwe could probably clean up a lot of the dead branches. I'm not sure when we did that last.21:51
jelmerjam: What's this mutter message for:21:51
jelmer324.402  Collapsed 1 keys into 1 requests w/ 1 file_ids w/ sizes: [336]21:51
radixwe're into swap on that svn server.21:51
radixalthough I don't think it's actively swap*ping*21:52
radix(how can I tell that?)21:52
jimmy_deaneix: like SolidWorks for 3D modeling21:52
eixjimmy_dean try blender ;)21:52
jimmy_deaneix: I love Linux don't get me wrong, I'm sold out on it...but I also like to use the best tool per each job21:52
eixjimmy_dean I'm really thirsty I want linux to be adopted in business world...21:53
menesisis there a way to exclude branches by pattern using `bzr svn-import`?21:53
jimmy_deaneix: Blender is not optimized for 3D modeling for creating industrial product that you'll send and have a factory make21:53
eixnot only for their damn servers21:53
eixah21:53
jamjelmer: just tracking how we split up a request for XX files into YY bytes21:54
jimmy_deanjam: I think I'll add my co-worker's experience as a bug and let the developers decide if it actually is one or not21:54
jelmerjam: so that's mainly useful for remote transports, I guess?21:54
jimmy_deanjam: thanks again for the help...you saved a month's worth of work redo21:54
jamjelmer: generally, though it isn't really necessary overall21:54
jamhence mutter()21:54
jamwe can remove it if it is causing you problems21:55
jelmerit's ok, but a little bit verbose compared to everything else21:55
jmljelmer: have you fixed anything performance related in bzr-svn over the last day or so?21:55
jelmerjml: not really21:55
jmljelmer: hmm. ok.21:55
jmlso, I'm wondering if this is a memory thing.21:56
jelmerjml: If memory is a problem for you, do you have the latest subvertpy?21:56
jmljelmer: yes.21:56
jelmerI'm about to reach r100021:56
jmljelmer: of ~27k?21:57
jelmer1084/3468021:57
jmljelmer: ok.21:58
vila    while _tasks and now >= _tasks[0].timeout:21:58
vilaIndexError: list index out of range21:58
jelmerjml: Is that similar to what you were seeing?21:58
jmljelmer: I've hit Ctrl-C and restarted the process a couple of times now.21:58
viladoh21:58
jmlso it's "copying revision 779/5703"21:58
jelmerah21:58
jml"2439.492  Collapsed 1 keys into 1 requests w/ 1 file_ids w/ sizes: [1390946]21:59
jml" is the last thing in the log.21:59
jelmerjml: Strange, there shouldn't be a particular reason for it to get slower over time21:59
radixcould be the server?21:59
radixbut it doesn't seem to be under particular load. dunno21:59
jelmerjml: That last bit is pretty large21:59
jmljelmer: yeah. actually I'll pastebin a chunk of the log.22:00
jelmerhmm, I need "bzr svn-import -j"22:00
radixheh22:01
jmlactually I won't pastebin the log.22:05
jmlsince it just interrupted itself, I think22:05
lifelessmoin22:06
jmllifeless: good morning.22:06
lifelessjml: nose uses 'inspect the exception in addError', and have a deprecated addSkip22:07
radixinterrupted? as in, blew up?22:07
lifelessbzr uses inspect the exception in addError22:07
jmllifeless: sweet.22:07
jmllifeless: I like that way of doing it as well.22:07
lifelesswhy22:07
jmllifeless: because it makes the interface narrower and easier to use with other pyunit things22:08
jmllifeless: what do you think?22:08
lifelessjml: bzr does it that way to meet the pyunit protocol; I don't think narrow is particularly strong as a reason22:08
jmllifeless: neither do I.22:08
lifelessI want to change the protocol22:09
jmllifeless: you want addSkip?22:09
lifelessI think a stronger question is 'does the source of the skip event matter22:09
jmllifeless: by "source", do you mean the test?22:09
lifelessline of code22:10
jml85% mem usage :(22:10
lifelessaddError and similar interfaces give you a stack trace22:10
lifelessso they pinpoint where it happened22:10
lifelessaddSuccess and similar don't22:10
jmllifeless: so, I can't think of a use-case where I'd want that information beyond having the name of the test. But I can't think of a good reason to *not* have that information either.22:12
jmllifeless: so I'm wondering why you think it's an important question?22:12
lifelessif we start with the premise of designing for python inclusion; then the base classes for both test and result will be in sync, so 'pyunit compatibility' isn't hard any which way; so I then started thinking about how the different approaches vary22:13
jmljelmer: is it possible that there's a particularly troublesome revision?22:13
jelmerjml, could be; a particularly big file, for example22:14
jelmerjml: Did you re-build subvertpy ?22:15
jmljelmer: I got the trunk for it and ran python setup.py install22:15
Ollie_Ris there anyway to get a readout of transfer speeds when doing a bzr co over sftp. There is a progress bar but it is very vague, and seems to jump in large chunks which is not especially useful. The verbose argument also doesn't give any more info22:15
jmljelmer: but that was 1-2 days ago. haven't done anything to it since.22:15
jmlOllie_R: what version of bzr are you using?22:16
jelmerjml: That should do it22:16
Ollie_Rjml: i believe 1.5 let me check22:16
jelmerjml: another copy of subvertpy installed by PPA perhaps?22:16
jelmerI'm at 3500 now22:17
Ollie_RBazaar (bzr) 1.3.1 on both client and server/repo22:17
jmlOllie_R: upgrade. the progress bar is substantially improved.22:17
jml(as indeed is the rate of progress :))22:17
Ollie_Rah ok great22:18
Ollie_Rdo both client and server need to be running the same versions?22:18
lifelessjml: what i have so far is 'addSkip is clearer for implementors of Results; it can have a exc_info if desired; its not innately compatible with existing TestResult objects that didn't subclass TestResult'22:18
jmljelmer: I can't find a python-subvertpy or a python2.5-subvertpy package22:19
lifelessjml: 'addError is unclear for implementors as they don't have a full list of exceptions-that-are-skips, that-are-expected-fail, etc; using addError will mean that tests that skip show up as errors rather than as test-framework issues, and using addError defines that there will be a stacktrace'22:20
fullermdOllie_R: Not in theory at least.  I run with a 1-2 version skew pretty regularly without problems.22:20
fullermdI've never tried a ~9 version skew, but I would guess it works OK (though it may not show much improvement on some things, since both sides wouldn't support $SOMETHING_NEW)22:21
* jml afk22:21
Ollie_Rthe version labelling is kind of strange bzr 1.1rc1 2008-01-05 bzr 1.9 2008-11-07 bzr 1.10rc1 2008-11-28 bzr 1.11rc1 "Eyes up!" 2009-01-09. Expected it to go to 2.0 - kind of strange22:23
fullermdIt can't go to 2.0 until it can read email.  Law of nature.22:23
Ollie_Rfullermd: being serious?22:24
fullermdI'm always serious.22:24
fullermdOr is it never?  One of the two.22:24
Ollie_Rhah22:25
Ollie_Rso which version is considered stable atm22:25
radixOllie_R: that's not really strange at all22:25
Ollie_Rjust noticed i am running 1.5 on my macbook22:25
lifelessOllie_R: 1.1222:25
fullermdThe latest release, generally.22:25
radixOllie_R: versions are not decimal22:25
radixthis is pretty common in lots of software22:26
Ollie_Rradix: hmm some apps go from 1.9 to 2.0 though. So if something is 1.9 you have no reference if it is going to go to 2.0 or 1.10,,,22:26
fullermdWell, lots of apps go from 1.4 to 2.0 too..22:27
fullermdHeck, bzr went from 0.18 to 0.90, which is still WAY weirder in my book.22:27
jmllifeless: let me think out loud for a bit22:28
Ollie_Rwell my box here is 1.3.1 which at a glance looks like a newer version than 1.12 so that seems odd to me22:28
Ollie_Rneways all a little irrelevent22:28
radixonce you internalize the fact that versions aren't decimal, you'll get over it :)22:28
Ollie_Rradix: yep22:28
jmllifeless: the way I see it, there are two ways to add more types of events to unittest: add more methods to the listener interface or enrich the object that represents the event22:29
fullermdIt would probably confuse more people if we called it "1.C"   :p22:29
jmllifeless: I guess if I wrote unittest in the first place, I would probably have defined a TestResultEvent class and sent those to TestResult, rather than the multiple-method approach they have now22:30
jmllifeless: incidentally, you used to consider "using addError will mean that tests that skip show up as errors rather than as test-framework issues" to be a good thing22:32
jmllifeless: have you changed your mind?22:32
lifelessjml: that was designed around pyunit22:33
lifelessjml: I'm designing for pyunit now22:34
jmllifeless: :D22:34
jmllifeless: part of our "ply mwhudson with whisky until he commits testtools to trunk" plan?22:34
* mwhudson blinks22:35
jmlmwhudson: sssh. it's a secret plan.22:35
* mwhudson goes away again22:35
mwhudsonoh, cpython trunk?22:36
jmlyeah.22:36
jmllifeless: what do you want addSkip's parameters to be?22:39
jmllifeless: and how do you see this interacting with Feature support.22:39
lifelessjml: I thought it was offer mwhudson whiskey but withhold until he commits it22:40
jmllifeless: it's a delicate balance.22:40
mwhudsonalka seltzer would be a better inducement this morning, i think22:41
jmlmwhudson: :)22:41
lifelessjml: so that was why the question about exc_info relevance22:43
lifelessjml: I think TestResultEvents are messages, and xUnit has a smalltalk heritage where messages are messages22:43
lifelessjml: which is to say TestResultEvent isn't any better than explicit method calls for this, IMO22:44
=== barry is now known as barry-away
Ollie_Ram i right in thinking that if i do a light checkout from a to b then i can't do a checkout from b to c ?22:45
lifelessOllie_R: if you do a checkout from b to c, it will be a checkout from a to c22:45
lifelessOllie_R: if you want multiple branches, the branch command makes new branches22:46
Ollie_Ri want to start using bzr to deploy websites. so i have a repo and my develoeprs checkout locally. Then my website is a checkout of the repo which I update as and when i need to22:46
lifelessI suggest you use the bzr-upload plugin22:47
lifelessdeveloped by a guy at a website hosting company :)22:47
Ollie_Rbut obviously as the dir is going to be web enabled I don't want people to be able to checkout from my actual website22:47
Ollie_Rlifeless: yeah i know of it22:47
jmllifeless: that's why I'm interested in addSkip's parameters :)22:47
brutimusthe authentication ring (authentication.conf) stuff made it into mainline, right? (this stuff http://bazaar-vcs.org/DraftSpecs/AuthenticationRing)22:48
lifelessbrutimus: yup22:48
brutimusok thank you lifeless.. i must be doing it wrong then :-)22:48
billiejoexI'm sorry, I'm trying to get a copy of bazaar source branch but I get this error: http://rafb.net/p/b4T8mc45.html22:49
lifelessjml: I think that addSkip(test, str()_able_reason) is minimal and meets the needs of all tests I've seen22:49
lifelessbilliejoex: you have an older version of bzr22:49
jmllifeless: are you planning on using skip for features?22:49
jmllifeless: and how do tests signal a skip22:49
Ollie_Ryeah bzr-upload plugin isn't quite right as oddly I want to be able to commit from the live checkout to send back the users files added to the live site via a cms.22:49
Ollie_Rbasicially normal bzr will work i just need to prevent people checking out from http://www.example.com/ when the site is live22:50
jelmerlifeless: it's a bit unfortunate that lenny has 1.5, making it impossible to checkout bzr.dev :-/22:51
Ollie_Rbzr-upload basicially just looks like bzr revision history linked in with a rsync22:51
lifelessOllie_R: checkout --lightweight will have that property; but just blocking the .bzr dir in apache will have it too22:52
Ollie_Rlifeless: ok brilliant thanks for that bit of info, cleared things up nicely. Hadn't considered doing this via apache actually22:52
billiejoexlifeless: 'm using the latest 1.12 version22:53
lifelessbilliejoex: 1.12 can read 1.922:53
lifelessbilliejoex: what does 'bzr --version' show ?22:53
billiejoexlifeless: 1.6.122:54
lifelessbilliejoex: then thats the version you're actually using22:54
billiejoexI thought I did get the 1.12 version :\22:54
lifeless:>22:54
lifelessjml: not sure re: features23:04
lifelessjml: TestCase.skip(), like TestCase.fail()23:05
lifelessjml: I'd kind of like TestCase.succeed() too ::23:05
jmllifeless: so it would raise an exception?23:05
lifelessyes, to allow dropping out of an arbitrary call depth23:05
lifelesswhich lets people write helpers to decide when to skip23:05
jmllifeless: what use cases are there for skip besides missing features?23:07
lifelessjml: expensive test, and expensive test mode not on23:09
lifelessjml: test enumeration [in a sick sort of way :P]23:09
lifelessjml: users may find others; probably will in fact :)23:09
=== montywi is now known as montywi|zzz
raskerhi, how does one use the --stacked option in bzr branch?23:09
jmllifeless: those are good use cases.23:10
jmllifeless: so, I am thinking that missing features is a special kind of skip23:10
jmllifeless: is that the way it's done in bzr right now?23:10
raskeranyone?23:13
jmlrasker: what are you trying to do?23:14
lifelessjml: self.requireFeature raises UnavailableFeature, which is not a subclass of SkippedTest, and there is an addNotSupported on bzr's TestResult23:15
lifelessjml: I'd be comfortable mapping that to skipped, at least for now23:16
jmllifeless: ok.23:16
jmllifeless: so I'm happy enough with adding addSkip.23:17
jmland not imposing any extra burden on addError.23:17
raskerjml I'm looking at a project that contains one feature/bugfix per branch. I'm writing a script that automatically merges a few branches against the release branch to see if anything breaks (sort of like 'continuous integration'). I'm thinking I can use the --stacked option to pull in the branches, stacked against the release branch23:18
raskerjml does that make sense?23:19
jmlrasker: sure.23:19
jmlrasker: probably easier than using stacked is to use shared repos23:19
lifelessjml: revno12 is tip ?23:20
jmlrasker: so, bzr init-repo <project>; cd <project>; bzr branch <trunk url> trunk; bzr branch <branch url> <branch name>23:20
jmlrasker: that second "branch" command will only fetch revisions that are in the branch but not in the trunk branch.23:20
jmllifeless: yes23:21
jmllifeless: man, it runs the full test suite in 0.006s -- why can't all my projects be like that.23:21
raskerjml right, I see. so the amount of data downloaded from launchpad for a trunk plus a bunch of it's development branches for example would be less?23:22
raskerfor each branch23:22
jmlrasker: yes. (if I understand you correctly)23:23
jmlrasker: the trick is running init-repo in a directory above the branches.23:23
raskerjml great! Just what I was looking for. Just for interests sack then, how does stacked work (the docs are a bit hazy)?23:24
lifelessjml: because most of your projects do a bunch of things23:24
jmlrasker: so, roughly speaking, a repository is a bucket for revisions23:25
jmlrasker: a stacked branch is a branch whose bucket is missing most of its revisions, but has a pointer to another branch where those revisions can be found.23:26
rockstarjml, I branched difftodo.  I have a patch that I'll want you to look at on Sunday.23:26
jmlrockstar: awesome23:27
jmlrockstar: why don't you submit a merge proposal?23:27
rockstarrockstar, I will when I'm not on a semi-hostile network.23:27
* jml wants to use the sexy new diff generation stuff on Launchpad23:27
jmlrockstar: ahh ok.23:27
jmlrockstar: where are you right now?23:27
rockstarjml, you've seen thumper's MAD, right?23:27
rockstarjml, in the Denver airport.  They're boarding now.23:28
jmlrockstar: I've seen its effects, not the actual code.23:28
raskerjml, ok, that makes sense. the repository then contains 'full' or complete branches? or is it something like, a repository uses stacked branches internally?23:28
rockstarjml, can you submit merge proposals for junk branches?23:29
jmlrockstar: no you can't23:29
rockstarI didn't think so.23:29
jmlrockstar: I guess I should register a project.23:29
rockstarMake a project please.23:29
rockstar:)23:29
jmlrasker: not quite23:29
jmlrasker: repositories don't contain branches23:29
jmlrasker: they just contain revisions.23:30
jmlrasker: quite often a branch contains its own repository23:30
jmlrasker: this is what happens in the default case when you do 'bzr branch <foo>'23:30
lifelessdifftodo is your python pending thing?23:31
jmllifeless: yeah.23:31
lifelesscool23:31
lifelesswell, I'm -> lunch event23:31
lifelessI have testtools23:31
lifelesswill make a skipped thing I think is beautiful23:31
jmllifeless: sweet.23:33
jmlrasker: so, when you run init-repo in dir1/ and then branch to dir1/dir2/, Bazaar finds the repository in dir1/ and sticks all the revisions in there.23:33
jmlrockstar: https://edge.launchpad.net/difftodo23:33
jmloh wait. the branch.23:34
raskerjml ok so repositories are more flexible and --stacked is basically used to save space?23:34
jmlrasker: again, not quite :)23:35
rasker:)23:35
jmlrasker: all branches have repositories whether you like it or not -- most of the time you don't have to care about this fact though23:35
jmlrasker: both stacking and *shared* repositories are used to save space and prevent unnecessary network transfer.23:35
raskerjml perhaps if you could give me an example of where --stacked would be used I could differentiate them better?23:35
jmlrockstar: https://code.edge.launchpad.net/difftodo23:36
jmlrasker: perhaps, but no example is leaping to mind and it's past time for my morning shower :)23:36
lifelessrasker: --stacked is used to get a branch which *can only be used while online* but downloads less data [it skips all the history]23:36
jmlrockstar: have a good flight23:37
lifelessrasker: a shared repository is used to allow many branches with common history to share the storage of their history23:37
lifelessrasker: imagine you have 1GB of history, and a working tree of 50MB23:37
lifelessrasker: a shared repository will need to download that GB.23:37
lifelessrasker: a stacked branch will download ~50MB23:37
lifelessrasker: but you can't use the stacked branch without being connected to the server that has the rest of that 1GB23:38
lifelessrasker: for many small but related branches a shared repo will work better - more setup time but you get offline support23:39
raskerjml lifeless !!!! Ok I finally understand !!!! Thank you both for taking the time to explain.23:40
jelmerjml: at 13k23:42
jelmerjml: When did it slow down for you exactly?23:42
jmljelmer: ~5000 before the end.23:43
raskerjml lifeless so basically --stacked effectively gets you the working tree and would do something like refer back to the original branch for the history if needed23:43
lifelessrasker: exactly23:44
lifelessI'm heading out now23:44
lifelessciao23:44
raskerthanks23:44

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