2008-07-02T00:00:05 <xorAxAx> so if you want to actually fix this, you need to approach the formatter and parser code
2008-07-02T00:00:41 <byegonweon> xorAxAx: hmm. that problem seems like more difficult than I though.
2008-07-02T00:01:33 <byegonweon> xorAxAx: ok, I will try to fix that problem with the way you advice me :)
2008-07-02T00:01:36 <xorAxAx> so i actually prefer searching for a js-driven solution. i dont think that it will be longer than 5 lines of code
2008-07-02T00:03:22 <byegonweon> xorAxAx: to tell the truth. I read almost parser and formatter code whole day. then what I know is this problem is more difficult than I thought :)
2008-07-02T00:03:37 <xorAxAx> hehe :)
2008-07-02T00:03:54 <xorAxAx> the new formatter api will look different
2008-07-02T00:13:18 <johill> dennda: http://johannes.sipsolutions.net/patches/moin/storage-api-violations.patch
2008-07-02T00:17:52 <dennda> johill: your question wrt the first test is: should we allow mixing revision manipulation and item metadata manipulation, correct?
2008-07-02T00:21:23 <johill> I think I'm fairly sure we should just catch that and declare it's invalid
2008-07-02T00:21:34 <johill> ahrg
2008-07-02T00:21:37 <johill> more brain damage
2008-07-02T00:21:47 * johill is so happy to get rid of the storage api
2008-07-02T00:21:59 <dennda> the first looks quite ugly
2008-07-02T00:22:04 <dennda> the second I am not so sure about
2008-07-02T00:22:19 <dennda> I experience this loss of concentration again
2008-07-02T00:22:27 <dennda> but luckily I finished my drawing ;
2008-07-02T00:22:29 <dennda> ;)
2008-07-02T00:22:43 <johill> the second is bad too because of when the item is created
2008-07-02T00:23:48 <dennda> then...?
2008-07-02T00:26:06 <johill> well the lock will not have been locked or something
2008-07-02T00:29:11 <dennda> ah yes
2008-07-02T00:29:17 <dennda> and it's ugly, too
2008-07-02T00:29:22 <zenhase> uh, what a day
2008-07-02T00:29:34 <xorAxAx> coding 12h for moin, zenhase? :)
2008-07-02T00:29:59 <zenhase> nope not today ... i tried, but 30 degrees+ where very tiresome
2008-07-02T00:30:10 <dennda> johill: those test cases already fail. do you still want to raise a more beautiful "UglyUseOfAPIError"?
2008-07-02T00:30:17 <dennda> true
2008-07-02T00:30:19 <zenhase> i'll do better tomorrow, looking for a cool place in the library
2008-07-02T00:30:19 <xorAxAx> dennda: ?
2008-07-02T00:30:31 <xorAxAx> dennda: as we discussed today, you need t least an assert
2008-07-02T00:30:34 <johill> haha
2008-07-02T00:30:35 <johill> Your search query "linkto:"FrontPage"" didn't return any results. Please change some terms and refer to HelpOnSearching for more information.
2008-07-02T00:30:38 <johill> (!) Consider performing a full-text search with your search terms.
2008-07-02T00:30:40 <zenhase> hopefully i will fix up tests then
2008-07-02T00:31:22 <johill> dennda: but not all backends will fail them that way, so we need to check that they always fail the same way (assertion failure was my favourite))
2008-07-02T00:31:26 <zenhase> and then i can merge 1.8 and go for some cleanups in the wsgiapp
2008-07-02T00:32:01 <zenhase> right now it's still too much that is done in the init- and run-functions
2008-07-02T00:32:23 <zenhase> needs some splitting up
2008-07-02T00:32:28 <dennda> johill: good point
2008-07-02T00:33:21 * dennda goes zzZzzzzZZzzzZZzzzZZZzzZZZZzzzzzz
2008-07-02T00:33:25 <johill> and some backends might get confused too
2008-07-02T00:33:32 <xorAxAx> johill: hmm, is it really sane to expect an assertitionerror? you said assertionerrors shouldnt be catched, but a test would really do that
2008-07-02T00:33:45 <xorAxAx> johill: i am still not decided
2008-07-02T00:33:55 <dennda> What else do you want to raise?
2008-07-02T00:34:00 <xorAxAx> (which doesnt mean that i like one of both options more)
2008-07-02T00:34:22 <dennda> CommitWhileChangingMetadataError?
2008-07-02T00:34:54 <byegonweon> xorAxAx: good news here.
2008-07-02T00:35:33 <xorAxAx> dennda: no, less specific
2008-07-02T00:35:36 <byegonweon> xorAxAx: with recent version of fckeditor(2.6.2) unfinished html problem solved :)
2008-07-02T00:35:43 <xorAxAx> byegonweon: oh
2008-07-02T00:35:59 <xorAxAx> byegonweon: but didnt you say that the input already had the same issue?
2008-07-02T00:36:03 <johill> xorAxAx: the other real alternative is really just Exception('oops. API violation') I think :)
2008-07-02T00:36:20 <johill> xorAxAx: and yes the test for that would catch the assertion error but that's a corner case, it's excplicitly invalid API use
2008-07-02T00:36:36 <byegonweon> xorAxAx: what same issue?
2008-07-02T00:36:44 <xorAxAx> johill: RuntimeError would be nice
2008-07-02T00:37:02 <byegonweon> xorAxAx: you are so busy :)
2008-07-02T00:37:07 <xorAxAx> byegonweon: i mean, you said that the input to fckeditor already has missing <p>s
2008-07-02T00:37:18 <johill> works too
2008-07-02T00:37:21 <xorAxAx> byegonweon: and nevertheless a bugfix in fckeditor fixes it?
2008-07-02T00:38:02 <xorAxAx> ah
2008-07-02T00:38:07 <xorAxAx> fckeditor has already cleanup code
2008-07-02T00:38:08 <byegonweon> xorAxAx: unfinished html input still remain but recent version fix that on safari too.
2008-07-02T00:38:27 <byegonweon> xorAxAx: that's added 2.6.2 hehe.
2008-07-02T00:38:35 <xorAxAx> hmm
2008-07-02T00:38:40 <xorAxAx> i cant find it in the changelog
2008-07-02T00:39:12 <CIA-53> Johannes Berg <johannes AT sipsolutions DOT net> default * 4219:9075d62183db 1.8-storage-cdenter/MoinMoin/ (10 files in 5 dirs): storage-based search: clean up metadata searches into item and lastrevision searches
2008-07-02T00:39:12 <CIA-53> Johannes Berg <johannes AT sipsolutions DOT net> default * 4220:7586bde1ba7a 1.8-storage-cdenter/MoinMoin/storage/__init__.py: merge
2008-07-02T00:39:42 <xorAxAx> byegonweon: currently its running 2.6.1, right?
2008-07-02T00:40:04 <byegonweon> xorAxAx: yes. I just update fckeditor on my repository.
2008-07-02T00:40:26 <byegonweon> xorAxAx: I just push to hg right now.
2008-07-02T00:40:28 <xorAxAx> weird that they didnt put it into changelog
2008-07-02T00:41:04 <byegonweon> xorAxAx: maybe that's that they try to fix. It seems like side effect.
2008-07-02T00:41:41 <CIA-53> Byeongweon [tasyblue@gmail.com] default * 3658:b4a607ba8f15 1.8-guieditor-mbyeongweon/wiki/htdocs/applets/FCKeditor/ (475 files in 55 dirs): remove FCKEditor 2.6.1 to replace with recent version
2008-07-02T00:41:45 <CIA-53> Byeongweon [tasyblue@gmail.com] default * 3659:884dfff5c076 1.8-guieditor-mbyeongweon/wiki/htdocs/applets/FCKeditor/ (476 files in 55 dirs): add recent version of FCKeditoor(2.6.2)
2008-07-02T00:41:51 <byegonweon> xorAxAx: or they didn't describe that issue maybe. I'm not sure any of that.
2008-07-02T00:41:55 <xorAxAx> yeah
2008-07-02T00:42:51 <byegonweon> xorAxAx: but some problem remains
2008-07-02T00:43:25 <dennda> I'll do it with runtimeerror then
2008-07-02T00:44:11 <byegonweon> xorAxAx: what I found is fckeditor work on safari replace '>' with '>'
2008-07-02T00:44:45 <byegonweon> xorAxAx: that's make moinmoin didn't accept html code that fckeditor produced.
2008-07-02T00:45:24 <xorAxAx> hmm
2008-07-02T00:46:05 <dennda> good night
2008-07-02T00:46:16 <byegonweon> dennda: good night
2008-07-02T00:46:36 <johill> TheSheep: you have a pep8 failure in modernized
2008-07-02T00:46:50 <johill> dennda: you have some in a few files too
2008-07-02T00:47:34 <xorAxAx> byegonweon: you will fix it :)
2008-07-02T00:47:57 <byegonweon> xorAxAx: yes. I will fix it. and sent to fckeditor team. :)
2008-07-02T00:48:19 <xorAxAx> hehe
2008-07-02T00:48:53 <byegonweon> xorAxAx: everyday I read lots of code hehe. It's exciting.
2008-07-02T00:49:00 <xorAxAx> yep :)
2008-07-02T00:49:03 <johill> ahrg loads of test failures for trying to remove items that don't exist
2008-07-02T00:49:28 <xorAxAx> and after reading a lot of code, you will develop a sense for nice and bad code, byegonweon
2008-07-02T00:49:45 <byegonweon> xorAxAx: hehe.
2008-07-02T00:51:17 <byegonweon> I should have breakfast. everybody good night :)
2008-07-02T00:52:15 <xorAxAx> good breakfast byegonweon :)
2008-07-02T00:57:34 <TheSheep> johill: I can't see any failed tests in modernized.py :/
2008-07-02T00:58:05 <TheSheep> johill: running py.test MoinMoin/_tests/test_sourcecode.py, is that right?
2008-07-02T00:58:27 <johill> MoinMoin/theme/modernized.py:26:68: E231 missing whitespace after ',' 'deleted': (_("[DELETED]"), "moin-deleted.png",16, 16),
2008-07-02T00:58:32 <johill> that's what it says here
2008-07-02T00:59:03 <starshine_away> .37
2008-07-02T00:59:06 <johill> or did you fix that and that branch doesn't have the latest 1.8 yet?
2008-07-02T00:59:52 <johill> TheSheep: if you're on linux, enable extended attributes on the filesystem, that makes testsourcecode much smarter
2008-07-02T01:00:32 <TheSheep> johill: that code is copied directly from moinoin's code
2008-07-02T01:00:36 <TheSheep> johill: that table
2008-07-02T01:00:43 <johill> weird
2008-07-02T01:00:48 <johill> it didn't fail here until I touched the file
2008-07-02T01:00:50 <TheSheep> johill: and it has broken spacing, simply because it's formatted as a table
2008-07-02T01:01:32 <johill> TheSheep: no, the __init__.py version does have a space after the ,
2008-07-02T01:01:33 <TheSheep> johill: but I believe it looks more readbale like this...
2008-07-02T01:01:37 <johill> 'deleted': (_("[DELETED]"), "moin-deleted.png", 60, 12),
2008-07-02T01:01:40 <TheSheep> hmm
2008-07-02T01:01:45 <TheSheep> well, ok
2008-07-02T01:02:06 <johill> I might agree wrt. readable
2008-07-02T01:02:16 <johill> but then we need to come to a conclusion about removing that test or something
2008-07-02T01:04:00 <CIA-53> Radomir Dopieralski <moindev@sheep.art.pl> default * 3811:e22cd9105e37 1.8/MoinMoin/theme/modernized.py: Modernized theme: fix spacing in teh image table to pass pep8 tests
2008-07-02T01:05:25 <CIA-53> Johannes Berg <johannes AT sipsolutions DOT net> default * 3812:30ed528054ed 1.8/MoinMoin/ (action/_tests/test_sendcached.py wikiutil.py): fix some pep8 failures
2008-07-02T01:21:48 <ThomasWaldmann> mitsuhiko: lol @ ruby ws
2008-07-02T08:07:58 <dreimark> moin
2008-07-02T08:08:38 * dreimark will be offline most of the day
2008-07-02T08:08:55 <dreimark> (my computer)
2008-07-02T08:17:25 <ThomasWaldmann> moin
2008-07-02T08:38:59 <ThomasWaldmann> PawelPacana: 7 days no commits
2008-07-02T08:43:34 <ThomasWaldmann> gizmach: btw, python has some nice syntactic sugar
2008-07-02T08:44:37 <ThomasWaldmann> instead of writing the (correct, but not nice) if not (elem in seq), you can also write if elem not in seq.
2008-07-02T10:02:15 <gizmach> ThomasWaldmann: ok :)
2008-07-02T10:16:12 <gizmach> and moin
2008-07-02T10:32:08 <gizmach> ThomasWaldmann: also had some tipfellers and will replace this
2008-07-02T10:40:39 <mmihaljevic> :)
2008-07-02T10:42:47 <xorAxAx> moin melita
2008-07-02T10:42:59 <mmihaljevic> xorAxAx: hi
2008-07-02T10:43:51 <zenhase> moin
2008-07-02T10:44:01 <mmihaljevic> ThomasWaldmann: or somewhone, I will send you some pastebins and than will have some questions,
2008-07-02T10:44:04 <mmihaljevic> zenhase: :)
2008-07-02T10:44:26 <zenhase> hi melita :)
2008-07-02T10:44:35 <zenhase> how are you doing?
2008-07-02T10:45:15 <mmihaljevic> zenhase: well, ok, surviving somehow
2008-07-02T10:45:16 <mmihaljevic> u
2008-07-02T10:45:17 <mmihaljevic> ?
2008-07-02T10:46:00 <mmihaljevic> http://paste.pocoo.org/show/78333/ ok this are defined groups in wikiconfig_local
2008-07-02T10:46:48 <ThomasWaldmann> yes?
2008-07-02T10:47:01 <zenhase> i am melting
2008-07-02T10:47:08 <ThomasWaldmann> (having a person's name as groupname is a bit unusual, though)
2008-07-02T10:47:56 <ThomasWaldmann> and you would rather use a similar sequence of statements as in the unit test
2008-07-02T10:48:20 <mmihaljevic> ThomasWaldmann: it was of my testing wiki
2008-07-02T10:48:29 <mmihaljevic> so I could see if this works
2008-07-02T10:48:52 <mmihaljevic> and in my code I found something that it will probably work better and in the right way so I'm changing it
2008-07-02T10:49:05 <ThomasWaldmann> i.e. first define one or two group dicts, then wrap each in a GMCB, then make a GM of them
2008-07-02T10:49:23 <mmihaljevic> I wa changing may in security/__init__.py
2008-07-02T10:49:50 * johill looks for dennda
2008-07-02T10:50:03 <mmihaljevic> ThomasWaldmann: will send you complete code in few minutes just to check if this works what I think
2008-07-02T10:50:09 <mmihaljevic> it will make a better picture
2008-07-02T10:50:43 <mmihaljevic> zenhase: it's ok here at my place, but it is getting warmer
2008-07-02T10:53:39 * ThomasWaldmann sits near a fan :)
2008-07-02T10:58:18 <zenhase> i have had bad experiences with fans, i tend to get a cold in the middle of summer
2008-07-02T11:00:27 <xorAxAx> %-)
2008-07-02T11:01:26 <xorAxAx> i think thats a matter of listening to your body :)
2008-07-02T11:14:09 <zenhase> it always is :)
2008-07-02T11:14:32 * zenhase had just took a short morning fix of video lectures
2008-07-02T11:15:03 <mmihaljevic> ThomasWaldmann: ok here is what I changed http://paste.pocoo.org/show/78335/ (traced with breakpoints if that works)
2008-07-02T11:15:51 <mmihaljevic> probably need to handle "if special in entry:" before it was is_member method used with dict
2008-07-02T11:16:04 <zenhase> a nice short talk from Vilayanur Ramachandran about some brain phenomenas
2008-07-02T11:16:36 <zenhase> now for some work :)
2008-07-02T11:28:34 <ThomasWaldmann> gizmach: if you want me to look at a change, then please provide a diff
2008-07-02T11:29:58 <ThomasWaldmann> and i think the GM should be initialized in the config, makes it more flexible
2008-07-02T11:30:38 <ThomasWaldmann> using the "name" as you did is wrong anyway :)
2008-07-02T11:31:43 <ThomasWaldmann> and the comments there are misleading
2008-07-02T11:31:59 <ThomasWaldmann> group_members = gm[entry] # get members of a group
2008-07-02T11:32:33 <ThomasWaldmann> attribute name is also misleading
2008-07-02T11:35:01 <gizmach> http://paste.pocoo.org/show/78337/ thomas
2008-07-02T11:35:27 <gizmach> well when I defined name before it took that string to be my name
2008-07-02T11:35:28 <ThomasWaldmann> and remember pep8
2008-07-02T11:35:40 <gizmach> ThomasWaldmann: ok I didn't check pep8 yet
2008-07-02T11:35:55 <ThomasWaldmann> you just put a blank after a comma
2008-07-02T11:36:59 <gizmach> ok will initialize the gm in config right now and check pep8
2008-07-02T11:37:46 <gizmach> but for the string in the GM deffinition what should I put
2008-07-02T11:39:22 <ThomasWaldmann> that's not your problem, the one writing the config can use any name he/she wants
2008-07-02T11:40:14 <ThomasWaldmann> if we stay with that approach that we only have 1 GM anyway (because it is handling all we need) it does not need a name at all
2008-07-02T11:40:16 <gizmach> ThomasWaldmann: ok that's better
2008-07-02T11:40:25 <gizmach> :)
2008-07-02T11:40:50 <ThomasWaldmann> s/group_members/group/
2008-07-02T11:40:52 <gizmach> than I can remove the name,..
2008-07-02T11:40:57 <gizmach> yes
2008-07-02T11:41:06 <ThomasWaldmann> s/gm/group_manager/
2008-07-02T11:41:34 <gizmach> ok :)
2008-07-02T11:41:52 <ThomasWaldmann> and for the cfg, I guess i also rather tend to group_manager (not groups)
2008-07-02T11:42:05 <gizmach> true :)
2008-07-02T11:42:15 <ThomasWaldmann> although groups is short and nice, it misses the point a bit
2008-07-02T11:42:19 <gizmach> also now I changed in the wikiconfig
2008-07-02T11:42:50 <ThomasWaldmann> also, if someone defines configured groups, he maybe likely uses groups for this purpose
2008-07-02T11:44:09 * ThomasWaldmann has another change idea pending after we have finished this one
2008-07-02T11:44:21 <gizmach> heh cool
2008-07-02T11:46:44 <ThomasWaldmann> (maybe you will have the same idea if you just read the code in that loop again)
2008-07-02T11:48:40 <gizmach> groups + acls together ? while defined groups?
2008-07-02T11:49:23 <ThomasWaldmann> hm?
2008-07-02T11:52:09 <ThomasWaldmann> btw, update pastebin when you're done
2008-07-02T12:15:32 <dennda> morning
2008-07-02T12:15:41 <dennda> johill: back now
2008-07-02T12:18:38 <johill> I had just been thinking about next stuff but, alas, we probably should discuss that later in a larger group (allowing me to get some lunch now) :)
2008-07-02T12:19:03 <dennda> enjoy your meal
2008-07-02T12:19:10 * xorAxAx will go to the mensa as well
2008-07-02T12:19:17 <xorAxAx> johill: should we meet again? :)
2008-07-02T12:19:48 <johill> xorAxAx: hmm and get back here at 1? or I guess I can take my laptop
2008-07-02T12:20:01 <johill> and have irc meeting from there
2008-07-02T12:20:02 <xorAxAx> johill: we can use mine
2008-07-02T12:20:14 <dennda> the both of you together?
2008-07-02T12:20:17 <dennda> that will cause confusion :)
2008-07-02T12:20:20 <johill> but I need at least 15 minutes to get to uni
2008-07-02T12:20:25 <xorAxAx> me too
2008-07-02T12:21:09 <johill> ok meet at about 35-40 down at the mensa stairs then?
2008-07-02T12:21:18 <xorAxAx> rather 12:40
2008-07-02T12:21:33 * xorAxAx &
2008-07-02T12:21:34 <johill> quite short for having lunch till 1 but heh ok we can always use laptops there
2008-07-02T12:22:09 <dennda> johill: I'll have some questions later
2008-07-02T12:23:40 <gizmach> http://paste.pocoo.org/show/78341/ and http://paste.pocoo.org/show/78340/ I think I replace everything
2008-07-02T12:24:33 <gizmach> and for changing the code, I meant something that won't work , nwm
2008-07-02T12:26:59 * gizmach takes a bit rest for food until 1
2008-07-02T12:49:40 <xorAxAx> hehe, the mensa queues ran up to the bottom
2008-07-02T12:49:56 <xorAxAx> so we diverted to the pizza place at our uni :)
2008-07-02T12:53:17 * ThomasWaldmann .oO(meeting in 8 minutes)
2008-07-02T12:54:54 <ThomasWaldmann> waldi: are you there?
2008-07-02T12:55:31 <ThomasWaldmann> (he told yesterday that he might be not here, but still worth a try)
2008-07-02T12:57:19 <ThomasWaldmann> ok, i take that as a no. zenhase / mitsuhiko - are your here?
2008-07-02T12:59:43 <xorAxAx> mitsuhiko has been idle for 15 hours
2008-07-02T13:00:56 <ThomasWaldmann> zenhase missed last meeting.
2008-07-02T13:01:10 <xorAxAx> he has been idle for 100 minutes
2008-07-02T13:01:26 <ThomasWaldmann> ok, the 2nd meeting is now officially happening.
2008-07-02T13:01:41 <ThomasWaldmann> waldi is missing (he announced it before)
2008-07-02T13:01:59 <ThomasWaldmann> zenhase and mitsuhiko are missing (unexcused iirc)
2008-07-02T13:02:00 <xorAxAx> hmm, can we disapprove mentors at midterm review because they didnt join the meeting? :)
2008-07-02T13:02:23 <ThomasWaldmann> dreimark: are you there?
2008-07-02T13:02:44 <gizmach> re
2008-07-02T13:02:49 <gizmach> ThomasWaldmann: dreimark is not here
2008-07-02T13:03:02 <gizmach> he said he will be away for almost the whole day
2008-07-02T13:03:07 <gizmach> but you can handle me
2008-07-02T13:03:21 <ThomasWaldmann> ok, so gizmach, it is your stage :)
2008-07-02T13:03:23 <xorAxAx> hehe, handle :)
2008-07-02T13:03:33 <gizmach> xorAxAx: :P
2008-07-02T13:03:34 <gizmach> ok
2008-07-02T13:03:45 <gizmach> well I pasted the last things I done
2008-07-02T13:04:17 <gizmach> my job for the last few days was enabling config backend with acls
2008-07-02T13:04:18 <xorAxAx> when did you paste it?
2008-07-02T13:04:28 <gizmach> <gizmach> http://paste.pocoo.org/show/78341/ and http://paste.pocoo.org/show/78340/ I think I replace everything
2008-07-02T13:04:38 <xorAxAx> byegonweon: are you with us? just checking :)
2008-07-02T13:04:49 <byegonweon> I'm here
2008-07-02T13:05:07 <gizmach> and I done some debug tracing so I think this works, didn't write tests yet
2008-07-02T13:05:21 <xorAxAx> gizmach: hmm, how is that related to acls?
2008-07-02T13:05:30 <xorAxAx> i think acls actually use groups, but thats another layer :)
2008-07-02T13:05:47 <xorAxAx> gizmach: did you think about the outstanding caching design issues?
2008-07-02T13:05:57 <gizmach> xorAxAx: not yet
2008-07-02T13:06:43 <gizmach> I make acls use config backend defined in the wikiconfig
2008-07-02T13:06:54 <xorAxAx> hmm, are those diffs the only changes that you did in the last 7 days?
2008-07-02T13:07:02 <ThomasWaldmann> xorAxAx: acl code needs a small change due to different api
2008-07-02T13:07:11 <xorAxAx> yeah
2008-07-02T13:07:23 <gizmach> xorAxAx: no, but some of them I needed to revert
2008-07-02T13:07:41 <gizmach> because it was the wrong things I done
2008-07-02T13:07:47 <ThomasWaldmann> well, progress is extremely slow
2008-07-02T13:08:05 <xorAxAx> hmm, when did we hand out the api skeleton
2008-07-02T13:08:20 <gizmach> ThomasWaldmann: I know :(
2008-07-02T13:08:22 <xorAxAx> johill and me will be back in 120 secs
2008-07-02T13:08:29 <ThomasWaldmann> if one just looks at the code, one could think you work for 1h/week, not as your major summer job
2008-07-02T13:09:15 <ThomasWaldmann> so I suggest, you raise priority for this job dramatically :)
2008-07-02T13:09:28 <gizmach> ThomasWaldmann: it's the only priority now
2008-07-02T13:09:28 <gizmach> :)
2008-07-02T13:10:15 <ThomasWaldmann> ok, then you should be able to have working "configured group" acls today
2008-07-02T13:10:29 <ThomasWaldmann> and some tests proving it
2008-07-02T13:10:32 <gizmach> ThomasWaldmann: I think so
2008-07-02T13:10:33 <gizmach> ok
2008-07-02T13:10:34 <gizmach> :)
2008-07-02T13:11:09 <ThomasWaldmann> wikiconfig looks ok now, btw
2008-07-02T13:11:13 <xorAxAx> hmm
2008-07-02T13:11:24 <gizmach> ThomasWaldmann: ok, at least something
2008-07-02T13:11:59 * ThomasWaldmann would maybe move the datastruct import to be directly above where it is used for a sample config, but that is just cosmetics
2008-07-02T13:12:00 * dreimark watches (got 10mins)
2008-07-02T13:12:32 <gizmach> ThomasWaldmann: will put it there
2008-07-02T13:12:33 <ThomasWaldmann> how long is it until midterm from now?
2008-07-02T13:12:48 <gizmach> 2 weeks?
2008-07-02T13:12:54 <byegonweon> 1weeks?
2008-07-02T13:13:04 <ThomasWaldmann> gizmach: did you fix the comments to be not misleading?
2008-07-02T13:13:09 <xorAxAx> review will start on 9th
2008-07-02T13:13:11 <ThomasWaldmann> and the attr names?
2008-07-02T13:13:16 <xorAxAx> or 7th?
2008-07-02T13:13:40 <gizmach> ThomasWaldmann: in the security/__init__.py? yes
2008-07-02T13:13:41 <ThomasWaldmann> ok, we will find the right dates later, but obviously it is approaching fast
2008-07-02T13:13:47 <byegonweon> start on 7th. on my google calendar about gsoc
2008-07-02T13:14:23 <xorAxAx> so 5 days left
2008-07-02T13:14:38 <ThomasWaldmann> gizmach: any definite blockers?
2008-07-02T13:15:31 <gizmach> ThomasWaldmann: for the congif backend not
2008-07-02T13:15:50 <gizmach> but my next step will be caching or something else?
2008-07-02T13:16:07 <dreimark> wikipage groups
2008-07-02T13:16:17 <gizmach> dreimark: ok
2008-07-02T13:16:26 <dreimark> and while working on this thinking about caching
2008-07-02T13:16:39 <ThomasWaldmann> well, looking at the time, the main thing is to produce a reasonable amount of reasonable code :)
2008-07-02T13:16:52 <ThomasWaldmann> the caching stuff might need quite some thinking
2008-07-02T13:17:01 <gizmach> ok
2008-07-02T13:17:45 <ThomasWaldmann> byegonweon: your stage
2008-07-02T13:17:54 <byegonweon> last meeting, what I told you mainly is making fckeditor work on firefox.
2008-07-02T13:17:58 <ThomasWaldmann> gizmach: we'll continue discussign afterwards
2008-07-02T13:18:02 <byegonweon> now, It works on firefox well. still have some problem such as unicode encoding problem :)
2008-07-02T13:18:03 <gizmach> ThomasWaldmann: ok
2008-07-02T13:18:14 <byegonweon> since last wednesday, I fixed smiley plugin and fckeditor's tidy behavior on safari browser.
2008-07-02T13:18:16 <xorAxAx> byegonweon: thats the one related to the single action, right?
2008-07-02T13:18:22 <byegonweon> yes.
2008-07-02T13:18:34 <byegonweon> this working almost done and recent version of fckeditor have some bug about process tag on safari. so I try to fix that.
2008-07-02T13:19:00 <ThomasWaldmann> xorAxAx: i that encoding trouble is rather in the python code, can you help fixing that?
2008-07-02T13:19:10 <xorAxAx> ThomasWaldmann: not sure i want to touch that code :)
2008-07-02T13:19:17 <xorAxAx> we'll see
2008-07-02T13:19:41 <xorAxAx> byegonweon: ok, are there any moin-specific fckeditor plugins that still need to be fixed?
2008-07-02T13:20:10 <byegonweon> xorAxAx: works on firefox. almost well.
2008-07-02T13:20:18 <xorAxAx> almost? :)
2008-07-02T13:20:23 <byegonweon> xorAxAx: but I will check on other browser.
2008-07-02T13:20:33 <byegonweon> almost mean (as I know)
2008-07-02T13:20:49 <xorAxAx> ok
2008-07-02T13:20:58 <xorAxAx> regarding the deliverables that you set yourself:
2008-07-02T13:21:03 <xorAxAx> you promised "make more testcase for fckeditor"
2008-07-02T13:21:11 <xorAxAx> and " improve usability"
2008-07-02T13:21:24 <xorAxAx> besides that, you seem to have fulfilled most deliverables that you set for yourself
2008-07-02T13:21:36 <xorAxAx> when do you think will you approach those items?
2008-07-02T13:22:24 <byegonweon> most of all. I make editor works fine.
2008-07-02T13:22:35 <CIA-53> Johannes Berg <johannes AT sipsolutions DOT net> default * 4236:0b7eefba0c6f 1.8-storage-cdenter/MoinMoin/ (9 files in 6 dirs): merge 1.8
2008-07-02T13:22:36 <byegonweon> then other things can do.
2008-07-02T13:23:39 <xorAxAx> so, when do you plan to have some kind of js-driven tests for the editor?
2008-07-02T13:23:43 <byegonweon> I think hardest things that editor doesn't work are fixed or will fix soon.
2008-07-02T13:24:30 <byegonweon> to tell the truth. I try that job after this week.
2008-07-02T13:24:43 <ThomasWaldmann> byegonweon: didn't you want to add some comments to selection plugin about what it is / what it does exactly?
2008-07-02T13:25:34 <byegonweon> yes. I told you I want to refactoring selection plugin.
2008-07-02T13:25:38 <xorAxAx> cool
2008-07-02T13:25:50 <byegonweon> but I didn't do that. because of other jobs.
2008-07-02T13:25:58 <xorAxAx> so besides the bug on safari, we dont have any large blocker right now
2008-07-02T13:26:05 <byegonweon> just wait few days please.
2008-07-02T13:26:16 <ThomasWaldmann> ok, don't forget it. If selection is something you have fixed, you should now know best what it does. :)
2008-07-02T13:26:30 <byegonweon> thank :)
2008-07-02T13:26:52 <byegonweon> xorAxAx: yes, we don't have big bugs. unitil now :)
2008-07-02T13:27:14 <johill> byegonweon: small thing I just noticed: the macro icon has [[M]] instead of <<M>> on the icon, it wasn't updated for the new syntax, might want to fix it
2008-07-02T13:27:27 <ThomasWaldmann> byegonweon: did you practically test gui editor with some bigger pages, like HelpOnMoinWikiSyntax?
2008-07-02T13:27:58 <byegonweon> johill: thanks. I will check that.
2008-07-02T13:28:25 <byegonweon> ThomasWaldmann: I didn't check that kind of large page. I will check that also after this meeting
2008-07-02T13:28:27 <johill> TheSheep: the universal edit button should link to the gui editor if that's the user's preference :)
2008-07-02T13:29:04 <byegonweon> what I do this week is.
2008-07-02T13:29:22 <ThomasWaldmann> byegonweon: when practically trying to work with fckeditor in moin, I sometimes found very strange behaviour (like complete moin web pages showing in something that should've been some dialogue rather).
2008-07-02T13:29:40 <ThomasWaldmann> johill: iirc that works
2008-07-02T13:30:04 <ThomasWaldmann> byegonweon: did you already see that or fix it?
2008-07-02T13:30:34 <johill> ThomasWaldmann: oh the edit action does that? ok
2008-07-02T13:30:51 <byegonweon> ThomasWaldmann: I didn't that kind of behavior.
2008-07-02T13:31:21 <ThomasWaldmann> byegonweon: ok, I'll try to reproduce it using your repo content.
2008-07-02T13:31:26 <byegonweon> ThomasWaldmann: but few things change just replace editor with new one. :)
2008-07-02T13:31:37 <xorAxAx> just by replacing ...
2008-07-02T13:31:40 <xorAxAx> the
2008-07-02T13:31:41 <byegonweon> hehe.
2008-07-02T13:31:55 <xorAxAx> ok, i think we can talk to the next student
2008-07-02T13:32:19 <ThomasWaldmann> byegonweon: sorry, I interrupted you after "what i do this week is ..."
2008-07-02T13:33:01 <xorAxAx> indeed
2008-07-02T13:33:51 <byegonweon> ThomasWaldmann: never mind. what I do this week is make editor works fine on other browser :)
2008-07-02T13:34:46 <ThomasWaldmann> rather unspecific, but no problem if you reach that goal :))
2008-07-02T13:35:05 <ThomasWaldmann> ok, thanks byegonweon, johill and dennda: your stage :)
2008-07-02T13:35:17 <xorAxAx> it if doesnt work on lynx or links, i will be not amused ;_)
2008-07-02T13:35:31 <ThomasWaldmann> :P
2008-07-02T13:35:44 <byegonweon> xorAxAx: hehe.
2008-07-02T13:35:50 * ThomasWaldmann will try telnet
2008-07-02T13:36:06 <johill> dennda: ?
2008-07-02T13:36:21 <dennda> yes, sorry
2008-07-02T13:36:27 <dennda> had some mess in #ubuntu-de :)
2008-07-02T13:36:28 <dennda> here now
2008-07-02T13:36:44 <dennda> During this last week my plan was to finish the MemoryBackend.
2008-07-02T13:37:34 <dennda> That implied doing more things than I thought I had to, especially because we spotted a few mistakes in the implementation.
2008-07-02T13:38:21 <xorAxAx> heh
2008-07-02T13:38:24 <dennda> (i.e. create_item and commit_item not working than they were meant to)
2008-07-02T13:38:48 <dennda> Those have now been fixed and further additions are being made to the MemoryBackend that we discovered would be necessary in order to use it as real backend.
2008-07-02T13:39:08 <johill> are you thinking of news()
2008-07-02T13:39:09 <johill> ?
2008-07-02T13:39:10 <dennda> (Some methods)
2008-07-02T13:39:14 <dennda> and keys()
2008-07-02T13:39:56 <johill> ok but that keys() is just the generic code and yo udid that
2008-07-02T13:40:06 <dennda> yes, it's nothing big and fancy
2008-07-02T13:40:37 <dennda> Further tests have been added, too, but there still are some testcases that are missing that I will cover.
2008-07-02T13:40:38 <xorAxAx> byegonweon: also you stopped logging weekly progress on http://moinmo.in/MoonByeongweon/SOC2008
2008-07-02T13:40:56 <johill> right
2008-07-02T13:41:11 <PawelPacana> what is news()?
2008-07-02T13:41:35 <byegonweon> xorAxAx: yes. I will do that again.
2008-07-02T13:41:57 <dennda> PawelPacana: An optimized way to receive the latest logged events that have happened before $timestamp
2008-07-02T13:42:20 <dennda> (other than iterating over all items, checking their metadata and appending them to a list or something)
2008-07-02T13:42:31 <PawelPacana> ok
2008-07-02T13:42:37 <dennda> needed for "Recent Changes" for instance
2008-07-02T13:42:46 <johill> PawelPacana: we'll explain in more detail later, it's not hard
2008-07-02T13:42:47 <ThomasWaldmann> dennda: after
2008-07-02T13:43:08 <dennda> Shall I proceed?
2008-07-02T13:43:13 <johill> please
2008-07-02T13:43:15 <ThomasWaldmann> (otherwise it would be olds :)
2008-07-02T13:43:30 <dennda> What's up next is this:
2008-07-02T13:43:47 <dennda> ThomasWaldmann: True :)
2008-07-02T13:44:25 <dennda> - Complete tests for the abstract storage layer so that they can be used by other backends as well (I'll try to obey the rules of TDD more now that I have been branded by missing tests leading to mistakes.) -- That's the part where I will work with PawelPacana
2008-07-02T13:45:20 <xorAxAx> cool
2008-07-02T13:45:38 <dennda> - Make moin use the new storage API. I had a phone call with johill where we discussed that. I took a look at it and still have some questions. I will start with making Page.py and PageEditor.py work, so we can see something working. Then the other modules will be adjusted.
2008-07-02T13:46:20 <ThomasWaldmann> having something practically working would be nice :)
2008-07-02T13:46:51 <dennda> yes, that's the latter of those two TODOs and is fairly important to me
2008-07-02T13:47:14 <ThomasWaldmann> btw, does Page still have my hack of caching code?
2008-07-02T13:47:30 <johill> caching hack?
2008-07-02T13:47:39 <dennda> dunno what you mean by that
2008-07-02T13:47:48 <ThomasWaldmann> Page data/metadata caching in memory
2008-07-02T13:48:13 <ThomasWaldmann> maybe hwendel already removed it
2008-07-02T13:48:27 <xorAxAx> yes, he did
2008-07-02T13:48:32 <ThomasWaldmann> (if not: it should not stay)
2008-07-02T13:49:03 <johill> no idea
2008-07-02T13:49:05 <ThomasWaldmann> ok, guess it's time for PawelPacana. thanks dennda / johill.
2008-07-02T13:49:15 <johill> hey I have one point
2008-07-02T13:49:21 <xorAxAx> hmm, no TheSheep?
2008-07-02T13:49:31 <ThomasWaldmann> TheSheep: meh! :))
2008-07-02T13:49:32 <johill> I want to rearrange dennda's tasks to do attachfile before acls
2008-07-02T13:49:41 <dennda> johill: umm
2008-07-02T13:49:57 <johill> because ACLs are currently working and attachfile blocks storage
2008-07-02T13:50:20 <dennda> johill: We have a /slightly/ adjusted schedule anyway, now that I am into the whole thing, havn't we? :)
2008-07-02T13:50:21 <johill> dennda: do you like ACLs better?
2008-07-02T13:50:38 <TheSheep> ThomasWaldmann: sorry, I overslept a little
2008-07-02T13:50:54 <ThomasWaldmann> yeah, having something productively usable (even if no ACLs at the beginning) would be nice.
2008-07-02T13:51:17 <johill> yeah but having storage first and actually using all storage code would be good
2008-07-02T13:51:42 <johill> anyway, we can discuss later if nobody disagrees totally
2008-07-02T13:51:49 <ThomasWaldmann> yes. I really appreciate getting rid of AttachFile action :)
2008-07-02T13:52:09 <dennda> I do agree
2008-07-02T13:52:10 <ThomasWaldmann> most of that code was total crap.
2008-07-02T13:52:23 <ThomasWaldmann> got slightly better recently, but still crappy.
2008-07-02T13:52:27 <TheSheep> ThomasWaldmann: should there be a dummy action that will just do a redirect?
2008-07-02T13:52:28 <johill> we'll see. I'd probably think we should start out just porting atachfile to storage
2008-07-02T13:52:40 <johill> so the UI and stuff doesn't initially change
2008-07-02T13:52:54 <ThomasWaldmann> TheSheep: could be
2008-07-02T13:53:31 <xorAxAx> johill: makes senese
2008-07-02T13:53:39 <johill> anyway, nobody seems to say that ACLs are more important so let's talk to PawelPacana now
2008-07-02T13:53:44 <xorAxAx> the ui stuff is another large series of tasks anyway
2008-07-02T13:53:45 <ThomasWaldmann> johill: could be done like that, yes. but it will have to die soon later (we need some UI for it, though :).
2008-07-02T13:54:07 <johill> ThomasWaldmann: sure, but if we get it working like that we can, no matter how much dennda can do of that, still use the storage code
2008-07-02T13:54:33 <ThomasWaldmann> ok, i guess we have to talk about that later, so PawelPacana has the stage now :)
2008-07-02T13:54:35 <johill> I fear that because of the enormity of the task he won't be able to make new UI for everything, and would want to have the new storage api regardless
2008-07-02T13:55:03 <ThomasWaldmann> PawelPacana: are you there?
2008-07-02T13:55:09 <PawelPacana> sure
2008-07-02T13:55:20 <PawelPacana> my task was finishing implementing API methods to fully pass API tests, and
2008-07-02T13:55:23 <PawelPacana> researching/showing working-copy less commits
2008-07-02T13:55:28 <dennda> (By the way: There are a bunch of exams coming up next week that I am going to tackle, but fortunately this semester will be finished around the mid of this month, and then I got no other obligations than moin. :)) --- But now to PawelPacana
2008-07-02T13:55:58 <PawelPacana> I sadly admit, as seen during last seven days without commit, nothing of that has been done
2008-07-02T13:56:08 <PawelPacana> and I dont feel right about that
2008-07-02T13:56:16 <PawelPacana> there were many external factors which distracted me from my main summer task:
2008-07-02T13:56:22 <PawelPacana> friday exam, collecting end-of-semester-paperwork, unsuccesful searching for a new flat,
2008-07-02T13:56:30 <PawelPacana> inally moving from the old flat to student house (yesterday)
2008-07-02T13:56:52 <PawelPacana> I dont want to excuse myself, rather get back to work, as there is no much time
2008-07-02T13:57:13 <PawelPacana> now there aren't any distracting facotrs left and I can fully concentrate
2008-07-02T13:57:18 <ThomasWaldmann> so you'll stay at the student house for the next weeks/months?
2008-07-02T13:57:29 <PawelPacana> for the next month
2008-07-02T13:57:40 <PawelPacana> and the journey will begin once again
2008-07-02T13:58:01 <ThomasWaldmann> maybe it would be a good idea to delay that journey until after soc?
2008-07-02T13:58:47 <PawelPacana> probably, but there is no posssibility of staying here longer
2008-07-02T13:58:59 <ThomasWaldmann> oh :|
2008-07-02T13:59:23 <ThomasWaldmann> well, you'll manage it :)
2008-07-02T13:59:36 <PawelPacana> plan for this week is basically last weeks plan, except in shorter time
2008-07-02T13:59:36 <ThomasWaldmann> just try to not lose too much time
2008-07-02T14:00:07 <PawelPacana> and there is EP soon, and I'll stay on sprint
2008-07-02T14:00:30 <ThomasWaldmann> ah, cool :) So we'll have some hacking there :)
2008-07-02T14:00:38 <dennda> EP?
2008-07-02T14:00:40 <PawelPacana> sure :)
2008-07-02T14:01:05 <ThomasWaldmann> Pity that TheSheep seems not to stay for sprints.
2008-07-02T14:01:30 * ThomasWaldmann hopes to get some spare parts for his damaged notebook before leaving for EP.
2008-07-02T14:01:41 <johill> dennda: europython I gather
2008-07-02T14:02:10 <ThomasWaldmann> otherwise I maybe have to work on my OLPC laptop
2008-07-02T14:02:44 <ThomasWaldmann> ok, looks like the official part of the meeting is done. Happy hacking! :)
2008-07-02T14:03:08 <ThomasWaldmann> zenhase: waldi: we'll talk later today.
2008-07-02T14:03:51 <xorAxAx> ThomasWaldmann: the same one you had in egypt?
2008-07-02T14:05:58 <ThomasWaldmann> yes, still the same. but this time it is maybe not manufacturors fault.
2008-07-02T14:06:27 <johill> dennda: so what questions did you have?
2008-07-02T14:06:40 <ThomasWaldmann> i had heavy fs trouble and first thought that just the CF flash media was worn out,
2008-07-02T14:07:03 <ThomasWaldmann> but after inserting a new SSD, i also had bit errors on it.
2008-07-02T14:07:26 <ThomasWaldmann> Currently main suspect is the special ide cable going from the disk to the mainboard.
2008-07-02T14:08:04 * xorAxAx -> gone
2008-07-02T14:08:17 <dennda> johill: Page.py line 86
2008-07-02T14:08:18 <ThomasWaldmann> (if I held the ssd outside, it worked, as soon as put inside, bowing/stretching the cable, it was erroneous)
2008-07-02T14:08:35 <dennda> self._items = ItemCollection(request.cfg.data_backend, request)
2008-07-02T14:08:46 <johill> hm?
2008-07-02T14:08:48 <dennda> How do I transform that? What is request?
2008-07-02T14:11:41 <ThomasWaldmann> gizmach: if you have questions while working on stuff, just post.
2008-07-02T14:11:46 <johill> you don't need to transform that
2008-07-02T14:11:57 <johill> ItemCollection is just the API proxy thing lanius had
2008-07-02T14:12:03 <dennda> I thought we were getting rid of ItemCollection
2008-07-02T14:12:09 <johill> just replace it by the backend
2008-07-02T14:12:11 <johill> yeah
2008-07-02T14:12:28 <johill> so if you want to keep self._items assign request.cfg.data_backend to it, or just remove it alltogether
2008-07-02T14:12:30 <dennda> That cannot work
2008-07-02T14:12:40 <johill> and use request.cfg.data_backend instead where self._items is used
2008-07-02T14:12:51 <johill> why not?
2008-07-02T14:12:57 <dennda> yes, *that* is going to work
2008-07-02T14:13:18 <dennda> well I obviously can't just do s/ItemCollection/Backend/ :)
2008-07-02T14:13:25 <gizmach> ThomasWaldmann: ok, will write a test for that what I've done to prove this part works
2008-07-02T14:13:33 <johill> heh yeah. well it's probably simpler to just remove ._items and see where it's used
2008-07-02T14:13:44 <gizmach> also do I need to enable config backend somewhere else?
2008-07-02T14:13:52 <johill> and use (self.)request.data_backend instead in those places
2008-07-02T14:13:57 <ThomasWaldmann> gizmach: see other tests about how to modify cfg from a test
2008-07-02T14:14:14 <ThomasWaldmann> TestConfig iirc
2008-07-02T14:14:16 <gizmach> ThomasWaldmann: ok
2008-07-02T14:14:18 <dennda> yes, just trying to catch the cases where we want our api-violation-runtimeerror to be raised
2008-07-02T14:14:56 <johill> any time you try to nest change_metadata and create_revision
2008-07-02T14:15:21 <dennda> sure
2008-07-02T14:15:24 <johill> i.e. in Item.create_revision add
2008-07-02T14:15:28 <johill> assert not self._locked
2008-07-02T14:15:33 <johill> and in Item.change_metadata add
2008-07-02T14:15:43 <johill> assert self._new_revision is None
2008-07-02T14:15:47 <johill> (or whatever that variable was)
2008-07-02T14:16:16 <dennda> yes, did it similar on the backend but that was a bit stupid
2008-07-02T14:16:37 <johill> self._uncommitted_revision
2008-07-02T14:16:49 <johill> that's it
2008-07-02T14:16:56 <johill> basically, a test or two would be good
2008-07-02T14:17:57 <dennda> yes, I adjusted yours
2008-07-02T14:18:03 <johill> (oh and I just realised you forgot to add/implement Item.rollback())
2008-07-02T14:18:35 <dennda> oops
2008-07-02T14:18:36 <johill> but you can leave that out for now too
2008-07-02T14:18:56 <dennda> takes just a minute
2008-07-02T14:19:24 <johill> don't forget the membackend implementation :)
2008-07-02T14:20:57 <dennda> What else do you want to have there?
2008-07-02T14:21:15 <dennda> Afair we talked about that and the only thing we came up with was setting _uncommitted_revision to None
2008-07-02T14:21:33 <johill> nothing for the memory backend
2008-07-02T14:21:47 <dennda> then it's implemented now
2008-07-02T14:21:53 <johill> except maybe setting the revision object to be invalid
2008-07-02T14:22:04 <johill> so ou can no longer write to it after rollback
2008-07-02T14:22:15 <johill> similar to how you cannot write after commit (or is that not implemented?)
2008-07-02T14:22:37 <dennda> write to a revision after it has been committed?
2008-07-02T14:22:55 <johill> yeah what happens if you try that?
2008-07-02T14:23:21 <dennda> you get an assertionerror
2008-07-02T14:23:23 <johill> anyway, don't spend too much time on that, it's just another api abuse corner case
2008-07-02T14:23:28 <johill> ok cool
2008-07-02T14:23:50 <dennda> http://paste.pocoo.org/show/78349/
2008-07-02T14:24:48 <johill> ah but I was thinking the second rev.write() should already give an error
2008-07-02T14:25:35 <johill> but it's not too important at this point
2008-07-02T14:25:39 <dennda> well "rev" is still bound to that NewRevision object
2008-07-02T14:25:58 <dennda> you'd need to check that seperately
2008-07-02T14:26:05 <johill> yeah it's easyyeah
2008-07-02T14:26:30 <johill> don't worry about it
2008-07-02T14:26:39 <johill> I think you should focus on getting Page stuff working now
2008-07-02T14:29:47 <dennda> 30 degree in shadowed places
2008-07-02T14:31:30 <johill> battery low, I'll have to leave
2008-07-02T14:32:27 <xorAxAx> 100 min. left :)
2008-07-02T14:32:39 <xorAxAx> TP:mac -- 1:0
2008-07-02T14:33:18 <CIA-53> Christopher Denter <moin GUESSWHAT the DASH space DASH station PERIOD com> default * 4237:782d832e23f2 1.8-storage-cdenter/MoinMoin/storage/ (__init__.py _tests/test_backends_memory.py): storage: Forgot to define Item.rollback(). Doing so. If you do nested Item metadata and Revision manipulation you will now receive a RuntimeError reflecting your API-abuse. Adjusting two tests to cover those cases.
2008-07-02T14:34:14 <dennda> My lappie has power for >4h with the small battery and around 7h with the large one :)
2008-07-02T14:35:09 <TheSheep> hehe, mine has power for 1h...
2008-07-02T14:35:40 <TheSheep> it's going to be a loong trip to Vilnus
2008-07-02T14:37:44 <ThomasWaldmann> sounds like you'll need some good book also :)
2008-07-02T14:38:30 <xorAxAx> i once got a submission by student for homework (they have to submit real paper). it were 41 pages - mostly printed code.
2008-07-02T14:38:38 <xorAxAx> i wonder if that would work with moin's code :)
2008-07-02T14:38:57 <TheSheep> xorAxAx: converted to whitespace to allow recycling
2008-07-02T14:39:07 <xorAxAx> TheSheep: nah, but 5 pt. font
2008-07-02T14:39:16 <xorAxAx> so it was as readable as a printed whitespace program
2008-07-02T14:39:23 <TheSheep> moin's code doesn't follow the 80 columns limit, so it wouldn't print nicely
2008-07-02T14:39:36 <xorAxAx> landscape printing
2008-07-02T14:40:02 <TheSheep> on toilet paper
2008-07-02T14:54:48 <CIA-53> Thomas Waldmann <tw AT waldmann-edv DOT de> default * 3741:26240254340b 1.7/MoinMoin/theme/__init__.py: avoid creating of new pagedirs with empty edit-log files by just accessing a non-existant page
2008-07-02T15:09:26 <johill> xorAxAx: my battery is broken... I guess you win on that too, it's my third one in just over three years
2008-07-02T15:09:54 <xorAxAx> i remember that story :)
2008-07-02T15:10:02 <xorAxAx> indeed. i still have my original ones
2008-07-02T15:11:53 <dennda> Any of you coming to froscon?
2008-07-02T15:12:47 <johill> Any of you going to OLS ;)
2008-07-02T15:14:08 <dennda> hehe
2008-07-02T15:42:58 <johill> dennda: can you do get_revision(-1) quickly?
2008-07-02T15:56:00 <dennda> yep, just a sec
2008-07-02T16:00:52 <CIA-53> Christopher Denter <moin GUESSWHAT the DASH space DASH station PERIOD com> default * 4238:44a168640ff1 1.8-storage-cdenter/MoinMoin/storage/ (__init__.py backends/memory.py): storage: adding sugar: If you call item.get_revision(-1) you receive the last revision of that item.
2008-07-02T16:01:12 <dennda> johill: there you go
2008-07-02T16:01:55 <johill> :)
2008-07-02T16:04:35 <dennda> oh forgot a corner case
2008-07-02T16:04:42 <johill> hm?
2008-07-02T16:05:18 <TheSheep> dennda: how about full slicing interface? ;)
2008-07-02T16:05:25 <johill> ah
2008-07-02T16:05:27 <johill> ValueError: max() arg is an empty sequence
2008-07-02T16:05:52 <dennda> yes
2008-07-02T16:05:55 <dennda> but easy, just a sec
2008-07-02T16:06:10 <TheSheep> you killed cia! ;)
2008-07-02T16:07:38 <dennda> not my fault :<
2008-07-02T16:08:45 <xorAxAx> well, its shared by a few other projects :)
2008-07-02T16:10:05 <johill> hmmm. what sort of storage backend do we want to be default after this? an improved filesystem storage?
2008-07-02T16:10:31 <xorAxAx> couchdb? <duck>
2008-07-02T16:10:33 <dennda> memory
2008-07-02T16:10:46 <xorAxAx> appengine? <duck>
2008-07-02T16:11:16 <dennda> you don't want to force people to have sql or hg installed, do you?
2008-07-02T16:11:24 <dennda> force is a bad word here
2008-07-02T16:11:58 <xorAxAx> yes, thats the idea
2008-07-02T16:12:08 <xorAxAx> of moin
2008-07-02T16:12:30 <xorAxAx> so generally, a backend is needed which is fine with the fs only
2008-07-02T16:12:36 <johill> yeah
2008-07-02T16:12:48 <johill> I'm trying to design one that can work properly
2008-07-02T16:13:14 <dennda> hm, the only case where an item can have zero revisions is when it has not been committed yet
2008-07-02T16:13:29 <johill> no
2008-07-02T16:13:33 <johill> it can have metadata and no revisions
2008-07-02T16:13:43 <dennda> yes, and in that case, it has not been committed yet
2008-07-02T16:13:48 <johill> think user storage or newly created and locked items
2008-07-02T16:13:52 <dennda> publish != commit
2008-07-02T16:13:59 <johill> ok true, but it's still persistent already
2008-07-02T16:14:03 <dennda> yes
2008-07-02T16:15:22 <TheSheep> xorAxAx: /dev/random backend ;)
2008-07-02T16:15:47 <xorAxAx> TheSheep: nah, you cant write to it. /dev/null is better for that
2008-07-02T16:16:00 <xorAxAx> but it could use /dev/random for page reassembly [tm]
2008-07-02T16:16:06 <TheSheep> xorAxAx: you can't read from it
2008-07-02T16:16:16 <TheSheep> yeah, lossy compression
2008-07-02T16:16:39 <dennda> ok there
2008-07-02T16:16:51 <dennda> now it raises NoSuchRevisionError if you want -1 and there are no revisions
2008-07-02T16:18:55 <johill> ok
2008-07-02T16:28:00 <johill> how many pages do large wikis have?
2008-07-02T16:28:25 <xorAxAx> ~ 10000
2008-07-02T16:28:38 <xorAxAx> (large moin wikis)
2008-07-02T16:30:56 <johill> wikipedia has on the order of 2.5e6
2008-07-02T16:30:56 <TheSheep> mine got slow after creating ~800 group pages ;)
2008-07-02T16:31:01 <TheSheep> user group, that is
2008-07-02T16:31:19 <johill> that's reasonable
2008-07-02T16:31:25 <johill> I'm thinking about assigning IDs randomly
2008-07-02T16:34:59 <johill> I can only create about 128k dirs on tmpfs
2008-07-02T16:35:17 <johill> I guess at that scale you should think about bigger storage schemes :)
2008-07-02T16:36:38 <xorAxAx> tmpfs sounds like well suited for the amnesia backend :)
2008-07-02T16:39:02 <dennda> amnesia backend == memory backend?
2008-07-02T16:40:05 <zenhase> i find the name a bit disturbing ;)
2008-07-02T16:40:22 <dennda> I like it
2008-07-02T16:40:48 <zenhase> the erlang guys were similarily funny with calling their distributed fault-tolerant tuplespace database 'mnesia'
2008-07-02T16:43:22 <xorAxAx> :)
2008-07-02T16:43:41 <dennda> xorAxAx: Did you mean the memorybackend?
2008-07-02T16:43:46 <dennda> I like that name more, actually
2008-07-02T16:43:53 <xorAxAx> dennda: well, he is trying to store files on a tmpfs :)
2008-07-02T16:44:05 <xorAxAx> the memory backend doent have a fs layer
2008-07-02T16:44:17 <dennda> xorAxAx: Sure, but it suffers from amnesia, too
2008-07-02T16:44:33 <dennda> so if that name is not already taken I'd think about using it :)
2008-07-02T16:44:49 <johill> you get moin working on it first ;)
2008-07-02T17:02:09 <dreimark> re
2008-07-02T17:11:02 <johill> hrm
2008-07-02T17:11:30 <johill> I don't think we can enforce that revision metadata is written before revision data, can we?
2008-07-02T17:12:34 <johill> or rather, should
2008-07-02T17:13:56 <johill> although that would be very useful
2008-07-02T17:15:02 <johill> thoughts?
2008-07-02T17:22:21 <TheSheep> johill: maybe commit could commit both?
2008-07-02T17:22:38 <TheSheep> johill: we were planning to store the revision metadata in the commit message...
2008-07-02T17:23:16 <johill> commit does commit both
2008-07-02T17:23:17 <TheSheep> johill: having them commited independently forces to check and make the real commit in whichever comes last
2008-07-02T17:23:32 <johill> I just wonder whether it should all be assigned before actually writing data
2008-07-02T17:23:43 <johill> say
2008-07-02T17:23:47 <johill> rev = item.new_revision(7)
2008-07-02T17:23:51 <johill> rev['a'] = 'b'
2008-07-02T17:23:55 <johill> rev.write('abc')
2008-07-02T17:23:56 <johill> would be ok
2008-07-02T17:24:02 <johill> but doing the last two lines the other way around wouldn't be
2008-07-02T17:24:12 <johill> it seems like a fairly artificial restriction though
2008-07-02T17:24:25 <johill> http://moinmo.in/JohannesBerg/FilesystemStorage
2008-07-02T17:25:16 <dreimark> bbl
2008-07-02T17:34:33 <johill> TheSheep: "Creating a revision" is the problem
2008-07-02T17:35:49 <TheSheep> johill: can't you just keep it in memory until you commit?
2008-07-02T17:36:04 <johill> yeah but you want to have metadata first in the file so it's cheaper to access
2008-07-02T17:36:19 <johill> and you want to write the data directly to the file to avoid keeping it in memory
2008-07-02T17:37:44 <johill> the only thing I'm worried about a bit is the locking of the name2id thing
2008-07-02T17:40:20 <xorAxAx> huh
2008-07-02T17:40:30 <xorAxAx> another name please :)
2008-07-02T17:40:38 <johill> hehe
2008-07-02T17:41:16 * johill renames to name-mapping
2008-07-02T17:41:37 <johill> so far I haven't come up with a good way to have a mutable file w/o requiring locking
2008-07-02T17:41:45 <johill> or lots of fsync
2008-07-02T17:45:43 <johill> the current storage design avoids that problem by making renames impossible to handle well
2008-07-02T17:45:55 <johill> and having some people run into file length limits
2008-07-02T17:50:16 <waldi> boah ...
2008-07-02T17:50:37 <waldi> moin
2008-07-02T17:53:26 <johill> I wonder if it's too expensive to use something like tcdb and rebuild the idnex all the time
2008-07-02T17:53:48 <johill> let's just try
2008-07-02T17:58:17 <TheSheep> johill: you know how mercurial handles it?
2008-07-02T17:58:25 <TheSheep> johill: they have a pretty neat file format
2008-07-02T17:58:43 <TheSheep> append-only
2008-07-02T18:02:00 <TheSheep> johill: I guess stroing metadata in a separate file is out of the question?
2008-07-02T18:02:05 <TheSheep> storing
2008-07-02T18:02:10 <johill> well it seems very space inefficient
2008-07-02T18:02:24 <TheSheep> depends on the filesystem :)
2008-07-02T18:02:57 <TheSheep> but you have the benefit of being able to read the files directly from behind the scenes
2008-07-02T18:03:05 <TheSheep> e.g. images would get thumbnails
2008-07-02T18:03:56 <TheSheep> johill: what about keeping metadata of all revision in a single, append-only file, and the data of revisions in separate files?
2008-07-02T18:05:01 <johill> then you have to seek around a lot for accessing the last revision's metadata which is the most common operation
2008-07-02T18:06:14 <TheSheep> johill: how about you store the index of last record somewhere at the beginning?
2008-07-02T18:06:28 <TheSheep> sure, it's still one read and seek more...
2008-07-02T18:06:52 <TheSheep> actually, it would be probably better to store it at the end...
2008-07-02T18:07:37 <waldi> you forget non-posix systems
2008-07-02T18:07:42 <johill> also it's very hard to do those operations atomically
2008-07-02T18:08:03 <johill> creating a single file atomically should be possible even on windows "filesystems"
2008-07-02T18:09:49 <TheSheep> not possible to fix the length of metadata, eh?
2008-07-02T18:09:55 <xorAxAx> johill: is it possible to define a command that starts a group, \defs a few times, does stuff as specified by the argument and then ends the group again?
2008-07-02T18:10:39 <johill> xorAxAx: probably, but most likely not with latex, use plain tex
2008-07-02T18:10:50 <xorAxAx> johill: yes, i am doing plain tex :)
2008-07-02T18:11:03 <xorAxAx> johill: but my current problem is that my outer #1 collides with the inner one
2008-07-02T18:11:09 <xorAxAx> or something like that
2008-07-02T18:11:33 <johill> ah
2008-07-02T18:11:57 <johill> hm no idea offhand
2008-07-02T18:12:01 <johill> TheSheep: no, of course not :)
2008-07-02T18:12:44 <johill> hmm rewriting a 10k entry tcdb database takes about 2 seconds on my machine
2008-07-02T18:12:48 <johill> guess that's not really acceptable
2008-07-02T18:13:33 <xorAxAx> ah, i have to escape #
2008-07-02T18:14:13 <TheSheep> johill: how about fixing the important parts that need to be accessed often and stroing the rest somewhere else?
2008-07-02T18:14:34 <johill> xorAxAx: guess that makes sense but does it still work then?
2008-07-02T18:14:48 <johill> TheSheep: how do you atomically commit such a thing then?
2008-07-02T18:15:02 <TheSheep> johill: good point
2008-07-02T18:15:25 <johill> (well you could do it in reverse order of readers and add rollback code, but it still makes me uncomfortable)
2008-07-02T18:16:24 <TheSheep> johill: writing to file is not atomic anyways, is it?
2008-07-02T18:16:58 <TheSheep> johill: the best you can do is writing to temporary file and renaming, but it still requires locks on windows
2008-07-02T18:17:06 <johill> no but you can put it into place atomically
2008-07-02T18:17:18 <johill> why that?
2008-07-02T18:17:22 <johill> I'm not overwriting here
2008-07-02T18:17:29 <TheSheep> ah
2008-07-02T18:17:49 <xorAxAx> johill: yes
2008-07-02T18:18:39 <xorAxAx> hmm
2008-07-02T18:18:41 <johill> xorAxAx: cool. I'll put a note on my tex cheatsheet
2008-07-02T18:18:52 * TheSheep stops the urge to propose to store the metadata encoded in the file name on windows ;)
2008-07-02T18:19:15 <xorAxAx> johill: but the whole thing doesnt work yet
2008-07-02T18:19:16 <johill> could be in the resource fork on mac ;)
2008-07-02T18:19:29 <johill> or extended attributes on linux/windows
2008-07-02T18:20:15 <johill> at least tcdb scales better than linear
2008-07-02T18:20:16 <TheSheep> moonlight and madness
2008-07-02T18:20:23 <johill> 100k entries only need 15 seconds
2008-07-02T18:21:11 <TheSheep> johill: an entry is a single file or a single revision?
2008-07-02T18:21:25 <xorAxAx> ah, works now, kpdf bug
2008-07-02T18:22:27 <johill> TheSheep: this was for the item->id thing, so an entry is an item name
2008-07-02T18:23:31 <johill> lookups are fast
2008-07-02T18:27:18 <mitsuhiko> back
2008-07-02T18:27:23 <mitsuhiko> sorry, was unavailable today :(
2008-07-02T18:32:48 <johill> ok python-cdb, the C implementation is fast enough
2008-07-02T18:33:00 <johill> it takes ~1 second to rewrite a 100k entries db
2008-07-02T18:33:06 <johill> changing a single key
2008-07-02T18:34:05 <johill> bbl, bbq with some friends
2008-07-02T18:50:02 <dreimark> re
2008-07-02T18:50:26 <dreimark> johill: I wish you luck with the weather
2008-07-02T18:50:51 <dreimark> it cools down here and rains cats and dogs
2008-07-02T18:51:09 <dreimark> gizmach: ping
2008-07-02T18:51:36 <TheSheep> meeeaoow! thud!
2008-07-02T18:51:38 <gizmach> dreimark: here writing a test for group configBackend
2008-07-02T18:52:11 <dreimark> gizmach: is it implemted now?
2008-07-02T18:52:18 <gizmach> but got test failing by > AttributeError: TestConfig instance has no attribute 'acl_rights_valid'
2008-07-02T18:53:03 <gizmach> dreimark: we'll see, I traced and it seemed working but need test to pass
2008-07-02T18:53:33 <dreimark> ok
2008-07-02T18:54:12 <zenhase> wow, down from 87 failing tests to 18
2008-07-02T18:55:06 <gizmach> dreimark: do you know what an error could be?
2008-07-02T18:55:19 <gizmach> want complete pastebin?
2008-07-02T18:55:44 <zenhase> btw, the strange py.test behaviour wasn't py.test but me, failing to program a proper __getattr(ibute)__ that preserves the real exceptions thrown :o
2008-07-02T18:57:03 <gizmach> http://paste.pocoo.org/show/78370/ here, or enybody else, I think the problem is in acl_rights
2008-07-02T18:57:05 <dreimark> gizmach: do you have looked how test_security has defined acl_rights_valid ?
2008-07-02T18:57:55 <dreimark> self.config = self.TestConfig(defaults=['acl_rights_valid', 'acl_rights_before'])
2008-07-02T18:58:00 <gizmach> self.config = self.TestConfig(defaults=['acl_rights_valid', 'acl_rights_before'])
2008-07-02T18:58:10 <gizmach> but when I do it it doesn't work
2008-07-02T18:59:25 <gizmach> > AttributeError: TestConfig instance has no attribute 'acl_rights_valid' again the same error
2008-07-02T18:59:45 <gizmach> but when I leave empty acl_rights =[] it works
2008-07-02T19:00:41 <dreimark> default is acl_rights_valid = ['read', 'write', 'delete', 'revert', 'admin']
2008-07-02T19:00:50 <dreimark> if you leave it empty then there is nothing to check
2008-07-02T19:03:01 <dreimark> thomas name is wrong typed
2008-07-02T19:03:51 <dreimark> gizmach: ^^
2008-07-02T19:04:40 <gizmach> dreimark: will replace this but what about the acl_rights
2008-07-02T19:04:46 <gizmach> how to sove that problem?
2008-07-02T19:15:28 <dreimark> e.g. you can set a definition for a user that he is not able to read a page by acl_rights_default
2008-07-02T19:15:54 <dreimark> and for an other user that he is not allowed to write
2008-07-02T19:17:30 <dreimark> gizmach:
2008-07-02T19:18:09 <gizmach> yes but I try to do it ba setting acl_rights
2008-07-02T19:18:18 <gizmach> if u looked at pastebin
2008-07-02T19:22:08 <dreimark> why do you need this in self.config = acl_rights_valid=acl_rights,?
2008-07-02T19:22:50 <gizmach> dreimark: that was a mistake, I removed it
2008-07-02T19:23:02 <dreimark> and the test still fails ?
2008-07-02T19:23:49 <gizmach> yes
2008-07-02T19:23:55 <gizmach> here is my new pastebin
2008-07-02T19:24:34 <gizmach> http://paste.pocoo.org/show/78373/
2008-07-02T19:24:53 <gizmach> and it fails
2008-07-02T19:25:58 <gizmach> gtg dinner, be back later
2008-07-02T19:26:38 * dreimark looks
2008-07-02T19:29:21 <dreimark> from MoinMoin.security import AccessControlList looks nicer
2008-07-02T19:39:33 <dreimark> looks like you like to do a similiar test as testApplyACLByUser
2008-07-02T19:50:22 <dreimark> gizmach: http://paste.pocoo.org/show/78378/
2008-07-02T19:50:43 <dreimark> works for me with current standard moin page groups
2008-07-02T19:51:23 <dreimark> you can all this scripts if it is saved in the same dir as wikiserver
2008-07-02T19:51:47 <dreimark> with eclipse debug
2008-07-02T19:57:26 <dreimark> forget 19:29 < dreimark> from Moi
2008-07-02T19:57:52 <dreimark> s/you can all/you can call/
2008-07-02T19:59:21 * dennda is liquid now
2008-07-02T20:10:22 <dreimark> gizmach: self.config = self.TestConfig(group_manager=GroupManager([GroupManagerConfigBackend(groups1), ]),)
2008-07-02T20:10:37 <dreimark> what all is then in self.config defined?
2008-07-02T20:14:17 <dennda> ping PawelPacana
2008-07-02T20:14:35 <dreimark> dennda: liquid ?
2008-07-02T20:14:53 <dennda> due to melting away
2008-07-02T20:16:42 <PawelPacana> dennda: gtg,can we discuss storage tests about 21:30?
2008-07-02T20:16:54 <dennda> yep, think so
2008-07-02T20:18:31 <PawelPacana> cool, i`ll ping you later then
2008-07-02T20:20:54 <ThomasWaldmann> re
2008-07-02T20:38:51 <dreimark> student still at dinner - mentor becomes hungry too
2008-07-02T20:38:53 <dreimark> bbl
2008-07-02T22:23:15 <RaphaelBossek> hi folks
2008-07-02T22:23:54 <RaphaelBossek> I would like to stop surge protection while executing a action plugin. where could I find an example ?
2008-07-02T22:25:06 * RaphaelBossek upgrade to 1.6.2 and tried to build the Xapian index; the python script consums 2GB of RAM which is the limit for Linux 32bit for processes...
2008-07-02T22:43:14 <xorAxAx> note that his is a #moin question
2008-07-02T22:47:35 <RaphaelBossek> xorAxAx, I would like to extend the CreatePdfAction plugin by this... is this a moin question too ?
2008-07-02T22:47:49 <xorAxAx> yes
2008-07-02T23:06:53 <johill> dreimark: weather was fine, _just_ now started to get a bit stormy
2008-07-02T23:06:58 <johill> dreimark: thanks :)
2008-07-02T23:24:58 <johill> ok I think I'll just use cdb for the name->id lookup
2008-07-02T23:25:09 <johill> with write locking and database rewrites
2008-07-02T23:25:18 <johill> read access is very fast and that matters a lot
2008-07-02T23:26:16 <TheSheep> johill: what's "id"?
2008-07-02T23:26:28 <johill> just an arbitrary, random, integer
2008-07-02T23:26:36 <johill> constant too
2008-07-02T23:26:51 <TheSheep> constant to what?
2008-07-02T23:27:29 <TheSheep> let me ask differently: what is it used for?
2008-07-02T23:28:12 <TheSheep> I assume it's for the file backend?
2008-07-02T23:28:25 <TheSheep> you want to have integer filenames?
2008-07-02T23:28:48 <johill> directory names, yeah
2008-07-02T23:29:12 <TheSheep> why not use some hash function?
2008-07-02T23:29:30 <johill> hash what?
2008-07-02T23:30:09 <TheSheep> >>> hash("page name")
2008-07-02T23:30:09 <TheSheep> 621411575
2008-07-02T23:30:41 <johill> and what if I rename the page?
2008-07-02T23:31:01 <TheSheep> aaaah
2008-07-02T23:31:03 <TheSheep> :)
2008-07-02T23:31:20 <johill> maybe that would be a strategy to find a new ID
2008-07-02T23:31:25 <johill> instead of random as I proposed
2008-07-02T23:31:56 <TheSheep> you still need to handle collisions
2008-07-02T23:32:00 <johill> but it has bad properties if you rename, and I think random doesn't matter much
2008-07-02T23:32:20 <johill> yeah what I was thinking is to start with a range of 1..10000 and choose one at random
2008-07-02T23:32:24 <johill> if it collides, choose another one
2008-07-02T23:32:35 <TheSheep> won't work with hash :)
2008-07-02T23:32:41 <johill> if it collides, extend space *10
2008-07-02T23:32:47 <johill> or so
2008-07-02T23:33:21 <TheSheep> why not start with larger space right away?
2008-07-02T23:33:52 <johill> no particular reason really, but it makes the dirnames and the name->id database longer
2008-07-02T23:34:55 <johill> I was trying to calculate the expected space filling but got sidetracked
2008-07-02T23:35:14 <TheSheep> johill: PawelPacana said that semantics of create_item and has_item changed?
2008-07-02T23:38:46 <johill> not sure about has_item but for a reason I cannot remember we wanted create_item to not change the database persistently
2008-07-02T23:39:14 <TheSheep> johill: then has_item doesn't return True right after create_item
2008-07-02T23:39:21 <johill> yeah
2008-07-02T23:43:45 <ThomasWaldmann> re
MoinMoin: MoinMoinChat/Logs/moin-dev/2008-07-02 (last edited 2008-07-01 22:15:02 by IrcLogImporter)