2006-08-12T11:37:55  <xorAxAx> ThomasWaldmann: are there any outstanding issues on mailimport?
2006-08-12T11:49:49  <Kepplar> hey
2006-08-12T12:12:06  <ThomasWaldmann> moin
2006-08-12T12:12:21  <ThomasWaldmann> xorAxAx: no, i guess I fixed all issues
2006-08-12T12:12:48  <ThomasWaldmann> maybe look at the stuff with that decode2044 call, if it is done correctly
2006-08-12T12:14:23  <xorAxAx> ok
2006-08-12T12:37:02  <Kepplar> ThomasWaldmann: you have a choice. Either I badly hack this integration and MAYBE get it working, or I stop and start properly integration which will take another month.
2006-08-12T12:37:45  <ThomasWaldmann> you dont have a month
2006-08-12T12:38:07  <Kepplar> i would say theres only a 30% chance of me completing this in the next week anyway
2006-08-12T12:38:28  <Kepplar> mainly because i had no clue this would involved anything more than modifiying Page, PE, PGE and user
2006-08-12T12:38:47  <ThomasWaldmann> you dont need to throw over all at the same time
2006-08-12T12:39:08  <ThomasWaldmann> i even prefer if you first get one thing working before touching the next
2006-08-12T12:39:09  <Kepplar> But there are soo many problems with make test
2006-08-12T12:39:22  <Kepplar> its unable to do anything
2006-08-12T12:39:29  <Kepplar> this time is because of getPageList
2006-08-12T12:39:40  <Kepplar> it should never have been designed to be part of the Page object
2006-08-12T12:40:01  <ThomasWaldmann> if you have hierarchical storage, this is the ONLY way
2006-08-12T12:40:08  <Kepplar> everything is relying on paths and root pages, theres no encapsulation
2006-08-12T12:40:29  <ThomasWaldmann> but, as I told you maybe 3 times yet, you dont need to care for hierarchical storage
2006-08-12T12:40:32  <Kepplar> ThomasWaldmann: at the moment that isnt my concern - it cant be, not unless im to put the completion date back 2 months
2006-08-12T12:40:52  <Kepplar> excactly, but test are relying on this
2006-08-12T12:40:52  <xorAxAx> ThomasWaldmann: the storage is unrelated to semantics ...
2006-08-12T12:41:04  <xorAxAx> ThomasWaldmann: call it hierachical page semantics ...
2006-08-12T12:41:34  <ThomasWaldmann> Kepplar: you can change the tests as you like
2006-08-12T12:41:40  <ThomasWaldmann> or write your own
2006-08-12T12:41:41  <xorAxAx> i.e. there is no restriction not to return all pages in a pagelist if you have "hierachical storage"
2006-08-12T12:41:52  <Kepplar> ThomasWaldmann: its not the tests themselves
2006-08-12T12:41:55  <Kepplar> its how Moinw orks
2006-08-12T12:42:03  <Kepplar> the wiki *will not run* unless i sort thids
2006-08-12T12:42:18  <Kepplar> changing the tests won't matter
2006-08-12T12:42:51  <Kepplar> Page is just getting hacked to pieces
2006-08-12T12:43:05  <Kepplar> mainly because i dont have the time to properly work out hows to do things
2006-08-12T12:46:18  <Kepplar> so SPECIFICALLY what should I be doing/
2006-08-12T12:46:52  <Kepplar> I cannot rip root pages out, because so much relies on a generic Page instance
2006-08-12T12:46:57  <Kepplar> which cannot exist anymore
2006-08-12T12:49:53  <ThomasWaldmann> i dont think it is a real problem ripping it out
2006-08-12T12:50:09  <Kepplar> I disagree
2006-08-12T12:50:17  <ThomasWaldmann> as its possibility was never exploited
2006-08-12T12:50:22  <Kepplar> scandict needs to get a page list
2006-08-12T12:50:31  <Kepplar> which it can only get from a page instance
2006-08-12T12:50:55  <ThomasWaldmann> so the places which use rootpage could also not use it and the functions which are called could also be written without rootpage
2006-08-12T12:51:07  <ThomasWaldmann> rootpage is data_dir, ever
2006-08-12T12:51:10  <Kepplar> yes
2006-08-12T12:51:33  <Kepplar> I agree, but that a) isnt a task for stroage and b) isnt going to be possible int he timeframe
2006-08-12T12:51:49  <Kepplar> especially when it takes me half a day per 400 line function to work out what it actual does
2006-08-12T12:51:53  <ThomasWaldmann> and instead of getting a pagelist from the rootpage object, you can also get a pagelist from data_dir
2006-08-12T12:52:09  <Kepplar> how?
2006-08-12T12:52:31  <Kepplar> well no you'll get it ideally from the SEM in the future
2006-08-12T12:52:37  <ThomasWaldmann> well, you started a bit late really getting into the code...
2006-08-12T12:52:47  <Kepplar> i didnt realise it was this bad
2006-08-12T12:54:00  <Kepplar> aactually
2006-08-12T12:54:04  <Kepplar> sem can already get page list
2006-08-12T12:54:12  <Kepplar> the problem is it cant do any groups/cat/filters
2006-08-12T12:55:09  <Kepplar> so, how shall i proceed?
2006-08-12T13:01:48  <ThomasWaldmann> you could assume request.rootpage being constant (afaik, this is true, we never change it)
2006-08-12T13:02:19  <Kepplar> your advice is WAY to vague, I need details
2006-08-12T13:02:24  <Kepplar> how do i impliment that?
2006-08-12T13:02:31  <Kepplar> Page does not support that with the new storage engine
2006-08-12T13:02:34  <ThomasWaldmann> so just assign some special object to it (not Page) doing the stuff that is really used
2006-08-12T13:02:57  <ThomasWaldmann> mostly this is getPageList, getPageDict
2006-08-12T13:03:32  <ThomasWaldmann> some rare times getPagePath, in that case it is data_dir for file storage
2006-08-12T13:03:57  <Kepplar> getPagePath doesnt exist anymore
2006-08-12T13:04:22  <Kepplar> i cant play around with data_dir anymore like this
2006-08-12T13:04:31  <ThomasWaldmann> you need to store edit-log (e.g.) and attachments somehow
2006-08-12T13:04:33  <Kepplar> as it could be a sql server uri for all i know
2006-08-12T13:05:21  <ThomasWaldmann> but that doesnt matter, the advice is to use a special rootpage object so you dont have to touch 50 files using it
2006-08-12T13:05:39  <Kepplar> Hmm ok
2006-08-12T13:05:40  <Kepplar> or
2006-08-12T13:05:56  <Kepplar> how can i make the functions accessible statically?
2006-08-12T13:06:15  <ThomasWaldmann> ?
2006-08-12T13:06:46  <Kepplar> i dont have the time to read through everything and work out what needs to be in some new object,not in a week
2006-08-12T13:07:03  <Kepplar> so i can Page.Page.getPageList(request)
2006-08-12T13:07:05  <Kepplar> for exampel
2006-08-12T13:07:49  <ThomasWaldmann> iirc, getpagelist is never called for something other than rootpage
2006-08-12T13:08:21  <Kepplar> but are we having hierarchal in the future?
2006-08-12T13:08:21  <ThomasWaldmann> so you can move it out of Page into RootPage class
2006-08-12T13:08:47  <ThomasWaldmann> wel, maybe, but that should not be your task now
2006-08-12T13:09:15  <ThomasWaldmann> as you are running out of time, implement it for 1.5 compatibility
2006-08-12T13:10:18  <ThomasWaldmann> as you see for edit-log, doing things relative to some "root" is not a bad idea
2006-08-12T13:12:28  <ThomasWaldmann> we have a rootpage edit-log, summarizing all edits in the space below root (== all pages)
2006-08-12T13:12:55  <ThomasWaldmann> and we have a page edit-log, summarizing all edits in the space below that page (== in that page)
2006-08-12T13:13:37  <ThomasWaldmann> (in brackets behaviour caused by only having flat page namespace)
2006-08-12T13:13:39  <Kepplar> yea
2006-08-12T13:14:09  <Kepplar> Have to remember web2.0 is against hierarchal dataforms
2006-08-12T13:14:22  <Kepplar> so might be a more mesh/web way of doing it
2006-08-12T13:14:46  <Kepplar> I cant seem to find where rootpage is defined
2006-08-12T13:14:52  <Kepplar> its commented out in request/__init__.py
2006-08-12T13:16:53  <Kepplar> er
2006-08-12T13:16:57  <Kepplar> that could havebeen me actually
2006-08-12T13:18:21  <ThomasWaldmann> it is in request.py
2006-08-12T13:18:41  <ThomasWaldmann> ehrm, request/__init__.py
2006-08-12T13:18:55  <Kepplar> yea, i'd commented it out already
2006-08-12T13:20:01  <Kepplar> ta for the help
2006-08-12T13:22:16  * ThomasWaldmann is rewriting thfcgi thread stuff in a separate 1.5 branch
2006-08-12T13:22:43  <ThomasWaldmann> gtg...
2006-08-12T13:22:54  <Kepplar> btw, that test is now working
2006-08-12T13:23:02  <Kepplar> aka page retreval
2006-08-12T13:24:17  <Kepplar> xorAxAx: you there?
2006-08-12T13:24:30  <xorAxAx> yes
2006-08-12T13:24:38  <Kepplar> packages.py
2006-08-12T13:24:41  <Kepplar> one of yours?
2006-08-12T13:24:47  <xorAxAx> yeah, wrote 99% of it .)
2006-08-12T13:24:57  <Kepplar>         attachments = Page(self.request, pagename).getPagePath("attachments", check_create=0)
2006-08-12T13:25:04  <xorAxAx> there is one dirty thing in it - direct creation of underlay pages
2006-08-12T13:25:17  <xorAxAx> the other things should be normal API usage
2006-08-12T13:25:19  <Kepplar> thats erroring now because getPagePath doesnt exist
2006-08-12T13:25:37  <xorAxAx> Kepplar: you need to translate it semantically - that function creates an attachment
2006-08-12T13:25:38  <Kepplar> what is it trying to achieve generally (so i dont have to spend 2 hours reading it :P) .. just a quick overview
2006-08-12T13:25:49  <xorAxAx> packages.py is a script interpreter
2006-08-12T13:25:56  <Kepplar> why is it called packages?
2006-08-12T13:26:10  <xorAxAx> because packages consist of a script and page data etc.
2006-08-12T13:26:16  <Kepplar> ah right
2006-08-12T13:26:35  <xorAxAx> so you need to put the code snippet in there that creates a new attachment
2006-08-12T13:26:44  <xorAxAx> umm, item :)
2006-08-12T13:26:59  <xorAxAx> or subitem
2006-08-12T13:27:06  <xorAxAx> that depends on the attachment migration policy
2006-08-12T13:27:11  <xorAxAx> that you hopefully worked out
2006-08-12T13:27:21  <Kepplar> ok
2006-08-12T13:27:40  <Kepplar> ZipPackage is a combined script and pagedata?
2006-08-12T13:28:10  <xorAxAx> the zippackage class handles reading packages from .zip files
2006-08-12T13:28:30  <Kepplar> ah right so just a wrapper really
2006-08-12T13:28:32  <xorAxAx> ah, maybe you was looking into the code that actually opens the package?
2006-08-12T13:28:42  <xorAxAx> then you need to put in the code that opens an item :)
2006-08-12T13:28:49  <Kepplar> yep :)
2006-08-12T13:29:05  <xorAxAx> packages can be run from the attachment view or from the command line
2006-08-12T13:30:01  <Kepplar> so item replaces package or item contains a package?
2006-08-12T13:30:12  <xorAxAx> an item might be a package
2006-08-12T13:30:27  <xorAxAx> because packages were attached to a page as a normal file in 1.5
2006-08-12T13:30:34  <xorAxAx> look at SystemPagesSetup etc.
2006-08-12T13:31:13  <Kepplar> ok yea, thats an item
2006-08-12T13:31:20  <Kepplar> we have a specialised attachment item
2006-08-12T13:34:05  <Kepplar> oh im guessing underlay can't have attachments (i dont want to have to put hacky code for swapping engines in this as weell)
2006-08-12T13:35:58  <xorAxAx> it can
2006-08-12T13:36:06  <Kepplar> :/
2006-08-12T13:36:12  <xorAxAx> and its used
2006-08-12T13:36:18  <Kepplar> euggh
2006-08-12T13:36:41  <Kepplar> this intergration is going to have to pulled apart and reimplimented peroperly after soc then
2006-08-12T13:37:05  <Kepplar> certianly not production worthy
2006-08-12T13:43:58  <Kepplar> i dont understand how does this work?
2006-08-12T13:44:05  <Kepplar> you attach a file and install the package?
2006-08-12T13:44:40  <Kepplar> ThomasWaldmann: I cannot do this in time, fact
2006-08-12T13:45:14  <Kepplar> Zip or not be ziped cannot exist this side of storage
2006-08-12T13:45:15  <Kepplar> its transparent
2006-08-12T13:46:05  <Kepplar> someone who have to refactor this, this is outside storages scope to change that sort of thing
2006-08-12T13:46:09  <Kepplar> nor do i have time
2006-08-12T14:47:27  <ThomasWaldmann> Kepplar: maybe you just need other priorities
2006-08-12T14:47:56  <ThomasWaldmann> e.g. packagepackages if rather low priority. but you should be able to show that your stuff works at end of soc.
2006-08-12T14:48:32  <xorAxAx> yeah, the package code can be fixed up in less than 30 minutes if the API works
2006-08-12T14:48:34  <ThomasWaldmann> that means: page viewing, page editing, page info, RC, attachments
2006-08-12T14:49:27  <ThomasWaldmann> and if some test of a rarely used action breaks, just move it to broken/ subdirectory of _tests
2006-08-12T15:16:21  <Kepplar> xorAxAx: if your familar with packages probably :P
2006-08-12T15:16:39  <Kepplar> yea, well accoriding to this it is actually working even now
2006-08-12T15:18:47  <xorAxAx> no, thats not necessary - the whole package thing is separated from the functions that depend on storrage code
2006-08-12T15:18:50  <xorAxAx> but i can do it
2006-08-12T15:23:14  <Kepplar> if a request comes in for an invalid latest revision of a nonexistant page should it a
2006-08-12T15:23:28  <Kepplar> handle it outside stroage (aka, exception)
2006-08-12T15:23:28  <Kepplar> or
2006-08-12T15:23:35  <Kepplar> b) give back a empty revision
2006-08-12T15:23:43  <Kepplar> ?
2006-08-12T16:25:45  <Kepplar> Hi
2006-08-12T16:25:48  <Kepplar> ok im getting somewhere
2006-08-12T16:25:52  <Kepplar> Question
2006-08-12T16:26:08  <Kepplar> actually
2006-08-12T16:26:11  <Kepplar> ignore (for now)
2006-08-12T16:41:17  <Kepplar> :o
2006-08-12T16:41:25  <Kepplar> ACL are working :D
2006-08-12T16:41:32  <Kepplar> according to tests
2006-08-12T18:07:30  <xorAxAx> Kepplar: clean changesets would be nice -- http://moin.pocoo.org:8080/moin-1.6-storage-a?fd=105da4aa55dd;file=MoinMoin/wikidicts.py
2006-08-12T18:13:20  <Kepplar> xorAxAx: hmm?
2006-08-12T18:13:47  <Kepplar> hg has been playing up on the repo if thats what you mean
2006-08-12T18:13:54  <xorAxAx> Kepplar: you committed changes that were not necessary ... which means that you committed an unclean diff which means that you didnt check it before committing
2006-08-12T18:14:08  <xorAxAx> `hg diff` is your friend :)
2006-08-12T18:14:24  <Kepplar> unclean diff?
2006-08-12T18:15:05  * xorAxAx sighs
2006-08-12T23:17:13  <xorAxAx> ThomasWaldmann: caching.py is broken, see http://moinmaster.wikiwikiweb.de/HelpOnConfiguration/EmailSupport?action=fullsearch&value=linkto%3A%22HelpOnConfiguration/EmailSupport%22&context=180

MoinMoin: MoinMoinChat/Logs/moin-dev/2006-08-12 (last edited 2021-02-15 16:37:51 by Bind)