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

=== kiko is now known as kiko-afk
* fullermd didn't get said hi to :(00:17
jfroyCan aliases override commands?00:21
james_wyes00:21
fullermdFor instance, I've aliased 'rm' to 'rm --keep' since the option was added.00:22
jfroymmmm00:22
thumpercommit to commit --strict :)00:22
thumpernow...00:22
jfroyyes I've just confirmed00:22
fullermd'course, maybe it's a bug that options aren't recursive so that actually works   ;)00:22
jfroyI saw some revert backup files in a directory00:22
thumperI'm trying to find the revno on trunk that introduced a particular change00:22
jfroyand I have revert = revert --no-backup00:22
jfroywas wondering if it wasn't working00:23
jfroybut I guess they were old00:23
jfroythumper: annotate should be able to get you the revno at which a particular line was last modified00:23
jfroy(or a list of revnos?)00:23
thumperit gives a dotted revno00:24
thumperI want the mainline revno00:24
jfroyaaah00:24
fullermdYou'd have to track forward to where it was merged.00:25
jfroyso it was modified in a merge revision and you want the merge revision?00:25
jfroyyeah00:25
fullermdThough ISTM there was some discussion about a flag to annotate to do just that...00:25
jfroy*in a merged revision00:25
jfroyis there a way to list merge revisions, incidentally00:26
lifelessjames_w: hi00:34
james_whey lifeless00:38
lifelessjames_w: so where/how are you using stacked branches?00:50
james_win bzr-builder00:50
james_wusing shared-repos is a pain, so stacked branches seemed the obvious choice00:50
james_wit's just doing it as it needs the tree at minimum, and then perhaps enough history to do a merge00:51
james_wbut never full history00:51
james_wit's not necessarily the best solution though00:51
lifelessthere is significant work needed in bzr to fix this bug00:52
lifelesswe're moving to shared repos or something like it as the main way of working00:52
lifelessand downloading all the history should be faster than stacking anyway00:52
lifelessactually thats the key point00:52
lifelessstacking -> VFS operations -> slow.00:52
lifelessstream all history -> fast.00:53
lifelessstacking with a local tree requires downloading all the tree data over vfs *anyway*00:53
lifelessso ignoring shared repositories, not stacking should be faster in this use case regardless00:53
AfCbzr-buildbot-net... a botnet for Bazaar? Cool. Er, um.01:01
AfC:)01:01
pooliehello all02:30
lifelesshi02:30
pooliehow's stuff?02:40
poolieit's hot and humid here02:40
pooliemore humid than hot though02:40
lifelesswell02:41
lifelessI've been landing lots of little 2a-default fixes02:42
lifelessand spivs network delta thing is landable now02:42
poolieah that is good02:44
lifelessI spent some time with the u1 folk this morning - they are fsyncing in their dirstate equivalent... and its slow ;)02:45
poolieheh02:45
pooliei guess at least they know what platform it's running on02:45
pooliewell, kinda02:45
lifelesslynne, stephane and I are doing yum cha & a movie on sunday; the hoyts website is _terrible_02:45
spivLandable, and in PQM's queue!02:46
pooliethat's nice02:46
pooliewoo02:46
lifelessjam: don't suppose you are still around02:48
lifelessjam: WT3.update_basis wants xml inventories from the repo02:48
poolielifeless: generally i think fsync is a poor deal: may not give you much protection and slow with it02:49
lifelessyep02:49
poolieone property we can rely on is that files written a long time ago and not touched are unlikely to be affected by future writes02:49
poolieonly by media failure02:50
poolieso something like obsolete_packs feels write except02:50
poolie- it might be nice not to remove them at all02:50
lifelessright? :)02:50
poolieheh, thanks freud02:50
poolieand s/remove/move02:50
poolie- it would be good to automatically detect the latest consistent state, without relying on any fs access02:51
poolieblah my fingers are flaky today02:51
pooliei meant, without relying on any fs ordering guarantees02:51
lifelessyes02:51
lifelessthats the tricky bit02:51
poolieconceptually if you could read the whole file and compare it to a hash at the end02:51
pooliethat would get away from assuming that if a file's been renamed, all the data previously written to it made it to disk02:52
lifelessoh, complete tangent - http://eu.squid-cache.org:8081/02:52
poolieand you wouldn't need to sync02:52
lifelessthats the squid hudson instance02:52
lifelesswhat I'd like to get away from is the root node02:52
lifelessits the only really fragile bit today02:53
lifeless(not that its failed ever as far as we know)02:53
pooliemeaning the pack names?02:54
lifeless.bzr/repository/pack-names, yes02:54
pooliemm02:54
lifelessI don't mean 'dont have a root node'02:54
pooliethe other thing that's reasonable to assume is that the fs can keep its own structures coherent, specifically directories02:54
pooliebut then you get into trouble with places that can't list directories, so it may not help much02:55
poolieit's something to think about for wt metadata at least02:55
lifelesswt metadata is less of a problem I think02:55
lifelessmuch less at stake, and less likely to be over e.g. http02:55
fullermdCorrupted dirstate would be even less of an issue if we had a revert --blat-me-out-a-fresh-dirstate-already...02:56
lifelessfullermd: well, there are things that dirstate does today we will definitely fix ;)02:56
poolietrue02:56
lifelessfullermd: but over and above that there are cases repositories [and branches] are expected to handle gracefully that wt's aren't...02:57
fullermdI mean, you'd lose add's...   no big deal.  Lose rm's with the file still around...  not too bad.  Lose mv's...  that's the big hiccup.02:57
lifelessor aren't-so-much02:57
fullermdBut when your alternative is to sit around with every op blowing up on the dirstate, or creating a new checkout and manually moving files around to simulate it, as people get told to do...02:57
poolierebooting karmic, biab (i hope)02:58
pooliefullermd: i agree that revert op would be good02:58
pooliethought it's kind of a kludge02:58
fullermdOh, it totally is.  But I like software that gives me big hammers to power through unpleasant situations once I'm in 'em.02:58
lifelesshmm, do you use BSD?02:59
lifeless:>02:59
fullermdSure, but that's not powering through; BSD is dying, everybody knows that.02:59
lifelessoh03:00
lifelesswhat BSD flavour/version do you use?03:00
fullermd(and it's really BAD at it too, 'cuz it's been doing it for more'n a decade, and it's still twitching.  Just can't do ANYTHING right...)03:00
fullermdI'm on Free.03:00
lifeless(given that macosx has ~= desktop share with linux, its hardly dying)03:00
lifelesswhat version?03:00
fullermdFreeBSD 8.0-BETA2 #0: Sat Aug  1 04:27:00 CDT 2009     to be Pacific.03:00
lifelessand what arch03:01
lifelesscare to run a squid buildslave03:01
fullermd(RELENG_7 from Feb on another box, an old REL_6 elsewhere....   bunches of 'em)03:01
lifelesswe have 6.4 under test03:01
fullermdWorkstation's amd64.03:01
lifelessnothing recent03:01
fullermdOh, I can do occasional build/report type things.  Not really in a position to lay out automation, though.03:02
lifelesshttp://wiki.squid-cache.org/BuildFarm03:02
lifelessread the 'Activating a slave machine (as the machine owner)' section03:03
lifelessif that sounds ok; then woot03:03
lifelessand if you want to run it sporadically thats fine too03:03
fullermdHm.  Well, maybe I'll get a chance to look more at it.03:12
fullermdIt'd be nice to have some ballparks on resource utilization involved on that page.03:13
lifelesstheres ~ a commit a day03:14
lifelessa build can be as short as 30 minutes03:14
fullermdWhat does a run eat, though?  50 megs of disk?  2 gig?  Does it churn the CPU for 10 minutes, or kill the IO subsystem for an hour?03:14
lifelessgood questions03:15
lifelessthe build includes make distcheck03:16
lifelessand some tests03:16
fullermd3.1.0.13 build takes03:20
fullermd133.100u 40.812s 2:57.68 97.8%  6213+2442k 0+50io 997pf+0w03:20
lifelessthats not the autotest :)03:22
lifelesswhich does some more work03:22
fullermdYah, I expect so, seeing ~30+ minute times in some clicking around the buildfarm thing03:22
lifelessthe 2h one is a nuts slow machine03:22
lifeless# du -sh 3.HEAD-i386-FreeBSD-6.403:23
lifeless119M    3.HEAD-i386-FreeBSD-6.403:23
lifelesswe do a minimal build03:24
lifelessand a build with everything we can turn on turned on03:24
jamlifeless: so I think you're saying that WT3 + 2a is broken... IIRC the WT3 code can handle when the basis inventory is not present, and just fetch it from the repo.03:30
jamSo can we just have it skip caching the inventory?03:30
spivjam: btw, I'm not sure exactly what you fixed in InterDifferingSerializer recently, but I still see stacking-related test failures with a 2a target if I use IDS.  Your test changes don't notice, but assertCanStreamRevision does.03:32
spivjam: so I suspect something still isn't quite right.03:33
jamspiv: I won't say I caught everything, but I certainly made it a lot better03:33
spivOh, I don't doubt you made it better :)03:33
jamgiven that your change to IDS was causing it to store the current inventory under the name parent_id03:33
lifelessjam: we have tests that test that it caches eventually03:34
jamlifeless: if self.branch.repository.supports_chks: don't cache03:34
lifelessjam: I'm submitting an implementation of _iter_inventory_xmls03:36
jamso, given that caching the xml is probably going to end up *slower*, I don't see the benefit03:36
jamand it sort of hurts in the long run03:37
lifelessits for WT303:37
lifelessits an extremely corner case03:37
jambut it leaves a get_inventory_xml lying around03:37
jamand now functional03:37
lifelessI know, but we use it from two places03:37
lifelessbundles and wt303:37
lifelesswe use the conceptual functionality, I mean.03:38
lifelesshonestly, having repository.deserialise_inventory != _serializer.read_inventory_from_string is more of an issue for me03:38
lifelesswhen you say caching the xml is slower, do you mean 'merge etc operations on wt3 will be faster using CHKInventory' ?03:39
lifelessbecause, I'm not entirely sure I buy that, not without profiling/testing.03:40
jamlifeless: given how slow it is to build the xml... hard to say for sure03:40
jamI suppose if merge has to read the whole inventory anyway03:41
jamit would be paying that on each action03:41
lifelessjam: so, I don't have a windows machine, which is kindof needed to properly measure this, as win32 is the only place we suggest/encourage wt303:41
jamlifeless: hm... I don't use it there03:42
lifeless'diff', 'status' operations are both full tree03:42
jamWT4 works just fine03:42
lifelessjam: bialix often says he uses wt303:42
jamI think that is more win9803:42
jambut now that isn't even true anymore03:42
jamsince we switched to CreateFile03:42
jamLockFileEx doesn't exist in Win9803:43
jamwhich was how we took the os lock in the past03:43
lifelesswith that patch, we're down to FAILED (failures=19, errors=17, known_failure_count=22)03:45
lifelesson my reduce workflow03:45
lifelesswhen they are fixed, I'll be doing a full run03:45
lifelessjam: I think https://bugs.edge.launchpad.net/bzr/+bug/336383 is fixed, do you?03:47
ubottuLaunchpad bug 336383 in bzr "branching dev6 when ghosts are present fails" [High,Triaged]03:47
jamlifeless: given that --2a works with bzr.dev, I'm pretty confident it is fixed03:51
AfCHm. So, if I have a branch that has revisions not on mainline, but there is nothing on mainline since the branch was taken,04:06
AfCwhy would merging that branch back create a mess?04:07
AfC(ie, I could pull, but I've been out of that habit)04:07
lifelesswhat sort of mess?04:07
AfCI was astonished to see merge conflicts and worse highly incorrect choices on the stuff that didn't conflict.04:07
AfClifeless: ^04:07
lifelessdid it warn about criss-cross merge?04:07
AfCn04:07
AfCo04:07
AfC(at least, not recently. Few weeks ago)04:08
lifelesscheck the scrollback please; its not very obvious04:08
AfCsorry?04:08
lifelessin your console?04:08
AfCwhat's a scrollback04:08
AfCoh04:08
AfCgotcha. Checking04:08
AfC_oh_04:09
AfCso, I was bad and didn't run `bzr status` in the 'mainline' branch before running the merge.04:09
AfCAnd surprise, it was "Run bzr update"04:09
AfCI hate that04:10
lifelessI'm confuse - what commands did you run?04:10
AfCI would have thought it wouldn't let me merge or something.04:10
AfClifeless:04:10
AfC$ bzr merge ../fix-text-replacement04:10
AfClifeless: that's it04:10
AfCbut then, just now, I ran04:10
AfC$ bzr status04:10
AfCand saw04:10
AfCworking tree is out of date, run 'bzr update'04:11
lifelessah04:11
lifelessso it got a mangled merge.04:11
AfC(there were some revert --no-backups in there)04:11
AfCI assume it won't bork now that I've run update04:11
* AfC tries again04:11
lifelessshould be fine04:11
AfCAll changes applied successfully04:12
AfCSo as noted, I've backed myself into this corner before. Quite frequently, in fact.04:12
lifelessyou need a flashingblinkinbeepinlight04:12
AfCI must admit it's in the category of things I should like to think I couldn't do to myself with bzr04:12
AfClifeless: I need it to say04:13
AfCworking tree is out of date, run 'bzr update' before you run 'bzr merge', stopping now so you can fix it04:13
AfClifeless: though if you've got a spare blinkenlight, I'll borrow it04:13
AfCyeah, it's clean. Build & test passed04:14
AfCHm.04:14
lifelesshow long does a java-gnome program take to start04:14
AfCNot sure if that counts as a bug report, but it sure is a "experienced bzr user managing to screw up, fyi"04:14
lifelessyeah04:14
lifelessI'd love to make it better04:14
AfClifeless: {shrug} < 1 second?04:14
AfClifeless: but GTK & window manager & X sometimes take a long time to do first presentation of a new GtkWindow. That's not anything I can do anything about; http://java-gnome.sourceforge.net/4.0/doc/api/org/gnome/gtk/Widget.html#showAll() :)04:16
AfCIt also takes longer when the person who is supposed to be typing `make test` is typing in an IRC channel instead :)04:18
lifeless:>04:18
johnjosephbachirwhat is the bzr "equivalent" to svn's switch (for a branch, not a checkout)-- in terms of appropriateness for upgrading code to a new tagged version04:53
lifelessswitch04:54
lifelessoh, not a checkout04:54
lifelessbzr pull --overwrite04:54
johnjosephbachirah okay, i'll experiment with that. thanks04:54
* igc1 lunch04:59
spivGar, PQM failed my branch after running about 90% of the tests (test_scenarios).  Oh well, resubmitted...05:16
lifelessspiv: :(05:16
lifelessspiv: https://code.edge.launchpad.net/bzr/+activereviews - I'm trying to dominate the page :)05:18
spivHeh.05:19
lifelessfailures=12, errors=16,05:20
lifelessthe numbers, they are shrinkin05:21
fullermdI can resend my log of test failures if that'll help   ;p05:23
lifelessof wha05:25
lifelesst05:25
fullermdWell, bzr.05:26
fullermdI presumed you were bemoaning the cursed fate of numeric shrinkage.  I'm all about being helpful   :)05:26
lifelessthanks05:26
overshardHello, I have dont a few commits on a system of which I forgot to set whoami on... is there a way to change the commiter name and email on past commits?05:44
lifelessyou can use uncommit + shelve to pop them off05:45
lifelessthen commit again05:45
lifelessso05:45
lifelessuncommit05:45
lifelessshelve --all05:45
lifelessuncommit05:45
lifelessshelve --all05:45
lifelessuncommit05:45
lifelesscommit <new options>05:45
lifelessunshelve05:46
lifelesscommit <new options>05:46
lifelessunshelve05:46
lifelesscommit <new options>05:46
lifelesswould be how you do it for 3 revisions05:46
overshardwhen doing shelve --all i'm getting an error to where it can't acquire a lock on .bzr/checkout/dirstate etc etc05:49
oversharddoesn't look like anything has it open05:50
poolielifeless: could https://bugs.edge.launchpad.net/bzr/+bug/377261 be resolved by your delta fixes?05:51
ubottuLaunchpad bug 377261 in bzr ""AssertionError: name u'COMPILING' already in parent" in _generate_inventory when running "bzr update"" [High,Confirmed]05:51
lifelessyes, I expect it wouldn't wedge itself now05:52
lifelessEODing05:58
lifelessAfC: is libjava-gnome-java on ubuntu your project?06:38
lifelessor the other one06:38
AfClifeless: uh,06:40
AfClifeless: http://java-gnome.sourceforge.net/4.0/get/ubuntu.php06:40
AfClifeless: from that PPA, yes06:40
AfC(sync from Debian is rather behind, I gather)06:40
AfCGuillaume has done a nice job of that package, and I nudged him on the few things that caught my eye with respect to how it was being built. So as far as I know that's good to go.06:42
AfClifeless: I'm going to be on my way out the door shortly, but we can always chat further in #java-gnome on gimpnet should you have project specific questions.06:44
lifelessok06:44
lifelesskarmic has 4.0.906:44
lifelessdebian has 4.0.7 only06:46
lifelessso its something else06:46
AfClifeless: I guess I should take an interest in bugging someone about that, then.06:47
AfCWhere's Peter :)06:47
lifelesshttp://packages.qa.debian.org/j/java-gnome.html06:48
AfCHey look! Zero bugs :)06:48
lifelesszaroo!06:49
pooliehi lifeless06:53
pooliedo you want me to do anything more on 2a test failures, or is it all in flight in that branch?06:53
pooliei have probably about 3 hours here and am looking for some juicy fruit in small pieces06:53
lifelesspoolie: hi06:54
lifelessI'm down to a small number of failures06:54
lifelessthere are two conceptual things to do06:54
lifeless1) drive that to zarooo06:54
lifeless2) run the full test suite again to find things missed in the first pass06:54
lifelessboth of those would be useful06:54
pooliei could probably do reviews or finish john's changes for apport06:54
lifelessI'll be picking it up again on Monday.06:54
lifelessI think getting this branch ready is essentially the most important thing we have; as its critical path for getting feedback from early testers of the impact of the change06:55
lifelesstheres also 3 or 4 more changes up for review from that branch06:55
poolieyep06:55
lifelessand after we finish the branch it needs a review06:56
pooliei just don't want to churn by investigating or fixing things you've already done06:56
lifelessI'd love it if you kept the branch rolling along06:56
poolieoh i guess you'll be finishing soon06:56
lifelessits all either a) in the branch or b) not investigated06:56
lifelesspoolie: I finished an hour ago - the perks of starting at 6:1506:56
pooliekk06:56
lifelessI've been spinning off little branches; if you keep the branch moving I'd encourage you to do that so that the final thing isn't a review headache.06:57
AfClifeless: [I commented the Ubuntu bug about java-gnome 4.0.12]07:04
poolielifeless: yeah that's why i was splitting them off07:05
lifelesspoolie: right, I just made branches instead:)07:06
poolieinstead of branches and bugs?07:06
pooliemm07:06
lifelessif we really need a bug for every change that lands, I know a CMM lvl 3 consultant. :)07:07
lifelessthough that should be cmmi these days, I guess.07:07
AfClifeless: if you pay me enough, I'll help you convince your boss not to do that :)07:09
lifeless:P07:09
pooliei'm really thrilled wine was so easy07:10
lifelesswine?07:11
pooliethe win32 implementation07:12
lifelessI'm totally lost :)07:12
AfCThat would be pronounced whine.07:12
pooliei just sent mail07:12
poolieif you install it and then install win32 python you can run bzr in a win32 environment from within your regular unix workspace07:13
lifelessoh right07:14
AfCpoolie: you should have a chat with Erik de Castro Lopo about his experiences with that & automated builds & automated testing. Quite successful for libsoundfile and secret rabbit code, I gather.07:14
lifelesscool07:14
pooliemm07:14
pooliehe might have mentioned it07:14
pooliei anticipated it would be more trouble than it has been so far07:14
poolieof course that may just mean.... *splat*07:15
pooliebut for example07:15
poolie% winepython ./bzr missing http://bazaar.launchpad.net/~mbp/bzr/doc07:15
poolieworks07:15
poolierunning ssh may be hard07:15
fullermdFunny.  I was kinda looking forward, when I built this workstation, to seeing how much better stuff through wine performed...  didn't really think it through though.07:15
acestarHello, today when trying to commit my project to LaunchPad I'm getting the following error:  bzrlib.errors.TooManyConcurrentRequests07:17
* AfC waves g'weekend07:17
poolieacestar:  that's probably a followon from something else07:18
pooliedid you get a previous weekend07:18
pooliecheerio afc07:18
lifelessfullermd: how so?07:19
fullermdOh, I carefully avoided thinking about wine's stunning capabilities on a 64 bit OS...07:20
lifelesslp is down07:20
lifelessfullermd: I play WoW on wine on my i707:20
fullermdWell, theoretically it might work if it were built as an i386 binary.07:20
acestarHmmm, when I do a bzr update, I get a notice that says bazaar.launchpad.net has refused the SSH connection.  Any ideas?07:21
fullermdBut that would take fiddling by itself, never mind that I'd also have to build 32 bit versions of half of X and a bunch of other stuff that it links to...07:21
poolieacestar: there's a problem with that system07:21
pooliepeople are working on it07:21
lifelessacestar: launchpad has just suffered a problem, and we're fixing it now07:21
poolie(i hope)07:21
acestarpoolie: lifeless: oh ok thanks for the info!  will do local commit :)07:22
pooliewe really need a system status page07:22
poolielifeless: i'm *this* close to just creating a Launchpad system status page on help07:24
lifelessgoogle appserver + N buttons, anyone can click, everyone can see07:26
lifelessand have it do a ping on request to the various servers.07:26
pooliei thought just on the wiki07:27
poolieeven being manually updated would be an advance07:27
lifelessif auth is down you can't update it07:27
poolieinteresting point07:31
poolieis that common?07:31
vilahi all07:33
pooliehi vila07:33
pygigreetings vila07:34
vilapower outage here ~4 hours ago, just finished restarting everything :-)07:34
* fullermd waves at vila.07:34
* vila waves back07:35
vilahey pigy, poolie07:35
pygivila, just you joke about my nick :p07:36
vilarats, no, low coffee => typo :)07:36
vilawow, ssh: connect to host bazaar.launchpad.net port 22: Connection refused ???07:44
spmvila: yeah. (hi btw! :-) ) cherry pick that went sour.  should be good now.07:47
fullermdvila: You're only allowed to connect via htpps   ;>07:47
vilahi spm ! Great, confirmed, works now07:47
vilafullermd: got that wrong ! Should have been hhtps :)07:48
fullermdAh!  No wonder it wasn't working for me...07:48
vilaanyway, I use a patched /etc/services just in case, so it works for me even with the typo....07:48
spmvila: you need: "apt-get install sl" as well then. for those "ls <--> sl" moments07:49
vilatsk tsk, sl is aliased to show-loom around here, totally different beast :)07:49
spmfor shame. having a train scroll across one's screen is entertaining!07:53
pooliespiv, how did you go with the delta patch?08:14
jrydbergIf I merge some specific changes, can I tell my target branch that it is up to date with source somehow?08:14
jrydbergI want to merge 1-4, 5-1008:14
jrydbergerr. 1-3, 5-1008:15
fullermdi.e., not bring in 4?08:15
pooliebut pretend you did?08:15
poolieafter doing the merges08:15
pooliedo 'bzr merge source'08:15
pooliethen 'bzr revert .'08:15
pooliethis will keep the merge marker but revert the file changes08:16
spivpoolie: landed!08:16
pooliethen commit08:16
pooliewoo way to go08:16
pooliehave a weekend on the house08:16
spivHah.08:16
jrydbergfullermd: exactly08:16
poolieis it nice and fast?08:16
fullermdWell, you could do three merges, doing as poolie said on the middle one.08:16
spivActually, it's a pretty busy weekend, weddings and things, but I'll be sure to enjoy it :)08:16
fullermdAnother option is to just merge everything, then make another commit rolling back 4 afterward.  That may be clearer.08:16
jrydbergThank you. Worked like a charm.08:17
fullermdEither is appropriate if you don't want the changes in 4; it's still in the history though, so if you want to not have it for reasons like "that version contains my PGP passphrase" or the like, it won't do what you want.08:18
lifelessspiv: after some testing, say wed/thur we should ask for a cp to launchpad production08:23
lifelessspiv: to get larger scale know-how.08:24
spivlifeless: +108:24
=== loxs_wrk is now known as loxs
vilaspiv: congrats for the wedding and enjoy :-)08:31
spivvila: well, my wedding was a while ago now :)  By I can pass on a your congratulations to my friend if you like ;)08:32
vilalol, sorry for the misunderstanding then :-)08:32
* igc1 dinner09:15
bialixI need some advice. I have central bzr server where all finsihed stuff present. I have MANY local branches that either mirrors of branches on central server or they're feature branches merged or not merged yet. Sometimes I feel the need to reduce this burden and clean all mirrors or finished feature branches from the disk. How you deal with this?09:49
wgrantbialix: I use the bzr-removable plugin.09:56
vilabialix: I just delete (rm -fr) the merged branches when I grow tired of seeing them09:56
bialixbzr-removable? I'll check it, perhaps it's what I need09:56
bialixvila: it's not easy to do for me.09:56
vilabialix: But the biggest picture is that I'd like a tool to help me track all the branches I'm working on.09:57
bialixvila: after merge of feature branch I need to test it on real hardware (I'm embedded system engineer) so sometimes I need to fix something after testing09:57
bialixthis is the problem09:57
bialixI can't run buildbot to auto test my firmware ;-)09:58
vilabzr-removable is a step in the right direction but doesn't address needs like: are my plugins up-to-date ?09:58
vilabialix: in that case it means you're not done with the branch, when I said merged, I abused the term to mean, I'm done with it09:58
bialixwell, we build the final product as collection of many smaller components. So problem for me is the amount of different branches for different components09:59
bialixit begins to out of my control09:59
vilaI use 'check' with some success on embedded software projects where only the high levels of the application couldn't be tested automatically...09:59
vilaargh, several uprocs involved or just software components ?10:00
bialixseveral devices involved10:00
bialixmain PC with Linux with several software components too10:01
bialixbecause main software works with real hardware (via COM-ports or USB) it's not easy to unittest it10:01
vilabackward/forward compatibility involved or do you deploy on all components at once ?10:01
bialixbackward compatibility -- yes, very hard10:01
bialixfor some hardware I have branch for every customer we support10:02
bialixjust because I have memory restrictions and unable to build universal firmware10:02
vilaso, your manager knows about the suport costs right ?10:02
bialixwe very small company. I'm main dev and manager as one man10:03
vilabialix: ha ! Of course you have memory restrictions ! Where will be the fun in working in embedded software otherwise !!!!10:03
bialixyeah10:03
vilawell, your *boss* knows about the costs ? Or if it's your own company, *you* know about the support costs :)10:04
bialixwgrant, vila: description of bzr-removable is very promising! thansk for the tip10:04
vilaAutomated tests are all about transferring support costs into building and maintaining a test framework :-D10:04
bialixvila: I'm not boss, but yes, I'm trying to explain why we need to push our solution to universal side10:05
bialixvila: of course, until you need to test some specific GUI or sensors that require specific environment10:05
bialixjml: why you put plugin code for bzr-removable into subfolder?10:07
bialixjml: it makes hard to install it10:08
vilawell, the last project I was involved used a specific UI on the device (buttons and LCD display), yet I was able to use pyGtk on *windows* (wink) to emulate the UI and some sensors, the rest of code was common between the PC and the device...10:08
vilaso most of the work could be done on the PC without the need to flash or debug in the field... they were quite happy about it...10:08
bialixI have similar emulator now for our terminals. But I'm using Tkinter and PIL. It works great10:09
bialixrats, bzr-removable does not work on windows10:10
bialixos.path.samefile?10:10
vila:-/10:10
pooliehi bialix10:10
bialixhi poolie10:10
pooliei hoped my mail about wine might please you10:11
poolienow i can experience os lock problems more often :)10:11
bialixpoolie: :-)10:11
bialixyes, it is indeed10:11
bialixOSLMD!10:11
poolie+110:11
pooliethe main thing i have at the moment is that i don't have paramiko installed there, so can't do networking10:12
pooliebut i could either install paramiko or the bzr installer10:12
bialixparamiko has not extra dependencies10:12
bialixonly pycrypto10:12
bialixand pycrypto has installer10:12
bialixBzrWin32Installer page or WindowsInstall provides the links10:13
bialixit's not so hard10:13
bialixof course it's not apt-get10:13
bialixmaybe easy_install will work10:13
poolieright10:13
pooliei was actually going to use it as a test run for easy_install10:14
bialixit will be interesting to hear10:14
bialixabout easy_install10:14
bialixmaybe you'll check full round10:14
vilabialix: http://docs.python.org/library/os.path.html#os.path.samefile10:15
bialixeasy_install bzr10:15
bialixvila: right, but was is closest equivalent for samefile on Windows? just compare abspaths?10:15
vilareturn path1 == path210:16
bialixok10:16
LarstiQis that what it does?10:16
LarstiQbialix: you can have links in Windows, right?10:16
bialixyes, but not easy10:17
bialixhardlinks10:17
bialixsymlinks only for directories10:17
LarstiQok10:17
bialixand because I have no links on my disks anyway I'll follow vila's advice10:19
bialixI don't understand how bzr-removable supposed to work10:30
awilkinsYou can have symlinks in Vista and up10:37
awilkins"Junction points" are available in XP and below (folders only)10:37
bialixI'm on XP and below10:37
awilkinsMost people are10:38
* bialix mutters: something need to be done about branch aliases like :push, :parent. Why people should convert them explicitly?10:43
bialixgrr10:43
bialixabout bzr-removable: my sequence of actions now to detect is it safe to delete branch: run bzr st, check for .shelf, run bzr info and see is it pushed, run bzr missing :parent or bzr missing :push10:48
pooliebialix: yes the aliases don't seem to work in every place10:49
poolieand i agree about the workflow for removing things too10:49
bialixperhaps I need write my own removable10:51
pooliemm10:56
pooliemaybe10:56
=== bialix_ is now known as bialix
pooliei'd like to consider it as part of the ui 3 thing11:01
bialixsorry, I've lost connection11:03
=== vila is now known as vila-lunch
fullermdI wish somebody would tell me where I could download an extra 8 hours in the day.  Then maybe I could write out ui 3 thoughts before...   y'know.  3.11:05
bialix3?11:09
jrydbergui 3?11:16
awilkinsUI 1 : big red off switch11:19
awilkinsUI 2 : Windows11:19
awilkinsUI 3 : Something better   ?11:19
awilkinsOh, damn, WinXP installs fast in a VM11:20
awilkinsI guess the host hardware is somewhat meaty11:20
pooliejrydberg: http://doc.bazaar-vcs.org/devnotes/bzr-2009-ui-refresh.html11:26
lifelessawilkins: also, 'hits disk' isn't well defined in a vm :)11:27
awilkinslifeless: Given the amount of RAM this box has I wouldn't be surprised if the entire partition was cached11:27
poolievila did you mention a bug with some failures on karmic?11:32
pooliei seem to have a new failure in TestLocale11:32
=== kiko-afk is now known as kiko
awilkinsI think the win32 build page is a bit out of date12:54
=== vila-lunch is now known as vila
garyvdmHi vila13:10
vilahi garyvdm13:10
garyvdmHow are you?13:10
vilagaryvdm: fine thanks, how about you ? You seem to be pretty active in qbzr these days :)13:12
igc1night all13:13
vilanight Ian13:15
=== mrevell is now known as mrevell-lunch
=== mrevell-lunch is now known as mrevell
denysvila: keys and certs from ssl_certs are not installed by setup.py - shouldn't they be?15:20
viladenys: right you are ! There is even a bug filed about it. Feel free to fix :D15:22
denysvila: i'll add the fix to my branch15:22
viladenys: it's easier if you have a single intent by merge proposal, so if you want to fix bug #392401, it's better to fix only that in a dedicated branch15:23
ubottuLaunchpad bug 392401 in bzr "Packaging Bug: test SSL certificates missing from 1.16 PPA" [Medium,Confirmed] https://launchpad.net/bugs/39240115:23
vilajam: *now* the changes you made to the build config are responsible for the failures :-) At least the bzrtools tag not existing on the public branch that is...15:35
denysvila: ok, I push a fix https://code.launchpad.net/~denys.duchier/bzr/bug-39240115:41
viladenys: great ! now, just do 'bzr lp-open' in your branch and click the 'Propose for merging' button !15:42
denysvila: it's already done I think (but this is my first day using launchpad, so I may have screwed up)15:44
viladenys: perfect15:45
=== cprov-afk is now known as cprov-lunch
viladenys: already approved by jam, I'll add a NEWS entry and merge15:51
denysvila: thank you15:52
awilkinsBah, now I have to install the platform SDK15:52
awilkinsOr something15:52
awilkinsI'm missing MSCVRT90.dll15:53
viladenys: thank *you* and congrats, your first patch is currently processed for landing in bzr.dev :D15:55
awilkinsWho's building the Windows installers and how do they get the 2.6 Python installer extensions building?15:59
* vila whispers jam is building the windows installers16:00
denyshmm... I have pushed new revisions to my bzr.ssl branch on lp, but the diff that is shown on the merge review page is still the old one.  is that normal?16:07
james_wdenys: yeah...unfortunately16:08
denyshow are people supposed to review the tip of the branch?16:09
* awilkins woots because he managed to get `make python-installer` to finish16:09
james_wby generating the diff themselves apparently16:09
denysthat's a little bit on the sucky side :-(16:09
james_wbug 33800216:10
ubottuError: Could not parse data returned by Launchpad: The read operation timed out (https://launchpad.net/bugs/338002/+text)16:10
viladenys: you should 'resubmit' aka inform launchpad that your merge-proposal is superseded by a new one16:12
denysvila: ah... ok16:13
viladenys: the rationale is that the diff represent the difference between the two branches at the time of submission, because people comments refers to that, so the diff itself shouldn't change...16:14
denysvila: when you say resubmit, you mean click on the "propose for merging" link again?16:15
viladenys: don't know if that will work, no, I meant click the 'Status' near the top of the page of your actual mp: https://code.edge.launchpad.net/~denys.duchier/bzr/bzr.ssl/+merge/1014716:16
viladenys: the little pen icon to be precise16:17
denysvila: pfff.... that's hard to discover!16:18
viladenys: EWRONGCHANNEL :-)16:18
viladenys: try https://edge.launchpad.net/launchpad/+filebug instead :)16:19
viladenys: but yes, that one is tricky, the UI is still worked on AFAIK16:19
der|hi, I'm getting the following error when trying to commit on my project:   bzr: ERROR: 4f7d6b49ca2b8f885b0bd192a5e89b62.rix is not an index of type <class 'bzrlib.index.GraphIndex'>.16:24
der|seems like my branch got corrupted :/, I can't uncommit, raises the same error16:26
viladenys: hmm, looks like some mail didn't reach you before you resubmit...16:31
viladenys: I thought you've seen my mail about wrap_socket but apparently no :-/16:32
=== EdwinGrubbs2 is now known as EdwinGrubbs
DonDiegohi everybody16:48
DonDiegoi'm working on a gnu arch --> bazaar transition16:49
DonDiegoi had great trouble finding baz-import16:49
DonDiegoit's no longer part of bzrtools, but the websites do not reflect this16:49
DonDiegomaybe you could update them16:50
DonDiegothx16:50
vilaDonDiego: it's a wiki, your experience is certainly worth reporting !16:50
DonDiegohttp://bazaar-vcs.org/ is not a wiki afaict16:52
vilaDonDiego: it is16:52
vilaDonDiego: look at the small print at the end of the page :)16:52
DonDiegosaw it..16:52
DonDiegoi'd prefer if somebody who knew what they were doing edited it instead of me16:53
vilaDonDiego: damn, there was changes here, how do I logged out ? :)16:53
DonDiego?16:54
vilaDonDiego: but nobody knows what you did and where you looked, fixing your modifications (if needed !) will be far easier that interviewing you to find what should be chaged16:55
vilas/chaged/changed/16:55
=== beuno is now known as beuno-lunch
CaMasonhi guys. I've got a project that has a sub-folder that exists as a linked tree (I believe)17:09
CaMasonI want to move this out into a seperate repo, and occasionally move the libs in manually. Can I just do `bzr split` ?17:10
CaMasonor is it actually 'join' ?17:12
kikohey17:21
kikodoes anyone know if 1.18 is due today?17:22
james_wkiko: I can't find a metronome that states when it is due17:28
james_wI can't even find the mail saying that it will be 1.18 not 2.0 now17:28
=== deryck is now known as deryck[lunch]
kikojames_w, I'm a bit surprised because I see a milestone with a bunch of fixed bugs so..17:39
kikohttps://edge.launchpad.net/bzr/+milestone/1.1817:39
kikothe only bug for 1.18 and not rc1 would be 39860817:39
kikoI wanted to find somebody to verify https://bugs.edge.launchpad.net/bzr/+bug/39367717:40
ubottuLaunchpad bug 393677 in bzr "pushing a 1.9 branch stacked on a 2a branch causes problems" [High,Confirmed]17:40
CaMasonhow can I convert a rich-root-pack into a pack-0.92 ?17:51
CaMasonI've got a project that doesn't need rich root ( no idea why it was made like that). I just want to convert it over to default (pack-0.92) so that I can I can move it into this shared repo17:58
vilaCaMason: the new format (2a) that will become the default with bzr-2.0 is rich-root, so getting away from rich root now is not a good idea18:06
CaMasonso I'd be better off upgrading to rich-root?18:06
CaMasonbasically I want to have /home/bzr/projects/myproject/ and be able to have several folders (trunk, branches, releases) that I can checkout individually18:08
CaMasonnot really sure which format I need to use :'(18:10
CaMasonI'm using bzr 1.13.1 (ubuntu)18:13
CaMasonI'd prefer to have them all as pack-0.92 at the moment, as that's default18:16
vilaCaMason: Upgrading to rich-root is a safe bet, you can either use --1.9-rich-root or go straight to --2a18:18
vilaCaMason: If you prefer, just wait for 2.0 to be released18:18
CaMasonok, well I'll wait - but any idea how I can get my project layout sorted for now with pack?18:19
CaMasonI'm just concerned that I'm going to have problems again in the future if I choose --1.9-rich-root18:20
vilayou can't get from rich-root to non rich-root18:20
vilathe single problem is that rich-root and non rich-root are not compatible and that you can't go back,18:21
CaMasonok. so what is your recommendation for now?18:21
CaMasonbzr upgrade --1.9-rich-root?18:21
vilaCaMason: wait 2.0, --1.9-rich-root, --2a are the options in roughly safest order18:22
vilahow big are your projects ? # revisions, # files ?18:23
CaMasononly small really18:23
CaMason<100 files each18:23
=== kiko is now known as kiko-fud
vilano problem then, upgrade to 2a18:24
CaMasonwhen will 2.0 be out?18:24
vilasoon :)18:24
vila1.18 is about to be released and also be the last monthly release befor 2.018:25
lvhdoes anyone know any distributed issue trackers that dont suck and work nicely with bzr?18:26
lvhoptimal would be the ability to sync with launchpad but I'm guessing this is mostly impossible18:26
lvhor at least doesnt exist yet:-)18:26
LarstiQlvh: which have you tried?18:27
* kfogel is away: looooooooonch18:27
lvhLarstiQ: ditz.18:27
LarstiQlvh: the only (real) distributed one I know is Bugs Everywhere18:27
lvhand BE, which is basically ditz but in ruby.18:27
lvherr18:27
lvhwell, ditz but *not* in ruby18:27
lvh:-)18:27
lvhthey have a number of problems, mostly that it's too hard to submit bugs18:28
lvhpeople should not have to do a full checkout18:28
lvhI like my bug reporters, I want to make their lives harder18:30
lvhthere's a "don't" in that sentence somewhere18:30
denysvila: I resubmitted with "wrap_socket" mods and cleaned up the tests a bit (but not quite separated out because they are _litterally_ the same tests).  see if you like it better now18:30
viladenys: I know they are even *exactly* the same tests, that's why I said you want to parameterize them, look at various load_tests methods, you want a class where you set your 'use_ssl' attribute in load_tests() so that the test is written once but instantiated (and executed) twice18:32
davidstraussCan I configure EOL filters just on the server side, or does it have to be on the client, too?18:32
LarstiQlvh: you could something on the web to feed things into one copy18:33
lvhLarstiQ: one copy?18:34
lvhweb interface with commit access to an incoming-bugs branch?18:34
LarstiQlvh: yeah18:34
LarstiQlvh: ala ikiwiki or hatta18:35
denysvila: I used common helper methods with a use_ssl parameter (no attribute anymore)18:35
lvhi dont know any of those18:35
LarstiQlvh: dvcs backed wiki(compiler)s18:35
lvhoh18:35
lvhLarstiQ: so "accepting" bugs could be cherrypicking commits into working branches18:36
viladenys: right, but you shouldn't have :-/ You identified some tests that needed to run against the two kind of servers, more will come18:36
LarstiQlvh: yeah18:36
lvhdoes anyone who works on/with bzr a lot think that that would be disgusting?18:37
LarstiQlvh: I think that would be fine18:37
lvhokay, how about displaying bugs18:38
lvhsyncing with launchpad would be mostly impossible without modifying launchpad18:38
=== deryck[lunch] is now known as deryck
LarstiQlvh: use launchpadlib?18:39
lvhalso im not entire sure that lp would be happy with the extra load that I might generate from generating bug state from repo state :-)18:40
LarstiQgah, out of power, again18:41
viladenys: test_osutils.py contains a rather simple load_tests() you can look at in parallel with the TestDirReader class18:42
vilain fact the previous version of your tests was closer to the desired result that your actual one18:42
vilas/that you/than your/18:42
* vila EODing18:45
denysvila: thanks, I am looking, but all this really clever loading magic takes a while to puzzle out18:50
lvhLarstiQ: the biggest problem I can see is that bug state inspection should be easy, and people dont understand bugs-over-time.18:53
CaMasonI've upgraded my files into --1.9-rich-root, and one of the folders is throwing up an error when using bzr-trac: AttributeError: 'KnitPackRepository' object has no attribute 'get_revision_graph'18:53
davidstraussIs there a way to enforce EOL rules on the server?18:54
viladenys: you want something like (untested) http://paste.ubuntu.com/253293/18:54
viladenys: and thenos mething like http://paste.ubuntu.com/253297/18:56
viladenys: and then something like http://paste.ubuntu.com/253297/18:56
vilainteresting typo, I should really EOD now :)18:56
viladenys: ^ does that help ?18:57
viladenys: anyway, if you can't get them right, wait for spiv review, I think he'll ask for some more tweaks/tests18:58
=== beuno-lunch is now known as beuno
* vila really gone now18:59
denysvila: it's going to, I am sure ;-) but I am going to have to study this carefully (I hate not understanding)18:59
viladenys: good, feel free to ask questions when do merge proposals then, we welcome that :)19:00
CaMasonany thoughts on why I get this in trac? "AttributeError: 'KnitPackRepository' object has no attribute 'get_revision_graph'"19:17
CaMasononly happens on one particular repo, that was upgraded using `bzr upgrade --1.9-rich-root`19:17
emmajanebeuno, any predictions for Monday yet? :)19:19
beunoemmajane, I've done my part, I now need to get someone assigned19:21
beunowe won't have the design by Monday, that I know19:21
* emmajane nods19:21
beunobut, "next week" sounds plausible19:21
beunoit's been my #1 urgency for the past 3 days19:21
emmajaneboo for "next week" and "plausible" but yay for "urgency" :)19:21
beunoheh19:22
beunoemmajane, I'm trying to get the HTML as well19:22
beunoso we iterate over a design19:22
beunoand then get the HTML/CSS for the approved design19:23
=== EdwinGrubbs2 is now known as EdwinGrubbs3
emmajanebeuno, oh, cool!19:24
beunoemmajane, so maybe that will make up for lost time19:25
emmajane:)19:25
emmajanebeuno, I would be delighted if they used 960.gs or some other CSS framework. it'll make inner pages and applying some of the design to other parts of the site (e.g. docs and wiki) a lot easier.19:27
emmajanebeuno, I'm most familiar with 960, but I've worked a little with some of the others.19:27
CaMasonargh bzr-trac is barfed on my install :/19:27
CaMasononly one of the branches within the shared-repo will show19:28
CaMasonall others show "AttributeError: 'KnitPackRepository' object has no attribute 'get_revision_graph'"19:28
beunoemmajane, I can't promise that, but I can try  :)19:29
emmajanebeuno, thanks :)19:30
jwhitleyhi all.  Is there currently (1.17) a way to nest two preexisting trees?  split doesn't appear to handle this, only breaking off a versioned subdir into a tree.19:33
micahghi, is there an easy way to import all of the history from an svn branch to a bzr brach?19:39
johnjosephbachirwhenever i try to do anything over bzr+ssh (init-repo, push), i get a 'wrong client version' message19:46
johnjosephbachirdo my local and server clients have to match up? i thought that for modern versions of bzr i only had to worry about the formats19:47
CaMasonsay I have /project, and I also have /project/lib/myplugin, what's the best way to bring the code from an external branch into /project/lib/myplugin ?19:50
CaMasonack brb dinner19:50
micahgis there a way with bzr to see the history for just one file?19:55
jderosemicahg: bzr log file-name-1, file-name-2, ...20:05
micahgjderose: is it possible with a gui so I can see the revisions as well?20:06
jderosemicahg: i haven't really played with any of the gui's, so i'm not sure.20:07
jderosemicahg: seems like you can do it in loggerhead: go to Files, find the file, and then click "view changes to this file"20:12
jderosemicahg: for example: http://bazaar.launchpad.net/~bzr/bzr/trunk/changes?filter_file_id=setup.py-20050314065409-02f8a0a6e3f9bc7020:12
alexharringtonHeya. Puzzled about line endings conversion. I know I need to upgrade to --1.14 which I thought I'd done, but it still doesn't seem to work20:13
alexharringtonAnyone advise on how I should upgrade an entire launchpad project to use the newer format so we don't keep getting problems with mangled line ends?20:14
micahgjderose: yeah, but my repo isn't on LP :)20:18
micahgthat would've been my first choice20:18
jderosemicahg: then that's all i got.  ;)20:18
=== kiko-fud is now known as kiko-afk
=== Pilky_ is now known as Pilky
ronnyyo21:35
ronnyis there a simple way to do what bzr ignore does from the api?21:35
struberghi folks, good evening!21:38
strubergI have a quick question about bazaar protocols21:39
beunoronny, have you looked at what the command does?21:39
strubergI currently try to fix the maven-scm-provider-bazaar because we don't use authentication for bzr+ssh for example21:39
strubergcurrently the code support the following protocols: FILE, FTP, SFTP, AFTP, HTTP, HTTPS21:40
struberganyone who can tell me what protocols are missing and where I may read more about it?21:40
ronnybeuno: meh, every time i do that i end up wasting 1-2 hours21:41
beunoronny, there's always a learning curve...  :)21:42
beunothat said21:42
beunoronny, http://bazaar-vcs.org/Integrating_with_Bazaar21:42
beunodon't know if there's an example there21:42
beunoif not, and you do spend those couple of hours21:42
beunoplease add to that  :)21:42
ronnybeuno: im writing a lib to abstract the different vcs's21:43
lifelessimport ignores21:43
strubergronny: in which language?21:43
lifelessigores.tree_ignores_add_patterns(tree, ptterns)21:43
ronnystruberg: python of course21:45
ronnylifeless: nice, thanks21:46
mobodoif I have a web interface that I'd like listed on the bazaar plugin page, should I send an email or can I just tell somebody here?21:46
lifelessronny: (looking the command :P)21:47
beunomobodo, just add it, it's a wiki21:47
mobodoahhh, just got to login I guess :)21:47
=== cprov is now known as cprov-afk
ronnylifeless: at some point you guys really should work on killing code-size, im still in fear by the sheer amount of code in bzr21:51
strubergI assume the bzr protocol supports authentication in the form bzr://username:password@server... ?21:51
=== denys_ is now known as denys
elmohey, possibly a stupid question, but what's the bzr magic for 'show me the changes in the WT relative to rev $foo'?23:02
lifelessset -r $foo23:04
lifelessbah23:04
lifelessbzr st -r $foo23:05
lifelessor diff if you want a diff23:05
lifelesselmo: ^23:05
elmolifeless: that doesn't seem to DTRT23:05
lifelessperhaps I don't know what you mean then.23:06
elmoif I do that, it tells me about an added file blah, but blah wasn't in $foo, and bzr cat -r $foo blah, confirms23:06
elmolifeless: I have a tree, with some changes.  and i want to know how my current tree compares to revision 7023:06
lifelessok23:06
elmoI could just bzr branch -r 70 and diff, but that seems .. inelegant23:06
lifelessand the file blah is in your tree and not in 7023:06
elmoblah is neither in my tree, nor 7023:07
lifelessorly23:07
elmoit got added and removed, somewhere between 70 and now23:07
lifelesslet me test23:07
elmolifeless: le sigh23:08
elmolifeless: i'm so sorry, apparently I'm on epic levels of crack23:08
lifeless?23:08
lifelesselmo: what was going on?23:09
elmolifeless: the file is in my current tree, I'm just a muppet23:09
lifelessheh23:09
* lifeless cancels his test23:09
elmoI was utterly convinced I'd rm -fr'ed /etc/apache2 on this box, but apparently not23:09
lifelesstricky things those fr's23:10
fullermdA fr once bit my sister...23:14
=== EdwinGrubbs is now known as Edwin-afk

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