/srv/irclogs.ubuntu.com/2009/08/05/#bzr.txt

jelmerkklimonda, yes, that's correct00:32
jelmerkklimonda, svn-import imports all of history, it's different from e.g. "svn checkout" which downloads just the last revision00:33
lifelessjelmer: hai00:42
jelmerlifeless, hellø00:44
lifelesshttps://code.edge.launchpad.net/~lifeless/subunit/nopassthrough/+merge/955700:45
jelmerlifeless, any reason for the two spaces of indentation on line 50 and 51 in the diff?00:46
lifelesseditor fail00:47
lifelesswill fix00:47
jelmerlifeless, why does launchpad add "(community)" behind jml's name and mine in the reviewer field?01:13
lifelessI don't know01:14
lifelessthere is a bug open about it, that I filed.01:14
lifelesshttps://bugs.edge.launchpad.net/launchpad-code/+bug/40095001:15
ubottuLaunchpad bug 400950 in launchpad-code "not clear how to tell code reviews that (community) is wrong for a branch" [Low,Triaged]01:15
lifelesslol. re fail :(01:33
lifeless  File "/usr/lib/python2.6/sre_compile.py", line 517, in compile01:33
lifeless    "sorry, but this version only supports 100 named groups"01:33
lifelessAssertionError: sorry, but this version only supports 100 named groups01:33
thumperlifeless: what are you trying to do?01:35
lifelessthumper: just test combination01:36
lifelessI suspect a shallow bug in command line aggregation01:36
lifelessI'll look at it later01:36
thumperjelmer: it seems there is a small bug somewhere in the community identificaiton code ...01:36
thumperjelmer: we are looking into it01:36
thumperlifeless: do you know much about StringIO and unicode?01:37
lifelesssadly yes01:37
thumpershould it be avoided?01:37
jelmerthumper, what is community supposed to be though? Would it be used to identify people who don't have voting rights?01:37
lifelessthumper: its ok some of the time, but it doesn't have clearly (or consistently!) defined semantics.01:38
thumperjelmer: it is more to indicate that while they may provide a review, it doesn't yet hold the weight of a real reviewer01:38
thumperlifeless: it should be well defined01:38
lifelessthumper: if you want a bytestream, which is what python 2.x files are meant to be, its a bad bad bad idea to write unicode to the input side01:38
thumperI know what it should be01:38
lifelessthumper: its not; StringIO and cStringIO, which are meant to be identical, behave differently.01:38
thumperew01:39
lifelessthumper: I'm sure it seems well defined though :)01:39
spivthumper: (c)StringIO is meant to emulate a file, which is meant to contain bytes.  So, feed it bytes (str) not unicode, or else unexpected crap happens.01:39
thumperspiv: ok, ta01:39
lifelessthumper: in py3 there are defined semantics for layering strings down to bytes and back01:39
thumperspiv: I'll reject my reviewers suggestion then :)01:39
spivUse CodecReader/Writer (or whatever they are called) wrapped around a StringIO, if you like.01:40
lifelessthumper: what did they suggest?01:40
thumperI'm using text.splitlines()[:max_lines] -> testlines = islice(StringIO(text), max_lines)01:40
pooliehello thumper, lifeless01:41
lifelesshi poolie01:41
thumperhi poolie01:41
pooliethumper: any chance launchpad could stop flattening whitespace in code review comments? :)01:41
thumperwhat?01:41
thumperpoolie: ref plz01:42
lifelessthumper: uhm, islice(text.splitlines(), maxlines)01:42
lifelessthumper: is ~=01:42
lifelessalso01:42
thumperpoolie: someone must have changed it01:42
spivthumper: yeah, that seems pretty dubious to me.  splitlines really could use a maxsplit argument, like split.01:42
lifelessthumper: also01:42
spivlifeless: I assume the point is to avoid a second copy of the (large?) string in memory01:42
lifelessislice(bzrlib.osutils.chunks_to_lines([text]), maxlines)01:43
pooliethumper:look at eg john's comments in https://code.edge.launchpad.net/~mkbosmans/bzr/topo_sort/+merge/953201:43
spivthumper: or just use split('\n', max_lines)01:43
poolieit's like it was specifically designed by someone who hates python01:43
lifeless^ that is about the most efficient, if you need to deal with large strings/are doing this a lot01:43
thumperspiv: that doesn't discard the rest though does it?01:43
pooliethe problem occurs when you copy and paste from the review diff01:43
* lifeless repeats01:43
spivthumper: yeah, I guess not.01:43
lifelessislice(bzrlib.osutils.chunks_to_lines([text]), maxlines) <- use that01:43
thumperpoolie: they don't look flattened to me...01:44
lifelessthumper: its python, your text isn't getting freed anyway01:44
lifelessoh, the other thing you could do is use a buffer object01:44
lifelessbut really, at that point, I'd rather write C01:44
thumperlifeless: what do you mean the text isn't getting freed?01:44
spivlifeless: right, scan ahead for the nth \n, make a buffer object, splitlines that.01:45
lifelesstext.splitlines() is your big slab of text, its going to be kept in memory until you're done with the last handle to it01:45
lifelessspiv: not quite, N buffer objects01:45
lifelesssplitlines will allocate01:45
lifelessdepends on parameters thumper hasn't shared about object lifetime01:46
spivlifeless: depends on you are worried about, I guess01:46
lifeless^ great minds01:46
spivlifeless: I'm thinking of say 100M of text after max_lines that you don't care about (and certainly don't want a 2nd in-memory copy of)01:46
thumperI don't care that much I guess01:46
thumperat most will have 512k01:46
spivthumper: I see poolie's problem; it's in the code lines John's quoted from the review diff, not the new code he's suggested in the comment.01:47
lifelessspiv: I was thinking of 20K lines and a little noise after :)01:47
spivthumper: e.g. the first four lines of that comment01:47
spivlifeless: :)01:47
lifelessthumper: can you give us a quick english description of the problem01:47
thumpergotcha01:47
thumperit is actually the tal formatter that formats the diff01:48
thumperI get a (maybe unicode) string01:48
spivlifeless: Well, I'm guessing from the "max_lines" value that limiting the amount of data handled is the concern.  It would be good not to guess :)01:48
thumperto break up and make pretty01:48
thumperyes, I want at most a configurable number of lines01:48
lifelessok01:48
lifelessso, here's what I'd do01:49
lifelessI'd first pass the string through some coerce_to_unicode thing01:49
lifelessnoting that diffs from bzr can be in any encoding01:49
thumperlifeless: like unicode(text)01:49
lifelessand that different files can be different01:49
lifelessthumper: like that, but that will fail.01:49
lifelessthumper: there are heuristics things around in lp for this already.01:50
lifelessin exceptional cases, parts of the diff are in two different encodings01:50
thumperlifeless: we have code that attempts to decode the actual diff elsewhere01:50
lifelessconsider when someone reencodes a NEWS file from cp-1280 to utf801:50
lifeless(this is real, people do it it Debian.Changelog)01:50
thumperyes we know there are edge cases01:50
lifelessok01:50
spivthumper: that's just an implicit spelling of text.decode('ascii') (unless you've done evil things to your python runtime, like "import gtk"...)01:50
lifelesswell, I'd get it to a known state, either all bytes, or all unicode01:51
lifelessthen then loop on re.finditer(r'\r|\n', re.MULTILINE) to get the position01:53
lifelessfinally, bzrlib.osutils.chunks_to_lines([buffer(text, 0, pos)])01:53
lifelesswe may need to bugfix that to deal with buffer objects, but its the right conceptual function for stashing that in.01:54
thumperinteresting01:54
thumperoverkill for me now, but interesting01:54
lifelessI thinl its overkill too01:54
lifelessI think diffs will either be fine to deal with naively01:54
lifelessor so big that the first text is already killing you01:54
lifelessso actually limiting needs to be pushed down the stack.01:55
lifelessalternatively, loop on01:56
lifelessre.finditer(r'.*\r|\n', re.MULTILINE)01:56
lifelessfor match in islice(re.finditer(r'.*(\r|\n)', re.MULTILINE), max_lines):01:57
spivpoolie: btw, that case I was worried about turns out to be a non-issue; it's already handled correctly.02:01
lifelessthumper: actually, the re one is worth testing, it may well be the bomb02:06
thumper:)02:07
pooliespiv: way to go02:12
spiv...and it's beating IDS for wall clock time on fetch from 1.9 -> 2a over HPSS.02:13
igcmorning02:13
spivFor bzr.dev -r2000, anyway.  It'll be interesting to see how mysql goes.02:14
=== cody-somerville_ is now known as cody-somerville
jelmerhi Ian02:15
jelmermoin Andrew02:15
spivjelmer: hola02:16
lifelessspiv: \o/02:20
lifelessigc: did you get a chance to take commit for a spin?02:21
igclifeless: not yet - will do so today02:21
lifelessok02:23
krisivesHey, anyone here familiar with the FTP transport code in bzr?02:28
lifelesssomewhat02:28
lifelessits mainly a thin veneer around ftplib02:29
lifelessif I am remembering correctly02:29
krisivesSomeone was having problems with CHMOD not being allowed on their Windows-based FTP server for their host, but from what I read in the code it just warns if CHMOD fails02:29
lifelessperhaps the server is giving a fatal failure?02:29
krisivesNot sure, but I am correct that it should just generate warnings and still push (for example) ?02:30
krisivesIt also seems to have problems pushing because it keeps the branch lock open :(02:30
lifelesswe catch ftplib.error_perm02:31
lifelessits probably returning a different error code02:31
lifelessthe intent is to warn and continue02:31
krisivesWell, the error string for that catch is what's being output02:31
lifelessoh, if its outputting the string then its being caught ok02:31
krisivesI suspect that the FTP is killing the connection at sometime, which would leave the branch locked02:31
lifelessthat sounds plausible too02:32
krisivesIf that happens, what does bzr do?02:32
krisivesDoes it try every X seconds?02:32
lifelessif the branch is locked when we try to lock it, yes we spin for a while02:32
lifelessif the connection is broken leaving a stale lock, the 'bzr break-lock' command can be used to manually break the lock02:32
krisivesIndeed, but his FTP is just too borked I think02:33
krisivesTo sync just 1 file it drops the connections so much that you can't realistically break the lock and push, you'd be doing it every few seconds02:33
lifelessouch02:34
lifelessI need to go eat; perhaps you or he could file a bug?02:34
lifelesswe can see if we can improve things - though it may not be feasible02:34
krisivesI believe he is, but honestly I think it's just the FTP being fudge02:34
krisivesUnacceptable for an FTP to not have CHMOD IMO02:34
lifelessI don't know that its chmod causing the problem02:35
krisivesThanks for your help :)02:35
lifelessit may be incidental02:35
krisivesI agree02:35
lifelessciao02:35
krisivesEither way his FTP is the real issue here02:35
lifelessvila: I'm going to look at the test suite this afternoon03:36
lifelessI've got my check branch passing again03:36
lifelesspoolie: do you want to do an incremental review? The changes were all shallow - tests calling branch.check() rather than check_dwim on the branch path (which is the public API according to our docs)03:37
spivlifeless: speaking of reviews, inventory-delta is up for review again.03:52
spivlifeless: it uses a separate substream now and is generally looking fairly shiny I think.03:52
lifelessawesomeness03:52
lifelesswhat did you do about the parents issue03:52
spivIt transmits them on the FulltextContentFactory.03:54
lifelesscool03:54
spivActually, this is effectively unchanged from the previous interation, I'm pretty sure despite John's comments it was sending them before, too.03:54
lifeless:P03:54
spivAnyway, if it's wrong, then a test should fail  :P03:55
spivBut I'm pretty sure this is doing the conservative thing.03:55
spivNext up is more interactive testing and maybe see if I can do a cheap hack to do something about the "inserting a stream into 2a causes massive bloat until the final autopack" issue.03:57
* igc lunch03:57
spivBut first, lunch.03:57
spivigc is a trendsetter :)03:57
* spiv -> lunch.03:57
poolielifeless: hi i'm back05:16
poolielifeless: want to read spiv's thing?05:16
poolieigc, we should chat about the web site sometime, if you're up05:22
igcpoolie: sure. I'm back from lunch now. I'm feeling rather washed out today but discussing websites is well within my mental ability nevertheless :-)05:24
poolieigc :) how about now?05:24
igcpoolie: np05:24
thumperpoolie: wouldn't mind a chat some time05:25
pooliehi thumper06:53
poolieomg death by telephone06:54
lifelessmtaylor: ask thumper; here.06:54
poolielifeless: i forget, did you want me to reread your check-1 branch?06:54
mtaylorthumper: is it possible to use boost::format without using the % operator?06:56
lifelesspoolie: its up to you06:56
lifeless12:36 < lifeless> I've got my check branch passing again06:56
lifeless12:37 < lifeless> poolie: do you want to do an incremental review? The changes were all shallow - tests calling branch.check() rather than check_dwim on the branch path (which is the public API according to our06:56
lifeless                  docs)06:56
pooliethat's https://code.edge.launchpad.net/~lifeless/bzr/check-1/+merge/7489 ?06:57
poolieif you want to use the Trivial Button, use it.06:58
lifelessI'll send it to pqm now then06:59
poolielifeless, i'm working up towards doing that subunit-filter feature myself...07:13
lifelesscool07:13
lifelessI've been thinking about the problem of multiple outcomes for tests07:14
lifelessI think its a 2d squashed into 1d problem07:14
lifelesserm, not multiple events per fixture, but addSuccess vs AddFailure vs addSkip etc07:14
=== davidstrauss_ is now known as davidstrauss
lifelessI might mail TIP about it actually07:14
pooliemeaning it should be more like addResult('success')?07:20
lifelessI think there are multiple dimensions:07:21
lifeless - ran | did not run (reason)07:21
lifeless - failed (details)07:21
lifelessI'm exploring the concept at the moment07:22
lifelessits not mature07:22
lifelessnot all coordinates make sense07:22
lifelessdidn't run, failed   is an interesting one to consider - MissingDependency might be that case07:23
lifelessbasically I think the that list can't ever be complete the way its tackle at the moment07:23
lifelessand that provokes ugliness/continual growth in the API07:23
vilahi all !07:23
lifelesshi vila07:24
poolieagree07:24
lifelessvila: I haven't fixed it yet07:24
poolieit may be more cleaner to add some kind of object to which you can then add attributes and dimensions07:25
pooliehi vila07:25
vilalifeless: just reading your last comment, you're on on the right design track though :-)07:25
lifelessthanks07:26
lifelessvila: so, for --parallel07:26
lifelessI think special casing the counting decorator to be applied before the parallel one, would be reasonable.07:27
lifelessor something07:27
lifelesslong term I want to fix the driving problem about status info07:27
lifelesspush that down to subunit and up to python upstream07:27
lifelessfirst though, its EOD for me, and I'm off to think/tweak nested progress in  subunit07:28
vilalifeless: ok, short term I just disabled --parallel=fork in the test farm, but 1) it's a shame, 2) I still need it :)07:29
poolielifeless: how am i meant to invoke the subunit test suite?07:29
lifelesspoolie: make check / make distcheck07:30
bialixvila: hi07:31
vilabialix: hi, wow, already up ? :)07:32
bialixyep, I'm in +2 TZ07:33
bialixvila: bzr pull http://bzr.dev hang07:33
bialixhttp://pastebin.com/m757ed46407:33
vilabialix: hehe, I know, but you generally come later07:33
bialixis it bug or this is my network ?07:34
bialixvila: :-P07:34
vilabialix: from what I can see, it should be your network, try with -Dhttp maybe ?07:35
bialixI've surprised by  25 bytes left message07:35
bialixour ADSL is so flaky :-/07:36
emmajanepoolie, beuno, igc: incoming email, although I'm outgoing for sleep. :)07:37
vilawell, it smells a bit but not enough to trigger a deep debug session so far, I've seen it in other reports though so I'm aware that something strange is going on here07:37
igchi emmajane07:37
vilaemmajane: hi !07:37
vilaemmajane: good to see you around :)07:37
igcemmajane: sorry I've missed you on irc recently - haven't been around much these last 10 days07:37
bialixwhat it means: lock cannot be broken? http://pastebin.com/m3a7d4d3007:38
emmajaneigc, not to mention yo'ure in the wrong time zone for me. :)07:38
emmajane(it's nearly 3AM here)07:38
igcemmajane: may be we can catch up some time later this week07:38
emmajaneigc, that'd be good!07:38
pooliebialix: probably something holding the os lock (must die)07:38
pooliethere should be a traceback in bzr.log07:39
vilabialix: isn't it OS lock realted (which must die ?)07:39
vilarats07:39
pooliejinx :)07:39
emmajanevila, ps HAI :)07:39
bialixrats07:39
emmajaneok. sleep time now.07:39
vilaHAI ?07:39
poolielifeless: (lazy) how is subunit meant to treat xfail in its tests?07:39
pooliesleep well07:39
emmajanevila, "hi" in lolspeak.07:39
emmajanepoolie, thanks. :)07:39
vilaemmajane: :)07:40
poolielifeless: nm07:40
lifelesspoolie: it doesn't have any xfail tests at the moment :)07:40
* emmajane clearly needs sleep :)07:40
igcnight07:40
lifelesspoolie: it has tests /of/ xfail07:40
poolieit folds it to success, it seems?07:40
igcemmajane: yep, certainly wrong timezone but I'm often around in my early morning as well so I'm sure we'll catch up soon enough :-)07:41
lifelesspoolie: ah yes.07:43
lifelesspoolie: 2.7 has an addExpectedFailure now, I haven't adjusted subunit to use that yet, is all.07:43
bialixvila: -Dhttp does not reveal anything and pull has finished successfully07:43
bialixbut OSLMD definitely07:43
vilaOSLMD ?07:44
igchi bialix!07:44
bialixinvented today: OS Locks Must Die!07:44
bialixhi igc07:44
* vila wonders where he lost his acronym deciphering capabilities...07:44
vilaOSLMD !!! Of course !07:44
bialixLOL07:44
bialixigc: today will do review of pending merges in qbzr, after noon in my TZ07:45
poolielifeless: this seems to mean it loses the KnownFailure exception details :/07:45
igcbialix: excellent. thanks07:46
lifelesspoolie: thats a shallow bug now that python has a defined contract07:46
bialixbut today morning I'm thinking about your mail. Why quncommit is so important for you?07:46
bialixigc: ^07:47
lifelesspoolie: I'm filing a bug on the xfail squash07:50
pooliei did already07:50
pooliebug 40919307:50
ubottuLaunchpad bug 409193 in subunit "folding KnownFailure to success loses data" [Undecided,New] https://launchpad.net/bugs/40919307:50
lifelessoh, thanks07:50
pooliealso bug 40919107:51
ubottuLaunchpad bug 409191 in subunit "want a subunit-sort utility" [Undecided,New] https://launchpad.net/bugs/40919107:51
poolienot very related07:51
pooliebut would be cool with many failures07:51
lifelesslp indeed07:51
lifelessbah typo07:51
lifelessindeed07:51
lifelessback shortly07:51
igcbialix: it's not to me personally. But it is w.r.t. menu options I'd want to explain in a manual for explorer say07:56
igcbialix: scanning over the user guide and 'translating' the tasks to gui actions (instead of bzr commands), we need ...07:58
bialixI mean: I don't think this is main operation07:58
bialixah07:58
igcbialix: (1) easy importing & (2) being able to undo mistakes07:58
bialixeasy importing?07:59
poolieemmajane: really nice mail :)07:59
igcbialix: I personally care more about shelve for example, than uncommit, but most new users will screw up a commit message more often than want to shelve ;-)08:00
bialixshelve (shelve2) does not work for me, so08:01
igcbialix: "I have a tree of files - put it under version control for me"08:01
bialixok, I've grok your pounti08:01
bialixok, I've grok your point08:01
bialixqimport?08:01
bialixis not import command still the part of bzrtools>?08:02
pooliebaz-import is, i think08:06
poolieplain import i think has always been built in?08:06
lifelessimport is in core I'm fairly sure08:06
poolielifeless: there are no blackbox tests iiuc?08:07
bialixbzr help import said: From:     plugin "bzrtools"08:07
bialix:-P08:07
lifelessnone!08:07
pooliewoo, freedom!08:08
pooliewell that obviously works08:11
pooliewhy do people bother writing tests?08:11
lifelesspoolie: so, I'll probably add something approximating blackbox tests at some point in the future08:12
lifelesspoolie: for now, I do TDD for all the core code08:15
pooliesure08:15
lifelessand treat UI validation as a shallow release task08:15
pooliei'm not complaining, i'm just checking i don't miss it08:15
lifeless:)08:15
pooliei mean i'm changing it and i don't want to submit without tests08:15
lifelessthats fine08:16
pooliedone- https://code.edge.launchpad.net/~mbp/subunit/408821-filter-re/+merge/968008:24
pooliespiv, how's the inventory delta patch? did it turn out it's ok to go?08:31
poolieooh this is very nice08:31
lifelesserr might not be a string08:32
lifelessit seems like a bug there08:32
lifelessbut otherwise nice08:32
pooliei was only assuming it could be cast to a string08:32
poolieor i only meant to08:33
mdkelifeless: I am now08:33
mdkelifeless: just trying this fast-export thing at the moment08:33
mdkeok, I've run the export and piped it to a file08:38
mdkelet's see now08:40
mdkean error - http://paste.ubuntu.com/247816/08:44
mdkelifeless: if you have any ideas, give me a shout - I'm off to work now but will pick up hilights. Thanks in advance!08:48
lifelessa bug in fast-export, or a broken stream08:55
lifelessfile a bug08:55
* igc dinner09:12
poolievila, lifeless, i think i'll call it a night09:12
pooliebye09:12
lifelessciao09:12
lifelessI'm reviewing atm09:12
vilapoolie: bye09:12
pooliei wonder how spiv's patch went?09:13
lifelesspoolie: reviewed09:19
pooliethe subunit thing?09:19
lifelessI think its nice, but improvable09:19
lifelessyes09:19
lifelessoh, missed a bit09:20
lifelessI don't think the predicate should be public on the filter09:20
lifelessit would be odd for someone else to be calling it09:20
pooliei thought they might want to chain on it09:21
lifelessyou mean replace it after construction?09:22
poolieyes09:22
lifelessmmmm, I think I'd rather have a list of predicates for that, in the object.09:22
lifelessits also a bit yagni, as I strongly suspect these filters are build-and-execute, not build-edit-execute09:23
pooliedid you comment on the mp?09:23
lifelessyes09:23
pooliei'll make it private09:23
lifelessbunch of mostly shallow stuff09:23
lifelessit looks really nice as a feature09:23
poolieoh, now you did09:23
pooliehow can it hit on None?09:25
lifelessperhaps not from the command line09:26
lifelessbut addSkip(test, None) is something people might call09:27
lifelessits possible I'm overthinking it09:28
lifelessk, well I'm going to head for a bit09:31
lifelessI'll tackle progress later09:31
* bialix works on qbzr12:38
spivpoolie: I resubmitted the inventory-delta patch for review; didn't Launchpad send you mail about it?12:46
poolieoh hi spiv12:46
pooliei saw there was a new review from about 5h ago12:46
pooliei didn't review it myself though :/12:46
pooliemaybe john will12:47
=== mrevell is now known as mrevell-lunch
Takam I doing something wrong, or is push being strict by default supposed to be super-annoying? :-P12:55
bialixhehe12:59
bialixyou can set push_strict = False in bazaar.conf to disable this12:59
Takah, nice13:03
bialixnice?13:03
Takit's nice that I can disable that in the preferences13:04
vilaTak: when do you encounter it ?13:04
bialixwith qpush you've got yes/no dialog13:04
bialixvila: sometimes it's perfectly legal situation to push finished job and get unfinished changes in the tree :-P13:05
Takvila: when I have uncommitted local changes13:05
vilabialix: I know it's perfectly legal, I'd like to better understand why and when people encounter it13:06
Takah13:06
Noldorinkrisives: ping?13:06
vilaTak: but why did you want to push anyway ?13:06
krisivesKnee deep in CSS :(13:06
Takwhen working with an ide like monodevelop, it makes a lot of trivial changes to project files (reordering elements, etc) that I don't want to commit13:06
Noldorinkrisives: hehe, lucky you13:06
* bialix push anyway to publish his finished work for other people13:06
Noldorinkrisives: i'll catch you later maybe?13:06
Takso I generally commit source changes only, then push13:07
vilaTak: I see13:07
vilabialix: I see too :)13:07
krisivesI'm around just kinda in the background13:08
krisivesFeel free to ask anything, but I will probably be a while13:08
bialix(vila has a good eyesight!)13:08
Takthere are other times when I'm halfway through a bugfix or something, but I want to push previously committed changes because I'm going to goto lunch, go home, etc.13:08
vilaTak, bialix : both of you are aware of the consequences, push_strict is for newbies that may not realize *what* they are/aren't pushing13:09
* bialix sighs13:09
vilait's a bit unfortunate we realize that so late, but I really think the default should be strict, as Tak said, adding a push_strict = False in bazaar.conf is not a lot to ask to power users13:10
bialixyep13:10
luksshould the default UI be really targetted at people who don't know how to use it?13:10
vilaluks: ???13:12
bialixvila: well, with qpush I don't need to set push_strict13:12
vilaluks: that sounds obvious, how can you learn it otherwise ?13:12
Takluks: yes.13:12
luksvila: by reading the manual13:12
vilaluks: mwhahahaha13:12
bialixlol13:13
luksTak: it's the "Mr .Clippy" issue13:13
Takvila: I'm ok with the config option13:13
luksTak: you don't want the program watching you and tell you what are doing wrong13:13
vilaTak: note that you can put it in any config file (bazaar.conf, locations.conf, branch.conf) to restrict its scope13:13
Takof course, I disable spellcheck in all my applications13:14
Takbut on the same token, I appreciate that spellcheck is on for other people13:14
Takbecause then I don't have to stab them as much13:14
luksspellcheck that warns and spellcheck that doesn't allow you to save incorrectly spelled words are different13:14
luksthis is the later case13:15
vilaluks: novice can't be required to activate a novice mode, power users will feel obvious to desactivate a novice mode13:15
luksI wouldn't mind a message, or even a question13:15
Takthere is a message: "Use --no-strict to override."13:15
vilawarning are ignored, questions are even more annoying in CLI !13:15
Takmaybe the config option should be mentioned in the message, though13:15
luksvila: so take the first --no-strict as a step from novice to advanced mode13:15
* Tak agree @ CLI questions13:16
luksvila: well, I find the need to run the command again even more annoying13:16
vilaluks: yup, I think the missing bit is a hint that --no-strict can be set in config files13:16
vilaluks: you should do that only once, learn about the config variable, think about it, set it, forget the problem13:17
vilaby contrast, if it's off, the novice will suffer before he understand why his changes weren't pushed !!! Where are they ? Are they lost ?13:18
luksvila: now we only need support for `bzr config push_strict False` :)13:18
vilaluks: good point !13:18
bialixluks: can I ask about Qt? What is QStyle?13:20
luksbialix: class that draws widgets13:20
bialixI can use default instance of QStyle?13:20
lukswell, QStyle is an abstract class13:20
lukswhere do you need it?13:21
bialixone sec13:21
luksevery widget has a style instance associated with it13:21
luksyou can use widget.style()13:21
bialixluks: see http://pastebin.com/m7ae00e2813:21
bialixluks: Gary use parent=None here but does not provide default style and this code failed in tests13:21
luksbialix: use QtGui.QApplication.instance().style()13:22
bialixcan I just use style = QStyle() here is parent is None?13:22
luksat least I think that's the right name13:22
bialixok13:22
luksQStyle() would be wrong13:22
bialixok13:22
* bialix trying13:23
bialixluks: it does not help13:25
lukshm, why not?13:25
bialixbecause QtGui.QApplication.instance() is None when I'm running tests13:25
luksah13:26
luksyou can't work that around that13:26
luksthe icon loading will have to be moved outside of the model13:26
bialixall I need actually is style.standardIcon13:26
bialixhmm, but IIUC model should provides these icons13:27
luksbut they depend on the widget style13:28
lukswhat are the tests doing with the model?13:29
luksif they are not asking for the icons, you can move the code and load them lazily13:29
bialix        model = TreeModel(None)13:30
bialix        modeltest = ModelTest(model, None)13:30
bialix        13:30
bialix        model.set_tree(tree, tree.branch)13:30
bialix^ it was tests13:30
=== mrevell-lunch is now known as mrevell
lukshm13:30
luksI don't know what ModelTest does, but I guess it does lots of things13:30
bialixI'm about mark this test as KnownFailure for 0.1313:30
luksso the best solution is probably to load the icons elsewhere and pass it to the model13:31
luksand pass empty icons from the test13:31
luksor even check if parent is None and just create empty icons in the model13:32
lukshacky, but should do the work13:32
bialixempty icons sounds good13:32
bialixluks: empty icons (aka QtGui.QIcon()) did the trick, thanks13:34
krisivesHow can I get a changelog?13:35
lukskrisives: bzr log?13:36
luksor bzr qlog if you want something cooler :)13:36
krisives<-- dumb13:36
bialixluks: it seems Gary did the wrong thing with this model13:37
bialixluks: TreeModel is subclass of QtCore.QAbstractItemModel, the latter can have parent in constructor as instance of QModelIndex and the latter does not have style()13:38
krisivesHow can I get bzr log to only output changes?13:57
krisives(Not dates, file names, etc.)13:58
Noldorinkrisives: you still busy?14:15
krisivesSadly so14:15
Noldorinkrisives: ok no worries14:16
krisivesWhat it do/14:16
NoldorinCHMOD is not something that does not work just on our Windows servers, it14:16
Noldorindoes not work on any Windows servers. CHMOD is supported at present only by14:16
Noldorinthe Linux operating system.14:16
Noldorinthat's what my web host replied14:16
krisivesLOL14:19
krisivesWell, many FTP servers emulate the permission model, and some use NTFS correctly to do some primitive permissions14:20
bialixluks: still around?14:20
Noldorinkrisives: so that's basically rubbish, isn' it?14:20
krisivesI would say so14:20
LarstiQNoldorin: imnsho, utter rubbish14:20
LarstiQNoldorin: there are ftp servers which don't use the OS filesystem as a backing store but a database for example14:21
NoldorinLarstiQ: yeah, exactly what i thought14:21
krisivesA quick search reveals many of them14:21
krisiveshttp://www.xlightftpd.com/14:21
krisiveswas the first Windows-based result I found14:21
Noldorinand if the file system is NTFS, CHMOD should work with no problem14:22
krisivesI've found the best way to "communicate" things to companies is to just politely tell them "Ok, thanks. I would like to cancel my business with you."14:22
krisivesPerson on the phone will take it as a personal insult...14:23
the-ermI have an account on launchpad.net, and I want to add another user who can edit/approve changes to a project.  How do you do that?  Do you have a url that explains it14:23
krisivesAnd then you have to break down into 3rd grader mode and be like "Business is business... You can't provide the services I want, so I'm not interested"14:23
LarstiQNoldorin: but I think we should be able to make bzr work without chmod14:24
krisivesAnyone know how I can get bzr log to return all but the first revision?14:24
NoldorinLarstiQ: yes, thats is true14:24
Noldorinwhat is your latest suggestion?14:24
Noldorinto use mount a virtual directory for the FTP server?14:24
krisivesLarstiQ: I did some testing and it's not isolated to CHMOD14:24
LarstiQkrisives: bzr log -r 2..-114:24
krisivesLarstiQ: Thanks!14:24
krisivesHis FTP just straight kills connections too from what I tested14:24
LarstiQthe-erm: the trick is to make the project owned by a team: https://help.launchpad.net/Teams14:25
Noldorinyeah14:25
krisivesIt would leave the branch lock while trying to sync a 1 file test repo14:25
Noldorinbut i still don't understand why ...14:25
LarstiQkrisives: nice14:25
LarstiQkrisives, Noldorin: has a bug been filed?14:25
vilathe-erm: try #launchpad instead, but overall, yes you can do that, and start reading at https://help.launchpad.net/14:25
krisivesI actually put a return statement in _setmode to completely bypass CHMOD14:25
krisivesUsing a custom bzr checkout14:25
vilakrisives: if you have control over the server ftp is really not the best option14:26
NoldorinLarstiQ: not yet14:26
Noldorinkrisives: hmm, did you paste me your log after doing that?14:26
NoldorinLarstiQ: i thikn krisives understands the problem better than me :)14:27
=== maxb_ is now known as maxb
krisivesI had problems with nautilus with this FTP too14:28
krisivesI've found that if nautilus gets made it's usually because of passive connections or something like that. What does bzr do in that regard?14:29
vilakrisives: if you have to use ftp anyway bypassing _setmode shouldn't help because it isn't required anyway, that will make your log easier to read though14:29
vilakrisives: use aftp: instead of ftp: if you need passive14:29
vilalol, no14:30
vilaaftp is to force active, sorry14:30
LarstiQvila: the server is not under our control14:31
vilaso we are passive by default, use aftp to force active14:31
vilaLarstiQ: ha, the hard case :)14:31
LarstiQvila: yup14:31
krisivesvila: I did that because I thought his server would get irritated with so many bad CHMOD attempts14:32
vilakrisives: ha, good idea :)14:32
LarstiQvila: it's a windows based ASP.NET hoster14:32
krisivesvila: Does bzr use passive connections via FTP?14:32
krisivesYeah it's not mine either I'm just helping Noldorin14:32
vilakrisives: yes, passive by default14:33
krisivesvila: You can change it?!14:33
Noldorinhmm14:33
vilakrisives: you can use active by saygin aftp:// instead of ftp://14:33
krisivesIf you can you might want to try that Noldorin. Like I said nautilus (file browser) uses passive connections and was exhibiting similar problems14:33
krisivesvila: Sorry, it's late/early for me ;)14:34
vilakrisives: no worries14:34
Noldorinkrisives: what's the option for bzr?14:34
krisivesIt's a different protocol14:34
krisivesInstead of "ftp://blah" it's "aftp://blah"14:34
Noldorinoh i misread.14:34
Noldorinthought you were just referring to an active connection14:35
vilano no, that should be me :)14:35
krisivesWell, all I know is that there are two ways to connect to the FTP, and one way flat out doesn't work on your server14:35
vilaNoldorin: ftp has two ... as krisives says :)14:35
krisivesAnd I tested both ways because Filezilla worked fine, but others didn't work worth beans14:35
krisivesThat's probably the dumbest way to describe the whole thing, but it's 6:36 AM and I've been dealing with IE6 in a VM14:36
LarstiQkrisives: I know it's late/early for you, but if you could file a bug so we can start collobarting/tracking around that, that would be nice14:36
vilakrisives: what kind of VM ?14:36
LarstiQhmm, that's a fun way to spell collaborate14:36
krisivesVirtualBox14:36
vilakrisives: what type of network connection ?14:36
vilakrisives: NAT, bridged ?14:37
krisivesNot sure, I think it's NAT bridged14:37
vilakrisives: what host OS ?14:37
krisivesCould care less if the VM goes *poof*14:37
krisivesUbuntu 9.0414:37
NoldorinLarstiQ: that, that would be great if krisives could do it, who understands this problem better than me :)14:37
krisivesWell, right now I don't know what I would file14:38
vilakrisives: it's either NAT or bridged, nad NAT is severely limited in my experience14:38
krisivesWell it works on both local and external network, and it has it's own IP i think14:38
LarstiQkrisives: ideally a way to reproduce it, the rest can be fleshed out later14:38
krisivesI hate having to use `net use x: \\vboxsvr\blah` though, it should be in the Network Stuff area14:38
Noldorinkrisives: have you tried aftp on my server?14:39
LarstiQkrisives: the important part is to have a flag in the ground to rally around14:39
krisivesGood point14:39
LarstiQkrisives: just saying "it doesn't work with hoster X, herre is the traceback" would be a start14:39
krisivesI don't have your FTP details + I am kinda busy at the momemnt14:39
vilakrisives: if you use it as a client only NAT generally works flawlessly, if you try to use some servers or mount some NFS volumes and need to be authenticated by the NFS server... things become more complicated14:39
krisivesI just use this as an exaggerated version of Wine lol14:40
krisivesIt runs IE6 and Photoshop14:40
vilakrisives: NAT is enough then14:40
krisivesUsing Photoshop in Wine is suicide14:40
Noldorinkrisives: i'll give them to again later if you fancy doing any more testing :)14:40
vilakrisives: and will help stay away from the bad boys :)14:41
krisivesIt "works" but in reality it has so many quirks that any real PS user will be irritated to hell14:41
krisivesWell, I guess I have to play the "I'm behind 3 routers" card14:41
krisivesSo it's good ol' security through obscurity on my home network sometimes14:41
krisives(joke)14:41
vilakrisives: don't know what you're talking about (joke)14:42
krisiveshttp://en.wikipedia.org/wiki/Security_through_obscurity for anyone lost14:42
krisives(actually lost)\14:43
krisivesthis is getting confusing lol14:43
vilaSTO requires that I don't talk about how I setup my home network :)14:44
vilafunnily enough, http://www.virtualbox.org/wiki/Changelog says:14:45
vila# NAT: fixed passive ftp access to host server (bug #4427)14:45
ubottuLaunchpad bug 4427 in scorched3d "scorched3d: FTBFS on amd64" [Medium,Fix released] https://launchpad.net/bugs/442714:45
vilasorry ubottu. not for you14:45
vilakrisives: and that's for VirtualBox 3.0.4 (released 2009-08-04), I don't know if you are up-to-date14:46
LarstiQkfogel: 1.17 could be uploaded, but maybe we want to wait14:50
krisivesSorry im back, had to make a corn dog14:51
kfogelLarstiQ: hey, thanks, was about to ping.  We would want to wait because... ?14:51
krisivesThe base of my office chair broke, so I just put it on top of 2 ATX towers for the mean time14:51
LarstiQkfogel:  [REGRESSION] bzr 1.17 does not use _knit_load_data compiled extension14:52
LarstiQkfogel: reading that thread, it may not be too serious14:53
vilaLarstiQ: didn't spiv backport the patch ?14:53
vilaLarstiQ: no, not really serious, I doubt knit is still widely used14:54
LarstiQkfogel: I suppose you'll want to use 2a?14:54
LarstiQvila: but a 1.17.1 point release has not been made, has it?14:54
LarstiQkfogel: I think I'll just include the fix as a Debian local patch14:55
vilaLarstiQ: no 1.17.1 AFAIK14:55
kfogelLarstiQ: this is to use 2a14:56
LarstiQkfogel: right, then it wouldn't really matter for you14:56
kfogelLarstiQ: right14:56
spivvila: I backported it to ~spiv/bzr/1.17, pqm didn't let me commit it to the 1.17 branch though.15:03
LarstiQlp:~spiv/bzr/bzr-1.17 specifically15:04
lamontdoes 1.17 support any (well, commit in particular) hooks in the branch, or are they all still located only under $HOME ?15:04
LarstiQlamont: code or configuration?15:05
lamontuse case: whenever anyone does a commit in this (shared) branch, i want to run a script15:06
lamontlast I saw, that required modifying files under $EVERYONE's home directory15:07
lamontthough to be fair, haven't looked recently, for any value of "recent"15:07
LarstiQlamont: that can be configured in .bzr/branch/branch.conf15:07
LarstiQlamont: problem is, then you'll need to do that in each branch15:07
LarstiQlamont: which especially with pushing new branches is a pain15:08
spivLarstiQ: ta15:11
vilaspiv: ha, thanks, I thought you did something, so it's in jml hands then ?15:12
spivvila: well, jml is probably too busy with other things atm, I think.15:12
spivI guess you could ask him :)15:13
spivI'm not sure if there's really much enthusiasm for a 1.17.1 or not.15:13
jmlwhat huh?15:13
spivjml: :)15:13
vilaLarstiQ: spiv told me you should ask jml :)15:13
spivjml: there are some small patches that would possibly be worth cutting a 1.17.1 for.15:13
LarstiQspiv: I'm branching now, going to have a look at the diff and apply it locally to the Debian packaging of 1.1715:13
* LarstiQ wouldn't mind cutting a 1.17.1 if jml is too busy15:14
lamontLarstiQ: cool - is the particular config snippet trivially on a manpage somewhere?  and I gather that the rest of that means that it's not copied as part of push/pull/etc operations, but is local to the branch only?15:14
LarstiQlamont: to answer the last question first, correct.15:14
jmlLarstiQ, I am pretty busy right now, so that would be wonderful.15:14
spivjml, LarstiQ: I think there were only 2 or 3 patches people suggested, check the list archives.15:15
LarstiQlamont: the rest of the configuration is the same as otherwise, so post_commit_to = for the email plugin etc15:15
vilaLarstiQ: Are you still sheperding bzr dogfooding 2a ?15:15
LarstiQvila: yes, although I haven't actively shepherded lately, should get back to that15:15
lamontLarstiQ: ta15:16
fullermdIf you're not actively shepherding, are you just flocking around?15:19
* Tak rimshot15:19
fullermdThank you, I'll be here all week.  Try the veal!15:19
Takhttp://instantrimshot.com/15:19
vilajam, sidnei: ping15:29
jamgreetings and welcome vila15:29
sidneivila: aye15:29
vilawhat is missing to plug the buildbot ?15:30
jamhand of god?\15:30
vilagod: ping15:30
sidneitime and goodwill?15:31
jamAFAIK, getting sidnei to put a buildbot.tac on kerguelen15:31
jamand getting someone to review my patch15:31
jam(which may have happened, I haven't gotten through all my mail this morning)15:31
sidneiand changing vila's master config to accept kerguelen and send the right instructions15:31
sidneivila: just to confirm,  lp:bzr-buildbot-net is your master config?15:31
vilajam: no, not reviewed yet, I'd like to, but I'd really prefer to be able to test it first, see the trend ? :)15:31
jamvila: merge locally, "make installer-all"15:32
jamI don't really know how "make installer-all" will work into the buildbot setup15:32
jambut it at least is a manual bootstrap you can use15:32
vilasidnei: yes, merge your changes, setup a slave, publish a branch somewhere and I'll update my master15:32
vilajam: I still don't have a windows VM ! I want to use kerguelen for that15:33
vilajam: well, I want to use kerguelen as a reference point to configure my VM15:33
sidneivila: awesome. i will work on that between now and tomorrow evening. there's a security release i need to get out tomorrow morning which is urgent.15:33
vilasidnei: ok, I'm waiting for your branch and a slave (we still need to sync about the ssh tunnel though)15:34
jamvila: rdesktop kerguelen; start cygwin, cd /home/shared/bzr/1.18-win32-buildbot; make installer-all15:35
vilajam: doh15:35
sidneivila: i see you named slaves after the os. should i call thsi slave kerguelen or win2k3?15:40
vilasidnei: no hard rules so far, but preferably the later but I don't know any windows version called 2003 ???15:42
sidneiwindows 2003? it's server-only, i think that's what kerguelen is using, or is it xp?15:42
jamsidnei: it is 2003 server edition 64-bit15:43
sidneithats what i thought15:43
vilasidnei: yeah right, just saw that, so is that an NT variant ?15:50
sidneivila: well, everything after 2000 is an NT variant, including Vista and XP?15:51
bialixI think so15:51
vilaisn't vista more than a variant ?15:51
vilaand windows7 less ?15:51
vilajam: no /home/shared for me15:52
LarstiQvila: all NT15:52
LarstiQvila: Windows ME was the last non-NT derivative15:52
* LarstiQ doesn't know much about Windows 7 yet15:52
jamvila:  I'm sure cd /cygdrive/c/home/shared will work15:52
jamI'm not sure where that is mapped into the cygwin world15:53
jam(well, where *else* that is mapped in)15:53
vilajam: good enough15:53
jamI have a symlink from ~/dev => shared/...15:53
sidneifor completeness, Vista was based off the 2003 "R2" codebase, not XP15:53
vilajam: right and 1.18... is under bzr, finding my way :D15:54
bialixLarstiQ: IIRC Vista is 6.0 and Windows 7 is 6.115:54
spivjam: hey, thanks for offering to review inventory-deltas again.15:55
jamspiv: well I'd really like it to be good and land15:55
LarstiQbialix: right, that makes sense15:55
spivjam: I'd really like to be able to land it this time :)15:55
jamand then build bundles off of it15:55
spivRight.15:55
jamspiv: well if the previous time had actually been sending deltas over the wire, I probably would have been more receptive :)15:56
spivAlso if it's going to make the next release it needs to land very soon :/15:56
spivI'm *sure* I had been sending deltas at some point!  I guess not that version...15:56
vilajam: so, running make instaler-all raises permission denied15:59
* vila pester rdesktop for not supporting copy/paste15:59
jamvila: silly Windows ACLs15:59
jamvila: on *my* machine I end up with a copy & paster service that makes it work16:00
jambut that is Windows Terminal Client16:00
jamvila: let me go check what groups are what16:00
jamit is certainly likely that "jameinel" is the sole owner of that dir16:00
jam(to date it hasn't mattered, because nobody else seems to do anything on that machine... :(16:01
bialixam I remember right that August 6 is the BIG RELEASE DAY?16:01
bialixit will be 2.0 or 1.18?16:02
jambialix: rc116:02
jamand given the open bugs for 2.0 it will probably be 1.1816:02
jamdepends how this week goes16:02
bialixtoday is August 5, so...16:02
bialixok, I'll release qbzr 0.13 in next few days for bundling into installer16:03
* vila pester against non-resizable dialogs with scrollbars16:04
bialixvila ?16:05
vilabialix: not in qbzr !16:05
vila:D16:05
bialixah, ok!16:05
bialixso I can off my qbzr hat16:05
* bialix waves16:05
vilajam: build-win32 seems to lack write access for Users16:06
jamvila: probably16:06
jamI'm currently changing the owner of the whole "shared" folder16:07
jambut it is taking a while16:07
jamlots of files16:07
vilajam: can I remove it ? Or does it contain precious downloaded items ?16:07
jamvila: not precious in the sense that they won't be redownloaded16:07
jambut precious in the sense that it takes... 30min-1hr to download everything16:07
vilaok, I'll wait for the ACL change then16:08
sidneivila: is the format of that branch 2a? i got a gnarly error16:10
awilkinsvila: rdesktop supports clipboard16:11
vilasidnei: should be, what error do you get16:11
sidneivila: http://paste.lisp.org/display/8482816:11
sidneivila: i created a 1.9 shared repo, that's why16:11
vilasidnei: yes, you need to use the same format than the project if you want to stack16:13
sidneivila: maybe the error message should say that *wink*16:14
vilasidnei: that *is* what it said *wink* :-D16:15
sidneithat's sad. no human would figure that out.16:15
jamvila: owner fixed16:15
vilasidnei: I know, that was a (bad) joke :-/16:15
vilajam: same problem, Users are still not able to write as they are for 1.18-win32-buildbot say16:17
fullermdWow, I thought I liked bzr a half hour ago.16:17
sidneigot another nasty, not sure i need to do something about it16:17
fullermdBut after fiddling with CVS again...16:17
sidneisidnei@topia:~/canonical/bzr-buildbot-net/kerguelen-windows-installer$ bzr push lp:~sidnei/bzr-buildbot-net/kerguelen-windows-installer16:17
sidneiThis transport does not update the working tree of: bzr+ssh://bazaar.launchpad.net/~sidnei/bzr-buildbot-net/kerguelen-windows-installer/. See 'bzr help working-trees' for more information.16:17
sidneiCreated new branch.16:17
jamsidnei: it is just a warning, and the push succeeded16:17
jamone of the side effects of when the target seems to already exist16:17
LarstiQwhy o why does it mention the working tree if it is creating a new branch?16:18
jamLarstiQ: the dir already existed16:18
jamit is a current bug, I'm not sure how it comes about16:18
vilaLarstiQ: because the branch can have a working tree and the WT will be updated if possible16:18
LarstiQvila: note 'Created new branch'16:18
fullermdI think thta's a LPism, actually.16:18
LarstiQjam: right16:18
vilaLarstiQ: yeah, right, I didn't say the whole was coherent :)16:19
jamvila: ok, replacing permissions as well as owner to be 'recursively owner has full control'16:20
jamexpect it to take another little while16:20
LarstiQjam: would I have access to that host as well?16:21
sidneivila: https://code.edge.launchpad.net/~sidnei/bzr-buildbot-net/kerguelen-windows-installer/+merge/969916:21
jamLarstiQ: we can get you access if you want/need. I don't think you have an account there yet16:22
LarstiQjam: I'll keep it in mind16:23
vilasidnei: Did I read it right that you desactivated all of my slaves ?16:25
jelmerLarstiQ: hi16:25
sidneivila: not intentionally no, but let me double check16:25
jelmerLarstiQ: it looks like the repo on bzr.debian.org is broken, I'll push it agian from scratch16:25
jamvila: keep in mind that as you build a windows VM, it would be nice to have a "stock" windows install with nothing extra installed16:25
jamso that we can start it up, run the bzr installer, make sure it works, and then reset to scratch16:26
sidneivila: maybe you missed this part "builderNames=[b["name"] for b in c["builders"]]"16:26
vilajam: that will be the test VM yes, separate from the dev VM16:26
LarstiQjelmer: did you upgrade it to 2a?16:26
vilasidnei: could be16:26
awilkinsWhat VM platform are you using?16:27
jelmerLarstiQ: I attempted to16:27
jelmerLarstiQ: can you try again?16:27
LarstiQjelmer: I would like to get that bug stamped out16:27
jelmerLarstiQ: which bug?16:28
LarstiQjelmer: the upgrade getting you branches that do that, I've seen it before16:28
jelmerLarstiQ: it's basically being caused by the fact htat the upgrade was partial16:28
jelmerand if the upgrade is partial not all of the revisions in the repository would be converted16:28
jelmerLarstiQ: so attempting to access the tip revision of a branch would cause a NoSuchRevision error16:28
jelmerwhich bzrlib.builtins.cmd_branch catches16:29
LarstiQjelmer: aha16:29
jelmerit would actually be nice if upgrade could do a conversion in a separate bzrdir and then move the existing .bzr out of the way later rather than as the first step16:31
vilasidnei: fine, master restarted16:31
* jelmer files a bug16:31
sidneivila: so next steps is to get the ssh tunnel going, i need to setup autossh on kerguelen16:31
LarstiQjelmer: 1.17 backport almost done building, then one more selftest run and I'll upload the result to richtlijn.be and prod you for a proper upload16:32
jmlhow can I write a tool that uses bzrlib for command-line UI infrastructure but doesn't actually force people to say 'bzr foo'? (Instead: 'my-command foo')16:34
spivjam: I have some hackery towards auto repack of streamed data.  Not working yet, but looks promising.16:35
awilkinsjml: Write python scripts that call bzrlib for features?16:35
awilkinsjml: I just have a bunch of shell scripts that run bzr :-)16:35
LarstiQjml: write them as bzr plugins and symlink my-command to bzr *ducks*16:35
spivjam: but it's rather late here so I'm going to sleep now :)16:35
LarstiQjml: proper thing I guess would be to extract the bzr command classes further16:36
jmlLarstiQ, that's not quite good enough for what I want16:36
spivjml: the answer depends on precisely what you mean by "command-line UI infrastructure", perhaps.16:36
spivjml: e.g. do you want our debug flag handling?16:36
spivAnd our other magic global options?16:37
jmlspiv, not specifically, but I wouldn't mind it, as long as I could make sure it was specific to my app16:37
spivjml: I suspect some minor patches to bzr may be required.16:37
spivjml: anyway, g'night.  I hope Dublin is treating you well!16:37
jmlspiv, looking at 'bzr help global-options', I think all of those would be desirable16:38
jmlspiv, g'night. Dublin is great16:38
jmlit's not always raining.16:38
jamjml: well, you could consider hooking into the "run_bzr" layer16:39
jamdef myappsmain(args):16:39
jam from bzrlib.commands import run_bzr16:39
jamrun_bzr(args)16:39
jamyou'd probably need to patch 'get_cmd_object' as well, though.16:39
jamto not actually load the bzr commands16:39
jamjml: though maybe if you just avoid a call to "install_bzr_command_hooks" that will be taken care of for you16:41
jmljam, may be. I should experiment with it.16:42
jamand as "run_bzr_catch_errors" is the code that actually installs the hooks16:42
jamyou *could* just call 'run_bzr' directly16:42
=== psynaptic_ is now known as psynaptic
jmland maybe crib some stuff from commands.main()16:46
jelmerhi jam16:49
jelmerhi jml16:49
jmljelmer, h16:49
jmli16:49
jamhey jelmer16:50
jamjml: no cribbing16:50
jamyou must blindly get it right on your own16:51
jmlheh.16:51
jelmerhmm, confusing nicks16:51
=== jelmer is now known as jrv
jmlnooo16:51
=== james_w is now known as jdw
jrvD?16:52
jdwDavid16:52
jmljam: I've already found things that would have to change if they were to be re-used16:53
jmlreport_user_exception has a 'bzr: ' prefix, for example16:53
jmlanyway, that's enough to get started on.16:55
jamjml: except report_user_exception isn't called inside run_bzr IIRC16:56
jmlno.16:56
jamonly run_bzr_catch_user_exception16:56
jmljam: exactly.16:56
jmlbut I would need something like exception_to_return_code for my own app, I think.16:56
jamsure16:56
=== jdw is now known as james_w
jamvila: permissions should be fixed now16:58
vilajam: sidnei took my place on kerguelen, slave setup in progress16:59
jamvila: thought you might be intereseted17:03
jamthere is a discussion in the merge proposals about optimizing topo_sort17:03
jamimplementing it on top of KnownGraph gives me KG.topo_sort in 10ms down from about 188ms17:03
jamthough there is 30-40ms of KG setup overhead17:03
=== abentley1 is now known as abentley
vilajam: I marked the discussion as should-re-read-asap but didn't see KnownGraph mentioned...17:05
vilajam: it's topo_sort not merge_sort right ?17:06
jamtopo_sort17:09
jamyes17:09
jamvila: but it is a promising look at what merge_sort could become :)17:10
jamthough honestly the slow point is still loading the whole graph...17:10
vilajam: my long term plan for that is to have a dedicated index with the parents sorted by gdfo17:10
=== deryck is now known as deryck[lunch]
vilasidnei: congrats !!!17:16
sidnei\o/17:17
=== kiko is now known as kiko-fud
=== beuno is now known as beuno-lunch
sidneijam: bzr: ERROR: no such option: --no-tree17:23
sidneijam: i guess kerguelen is running an old bzr?17:23
jamsidnei: my guess is you are using an old bzr17:23
jamthough it worked for me17:23
jambut perhaps because I forced bzr.bat?17:23
sidneicould be17:23
sidneijam: it's got 1.11 installed17:24
jamsidnei: that is fairly signifcantly old17:24
sidneijam: should i try to upgrade it?17:24
al-maisanHello there! How does one read bytes from a file given a bzrlib.branch.Branch or similar?17:25
jamsidnei: if you want17:25
jamI generally prefer to run from bzr.dev myself17:25
jambut you should be able to use the installer we built :)17:25
sidneijam: 1.17?17:26
jamyeah17:26
sidneiwonder if there's a local copy on kerguelen to avoid a download :)17:26
jamsidnei: there should be plenty17:27
sidneijam: under shared?17:27
jamC:/home/shared/bzr/releases/bzr.1.17 should be the easiest17:28
* sidnei finds it17:29
=== Loginx is now known as Linkadmin
=== abentley1 is now known as abentley
kfogelLarstiQ: http://backports.org/debian/pool/main/b/bzr/ still on 1.16 -- expected?18:20
=== beuno-lunch is now known as beuno
=== deryck[lunch] is now known as deryck
OllieRHey, do client and server always need to run the same version of bzr?18:32
beunoOllieR, no, in general, they work well together18:33
beunothey work better if they're the same version, fo course18:33
beunoand if one of them is too old, then you may not be able to18:33
beunobut in general, they don't need to be18:33
LarstiQkfogel: yes, testsuite run just finished18:33
LarstiQhmm, now my uploader disappeared :)18:33
LarstiQah no18:34
LarstiQjrv: http://richtlijn.be/~larstiq/bzr/1.17/18:34
OllieRI have noticed commits seems to be taking far too long recently. For example I change one text file, do a commit over sftp to a central repo, and 8mb is transfered, which seems crazy.18:34
OllieRWondering whether this is because I am using such an old version of bzr - Bazaar (bzr) 1.3.118:34
kfogelLarstiQ: *nod*  thanks18:35
LarstiQkfogel: it's a matter of uploading now18:36
LarstiQkfogel: (jelmer changed his nick to jrv (temporarily)?)18:36
* LarstiQ continues cooking18:36
kfogelLarstiQ: great!18:37
OllieRSurely a one character change to a text file shouldn't incur such huge data transfer. It makes no sense....18:42
=== jrv is now known as jelmer
=== kiko-fud is now known as kiko
SamBjelmer: I'm having auth issues with bzr-svn again :-(19:55
jelmerSamB: please be more specific20:00
SamBjelmer: are there flags I can use for that?20:01
jelmerSamB: you're being very vague - what doesn't work exactly?20:02
SamBjelmer: well, let me paste a transcript ...20:02
SamBhttp://paste.ubuntu.com/248182/20:03
SamBlog is at http://paste.ubuntu.com/248185/20:06
kfogelI tried to install python-launchpadlib, but I'm having some problem with bzr and bzrtools (I think, maybe because I build bzr from trunk?):20:06
kfogel I installed python-launchpadlib, but it looks like maybe I'm paying for my habit of installing bzr from trunk?  see https://pastebin.canonical.com/20828/20:06
=== abentley1 is now known as abentley
SamBin short, what doesn't work is "bzr push https://dosemu.svn.sourceforge.net/svnroot/dosemu/trunk --no-strict"20:06
kfogelsorry that was a paste from another channel, so it duplicated some information.  the pastebin is the main thing20:06
jelmerSamB: does push to svn+https:// work?20:07
SamBjelmer: no20:07
jelmerSamB: same problem?20:07
jelmerSamB: when did this break? Does the last known working version still work?20:07
kfogeljelmer: (you saw LarstiQ's pings to you above?)20:07
SamBjelmer: except it has '' instead of 'dosemu.svn.sourceforge.net' between 'HTTPS ' and ' username: '20:08
jamkfogel: yeah, it looks like you already have a /usr/lib/python2.5/bzrlib file20:08
jamand so it tries to install bzr using apt and can't20:08
jambecause files are in the awy20:08
jamone possibility is to manually delete bzrlib20:08
kfogeljam: ah, thanks20:08
jaminstall from apt20:08
jamthen install from source20:08
kfogeljam: *nod*  will do20:08
jamthough if you are runinng bzr from source20:08
jamyou don't have to install it20:08
jamjust 'make' in that directory is enough20:08
kfogeljam: I'd prefer to have it in /usr/local/bin though!20:09
jamcd /usr/local/bin20:09
jamln -s ~/bzr/bzr.dev/bzr20:09
jamkfogel: symlinks work well for that20:09
SamBjelmer: hmm, I don't know :-(20:09
kfogeljam: no /usr/lib/python2.5/bzrlib at all20:09
SamBmostly I just want bzr-svn to have better support for debugging this type of thing, I guess ...20:09
kfogeljam: hmm, could do symlink20:09
jamkfogel: /usr/lib/python2.5/site-packages/bzrlib20:10
* SamB wishes this could be included in the test suite20:10
kfogeljam: d'oh20:11
jamyou'll still want to install the regular apt supported bzr so that apt's db thinks you have bzrlib available20:11
=== abentley1 is now known as abentley
kfogeljam: doing now.  I'm going to do it your way: build from source, symlink from /usr/local/bin/, *never* install my source-built bzr, let apt own what it thinks it owns.20:12
jelmerkfogel: yeah, I'm on it20:12
kfogelalthough apt shouldn't touch anything in /usr/local20:12
kfogeljelmer: wonderful20:12
kfogeljam: everything fixed now.  Thank you for the timesaving help.20:13
TakI've always wished there was an `apt-get pretend-to-install`20:13
SamBjelmer: is there some way I can trace the authentication process ?20:13
jelmerSamB: not really - most of it is in bzr itself anyway20:15
SamBjelmer: I'd be a bit happier if it was using SVN's auth stuff ...20:15
jelmerSamB: it does use svn's auth cache as well if it's present20:16
SamBwhat is "it"?20:16
jelmerSamB: if there are credentials present in svn auth cache for the repository you're connecting to it should use those20:17
SamBagain, what is "it"?20:17
jelmerSamB: bzr-svn20:17
jelmerSamB: and bzr20:17
SamBjelmer: it can't just let svn do it ?20:18
jelmerSamB: no, because if you're using http:// the first access is using bzr20:18
jelmerSamB: so a 403 would trigger a password prompt20:18
jelmerSamB: anyway, does a "manual" commit work ok with svn on that machine?20:19
SamBhmm20:19
jelmerSamB: auth over https works fine here with current bzr-svn20:20
SamBjelmer: oh ... I guess I never stored that before ...20:21
jelmerSamB: so, password prompting should still work20:22
jelmerSamB: even if it wasn't stored before20:22
SamBhey ... the first access isn't the one that needs authentication here anyway!20:22
jelmerLarstiQ, kfogel: We should probably wait for a 1.17.1 with the performance fix20:26
LarstiQjelmer: performance fix?20:26
LarstiQjelmer: I included the knit_load_pyx fix20:26
jelmerLarstiQ: the pyrex import stuff20:26
LarstiQjelmer: ie, applied the diff from lp:bzr/1.17 to lp:~spiv/bzr/bzr-1.1720:27
jelmerLarstiQ: backports shouldn't include any changes other than backporting existing stuff20:27
LarstiQjelmer: hmja20:28
jelmerwhat are the plans for 1.17.1 ?20:28
LarstiQjelmer: I'm going to look through the list for changes and cut it on Sunday I think20:28
kfogeljelmer: the perf fix doesn't affect 2a repositories, does it?20:30
LarstiQjelmer: if you don't want to include the change, I'll prepare a 1.17-220:30
LarstiQkfogel: it doesn't20:30
kfogeljelmer, LarstiQ: then no urgency from Emacs' point of view, since it will be 2a anyway.  But if yuo want to do 1.17.1, that's great!20:31
LarstiQkfogel: 1.17.1 will also have some Windows fixes20:31
jelmerthere'll be quite some stable users who aren't using 2a yet, so I'd rather not upload something that hurts performance for them20:32
LarstiQjelmer: right. So that is why I included the ~6 lines of changes20:33
jelmerLarstiQ: sorry about that, I wasn't aware about this problem in 1.17.020:33
LarstiQjelmer: and for unstable, my rationale is that they can wait for 1.17.1 or 1.1820:33
LarstiQjelmer: if you absolutely want the change in unstable first I'll do that20:34
LarstiQjelmer: but please look at the debdiff first20:34
kfogelLarstiQ: oh, Windows fixes are good.20:34
LarstiQkfogel: yeah, there will be an 1.17.1 anyway, but it will take some more time20:35
kfogeljelmer, LarstiQ: maybe it is worth a re-roll and re-upload, then -- if it's not difficult for you guys.20:35
kfogelyour call20:35
* LarstiQ nods20:35
kfogelwe're good to go even with 1.17.0+patch, and remember, clients can get anythig they want -- this is for Savannah to *host* the trunk repository, raelly.20:35
LarstiQkfogel: would Savannah want to take the deb if it doesn't come from backports.org?20:36
LarstiQkfogel: I mean, it runs on Lenny20:36
LarstiQkfogel: but I can understand them not wanting to make an exception in their software channels20:37
kfogelLarstiQ: I think they want it from backports.org, they're pretty conservative.20:39
LarstiQkfogel: fair enough20:39
jelmerLarstiQ: I've looked at the debdiff, that's how I knew about the change :-)20:41
jelmerLarstiQ: I'm hesitating because I'm paranoid about breaking stable users systems.20:42
LarstiQjelmer: ah20:42
LarstiQjelmer: right, that is very sensible20:42
jelmerLarstiQ: (and I've never done a backports uplaod before)20:42
LarstiQjelmer: if you want we can ask nobse, who uploaded the previous version, what he thinks about the backports upload specific part?20:42
jelmerLarstiQ: Yeah, that's a good idea.20:43
* jelmer queries20:43
LarstiQjelmer: other than that, I think the question is, would you trust 1.17.1 to be stable enough, or not?20:43
jelmerLarstiQ: are you sure the other changes in 1.17.1 are going to be windows fixes?20:44
LarstiQjelmer: the infinite recursion one is pretty bad, so that will go in20:44
LarstiQjelmer: I'll have to look at the list to see what other stuff people have proposed20:44
emmajanebeuno, No response required. I just wanted to put this on your radar in case you hadn't heard of it: http://www.springloops.com/20:45
beunoemmajane, thanks20:48
emmajanepricing seems similar to unfuddle, but the basecamp integration looks interesting20:49
beuno(on the phone, as usual)20:49
emmajaneheh20:49
DaffyDuck_How does bzr use ElementTree? With regards to the bug reports about bazaar using excessive amounts of memory, I'm wondering if it in my case can be due to cElementTree not being available.20:50
jelmerLarstiQ: the infinite recursion problem is windows-specific?20:51
LarstiQjelmer: well, it is uncorrectly splitting the drive letter if your cwd is the top, iirc20:51
jelmerah20:53
LarstiQDaffyDuck_: I doubt that, but possibly.20:53
LarstiQDaffyDuck_: check bzrlib/xml_serializer.py20:55
beunoemmajane, do they have their own VCS?20:59
emmajanebeuno, nope, it's just subversion20:59
beunoah20:59
beuno"ew"20:59
beuno:)20:59
emmajane(unfuddle has git or subversion)20:59
emmajane:)20:59
beunoit looks slick though21:00
emmajanevery slick, yes.21:00
emmajaneand the base camp integration is interesting.21:00
=== abentley1 is now known as abentley
=== leonardr is now known as leonardr-afk
=== leonardr-afk is now known as leonardr
mobodoI think I have my bzr browser pretty much sorted out21:40
mobodoI'll clean and post the code in case anybody is interested21:41
mobodohttp://bazaar.enseed.com/21:41
pygi:)21:42
pyginice21:42
mobodoit's only a php file and a .htaccess, no need to configure the server21:43
pygiphp xD21:47
pygievil :D21:47
* beuno finally gets to emmajane's email and start replying21:51
=== kiko is now known as kiko-afk
emmajaneheh21:51
ronnyhmm, i should do one of those things for all intresting vcs's21:51
ronnyjelmer: any plans to add a wsgi app to dulwich that implements the http proto ?21:53
=== EdwinGrubbs is now known as Edwin-lunch
SamBjelmer: well, I added exception logging to auth.SubversionAuthenticationConfig.get_svn_simple21:54
SamBjelmer: you can pull it from bzr+ssh://bazaar.launchpad.net/~naesten/bzr-svn/hackz/21:55
SamBand it says:21:55
pygironny, or I should...since I need it for Roundup21:56
SamB  File "/usr/lib/python2.5/site-packages/bzrlib/ui/text.py", line 92, in get_non_echoed_password21:56
SamB    password = getpass.getpass('')21:56
SamBNameError: global name 'getpass' is not defined21:56
ronnypygi: as long as i can use it without roundup >:)21:57
pygironny, that is/should be the general goal21:57
pyginot sure when I'll come around to do it tho21:57
ronnypygi: well, i need to write more apps using the historo abstraction, so i can find issues21:58
pygiwrite it then21:58
pygiI won't argue :p21:58
jelmerSamB: please submit a patch to bzr :-)21:59
SamBjelmer: yeah, started looking at that ;-)22:00
beunoemmajane, aaaaand, replied (don't need to F5 all the time!)22:01
emmajane:)22:01
emmajanebeuno, thanks :)22:01
SamBjelmer: I would suggest trying to find a nicer way to do such exception logging for *all* of bzr-svn's methods that are to be called by subvertpy ...22:01
emmajanebeuno, you get a cookie for being the first22:01
jelmerSamB: generally this isn't a problem22:01
jelmerSamB: but some callbacks in the svn API don't allow you to abort the operation e.g. by returning an error code22:01
SamBer, that is, when exceptions wouldn't be passed through22:01
beuno\o/22:01
* beuno eats the cookie22:02
SamBjelmer: well, okay, I just mean any others of that sort22:02
jelmerSamB: there is only one other function like that22:02
SamBah.22:02
jelmerSamB: (transport activity)22:02
SamBit's hard to tell just from looking at the code!22:02
* emmajane jumps up and down and gets all excited that beuno responded and looks at everyone else and wonders who else wants cookies. :)22:03
jelmerdid somebody say cookies ? :-D22:03
emmajanejelmer, only if you respond to the RFC for the new home page. :)22:03
SamBoh. I should grab some cake ;-)22:03
* emmajane is not above (or is it below?) bribery. ;)22:04
jelmeremmajane: what's the URL?22:04
emmajanehttps://lists.ubuntu.com/archives/bazaar/2009q3/061047.html22:05
emmajanehttp://www.flickr.com/photos/emmajane/3791477132/ has the wireframe itself22:05
SamBjelmer: hmm. apparantly it's a bug in "bzr 1.17+4566+119" but not in the bzr.dev I have around ...22:07
SamBshouldn't there have been a new PPA build by now?22:09
SamBjelmer: oh, but it still seems like it ought to find the credentials in the SVN cache rather than making me type them in22:12
SamBespecially considering that subvertpy passed in the correct username already!22:12
SamBjelmer: ... so my question is now: do you think it would be possible to create a blackbox test for this?22:13
garyvdmmobodo: That's interesting - I would like to add a commit screen a PHP cms system. How did you get data from bzr? did you run "bzr ls"?22:17
garyvdm*screen to a ...22:18
mobodogaryvdm: yes, bzr ls, bzr cat and bzr version-info22:18
mobodoand bzr log22:18
garyvdmmobodo: That cool. Where is your code?22:18
mobodoit being cleaned up as we speak :)22:19
mobodoI can send you an email later tonight or tomorrow if you want22:19
garyvdmmobodo - Yes please - I probably will copy bits out to make a commit screen in php. garyvdm@gmail.com22:20
mobodosure22:20
jelmerSamB: yes, it'll check the svn auth cache and the bzr configuration first, and if there's no data found there it'll prompt22:23
SamBjelmer: yeah, so you keep saying22:23
SamBbut it doesn't seem to work very well for me :-(22:24
jelmerSamB: a blackbox test for this is only possible if you can somehow automate starting an apache server with the svn module loaded22:24
jelmerSamB: you could do some unit testing for the auth infrastructure though, making sure it asks the right credentials providers22:25
SamBjelmer: I was afraid of that :-(22:25
SamBI don't suppose we could mock up a dummy svn server that would only do enough to test the authentication?22:26
SamB... and then fail after that?22:26
jelmerSamB: you'll have to implement a significant part of the protocol for that22:28
jelmerSamB: I think testing just the auth infrastructure should take care of most of these problems though22:30
jelmerthere's no particular need for blackbox tests22:30
SamBjelmer: hmm.22:33
SamBwell, it certainly sounds more practical than the alternative ...22:34
=== Edwin-lunch is now known as EdwinGrubbs
SamBjelmer: hmm ... it works if I hand-edit the file in ~/.subversion/auth/svn.simple to actually work with the simple authprovider ...23:47
lifelessdeal evolution, doing 3M/s from my disk forever, is not good.23:47
SamBwhere by "works", I mean *those* values get used23:47
poolieemmajane: are you here?23:59

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