/srv/irclogs.ubuntu.com/2010/07/02/#bzr.txt

mgzlifeless: if you kick up in te next few hours and want to look at some subunit things I'll be around00:01
lifelesshi00:01
lifelessI'm here00:01
lifelesstrunk subunit and testtools are, AFAICT, ready for releases00:01
lifelessDamn, I wanted to grab tres00:01
mgzwe didn't explictly change subunit to use the unicode path though right? just relied on the __str__ behaviour now giving utf-800:08
lifelesssubunit depends on unicide exceptions no00:12
lifelessw00:12
lifelessif someone has it fail, we can say 'your exception isn't serialisable safely, see testtools for helpers, or hey, use testtools00:13
johnjosephbachirhey folks. a developer in my team has been using a branch bound to the server (IE, only using checkout, update, and commit), but also often uses the --local flag on commit and then commits to the server in a batch. she recently experienced a situation where she is missing some local commits, and can't find them in the repo OR her local code. she suspects that this is because she did a pull at some point in bettween local commits and server commits00:39
johnjosephbachirhow can we start investigating what happened? i suspect this code is hiding out in one of the "hidden" branches that bazaar keeps around... i can't remember the name of that concept00:40
johnjosephbachiri suppose this is a mailing list -grade question00:48
johnjosephbachirfwiw, seems like i had the same problem as this guy http://srtsolutions.net/blogs/chrismarinos/archive/2008/10/24/don-t-loose-your-head-with-bazaar.aspx01:14
spivjohnjosephbachir: sounds strange01:16
spivjohnjosephbachir: it would be good to have a bug report with as many details as possible01:16
johnjosephbachiralas i probably don't have the time to do that01:16
=== mnepton is now known as mneptok
lifelessmorn morn01:17
mgzah, lifeless back again01:26
mgzsee my name in lights on planet debian, thanks ;)01:26
johnjosephbachirspiv: thanks-- code saved!01:28
lifelessmgz: :)01:38
lifelessmgz: and on planet.python.org01:38
spivjohnjosephbachir: great!01:38
mgzso, my subunit question boils down to if we want to something before release about:01:38
mgzhttp://bazaar.launchpad.net/~subunit/subunit/trunk/revision/125/python/subunit/__init__.py01:38
mgzyour check-and-mention testtools suggestion sounds fine to me01:38
pooliehello mgz, spiv, lifeless01:38
mgzsomething like getattr(self, "_exc_info_to_unicode", None), then fall back to self._exc_info_to_string and complain if it's not ascii01:38
mgzhey poolie01:38
lifelessmgz: we could derive from testtools01:38
mgzis a goal to avoid an explict testtools depedency though?01:38
lifelessno01:38
lifelessit has an explicit one already01:38
mgzokay, in which case, just using the testtools class and maybe a version check would do01:38
lifeless-garh01:39
lifelessmgz: see my last commit to testtools :P01:41
mgzha!01:42
mgzmy fault too, didn't get as far as testing attempt 2 on py2k01:43
mgz*301:43
aaron01I'm trying to use bzr import on a tarball, but I get a 'tree is malformed' error. Any ideas?01:49
mgzmaybe something like: http://paste.ubuntu.com/458088/01:51
lifelessmgz: sorry I had already pushed :P01:59
mgzah! I'll pull.01:59
lifelessaaron01: please file a bug? Not sure what is wrong there.01:59
aaron01Seems like adding a top level dir (that will be stripped) fixes the problem02:00
aaron01but now getting it trying to import that dir into another branch :(02:00
aaron01s/it/the same error02:00
pooliespiv does bug 60063602:00
ubot5Launchpad bug 600636 in Bazaar "bzr ci crashes after a bzr break-lock (affected: 1, heat: 6)" [Undecided,New] https://launchpad.net/bugs/60063602:00
poolielook to you like just another issue of a connection drop causing "too many concurrent requests"02:00
poolieit does to me02:01
jamlifeless, poolie: do you know why when submitting a bug with bzr, you get the option to set the priority, etc?02:01
jamI don't see that for Meliae, or Loggerhead, or fastimport or any other project, and I miss it02:01
mgzokay, yup, your rev is a less borked version of the same02:01
jamanyway, back to family time, just curious if it was an option that needs setting somewhere02:01
pooliejam it's something to do with permissions02:03
pooliei'm not sure which thing controls02:03
poolieit02:03
poolieperhaps whether you're in the bug control team02:03
poolieask in #launcphad02:04
spivpoolie: oh wow02:04
spivpoolie: the commit code path was meant to be fixed ages ago.  Interesting!02:04
pooliemm?02:04
spivIt does seem plausible that a connection drop is involved.02:05
spivHmm, likely even.02:05
pooliethere is a message about it02:05
spivOh right.02:06
lifelessjam: I think its driver permission02:07
lifelessmost things don't have driver set02:07
mkanatpoolie: Hey hey, do you have a second?04:32
pooliehi, i do04:33
mkanatpoolie: Great, let me remember what I needed to chat with you about....04:33
mkanatpoolie: Oh, right. So, it sounds a bit from the discussion with Francis and the way things are gong on the list that I am in fact actually sort of going to end up owning loggerhead. Is that right?04:34
lifeless\o/04:34
mkanatpoolie: I mean, with oversight from you and the bzr team.04:34
pooliethat sounds good to me if it's ok withy ou04:34
mkanatpoolie: Yeah, it's totally okay with me, but it will probably require an adjustment in the way that the contract works.04:34
mkanatpoolie: Should I discuss that with you first and then Francis, or should Jolie just discuss it with Francis?04:36
pooliewith me first04:37
poolieit's up to you and jolie which of you wants to be involved from your side04:37
pooliethis is because it's expanding the scope of your work?04:37
poolielet's talk in private04:37
mkanatOkay.04:37
lifelesspoolie: I have a request; please document in doc/developers/testing.txt how to make bzr selftest run on a ramdisk.04:47
lifelesspoolie: I think many folk would benefit.04:47
lifelessI can file that as a bug if you would like.04:48
poolieno i'll just do it04:50
lifelessthanks!04:52
lifelesspoolie: http://pastebin.com/rULLkF2907:17
lifelessvila: --config please, not --conf07:24
lifeless--conf is a strange abbreviation07:25
lifelessc = config.LockableConfig(lambda : location)07:25
lifelessreads really strangely07:25
lifelessperhaps the LockableConfig constructor should be different07:25
lifelessvila: I *really* wish you would not mix changes to imports with test changes07:27
lifelessvila: it makes the patch about 4 times harder to review.07:27
vilalifeless: I don't want to break the chain of constructors, I can add a def get_filename if you prefer07:27
lifelessvila: its like a massive whitespace change *just because*07:28
lifelessvila: and as far as I can tell no actual changes to many tests.07:28
lifelessvila: so I'm going to push this back to you07:29
vilalifeless: yeah, jam complains about that too, but we won't get the import problem addressed until 1) we all stop importing symbols, 2) we fix all remaining wrong imports07:29
lifelessget me a diff that shows the *actual* test changes, and I'll happily review it.07:29
lifelessvila: be tolerant of what you accept, and strict in what you output - wonderful IETF principle.07:29
lifelessvila: it applies here - accept difference in files you are editing. Make what you write be up to scratch.07:30
vilalifeless: this one goes both ways :) That was my reply to jam :-D07:30
lifelessvila: I don't think you're considering the impact on the reviewer enough.07:30
lifelessWe're here to think about the change, about what it is meant to accomplish, and we're having to go line by line through noise.07:30
vilaI do, but the alternative is to postpone these fixes endlessly07:30
lifeless+107:30
lifelessvila: 'the import problem' is approximately 0% of our bugs.07:32
lifelessvila: a bad review can easily let a new bug in, or fail to see a structural issue.07:32
lifelessvila: I really want you to think about the relative costs and merits here.07:32
poolievila i think lifeless has a point there07:33
vilaI really wish to feel less alone to realize that our actual tests serve as examples, get copy/pasted and decrease the overall quality which as an impact on our productivity because it makes them harder to modify :-(07:34
pooliei think i agree with you on that too :)07:35
pooliedoes importing the module make much difference in tests?07:36
pooliepresumably we don't care much about laziness?07:36
poolieor is it just for the sake of consistency and examples?07:36
lifelessvila: I really don't see that the changes you're making make stuff easier or harder to modify.07:37
lifelessJust different.07:37
lifelessnot importing symbols has a specific benefit when we want to use lazy_import, but that does not apply to tests [perhaps it should, but the general import in tests is TestCase*, which can't be lazy imported anyway)07:38
vilabeing consistent makes it easier to move code from one file to another or even inside the same file sometimes07:41
lifelessI don't like doing 'from bzrlib import trace' in tests, because in tests you normally want a test object of the class, and that can't be called trace, so it has to be 'from bzrlib import trace as _mod_trace', and thats ugly.07:42
vilanot being consistent means you never know where a symbol is coming from and in this particular case prefixing with the module makes it 4 times easier to read07:42
vilalifeless: <1% of the cases07:43
lifelessLook, there are two things here.07:44
lifelessa) when we do cleanups07:44
lifelessb) whether they are better or worse.07:44
lifelessPut (b) to the side; I'm tired, have a different opinion anyway, and *I was not complaining about b before*.07:44
lifelessI, and John, are both complaining about mixing code changes with cleanups-to-code.07:45
lifelessif everytime you touch a module, you want to put in a separate branch to clean it up, it would not take much more-or-less of your time07:46
lifelessit could be reviewed totally separately to the *actual thing* you are working on.07:46
lifelessand your colleagues wouldn't be feeling that reviewing your changes is hard07:47
Outlanderhi07:52
Outlanderwhat's the best way to convert cvs repo to bzr? appears to be a few different ways?07:52
vilalifeless: 1) I got vaccines yesterday and that makes me grumpy  2) I've made separate branches in the past for cleanups and that raised discussions anyway so I grew tired of doing that on top of feeling alone cleaning this up 3) the import thing sounds like spurious spaces changes, yet, reviews are either a) not pushed back when they introduce them b) pushed back when they are VWS07:55
vilathe end result is that spaces are still there and the problem is not addressed07:55
maxbOutlander: what are the ways? I only know of cvs2bzr07:56
vilathe imports are more important than spaces and there has been associated problems with them (I encounter one when trying to monkey-patch transport.get_transport, another one was people were importing symbols already imported from another module which broke when the symbol went to a different module or were fixed to not being imported as a symbol)07:57
lifelesson whitespace - when it gets in the way of review, it gets pushback from me; when it doesn't, it doesn't.07:58
lifelessthe changes here are big fraction of the total patch.07:58
lifelessits an 800 line patch, for a 200 line change, or something like that.07:59
* vila tells his vaccines that they don't have to make it grumpy and come in the way to progress07:59
vilalifeless: that's unfair, please check07:59
lifelessI did07:59
lifeless822 lines of diff08:00
vila1) s/file/infile/ trivial to filter on reading08:00
lifeless542->669 are the actual new tests (I think, my eyes are glazing over so I may be missing other semantic changes)08:00
vilaadd 426-> 44808:01
lifelessand 300 lines at the start; so 420/82208:01
lifelessok, 440/82208:01
lifelessand thats exactly my point08:01
lifelessin all the excess I couldn't see an important part of the change.08:01
vilaso, basically, you're saying that you should not cleanup, but you did so in many proposals and I supported that because it's part of keeping the code in good health, 324->333 for example is not required but the cleanup version make it easier to see what is happening here (and avoid useless calls)08:04
spivHe's saying: consider the audience (which is good advice for any kind of writing)08:05
vilaSo where is the limit on cleanups ?08:05
lifelessThere is a balance; I may have gotten it wrong in the past, and for that I'm sorry.08:05
vilaI'm sorry too but that doesn't address the problem :) Let's put emotions aside and focus on solutions08:06
spivIf you make a diff that seems unnecessarily hard for a reviewer to review, expect them to be a bit grumpy about it.08:06
vilayup, I was expecting that. I was hoping that people were rejoicing about cleanups progressing instead of staling though :)08:07
spivSo either try to make easier-to-review diffs, or perhaps take other steps to ease the burden, e.g. point out the lines of the diff with the interesting changes.08:07
vilaI (and I think others) have been daunted in many occasions...08:08
lifelessvila: There are two sorts of cleanups here: code clarity ones, and 'import style'. The former I rejoice at, the latter are entirely mechanical, and have caused bugs in the paste. I do not rejoice at those.08:08
spivThere's no fixed limit, it really depends on the details of each patch.08:08
vilawhich bugs ?08:08
lifelesswe've had import cleanups break due to shadowed names08:09
lifelessthey are not risk free.08:09
vilatrue,08:09
lifelessThey are also not reviewer time free.08:09
spiv(e.g. a 90% cleanups patch might be fine if the total patch is only 10 lines long :)08:09
vilathey are not time free for me either, but some tests are so unclear that I spend time deciphering them too08:10
lifelessI'm saying that the cost and benefit need to be weighed; neither side is 0, and neither side is aleph-008:11
lifelessor aleph-108:11
vilaon the overall, I consider that importing symbols is easier to *write* but harder to *read* and leads to more symbols staying around after they are not being used08:11
vilaand since code is more often read than written, the weight is more important too08:12
lifelessvila: I don't see why symbols that aren't used is a maintenance problem; what does it make non-trivial that is trivial otherwise ?08:12
vilareview is *part* of the readers but not the only part08:12
lifeless(I like a lean import list btw, don't get me wrong)08:12
vilafalse positives when grepping or even thinking about the module08:12
lifelessvila: something you can do in cases like this is filter the diff08:12
lifelessand only show the bits that are relevant08:13
lifelessandrew has done that in the past and its very nice08:13
vilalifeless: ha, nice one08:13
lifelessvila: but really, it all comes down to what has been said before08:13
lifelessconsider what the people you ask to review are going to be reading.08:13
lifelessyou know what a long repetitive patch is like to review.08:14
vilathe problem with that is that we tend to *never* address some problems08:15
vilaand we also said before that we are supposed to clean up things when we modify close enough parts08:15
lifelessI've got nothing more to offer.08:16
lifelessI'm sad.08:16
vilaso, hmm, looks like I will get back to the two branches approach but there was some concerns about polluting the active review queue with such cleanups too08:17
vilaand landing them without review was also frowned upon08:17
lifelessI think that that concern is a reflection of this08:17
spivvila: so, my opinion is that opportunistic cleanups of nearby code is fine, but not at the cost of significantly worse diffs08:17
vilalifeless: I don't want to make you sad because I08:17
vilalifeless: I don't want to make you sad because I'm cleaning things up which should make you happy, that's counter-productive :)08:18
spivvila: If it e.g. makes a smallish diff large and repetitive I'd rather get two separate diffs.08:18
vilaso, how about a cleanup branch as a pre-requisite that gets automatically approved if not vetoed when the main branch is approved ?08:19
spivUm,08:19
vilamore work, but I'm ready to do it if it means we progress here08:20
spivPerhaps that's ok, although it seems like a solution to a problem we don't have yet?08:20
spivIs it really that hard to get approval for cleanup-only branches?08:20
vilawe have a problem: our code base is not consistent08:20
spivI haven't found that to be the case, but I also have not tried to land a large one recently.08:20
spivTo be clear: a pre-req branch sounds fine to me08:21
spivIt's the "automatically approved" part that I'm unsure about.08:21
spivAlso, I think we still have the notion that an unreviewed branch can "time out" and just be landed, although we don't exercise it very often.08:22
spivWhich would seem to cover that case (but I would hope we still do not exercise it very often).08:22
vilaspiv: I think that's the crux of the problem: do we want cleanups, do we want to review them ?08:28
spivYes, and yes.08:30
spivIn my opinion :)08:30
lifelessI might let poolie have his office back.08:31
vilathen it boils down to not mixing them up with actual fixes08:31
spivThe review will often be easy: read the explanation in the cover letter, and then eyeball the diff to feel secure that it is fine.08:31
spivRight.08:31
lifelessvila: thats all I asked for08:32
vilalifeless: good, I'll try harder then08:33
vilalifeless: and sorry for starting grumpy on this subject08:40
mneptokFINISH HIM!08:44
mneptok(sorry. couldn't resist.)08:44
spmwe hadn't noticed :-)08:45
mneptoki love you, too :)08:45
spmmneptok: so how's the new job going since you abandoned us all?08:45
lifelessmneptok: cavemen in mountain fortresses shouldn't throw spears.08:48
mneptokspm: it goes well. busy as hell. long days. but quite rewarding.08:49
spmexcellent!08:49
mneptoklifeless: i'm touched you noticed my brow-ridge.08:49
spmtouché!08:50
lifelessmneptok: I've seen the photos08:50
lifelessI went blind.08:50
lifeless:)08:50
mneptoklifeless: you know, i recently got another photo from the same day the "mnep the gigolo" photo was taken. this one onvolves a camisole, a top hat, and clown shoes.08:51
lifeless_LOL_08:51
mneptokoh, and grandma underwear08:52
lifelessthis is a family rated channel08:52
mneptokgrandma's part of the family.08:52
mneptokand until i finish chewing through this leash, so am i. ;)08:53
mneptok/m/m lifeless http://mneptok.com/kvf-clownshoes.jpg08:55
mneptokgah08:55
mneptoktab complete fail08:55
mneptokah well, don't click that if you're under 18 or value your sanity08:55
spmI've menepolo'd before. how bad could this be.....08:56
spmAAAAAAAAAAAAAAAAaaaaaaaaaaaaaaaaaaa08:56
* spm reaffirms the desire to NOT click on any menptok.com urls to images again08:57
mneptokam i not hot?08:58
spmum...08:59
mneptok01:45 < mneptok> i love you, too :)09:00
spmhahahaha09:00
* mneptok rm's before Google decides to index that09:06
spmGoogle. Knows. All. Google. Sees. All.09:08
pooliethat's exactly what stephenconroy needs to save us from09:09
poolieapparently09:09
mneptokBing knows and sees all, but the Executive Oversight Committee For Strategic Use Of Internet Data And Applicability For Increased Market Penetration can't get the data on their Zunes.09:11
spmEOCFSUOIDAAFIMP ?09:12
mneptokgesundheit09:12
spmthank you09:13
=== FryGuy_ is now known as FryGuy-
=== lifeless_ is now known as lifeless
=== lifeless_ is now known as lifeless
lifelesspoolie_: your _ is showing.10:51
poolie_heh10:57
poolie_as nethack says "you are being punished"10:57
poolie_i think that's actually a _o10:58
lifelessyah ball n chain11:06
=== lifeless_ is now known as lifeless
javehello11:34
=== lifeless_ is now known as lifeless
=== lifeless_ is now known as lifeless
javeI'm trying to set up an Hudson instance to build emacs from bzr12:19
javethe Hudson bzr plugni tries to do this: bzr branch http://bzr.savannah.gnu.org/r/emacs/trunk /var/lib/hudson/jobs/emacs-trunk/workspace12:19
javebut its really slow12:19
jelmerjave, is there any reason it needs the full history12:20
lifelessjave:  do 'bzr init-repo /var/lib/hudson/jobs12:20
javewell, I want it to be compatible with the hudson-bzr plugin, will it work if I do it by hand?12:21
lifelessyes12:21
javelifeless: stuff that has nothing to do with bzr lies in /var/lib/hudson/jobs12:21
lifelessjave: you're right12:22
lifelessadd --no-trees to the command12:22
javehmm ok12:22
lifelessthought that may cause it to not work12:22
javeok12:22
lifelessI'd really just do what I initially suggested12:22
javeok, but what happens if I have different jobs with different bzr urls?12:23
javeI think I will need special workspace configuration for hudson12:27
lifelessno12:27
lifelesshonestly12:27
lifelessjust init-repo at the jobs level12:27
lifelessits what everyone does.12:27
javeok12:30
=== khmarbaise_ is now known as khmarbaise
=== lifeless_ is now known as lifeless
* bialix waves at GaryvdM14:28
GaryvdMHi bialix14:29
bialixHey Gary!14:29
bialixThank you for doing release14:29
GaryvdMSure - Want it to get into the win installers14:30
bialixyeah :-)14:30
bialixhow's footbal 'raound you?14:30
bialixhow's football around you?14:30
GaryvdMAh - cool. I don't watch it much14:31
GaryvdMDo you watch it?14:31
bialixGaryvdM: sometimes. last weeks was a crunch for me :-/14:32
bialixGaryvdM: I'm planning to be on vacation in second half of July. And we need to release 0.19 final till August for Maverick. It means I have only 2 weeks for any QBzr development14:35
bialixGaryvdM: do you have any specific things in mind that I should look at?14:36
GaryvdMbialix: I'm also planing on taking a weeks leave soon.14:36
GaryvdMbialix: It would be cool if they were in sync14:37
bialixso maybe we should release 0.19 final till our vacations?14:37
GaryvdMbialix: I want to try get at least qcat and qdiff to have a toolbar like qannotate14:37
GaryvdMfor 0.1914:38
bialixhmmm14:38
bialixyep, it would be cool14:38
bialixI will try to look at qlog labels again14:38
bialixwe have one special case here: bzr qlog colo:14:38
GaryvdMI've been chipping away at the threads branch.14:39
bialixI want to see labels as colo:trunk, today it's shown as colo:/trunk14:39
bialixchip away? what do you mean?14:39
GaryvdMbialix: It's a saying - If you want to cut through a log, you chip away at it with a axe14:41
GaryvdMbialix: work on it in small chunks..14:42
bialixthat means you have slow progress, correct?14:44
GaryvdMbialix: slow, but steady14:45
jam morning GaryvdM, bialix, and vila14:46
vilamornign jam14:46
GaryvdMHi jam14:46
bialixheya jam! and bonjour vila!14:46
vilabialix: privet :)14:46
bialix:-D14:46
vilabialix: brasil - netherlands should be a nice one ;-)14:47
GaryvdMHey vila14:47
bialixvila: yep, I've heard comments and prognosis14:47
GaryvdMjam: lp:~garyvdm/bzr-windows-installers/maybe14:48
GaryvdMjam: I committed rev 119 with --author "John ... - I hope you don't mind14:48
GaryvdMjam: Please could you do a quick review of rev 12014:49
* vila feel depressed, 2.1.0 and 2.1.1 have a test failure: bzrlib.tests.test_selftest.TestTestCaseWithMemoryTransport.test_dangling_locks_cause_failures does that ring anyone bell ?14:49
vilaand 2.1.2 too14:50
GaryvdMjam: I'm now stuck with a can't find zlib.h build error. Maybe I need to adjust so env var.14:51
jamGaryvdM: well, for 2.2 we shouldn't need it at all14:51
jammaybe setup.py needs updating?14:51
jamor something is importing it that shouldn't be14:51
jamI thought mgz tracked those down14:51
jamvila: I haven't seen it before14:52
vilajam: me neither 8-(14:52
vilaadd 2.214:52
GaryvdMjam: building _chk_map_pyx.c14:52
jamGaryvdM: other than not needing zlib.h, the original goal was that the build script would download zlib and put it in the path14:53
vilajam: pass in trunk at least (which kind of rules out a weird setup here)14:54
jamGaryvdM: so the issue14:54
jamis again that igc's new code doesn't grab a tag14:54
jamit grabs the latest in a branch14:54
jamand lp:bzr/2.2 hasn't been updated14:55
GaryvdMhttp://pastebin.org/37507014:55
jamso it is still trying to build old code14:55
GaryvdMjam: Ah - let me try build bzr.dev14:55
jamGaryvdM: _chk_map_pyx.pyx has "cdef extern from 'zlib.h':"14:55
jamwhich shouldn't be in 2.2b314:55
jamGaryvdM: it looks like we need to do more direct work on ian's code14:55
jamand possibly get ahold of him to determine what he had in mind14:56
jamvila: does it fail when tested in isolation (and succeed in bzr.dev in the same case)?14:56
vilayup: ./bzr selftest -s bzrlib.tests.test_selftest.TestTestCaseWithMemoryTransport.test_dangling_locks_cause_failures --no-plugins14:56
vilawith extensions compiled in all cases (but that shouldn't be relevant)14:57
jamfails here, too....15:00
jammakes me think it is a test-tools issue15:00
vilajam: forget it, sorry for raising it, unless pqm yelles at you , yeah, ne too15:00
jamvila: len(result.failures) == 115:01
jamI have the feeling one testtools considered something a Fail15:01
jamand one considered it an Error15:01
viladefinitely raises a bell now that you mention it15:01
jamso I would say the test should become something like15:01
jamassertEqual(1, len(result.errors) + len(result.failures))15:01
jamwith a big:15:01
jam# Testtools sometimes considered this an Error, and sometimes a Failure15:02
jam# so make sure to trap for bothe15:02
jamvila: I seem to remember being worried that relying on a 3rd party tool for the test suite would cause spurious failures and lock-step versioning issues15:02
vilaI'm pretty sure lifeless did a patch very close to that15:02
jamtotal_failures = result.errors + result.failures15:03
jamif self._lock_check_thorough:15:03
jam    self.assertLength(1, total_failures)15:03
jamyep15:03
jamin bzr.dev15:03
jamalbeit without the snarky comment against testtools15:03
vilahmm, I think I asked for a comment, whatever the content was :) But fater the landing15:04
vilaafter15:04
vilaanyway, we know how to fix it, back to regular schedule15:05
jamvila: feedback on https://code.launchpad.net/~vila/bzr/525571-minimal-lock-bazaar-conf-files-2.1/+merge/2908615:14
* vila holds his breath...15:19
chaosaddictanyone know what might cause this error message when doing a bzr fast-import?15:24
chaosaddict"bzr: ERROR: The file id "TREE_ROOT" is not present in the tree <bzrlib.inventory.CHKInventory object at 0xa2a610c>."15:24
jamvila: sent to the list15:25
jamsorry, breathe again15:25
viladeep shudder15:26
vilajam: a = AtomicFile() ; a.write(data) ; a.commit() ; a.close() ?15:28
jamvila: well, a = AtomicFile(filename); but yeah, something like that15:33
jamIIRC LocalTransport uses AtomicFile for put()15:33
jamGaryvdM: what else is in the environment that you need to copy? (It seems ok, I just wanted to check)15:35
jamanyone know if the 2.1.2 installers are looking good? I'm thinking I should extract a nonadmin version15:37
GaryvdMjam: It was failing like this. http://pastebin.org/37185815:38
GaryvdMjam: I thought it would be easy to just copy the env rather than play wack-a-mole15:39
GaryvdM*easier15:40
jamGaryvdM: so the concern is accidentally having an env var like CFLAGS suddenly change your build (and it starts working/failing surprisingly)15:40
jamhowever, I probably agree with you15:40
jamI'm fine with just copying15:41
jamgiven that everything else that builds just uses the existing env vars15:41
jamwe just want to *add* ones for tbzr15:41
GaryvdMjam: ok15:41
GaryvdMjam: I think we could maybe extend Project, Plugin, and Application in bazaar_releases.py to include revision specs.15:48
GaryvdMjam How do we allow for differences in revision specs, with out duplicating all other details?15:49
GaryvdMjam: Maybe copy and modify?15:50
jamGaryvdM: what do you mean duplicating all the other details?15:50
jamAre you thinking to have the same code base do multiple builds?15:51
GaryvdMjam: Differences in plugin version between distributions15:51
jamtraditionally we just had separate branches for this15:51
jamafaik that isn't planned15:51
jambut I could be wrong15:51
jamI also really don't know the plan for the distribution stuff15:51
jamCertainly I don't really want to debug why Mac OS X has plugin version x, but windows has version y15:52
GaryvdMjam: yes, you can currently do ./build.py bzr-dev or ./build.py bzr-2.2 or just ./build.py for both15:52
jamor even worse, Vista has X, Win7 has Y, and XP has Z15:52
GaryvdMjam in this context, distribution = bazaar major release series.15:52
GaryvdM2.1, 2.2, dev15:53
jambad name, then15:54
jamIMO15:54
GaryvdMjam: Agree  - lets look a renaming it once we have everything else figured out.15:58
jamGaryvdM: so for that, I would even expect *what* plugins are bundled to be different15:58
GaryvdM"Series" ftw15:58
GaryvdMjam: yes15:59
jamand I would expect the versions to be different at least 50/50.15:59
jamsince we have started working on stuff like stable qbzr releases, etc15:59
GaryvdMjam: For me but pdb is unusable with cygwin. I don't see a prompt. The prompt only shows after I've pressed a key. (I see the same thing with bzr uncommit)16:14
GaryvdMjam: Do you maybe know how to fix this?16:15
jamGaryvdM: I don't really know, something is weird on that machine16:15
jamI don't have problems at home16:16
GaryvdM:-|16:16
vilajam: fix with AtomicFile pushed16:23
* GaryvdM off to find food. bbl16:29
=== jamesh_ is now known as jamesh
jamvila: do you still need the intermediate StringIO, rather than just using AtomicFile as the thing you write to?16:39
vilajam: no, fixed16:46
jamvila: approve16:46
vilajam: thanks16:46
vila*now* I will have to take care of test failure :-/16:47
GaryvdMYhea - I don't get zlib err on bzr-dev.17:06
GaryvdMI now get this error: http://pastebin.org/37550417:07
GaryvdMjam: ^ Any ideas?17:08
chaosaddictI'm new to Bazaar, but it seems like it might be useful to be able to use the Bazaar Explorer to get a file at an arbitrary revision number.17:09
GaryvdMchosaddict: Like bzr revert foo -r x17:10
GaryvdMchaosaddict: That was recently added to qlog.17:10
GaryvdM(Bazaar Explorer uses qlog...)17:11
chaosaddictoh cool, thanks.17:11
mgzgaryvdm: I think I remember a list message about having to remove the py3k port bits of pyqt17:28
GaryvdMHi mgz17:28
mgzyeah, by jam, so he's probably the right person to ask.17:29
* jam hides17:29
jamugh. that terrible stuff17:30
jamI ran into it, did something which seemed to fix it, it broke again, tried something else, etc, etc.17:30
jamGaryvdM: we have this: excludes.append('PyQt4.uic.port_v3') in bzr.dev setup.py17:30
jamwhich is the only thing that could approximately work17:31
GaryvdMmgz: I can't find the mail. What is the subject?17:31
jambut I ran in to all sorts of hell17:31
jamleaving it out caused one failure, putting it in caused another17:31
GaryvdMErr17:31
jamCheck the version of PyQt as well17:31
jamPyQt4.QtCore.qVersion() says 4.6.117:32
mgzit's in the middle of Robert's "Python 3" thread, but what jam is saying now will probably help you more17:33
jamQtCore.PYQT_VERSION_STR says 4.717:33
jamso it seems to be PyQt4  (4.7) which wraps Qt 4.6.117:33
GaryvdMI think that is the qt version. The pyqt version is 4.717:33
GaryvdMEr you faster than me17:33
jamthis was one-of-those-things that made me stick with python2.517:33
jamGaryvdM: the easier solution is to delete that directory from PyQt417:35
jamnote questions like this: http://www.mentby.com/albert-cervera-i-areny/not-packaging-portv3-into-26-installer.html17:35
jamwhich are exactly my problem, but no answers17:35
GaryvdMjam: Please can we try moving the file out. You need to do. (admin)17:37
jamGaryvdM: sure, I have to relog17:38
jamthough I thought I set the perms to be 'bzr' == Full Control17:38
jamdid you check?17:38
GaryvdMNo - let me try17:39
GaryvdMjam: Nope - I cant17:41
GaryvdMjam: We could maybe try exclued PyQt4.uic - let me check I we use it17:43
GaryvdM*if17:43
jamGaryvdM: I think we need it17:44
GaryvdMjam: looking at the code, we only use it as a dev tool, in extras/build_ui.py, in both qbzr and bzr-explorer.17:45
GaryvdMjam: The results are commited, so it is not even needed at build17:45
mgzcan you exclude build_ui.py from the packaging then?17:46
GaryvdMIs it even included17:46
jamGaryvdM: py2exe is bundling it, which is why we are having the failure17:47
jamGaryvdM: try it now, I edited out the troublesome line17:52
GaryvdMok17:52
GaryvdMjam: In which file?17:52
jamPyQt4/uic/__init__.py17:53
GaryvdMok17:53
cebesiusi think i might have ruined my development branch when i did a bzr pull --overwrite. is there a way to back that out somehow? i tried revert but that didn't seem to have any effect.18:03
GaryvdMcebesius: Look at bzr heads --all18:03
GaryvdMcebesius: See if you can find the revision in there.18:04
cebesiusbzr: ERROR: unknown command "heads"18:04
GaryvdMcebesius: Ah - you need the bzrtools plugin18:04
GaryvdMcebesius: What os?18:05
cebesiusok thanks. sorry i apologize for the noobery18:05
cebesiusubuntu18:05
cebesius sudo apt-get install bzrtools ?18:05
GaryvdMyes18:05
cebesiusi see the branch nick for my development branch. at the end of the HEAD: line, it says (dead)18:07
GaryvdMcebesius: ok - now you can do bzr pull . -r <revid> --overwrite18:08
GaryvdMcebesius: You will then have diverged branches, and will need to do a merge in one of them18:09
GaryvdMcebesius: you can also do bzr merge . -r <revid>18:09
cebesiusGaryvdM: that just took care of it. thanks!18:11
GaryvdMjam: wack-a-mole time: http://pastebin.org/37574018:11
GaryvdMcebesius: Glad I could help.18:12
GaryvdMjam: Don't you want to try give me permission to that dir.18:12
jamGaryvdM: I think I did18:12
jamI did try again18:12
GaryvdMjam: ok - let me try access18:13
jamso there are other entries according to grep, let me grab them18:13
GaryvdMjam: I can edit now.18:14
GaryvdMjam: It's building \o/18:15
jamk, I hacked out a few more files18:16
jamCompiler/qtproxies.py, objcreator.py pyuic.py and __init__.py are all touched18:16
GaryvdMjam: setup.py py2exe succeeded. Now running whole script.18:17
GaryvdMjam: If I edit something in any of the existing build branches, I get this error: http://pastebin.org/37578618:22
jammgz: so what is your thought on the -OO issue with user-installed plugins? Should we just back out the change? Should we just push harder on getting plugins fixed?18:22
jamGaryvdM: you're not allowed to edit that way18:22
jamby design18:22
GaryvdMjam: note that the change I made was in bzr/setup.py, note in qbzr as the error indicates18:22
jamwe want to build from committed code18:22
jamthe qbzr-en.po stuff, I only see when that is actually regenerated18:23
mgzwell, we have to either fix bug 600803 or backout the setup change for the moment18:23
ubot5Launchpad bug 600803 in Bazaar Windows Installers "Plugin pyo files may be ignored and recreated from source (affected: 1, heat: 6)" [Undecided,New] https://launchpad.net/bugs/60080318:23
jammgz: ugh, timezone issues?18:24
mgzthe bug will want fixing anyway, and it might still be best to backout the installer change for this release18:24
jamwhat is your TZ?18:24
mgzBST currently.18:24
mgzGMT+118:24
mgzbut it's when the installer is used that matters I think.18:24
mgzlibrary.zip isn't affected because though the zip is time shifted, the files inside get their stamps from the zip metadata18:25
GaryvdMjam: the error also happens if I run build.py installer  (as as appose to bulid.py installer bzr.dev or bulid.py installer bzr-2.2.) But I guess that is something I can look at later...18:25
jammgz: it looks like the build host is Pacific Time UTC-718:25
jamyou know what...18:25
jamtimestamp == Unix seconds from epoch.. Do we adjust for TZ or not18:25
jamalways been a bit wonky on Windows, IIRC18:25
jamGaryvdM: I thought the qbzr stuff was because we weren't building a snapshot with newly generated .po files, but I could be wrong18:26
mgzwell, currently I wonder if the problem is actually our code or in nsis or whatever we use18:26
jammgz: where do you get the magic from? (what bytes)18:26
mgzinside the pyo files - but it's being compared to the mtime of the py files18:26
GaryvdMjam: yes - I think the error report incorrectly reports the project.18:26
jammgz: sure, but where in the pyo18:27
jamso I can compare18:27
mgzlook at the first 8 bytes of the pyo files, first four are the magic, next four are little endian int_4 stamp18:27
GaryvdMmaybe I'm wrong18:27
mgzso, if nsis is packing the files as localtime, and unpacking as localtime, that would break for anyone not in the same timezone as where the installer is created18:28
mgzeither that, or py_compile is borked.18:28
jammgz: they match here18:29
jamos.lstat('commands.py').st_mtime == 1278013301.018:29
mgzwhat's your timezone?18:30
jamstruct.unpack('<i', open('commands.pyo', 'rb').read(8)[4]) == (1278013301,)18:30
jamwell not that exactly but you get the idea18:30
jamTZ == UTC-7 I believe18:30
jam(mine is -5, but build host is on Amazon EC2)18:30
jamso it could be NSIS18:31
jammgz: what platform are you on?18:31
mgzXp18:31
jamyou know what, I can just set the TZ for that machine to UTC, who cares, right?18:32
jamlet me try that18:32
GaryvdMjam: Please let me know when that is done18:32
mgzworth a go.18:33
jamGaryvdM: done18:33
GaryvdMjam thanks18:33
mgzmight not work, but is easy to see if it does.18:33
jamnote, though, that this is on the old-windows-installers stuff18:33
jamGaryvdM: and I'm being lazy and building as admin, since I don't want to relog18:33
GaryvdMjam: I don't think that that would affect anything.18:35
GaryvdMbuilding as admin...18:36
jamGaryvdM: well, it screws up perms for the rest of us18:37
jamand is generally something I like to avoid18:37
jam(consider running make as root)18:37
jamjust a 'hygiene' thing18:37
=== mwhudson_ is now known as mwhudson
mgzokay, bad news, don't think changing builder to gmt will help18:38
mgzjust checked the before and after stamps on 2.2b3 which I just installed (as in, in the summer, not the winter)18:38
mgzand it's 8 hours out.18:38
jammgz: so you're saying that changing *your* timezone affected it?18:41
jamthe build is just about done18:42
mgzI'm saying when my timezone changed one hour, the difference also changed an hour, which suggests my localtime matters, as well as the build slave's18:45
mgzie, it's doing localtime(a)->localtime(b) not localtime(a)->gmt18:45
GaryvdMbla - wack-a-mole: http://pastebin.org/37588218:45
mgzhm, so, it's either looking in the wrong place for the c runtime libraries, or they should be being copied there and they aren't18:46
mgznot sure that's much help to you gary18:47
GaryvdMhttp://pastebin.org/375893 - yhea - they are not there18:47
GaryvdMSo close, but yet so far...18:48
GaryvdMjam: I'm stuck. http://pastebin.org/375882 Any ideas?19:11
jamGaryvdM: if you look at build.py (or bazaar_releases.py) it mentions looking for where the msvcrt runtime redistributable stuff is19:19
jamlet me check19:19
jamGaryvdM: DEFAULT_MSVC_REDIST_DIR19:19
jamI see 3 msvc* dlls there19:20
jamand build.py has a check if "self.python.find(26)" (which IMO is a bad check), then it tries to copy the msvcr90.dll over19:21
GaryvdMjam: Ah - there is msvcr90.dll in build-win32\release\bzr19:23
GaryvdMjam: Ah - there is msvcr90.dll in build-win32\release\bzr-dev\win32_bzr.exe\Microsoft.VC90.CRT19:23
GaryvdMSo it is copying into a subdir19:24
jamsounds like it might be the wrong place19:24
GaryvdMah - see comment in bulid.py line 40819:25
GaryvdMI'm going to modify that.19:26
GaryvdMI cant' belive it. It built!!!! \o/ !!!!19:33
GaryvdMhttp://dl.dropbox.com/u/4494367/bzr-2.2~bzr.dev~garyvdm-setup.exe19:39
GaryvdMmgz, jam ^19:39
GaryvdMInstalled. bzr-explorer works, but I got this error: http://imagebin.org/10381819:54
jamGaryvdM: strange, bundling "" certainly seems wrong :)20:09
GaryvdMjam: I only get it when tbzr is selected20:09
GaryvdMjam20:09
GaryvdMjam: And toverlays is not getting installed.20:10
GaryvdMSo I think thats related20:10
jamGaryvdM: maybe we are setting the env var incorrectly, or not getting it passed into the right part of the build20:11
jamyou might check the iss file20:11
GaryvdMjam: I'm also getting a Unable to import library 'launchpadlib' error20:11
jamGaryvdM: I believe there was a "pipeline depends on launchpadlib so lets back out pipeline" maybe there is another on elike it?20:12
GaryvdMjam: I'm going to send a mail to the ml, and then go home. I'll try again.20:12
GaryvdMjam20:12
jamk20:12
GaryvdMjam: I'm really happy though that I got it to build. Thanks for all the help.20:13
jamGaryvdM: isn't it already like 10pm there?20:13
GaryvdM9pm - thats still early :-)20:13
GaryvdMThe last 3 nights I was in bed after 1am...20:13
GaryvdM:-p20:14
GaryvdMjam: And I need to add the ability to specify a revision spec for everything....20:15
GaryvdMjam: Thanks alot for all the help.20:30
GaryvdMGood night all.20:30
jamnight GaryvdM20:30
mgzthanks for doing all this jam and gone-gary20:55
mgzI'll give your installers a try here when I cool down a bit.20:55
mgzhttp://gwolf.org/blog/debian-its-numbers-seen-keyring-maint <- perl... surely using bzrlib would be easier (if not shorter)21:02
mgzthrowaway scripts are done in what you're familar with I guess21:02
jammgz: yeah, you could do a lot with bzrlib and just extract the raw texts in an optimal order21:07
jamits a fairly sizeable branch21:08
=== mwhudson_ is now known as mwhudson
jammgz: so I was wrong, it seems to be strictly dependent on the number of files in a given directory., my perl fu is pretty weak, and there is some ... interesting... syntax21:38
GaryvdMWow Brazil out...21:49
jamGaryvdM: unexpected21:49
GaryvdMUruguay and Ghana in overtime...21:50
jammgz: my version: http://paste.ubuntu.com/458491/22:09
jamtakes about 20s to iterate 540 revs22:09
jamI could probably do better if I got down into some hardcore details22:10
jambut my graph looks just like his :)22:10
mgzah, much better after bath, still hot though23:15
lifeless:>23:16
mgzjam: that's really neat. making a proper commandline tool of it is dedication23:16
lifelessof what ?23:17
mgzah, I linked this earlier: http://gwolf.org/blog/debian-its-numbers-seen-keyring-maint23:18
mgzand jam answered my "would be better with bzrlib" by... doing a pretty (non-perl) version23:19
mgzinteresting just to see how much of the internals you need to understand to write a short script like that not going through the command line ui23:20
mgzokay, tested the tz installer, and indeed the bug is still there, the stamp is now an hour out23:31
mgzI'll try and find some nsis docs I think.23:32
mgzhttp://sourceforge.net/tracker/index.php?func=detail&aid=2581469&group_id=22049&atid=37308523:35
mgzprobably that.23:35
ubot5Error: <Bugtracker.plugin.Sourceforge instance at 0x2364bd8> bug 2581469 not found23:35
lifeless-lol-23:36
mgzhey, it tried!23:37
mgzhm, how did I do that link-to-upstream-bug thing in launchpad before? does it need a launchpad project registered as well as the sourceforge one?23:38
lifeless'affects project', paste url.23:38
mgz...doesn't seem to like that23:39
mkanatNo subtrees yet, right?23:51

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