spivOh, hmm, and I should probably take a look at https://bugs.launchpad.net/ubuntu/+source/bzr/+bug/67409100:07
ubot5Launchpad bug 674091 in bzr (Ubuntu) "bzr crashed with ErrorFromSmartServer (We are missing inventories for revisions) (affected: 1, heat: 12)" [Undecided,New]00:07
mkanat_Is it OK for me to fix trivial bugs by committing directly to an LP branch of loggerhead, or should I still do a merge proposal?00:09
=== mkanat_ is now known as mkanat
mkanatJust going to do it.00:10
nulehi all02:37
nulequick question if anybody has a second02:37
nulei'm converting a number of open-source projects to bzr from svn and I wondered if there was a way using svn-import to include a number of projects into what should really be one repo - they're currently all seperate svn repos02:38
nuleseems like it always inits a new bzr repo with the import02:39
nulestepping away for a few, but i'll hang out for a bit if anybody has some ideas - might just not worry about history in the new repo02:42
mwhudsonnule: repositories are boring in some sense in bzr; they're just bags of revisions, an optimization to avoid storing the same revision more than once02:44
mwhudsonnule: as branches from separate repos won't share revisions, there's no real point to putting them in the same repo02:45
mwhudson(nothing stopping you doing that after the fact)02:45
maxbnule: It would be interesting to have the specific example of the projects that you want to combine, and would make it easier to offer advice02:48
nuleand i'm back, thanks mwhudson and maxb03:22
nuleI have a bunch of libraries and utilities that depend on those libraries03:24
nuleright now building them depends on having them checked out relative to one another for the paths to work, and since they're not that huge i though it'd make more sense to essentially have them all in one big project03:25
nulehere are two of the actual projects: https://svn.thot.us/svn/nule.org_LightHl7Lib/ and https://svn.thot.us/svn/nule.org_IntegrateClientLib/03:25
maxbnule: OK, the important question you need to ask yourself is: Does it make sense for the combined tree to ALWAYS be checked out, branched, tagged, released as a single unit from now on?03:25
maxbIf the answer is no, you don't want to meld them into a single bzr branch03:26
mwhudsonwhat's the plugin for this sort of thing, bzr-scmproj?03:27
nulegood advice, maxb, my thoughts are that it's not that "expensive" to check them all out (they're not huge) and then I could include an ant and properties file in the root that would vastly simplify building and bundling new builds for distribution03:27
nulei'm using bzr-svn for this, mwhudson03:27
spivnule: they aren't mutually exclusive plugins :)03:29
maxbnule: bzr-scmproj is a plugin that has something to do with aggregating multiple bzr branches into a combined work area03:29
nulespiv: i had considered that after i hit enter :)03:30
fullermdnule: So, the nice thing about a VCS is the ability to undo stuff later.  But one thing that's very difficult to undo is putting things together in a single branch; breaking them out separate later on requires messy and heroic measures.03:30
maxbnule: OK, different question - does it make sense for the entire tree to have a single version number when you release it - *always* ? Do your projects currently have separately managed version numbers? If so, are you prepared to change that?03:31
nulethose are both good points03:32
maxbIf you feel that it is meaningful to sometimes release some subset of projects separately from the whole tree, that's a good indication that a single monolithic bzr branch is the wrong approach03:32
fullermdThis is a place where bzr-think and svn-think differ; what things you really _need_ to decide before you start.03:32
maxbInstead, there are things like bzr-scmproj (and, I think other related plugins) that can assist with working on a forest of branches in a specific layout, instead of making a single branch03:33
nulei will definitely investigate bzr-scmproj to see if it solves my most pressing needs03:33
maxbUnfortunately, I have no experience with these forest of branches plugins, so I cannot advise on them03:33
nuleright now i drag my feet on new releases because making sure I'm releasing everything with a consistent (and working) set of libraries is very timeconsuming03:34
nulein that sense having a unified build number would be lovely03:34
nulebut you're right that while I need to rebuild * if the lowest library changes, I don't if the highest application changes03:34
fullermdOne good signpost is that if those libraries are ever used (or ever to be used) by something other than this project, that's a good sign they should be separate.03:34
nuledefinitely good things to think about, there's no real reason I suppose that i can't have a separate build project at the same level as the others to facilitate my release process03:35
nule"process", more like mayhem right now03:36
fullermdAnother point is that what I said above about _splitting_ branches doesn't apply to _combining_ branches.  You can combine two branches into one easily.03:36
fullermdJust once they're together, breaking them apart is very difficult.03:36
nulei definitely see that, fullermd, you're going to lose history no matter what at that point03:37
nulegood stuff to think about, all, appreciate the advice03:37
fullermdSo you can start with them separate, and if you decide later on they should all be jumbled together, it's just a few quick, easy, history-preserving operations to roll them up.03:38
pooliejam, don't suppose you're still up?03:53
jampoolie: indeed I am03:53
=== dash_ is now known as dash
jdobrienI accidentially deleted a directory which had a lot of edited files. How can I recover the directory without reverting all the changes I made?06:12
pooliea lot of uncommitted edits?06:12
poolieyou probably need to look at using an OS-level undelete tool06:13
jdobrienpoolie, yes ...refactoring06:13
pooliesorry, bzr won't have had a chance to store the files if you don't commit them06:13
pooliethere is discussion of 'bzr rm' etc optionally moving things to a trash directory, but we don't do that at the moment06:14
pooliei have rdiff-backup setup to run every couple of hours :/06:14
jdobrieni got lucky06:17
spivWell, 'bzr rm' by default will backup files that changed since the last commit to *.~1~ or whatever, so bzr itself is pretty safe by default.06:17
jdobrieni didn't bzr rm06:17
spivBut there's not much bzr can do about other tools deleting files.06:17
jdobrienyeah...fortunately this tool let me undo it06:18
jdobrienit was a silly mouse slip06:18
spivThat is fortunate.06:18
spivIt's so much nicer using tools that let you undo mistakes.06:19
jdobrieni can't believe i made all these edits without a commit..i usually am really good about that06:20
spivjdobrien: no-one is perfect :)06:21
jdobrienespecially after 1am06:22
jdobrienbzr commit ... and bed06:22
jdobrienthx all06:22
spivWow ControlDir.sprout is ugly.  After several rounds of refactoring it in this branch it it still alarmingly long and complex.06:43
spivHmm, I'm getting failures in bb.test_outside_wt with trunk.07:03
spivBut it's 6pm Friday, so I guess I'll just file a bug instead of figure it out :/07:04
vilahi all07:05
vilaspiv: which file between bb and test_outside ?07:06
vilaoh, it *is* a file 8-)07:06
spivvila: https://bugs.launchpad.net/bzr/+bug/67437307:06
ubot5Launchpad bug 674373 in Bazaar "test_outside_wt failures on trunk (affected: 1, heat: 6)" [Critical,Confirmed]07:06
vilaon a pristine trunk ??? wow07:07
spivvila: the good news about that bug for me is that it's not the patch I'm working on that is breaking the test suite ;)07:07
spivvila: yeah, hence why I jumped straight for Critical07:08
vilachecking locally07:08
spivHopefully nice and shallow.07:08
vilawild guess: you're sure you didn't create a repo in /tmp by some weird side-effect ?07:09
spivStill occurs with total --no-plugins07:09
spivvila: it's possible!07:09
spivHey look at that.07:09
spivvila: well done, that was it07:09
vilapfew, good :)07:10
spivvila: it would be good to isolate the test suite from that sort of strange environment :)07:10
spivI'll update the bug07:10
vilaspiv: like... by switching to in-memory file systems ? :-D07:10
spivvila: well, the usual TestCaseInTempDir would probably do in this case.07:11
spivBut I haven't looked closely, being post 6pm Friday :)07:12
vilaspiv: well, despite having a safety net, there will always be tests that want to check that they don't find a repo up in the hierarchy, which we can't isolate properly by definition07:13
vilawell, "can't" because we use an external resource which is the '/' filesystem07:13
spivvila: the empty unshared bzr repo created by InTempDir takes care of that07:13
spivBut there may be something special about this test and /07:14
spivAnyway, EOD for me.07:14
vilaspiv: nope, it *is* a repo, some tests want no repo at all07:14
vilaspiv: yeah, enjoy your week-end07:14
pooliehi there vila, how are things with you?07:14
pooliei might finish up too07:14
pooliebarely any code this week :/07:14
vilaspiv: and to peace your mind: full test suite pass here07:14
spivvila: at worst it could be a feature test07:14
spivvila: self.requireFeature(NoRepoBetweenMeAndRoot) ;)07:15
fullermdJust start out the test with `rm -rf /`...07:15
vilapoolie: fine, I'm becoming impatient to have an updated testtools on pqm to clear up mgz patches that are in the active queue for far too long :-/07:15
vilaspiv: sure, they will always be skipped, no failures ;)07:16
vilafullermd: really ? Let me try that....07:16
fullermdMwahaha.  My plan progresse....   bah.07:16
vilapoolie: so, things are fine :)07:17
spivOk, really done now.  Hopefully I'll finish slaying the sprout monster on Monday!07:17
vilapoolie: a couple of pending mps waiting for reviews but I still have more to work on07:18
pooliespiv, feel free to clean up sprout too :)07:19
pooliei'm meant to be pilot next week07:20
vilapoolie: there is an interesting discussion about configs in https://code.edge.launchpad.net/~doxxx/bzr/mergetools/+merge/38663 that should help me progress by identifying the next easy steps07:20
vilapoolie: well, easy is a  bit optimistic but manageable steps at least07:20
spivpoolie: yes, that's basically where I've spent a large chunk of today07:20
pooliei skimmed the mail very briefly07:20
pooliei'll try to look at that next07:21
vila1) interpolation with {option} syntax07:21
vila2) sections in bazaar.conf07:21
poolieactually s is home so i might go now...07:22
vilabut first I should submit my braindump for feedback, I think I'm pretty close to a definition that addresses the main compatibility issues I was fighting with07:22
vilapoolie: let's try to talk a bit on monday07:22
poolieok, good night07:23
=== frakturfreak is now known as frakturfreak[AKF
=== frakturfreak[AKF is now known as frakturfreak|AKF
vilaAFK maybe ? :)08:32
=== muffinre1earch is now known as muffinresearch
=== zyga is now known as zyga-food
=== beuno_ is now known as beuno
=== zyga-food is now known as zyga
=== Ursinha is now known as Ursinha-lunch
=== Ursinha-lunch is now known as Ursinha
mgzvila: sorry, the ol' unpushed to lp problem15:21
vilamgz: hey !15:21
vilamgz: for the uncollected tests ?15:21
mgzyup, those failures.15:22
vilamgz: ok, pulling and retry time it is then !15:22
mgzI left the tip on lp in a borked state, will add my local changes.15:22
vilaI'm sorry for your other patches :( I keep pinging losas to no avail :(15:23
vilahmm, branches diverged15:23
mgzhm, just a sec, need to commit some local changes too15:23
vilaok, ping when it's done15:24
mgzwas trying to find a spare evening to try out a version along the lines of what spiv was asking for15:26
mgzokay, push done15:26
=== Meths_ is now known as Meths
vilagrr, stupid setup, I know it's based lp:bzr, I do that for be able to review with -rsubmit:, but when I then ask for pull-v ,just FDWIM and pull from the mp branch !15:28
vilainteresting, far more typos when I'm angry...15:28
vilaooops, did I say that publicly ? :D15:28
fullermdRellay?  I hand't noticed...15:28
mgzyou're a talented snarker, fullermd.15:29
vila. o O (That's it ! He put *me* in his triggers ! They say I'm paranoid...)15:30
fullermdI gotta stick with my strengths...15:30
fullermdThey say?  Who say?  Are they watching you?  How do they know that?!15:30
vila. o O (And why did I put mgz's mp into WIP, where is it now ??)15:30
vilaha thanks :) Did *you* put it back to NeedsReview or should I blame... fullermd !15:32
fullermdMe?  I couldn't possibly have done it.  I was busy robbing a bank when that happ...  wait.  Wrong alibi...15:33
vila*MY* bank !15:33
fullermdOh.  That would explain why I didn't get anything out of 'em...15:33
mgzyou never marked it WIP by my email log.15:33
vilamgz: ha, that should explain it then :)15:33
mgzwhich is probably a good thing, doing the new-giant-diff-by-email too often gets tiring on the thread15:34
vilastill a lot of uncollected15:34
mgzI've lost all track of Gordon's mergetools branch15:34
vilatrying --parallel first to see15:34
vilamgz: I convinced him to split it up to ease review15:35
mgzlots as in thousands -> update testtools, lots as in hundreds -> list please15:35
vila5000 so far, checking testtools15:35
mgzthere are various tests that don't run or run differently on this box, and I've not tried it on my nix one as it'd probably take years to complete a full test run15:35
vilarevno 129 missing only one from jml about deferred tests, unrelated right ?15:36
vilaha damn, I should retry the subset first15:37
vila--parallel almost finished15:37
vilaok, so success for the full run, but all tests uncollected15:38
vilawell I didn't check the 26748 ones but my buffer contains 26780 lines so that should be closed15:39
vilagrep -n Uncollected test| wc -l => 26751 :)15:40
vilamgz: could *you* try to upgrade testtools ?15:42
vila. o O (If I'm right he won't be happy :-/)15:42
mgzI did after Robert merged that change, and didn't think I saw anything else dangerous go past, but will do.15:43
mgznope, looks good here. will just test that it's not related to the command line given.15:45
mgzhm, some new doctest progress bar junk, but fine otherwise.15:46
vilaless uncollected test cases with --parallel15:46
vila~100/600 so far15:47
mgzit sounds to me a lot like the testtools patch isn't there for whatever reason15:47
mgzI'll try this on my nix box to rule that out as an issue thoug15:49
vilaI just checked I'm using trunk15:49
vilatesttools trunk that is15:49
breakfasthi all15:53
breakfasti've been trying to figure out how to make "bzr diff --using=diff" the default behavior, so that when i call "bzr diff" without --using it still does that by default. can you point me to a resource that explains how to do that?15:54
mgz`bzr help alias`15:55
breakfastthank you15:56
mgzthat's sounding more possible. hopefully this'll finish branching in a sec and I can try here15:57
mgzseems to be taking about a minute for each hundred at 7000/13750 though...16:00
vilamgz: huh, what are you branching ?16:00
vilaoh, on an out-of-date system you mean /16:01
vila(which implies an old bzr too of course)16:01
vilamgz: download a recent one first :D16:02
* vila duck16:02
mgzshould be reasonably recent, no way I'd use the lenny bzr.16:02
mgzbut it's a very memory-constrained box.16:02
mgzprobably should have used smart server this time, but I couldn't branch bzr *at all* initially with the smart server.16:03
mgzas this is just updating the shared repo, it probably wouldn't die.16:03
vilamgz: no way to branch from your local box ?16:03
mgzwell, scp.16:03
vilaif you're cautious and clean up afterwards, that should work16:04
vilaoh, you meant wt or branch ?16:04
mgzI'm trying to branch, but giving in and copying the wt is what I'd fall back to.16:05
mgzthis is why I seldom try and run selftest on that box though :)16:06
mgzooo, estimate jumped from 8500 to Done16:06
mgzwill it actually finish?16:06
mgzgo go little box.16:07
vilaso roughly 1800 uncollected tests16:07
mgzhm... looks funky.16:07
vilaas in ?16:08
mgzat a guess from the test names, one think that creates a cycle on a nix osutils unicode path16:08
vilathe bzrlib.tests.test_conflicts.TestResolveContentsConflict series don't involve unicode AFAIR16:09
mgzhmph, and I don't get these problems on my nix both.16:11
vilahmm, angry huh :)16:11
mgzso, theory #2: you have a plugin that breaks things.16:11
vilanope, BZR_PLUGIN_PATH in effect16:11
vilaoh, loom ?16:11
mgzUncollected test case: bzrlib.plugins.loom.tests.test_tree.TestTreeDecorator.test_up_not_merged16:11
fullermdYeah, loom could warp things.16:12
mgza weaving joke.16:12
vila.. passing above my head ;-/16:12
* fullermd will be here all week... don't forget to tip your waitress!16:12
vilaand same result with --no-plugins16:14
mgzwhat's different ;_;16:14
mgz2.5.2 rather than 2.6.6 perhaps, but that's not much of a theory.16:14
mgzand 2.7 trunk works fine for me here, so would need to be some other factor as well.16:16
mgz2 from 225 on my nix box so far, and you don't get either.16:19
mgzokay, thanks for your help vila, I'll poke around a bit and see what I can work out.16:19
vila-s bb.test_conflicts 8 tests 8 uncollected16:20
vilamgz: well, if you can't reproduce what will you do ? :-/ Any idea where *I* can poke ?16:22
vila./bzr --no-plugins selftest -v -s bb.test_conflicts.TestConflict 3 test/ 3 uncollected16:22
vilabut hmm, bb may not be the easiest16:22
mgznot only can I not repo your list, but I'm getting a different one.16:23
mgznone of bb.test_filesystem_cicp.TestMove gets collected on my nix run16:24
vilaget uncollected you mean ?16:24
vilado we have some tests in common ?16:25
mgznone so far.16:25
mgzoh, maybe three dpush ones?16:25
* mgz checks16:25
mgzI've got an unholy memory crawling function that helps a little, but basically just want to see what's pointing at the test when it should be dead.16:26
mgzsticking a breakpoint on the "Uncollected" print and using gc.get_referrers works16:27
vilaget_referrers(case) ?16:28
mgzit's often something unhelpful, like a frame, or a cell16:29
mgz...or a dict16:31
mgzthat's probably the:16:31
vilaa frame is part of the calling stack right ?16:31
mgz<bound method TestConflicts._run_setup16:31
mgzbut I should be able to repo bound method cycles...16:31
* mgz looks at the case16:31
mgzwhere's it coming from...16:33
vilagrep says: testtools deferredruntest.py16:33
vilawhich should be totally unrelated to bzr >-/16:34
vilaha !16:36
viladeferredruntests.py depends on twisted which I bet you don't have installed16:36
vilamgz: python -c 'import twisted'16:37
mgzI do, but probably not the same version.16:37
mgzI've got 8.1.016:37
vilapython -c 'from twisted.internet import defer16:38
vilafrom twisted.python import log16:38
vilafrom twisted.trial.unittest import _LogObserver16:38
mgzI'll put twisted on my nix box and see if I can then get your list.16:39
vila10.1.0-2 for python-twisted16:39
mgzand look at the derferred stuff again, don't really see why bzr cases should be involved with that at all16:40
vilaerr python-twisted-bin16:40
vilame neither, but I chased your _run_setup pointer :) I have no idea if this was relevant ;)16:40
mgzwait wait, what was it you said earlier...16:41
mgz<vila> revno 129 missing only one from jml about deferred tests, unrelated right ?16:41
* mgz checks that rev16:41
vilaof course that why I grepped testtools16:41
mgzooo, and I just got per_branch collection failures.16:42
mgzso that's tractable at least.16:42
vilamgz: does that mean you can progress from there ?16:43
mgzokay, rev 130 may well fix some of those bb issues16:43
mgzand I've got some other things to look at too.16:44
vila-s bb.test_conflicts 8 uncollected still (I pulled it circa 17:1416:45
vilai.e. 30 minutes ago16:45
mgzokay, was probably a red herring. twisted shouldn't be involved.16:50
vilalooking at -s bt.test_version_info 4 uncollected out of 8 tests which seem to be the simplest of the lot16:57
vilagc_referrers mentions <bound method TestVersionInfo._run_test_method of <bzrlib.tests.test_version_info.TestVersionInfo.test_custom_version_text id=0x21edbd0>>,16:57
vilaalso from testtools :-/16:58
mgzif there are also lots of frames like before, it's probably from a exception raised there.16:58
mgzI think I just need to look more closely at the recent testtools changes.16:58
vilaJust a remark though, this itches again about innocent devs introducing cycles which.... sounds wrong16:59
mgzwell, this is mostly test structural stuff which needs to be right, otherwise we risk leaking the world which is what broke me in the first place17:00
mgzbut I agree that avoiding that without also burdening normal test contributors looks... challenging17:00
vilamay be I still need to be lectured on the cycle topic... so, again, if you could send some failing tests like we tried to find some time ago, this could help me17:01
mgztesttools rev 129 I'm looking at now and could be problematic17:01
vilawould you like me to revert to 0.9.7 instead ? (But that would still not explain why we get different failures)17:02
mgzif you want a vanilla cycle, the definition of bzrlib.errors.HookFailed.__init__17:03
mgz^thinking about it, I never updated the testtools on my nix box, just this one.17:04
vilamgz: 0.9.7 : some failures for test_vesion_info17:04
mgzI've had failures in test_version_info for ever17:05
vilaabout uncollected ?17:05
mgzno, actual failures.17:05
mgzit looks outside its tempdir17:06
vilaargh, use a real wt17:07
mgzare you on bt or bb for that?17:08
vila10 tests 4 uncollected17:09
mgzhm, I'm clean on that, except on windows:17:09
mgzWhile running: bzrlib.tests.test_version_info.TestVersionInfo.test_python_version17:09
mgzUnable to remove testing dir ersionInfo.test_python_version17:09
vilaETOOMANYBUGS :(17:10
vilaso back to my earlier suggestion there I think: can you make this control conditional so we can land something that helps you ?17:11
mgzokay, looking at the source, I see potential problems17:11
mgzbut... I'm not seeing the fallout17:11
mgzso, I'll fiddle.17:12
mgzbut yeah, I could make this a -E flag for landing.17:12
vila... one more on the pile waiting for testtools that is :-(17:13
mgzthe other option is what spiv said and only doing once generic warning at the end, but this means it's more likely a change will totally break me later.17:13
vilanah, I didn't want to say that !17:13
vilanot at the end the week :-/17:13
vilamgz: as opposed to still not un-breaking you until this lands you mean ?17:14
mgzwell, with the flag it wouldn't even need the pqm update... if I version check in the new tests17:15
vilamy problem with mps that took too long to land is that a lot of energy is lost without positive feedback for the submitter17:15
mgzyeah, and it's hard for all involved to hold the review in their head17:15
vilawell, lp helps a lot there, I was thinking about keeping the patch up-to-date17:16
vilaso, about HookFailed, the bactrace includes references to the test instance so storing it as an attribute creates the cycle right ?17:19
vilawhy not just clearing the backtrace and keeping only the class and the exception object then ?17:21
mgzright, that would be fine.17:21
vilamgz: trying to find alternate ways, not rebutting your approach here17:21
mgzin that particular case, not only is storing exc_info not needed, but the whole exception class could probably now be deleted17:21
vilaat least that could be explained to all devs and *can* be avoided17:22
mgzI think these things are generally easy to avoid like that, the problem is just that if it's not the person writing the code that notices17:22
vilaright, so we need some better cycle detection17:23
mgzand mostly it's obscure and shouldn't really matter, so just allowing the cycle would be an option... bar the fact that then a change that leaks thousands of tests goes unnoticed till my machine starts swapping17:23
mgzso, it's lots of total trivia, to be able to avoid the occasional thing that really hurts17:24
vilamgz, well, I could add a low-memory slave on babune or add a run with ulimit or something17:24
mgzwould be nice to just ulimit the lot of ~200MB17:25
mgzthe suite runs within ~100MB with this branch17:25
vilamy slaves are ~2GB to allow --parallel because I never had the time to check whether this was needed17:26
vilaexcept freebsd that is 4G, but I blame fullermd here17:27
* fullermd . o O ( One more blame, and I get a bingo! )17:27
vilatruth is fullermd can also write some nice docs and do some nice reviews :D17:28
mgzparallel does complicate things a little, as python eats cows, but 200 * fork should be more than enough17:29
fullermdAck!  Be careful!  You say things like that, next thing you know I'm a productive and useful member of the community.  Then it's nothing but work, work, work, all the time   :(17:29
vilahmm, and --parallel doesn't provide any means to let subprocess reports more data to the spawner like how much memory they consume17:29
=== oubiwann-away is now known as oubiwann
vilamgz: hehe crossed on the wire, we're talking about two different things, giving Gs to slaves is not a problem, *checking* what is consumed is what I was after ;)17:30
vilafullermd: I'm not holding my breath (shouldn't count as a blame right ?) :-P17:31
mgzRUSAGE_CHILDREN should work.17:31
mgzand wait4.17:32
vilaoh yeah17:32
vilaespecially if we don't care *too* much about being overly precise17:32
vilamgz: should we file a bug about implementing this for selftest ?17:33
mgzwell, you have to hack subprocess is the pain17:34
vilamgz: or should we just keep discussing it ? (I'm about to EOD with a headache due to paint odors :-/)17:34
vilaordors ? smells ?17:35
vilaright odor is in my dict17:35
mgzexarkun has the common idiom17:35
vilafumes is likely to be more precise yeah17:35
mgzhm, wouldn't need hackage just for --parallel=fork17:36
vilaexarkun: thks, appreciated (still along way to go to be fluent there :)17:36
mgzbut do get outside before you expire from lack of oxygen vila, I'll continue playing17:36
exarkunvila: :)17:39
vilafullermd: my last remark was truly a joke to make you fail your bingo (just realized it could me mis-interpreted)17:46
* vila really off17:46
=== oubiwann is now known as oubiwann-away
=== oubiwann-away is now known as oubiwann
GaryvdMHi mgz19:16
mgzhey GaryvdM19:16
GaryvdMHay - I'm very excited about this. Take a look at
lifelessmgz: hi19:17
GaryvdMHi lifeless19:17
lifelessGaryvdM: hi19:17
mgzwill this be more exciting qlog-online stuff when it loads?19:18
mgzhey lifeless.19:18
GaryvdMmgz: yes - Is my router not setup correctly?19:18
lifelessmgz: curious what you think of the latest testtools changes19:18
mgzjust doing tracert now...19:18
mgzhm, I arrive, but at wblv-ip-pcache-5-vif1.telkom-ipnet.co.za19:19
GaryvdMAh - I think that is a proxy. Try
mgzI need to go over the last few revs still lifeless, but the raises matcher I'm a little concerned about19:20
mgzit's potentially good as it can solve the thing where you need the exception returned to check extra aspects of it19:21
mgzand also my expectError thing.19:22
mgzI think? With Not at least.19:22
mgzwould still be confusing to spell.19:22
mgzthat's pretty fancy Gary. I've got some wrapping-related spacing issues, but can possibly think of a cunning svg hack that'll make life easier there.19:25
GaryvdMYes - I can figure out how to tell the svg to layout relative to the hight of the table row with out javascript19:26
GaryvdMmgz: what hack?19:27
mgzwell, you can stretch the image rather than setting a height in px, which would also make your nice circles oval19:27
mgzso you'd then need to do something else there as well.19:27
mgzideally you'd not be breaking the lines up into bits, but laying a complete graph over the table would be complicated19:29
GaryvdMAnyway - I'm quite excited about it :-)19:31
GaryvdMlifeless: Did you take a look?19:32
lifelessits shiny19:33
lifelessa little slow19:33
GaryvdMlifeless: Probably my bandwidth.19:33
mgzhaving js disabled makes life so much nicer :)19:34
GaryvdMmgz: I could have one svg element for then dot, and one for the lines, so that I can size then lines separately from then dots. But there is not a way to make a img/svg hight=100% in a table row :-(19:36
GaryvdMWithout js19:36
mgzhm, I think I had one...19:36
* mgz checks his note19:36
mgzbrowsers certainly have some issues, at any rate :)19:42
GaryvdMHi mkanat. Take a look at :-)19:51
mkanatGaryvdM: OH COOL!!19:52
mkanatWow that is awesome.19:52
mkanatGaryvdM: It doesn't do any work until I click on a +, right?19:54
mkanatGaryvdM: I mean, any extra work.19:54
GaryvdMWell - It has to load the whole graph on first load, but it caches it.19:56
mkanatGaryvdM: That's no different from what we do now, though, is it?19:56
GaryvdMTo recalculate a new layout is very quick.19:56
mkanatGaryvdM: We can't have any performance or memory-use regressions in loggerhead right now--Launchpad won't be able to live through it.19:56
GaryvdMmkanat: Sure - I understand that.19:57
mgzlifeless: so, I don't like that assertRaises becomes assertThat + lambda, but apart from that it all seems reasonable.19:57
mgzreally it's a python problem that it's hard to write declarative code prettily.19:58
GaryvdMmkanat:  I do have alot of overlap of what is cached, and so I need to do some work there.19:58
mgzmostly assertThat seems like extra typing and worse error messages so far to me.19:58
mkanatGaryvdM: Okay.19:58
mkanatGaryvdM: But the UI looks very cool.19:58
GaryvdMmkanat: Are you using history_db on launchpad yet?19:58
mkanatGaryvdM: Not on Launchpad, no.19:58
mkanatGaryvdM: Are you using history_db for your work?19:59
GaryvdMmkanat: No - It dose not help much if you still have to load the whole graph.19:59
mkanatGaryvdM: I'm pretty sure that that's its purpose.20:00
mkanatGaryvdM: Is to cache the graph.20:00
GaryvdMmkanat: If I can get my code to work with only portions of the graph, the using it would help.20:01
lifelessmgz: hmm, I find the errors better20:02
mgzI'll paste you an example ina sec...20:03
mgzI think the problem is generally that assertThat is less specific so knows less about what can safely be ignored, unlike the old function versions20:03
lifelessmgz: really? the reverse seems true to me20:04
lifelessthe matchers can be very specific20:04
lifelessmgz: or do you just mean how far up the stack trace goes?20:04
mkanatGaryvdM: Okay.20:05
mkanatGaryvdM: Perhaps by making it walk the graph when the + is clicked?20:06
GaryvdMmkanat: Yes20:06
mkanatGaryvdM: Okay. :-)20:07
mgzlifeless: example -> http://paste.ubuntu.com/530860/20:07
GaryvdMmkanat: Do you have any methods that you use to benchmark the memory usage?20:07
mkanatGaryvdM: Well, to figure out what's actually using memory, I use meliae. But otherwise, I just run load tests on it and see how big it gets, usually using a bunch of copies of the launchpad-itself branch.20:08
lifelessmgz: so, there are two differences20:08
lifelessmgz: one is the stack - I like the full stack (because I work on the test code itself)20:08
GaryvdMmkanat: ok20:08
lifelessmgz: the other is the formatting, which seems pretty much a wash in this case20:08
mgzthe first there is duplicative20:08
exarkunThe latter formatting is better.20:09
mgzyou get 'text/x-c++src' and None twice, and it's not really any clearer what's up.20:09
exarkunIt's easier to read and lets you copy/paste into a repl20:09
mgzit does tell you (or should do if the test is written right) which is the result and which is the expected, but is much more verbose20:10
lifelessexarkun: the assignment 'a =' is useful for you?20:10
exarkunlifeless: yes20:11
exarkunwhen the values are more complicated and it's not obvious how they differ20:11
exarkunalthough I'd rather the output highlight where the differences are so I don't have to grope around to find it myself ;)20:11
lifelessexarkun: right, thats the point of the interface actually.20:11
lifelessexarkun: have you seen what soupmatchers does?20:12
lifelessit looks for the difference and shows it20:12
lifelessnot as a diff, but semantically.20:12
exarkunlifeless: but I just want to use assertEquals20:12
mgzlifeless: so I get the theoretical benefits of assertThat style, but at the moment I mostly see the downsides in practice20:13
mgzthey're small, but could do with some polishing love.20:13
mkanatabentley: You know what else I don't like about looms? I actually don't like having to write commit messages every time I commit to a thread.20:14
abentleymkanat: you mean a normal commit?  Or "record"?20:14
mkanatabentley: I mean an actual commit, like when I'm working on a loom.20:15
mkanatabentley: Since I have to commit in order to switch threads.20:15
lifelessmkanat: you do ?20:15
mkanatabentley: And I have to commit to make a new thread on top of this one.20:15
mkanatlifeless: Yes.20:15
mkanatbzr down-thread upstream20:15
mkanatbzr: ERROR: Working tree has uncommitted changes.20:15
abentleymkanat: Well,  you *could* shelve them.20:16
lifelessmkanat: what does [bzr switch upstream' say?20:16
lifelessmkanat: its meant to carry changes across for you.20:16
mkanatlifeless: I want this working tree to stay with this thread.20:16
lifelessmkanat: then yes, shelve or commit is appropriate.20:16
mkanatlifeless: I had no need or desire to commit to the thread, I just wanted to back and update upstream to the actual current upstream.20:16
lifelessmkanat: aaron's shelve-in-developing-patch-context is very nice in this regard.20:17
mkanatlifeless: I'm not familiar with that.20:17
lifelessmkanat: pipelines have a shelve context in the 'thread' equivalent (in the branch, a single pipe)20:18
mkanatlifeless: Ah, yeah.20:18
lifelessthis is something that would benefit looms too, poolie has some ideas on unifying the should-be-common aspects of pipelines and looms20:18
lifelesspipelines have much more polish20:19
mkanatCool. One thing that I really would like is a simpler path to do "rebase to upstream and delete all the threads that are now identical to upstream".20:19
lifelessmkanat: I think loom prompts you for that doesn' it?20:19
lifelessmkanat: whats your loom version20:19
mkanatlifeless: 2.120:19
mkanatI can try updating.20:19
lifelessthats your problem20:19
lifeless2.1 won't even push properly to launchpad20:20
mkanatOkay. Will trunk work with bzr 2.1.1?20:20
lifelessshould do20:20
abentleymkanat: I'm not a fan of rebase, but I'd be happy to make "bzr remove-pipe --auto" remove pipes that have been merged.20:21
mkanatabentley: I was using "rebase" in the loose sense, not in the sense of the command.20:21
mkanatabentley: That sounds like a good solution.20:22
mkanatI think I may start using pipelines in looms. Another example of a bad situation is when I screw up upstream somehow, and then up-thread.20:24
mkanatThen it's very difficult to go back and fix upstream.20:24
mkanatOkay, loom trunk is broken in some way that I do not now want to spend time debugging.20:26
mkanatAttributeError: type object 'InterLoomBranch' has no attribute 'unwrap_format'20:26
abentleymkanat: You could use looms in pipelines, but I don't recommend it.  Your head could explode.20:30
mkanatabentley: Hahahaha.20:30
mkanatabentley: I meant "instead of".20:30
dashyou got your tubes in my loom!20:30
mkanatJust typed "in" by accident.20:30
mkanatIt's not a trunk, it's more like a series of looms.20:30
abentleymkanat: Ah.20:31
mkanatBTW, the Internets ^^^^^20:31
mkanatOh, and heaven forbid that what gets checked into upstream is slightly different than what was in your loom.20:37
mkanatThen you're in for a fun time called "re-creating every thread".20:37
mkanat(Or a separate fun time called "resolving spurious conflicts in every thread".)20:38
lifelessmkanat: I don't see how that is different in looms vs pipelines20:55
mkanatlifeless: I haven't used pipelines yet.20:55
lifeless(either of the upstream workflows you describe)20:55
mkanatlifeless: Yesterday you wanted me to say what I didn't like about looms, and I'm using them in actual practice right now, so I figured I'd just mention what I was running into.20:56
lifelessmkanat: I value the feedback20:56
lifelessmkanat: better if you file bugs :)20:56
mkanatlifeless: Okay.20:56
lifelessmkanat: I'm just noting that the specific workflow I don't see a different in loom vs pipelines20:56
mkanatlifeless: Okay.20:56
lifelessmkanat: particularly for that unwrap_format error21:02
* mkanat nods.21:02
GaryvdMmgz: I've now separated the nodes and lines. But I can't get it to link the height of the svg to the height of the row.21:37
GaryvdMmgz: I'm not sure which part of that page you sent me I should be looking at?21:38
* GaryvdM has another idea to try...21:38
ovnicrafthi folks, what this means bzr: ERROR: [Errno 1] Operation not permitted: 'some_file' ?22:17
poolieprobably you don't have permission to write to it22:17
EdWyse_OfficeIs there any way to fix this error: http://bzr.pastebin.com/RpbtF5gt22:20
ovnicraftpoolie, there is anyway to commit ignoring conflicts22:24
GaryvdMmgz: Got it working \o/22:30
poolieovnicraft, sorry, not at the moment22:30
poolieEdWyse_Office, that looks like a bug that we fixed in a recent release, are you on the most current one?22:31
GaryvdMHi poolie. Check this out :-)22:31
ovnicraftpoolie, i was researching about multi-branch support is that in your roadmap?22:31
EdWyse_Office2.1.1-4 from the epel repo.22:31
GaryvdMovnicraft: Are you maybe think of colocated branches? i.e. having more than one branch in a folder?22:32
EdWyse_OfficeIt looks like it was the image that was messed up somehow. I was able to fix it be reverting that file (which hadn't been changed or added) and committing.22:33
ovnicraftGaryvdM, yes22:33
GaryvdMovnicraft: There is a plugin: bzr-colo22:34
ovnicraftGaryvdM, yes but we need support in lp22:35
GaryvdMGoodnight all22:39
mgznight Gary, well done for getting the svg joined up.22:42
awilkinsHow long does it usually take after you upload sources to a PPA for them to show up?22:55
awilkinsAnd does it still work if the sources are not part of the distribution?22:55
poolieawilkins, normally you will at least see them being queued to build within a few minutes23:11
poolieyou should get an 'accepted' email23:11
pooliethe time for them to actually build varies a lot depending on lead23:11
pooliewhat do you mean by 'not part of the distribution'?23:11
poolieit's fine to build packages that are not already in ubuntu23:11
awilkinspoolie, Aha, rejected email23:13
awilkinsThat's what I get for not keeping a notifier open23:13
awilkinsThis packing malarkey really needs clearer docs or tools, but I do appreciate it's not exactly simple23:15
mgzlifeless: testtools r128.1.6 is problematic, it's not valid Python 3 syntax and stores an exc_info in locals. I think examining the premise that it should be possible to assert non-Exception subclasses should be re-examined.23:24
lifelessmgz: grah. sory23:27
lifelessmgz: uhm, we can fix the locals thing23:27
mgzyeah, I'm more worried about Python 323:27
lifelesswe can't self host on this without the facility though23:27
mgzI think the only way of reraising with a stored traceback there is setting in on the exception instance23:27
mgzwhich is All New so... can't also work for pythons people actually use23:27
mgzboth KeyboardInterrupt and SystemExit can be raised outside the control of the thread running tests, so you can't ever write a proper unittest for raising one23:29
mgzthis is admittedly a pretty academic objection.23:29
mgz...maybe I should be in the testtools review group... though not sure I'd have had time to look at this before today anyway23:30
mgzhm, not coming up with any genius ideas for different spelling keeping the current semantic23:32
mgz(it's wrong on Python 2.4 too, but that's probably less important)23:32
poolieawilkins, i agree23:34
pooliehi mgz23:34
mgzhey poolie23:34
mgzI shall file some bugs lifeless. Think this is a good change, just wants some more minor pokes.23:36
lifelessmgz: we'd be delighted to have you as a reviewer/committer23:38
mgzthe thought of fixing the expectError case particularly interests me, especially as we've got some backwards expectFailure/assertRaises currently.23:39
pooliemgz: ?23:39
lifelessmgz: we have a fairly nonblocking review process, trying to keep things agile23:40
awilkinsDarn. Only the "dev" package has the library in it. Something is wrong there....23:42
mgzit's a good thing, and jml has also put out some feelers on wider version testing as testtools tries to have such a wide support net23:42
mgz(which would help prevent releasing with 2.4/3 borked)23:44
mgzpoolie: I was thinking of -> http://bazaar.launchpad.net/~bzr-pqm/bzr/bzr.dev/annotate/head%3A/bzrlib/tests/per_workingtree/test_smart_add.py#L30423:47
mgzwhich is hard to read, but makes an unexpected success23:47
mgzhave a branch fixing that silence problem, but spelling the intention of that test correctly is currently hard, and Robert just added some new fancy to testtools that should make it possible in future.23:49

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