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

* mattman_ is away: 00:23
pooliemkanat: mwh says if you request access to ~loggerhead-team he will approve it00:37
mkanatpoolie: Okay, will do.00:37
mkanatDone.00:37
pooliehi spiv?00:49
mkanatjam: Thanks for the cvs2bzr recommendation. Worked like a charm.00:52
spivGood morning :)00:56
lifelessspm: are you familiar with the new bazaar website deployment?01:46
spmlifeless: as in for http://bazaar.canonical.com/ ?01:47
lifelessyes01:47
spmheh, no. not familiar with.01:48
lifelesspoolie has asked me to look at why an rss feed cron job in it isn't.01:48
lifelessand crontab -e as bzr-website on the machine -> empty file01:48
spmis that the way rss feeds are generated for the site? as in some I've worked with previously (geeklog springs to mind) encode the generation of rss in every home page request (I deliberately disabled THAT gem).01:51
lifeless:>01:51
lifelessyeah01:51
lifelessso I think I have it sorted - thanks01:52
lifelessftr, its running from poolies crontab01:55
pooliethanks for all the reviews jam01:57
pooliei should migrate them...01:57
spmlifeless: coolio. possibly we should have a 'bzr' account to run those sorts of things, but that works.01:58
pooliethere is a bzr-web01:59
poolie(or something like that) role account01:59
pooliei should migrate the cron jobs to run in that01:59
spmthat works02:00
mtaylorlifeless: is there a reason you have not merge in my pandora-build packaging updates? or have you just not gotten to it?02:00
lifelessmtaylor: time, yeah.02:10
mtaylorlifeless: ok. just wanted to make sure it wasn't blocking on me02:12
lifelessI don't think so.02:15
lifelessWas moving country etc.02:15
lifelessthe hits keep on coming ;>02:15
mtaylorlifeless: you were moving country?02:31
mtaylorlifeless: where do you live now?02:32
lifelessNZ02:32
mtaylorah.02:32
mtaylorso you're even closer to my timezone now :)02:33
lifelessyes02:33
mtaylorwoot02:33
lifelessexcept when I'm in .au (now), or europe (week after next)02:33
mtaylorwell right02:33
mtaylorsame goes for when I'm in other places - or when new zealand moves into the indian ocean02:33
lifelesshttp://www.paulhammond.org/2010/06/trunk/03:03
* spiv hmms at a stacking test03:06
pooliespiv :)03:10
poolieso you're going to tackle those other bugs and then prod merge cleanups?03:10
poolie(if so that's fine with me)03:11
spivpoolie: yep, exactly03:11
spivCan I get an incremental review of just http://bazaar.launchpad.net/~spiv/bzr/reconfigure-unstacked-551525/revision/5331 ?  I had some minor test fallout.03:19
lifeless+103:22
spivlifeless: thanks03:23
lifelessthanks for the direct link03:24
lifelessI wish that page didn't need a click to see the diff03:24
lifeless-> fud03:31
parthmi am trying to deprecate osutils.re_compile_checked. adding @deprecated_function(deprecated_in((2, 2, 0))) produces 'no attribute _format_version_tuple' http://pastebin.com/EeEiLfbx03:31
parthmshould i be doing something differently?03:31
spivparthm: argh, imports :/03:36
spivparthm: the issue is that _format_version_tuple in bzrlib/__init__.py is defined after the import of bzrlib.lazy_regex03:37
spivThe fix is probably to move the definition _format_version_tuple above that import.03:37
parthmspiv: oh. ok. i can fix that and send it separately for merge if that works.03:38
spivOr do the deprecation without using the decorator, I suppose.03:38
spiv(I don't have a strong opinion either way)03:38
parthmspiv: i will go ahead and am a separate patch for that. its a trivial change anyway. its nicer to use the decorator.03:41
parthmspiv: https://code.launchpad.net/~parthm/bzr/format_version_tuple_import_order/+merge/2895303:57
spivparthm: reviewed, thanks04:07
parthmspiv: thanks. i fixed the comment. do you think its a small enough change to send to pqm or do we need another review?04:12
spivparthm: Fine to send, I think.04:18
parthmcool. thanks. i will send it.04:19
lifelessparthm: hi04:33
lifelessparthm: I gave similar advice to john earlier in the review of your bad ignores branch04:34
lifelessparthm: Perhaps you missed it? I'd like to help you land that branch.04:34
parthmlifeless: hi. i might have missed it. what are you referring to?04:40
lifelessthe layering - passing in info about where patterns came from etc04:40
parthmlifeless: ah. yes. thats probably a good way to go. i might have missed it earlier. the comments on the patches were really growing long :)04:42
parthmlifeless: i plan to look at that once the current patch (part-1) lands04:43
spivHmm, there are a few TODO comments in chk_map talking about improvements that weren't done because we didn't have a pure-python StaticTuple04:53
spivThere might be some cheap wins to be found there04:54
lifelessspiv: revision specs could use cleanups05:01
spivlifeless: very much, yes05:03
spivlifeless: the trick is doing it without disrupting 3rd party implementations & callers too much, I think05:04
spivBut right now, lunch!05:04
lifelessspiv: yes; I made the comment when working on loom.05:06
vilahi all !07:33
mneptokvila: salut07:33
lifelessnight all08:01
* poolie is trying to backport python-configobj to dapper in the ppa08:03
pooliehi there parthm vila08:03
johnfSay I have to releases trunk and release and I need to fix a bug in release but trunk has moved on. Am I better off fixing it in trunk and then cd release; bzr merge -r REVISION_ID ../trunk08:15
johnfor fix it in release and merge back into trunk08:15
johnfor it doesn't matter or some other better way? :)08:15
spivIf you merge release branches back into trunk (which is how bzr manages its branches), then branch off release and fix it there is typically easiest.08:17
spivBecause then your fix branch can be merged directly into both your trunk and release branch.08:17
johnfspiv: ok that's what I thought. Thanks08:17
spivBut fixing in trunk and then backporting via "bzr merge -c BLAH ../trunk" is not too painful either, although it leaves bzr with slightly less complete information in the revision history.08:18
echo-areaIf I'm going to make a repository public for all users on a host, what's the recommended way?  Currently 'chmod -R 777 repo-dir' comes into my mind08:22
poolieif you want to let them all commit to it?08:23
pooliethat would do08:23
echo-areapoolie: Okay, thank you.08:23
echo-areaAnd I suddenly find there are very large files (~3.7G) in my ~/.bazaar/svn-cache directory.  Can I delete it?08:28
spivYou can.08:34
spiv(But bzr-svn may need regenerate some or all of them later if you access a SVN repo with bzr.)08:35
echo-areaspiv: Fine.  Storage is a more critical factor than speed for me now :)08:39
lifelesspoolie: I was taking a bet with myself whether you'd have finished yet :)08:40
lifelessmgz: hey, when you get here, it might be nice for us to put heads down and get a subunit + testtools release done08:41
swathanthranhttp://pastebin.ca/1892599 what can be the problem?09:07
vilaswathanthran: s/lh/r/09:12
vilaswathanthran: try it with a web browser and you'll realize you're using the wrong url (use 'r' not 'lh')09:12
swathanthranyeah i guessed that but didn't know what to use instead of lh09:13
swathanthranand lh is disabled on savannah.09:13
vilaswathanthran: I walked up to the root to find it09:14
vilaswathanthran: I don't know what is going on with lh on savannah09:15
swathanthrananyway to find out how much size it could be?09:16
vilawhat ? savannah ? loggerhead ? the branch ?09:17
swathanthransorry, the branch..09:17
vilaswathanthran: 147.685  Transferred: 60985kB (413.9kB/s r:60931kB w:54kB)09:17
swathanthranto find out how much size it could be to download, before downloading09:17
swathanthranvila: ok thanks.09:18
vilaswathanthran: there is no easy way to find that without downloading :) It depends on what you want to download and that can be a part of the whole09:18
swathanthranah09:19
vilathe bulf of the data is the revisions, but you can branch from an older revision or the branch's repository can containg more revisions that you need to download09:20
vilaand you may already have some revisions locally and don't need to download them09:20
swathanthranoh yeah, how to download the sources alone?09:21
swathanthranbzr co --lightweight?09:23
vilathat's one way, another is: bzr export  builder.tgz http://bzr.savannah.gnu.org/r/gnewsense/builder09:24
vilabut the former will allow you to update at will09:24
swathanthranoh thats great.. i actually wanted just the current version..09:25
vilaswathanthran: right, if it's a one-time only operation it's ok, but you'll pay the full price the next time you need it otherwise09:27
swathanthransure, at night, i don't have to pay for the net, to get along with work now, i have ot pay for the bandwidth;-)09:27
swathanthranbzr export does it without having the branch on our system?09:27
vilaswathanthran: both export and co --lightweight won't store the downloaded revisions, you'll pay at each use :)09:28
vilaswathanthran: if you use a local branch, you'll only need to download the new revisions next time09:29
swathanthranyeah got that.. i'll do a full branch at night when i have bandwidth..09:30
swathanthranand cool, i just got builder.tgz and it was like 20mb or so i guess.09:30
spivG'night all.09:31
vilaspiv: g'night09:33
swathanthranvila: thanks !:)09:34
swathanthranwithout loggerhead, can i have an http link to just one file on the repo?09:38
=== Daviey_ is now known as Daviey
Glenjaminhi guys, i'm wondering if anyone can help me out; i'm getting this traceback http://pastebin.org/369909 whenever I try and checkout some branches from my SVN repo10:44
maxbGlenjamin: It looks like you might be branching into an existing shared repository.... if so can you try without?10:47
Glenjaminthere's a whole bunch of inconsistent details in skipped record errors along the way - but the checkout appears to have worked.10:51
Glenjamindoes this mean my shared repo is corrupt in some way?10:52
maxbSounds like it10:53
maxbTry 'bzr check' to get more info, and 'bzr reconcile' to try to fix it10:54
Glenjamini guess bzr check sitting there not spitting out any output for a while is probably just it working10:59
Glenjaminseems to be munching cpu, so i'll trust it10:59
lifelesscheck is not optimised -> by which I mean its pretty slow compared to many other commands11:03
Glenjaminfair engouh really11:06
Glenjaminhttp://pastebin.org/369954 was my output11:06
Glenjamindo i just do reconcile on the repo now?11:06
lifelessreconcile can't fix the ghosts11:07
lifelessit can fix the parents.11:07
lifelessthat may fix your error11:07
lifelesshave you looked in the bzr-svn bug tracker ?11:07
Glenjamini have, the only similar errors are from 2008 and marked as fixed.11:07
lifelessok11:07
lifelesstake a backup11:07
lifelessthen give it a shot11:08
Glenjaminbah, no luck :(11:10
Glenjamini guess i'd better post the bug11:10
Glenjamincheers for the help guys, fresh repo from SVN seems to be working :)11:35
jamGaryvdM: are you currently working on desolation?15:00
jam(no problem if you are, just checking)15:00
GaryvdMHi jam15:09
GaryvdMI am, but am about to go to ice hockey.15:09
GaryvdMTrying 1 last build15:09
jamnp15:09
GaryvdMjam: do you normally work in cygwin bash, or window cmd?15:10
jamGaryvdM: *I* work in cygwin bash15:10
jamI believe Ian was working under cmd using gnumake for win3215:10
jamrather than cygwin make15:11
jamI just find setting up cygwin a whole lot easier15:11
jamsetup.exe is at least a cygwin package manager15:11
GaryvdMyes15:11
GaryvdMok I'm off to ice hockey15:12
jamGaryvdM: have fun15:13
vilaaaaaargh lp ! come back !16:09
jamjelmer: when you get this, 'bzr-svn' doesn't seem to have a tag for 1.0.316:20
jamvila: hi16:20
jelmerjam: that's correct, since 1.0.3 is not out yet16:20
jamah, I misread your lp page then16:21
vilahi jam !16:21
jambuilding the installer for 2.1.2 and hacking together the old scripts16:21
=== deryck is now known as deryck[lunch]
jamI think igc's updates were a push in a good direction, but I don't fully understand them, and they aren't working *right now* so easier for me to start with a known place16:21
jamjelmer: yeah, looking now I see 1.0.3 is an open circle. I missed that the first time16:22
jamvila: lp seems to be back for me16:22
vilajam: yup. me too now16:26
jamanyone know why Launchpad now requires REFERER to be set to upload files?16:39
jamIt is a real pain for me to upload 5 installers using Firefox versus just a plain script16:39
jamah, here we go: https://answers.edge.launchpad.net/launchpad/+faq/102416:40
jamof course, *curl* has no referrer because I just uploaded it manually16:40
jamsigh16:40
mwhudsonyou can probably set the referrer on the command line for curl?16:41
jammwhudson: I assume so, but it feels stupid to fake a referrer16:41
jamand requires time for me16:41
jam:)16:41
exarkunjam: sounds like a good referrer to use16:41
exarkun'this feels stupid and is a waste of my time'16:42
jamexarkun: except since launchpad is trying to validate it, I imagine that won't work. But I'll give it a shot :)16:42
jamthe FAQ I linked claims they use it to avoid cross-site scripting16:42
mwhudsonno16:42
jamso all POSTs to LP now have to have a Referrer16:42
mwhudsoncross site request forgery16:42
mwhudsonnot quite the same16:43
mwhudsonin particular: no scripting16:43
jammwhudson: so what is the specific problem if my web page helps you to upload something or update a bug on lp?16:43
jamis it more of a 'don't send your login credentials to 3rd party sites' ?16:43
maxbThe idea is that javascript on some other site can't trick you into making a POST to launchpad to do something evil, using your cookie16:44
mwhudsonmaxb: again, not javascript, javascript already can't do that16:44
mwhudsonboring old html can though16:44
jammwhudson: so... will any edge.launchpad.net url work as the referrer?16:45
mwhudsonhttp://en.wikipedia.org/wiki/Cross-site_request_forgery16:45
exarkunFor that purpose, isn't a missing referrer as good as a correct launchpad.net referrer?16:45
mwhudsonjam: probably16:45
jamexarkun: some people disable referrers in their web browser16:46
jamand they want to protect you from yourself16:46
jamit seem16:46
jamseems16:46
mwhudsona better fix is nonces in the form, but that would be considerably harder to trick with curl i guess :)16:46
jammwhudson: the best part is because of how http uploads work, you don't find out about the failure until *after* you've upload 4MB of content16:46
mwhudsonand the real real fix for uploads specifically is an api to do it16:46
exarkunjam: 100 Continue !!!16:47
mwhudsonexarkun: ptth!16:47
exarkunmwhudson: yea, I was gonna say16:47
exarkunmwhudson: haha.16:47
jamand, of course, all of this worked 3 months ago when I was doing it last16:48
jamlike 5+ things broke in the windows installers steps16:49
jammwhudson: so --referrer https://edge.launchpad.net worked just fine16:49
jamvila: true story. Trying to download the svn binaries leads to URL recursion. It seems they redirect you to a second page, which then sets a cookie and redirects you back to the first page. If you don't carry your cookies along, then you get infinite recursion.17:19
jam*sigh*17:19
=== deryck[lunch] is now known as deryck
* vila bangs head on desk17:23
jamvila: building the windows installers is being a real joy17:24
jam...17:24
jamI remember why I loved doing them so much in the past17:24
* jelmer sees his sarcasm-o-meter pan out17:25
jamit seems that everything in the world decided to change in the last 3 months, just to thwart us17:25
jamzlib has a new release without a similar dll build17:25
jamlp now requries referrer to be set17:25
jamian did a lot of work to update the installer, but I don't quite follow how it should work yet17:26
jamsvn moved to apache17:26
jamand doesn't have *new* dlls, and now the old dlls have crazy redirects17:26
jamqbzr didn't tag 0.19b1 in their trunk17:26
jamah they did, but as '0.19beta1'17:26
jamanyway... getting there17:27
jamwe shut down the old desolation instance, and it may have only been working because all the files were already cached in d:17:28
vilajam: :-/17:31
vilaso before I EOD, you want me to confirm that as soon as the test suite is passing on windows I will set up babune for windows daily builds ? :-D17:31
jamanybody knows how to fake a buildout signature so that we can manually do the download and work around buildout trying to be extra helpful17:31
vilaerr, won't that make the next failure even more horrible to address ?17:33
jamvila: I don't care, I want to get builds17:35
jamstuff is der broken17:35
jamI'm asking sidnei for help, hopefully he can help work out the buildout stuff17:35
jamvila: right now I'm reverting back to my old code because it actually works17:36
jamand I'd really like to switch to what Ian was working17:43
jamon17:43
chaosaddictit sounds like the fast-import format prefers ASCII with the exception of raw file data. Is it possible to have non-ascii filenames? I've been having a lot of trouble with latin-1 encoded filenames from Perforce importing into Bazaar.17:51
jamchaosaddict: I believe the data stream is assumed to be in utf-817:53
jamany way you can get the perforce output to .decode('latin-1').encode('utf-8') ?17:53
eydaimonhi. how is this even possible? http://pastie.org/pastes/102688717:55
chaosaddictjam: I believe I have that working, and the fast-export-from-p4 part works. However then the fast-import step crashes. I haven't figured out the root cause on that yet.17:55
jamchaosaddict: tracebacks help17:55
chaosaddictjam: unfortunately it spits out a parsing error, rather than a crash + traceback.17:55
jameydaimon: One side has: "pu = PaymentUser" and the other side only has "PaymentUser"17:56
jamI don't know what .rvmrc is, but it appears to be something your vim dropped in the current working dir17:56
jameydaimon: otherwise I don't really understand your question17:57
eydaimonjam: The point I'm making is that after modify the file, and I resolve it, there's nothing to check in17:57
eydaimonjam: and if I merge again, I get exactly the same thing happening17:57
jameydaimon: I don't really know. I would think at the least the merge revision would be ready to be committed.17:57
eydaimonexactly17:58
jamThough maybe this is because of the "infinite merge request" issue17:58
eydaimonsounds like17:58
jammerging a => b creates a commit that can be merged b => a17:58
eydaimonis that an open bug?17:58
jamso we probably added code to prevent that17:58
jamwhich is triggering here17:58
jamI don't think this is an open bug17:58
jamwhich is17:58
eydaimonthen how can I address it?17:58
jamconflict resolution leading to know content change is preventing commit17:58
jamor something along those lines17:58
jameydaimon: worse case you can make a trivial change somewhere17:59
eydaimonI don't want merging with trunk forever more to cause conflicts17:59
jambut I'm also surprised that 'bzr status' doesn't say anything17:59
jamcan you paste the output of "bzr merge ; bzr status" *before* you resolve the conflicts?17:59
eydaimonyeah17:59
jamyou might want to use paste.ubuntu.com, your formatting came out a bit weird on pastie18:00
eydaimonI already show the first merge18:00
jameydaimon: you showed the merge, but not 'bzr status' afterwards18:01
eydaimonreload pastie to see changes18:02
jameydaimon: so something is odd about your merge, as it isn't recording a revision to be merged18:03
jamahhh18:03
jamyou are doing a single file merge18:03
jamthat doesn't get recorded18:03
jamyou have to do a full tree merge18:03
eydaimonk18:04
eydaimonI would do that but there's one of the files I didn't know how to handle18:04
eydaimonso I was doing a whole directory18:04
eydaimon( was using one file as an example here )18:04
=== wilx_ is now known as wilx
mkanat6) Important since these often outline the actual changes in a short form or18:07
mkanatreason for why the commit were done in that specific branch.18:07
mkanatOops.18:07
mkanatSorry.18:07
mkanatDrag-and-drop. :-|18:07
mkanatjam: Do you still need the account on my machine?18:19
jammkanat: only if you tell me I do :)18:19
mkanatjam: Okay, I'll test meliae first. :-)18:20
mgzgaryvdm, jam: thanks for working on packaging 2.2b3 for windows18:46
jammgz: well, my version is pretty hack-tastic, but let me know if it works for you18:47
mgz<jam> zlib has a new release without a similar dll build <- you still needed to do this bit? Does svn or something also need the dll?18:47
jammgz: since you mention it, probably not. but the build code I was using still did18:47
mgzI'm going to test it to see if my -OO change does anything bad to plugins, then send a message to list for plugin authors18:47
mgzlifeless: after I do that, I have an hour out or so for squash, but am then free all evening for testtools/subunit things18:48
mgz'd file a bug on the referer thing jam, even though it's easy to work around, it's stupid18:50
mgzuploading doesn't sign the binaries or anything, right?18:50
jammgz: It looks to be a purposeful design thing, so I can file it, but I think the powers-that-be have explicitly requested it18:50
jammgz: no, I manually sign them18:51
mgzit's purposful for editing bugs and so on, but an upload isn't a db-state-changing thing18:51
mgzit's just moving bits.18:51
mgzokay, I get API version complaints from svn and rebase18:56
mgzurk, and this one is my fault:18:57
mgzValueError: No help message set for <bzrlib.plugins.explorer.lib.commands.cmd_explorer object at 0x0114ABF0>18:57
jamdang jelmer already left18:57
mgzI *thought* I'd avoided that, and the thingy had been changed not to throw any more anyway18:57
jamsend a message to the list18:57
mgzwill do.18:57
jammgz: I think it has, but that will be in 2.2b418:57
jamwhich isn't released yet18:57
mgzokay, so, this is a maximally borked version, that will probably be useful18:58
mgzthese plugins *are* seperate though, and should be compiled differently, I wonder what went wrong18:59
jammgz: well, I used some old build tools19:00
mgzthe setup.py is from the bzr you're shipping though, right?19:00
jamshould be19:00
jam(i'm pretty darn sure it is)19:01
mgzokay, so the bit that seems not to be working is the install_data_with_bytecompile class ~line 53019:03
mgzor I misunderstood how it works19:03
mgzthe idea is that things in library.zip should get optimize=2 and things in the plugins dir should get optimize=119:03
jammgz: sure I remember that part of the patch19:04
jamI don't know what it takes to make it work or not work, though19:04
mgzah, urk, problem.19:05
mgzit seems the pyo files there do contain the docstrings19:05
mgzso, instead perhaps the problem is when bzr.exe runs, it does in such a way as they're not loaded?19:06
mgzwhich would be I need to work out how to seperate the byte compiling of py files from the mode set for the base script19:06
mgzI'll get something worked out.19:08
jammgz: my quick-and-dirty test says it shouldn't matter19:10
jamif I compile a .py to .pyo and include the docstring19:10
jamrunning python -OO main.py still loads the existing .pyo and still has a docstring19:10
mgzhmpf, so that's what I originally assumed, something else must be going on19:11
jamso I would guess something else is at fault19:11
jammgz: we need a way to get to a python interpreter from the bzr.exe :)19:11
mgzthat would indeed be useful ;)19:12
mgzbzr interpreterplz19:12
mgzwait, I already have the machinery for that, have a throwaway plugin to shove arbitrary stuff in19:12
jammgz: yeah, here is one option: http://writeonly.wordpress.com/2008/09/08/embedding-a-python-shell-in-a-python-script/19:14
jamwhich uses ipython19:14
jambut I think you could just have something that does "import pdb; pdb.set_trace()" and get something good-enough19:14
mgzcode.interpret is it indeed.19:15
mgzdammit, we don't bundle that. pdb it is.19:16
mgzokay, so explorer does have doc strings.19:17
mgzis this going to be something daft like, that cmd really *doesn't* have one in the source?19:17
mgzI should have checked that.19:17
mgznope, it seems it does.19:18
jammgz: it does in my copy19:18
jammgz: are you sure it isn't loading your *local* copy of the plugin rather than the bundled one19:19
jamand because it is running -OO it is stripping them on-the-fly19:20
jamoooh19:20
mgzokay, and it really is missing from bzr.exe's perspective, though other bits keep it.19:20
jamso your code breaks people from installing extra plugins (it would seem)19:20
mgzit does, if they don't install them correctly19:20
jammgz: I mean, if you put something in BZR_PLUGIN_PATH it will get loaded with -OO19:20
mgzI'll check on the location, but bzr.exe should really get the path right19:20
jamwhich will break them19:20
mgzright.19:20
jamimport bzrlib.plugins.explorer; print bzrlib.plugins.explorer19:21
jamshould tell you what you want to know19:21
mgzthey are all from the right place19:21
jammgz: define 'right place'19:22
jamthe bundled plugin19:22
jamor a user-installed copy19:22
mgzbundled19:22
mgzwhat I don't get is that bzrlib.plugins.explorer isn't stripped, but bzrlib.plugins.explorer.lib.commands is19:22
mgzand they are both from the installer19:22
mgzso... one of two things19:22
jammgz: and what does bzrlib.plugins.explorer.lib.commands.cmd_explorer.__doc__ say ?19:22
mgz(None)19:23
jammgz: ah, so the sub-dirs are getting stripped19:23
mgz(as in, it says nothing, because it really is None)19:23
jamI wonder if they aren't getting anything19:23
mgzright, so one of two things19:23
jamaren't-getting pre-compiled because it isn't doing something recursively19:23
mgzeither the installer is being generated with some plugin files stripped and some not19:23
mgzor the installer isn't generating some plugin files, and it's happening at run time with -OO19:24
* mgz checks timestamps19:24
jammgz: I would guess the latter19:24
jammgz: I'm going to install here, and see what files end up19:25
mgzyup, and on quick check, it's only commands.py that's 18:58 rather than 09:3119:25
jammgz: C:\Program Files\Bazaar\plugins\qbzr\lib\commands.pyo19:26
jamexists at install time19:26
mgzbut I also had a problem with qbzr, so this suggests something slightly more systematic than one missing file in a list19:26
mgz^ack.19:26
jamtimestamp of commands.py is 9:30am, timestamp of commands.pyo is 9:34 am19:27
mgzokay, nice little mystery then.19:27
jammgz: and the timestamp isn't updated when I run bzr.exe19:28
jambut it still fails to run bzr explorer because of a missing help text19:28
jammgz: opening the commands.pyo in vim shows that the strings are present19:30
mgzsomething is certainly causing them to be rewritten here.19:30
mgzjust did bzr lp-propose19:31
mgzand the stamp on plugins\launchpad\lp_propose.pyo bumped to now19:31
jammgz: my user doesn't have rights19:31
jamso probably they are being rebuilt in memory, but not getting written down19:31
jamand just not getting used here19:31
mgzah, yup, that'd explain it19:31
mgzso, the last remaining question is why it's not just loading them from disk...19:32
jammgz: how are you getting it to run your code? I don't seem to be able to set BZR_PLUGIN_PATH and have it respected19:33
mgz's under .\bazaar\2.0\plugins19:34
jamah, k19:34
mgzin BZR_HOME19:34
jamwell, I got it to run, but then it imported -OO and stripped the docstring :)19:34
jammgz: also I wouldn't be surprised if the -O setting is stored in the compiled code19:35
jamand it sees "oh, this is only -1, I'll do -2 and update it"19:35
mgzI wouldn't be, but I tested previously and it didn't do that19:35
mgzso, if it's started doing it I'd be suprised19:36
jammgz: python2.6 vs python2.5 maybe?19:36
mgzalso... this is interesting19:36
jammgz: so that fixed my problem19:36
jamI was compiling -O in py2.6 and then running bzr.exe which uses py2.519:36
jamafter doing that19:36
jamit just loaded the .pyo without recompiling my plugin19:36
mgzah, so, that does explain it19:37
mgzdifferent magic bit, but from the python version not the flag19:37
jammgz: but why would we be building them in the installer with the wrong python version19:38
mgzgood news is that fixing that not only unborks me, but will make first run faster all round19:38
mgz...and all runs, in your case where you don't have write access19:38
jammgz: (Pdb) bzrlib.plugins.explorer.lib.commands19:38
jam<module 'bzrlib.plugins.explorer.lib.commands' from 'C:/Users/jameinel/dev/bzr/plugins\explorer\lib\19:38
jamcommands.py'>19:38
jamI'm pretty sure that confirms it is loading the .py directly, and not the extension19:38
mgzyup.19:38
jamhowever, we are shipping .pyo and I don't see any reason why they would be invalid19:39
mgzokay, I need to leave... now-ish, but this is something worth fixing19:39
GaryvdMHi jam, mgz19:39
jamhi GaryvdM19:40
jammgz: well, given the installer is thoroughly broken... I have to agree :)19:40
GaryvdMjam: I see you also had zlib issues. Thats where I was stuck today.19:41
mgzwell, backing out my setup.py change will unbreak, but not fix the never-using-pyo thing19:41
jamGaryvdM: yeah, but we should be able to just drop zlib completely now19:41
jamI don't know when mgz's patch landed, but we shouldn't need it in the build steps for bzr >2.2?19:42
jamI pushed the builds out by just reverting to old build scripts19:42
mgzyup, zlib change landed for 2.2b319:42
jamwhich should be okay for 2.1, it looks like it shows a lot of brokenness in 2.2, but I think that is going to be there regardless19:42
mgzso, deleting it from all remaining build scripts should work19:42
jambecause it is stuff like "bzr-svn 1.0.2 is incompatible with bzr2.2"19:42
jammgz: so there is still the concern that this fix will break anyone running custom plugins19:43
jamthough 2.2b4 won't raise an exception19:43
jamit will still break "bzr help myplugin"19:43
mgzright, provided they are running from a tree, not installing with setup.py19:46
jammgz: right19:46
mgzhence message to list about this, and seeing how people use the installer with plugins19:46
jammgz: already sent19:47
mgzit's not a big change to put in and back out, I just wanted some testing and feedback with it in19:47
GaryvdMjam: So should I see if I can make the build script use wget?19:48
mgzokay, I need to leave... five minutes ago, but will be back in an hour and a bit to help sort this out19:48
jamGaryvdM: I'm uploading to launchpad19:48
jamand have us just point there for now19:48
GaryvdMok19:48
GaryvdMjam: If you happen to do another 2.2, please use qbzr trunk.19:49
jamGaryvdM: bug #60074619:49
ubot5Launchpad bug 600746 in Bazaar Windows Installers "unable to download svn dlls due to redirects (affected: 1, heat: 6)" [Medium,Confirmed] https://launchpad.net/bugs/60074619:49
jamGaryvdM: it is a bit tricky to do a "trunk" build without a tag19:49
jamany chance you could take 0.19b2 ?19:49
GaryvdMOk - let me do that.19:50
jams/take/tag/19:50
GaryvdMjam: I still have not worked out, where do you specify the plugin versions.19:57
jamGaryvdM: have not worked out what?19:58
jamIf you are on the build host, I'm doing the work in "old-windows-installers"19:59
GaryvdMjam: Where do you specify that it should use version 0.19b1 of qbzr19:59
jamtools/win32/buildout.cfg20:00
jam(yeah, ugly place, which is why igc was fixing it)20:00
GaryvdMAh - thanks20:00
GaryvdMjam: can one not put any revision spec in [plugin]-release-tag?20:02
GaryvdM(still going to to qbzr release20:03
jamGaryvdM: probably could, but it is pretty set up to do it this way20:03
jamI think at one point it supported grabbing the latest tip of everything for doing the build20:03
jambut I've only really done releases20:03
jamand I prefer to have tagged code in releases anyway20:03
GaryvdMOk20:04
GaryvdMWe can try use "-1" for daily builds.20:04
jamGaryvdM: something like that20:32
jamGaryvdM: have you tagged 0.19beta2 yet?20:36
GaryvdMNot yet - Going through the whole release processes20:37
jamk20:37
GaryvdMjam: I normaly make sure I can build the installers before I tag and push20:37
jamsure20:38
jamas you wish20:38
jamGaryvdM: so why were you using the ~igc branch rather than lp:bzr-windows-installers?20:42
GaryvdMjam: I soon realised that lp:bzr-windows-installers was newer, and switched to that.20:42
jamah, k20:43
jamgood20:43
mkanatHahaha, the page that causes a memory leak in loggerhead also causes a memory leak in Chrome. :-)20:46
jammkanat: So it really is just generating too much stuff :)20:48
jamits not leaking20:48
jamjust over allocating :)20:48
jamor just showing too much stuff20:48
mkanatjam: Well, no, it leaks, in loggerhead.20:48
mkanatjam: Also, I just crashed meliae.20:49
jamis this the one I commented on? That going to the 'files' page will leak memory if you reload it a few times until gc kicks in and memory drops again20:49
mkanatjam: No, I don't think so.20:49
jamk20:49
jammkanat: care for more details than "crashed" ?20:49
mkanatjam: Yeah, getting them. I just want to be absolutely sure that I have 0.2.1rc installed.20:49
jammkanat: I don't doubt you've managed to do something, as your machine seems to work differently than all the other ones I've worked with :)20:51
mkanatjam: lol20:51
mkanatjam: Exact same bug; no change on my end. Does 0.2.1.candidate.1 have the fix from yesterday, or do I need trunk?20:53
mkanatjam: Well, exact same original bug.20:53
mkanatjam: It now does a fair bit of dumping, but it crashes with the same assertion and a core dump. Do you want the core, or do you just want me to give you steps to reproduce and have you log in?20:53
jamcandidate.1 should have the fix20:54
jamI might have an idea of one more place to check20:55
mkanatjam: Okay. Do you want a backtrace?20:55
mkanatIt will take about 20 minutes to get, because I have to install a lot of debug symbols.20:55
jameither way20:56
mkanatOkay, I'll start the process.20:56
jamsteps to reproduce would be helpful too20:56
jamI was able to reproduce it before with "python -c "from meliae import scanner; scanner.dump_all_objects()"20:56
jambut I fixed that20:56
jamso it seems to depend on something else now20:56
mkanatjam: Okay. It's: ./serve-branches /mnt/mkanat-hdd/mkanat/bzr/; SIGQUIT;  then the above.20:56
mkanatjam: But the ability to SIGQUIT serve-branches is a tiny patch of my own.20:57
mkanatjam: It just adds breakin to serve-branches.20:57
jammkanat: bzr serve --http can be SIGQUIT :)20:57
mkanatjam: Ah, okay. :-)20:57
mkanatjam: And yeah, it doesn't matter where I point serve-branches.20:58
mkanatjam: If I install Cython, will it build with it instead?20:59
jamyes20:59
mkanatHmm, maybe I should try that.20:59
jambut I don't think that is the specific problem20:59
mkanatOkay20:59
jamthe core-dump is fix #1, the pyrex is fix #220:59
mkanatAhh.20:59
jamis everything installed globally?21:01
jamor are you running something from source?21:01
mkanatExcept meliae, now. Meliae was installed globally, but now I'm running it from a build dir.21:01
lifelesshi jam21:01
mkanatAnd I just installed Cython.21:01
lifelessmkanat:21:01
mkanatlifeless: ?21:02
jammkanat: well, I don't have your install of loggerhead, etc (at least not obviously)21:03
mkanatjam: Oh, right. Yes, that's from source.21:03
jamand I don't have perms for /mnt/mkanat-hdd/mkanat21:03
mkanatjam: You don't need them.21:03
mkanatjam: Just start: ./serve-branches21:04
lifelessmkanat: saying hi21:04
jammkanat: well, I need loggerhead21:04
jamhi lifeless21:04
jamI was hoping to avoid re-downloading it for you21:04
mkanatjam: Oh. I could branch it over to you.21:04
jamloggerhead isn't terribly big21:04
mkanatjam: Yeah, re-downloading it would be fine.21:04
mkanatlifeless: Ah, okay. :-) Howdy. :-)21:05
jammkanat: k, I've reproduced in a slightly different way21:06
jammkanat: how would you get a stack trace from the core dump?21:07
mkanatjam: Well, normally I'd use gdb, and it would ask me if I wanted to use yum to install stuff.21:07
mkanatOr it would just tell me to.21:07
mkanatOr there's some tool for analyzing cores.21:07
mkanatIt's too bad this isn't Fedora 13, though--they have something like pygdb built in.21:07
jamwell the last thing in the dump fil is _ctypes.PointerType which is probably a good hint21:08
jamyep, got a core from: py -c "from meliae import scanner; import ctypes; scanner.dump_all_objects('test.dump')"21:09
mkanatOkay. I'm installing the debug symbols.21:09
mkanatAh, debuginfo-install python.21:11
PDeckerAfter "bzr pull"-ing updates of my system-wide-plugins, how do I know which ones need me to "python setup.py install"?  Seems some do (like Dulwich) and most others don't.21:11
jelmerPDecker, dulwich isn't a plugin but rather one of the dependencies21:11
PDeckerjelmer: It's installed in the system plugins directory, at least on this box I got.  How do we know the difference?21:12
jelmerPDecker: It wouldn't do anything if it's in the system plugin directory - how did you get it there?21:13
PDeckerTook me awhile to figure out why things weren't working, and that I had to do the 'install' step.21:13
jelmerPDecker, dulwich is used by bzr-git21:13
PDeckerNever used bzr before ...21:15
PDeckerjelmer: *I* didn't do anything.   I got this box -- new job -- with all this biz pre-installed.  Now I'm doing the usual "fix everything that's screwed up by the nitwits in corporate IT" phase21:15
mkanatjam: Okay, I have a backtrace for you.21:15
jammkanat: can you paste it? or copy it into my home dir?21:15
mkanatjam: I'll paste it.21:16
mkanatjam: This is the only thread that isn't in sem_wait: http://pastie.org/102721021:16
GaryvdMjam: Is there any think I can help with related to win installers?21:17
jamGaryvdM: any idea where we are supposed to set versions in the new igc code?21:18
jamI see in 'bazaar_releases.py' that it references qbzr (for example) but nothing where it says "use version X.Y"21:18
mkanatjam: I wonder if Fedora ships patches with python. I'll go see if they have any that would affect this.21:19
jammkanat: well certainly their assert is tripping in a release build which is strange21:20
jambut I shouldn't be tripping that anyway21:20
GaryvdMjam: Same as before:  tools/win32/buildout.cfg21:20
mkanatjam: Okay.21:20
jamGaryvdM: are you sure? All the other download urls, etc, are in bazaar_releases.py21:20
GaryvdMjam: Maybe he meant to move it but did not get to it?21:21
jamGaryvdM: I think he just never removed it21:21
jamall the stuff in build-win32 seems to be auto-generated21:21
jamafaict his code *only* builds the latest tip of each branch21:22
jamlook at build-win32/buildout-bzr-2.2.cfg21:22
jamit doesn't have any versions in there21:22
jamand just accesses the trunk brancehs21:22
jambranches21:23
GaryvdMjam: let me step through the code an see if i can confirm that.21:23
jamGaryvdM: he seems to be using a jinja2 template21:23
jamif you look in buildoutgen.py21:23
jamand then templates/buildout/buildout.cfg21:24
jamand nowhere in the template does he note a way to specify a version21:24
jam(I'm getting a failure in qbzr because of a .po being changed, and I think that is because you haven't made a release so the code that generates the .po files from the .mo is actually producing a new update)21:25
jamand buildout makes sure that trees are clean before building21:25
jamand so tip of qbzr is not perfectly up-to-date21:25
jambut regardless of all that21:25
jamI need a way to force versions of plugins21:25
jamespecially for building the stable releases...21:26
mkanatjam: There are patches to python, but I don't see any of them that would affect this.21:26
GaryvdMjam: ok - let me work on that21:27
GaryvdMjam: I think you tired to do a build in /cygdrive/d/bzr/bzr-windows-installers. Please could you rm /cygdrive/d/bzr/bzr-windows-installers/build-win32 -r21:28
jammkanat: so what is the quick way to get a stack trace from a dump?21:29
jamI'm triggering it differently, but getting the same failure21:29
mkanatgdb --core=core.12476 --exec=/usr/bin/python2.6 --batch -ex "thread apply all bt" > bt21:29
jamit looks like it may be a case of a class having its own tp_traverse, but one that calls into the original one21:29
jammkanat: and where is the core dumped, because it isn't in '.'21:29
mkanatjam: And you have to set "ulimit -c unlimited" to get the core, first.21:29
mkanatjam: Before running bzr serve.21:30
jamnice of it to say core dumped without actually dumping it :)21:30
GaryvdMjam: I created the dir, so I was able to mv build-win32 build-win32-old21:32
mgzam back.21:33
jammkanat: so I can certainly work around the obvious bug by just saying "don't dump anything that is considered a heap type"21:35
jamsorry a 'non-heap' type21:35
jamhowever, it means references will be left out21:35
jamfor platforms that don't have the assert tripping them up21:35
jamanyway, I have to go now21:36
jamI'll poke back at this later21:36
mkanatOkay.21:36
jamthe diff is stuff like this: http://paste.ubuntu.com/458000/21:36
jamin meliae/_scanner_core.c21:36
jamGaryvdM: it looks like you reverted some of my changes in bzr-windows-installers21:37
jamnamely, pointing the code at the launchpadlibrarian branches21:38
mkanatjam: I'm not quite sure I understand what leaving out references would entail. I mean, everything is a reference in python, on a high level, isn't it?21:38
jamand having "strip_..." set to False for zlib21:38
GaryvdMjam: ah - sorry21:38
GaryvdMI restore from ~ files21:38
jammkanat: the point of meliae is that it walks references to find objects and dumps their info. Not walking references means that we won't find refs and won't dump them21:38
jamGaryvdM: anyway, I'm done for now21:38
jamgood luck21:38
mkanatjam: Yeah, that sounds problematic.21:38
jammkanat: tp_traverse was originally meant only for the garbage collector21:39
jamand it doesn't make sense to garbage collect static objects21:39
jam(non heap objs)21:39
mkanatAhh.21:39
jamhowever, it is nice to find them21:39
jamby for now, see you guys tomorrow21:39
jelmermoin lifeless21:42
lifelesshi jelmer21:42
lifelesshow are things21:42
mgzblast, missed jam while catching up on log21:43
mgzI need to file a bug against the installer, what project should that be?21:43
jelmerlifeless: well, trying to fix the #1 bzr-svn bug!21:43
lifelesswhich installer21:43
lifelesswindows/mac/ubuntu/???21:43
mgzjust checked 2.1.1 installer and it too overwrites pyo files at runtime rather than using the ones on disk21:43
lifelessjelmer: cool21:43
mgzwin.21:43
lifelessbzr-windows-installers21:43
GaryvdMmgz: bzr-windows-installers21:43
lifelessor something like that21:43
mgzthis is going to hurt perf, even if we avoid my added docstring problem21:44
lifelessugh faaail21:44
mgzbadly, for people like jam who install as admin and run with dropped privs21:44
lifelessah yes21:45
lifelessthe classic' but I waannnnnnna cache Mommy!'21:45
mgzwell, library.zip avoids this, but it hurts plugins21:46
lifelesshow so?21:46
mgzwell, it seems that (at least some of) the pyo files for plugins shipped in the installer are for python 2.6 but the python is 2.521:47
mgzso they need to be recompiled from the py at least once (and every load if you don't have write privs to the dir)21:47
lifeless06:46 < mgz> well, library.zip avoids this, but it hurts plugins21:52
lifeless06:46 < lifeless> how so?21:52
mgzpasted what I said pre-ping in /query21:53
lifelessah21:53
lifelessso that would be a bug, not a library.zip thing21:54
mgzbut if you mean the library.zip bit of that question... I presume it's a different path in the building of the installer21:54
mgznothing would work at all of the files in the zip had the wrong magic at the start21:54
mgz(as there are no .py files in there)21:54
mgzjust finishing typing up the bug entry now21:54
mgzI'm not certain it's down the python version, the shipped and recreated files appear to have the same magic22:04
mgzand it's not timestamp related... what else can cause recompilation?22:05
lifelessnothing I've heard of22:05
lifelessoh22:05
lifelessif you can't read the file22:05
mgzoh, wait.22:06
mgzthe timestamp check is != rather than < isn't it?22:06
mgzthat'll be it.22:06
mgzthe pyo files shipped are all from a few seconds later22:07
mgzwait, I'm wrong about that too. 's the timestamp in the bytecode that matters, not the file timestamp22:16
mkanatjam: The python-meliae maintainer in Fedora has a patch! :-D22:18
mkanatI didn't even know there was a python-meliae.22:19
lifelessmgz: is the timestamp in the bytecode borked perhaps ?22:20
mgzit is, seven hours out exactly22:21
lifelessoh joy22:21
mgzis jam in gmt+7?22:21
lifelesswindows not understanding GMT. again.22:21
mgz(or whoever built 2.1.1)22:21
lifelesswell22:21
lifelessI think they are built in a VM on ec222:21
lifelessbut whatever22:21
mkanatjam: Anyhow, I'm working it out with the Fedora python maintainer.22:28
mkanatjam: Okay, problem is that Fedora is unintentionally shipping debug builds of python, somehow.22:30
GaryvdMmgz: You are good with these things. Any idea how to fix this: http://pastebin.org/37185822:42
GaryvdMIf I run the command manually, then it works. I only fails when the build script runs it.22:43
mgzhm, funky.22:44
mgzwell, the environment is messed up, I don't seem to have a devenv.com to check out though22:45
GaryvdMmgz: ok thanks for looking.22:45
mgzanything more in the buildlog html file?22:46
GaryvdMmgz: no. Its just the same output nicely formated22:47
=== lifeless_ is now known as lifeless

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