2008-05-28T00:23:14  <johill> ThomasWaldmann: those are called siblings ;)
2008-05-28T00:43:05  <johill> hm, I'm lagging off the channel?
2008-05-28T01:09:11  <PawelPacana> some go to sleep, some wake up ;)
2008-05-28T07:12:52  <dreimark> moin PawelPacana
2008-05-28T07:21:59  <dreimark> bbl
2008-05-28T08:14:57  <ThomasWaldmann> dennda: looked at abstract.py - why is some stuff using _foo?
2008-05-28T09:33:37  <johill> ThomasWaldmann: you mean underscores?
2008-05-28T09:33:56  <ThomasWaldmann> yes
2008-05-28T09:34:02  <johill> these are internal, there's stuff missing
2008-05-28T09:34:07  <johill> you're supposed to call
2008-05-28T09:34:12  <johill> item = backend.get_item(...)
2008-05-28T09:34:18  <johill> item.create_revision()
2008-05-28T09:34:27  <johill> and not backend.create_revision(item)
2008-05-28T09:34:41  <ThomasWaldmann> ah, ok, then that should be in the docstring :)
2008-05-28T09:34:43  <johill> but item will internally call self._backend._create_revision() for convenience of the backend implementor
2008-05-28T09:35:26  <johill> so that if you implement a backend you don't *have* to create a new item class (although of course you can if you think you want)
2008-05-28T09:35:29  <johill> yeah, it should
2008-05-28T10:30:34  <zenhase> moin
2008-05-28T10:32:27  <PawelPacana> moin
2008-05-28T10:46:58  <TheSheep> hey PawelPacana
2008-05-28T10:47:32  <TheSheep> PawelPacana: I didn't do anything after all, any luck with branches?
2008-05-28T10:53:04  <PawelPacana> internal  branches enforce updating working copy
2008-05-28T10:53:31  <PawelPacana> so it does not fit in our scenario
2008-05-28T10:57:11  <TheSheep> shame
2008-05-28T11:01:40  <PawelPacana> we don`t want to lock  all repo, switch to branch , update, commit and then switch main branch and update to tip
2008-05-28T11:07:17  <PawelPacana> today i`ll be messing with twisted again - tomorrow`s deadline approaching ;)
2008-05-28T11:11:27  <xorAxAx> moon: hi, how does it work?
2008-05-28T11:11:44  <xorAxAx> ThomasWaldmann: http://hg.thinkmo.de/ -- 500
2008-05-28T11:12:01  <xorAxAx> (i know that the hostname is wrong :))
2008-05-28T12:24:46  <moon> xorAxAx: hi :-)
2008-05-28T12:26:54  <moon> I made progress list in my wiki. http://tasy.jaram.org/wiki/wiki.php/GoogleSummerOfCode2008/Week1
2008-05-28T12:27:32  <ThomasWaldmann> moon: please put that into the moin wiki
2008-05-28T12:27:50  <moon> I have plan to do that. :-)
2008-05-28T12:28:05  <ThomasWaldmann> you can either use your homepage there for it (or a subpage of it) or, if it is general stuff, a main page about the topic
2008-05-28T12:28:23  <xorAxAx> omg, its a moniwiki ;-)
2008-05-28T12:28:43  <moon> my hosting support only php :-(
2008-05-28T12:28:48  <xorAxAx> yes, visibility is important in opensource projects
2008-05-28T12:28:54  <xorAxAx> moon: yeah, a pity :-(
2008-05-28T12:28:55  <moon> anyway I will move it ASAP
2008-05-28T12:29:13  <xorAxAx> i found out yesterday that guido van rossum was using python already in 1993 to do web programming
2008-05-28T12:29:25  <ThomasWaldmann> the iconbar icons look familiar :P
2008-05-28T12:29:41  <moon> moniwiki is clone version of moinmoin :-)
2008-05-28T12:29:50  <ThomasWaldmann> i know :)
2008-05-28T12:30:45  <moon> is anybody know about nosmok wiki? http://no-smok.net
2008-05-28T12:31:18  <moon> although I written with korean. It is most largest wiki in korea.
2008-05-28T12:32:42  <moon> few years ago many people discuss various topin on it.
2008-05-28T12:32:58  <moon> but these days not so activity. :-(
2008-05-28T12:35:49  <moon> it was working with moinmoin but move to moniwiki these day. cause maybe server hosting problem..
2008-05-28T12:42:23  <ThomasWaldmann> their moin was very old
2008-05-28T13:57:37  <zenhase> got a problem with trying to make a request-object that logs access to attributes and methods o_O
2008-05-28T13:57:53  <johill> what sort?
2008-05-28T13:58:42  <zenhase> http://paste.pocoo.org/show/55148/ is the request-object, http://paste.pocoo.org/show/55149/ is the wsgi-app (mostly like server_wsgi.py) and http://paste.pocoo.org/show/55146/ is the traceback
2008-05-28T13:59:44  <johill> missing setattr?
2008-05-28T14:00:04  <johill> but I'd probably make a wrapper rather than inherit from requestbase
2008-05-28T14:00:17  <johill> (unless there's code that checks isinstance()?)
2008-05-28T14:01:54  <zenhase> hmm, problem with the wrapper is, that the code passing request into moin, is in request itself
2008-05-28T14:02:08  <johill> oh heh ok
2008-05-28T14:02:10  <zenhase> request.__init__ and request.run
2008-05-28T14:02:19  <johill> well you do need setattr though
2008-05-28T14:02:19  <zenhase> so it's .. well. futile :)
2008-05-28T14:02:22  <johill> I think
2008-05-28T14:02:32  <zenhase> i will get a cup of tea, brb
2008-05-28T14:04:50  <johill> and a bunch of  things are set statically
2008-05-28T14:05:03  <johill>     http_accept_language = 'en'
2008-05-28T14:05:03  <johill>     server_name = 'localhost'
2008-05-28T14:05:03  <johill>     server_port = '80'
2008-05-28T14:05:04  <zenhase> hmm yes
2008-05-28T14:05:04  <johill> etc
2008-05-28T14:08:47  <zenhase> i will try something different then :)
2008-05-28T14:09:25  <zenhase> i will try porting request.run to the wsgi-application level (will have to work later in the project anyway)
2008-05-28T14:10:42  <zenhase> hmm wait ... this will not necessarily change my problem
2008-05-28T14:10:45  <zenhase> o_O
2008-05-28T14:11:05  <zenhase> i would still have problems with __getattr(ibute)__
2008-05-28T14:11:07  <zenhase> :o
2008-05-28T14:11:40  <zenhase> ah erm no
2008-05-28T14:11:49  <zenhase> i am a bit confused right now, excuse me ;)
2008-05-28T14:15:44  <mitsuhiko> zenhase: well. that can't work
2008-05-28T14:16:18  <mitsuhiko> you are overriding __setattr__ in a way that when __init__ assigns the environment you are trying to resolve the environ on the parent class
2008-05-28T14:16:21  <mitsuhiko> where it isn't yet
2008-05-28T14:16:32  <dennda> ThomasWaldmann: Oh I thought I wrote a note on that somewhere
2008-05-28T14:16:34  <dennda> I'll do
2008-05-28T14:17:06  <mitsuhiko> or breaking __getattribute__ :)
2008-05-28T14:17:07  <mitsuhiko> paste your code
2008-05-28T14:21:03  <johill> mine works
2008-05-28T14:21:04  <zenhase> hmm?
2008-05-28T14:21:24  <johill> http://paste.pocoo.org/show/55160/
2008-05-28T14:24:17  <johill> I guess that wants to be __ggetattribute__
2008-05-28T14:25:07  <johill> etc
2008-05-28T14:25:36  <johill> not etc
2008-05-28T14:25:38  <johill> but that
2008-05-28T14:32:04  <johill> and delattr
2008-05-28T14:32:48  <zenhase> hmm
2008-05-28T14:32:56  <johill> works for me
2008-05-28T14:33:25  <mitsuhiko> johill: there is no __hasattr__
2008-05-28T14:33:51  <johill> yeah I just realised that too
2008-05-28T14:35:20  <zenhase> right now i have http://paste.pocoo.org/show/55167/ with code like johill has
2008-05-28T14:36:03  <johill> you need __getattribute__ anyway
2008-05-28T14:36:14  <johill> I have http://paste.pocoo.org/show/55169/ now
2008-05-28T14:36:53  <zenhase> it's with __getattribute__
2008-05-28T14:36:59  <johill> but you're not calling that
2008-05-28T14:37:07  <zenhase> i call __getattr__ on RequestBase parent-class
2008-05-28T14:37:14  <johill> call __getattribute__
2008-05-28T14:37:16  <zenhase> i changed that
2008-05-28T14:37:21  <zenhase> it's the same error
2008-05-28T14:37:31  <johill> hmm
2008-05-28T14:37:40  <johill> ewird
2008-05-28T14:37:45  <johill> weird even
2008-05-28T14:37:50  <johill> so you get
2008-05-28T14:37:54  <johill> AttributeError: type object 'RequestBase' has no attribute '__getattribute__'
2008-05-28T14:37:55  <johill> ?
2008-05-28T14:37:58  <zenhase> http://paste.pocoo.org/show/55170/
2008-05-28T14:38:19  <zenhase> no, i don't use __getattribute__ on RequestBase, i use it in the wrapper
2008-05-28T14:38:25  <johill> try using it on base too
2008-05-28T14:38:39  <johill> not sure why but I had a similar problem
2008-05-28T14:39:35  <zenhase> yeah
2008-05-28T14:39:38  <zenhase> no it works :)
2008-05-28T14:39:50  <zenhase> no it doesn't find another attribute, which is fine :D
2008-05-28T14:40:09  <johill> I have __setattr twice, heh
2008-05-28T14:40:23  <johill> you probably want delattr too
2008-05-28T14:41:35  <zenhase> actually __getattr__ is the most important, since i want to log accesses
2008-05-28T14:41:42  <zenhase> del is mostly used for cleanup
2008-05-28T14:41:55  <zenhase> and therefore will have some kind of set coming before
2008-05-28T14:42:00  <johill> __getattribute__ you need, not __getattr__, because you want all accesses not just the failing ones :)
2008-05-28T14:43:36  <zenhase> johill: sorry, i meant that one
2008-05-28T14:44:14  <johill> :)
2008-05-28T14:44:58  <zenhase> http://paste.pocoo.org/show/55175/ is it now, and that is working
2008-05-28T14:49:03  <johill> what you could do is put it all into a sub-object
2008-05-28T14:49:08  <johill> and log only those you don't want
2008-05-28T14:49:35  <zenhase> na, it's ok
2008-05-28T14:49:41  <zenhase> i really want all of them :)
2008-05-28T14:49:51  <zenhase> i can filter my logfile
2008-05-28T14:52:40  <johill> true
2008-05-28T15:22:39  <CIA-50> Florian Krupicka <florian.krupicka@googlemail.com> default * 3643:251827af7ddc 1.8-wsgi-fkrupicka/MoinMoin/util/filesys.py: Fixed: cannot check for File.Error in same line like checking import of File
2008-05-28T15:22:40  <CIA-50> Florian Krupicka <florian.krupicka@googlemail.com> default * 3644:719256a8db51 1.8-wsgi-fkrupicka/MoinMoin/ (web/__init__.py web/request.py wsgiapp.py): Initial code to track down the use of request objects in MoinMoin
2008-05-28T15:26:57  <dennda> err
2008-05-28T15:27:23  <dennda> Accidentially committed without having a username set
2008-05-28T15:28:14  <ThomasWaldmann> zenhase: btw, if you make yourself a logging.conf, youcan use debug error level
2008-05-28T15:32:03  <dennda> hm
2008-05-28T15:33:04  <dennda> is it ok if I push with dennda@blackbox once?
2008-05-28T15:33:08  <ThomasWaldmann> zenhase: i guess you can remove the jh copyright 2001-2003 from the wsgiapp.py :) and tw is rather 2008 :)
2008-05-28T15:33:10  <dennda> dunno how to correct that
2008-05-28T15:33:41  <ThomasWaldmann> .hgrc :) see the mercurial quick intro in the wiki
2008-05-28T15:34:08  <ThomasWaldmann> but you need to do that before committing
2008-05-28T15:34:23  <dennda> ThomasWaldmann: Yes
2008-05-28T15:34:27  <dennda> I already did that on the laptop
2008-05-28T15:34:36  <dennda> But not on the desktop and accidentially already committed
2008-05-28T15:35:02  <zenhase> ThomasWaldmann: hmm, good idea, currently everything logged lands in the apache errorlog ;)
2008-05-28T15:36:18  <ThomasWaldmann> dennda: if you want to fix it and it was only 1 commit, you can rollback last transaction in the repo
2008-05-28T15:36:28  <ThomasWaldmann> (make a diff before :)
2008-05-28T15:37:33  <dennda> ThomasWaldmann: does that translate to "delete the revision"?
2008-05-28T15:39:16  * dennda fixes that evilishly
2008-05-28T15:42:24  <zenhase> why fix it evilishly when you can fix it rightly (as thomas suggested) ;)
2008-05-28T15:43:10  <CIA-50> Christopher Denter <moin@the-space-station.com> default * 3904:06df62ea249c 1.8-storage-cdenter/MoinMoin/storage/abstract.py: Improved docstrings to better reflect what a method does, especially if it fails. Added a comment on how the classes internal methods are used to clarify the principle
2008-05-28T15:43:38  <ThomasWaldmann> dennda: it is like never committed but only works for the last transaction (and should not be used on public repos)
2008-05-28T15:44:05  <dennda> Corrected it already
2008-05-28T15:44:06  <dennda> :)
2008-05-28T15:55:01  <dreimark> moin
2008-05-28T16:21:32  <johill> dennda: _rollback_item shouldn't be called when commit fails, but commit needs to clean up by itself
2008-05-28T16:24:18  <dennda> johill: I thought we'd pull out the cleanup code and create the _rollback_item method for that
2008-05-28T16:25:16  <johill> I think it's better for the backend though to separate it
2008-05-28T16:25:23  <johill> and if it really has the same code, it can call the rollback itself
2008-05-28T16:32:38  <dennda> johill: ok
2008-05-28T16:32:57  <johill> in sql though, you could implement it with an on error clause
2008-05-28T16:33:04  <johill> so it'd be weird to have the rollback called too
2008-05-28T16:33:53  <dennda> ok
2008-05-28T16:35:33  <dennda> is it okay if we do small commits?
2008-05-28T16:35:42  <dennda> I like to do that in order to have my machines in sync
2008-05-28T16:36:07  <johill> sure
2008-05-28T16:36:09  <dennda> like this one. I'd just adjust that docstring
2008-05-28T16:36:09  <dennda> ok
2008-05-28T16:36:38  <johill> at some point though you probably want to commit only working things so you don't break sudenly in the middle of the chain
2008-05-28T16:36:44  <johill> but the size of the commit doesn't matter
2008-05-28T16:37:06  <johill> imho. if it does matter, then it's a bug in hg
2008-05-28T16:39:10  <dennda> johill: better? http://paste.pocoo.org/show/55216/
2008-05-28T16:39:21  <dennda> ok
2008-05-28T16:39:45  <dennda> I thought about tagging broken revisions as broken
2008-05-28T16:39:53  <dennda> so PawelPacana doesn't accidentially merge them
2008-05-28T16:40:21  <johill> "occur", or just say "happen" ;)
2008-05-28T16:40:47  <dennda> I like occur, but I changed it :)
2008-05-28T16:40:55  <dennda> ok now?
2008-05-28T16:41:33  <CIA-50> Christopher Denter <moin GUESSWHAT the DASH space DASH station PERIOD com> default * 3905:d2871ce61cad 1.8-storage-cdenter/MoinMoin/storage/abstract.py: Small docstring change
2008-05-28T16:42:27  <johill> yeah looks good
2008-05-28T16:42:52  <johill> but you're writing these out of the API user perspective
2008-05-28T16:43:10  <johill> which you probably shouldn't, as they're internal
2008-05-28T16:43:28  <johill> the API user perspective should be on Item.commit
2008-05-28T16:43:46  <johill> these should have the "what do I need to do to implement it" perspective
2008-05-28T16:44:57  <zenhase> hmm, GUESSWHAT ... :P
2008-05-28T16:45:12  <johill> what?
2008-05-28T16:45:27  <dennda> zenhase: I don't accept mail from people stupid enough not to replace that :)
2008-05-28T16:45:53  <johill> oh
2008-05-28T16:46:18  <johill> my full email is in the kernel changelog like hundreds of times
2008-05-28T16:46:26  <johill> haven't really had problems with that
2008-05-28T16:46:34  <dennda> you hacked on the kernel?
2008-05-28T16:46:50  <johill> s/ed//
2008-05-28T16:46:57  <dennda> oh
2008-05-28T16:46:58  <dennda> neat
2008-05-28T16:47:02  <dennda> what exactly?
2008-05-28T16:47:08  <johill> mostly powerpc and 802.11
2008-05-28T16:47:20  <dennda> crazy
2008-05-28T16:47:22  <johill> bits and pieces in other places, and a full alsa driver for apple hw
2008-05-28T16:47:24  <dennda> :)
2008-05-28T16:47:31  <xorAxAx> nobody online in the gobby session? did you dump the insights into the main wiki?
2008-05-28T16:47:40  * dennda connects
2008-05-28T16:47:48  <johill> I saved the files and the log
2008-05-28T16:50:45  <dennda> johill: you agree on raising exceptions where I added that?
2008-05-28T16:51:13  * johill looks
2008-05-28T16:51:56  <johill> I don't think create_item can check whether it exists
2008-05-28T16:52:03  <johill> hmm
2008-05-28T16:53:17  <dennda> why not?
2008-05-28T16:53:19  <dennda> try to get the item
2008-05-28T16:53:52  <dennda> if that works, it exists, if an exception is raised you can create it
2008-05-28T16:54:31  <johill> I'm wondering about concurrent renames
2008-05-28T16:55:08  <dennda> yes
2008-05-28T16:55:33  <dennda> but as soon as an item is renamed, the old name is freed and you can create a new item with that name
2008-05-28T16:55:44  <dennda> though that may be a bit...
2008-05-28T16:55:49  <johill> yeah, but what do you do in the exception for create_item?
2008-05-28T16:55:57  <johill> if you try get_item then it might already no longer exist
2008-05-28T16:56:21  <johill> so I wonder if create_item should only check at commit time?
2008-05-28T16:56:35  <dennda> then get_item fails, raises an exception that you can handle. when that happens it tells you that the name is free
2008-05-28T16:56:56  <johill> then you go back to create_item?
2008-05-28T16:58:18  <dennda> I don't see a problem there
2008-05-28T16:58:44  <johill> I don't right now either
2008-05-28T16:58:57  <johill> let's see if I documented the one I saw when I wrote the lockfree doc
2008-05-28T17:00:39  <johill> I didn't, but I have a distinct feeling it'll come back to me
2008-05-28T17:00:43  <johill> phone
2008-05-28T17:01:43  <dennda> The worst thing that can happen (as far as I can tell) is: You rename A to B, you can now create an Item with name A again and as soon as that is available, others may wonder what happened to A because they didn't know it was renamed to B and that A actually is something completely different
2008-05-28T17:04:09  <johill> that can happen anyway
2008-05-28T17:04:30  <dennda> yes
2008-05-28T17:04:35  <dennda> We can't prevent that
2008-05-28T17:04:45  <dennda> especially not on the backend layer
2008-05-28T17:12:58  <johill> yeah
2008-05-28T17:13:37  <johill> ok I remember now
2008-05-28T17:13:45  <johill> the thing is that create_item shoudln't change the db
2008-05-28T17:14:41  <dennda> which means?
2008-05-28T17:15:00  <johill> that you can't guarantee create_item will fail if another create_item is concurrent
2008-05-28T17:15:03  <TheSheep> it should operate entirely in memory
2008-05-28T17:15:08  <TheSheep> or in temporary files
2008-05-28T17:16:04  <dennda> I agree it should operate in memory or tempfiles. That is cleaner somehow. But I don't see the connection to rename?
2008-05-28T17:17:40  <johill> yeah I dunno. we'll see
2008-05-28T17:18:48  * dennda needs to buy some things
2008-05-28T17:18:50  <dennda> bbl
2008-05-28T17:19:06  <johill> dreimark: deprecate?
2008-05-28T17:19:56  <johill> dreimark: please keep to those things that attachments do right now, no new features
2008-05-28T17:26:17  <dreimark> ok
2008-05-28T17:27:17  <dreimark> but later on we have to check which page attributes they need too
2008-05-28T17:27:47  <dreimark> johill:
2008-05-28T17:28:10  <johill> well they'd get all of them implictly anyway
2008-05-28T17:29:07  <dreimark> do you think already on meta data for attachments too, e.g. size, alt attribute ?
2008-05-28T17:29:36  <johill> not at all
2008-05-28T17:29:42  <johill> we're in a low-level design phase
2008-05-28T17:29:51  <zenhase> hum ... the code referring to some setuid in RequestBase.__init__ is not about *nix setuid, right?
2008-05-28T17:29:53  <johill> feel free to make a new page about using all the new features, but I don't think we'll read it yet
2008-05-28T17:30:21  <johill> zenhase: no, it's wiki suid
2008-05-28T17:30:25  <johill> zenhase: 'switch user' thing
2008-05-28T17:32:00  <zenhase> ok, never saw that in moin :)
2008-05-28T17:32:09  <johill> log in as superuser and go to userprefs
2008-05-28T17:32:11  <zenhase> perhaps because i never really superused some wiki
2008-05-28T17:32:20  <zenhase> thought so :)
2008-05-28T17:43:09  <dreimark> zenhase: or goto SystemAdmin
2008-05-28T17:43:23  <zenhase> right now i have something else i try to think about
2008-05-28T17:43:24  <dreimark> you can install packages
2008-05-28T17:43:26  <dreimark> too
2008-05-28T17:44:18  <zenhase> i try to figure out, where to put some methods which are now on RequestBase and which i would like to put into some library (instead of having them on the object directly)
2008-05-28T17:44:38  <zenhase> for example, where to put the code for getAvailableActions
2008-05-28T17:45:07  <johill> well that one would be MoinMoin.action of course
2008-05-28T17:45:10  <johill> I'd say
2008-05-28T17:45:38  <zenhase> *cough*
2008-05-28T17:45:42  <zenhase> yeah :)
2008-05-28T17:45:55  <dreimark> or wikiutil if it is more generic. but action is right for this one
2008-05-28T17:46:00  <zenhase> but the package description was a bit irritating
2008-05-28T17:46:17  <dreimark> fix it
2008-05-28T17:46:43  <dreimark> ;)
2008-05-28T17:47:09  <zenhase> no, it's ok :)
2008-05-28T17:48:04  <zenhase> at the end of action/__init__.py there are similar utility functions
2008-05-28T17:48:30  <zenhase> so i guess it's the right one ... it just sounded like the package is for the actual action implementations itself
2008-05-28T17:48:41  <zenhase> i will extend the description then and put it there ;)
2008-05-28T17:50:27  <zenhase> ha, this camelCase convention of the code is really irritation :o
2008-05-28T17:50:33  <zenhase> irritating
2008-05-28T17:50:44  <zenhase> new code alongside old code just looks strange :)
2008-05-28T17:51:29  <zenhase> or better the other way round, since i am too accustomed to modern_coding_style
2008-05-28T17:55:31  <zenhase> hmm, lowercase actions are the builtin ones?
2008-05-28T17:56:48  <johill> zenhase: no, those are invisible ones
2008-05-28T17:56:49  <johill> it's stupid
2008-05-28T17:57:05  <johill> the ones starting with uppercase are visible in the drop down
2008-05-28T17:57:14  <zenhase> /o\
2008-05-28T17:57:31  <zenhase> yeah, i figured from the getAvailableActions code and where it is used
2008-05-28T17:57:50  <zenhase> but i thought it was about being extra instead of builtin :)
2008-05-28T17:58:11  <zenhase> with builtin meaning, the essential ones, which have extra links in the themes
2008-05-28T17:58:23  <zenhase> (edit, delete, info and the like)
2008-05-28T18:02:09  <dreimark> bbl
2008-05-28T18:06:06  <zenhase> hahahaha, the list of 'known actions' get's cached b
2008-05-28T18:06:08  <zenhase> erm
2008-05-28T18:06:18  <zenhase> cached quite often on it's generation
2008-05-28T18:12:33  <johill> keep in mind that it's per-cfg
2008-05-28T18:12:49  <zenhase> johill: yes
2008-05-28T18:12:58  <zenhase> and it exists at least 2 times on the cfg
2008-05-28T18:14:33  <johill> heh
2008-05-28T18:16:17  <zenhase> also excluded actions are computed every request (actions in cfg.actions_excluded)
2008-05-28T18:16:28  <zenhase> tho they aren't request-specific
2008-05-28T18:18:34  <johill> fun
2008-05-28T18:18:40  <johill> don't sepdn too much time on that though
2008-05-28T18:25:10  <zenhase> it's part of my proposal to clean up request, so if it helps making it more concise for me to work with and have the side-benefit of moving stuff into more appropiate places: why not :)
2008-05-28T18:26:59  <johill> yeah if it helps I'm all for it, just don't get side-tracked :)
2008-05-28T19:08:15  <zenhase> uh ...
2008-05-28T19:08:28  <zenhase>             # Recode from utf-8 into config charset. If the path
2008-05-28T19:08:28  <zenhase> -            # contains user typed parts, they are encoded using 'utf-8'.
2008-05-28T19:08:45  <zenhase> in decodePagename
2008-05-28T19:09:24  <zenhase> actually i don't really understand, what this method tries to achieve (despite having pagename e.g. path_info, being unicode)
2008-05-28T19:10:05  <zenhase> a simple .decode(config.charset, 'replace') does not work?
2008-05-28T19:10:53  <johill> what method?
2008-05-28T19:11:01  <johill> ah
2008-05-28T19:12:01  <johill> no idea, sorry
2008-05-28T19:13:55  * zenhase wonders if some of this code is just plain overly complex without any actual reason (besides 'it made sense some time long ago')
2008-05-28T19:14:02  <zenhase> *snip snip*
2008-05-28T19:14:13  <johill> wouldn't be suprising
2008-05-28T19:15:33  <johill> we should not pretend having config.charset anyway
2008-05-28T19:15:43  <johill> and just use utf-8
2008-05-28T19:16:22  <zenhase> actually: yes
2008-05-28T19:16:49  <zenhase> haha, nice one too: self.decode_charsets = [config.charset]
2008-05-28T19:17:04  <zenhase> and this list NEVER gets extended anywhere in the code ;)
2008-05-28T19:17:08  <zenhase> *snip snip*
2008-05-28T19:18:27  <xorAxAx> zenhase: yes, that decoding code is totally horrible :)
2008-05-28T19:18:30  <zenhase> actually i am breaking a lot of the non-wsgi code right now
2008-05-28T19:19:11  <zenhase> but this is not that big of a problem right now i would say, i have to experiment :)
2008-05-28T19:19:36  <zenhase> this non-wsgi code has to be rewritten anyway
2008-05-28T19:20:11  <zenhase> (when request/webserver-interface code turns upside down for the project)
2008-05-28T19:20:33  <johill> just rm the non-wsgi code to start with ;)
2008-05-28T19:21:07  <zenhase> hmm
2008-05-28T19:21:21  <zenhase> no, i still need it for reference ;)
2008-05-28T19:21:33  <zenhase> it gets removed when its appropiatly replaced
2008-05-28T19:23:09  <zenhase> hmm
2008-05-28T19:23:40  <johill> reference is in hgweb;) up to you of course, but I can't see you doing step-by-step transforms
2008-05-28T19:24:08  <zenhase> actually this is hard to transform
2008-05-28T19:24:20  <zenhase> it's really a lot easier to rewrite from scratch o_O
2008-05-28T19:24:59  <johill> yeah I can imagine
2008-05-28T19:49:51  <zenhase> meep, evil people are trying to drive me away from the couch i am sitting on :o
2008-05-28T19:49:58  <zenhase> gotta move ->
2008-05-28T20:11:04  <johill> gosh. hg sucks
2008-05-28T20:11:23  <johill> why can it not handle multiple heads and just treat them separtely?
2008-05-28T20:11:58  * johill wishes hg would do branches properly
2008-05-28T20:12:27  <johill> can it throw away a head?
2008-05-28T20:13:26  <dennda> I would have needed exactly that a few hours back
2008-05-28T20:14:49  <johill> what a crap tool
2008-05-28T20:15:15  <dennda> To be honest I didn't check if such functionality exists
2008-05-28T20:15:28  <johill> I've been looking for at least 5 minutes
2008-05-28T20:15:42  <xorAxAx> not without a plugin
2008-05-28T20:15:47  <johill> dumb
2008-05-28T20:16:06  <xorAxAx> its a feature :)
2008-05-28T20:16:13  <johill> no, it's dumb
2008-05-28T20:16:47  <johill> I can't pull, find a bug instead of doing the merge, commit the fix and push it
2008-05-28T20:16:53  <johill> _very_ dumb
2008-05-28T20:17:19  <johill> and now I can't even recover w/o cloning new
2008-05-28T20:17:27  <johill> _extremely_ dumb
2008-05-28T20:17:55  <TheSheep> johill: don't use branches
2008-05-28T20:17:57  <dennda> You could flame #mercurial to relax :)
2008-05-28T20:18:09  <TheSheep> johill: just clone instead, it's cheap, hg uses hardlinks
2008-05-28T20:18:18  <johill> TheSheep: no I can't!
2008-05-28T20:18:24  <johill> TheSheep: if I clone this now, it still has two heads
2008-05-28T20:18:29  <johill> TheSheep: so I'm stuck just again
2008-05-28T20:18:49  <TheSheep> just leave one of them alone
2008-05-28T20:18:51  <johill> besides, sometimes I don't want to have a checkout of all the branches, i just want access to their history
2008-05-28T20:19:00  <johill> TheSheep: I can't push with two heads!
2008-05-28T20:19:16  <TheSheep> johill: you can if they are in different branches, no?
2008-05-28T20:19:30  <johill> put it this way
2008-05-28T20:19:38  <johill> I cannot: pull, attempt merge, give up merge
2008-05-28T20:19:51  <johill> without knowing up front that I will give up (and do it in a separate tree)
2008-05-28T20:19:54  <johill> very dumb
2008-05-28T20:20:11  <TheSheep> branches are a misfeature in hg, they should have never introduced them
2008-05-28T20:20:22  <johill> they should just do it properly
2008-05-28T20:20:28  <TheSheep> with clone
2008-05-28T20:20:35  <johill> that's not properly
2008-05-28T20:20:42  <johill> you don't always want a checkout
2008-05-28T20:21:05  <johill> I pull about 15 different git trees into one local dir
2008-05-28T20:21:12  <johill> so I can check hte history of them without checking them out
2008-05-28T20:21:19  <johill> which is an important use case imho
2008-05-28T20:21:36  <TheSheep> well, hg can't work without a working dir, that's a problem, true
2008-05-28T20:21:51  <TheSheep> but not a huge one
2008-05-28T20:21:59  <johill> that's a _separate_ problem
2008-05-28T20:22:23  <TheSheep> oh, and hg not being git is another prblem too, obviously
2008-05-28T20:22:33  <johill> no, but obviously I'm spoiled by git
2008-05-28T20:22:36  <TheSheep> I also have a problem with git not being hg
2008-05-28T20:23:29  <johill> I don't know why you guys defend hg for not handling something it could just as well handle
2008-05-28T20:23:49  <TheSheep> it's like defending python for not using {} :)
2008-05-28T20:24:30  <johill> not really
2008-05-28T20:24:46  <johill> obviously hg does have multiple heads (branches, whatever)
2008-05-28T20:24:55  <dennda> Isn't there a git <-> hg adapter?
2008-05-28T20:24:59  <dennda> like bzr-svn?
2008-05-28T20:25:02  <dennda> (Which I just love)
2008-05-28T20:25:35  <johill> it just can't handle them and breaks down
2008-05-28T20:25:47  <johill> dennda: only hg -> git
2008-05-28T20:25:56  <dennda> ah
2008-05-28T20:27:00  <johill> wait that can't be true
2008-05-28T20:27:07  <johill> there's both, but it's not bidirectional
2008-05-28T20:28:20  <johill> TheSheep: besides, this means that every time I want to see if I can merge something, I have to create a new checkout. I think that's very stupid
2008-05-28T20:33:42  <TheSheep> johill: you can clone your local repo and pull into it
2008-05-28T20:34:32  <TheSheep> johill: think of hg a little like a wiki -- leaving some rules to the human
2008-05-28T20:35:36  <johill> sure, I can clone locally
2008-05-28T20:35:44  <johill> but that means that for every merge I have to clone first
2008-05-28T20:37:57  <johill> now, how do I get rid of the extra head?
2008-05-28T20:40:04  <TheSheep> merge them?
2008-05-28T20:40:09  <johill> I can't
2008-05-28T20:40:22  <johill> its more difficult than I can do now
2008-05-28T20:40:28  <TheSheep> chekcout one, commit it to the other and then merge?
2008-05-28T20:41:59  <johill> I can't afford to check out completely again on this link
2008-05-28T20:51:17  <johill> uff.
2008-05-28T20:51:24  <johill> clone locally with explicit -r is the solution
2008-05-28T20:51:30  <johill> thanks to #mercurial
2008-05-28T20:57:39  <CIA-50> Johannes Berg <johannes AT sipsolutions DOT net> default * 3903:8c9039ffc0fe 1.7-storage-hwendel/STORAGE-DESIGN: add storage design document (same as on the web) for editing by others
2008-05-28T20:57:40  <CIA-50> Johannes Berg <johannes AT sipsolutions DOT net> default * 3904:d755d02810f8 1.7-storage-hwendel/.hgtags: merge
2008-05-28T20:58:22  <dennda> johill: I wonder whether we should update the spec accordingly
2008-05-28T20:58:39  <dennda> or
2008-05-28T20:58:39  <dennda> hm
2008-05-28T20:58:46  <dennda> dunno if its helpful
2008-05-28T21:01:24  <johill> or just remove stuff from it as it moves to the code
2008-05-28T21:07:09  <dennda> create_item(self, self, itemname) looks a bit strange (we want to memorize the backend to which an item belongs in the item class, and an Item is instantiated with that method) -- Is there a more beautiful way?
2008-05-28T21:13:02  <TheSheep> conflate the two selves?
2008-05-28T21:13:39  <TheSheep> do you actually need .create in item?
2008-05-28T21:14:10  <TheSheep> how about just Item()?
2008-05-28T21:14:22  <TheSheep> I mean __init__
2008-05-28T21:17:05  <dennda> That way it's not that clear that an Item belongs to a backend
2008-05-28T21:28:46  <dennda> TheSheep: conflate?
2008-05-28T21:28:52  <dennda> TheSheep: you mean just using one self?
2008-05-28T21:31:37  <dennda> johill: since there are quite a few links (one object calling a method of another or even instantiating it and passing itself as argument), how would I do that ideally? This is a "how to do it in python" question. I could just pass self as argument twice, but that looks odd and unpythonic
2008-05-28T21:35:16  <dennda> oops
2008-05-28T21:35:18  <dennda> forget it
2008-05-28T21:35:20  <dennda> just plain forget it
2008-05-28T21:36:58  <dennda> that was just a stupid question :)
2008-05-28T21:37:46  <johill> I don't think I understood it either
2008-05-28T21:38:22  <dennda> and I am not gonna explain that weird thought
2008-05-28T21:40:37  <johill> I'll try to do some merging
2008-05-28T21:40:44  <johill> I think I understand the csets a bit btter now
2008-05-28T21:42:06  <dennda> merge what?
2008-05-28T21:42:34  <johill> main and storage
2008-05-28T21:42:52  <zenhase> re
2008-05-28T21:45:40  <dennda> johill: you specified that the item class has a _new_revisions *list* that keeps track of all new revision objects
2008-05-28T21:45:47  <dennda> I wonder if that's really necessary
2008-05-28T21:45:57  <johill> no, it's not since we said it only can do one at a time
2008-05-28T21:45:58  <zenhase> uhaaaa ... Status gets set as a header o_O
2008-05-28T21:46:03  <dennda> exactly
2008-05-28T21:46:12  <johill> I guess I wasn't really sure about that limitation
2008-05-28T21:46:29  <zenhase> request.setHttpHeader('Status: 403 Permission Denied')
2008-05-28T21:46:33  <dennda> no wonder
2008-05-28T21:46:35  <zenhase> *twitch*
2008-05-28T21:47:03  <dennda> I am just experiencing that you need to think through the whole thing when actually writing the code for it
2008-05-28T21:47:06  <dennda> which is good :)
2008-05-28T21:47:31  <johill> :)
2008-05-28T21:49:00  <dennda> Ok I'm now gonna tackle the dictmixin part
2008-05-28T21:49:08  <dennda> in order to access revisions with dict semantics
2008-05-28T21:49:15  <dennda> havn't done something like that before
2008-05-28T21:50:17  <johill> I wonder if we really want that
2008-05-28T21:50:34  <johill> I think it makes the api a bit confusing if revision meta-data is dict-like and item revisions are too
2008-05-28T21:51:04  <dennda> they aren't
2008-05-28T21:51:10  <dennda> revisions are list like
2008-05-28T21:51:32  <dennda> and we don't have metadata keys that are ints
2008-05-28T21:51:45  <dennda> since we required those keys to be strings
2008-05-28T21:52:10  <johill> true, ok
2008-05-28T21:59:49  <johill> ThomasWaldmann: whyat's with editlog_entry?
2008-05-28T22:00:12  <johill> shouldn't that be internal?
2008-05-28T22:08:50  <johill> ThomasWaldmann:
2008-05-28T22:08:53  <johill>         # system pages have no edit-log (and only 1 revision),
2008-05-28T22:08:53  <johill>         # thus edit_info will return None
2008-05-28T22:08:55  <johill> ???
2008-05-28T22:10:48  <ThomasWaldmann> what's the question?
2008-05-28T22:11:48  <johill> why does it return None?
2008-05-28T22:12:09  <johill> clearly, the page exists, so it has to come from somewhere
2008-05-28T22:13:24  <johill> I could understand it returning no useful info
2008-05-28T22:13:27  <johill> but None seems wrong
2008-05-28T22:13:37  <johill> especially in the storage abstraction for this
2008-05-28T22:15:59  <ThomasWaldmann> because it has nothing
2008-05-28T22:18:32  <johill> but the revision clearly exist
2008-05-28T22:18:35  <johill> exists
2008-05-28T22:18:40  <johill> hence, it also has metadata
2008-05-28T22:19:04  <johill> if it's missing editor metadata, then it should still return the info, and not None
2008-05-28T22:19:25  <johill> you're making it harder and harder to do storage properly by adding these sorts of extra things
2008-05-28T22:21:30  <johill> of course I can hack it in
2008-05-28T22:21:48  <ThomasWaldmann> you don't need to emulate that
2008-05-28T22:21:51  <johill> but ultimately I think this should just return the revision metadata dict and you look at it yourself
2008-05-28T22:22:10  <johill> well, ok, but then we diverge yet more
2008-05-28T22:26:47  <johill> hmm
2008-05-28T22:26:53  <johill> there's a failing package test in the storage branch
2008-05-28T22:26:59  <johill> and I have no idea why
2008-05-28T22:28:30  <johill> and a failing sourcecode test in the main branch?
2008-05-28T22:44:39  <dennda> Ok I gotta quit for today
2008-05-28T22:44:43  <dennda> really need some rest
2008-05-28T22:45:13  <dennda> these bureaucrats really annoyed me to death
2008-05-28T22:45:21  <dennda> final push for sync reasons for today...
2008-05-28T22:45:37  <dennda> next thing is the DictMixin thing
2008-05-28T22:50:49  <johill> hg confuses me yet again..
2008-05-28T22:51:31  <CIA-50> Johannes Berg <johannes AT sipsolutions DOT net> default * 3906:09930ea3723a 1.7-storage-hwendel/ (5 files in 5 dirs): merge main revision c9494979fe7a
2008-05-28T22:51:32  <CIA-50> Johannes Berg <johannes AT sipsolutions DOT net> default * 3908:4a87f2c10921 1.7-storage-hwendel/ (3 files in 3 dirs): merge 889b37b6441c
2008-05-28T22:51:33  <CIA-50> Johannes Berg <johannes AT sipsolutions DOT net> default * 3909:bd6ed9e36ca6 1.7-storage-hwendel/.hgtags: merge together recent work
2008-05-28T22:53:10  <CIA-50> Christopher Denter <moin@the-space-station.com> default * 3906:1ba6d117ad3c 1.8-storage-cdenter/MoinMoin/storage/abstract.py: Beginning to create Item class. Still under construction. Pushing for sync-reasons.
2008-05-28T22:53:20  <dennda> that thing is fast
2008-05-28T22:54:55  <johill> what's fast?
2008-05-28T22:55:01  <dennda> the bot
2008-05-28T22:55:07  <johill> heh
2008-05-28T22:55:34  <johill> oh god more of these changesets
2008-05-28T22:55:37  <CIA-50> Johannes Berg <johannes AT sipsolutions DOT net> default * 3911:3838d1edfc12 1.7-storage-hwendel/MoinMoin/Page.py:
2008-05-28T22:55:37  <CIA-50> no-op merge of 419335c7d8ad
2008-05-28T22:55:37  <CIA-50> storage branch can't really do optimisations like that yet
2008-05-28T22:55:39  <CIA-50> Johannes Berg <johannes AT sipsolutions DOT net> default * 3912:9e0decc7f93d 1.7-storage-hwendel/.hgtags: merge together some more work
2008-05-28T22:55:52  <dennda> huh?
2008-05-28T22:55:55  <dennda> hg confuses me
2008-05-28T22:56:07  <dennda> I just pulled on my other machine
2008-05-28T22:56:34  <dennda> and it said it merged abstract.py. seems there was a conflict, and now hg status reports abstract.py to be modified without me having changed it
2008-05-28T22:57:13  <johill> ThomasWaldmann: ohh. you had the same confusion ;)
2008-05-28T22:57:16  <johill> ":changeset: Page.edit_info: better return empty dict than None when no edit-log entry is found"
2008-05-28T22:57:58  <dennda> ah yes, our docstring additions
2008-05-28T22:59:00  <CIA-50> Christopher Denter <moin GUESSWHAT the DASH space DASH station PERIOD com> default * 3907:c9e5684b7e6c 1.8-storage-cdenter/MoinMoin/storage/abstract.py: Heh, I need to get used to hg. Seems I had a conflict. Trying to merge that now
2008-05-28T22:59:13  <xorAxAx> dennda: ping
2008-05-28T22:59:14  <dennda> ok everything fine now
2008-05-28T22:59:16  <dennda> xorAxAx: pong
2008-05-28T22:59:26  <xorAxAx> dennda: is the gobby stuff on the wiki?
2008-05-28T22:59:46  <dennda> xorAxAx: I didn't transfer anything, what are you talking of exactly?
2008-05-28T22:59:48  <CIA-50> Johannes Berg <johannes AT sipsolutions DOT net> default * 3914:7e8a70245250 1.7-storage-hwendel/MoinMoin/Page.py:
2008-05-28T22:59:48  <CIA-50> no-op merge of 56b476878a1c
2008-05-28T22:59:48  <CIA-50> we'll do all this differently anyway
2008-05-28T22:59:49  <CIA-50> Johannes Berg <johannes AT sipsolutions DOT net> default * 3916:c61545cb0978 1.7-storage-hwendel/MoinMoin/ (Page.py _tests/test_Page.py search/Xapian.py):
2008-05-28T22:59:49  <CIA-50> more-or-less no-op merge of 65eac5f65a11
2008-05-28T22:59:52  <CIA-50> we actually return some sort of info here.. will have to be figured out
2008-05-28T22:59:57  <xorAxAx> dennda: well, results, thoughts, notes
2008-05-28T23:00:05  <xorAxAx> gobby is not persistent
2008-05-28T23:00:42  <dennda> I'll do that tomorrow
2008-05-28T23:01:48  <xorAxAx> of course it only makes sense to rescue valuable stuff :)
2008-05-28T23:02:57  <dennda> yes
2008-05-28T23:03:03  <dennda> I'm to tired to filter that now
2008-05-28T23:03:10  <dennda> *too
2008-05-28T23:10:05  <xorAxAx> dennda: makes sense
2008-05-28T23:10:31  <dennda> xorAxAx: hm?
2008-05-28T23:11:52  <xorAxAx> dennda: thats a general agreement wrt the aforementioned opinion or evaluation of the situation, esp. acknowledging the current state of your condition :-)
2008-05-28T23:11:56  * johill waits for hg push
2008-05-28T23:14:19  <johill> bah all the magic in the current storage code makes tracebacks impossible to follow
2008-05-28T23:15:00  <CIA-50> Johannes Berg <johannes AT sipsolutions DOT net> default * 3918:87df51403c44 1.7-storage-hwendel/MoinMoin/search/builtin.py: merge a8acceca815a
2008-05-28T23:15:18  <johill> ohh. the first revision has arrived
2008-05-28T23:15:30  <CIA-50> Johannes Berg <johannes AT sipsolutions DOT net> default * 4012:27eb756d6cfe 1.7-storage-hwendel/ (124 files in 34 dirs): merge all of 1.7
2008-05-28T23:16:14  <johill> lanius really should have fed back some changes into the main branch as he did them. oh well
2008-05-28T23:17:09  <xorAxAx> johill: thats mostly a matter of motivation and awareness
2008-05-28T23:17:21  <xorAxAx> which are reached through conversation and reflection
2008-05-28T23:17:35  <dennda> xorAxAx: are you one of those bureaucrats?
2008-05-28T23:17:45  <dennda> I really need to kill one of them
2008-05-28T23:17:49  <dennda> :)
2008-05-28T23:17:52  <johill> xorAxAx: it's a matter of thinking, imho
2008-05-28T23:18:12  <xorAxAx> dennda: hehe, no, thats the pain of the exam  registration week
2008-05-28T23:18:23  <xorAxAx> johill: but not of a single person
2008-05-28T23:19:13  <johill> xorAxAx: well, that's stretchable, but imho if you do some type change or something like that you ought to realise that such changes can be fed 'upstream' before you depend on them
2008-05-28T23:19:42  <xorAxAx> johill: learning never works in a vacuum
2008-05-28T23:20:09  <dennda> oh by the way johill
2008-05-28T23:20:29  <dennda> I'd love to have another phone call with you, maybe tomorrow or friday, if it fits into your schedule
2008-05-28T23:20:45  <johill> oh sure but if you just once think "how will this code go upstream easily" you should be able to figure it out, anyway, it's too late now
2008-05-28T23:20:48  <xorAxAx> how about setting up a confcall with poland? :)
2008-05-28T23:21:00  <xorAxAx> johill: but why would you think about it?
2008-05-28T23:21:03  <dennda> xorAxAx: you pay?
2008-05-28T23:21:13  <johill> dennda: sure, tommorrow would work, fridays are a bit bad
2008-05-28T23:21:23  <xorAxAx> dennda: nowadays thats cheap ...
2008-05-28T23:21:30  <johill> xorAxAx: yeah well, "no man is an island" or something like that ;)
2008-05-28T23:21:38  <dennda> I'm fine with SIP or skype or something if that's a common wish :)
2008-05-28T23:21:39  <xorAxAx> dennda: but i guess we would need a spanning tree
2008-05-28T23:21:52  <johill> oi. phone-call-stp
2008-05-28T23:21:54  <xorAxAx> i can only terminate myself and 2 other people
2008-05-28T23:22:07  <xorAxAx> but i could loop a few other people through twinkle
2008-05-28T23:22:20  <xorAxAx> hmm, never done a confcall with more than 3 people
2008-05-28T23:22:20  <dennda> johill: ok, let's just decide spontaneously
2008-05-28T23:22:23  <johill> I actually prefer real phones and not having to deal with software
2008-05-28T23:22:31  <xorAxAx> johill: yes, that was my plan
2008-05-28T23:22:32  <johill> I guess I'm getting old ;)
2008-05-28T23:22:38  <xorAxAx> never done a non-realphone-confcall
2008-05-28T23:22:56  * dennda did a few confcalls for ubucon preparations
2008-05-28T23:23:03  <dennda> we had a telephone-geek
2008-05-28T23:23:03  <johill> I've tried to dial in via sip and it was painful... calling the US is far too cheap to even think about using software
2008-05-28T23:23:04  <xorAxAx> with more than 3 people? :)
2008-05-28T23:23:08  <dennda> yes
2008-05-28T23:23:15  <dennda> 5, 6 or 7
2008-05-28T23:23:23  <xorAxAx> hmm, i guess i need to check whether twinkle could handle that :)
2008-05-28T23:23:40  <dennda> we had an astarix set up
2008-05-28T23:23:45  <dennda> astarisk
2008-05-28T23:23:50  <johill> asterisk ;)
2008-05-28T23:24:03  <dennda> ok ;)
2008-05-28T23:24:09  <dennda> never bothered to use that
2008-05-28T23:28:05  <johill> I might be able to terminate three outgoing calls at my parent's place (isdn+connected to my grandparents phone system too)
2008-05-28T23:28:34  <dennda> you really think THAT is easier than using a software that allows conferences? :)
2008-05-28T23:28:45  <dennda> (and even webcams!) :)
2008-05-28T23:28:55  <xorAxAx> twinkle can only do 3 people
2008-05-28T23:28:56  <johill> the systems are already ocnnected
2008-05-28T23:29:04  <xorAxAx> my fritzbox can do also 3
2008-05-28T23:29:27  <dennda> and if you got a headset you don't need to hold the phone all the time :)
2008-05-28T23:29:43  <johill> I have a phone headset ;)
2008-05-28T23:30:22  <johill> well if we do Friday late (after 9pm) I could use my n810
2008-05-28T23:31:44  <johill> anyway lets just talk tomorrow and then see if we want to talk to PawelPacana too
2008-05-28T23:32:01  <dennda> ok
2008-05-28T23:32:04  <johill> I might not be online all the time tomorrow though, but I should be reachable by phone anyway
2008-05-28T23:32:20  <dennda> i got a busy day tomorrow, too
2008-05-28T23:32:33  <dennda> I'll need both my batteries :)
2008-05-28T23:33:07  <johill> heh
2008-05-28T23:33:34  <johill> well if I'm not on just call me and I'd probably be able to come online
2008-05-28T23:34:08  <dennda> I'll be back home at roughly 18:30
2008-05-28T23:34:42  <johill> I don't really know, so..
2008-05-28T23:35:05  <dennda> ok, let's just see
2008-05-28T23:35:07  <dennda> good night
2008-05-28T23:35:13  <johill> night

MoinMoin: MoinMoinChat/Logs/moin-dev/2008-05-28 (last edited 2008-05-27 22:30:01 by IrcLogImporter)