2008-07-18T00:09:44  <PawelPacana> johill: in test_metadata from test_backends_file you did check if revisioned item has __getitem__. On the opposite what output should give get_revision() on non-revisioned item?
2008-07-18T00:10:26  <johill> give me a bit, on phone
2008-07-18T00:10:34  <PawelPacana> ok
2008-07-18T00:28:29  <johill> PawelPacana: non-revisioned item?
2008-07-18T00:28:44  <johill> revisioned item?
2008-07-18T00:29:18  <johill> PawelPacana: ohh. I'm not checking it has __getitem__
2008-07-18T00:29:38  <johill> PawelPacana: I'm checking that __getitem__ raises a KeyError for an metadata key that doesn't exist
2008-07-18T00:31:15  <PawelPacana> johill: that was what I meant, just wriiten shorter ;)
2008-07-18T00:31:41  <PawelPacana> non-revisioned item -> change_metadata() ; publish_metatdata()
2008-07-18T00:33:09  <johill> the fact that I created a revision shouldn't matter at all
2008-07-18T00:33:39  <johill> since that particular test is looking at _item_ metadata
2008-07-18T00:38:16  <PawelPacana> ok, i should state myself clearer, what happens here:
2008-07-18T00:38:19  <PawelPacana>         item = self.backend.create_item('no revision')
2008-07-18T00:38:19  <PawelPacana>         item.change_metadata()
2008-07-18T00:38:19  <PawelPacana>         item.publish_metadata()
2008-07-18T00:38:25  <PawelPacana>         item.get_revision(-1) # ?
2008-07-18T00:38:35  <johill> ?
2008-07-18T00:39:21  <PawelPacana> what is the effect of item.get_revision(-1) ?
2008-07-18T00:39:31  <johill> what code are you looking at?
2008-07-18T00:39:43  <johill> that should raise NoSuchRevision error
2008-07-18T00:40:12  <PawelPacana> ok, thats what i was looking for
2008-07-18T00:41:27  <PawelPacana> btw. your file backend is throwing sth else
2008-07-18T00:42:34  <johill> is it?
2008-07-18T00:42:37  <johill> let me see
2008-07-18T00:43:32  <PawelPacana> you do max() on empty seq
2008-07-18T00:43:38  <johill> oh heh
2008-07-18T00:43:39  <PawelPacana> which is list_revisions
2008-07-18T00:43:50  <johill> I thought I'd fixed that
2008-07-18T00:43:56  <PawelPacana> hmm
2008-07-18T00:46:00  <CIA-53> Thomas Waldmann <tw AT waldmann-edv DOT de> default * 189:5edba1f921b7 1.7-extensions/data/plugin/action/arnica_slides.py: arnica: reduce code duplication, create URLs the correct way
2008-07-18T00:47:27  <johill> I'll look and fix it
2008-07-18T00:47:31  <johill> it should be NoSuchRevision
2008-07-18T01:03:22  <CIA-53> Johannes Berg <johannes AT sipsolutions DOT net> default * 4309:22ea1dcb8708 1.8-storage-cdenter/MoinMoin/storage/ (_tests/test_backends.py backends/fs.py): storage: add test for get_revision(-1), fix fs backend
2008-07-18T01:18:53  <PawelPacana> johill: one situation more
2008-07-18T01:18:55  <PawelPacana>         name = "foo"
2008-07-18T01:18:55  <PawelPacana>         item1 = self.backend.create_item(name)
2008-07-18T01:18:55  <PawelPacana>         item2 = self.backend.create_item(name)
2008-07-18T01:18:55  <PawelPacana>         item1.change_metadata()
2008-07-18T01:18:57  <PawelPacana>         item2.change_metadata() # should hang on lock
2008-07-18T01:19:06  <PawelPacana> this should hang on lock, right?
2008-07-18T01:19:10  <johill> indeed
2008-07-18T01:20:39  <PawelPacana> i havent merged storage repo recently, but on my version of your fs.py this is not hanging
2008-07-18T01:21:01  <johill> oh wait
2008-07-18T01:21:04  <johill> no that won't hang
2008-07-18T01:21:22  <johill> interesting situtation
2008-07-18T01:21:26  <johill> I'll have to think about it
2008-07-18T01:28:12  <johill> we used to think that locking wasn't necessary on a new item
2008-07-18T01:28:54  <johill> but that means that publish_metadata can fail, something we also wanted to avoid
2008-07-18T01:29:51  <johill> but it's probably saner to have publish_metadata fail than lock items that don't exist
2008-07-18T01:30:24  <johill> in which case it would only deadlock if you really created the item, get two references and then change_metadata on both
2008-07-18T01:31:52  <johill> anyway, bed time
2008-07-18T01:34:18  <PawelPacana> hmm
2008-07-18T01:34:25  <PawelPacana> so it would go like this:
2008-07-18T01:34:43  <PawelPacana>  name = "foo"
2008-07-18T01:34:43  <PawelPacana>  item1 = self.backend.create_item(name)
2008-07-18T01:34:43  <PawelPacana>  item2 = self.backend.create_item(name)
2008-07-18T01:34:43  <PawelPacana>  item1.change_metadata()
2008-07-18T01:34:43  <PawelPacana>  item2.change_metadata()
2008-07-18T01:34:45  <PawelPacana>  item1["a"] = "a"
2008-07-18T01:34:48  <PawelPacana>  item2["a"] = "b"
2008-07-18T01:34:50  <PawelPacana>  item1.publish_metadata()
2008-07-18T01:34:53  <PawelPacana>  py.test.raises(ItemAlreadyExistsError, item2.publish_metadata)
2008-07-18T01:34:55  <PawelPacana>  item = self.backend.get_item(name)
2008-07-18T01:34:58  <PawelPacana>  assert item["a"] == "a"
2008-07-18T01:40:14  <PawelPacana> if so, fs and hg backends are passing.
2008-07-18T01:49:37  <TheSheep> isn't it funny that so much effort is wasted on obscure corner cases that won't ever be useful?
2008-07-18T01:51:11  <PawelPacana> this is the last 20% of job consuming 80% time ;)
2008-07-18T01:51:50  <TheSheep> yeah
2008-07-18T01:52:16  <PawelPacana> commit time :)
2008-07-18T01:52:17  <CIA-53> Pawel Pacana <pawel.pacana@gmail.com> default * 4322:5bdf13b3b9c2 1.8-mercurialbackend-ppacana/MoinMoin/storage/backends/research/test_memory_commit.py: (research) Small fix: useless code.
2008-07-18T01:52:19  <CIA-53> Pawel Pacana <pawel.pacana@gmail.com> default * 4323:63004b852423 1.8-mercurialbackend-ppacana/MoinMoin/storage/ (_tests/test_backends_hg.py backends/hg.py): (hg, test_backends_hg) __init__ and has_item refactor. Also some naming convention chages. Unused imports removal. Corresponding test_backend_init extension.
2008-07-18T01:52:20  <CIA-53> Pawel Pacana <pawel.pacana@gmail.com> default * 4324:48fbde56453c 1.8-mercurialbackend-ppacana/MoinMoin/storage/backends/hg.py: (hg) Repository layout change. Corresponding naming changes. Docstring improvements.
2008-07-18T01:52:21  <CIA-53> Pawel Pacana <pawel.pacana@gmail.com> default * 4325:8660add07fa9 1.8-mercurialbackend-ppacana/MoinMoin/storage/ (_tests/test_backends.py backends/hg.py): (hg, test_backends) Test for checking iteritems. Fixed iteritems()
2008-07-18T01:52:24  <CIA-53> Pawel Pacana <pawel.pacana@gmail.com> default * 4326:8b03ee271494 1.8-mercurialbackend-ppacana/MoinMoin/storage/_tests/test_backends_hg.py: (test_backends_hg) Small test_backend_init refactor.
2008-07-18T01:52:27  <TheSheep> wee!
2008-07-18T01:52:27  <CIA-53> Pawel Pacana <pawel.pacana@gmail.com> default * 4327:cfea55daf813 1.8-mercurialbackend-ppacana/MoinMoin/storage/backends/hg.py: (hg) Fixed typo.
2008-07-18T01:52:30  <CIA-53> Pawel Pacana <pawel.pacana@gmail.com> default * 4328:81605b314288 1.8-mercurialbackend-ppacana/MoinMoin/storage/_tests/test_backends_hg.py: (test_backends_hg) Yet another tests cleanup. Added test_item_metadata_multiple_change_existing which should hang on locks but does not...
2008-07-18T01:53:06  <CIA-53> Pawel Pacana <pawel.pacana@gmail.com> default * 4329:be5972e546f4 1.8-mercurialbackend-ppacana/MoinMoin/storage/_tests/test_backends.py:
2008-07-18T01:53:06  <CIA-53> (test_backends) Major, generic test class cleanup. Removed obsolteted tests, get
2008-07-18T01:53:06  <CIA-53> rid of default_items. Added tests for search_itemm, iteritems, revisions.
2008-07-18T01:53:06  <CIA-53> Imported some tests from fs backend. Grouped tests logically. Improved module
2008-07-18T01:53:06  <CIA-53> docstring.
2008-07-18T01:53:41  <PawelPacana> now, merge time :/
2008-07-18T02:52:02  <CIA-53> Pawel Pacana <pawel.pacana@gmail.com> default * 4335:28d41baaf5d4 1.8-mercurialbackend-ppacana/MoinMoin/ (7 files in 3 dirs): Merge with 1.8-storage-cdenter.
2008-07-18T02:52:03  <CIA-53> Pawel Pacana <pawel.pacana@gmail.com> default * 4336:f89285b8f4f2 1.8-mercurialbackend-ppacana/MoinMoin/storage/_tests/ (test_backends_file.py test_backends_hg.py): (test_backends_file) FSBackend test cleanup - removed tests moved previosuly to generic class. Fixed imports.
2008-07-18T02:52:03  <CIA-53> Pawel Pacana <pawel.pacana@gmail.com> default * 4337:a8341b9994bf 1.8-mercurialbackend-ppacana/MoinMoin/storage/_tests/test_backends_memory.py: (test_backends_memory) Subclassed BackendTest. Less code, more tests.
2008-07-18T02:57:04  <PawelPacana> dennda: it's good time to merge with my repo, as i have just merged yours
2008-07-18T03:10:36  <TheSheep> I wonder what data exactly would go to rev metadata currently?
2008-07-18T03:11:22  <TheSheep> full name of the item, its mime type, editor and host, alcs, maybe categories, flags for being a dict or a group maybe, anything more?
2008-07-18T03:11:47  <TheSheep> edit date
2008-07-18T03:12:00  <TheSheep> anything more?
2008-07-18T03:13:11  <TheSheep> edit comment
2008-07-18T03:13:18  <TheSheep> whether the change is trivial
2008-07-18T03:14:55  <TheSheep> language
2008-07-18T04:34:27  <CIA-53> Pawel Pacana <pawel.pacana@gmail.com> default * 4338:4d80ac380360 1.8-mercurialbackend-ppacana/MoinMoin/storage/backends/hg.py: (hg) Revision metadata reimplementation. Get rid of pickling and storing within data file. Now revision meta is stored in internal hg dictionary(extra) unique to every changeset.
2008-07-18T06:11:49  <CIA-53> MelitaMihaljevic default * 3925:4cf500a84879 1.8-ldapgroups-mmihaljevic/MoinMoin/datastruct/backend/_tests/test_groupconfig.py: fixed test
2008-07-18T06:11:50  <CIA-53> MelitaMihaljevic default * 3926:b6ff831127a0 1.8-ldapgroups-mmihaljevic/wiki/config/more_samples/config_backend_wikiconfig_snippet: fixed config backend snippet
2008-07-18T06:11:51  <CIA-53> MelitaMihaljevic default * 3927:2c2ec3ef6653 1.8-ldapgroups-mmihaljevic/wiki/config/more_samples/wiki_backend_wikiconfig_snippet: added wiki config backend snippet
2008-07-18T06:12:47  <gizmach> dreimark: seen thomas comment, I'm changin that code, sorry I fell asleap wth my laptop
2008-07-18T09:25:21  <ThomasWaldmann> moin
2008-07-18T09:42:27  <dreimark> moin
2008-07-18T09:54:52  <CIA-53> Thomas Waldmann <tw AT waldmann-edv DOT de> default * 3757:4f0dcb5fe7a6 1.7/MoinMoin/macro/MonthCalendar.py: MonthCalendar macro: fix MoinMoinBugs/MonthCalendarBreaksOnApostrophe
2008-07-18T10:00:22  <CIA-53> Thomas Waldmann <tw AT waldmann-edv DOT de> default * 3870:3a81ee4b66e8 1.8/MoinMoin/ (action/revert.py macro/MonthCalendar.py request/__init__.py): merge fixes from 1.7 repo
2008-07-18T10:24:53  <zenhase> moin
2008-07-18T10:25:43  <ThomasWaldmann> does anybody know which moin version moinx (that OS X gui setup moin) is currently including?
2008-07-18T10:25:56  <zenhase> hmm
2008-07-18T10:26:11  <zenhase> i could find out by installing
2008-07-18T10:28:41  <zenhase> ouch: moin-1.3.3-py2.5.egg-info
2008-07-18T10:29:17  <johill> probably not a newer one than it used to
2008-07-18T10:29:19  <johill> yeah heh
2008-07-18T10:29:28  <johill> well we can triviall write a program like that with 1.8's config system :)
2008-07-18T10:30:21  <ThomasWaldmann> zenhase: was that latest download from their site?
2008-07-18T10:30:37  <zenhase> yep, 1.0.3
2008-07-18T10:31:00  <zenhase> latest release for leopard users
2008-07-18T10:32:03  <ThomasWaldmann> ok, I'll remove all reference to it from moinmo.in. No need to support old crap (and current moin is rather easily installed on OS X anyway).
2008-07-18T10:32:30  <johill> good plan
2008-07-18T10:33:10  <zenhase> why not ask them if they want to support a more current moin?
2008-07-18T10:35:36  * johill hacks together moin config gui
2008-07-18T10:36:49  <johill> write-only for now :D
2008-07-18T10:44:43  <zenhase> config gui?
2008-07-18T10:44:59  <zenhase> hmm, wasn't that a gsoc application too? :)
2008-07-18T10:46:30  <johill> no that was web-based
2008-07-18T10:47:11  <zenhase> you hack a real gui app?
2008-07-18T10:47:25  <johill> yeah
2008-07-18T10:48:41  <zenhase> on osx?
2008-07-18T10:48:46  <zenhase> :)
2008-07-18T10:48:49  <johill> no, with python/gtk
2008-07-18T10:49:00  <johill> will work fine on osx too ;)
2008-07-18T10:49:21  <zenhase> uhm no
2008-07-18T10:49:26  <zenhase> gtk and osx ... not good
2008-07-18T10:49:53  <zenhase> works only with the X11-server on osx, no native gtk yet
2008-07-18T10:50:04  <zenhase> and this is kind of ugly :o
2008-07-18T10:51:14  <johill> ??
2008-07-18T10:51:49  <johill> nope, that's been done
2008-07-18T10:51:54  <zenhase> there is no GTK targeted at aqua/quartz, the graphic subsystem of OSX
2008-07-18T10:51:59  <zenhase> huh?
2008-07-18T10:52:17  <johill> http://developer.imendio.com/projects/gtk-macosx/
2008-07-18T10:52:17  <zenhase> ok :o
2008-07-18T10:52:59  <zenhase> oh that one
2008-07-18T10:53:07  <PawelPacana> moin
2008-07-18T10:53:24  <zenhase> well, i don't know how stable that is already
2008-07-18T10:53:34  <zenhase> but i might try out some time
2008-07-18T10:53:57  <johill> mac-on-linux doesn't seem to work right now or I would ;)
2008-07-18T11:04:38  * ThomasWaldmann rather would like to have a production ready storage backend than a OS X gui :)
2008-07-18T11:05:18  <johill> I'm pretty convinced the fs backend works fine
2008-07-18T11:07:34  <ThomasWaldmann> with production ready I mean a moin not tracebacking on 2nd request :)
2008-07-18T11:09:38  <johill> that's unrelated to the backend, and dennda's task :)
2008-07-18T11:10:12  <PawelPacana> :)
2008-07-18T11:13:18  * ThomasWaldmann was referring to the whole storage thing, not to a specific backend
2008-07-18T11:15:42  <johill> poke dennda then :)
2008-07-18T11:16:21  <ThomasWaldmann> poke dennda, 42
2008-07-18T11:16:30  * johill gets bored of writing gtk programs
2008-07-18T11:23:16  <gizmach> re, damn rain
2008-07-18T11:24:09  <ThomasWaldmann> bbl
2008-07-18T11:29:34  <zenhase> bbl, finish up some task for university (last day before 'summer break')
2008-07-18T11:36:29  * dennda will come back to what you all said just after I fell out of the bed
2008-07-18T11:37:40  * johill packs random electronic junk for ottawa
2008-07-18T11:37:57  <dennda> johill: When are you going to leave again?
2008-07-18T11:39:53  <johill> very early on Monday morning
2008-07-18T11:40:01  <dennda> I see
2008-07-18T11:40:04  <johill> but I'll probably not be available much over the weekend either
2008-07-18T11:40:17  <dennda> One week?
2008-07-18T11:40:49  <johill> fairly exactly, returning early afternoon Monday the week after
2008-07-18T11:41:18  <dennda> Will you fetch your laptop?
2008-07-18T11:43:29  <johill> yeah, but I'll probably be quite busy most of the time, and I don't know if I'll have internet at the hotel
2008-07-18T11:44:07  <johill> (however, "fetch" isn't really the right word :) )
2008-07-18T11:44:28  <johill> plus I'll be in GMT-4
2008-07-18T11:44:28  <dennda> It equates to "You will take it with you"
2008-07-18T11:44:55  <dennda> Well yeah I don't rely on instant replies anyway...
2008-07-18T11:45:27  * dennda gets up, bbl
2008-07-18T11:48:38  <gizmach> http://www.python.org/news/index.html#Wed17Jul20082302-0400 cool
2008-07-18T12:07:06  <ThomasWaldmann> gizmach: planetpython.org has more nice stuff
2008-07-18T12:07:35  <gizmach> ThomasWaldmann: true :)
2008-07-18T12:07:50  <gizmach> ThomasWaldmann: I have them on rss
2008-07-18T12:58:26  <CIA-53> Reimar Bauer <rb.proj AT googlemail DOT com> default * 190:45fcfc007160 1.7-extensions/data/plugin/action/arnica_slides.py: arnica_slides: option_list bug fixed
2008-07-18T13:16:59  <ThomasWaldmann> oops :) I must have hit the u key in vim X)
2008-07-18T13:19:33  * gizmach has again one problem with request, but this time in test
2008-07-18T13:22:06  <gizmach> the request I gave doesn't check the acl rights with the page I created in test, it checks the acl rights on some oher group that exists with the same name and different users
2008-07-18T13:26:50  <ThomasWaldmann> gizmach: sounds strange, but without more details or seeing the code, I guess I cant help much
2008-07-18T13:27:15  <gizmach> :) code comes in a minute
2008-07-18T13:27:58  <gizmach> ThomasWaldmann: it was the test that worked before I added backend factory, and I tested on a real wiki and everything works
2008-07-18T13:37:54  <gizmach> http://paste.pocoo.org/show/79771/ last two tests are failing and when I insert some prints to see what it does i get :
2008-07-18T13:38:56  <gizmach> http://paste.pocoo.org/show/79772/
2008-07-18T13:38:59  <gizmach> ThomasWaldmann:
2008-07-18T13:39:35  <gizmach> and when I start the wiki and look the prints everything is like I expected and works fine
2008-07-18T13:40:57  <ThomasWaldmann>                             group_manager = datastruct.GroupManager([group_wiki.ManagerFactory(), ], self.request)
2008-07-18T13:41:05  <ThomasWaldmann> sense?
2008-07-18T13:41:41  <gizmach> well I didn't know how to defined it else, I tried like I do in wikiconfig but that also didn't work
2008-07-18T13:41:58  <ThomasWaldmann> didn't you just invent a GMF for config?
2008-07-18T13:43:00  <gizmach> yes
2008-07-18T13:43:18  <gizmach> and now If I give the GMF it does the same fault
2008-07-18T13:43:26  <gizmach> with the same reason
2008-07-18T13:43:51  <ThomasWaldmann> that does not necessarily mean it is wrong (or that you should do otherwise in a wrong way)
2008-07-18T13:44:23  <gizmach> hm.. that's true
2008-07-18T13:44:54  <ThomasWaldmann> btw, your naming is still confused
2008-07-18T13:45:02  <ThomasWaldmann>         # create GroupManagerWikiBAckendObject and get a pagegroup
2008-07-18T13:45:04  <ThomasWaldmann>         group_manager = group_wiki.Manager(request)
2008-07-18T13:45:24  <gizmach> ThomasWaldmann: I know I wasn't changing that in test I tried first to make it work
2008-07-18T13:45:26  <ThomasWaldmann> so if that is a group manager backend, why is it called group manager?
2008-07-18T13:45:44  <gizmach> well true
2008-07-18T13:45:49  <gizmach> I will fix that
2008-07-18T13:46:01  <ThomasWaldmann> maybe globally fix that issue and stop doing it
2008-07-18T13:46:11  <gizmach> :) ok I will
2008-07-18T13:47:20  <ThomasWaldmann> also, if you write a test that ONLY tests the backend, maybe call the test like that
2008-07-18T13:47:46  <ThomasWaldmann> better would be to test the upper level, too
2008-07-18T13:48:21  <ThomasWaldmann>         assert (u'ExampleUser') in group
2008-07-18T13:48:26  <ThomasWaldmann> for what are the parens?
2008-07-18T13:49:49  <ThomasWaldmann> first and second test are also inconsistent:
2008-07-18T13:50:07  <ThomasWaldmann> 1.:         # create GroupManagerWikiBAckendObject and get a pagegroup group_manager = group_wiki.Manager(request)
2008-07-18T13:50:24  <ThomasWaldmann> 2.:         # create a group manager object and get ExampleGroup pagegroup group_manager = group_wiki.Manager(request)
2008-07-18T13:50:42  <gizmach> ok I will change that too
2008-07-18T13:50:44  <ThomasWaldmann> it just shows that your naming confuses yourself
2008-07-18T13:50:49  <gizmach> and I will remove the parens
2008-07-18T13:55:38  <ThomasWaldmann> the last test is simply wrong
2008-07-18T13:57:19  <ThomasWaldmann> (at least it does not do what the comment tells)
2008-07-18T14:01:06  <gizmach> ThomasWaldmann: but I first create an empty page and check that the user has no rights to access page because he is not a member of group
2008-07-18T14:02:03  <ThomasWaldmann> "first check that user has no rights to access page..."
2008-07-18T14:02:11  <ThomasWaldmann> you do not check page access at all
2008-07-18T14:02:38  <ThomasWaldmann> you just check an ACL
2008-07-18T14:03:00  <gizmach> yes I've written that wrong
2008-07-18T14:04:34  <ThomasWaldmann> so what exactly is failing in last test?
2008-07-18T14:05:34  <ThomasWaldmann> (btw, maybe move that nuke_page to the very end of each test)
2008-07-18T14:07:05  <gizmach> it the last two tests. It fails because it doesn't request the created page in test, it requests some page with the same name with other user and also if I tried to create a page that doesn't exist it can't request it
2008-07-18T14:07:53  <ThomasWaldmann> do you mean "tests" or "assertions"? give line numbers for your pastebin
2008-07-18T14:08:54  <gizmach> 126
2008-07-18T14:09:04  <gizmach> two tests
2008-07-18T14:09:28  <gizmach> and the last like
2008-07-18T14:11:06  <ThomasWaldmann> did you fix the TestConfig?
2008-07-18T14:11:58  <gizmach> yes
2008-07-18T14:12:05  <ThomasWaldmann> new pastebin
2008-07-18T14:14:39  <gizmach> http://paste.pocoo.org/show/79774/ but now I'm fixing names and comments
2008-07-18T14:14:42  <ThomasWaldmann>        54         self.backends = [manager.create_backend(request) for manager in manager_backends]
2008-07-18T14:14:48  <gizmach> it's not fixed in this paste bin
2008-07-18T14:15:34  <ThomasWaldmann> s/manager_backends/manager_backend_factories/
2008-07-18T14:15:52  <ThomasWaldmann> s/manager/manager_backend_factory/
2008-07-18T14:16:03  <gizmach> ok
2008-07-18T14:20:40  <ThomasWaldmann> and maybe also s/self.backends/self.group_manager_backends/
2008-07-18T14:20:52  <ThomasWaldmann> etc...
2008-07-18T14:24:28  <gizmach> ok I will change all the names , will go trough all the code
2008-07-18T14:24:49  <ThomasWaldmann> (btw, byciclerepairman is a refactoring tools that supports renaming stuff, it is also integrated in eclipse/pydev)
2008-07-18T14:25:38  <ThomasWaldmann> (that doesn't mean that on that scale it is not also easily doable with an editor and some care)
2008-07-18T14:28:03  <gizmach> ok I will look at it
2008-07-18T14:29:53  <ThomasWaldmann> btw, for that renaming stuff, please do a clean commit, telling that you only renamed stuff
2008-07-18T14:30:46  <gizmach> ThomasWaldmann: ok I will do that
2008-07-18T14:35:42  <mmihaljevic> got disconnected
2008-07-18T14:44:37  <mmihaljevic> think I have problems with routes
2008-07-18T15:11:28  <CIA-53> Christopher Denter <moin GUESSWHAT the DASH space DASH station ROUNDTHING com> default * 4339:6470c1ce544d 1.8-storage-cdenter/MoinMoin/user.py: storage: user.py - Fixing a bug where an Item was returned, rather than a string. (Merged seemlessly with 1.8-mercurialbackend-ppacana)
2008-07-18T15:12:01  <dennda> (I know that should have been a seperate commit, but somehow hg f*cked up)
2008-07-18T15:15:31  <xorAxAx> sigh
2008-07-18T15:15:42  <xorAxAx> please fix
2008-07-18T15:15:51  <dennda> Yeah...
2008-07-18T15:47:31  <dennda> It is not that easy to get through that tangled code... Right now I am trying to figure out how those `processing instructions` I just encountered are used...
2008-07-18T15:48:28  <ThomasWaldmann> that's mostly stuff that will end in metadata
2008-07-18T15:49:18  <dennda> ahh I see
2008-07-18T15:49:38  <dennda> ThomasWaldmann: Can you give an example? I am not that much an expert of moins syntax yet
2008-07-18T15:50:34  <ThomasWaldmann> e.g. #format wiki  -> metadata mimetype: text/x-moin-wiki (or similar)
2008-07-18T15:50:59  <dennda> I see
2008-07-18T15:51:22  <ThomasWaldmann> same for #acl and some others
2008-07-18T15:51:59  <ThomasWaldmann> maybe the only thing left will be ## (comment) as this is also supported by the wiki parser, so it can stay in content
2008-07-18T15:52:16  <dennda> was_deprecated = self.pi.get("deprecated", False)
2008-07-18T15:53:02  <dennda> What does it mean if a Page was_deprecated?
2008-07-18T15:54:05  <ThomasWaldmann> you put that #deprecated on a page and you write some comment below it, WHY it is deprecated (and you delete everything else from the page)
2008-07-18T15:54:43  <ThomasWaldmann> when viewing the page after that, it will show the deprecation and the reason and the content of the last version before rendered below that all
2008-07-18T15:55:03  <ThomasWaldmann> (and I guess it was mostly not understood since it exists :)
2008-07-18T16:05:21  <dennda> But I assume it shall persist? :)
2008-07-18T16:19:13  <ThomasWaldmann> waldi: I got a mail from somebody obviously needing your stuff :)
2008-07-18T16:20:16  <ThomasWaldmann> (he is unhappy with current TOC and Include, needs automatic Headline Level adjustment)
2008-07-18T16:24:43  <dennda> Ah great, they want your stuff.
2008-07-18T16:24:52  <dennda> Now the next question is: Is he willing to pay? :D
2008-07-18T16:28:13  <ThomasWaldmann> maybe :)
2008-07-18T16:28:33  <ThomasWaldmann> but the problem is that it sounded like he needs it rather soon....
2008-07-18T16:33:44  <waldi> well ...
2008-07-18T16:34:41  * dennda diggs through heinrichs Revision class...
2008-07-18T16:36:02  <gizmach> ThomasWaldmann: should I also rename group-group_backend in test ? : group = group_manager_backend[u'ExampleGroup']
2008-07-18T16:37:32  <dreimark> gizmach: yes please do use the same names as in the other programs
2008-07-18T16:37:52  <dreimark> a test can also help to understand the other code
2008-07-18T16:38:38  <dreimark> but that will be hard if the names of vars and theire meaning is mixed up
2008-07-18T16:38:52  <gizmach> dreimark: ok
2008-07-18T16:39:56  <gizmach> but please look at the logs if you have time and if you have an idea why tests fail. I can find the last unchanged pastebin
2008-07-18T16:41:24  <gizmach> http://paste.pocoo.org/show/79774/ dreimark but this one is with unfixed names, I hope I'm almostly done with that
2008-07-18T16:42:29  <dennda> ping johill
2008-07-18T16:43:43  <dennda> johill: ping (rather)
2008-07-18T16:47:41  <dennda> johill: Looking at heinrichs Revision.save()-method: I think this is the one that is replaced by our Item.commit(). His method however, has different semantics and does additional stuff. Do you feel like changing (e.g.) the logging-metadata on the backend layer or rather on a higher level, i.e., where the function is used? (e.g. in PageEditor._write_file())
2008-07-18T16:49:16  <johill> dennda: pong
2008-07-18T16:49:33  <dennda> Just formulated my question :)
2008-07-18T16:50:00  <johill> yeah, bit confused
2008-07-18T16:50:14  <dennda> My question or you?
2008-07-18T16:50:24  <johill> logging metadata?
2008-07-18T16:50:37  <gizmach> dreimark: I will call that group_backend (upon what I'm testing)
2008-07-18T16:50:41  <johill> ah, yes, high-level _write_file makes most sense imho
2008-07-18T16:50:42  <dennda> == logging related metadata
2008-07-18T16:51:30  <dennda> johill: I had the same thought, but I don't know if there are other places in the code where that is used
2008-07-18T16:52:05  <johill> I doubt it, and even if, you have to find all .save() calls anyway
2008-07-18T16:52:27  <dennda> Sure, that question was code-duplication-related
2008-07-18T16:52:56  <johill> well it might make sense to have a helper function fill_logging_metadata()
2008-07-18T16:53:06  <dennda> agreed
2008-07-18T16:53:07  <johill> like the edit-locking ones
2008-07-18T16:53:17  <dennda> I'll keep that in mind if I stumble upon that again
2008-07-18T16:53:28  <johill> but semantically that should be used by the user of commit before commit, not by commit itself
2008-07-18T16:54:03  <johill> PawelPacana found an undocumented thing yesterday
2008-07-18T16:54:08  <dennda> well, it's going to be in the revision metadata, correct?
2008-07-18T16:54:11  <johill> yes
2008-07-18T16:54:21  <dennda> so it's "advisable" to do it before committing
2008-07-18T16:54:28  <johill> heh yeah
2008-07-18T16:54:31  <dennda> What did he find?
2008-07-18T16:54:40  <johill> publish_metadata can fail when change_metadata was called on a new item
2008-07-18T16:54:54  <dennda> huh
2008-07-18T16:55:01  * dennda writes that on the todo list
2008-07-18T16:55:09  <johill> because we don't lock change_metadata when the item is new
2008-07-18T16:55:27  <johill> so publish_metadata can create the item, and the second one can fail with ItemAlreadyExists
2008-07-18T17:29:25  <CIA-53> Christopher Denter <moin GUESSWHAT the DASH space DASH station ROUNDTHING com> default * 4340:338576f9ca75 1.8-storage-cdenter/MoinMoin/PageEditor.py: storage: PageEditor.py: Further adjustments of PageEditor.py. Rewriting PageEditor._write_file()
2008-07-18T17:29:25  <CIA-53> Christopher Denter <moin GUESSWHAT the DASH space DASH station ROUNDTHING com> default * 4341:da0c808d5f8a 1.8-storage-cdenter/MoinMoin/ (Page.py PageEditor.py user.py): storage: legal foo: Adding myself to the copyright notices of PageEditor.py, user.py and Page.py
2008-07-18T17:29:42  <dennda> johill: I may have found a bug in fs.py, lemme investigate...
2008-07-18T17:30:48  <dennda> yeah, looks like a bug
2008-07-18T17:31:19  <dennda> With the above changeset, try saving a page. You should (hopefully) get 'NoneType' object has no attribute 'startswith'
2008-07-18T17:52:22  <johill> ok
2008-07-18T17:53:15  <johill> yeah, that's easy
2008-07-18T17:53:22  <johill> add a test please
2008-07-18T17:53:25  <johill> and I'll fix it :)
2008-07-18T17:54:02  <johill> the problem is listing revisions on an item that hasn't been saved
2008-07-18T17:54:22  * dennda adds a test
2008-07-18T17:55:42  * johill fixed it
2008-07-18T17:58:01  <johill> runs into a new bug, but you'll see that
2008-07-18T17:58:08  <johill> and that one's in Page.py
2008-07-18T17:58:11  <dennda> don't commit until it passes the test ;)
2008-07-18T17:58:14  <dennda> just a sec
2008-07-18T17:58:23  <johill> yeah I was going to wait anyway to avoid merges
2008-07-18T17:58:24  <dennda> got a thousand hilights in the last 2 minutes
2008-07-18T18:00:21  <dreimark> gizmach: I will look later on that pastebins, currently I have to shutdown everything
2008-07-18T18:00:27  <dreimark> bbl
2008-07-18T18:01:48  <dennda> johill: I'll add a general testcase, ok?
2008-07-18T18:04:12  <dennda> johill: I hope I got the problem right. This way: http://paste.pocoo.org/show/79798/ ?
2008-07-18T18:06:31  <dennda> I think I can't just expect an AttributeError
2008-07-18T18:09:23  <dennda> Of course I can't...
2008-07-18T18:09:38  <johill> no no the point is that the first list_revisions must be empty
2008-07-18T18:09:43  <dennda> Yeah
2008-07-18T18:09:53  <dennda> Got that now, too
2008-07-18T18:10:08  <johill> http://paste.pocoo.org/show/79799/
2008-07-18T18:10:19  <johill> that's the only thing really
2008-07-18T18:10:29  <johill> the other test is probably useful too
2008-07-18T18:10:48  <johill> i.e. testing that creating a revision doesn't add it to the list
2008-07-18T18:10:56  <johill> but you may want to do that after having already saved a revision
2008-07-18T18:11:01  <johill> or both, really
2008-07-18T18:11:35  <CIA-53> Christopher Denter <moin GUESSWHAT the DASH space DASH station ROUNDTHING com> default * 4342:e3c6a2b2e70e 1.8-storage-cdenter/MoinMoin/storage/_tests/test_backends.py: storage: general backend tests: Adding test to make sure that item.list_revision is always [] if the item is newly created and unsaved.
2008-07-18T18:12:13  <dennda> There you go
2008-07-18T18:13:18  <johill> I have other tests failing
2008-07-18T18:13:30  <dennda> Which?
2008-07-18T18:13:42  <johill> the "did tests behave properly"
2008-07-18T18:13:44  <johill> check is failing
2008-07-18T18:13:52  <johill> because test_mixed_commit_metadata1 does create_revision without abort or commit
2008-07-18T18:14:37  * dennda checks
2008-07-18T18:15:57  <CIA-53> Johannes Berg <johannes AT sipsolutions DOT net> default * 4343:8f3b50cbc082 1.8-storage-cdenter/MoinMoin/storage/backends/fs.py: storage: fs backend: fix list_revisions on empty item
2008-07-18T18:17:40  <dennda> test_backends_file.py TestFSBackend().test_mixed_commit_metadata2 -- This is the only test failing here
2008-07-18T18:17:55  <dennda> (Tested test_backends.py and test_backends_file.py)
2008-07-18T18:19:50  <johill> well the failure is in the wrong test due to py.test suckage
2008-07-18T18:19:55  <johill> it really fails in the test before
2008-07-18T18:20:09  <johill> because you don't have .rollback and leave temporary files around
2008-07-18T18:21:25  <gizmach> dreimark: ok I done new changes will commit
2008-07-18T18:33:43  <CIA-53> Johannes Berg <johannes AT sipsolutions DOT net> default * 4344:b6e533365a66 1.8-storage-cdenter/MoinMoin/storage/_tests/test_backends.py: storage: make test_mixed_commit_metadata1 clean up
2008-07-18T18:34:33  <CIA-53> MelitaMihaljevic default * 3928:e7cab336062f 1.8-ldapgroups-mmihaljevic/MoinMoin/datastruct/ (__init__.py backend/_tests/test_wikigroup.py): renamed group and group_manager names to more sane names
2008-07-18T18:49:26  <dennda> I sometimes hate mercurial
2008-07-18T18:53:54  <CIA-53> Christopher Denter <moin GUESSWHAT the DASH space DASH station ROUNDTHING com> default * 4345:b1773596cdab 1.8-storage-cdenter/MoinMoin/storage/_tests/test_backends.py: storage: general backend tests: Adding two tests checking proper implementation of Item.list_revisions
2008-07-18T18:55:17  <gizmach> dennda: I hate it most of the time ;)
2008-07-18T19:00:30  <CIA-53> MelitaMihaljevic default * 3929:7a2635a6772d 1.8-ldapgroups-mmihaljevic/MoinMoin/ (4 files in 3 dirs): moved nuke_page to the end of each test and fixed some pep8 errors
2008-07-18T19:03:04  <CIA-53> MelitaMihaljevic default * 3934:1747790f07e2 1.8-ldapgroups-mmihaljevic/MoinMoin/ (action/revert.py macro/MonthCalendar.py request/__init__.py): merged with 1.8
2008-07-18T19:04:09  <gizmach> but still have the two last tests in test_wikigroup.py falling dreimark
2008-07-18T19:15:26  <CIA-53> Christopher Denter <moin GUESSWHAT the DASH space DASH station ROUNDTHING com> default * 4346:4b6e437bf885 1.8-storage-cdenter/MoinMoin/PageEditor.py:
2008-07-18T19:15:26  <CIA-53> storage: PageEditor.py
2008-07-18T19:15:26  <CIA-53>  * Fixing bugs in PageEditor.py
2008-07-18T19:15:26  <CIA-53>  * Transferring logging-related metadata constants to PageEditor.py.
2008-07-18T19:17:11  <johill> dennda: your _write stuff in pageeditor is completely wrong anyway ;)
2008-07-18T19:17:30  <johill> you should be saving the current revision number in the html form, then simply use that on save, instead of listing revisions
2008-07-18T19:34:11  <dennda> HTML Form?
2008-07-18T19:36:29  <johill> the stuff you see in your browser, a hidden field
2008-07-18T19:37:44  <dennda> Did we ever discuss something like that?
2008-07-18T19:37:59  <dennda> I know what an HTML Form is, I just don't see the connection
2008-07-18T19:38:33  <johill> I outlined that in my doc IIRC
2008-07-18T19:38:41  <johill> the point is that this can be used for conflict detection
2008-07-18T19:38:49  <dennda> Which of those?
2008-07-18T19:38:53  <johill> i.e. you put the "current revision" into the form
2008-07-18T19:39:09  <johill> and then you try to create(revno from form + 1)
2008-07-18T19:39:13  <johill> storage.txt
2008-07-18T19:41:42  <dennda> I can't find it in the doc
2008-07-18T19:43:02  <johill> it's a bit implicit
2008-07-18T19:43:15  <johill> ah no
2008-07-18T19:43:23  <johill> it's in lockfree
2008-07-18T19:43:33  <johill> in the sample code
2008-07-18T19:44:15  <dennda> Ok, I'll check it...
2008-07-18T19:48:53  <CIA-53> MelitaMihaljevic default * 3935:70f5e3f02fce 1.8-ldapgroups-mmihaljevic/MoinMoin/datastruct/_tests/test_datastruct.py: removed test - test is related to group config backend not only to datastruct code
2008-07-18T20:02:16  <CIA-53> Thomas Waldmann <tw AT waldmann-edv DOT de> default * 3758:c4cf4327c96e 1.7/MoinMoin/request/request_modpython.py: request_modpython: doing dirty tricks to work around mod_python 3.3.1 problems
2008-07-18T20:36:19  <CIA-53> Bastian Blank <bblank@thinkmo.de> default * 3994:02e622952c24 1.8-dom-bblank/MoinMoin/converter2/ (_tests/test_html_out.py html_out.py): HTML output converter - Support separator
2008-07-18T20:36:21  <CIA-53> Bastian Blank <bblank@thinkmo.de> default * 3995:4712eec9d984 1.8-dom-bblank/MoinMoin/converter2/creole_in.py: Creole input converter - Remove some TODO markers
2008-07-18T20:36:22  <CIA-53> Bastian Blank <bblank@thinkmo.de> default * 3996:f0d04c81cdd5 1.8-dom-bblank/MoinMoin/converter2/ (_wiki_macro.py link.py macro.py): Converter - Add some documentation
2008-07-18T20:37:30  <gizmach> ThomasWaldmann: I found the error why test fails
2008-07-18T20:37:37  <gizmach> it's because one other test
2008-07-18T20:37:49  <gizmach> I think
2008-07-18T20:37:56  <gizmach> but not only because of that
2008-07-18T20:38:05  <gizmach> that is the one thing
2008-07-18T20:42:15  <gizmach> ThomasWaldmann: dreimark : in test_groupconfig I have defined SecondGroup and I don't remove it after the test is finish and it stays, but this is only one error
2008-07-18T20:46:59  <ThomasWaldmann> pastebin and linenumber
2008-07-18T20:50:04  <gizmach> http://paste.pocoo.org/show/79815/ from here are that members of SecondGroup I got in print (all lines) and because it's config groups I don't create page so i can't nuke_page or something should I do something else in tear_down (not restore like now)
2008-07-18T20:50:16  * dennda got used to his new keyboard :)
2008-07-18T20:53:22  <gizmach> ThomasWaldmann: also I'm changing group members and groups names
2008-07-18T20:58:53  <ThomasWaldmann> if you get something from there although you are creating a new GMF, something is going wrong, yes
2008-07-18T20:59:21  <ThomasWaldmann> show me the other test
2008-07-18T20:59:34  <gizmach> ThomasWaldmann: ok give me a sec
2008-07-18T21:02:49  <gizmach> http://paste.pocoo.org/show/79817/ but also if I put in the test_wikigroup (in the last two test unexistant group it fails) and I'm pretty sure it's about test and not the wikibackend code
2008-07-18T21:04:03  <gizmach> ah I see an error in comments
2008-07-18T21:04:05  <gizmach> fixed
2008-07-18T21:04:53  <ThomasWaldmann> the last file looks incorrect
2008-07-18T21:05:32  <ThomasWaldmann> line 25
2008-07-18T21:15:54  <gizmach> ah pardon I done that mistake while copying
2008-07-18T21:17:07  <gizmach> http://paste.pocoo.org/show/79818/ but also like this it won't work properly
2008-07-18T21:18:35  <gizmach> also the second test is broken
2008-07-18T21:20:16  <ThomasWaldmann> is 79818 and 79815 the same file? or why is the class name the same, but the content different?
2008-07-18T21:20:53  <ThomasWaldmann> i suggest you think about a better way of discussing your code, that pastebin method is not good
2008-07-18T21:22:29  <johill> gobby works well
2008-07-18T21:23:21  <gizmach> ThomasWaldmann: ok I will take a look at it and before everythig fix it
2008-07-18T21:26:12  <gizmach> ThomasWaldmann: and think a better way of doing that
2008-07-18T21:26:21  <dennda> You can take my gobby server if you like
2008-07-18T21:27:13  <gizmach> dennda: hm..
2008-07-18T21:32:42  <gizmach> it looks I have some more bugs
2008-07-18T21:33:59  * ThomasWaldmann .oO(Starship Troopers)
2008-07-18T21:36:35  <gizmach> well the real wiki works with the wikigroup backend and the config groupbackend but the tests are not (will search a bit more why it won't work and that start bugging)
2008-07-18T21:51:45  <ThomasWaldmann> gizmach:        82     def testCachingiBackendGroups(self):
2008-07-18T21:57:49  <ThomasWaldmann> gizmach: btw, usually request is the first param (for methods after "self", of course)
2008-07-18T21:58:29  <gizmach> ThomasWaldmann: ah true, pardon will change that ,
2008-07-18T22:03:05  <gizmach> ThomasWaldmann: I can't see what is wrong with line 82
2008-07-18T22:07:47  <dennda> Google is running late (again) :)
2008-07-18T22:08:36  <gizmach> dennda: ?
2008-07-18T22:09:45  <dennda> gizmach: /topic #gsoc
2008-07-18T22:15:54  <gizmach> dennda: ah I see
2008-07-18T22:42:54  <dennda> johill: by the way: The snippet you sent earlier would indeed be more beautiful than the current approach, but 2.3 doesn't support that nice decorator syntax
2008-07-18T22:46:01  <johill> yeah I know
2008-07-18T22:46:08  <johill> just wanted to give it to you since I'd found it
2008-07-18T22:48:11  <dennda> Thanks :)
2008-07-18T22:48:30  <dennda> I do wonder why my connection is so unstable
2008-07-18T23:09:36  <gizmach> ThomasWaldmann: for the request problems in test I needed to add in def init_test_request(static_state=[False]):in conftest.py : request.group_manager = request.group_manager
2008-07-18T23:09:42  <gizmach> dreimark: too
2008-07-18T23:10:03  <gizmach> and now only one test is failing but probably some type error or something
2008-07-18T23:14:10  <ThomasWaldmann> gizmach: that is nonsense
2008-07-18T23:15:05  <gizmach> ThomasWaldmann: but without giving that It didn't used the request I wanted to use
2008-07-18T23:16:14  <ThomasWaldmann> foo = foo does not change anything
2008-07-18T23:17:00  <gizmach> I know that but that nosense line changed from faling tests to passing tests (and I know how stupid that sounds)
2008-07-18T23:17:46  <gizmach> and when I remove it I got test failing again
2008-07-18T23:17:50  <ThomasWaldmann> maybe consider that you could have randomly failing tests (or tests failing under some timing conditions)
2008-07-18T23:18:43  <gizmach> ThomasWaldmann: hm..
2008-07-18T23:19:22  <gizmach> but then again how could that line help me to get test passed :|
2008-07-18T23:19:33  <gizmach> that's what bothers me more
2008-07-18T23:19:44  <ThomasWaldmann> remove that line and try 5 times running the tests
2008-07-18T23:20:48  <gizmach> ThomasWaldmann: ok
2008-07-18T23:22:35  <gizmach> ThomasWaldmann: nop, still failing
2008-07-18T23:22:47  * ThomasWaldmann .oO(that reminds me of that random number generator daemon that tells 9, 9, 9, 9, 9, ....:)
2008-07-18T23:23:57  <gizmach> ThomasWaldmann: and it fails when it needs to update page content in one test
2008-07-18T23:24:26  <ThomasWaldmann> show me the test and the failure
2008-07-18T23:24:33  <ThomasWaldmann> precisely
2008-07-18T23:24:36  <gizmach> ok
2008-07-18T23:26:34  <gizmach> test: http://paste.pocoo.org/show/79829/
2008-07-18T23:26:46  <gizmach> fails:http://paste.pocoo.org/show/79829/
2008-07-18T23:26:51  <gizmach> ups
2008-07-18T23:26:52  <gizmach> sorry
2008-07-18T23:27:09  <gizmach> test is on http://paste.pocoo.org/show/79827/
2008-07-18T23:29:17  <gizmach> but I got the two test failing, this one isn't passing even if I add the nosense line to the conftest
2008-07-18T23:29:55  <gizmach> the other one in test_groupconfig is passing if I add the 'line' in conftest
2008-07-18T23:30:27  <gizmach> or sometimes passed sometimes not
2008-07-18T23:30:42  <ThomasWaldmann> insert time.sleep(2) in line 25
2008-07-18T23:31:36  <ThomasWaldmann> and then explain why it works :P
2008-07-18T23:32:08  <gizmach> oh.. ok
2008-07-18T23:34:33  <gizmach> erm,.. it does not :(
2008-07-18T23:36:06  <gizmach> wait to try somethin
2008-07-18T23:38:51  <gizmach> ThomasWaldmann: no it does not work , it doesn't create a page
2008-07-18T23:39:49  <gizmach> (in the test, in a real wiki it does correct)
2008-07-18T23:41:17  <gizmach> ok need to look at the code and given request better it's something wrong with that request
2008-07-18T23:44:06  * gizmach is going to take some coffee 
2008-07-18T23:50:18  * dennda goes zZZzZZZzzzZZZzZZZZZzzZZZZzZZZZZzzzZZZZZzzzzzzZZZZz
2008-07-18T23:50:20  <dennda> good night
2008-07-18T23:50:54  <ThomasWaldmann> gn dennda
2008-07-18T23:56:05  <gizmach> gn  dennda

MoinMoin: MoinMoinChat/Logs/moin-dev/2008-07-18 (last edited 2008-07-17 22:15:02 by IrcLogImporter)