IRC log of #zope3-dev for Wednesday, 2005-07-27

*** niemeyer has quit IRC00:05
*** AI_ has joined #zope3-dev00:12
*** AI_ has left #zope3-dev00:12
*** tav has joined #zope3-dev00:25
mpis there absolute_url in zope3? (vh aware)00:36
J1myes00:37
*** SteveA has quit IRC00:38
*** J1m has quit IRC00:38
*** philiKON has joined #zope3-dev00:45
*** SteveA has joined #zope3-dev00:54
*** theuni has quit IRC00:54
*** anguenot has joined #zope3-dev01:03
*** MrTopf has quit IRC01:19
_projekt01What's the best concept to set and get additional principal information?01:43
*** _projekt01 is now known as projekt0101:44
projekt01Or how can I get the InternalPrincipal form the PrincipalFolder if I have the castrated principal form the request?01:49
*** stub has quit IRC01:58
philiKONadapt?01:59
projekt01To what?01:59
philiKONto a more specific interface than the "castrated" one01:59
philiKONdunno, whatever you need i guess02:00
projekt01I don't know where my principal folder is.02:00
projekt01Of corse I know but then I do it by hand.02:00
projekt01There is no API for such use cases.02:00
philiKONisn't there a way to query every authentication utility for the principal?02:01
projekt01Hm, I think so, but I don't like to use this complicated source search.02:02
projekt01But perhaps I have to.02:02
benji_yorkhow about IAuthentication's getPrincipal(id)02:02
philiKONthat's what i meant02:03
philiKONanyway, i'm going to bed02:03
philiKONg'night02:03
benji_yorkbye02:04
projekt01Thanks, this could work or at least help a little bit, good night.02:04
projekt01benji_york, Ah, now I understand, getPrincipal queries the next services too and accept the request.principal.id with source suffix02:07
projekt01That's exactly what I need, thanks a lot.02:08
benji_yorknp02:09
*** SteveA has quit IRC02:14
*** bskahan has joined #zope3-dev02:26
*** yota has quit IRC02:32
*** bskahan has quit IRC02:55
*** genconc has quit IRC02:55
*** bskahan has joined #zope3-dev03:27
bob2oh lordy03:53
bob2I spent all the time trying to run the tests03:53
bob2when test.py had all the boilerplate needed03:54
srichter:-)03:56
srichteryou should read the Zope 3 books03:56
benji_yorksrichter, Jim's new test runner isn't going to be in 3.1 is it?03:57
srichterI am not sure03:58
srichterI thought I saw him hooking it up03:58
srichterbut then he said he did not do it03:58
bob2srichter: hah, I bought and read both your books already, but there's a lot to keep in my head at once03:59
srichterbob2: I have an entire part on testing; it would have been easy to find ;-)04:00
*** philiKON has quit IRC04:10
*** tim2p has quit IRC04:15
benji_yorkhe hooked it into ZODB because Tim was having some problems with the old test runner, and we use it on some of our customer projects04:21
srichterI see04:26
*** projekt01 has quit IRC04:29
*** tav is now known as hiroko04:54
*** hiroko is now known as tav04:56
*** ChanServ sets mode: +o tav04:56
*** benji_york has quit IRC05:03
*** benji_york has joined #zope3-dev05:05
*** d2m has quit IRC05:06
*** alga has quit IRC05:09
*** bskahan has quit IRC05:18
*** benji_york has quit IRC05:51
*** vitaly has joined #zope3-dev05:56
*** vitaly has left #zope3-dev06:38
*** vitaly has joined #zope3-dev06:39
*** vitaly has quit IRC06:39
*** vitaly has joined #zope3-dev06:41
*** vitaly has joined #zope3-dev06:43
*** MiUlEr has joined #zope3-dev06:55
*** douglasc has joined #zope3-dev07:06
*** douglasc has quit IRC07:32
*** d2m has joined #zope3-dev08:28
*** rk has joined #zope3-dev08:32
zagymoin08:38
*** cwells has joined #zope3-dev08:56
*** hdima has joined #zope3-dev09:18
*** rk has quit IRC09:49
*** d2m has quit IRC09:54
*** d2m_ has joined #zope3-dev09:54
*** d2m_ is now known as d2m09:54
*** yota has joined #zope3-dev09:57
*** Theuni has joined #zope3-dev10:03
*** philiKON has joined #zope3-dev10:08
*** Theuni has quit IRC10:26
*** Theuni has joined #zope3-dev10:27
*** projekt01 has joined #zope3-dev11:01
*** anguenot has quit IRC11:13
bob2oh, cool, I made python segfault11:25
bob2(from zope3)11:26
hdimaFreeBSD?11:27
bob2linux11:27
hdimaHmm... strange :-)11:27
bob2reproducibly, no less11:28
bob2add calls to pdb.set_trace() in a zope component, the hit ctrl-c a few times after it breaks11:28
*** MrTopf has joined #zope3-dev11:46
*** bskahan has joined #zope3-dev11:55
*** timte has joined #zope3-dev12:01
*** bskahan has quit IRC12:13
*** faassen has joined #zope3-dev12:30
*** anguenot has joined #zope3-dev12:34
*** tekNico has joined #zope3-dev12:54
tekNicoHi guys, anyone taking questions? :-)12:55
tekNicoQuestions re: Zope3-Twisted integration, that is.12:56
* philiKON points to srichter 13:02
tekNicophiliKON: he's the one I hoped would get the bucket, yes. ;-)13:03
bob2hah13:05
philiKONtekNico, he's on U.S. eastern time though13:28
philiKONprolly still asleep13:28
tekNicophiliKON: thanks, I'll try again later.13:30
MrTopfso somebody should wake him up ;-)13:30
MrTopfphiliKON: btw, I again looked at the pipelines code by Tres and he's actually using the stored config in one case (though it was commented out). Basically used as an event subscriber.13:31
philiKONlike we did :)13:31
MrTopfdunno if this might be a pattern I can use.. still looks a bit like a hack ;-)13:31
MrTopfwell, a bit different still13:31
MrTopfas he stores the config inside the package via setattr13:31
philiKONah, right13:31
philiKONyeh13:32
MrTopfand thus set's this config (which is callable) as event subscriber13:32
MrTopfactually the config is the pipeline object13:32
philiKONright, right13:32
philiKONoh well, hacky, yes13:32
MrTopfwas a bit hard to understand also13:32
philiKONhehe, yeah13:33
philiKONi think things like these reach the limit of zcml configuration13:33
MrTopfand I tried on the train the stuff we talked about for my reference configuration13:33
philiKONor, limits i should say13:33
MrTopfwhich seems to work13:33
philiKONcool13:33
MrTopfbut also sort of hacky ;-)13:33
MrTopfmaybe I should also test it with more than one config if nothing goes wrong then13:34
MrTopfthough I wonder if I not just store these settings in  a separate file and read this from the tool13:34
MrTopfanyway, lunch time..13:36
*** lunati1 has joined #zope3-dev13:38
*** anguenot has quit IRC14:09
*** regebro has joined #zope3-dev14:12
srichtertekNico: I am up now14:15
tekNicosrichter: Hi, thanks for replying. :-)14:19
tekNicoI'd like to know more about Zope3-Twisted integration.14:20
srichterwhat about it?14:20
tekNicoI was wondering about the concurrency model.14:20
tekNicoI worked a lot with Zope2, and then with Twisted.14:21
srichterconcurrency model?14:21
tekNicoI wonder what, if any, is the native concurrency model of Zope3.14:21
tekNicoI mean, Zope2 is multithreaded, and Twisted use async events.14:21
srichterI do not know what a "concurrency model" is14:21
srichteroh14:21
srichtertwisted.web2 creates a new thread when calling the WSGI application14:22
srichterand twisted.ftp  also creates a thread when calling certain functions of the virtual file system (I have not checked, but that was the plan)14:22
srichterso it works exactely like the onld ZServer (medusa)14:23
tekNicoSo Zope3 is multithreaded too, and the integration happens on that level?14:23
srichterhave an async architecture with thread-based application calls14:23
tekNicoI see how in a Zope3-centric world view that's useful in itself.14:24
srichteryes to multithreaded; integration happens between server and publisher (classical WSGI server/application scenario)14:24
tekNicoHowever, in a Twisted-centric world view, I wonder what Zope3 components I may use inside the async events model.14:25
tekNicoAfter all, zope.interface works well natively in Twisted 2.0 .14:25
srichteryou can use everything pretty much14:25
srichterthe reason twisted creates threads for application calls is that those calls might take a long time14:26
tekNicoAs long as each function or method does not block, though.14:26
tekNicoExactly.14:26
bob2will there be a move to make it easy to do non-blocking apps?14:26
srichterno14:27
srichterthere is no need to14:27
tekNicoBecause Zope3 is still multithreaded at heart, and blocking, or not, is not a main development concern, right?14:28
srichteryou don't want to have `Deferred`s all over the place in Zope 3 code; it would not really buy you anything14:28
philiKONtekNico, everything that is not in zope.app should work in twisted as well14:28
philiKONtekNico, once you enter zope.app, you're dealing with very Zope3-(the application server)-specific components14:28
*** lunati1 has quit IRC14:28
srichternon-blocking code is only important for network communication14:28
tekNicoWhat about other potentially blocking operation, like file access, or long computations?14:29
tekNico(No, I wouldn't want to have Deferreds all over Zope3 code. :-) )14:30
srichterwhat about those? For Zope 3 it is not important how long a request takes14:30
tekNicoI understand that, but it indeed is important for Twisted, or any other events-based code.14:31
srichterwell, it depends on your design then14:31
srichterfor example, you can use zope.component without any problems14:31
srichter(I hope the twisted community will use that package eventually)14:32
srichtersince all calls there are non-blocking14:32
tekNicoOf course I can go over the code of any component I'm interested in, and check that nothing in it blocks.14:32
tekNicoHowever, that work will have to be redone at each new release, since the code will not have been written with non-blockingness in mind.14:33
tekNicoI realize it may be too much of a concern for too little gain, in general.14:33
tekNicoFor Zope3 developers, I mean.14:33
tekNicoBut a list of components with amount of non-blocking probability would be useful, maybe.14:34
tekNicoJust an indication, no promises, of course. :-)14:34
srichterfeel free to do it14:36
tekNicoOf course. :-)14:36
tekNicoAlas, I'm not a Zope3 developer, so my list would be static, and would probably get obsolete after a while.14:37
tekNicoIt's my impression that such information, if kept updated, could help reuse of Zope3 components in Twisted.14:37
tekNicoBut maybe those capable enough to develop Twisted itself do not need such a list, they can extract the info themselves.14:39
srichteryou would really need to identify what is usable to Twisted14:39
tekNicoThen there's the rest of us, that just use it, and hope to use parts of Zope3 too.14:39
srichterI am pretty sure that the list you come up with only contains non-blocking components14:39
tekNicoIt looks like a fairly big chunk of work, though, having to go over the code of many Zope3 components.14:41
srichteryep14:42
tekNicoI think I now understand a little better where some of the Twisted guys' NIH syndrome comes from. :-)14:43
srichterNIH?14:43
tekNicoNot Invented Here.14:44
*** SteveA has joined #zope3-dev14:44
philiKONsrichter, the very same problem zope has had and is (hopefully) getting rid of14:45
bob2zope3 seems to be a lot less NIH-y14:46
srichterright14:46
bob2and on that topic, where is a good place to initialise loggers?14:46
bob2ie should I try to hook into the instance startup?14:47
srichterthe twisted guys will eventually learn that writing everything yourself does not help14:47
srichterloggers are controlled via zope.conf14:47
tekNicosrichter: that sounds rather condescending. :-(14:47
bob2hrm, for application-specific logging?14:47
srichterbob2: depends on your use cases14:48
tekNicoI was trying to say that having a different execution (concurrency) model limits your chances of reusing stuff.14:48
tekNicoAnd that's happening again.14:48
srichtertekNico: no, it is not; it's just part of the learning process of a community14:48
bob2srichter: ah.  well, I'd like to be able to log specific changes to one of my objects14:49
srichterbob2: have an event subscriber to IObjectModifiedEvent and IMyContentType14:49
tekNicosrichter: except that there are different communities at work here, not just one.14:50
bob2srichter: right, but where should I be initialising logger?14:50
*** __gotchaway has joined #zope3-dev14:50
tekNicosrichter: then there's the question of what execution model is better.14:50
*** __gotchaway is now known as __gotcha14:50
srichtertekNico: what do you mean by "execution model"?14:51
philiKONsrichter, sometimes communities don't have to go thru that phase because their philosophy is totally based on reuse... see svn for example14:51
tekNicosrichter: same as before, execution, or concurrency, model, multithreading vs. async events.14:51
srichterphiliKON: right, I agree, but then some members had gone through that phase before ;-)14:51
philiKONsrichter, true :)14:51
srichtertekNico: you cannot say which one is better14:52
tekNicosrichter: I may be mistaken, but I think I can. I'm not alone, either. :-)14:53
srichtertekNico: I think twisted's model is good, since they deal with networking applications; Zope 3 does only marginally know about threads; it just executes what has to be done14:53
srichterthen why don't all those GUI frameworks and low-level OS ops switch to async models?14:54
srichteranyway, this discussion is totally pointless14:54
tekNicosrichter: as you prefer.14:55
tekNicosrichter: Anyway, thanks for having answered my questions, and suffered through some rants. :-)14:55
tekNicosrichter: but wait a minute. You said:14:56
tekNico"Zope 3 does only marginally know about threads; it just executes what has to be done"14:56
tekNicosrichter: And that's very good. Now, to really be concurrency-model-agnostic, it would only take avoiding blocking, and then it could be used in multiprocessing, multithreaded, and async events apps. :-)14:57
bob2that's a pretty big "only" :)14:58
tekNicosrichter: but as with everything, nothing comes without effort, and everyone will have to evaluate if it's worth the gain by him/herself.14:58
tekNicobob2: of course. :-)14:58
tekNicoWell, thanks again to everybody, and keep up the great, if slightly multithreaded, work. ;-D15:02
*** efge has joined #zope3-dev15:03
*** tekNico has left #zope3-dev15:03
*** __gotcha has quit IRC15:05
*** __gotcha has joined #zope3-dev15:06
*** benji_york has joined #zope3-dev15:06
*** mgedmin has joined #zope3-dev15:11
*** MiUlEr has quit IRC15:12
*** stub has joined #zope3-dev15:15
*** __gotcha_ has joined #zope3-dev15:23
*** tvon has joined #zope3-dev15:31
*** __gotcha has quit IRC15:37
*** mkerrin has joined #zope3-dev15:38
*** niemeyer has joined #zope3-dev15:53
*** __gotcha_ has quit IRC16:02
*** __gotcha_ has joined #zope3-dev16:02
*** __gotcha_ is now known as __gotcha16:02
*** gintas has joined #zope3-dev16:06
srichterbenji_york: I think for testing purposes we only have to register resources16:14
srichterthis should suffice and is much easier to do16:15
benji_yorkyep, I'm actually working on that a bit right now16:15
srichtercool16:15
*** MrTopf has quit IRC16:45
srichterbenji_york: would you think that exposing the handle_errors argument of HTTPCaller in open() and click() would be desirable?16:49
srichterI think it would, since it would allow for quick debugging16:49
srichterso if browser.click('Foo') fails with a system error, I could quickly type browser.click('Foo', handle_errors=False) to isnpect the exception16:50
*** stu1 has joined #zope3-dev16:55
srichterbenji_york: why did you not just make _findControl a function of the class, but this weird property?16:57
benji_yorksrichter: re handle_errors: I had thought about that, I think it would be OK, but I would like to extend it a bit, so if an exception is raised, you get the *real* traceback from the publisher (like the one that would go to the log)16:59
srichterok, what do we get now?17:00
benji_yorksrichter: re _findControl: that is some leftover-debugging code, it should just be a normal function17:00
srichterok17:00
benji_yorknow we get a traceback from urllib2 saying: hey, the site returned a status 50017:01
srichteroh, ok;17:01
srichterso where does the traceback then come from?17:02
benji_yorkthat's not real informative, it's just hiding the real traceback (but I'm not entirely sure how to get that to happen)17:02
benji_yorkwhich traceback, the one talking about the 500?17:02
srichterI thought handle_error=False in the HTTP caller just raises the error and it propagates all the way through17:02
srichterso you can say:17:03
srichtertry:17:03
srichter  http('...', handle_errors=False)17:03
srichterexcept, err: #Bare for now17:03
srichter  print err17:03
benji_yorkright, that's what I thought too, but something is catching it and raising a different exception, I haven't had time to track down why yet17:03
*** jw has joined #zope3-dev17:03
srichtermhh, ok17:04
*** stub has quit IRC17:10
*** MrTopf has joined #zope3-dev17:16
*** stu1 has quit IRC17:17
*** SteveA has quit IRC17:17
*** hdima has quit IRC17:25
bob2it'd be cool to be able to name doctests17:28
srichterwhy?17:28
bob2for when using the verbose testrunner17:29
bob2I guess it's a "don't do that" thing17:30
srichterbenji_york: mmh, if I change the argument handle_errors=True in caller = HTTPCaller(), caller(str, handle_errors=True) the error will propagate to the functional test17:30
srichterbenji_york: so the following works:17:30
srichter    >>> try:17:30
srichter    ...     browser.open('http://localhost/invalid')17:30
srichter    ... except Exception, error:17:30
srichter    ...     print error17:30
srichter    HTTP Error 404: Not Found17:30
srichterbob2: ahh, ok, I never used that ;-)17:30
srichterso now it all just become a matter of properly channeling the argument through the layers, which might not be that trivial17:31
srichteraehm, I meant to say:17:34
srichterbmmh, if I change the argument handle_errors=True in caller = HTTPCaller(), caller(str, handle_errors=False) the error will propagate to the functional test17:34
srichter    >>> browser.open('http://localhost/invalid')17:35
srichter    Traceback (most recent call last):17:35
srichter    ...17:35
srichter    NotFound: Object: <zope.app.folder.folder.Folder object at ...>, name: u'invalid'17:35
benji_yorksrichter: cool17:37
*** stub has joined #zope3-dev17:54
*** tvon has quit IRC18:03
*** alga has joined #zope3-dev18:09
*** projekt01 has quit IRC18:16
*** regebro has quit IRC18:17
*** SureshZ has joined #zope3-dev18:33
*** regebro has joined #zope3-dev18:45
*** MrTopf_ has joined #zope3-dev18:45
*** MrTopf has quit IRC18:54
*** MrTopf_ has quit IRC18:57
*** BjornT has joined #zope3-dev19:04
*** SteveA has joined #zope3-dev19:05
*** J1m has joined #zope3-dev19:06
benji_yorkafk - lunch19:08
benji_yorkback19:39
*** tvon has joined #zope3-dev19:54
*** gintas has quit IRC20:00
*** regebro has quit IRC20:17
mgedminbin/debugzope tips and tricks #73651: `import readline` works and makes the session much more pleasant20:22
srichterwhat's that?20:22
mgedminbin/debugzope warts #42: `help(debugger)`, `help(debugger.run)`, `help(debugger.publish)` are absolutely noninformative20:22
mgedmin'import readline' lets raw_input() use the readline module for history and other niceties20:23
mgedminwhat's the diff between debugger.run() and debugger.publish()?20:23
efgehm I don't need import readline, it's already there when I launch the python prompt20:23
mgedminefge, but is it there when you run bin/debugzope?20:24
mgedminit isn't for me20:24
benji_yorkmgedmin: what OS?20:25
efgeah I haven't tried that one. One zope 2, bin/zopectl debug has readline too, never tried the Zope 3 one20:25
mgedminand the answer to my question is: debugger.publish is like debugger.run, but publish prints the response body to stdout, while run doesn't20:25
mgedminbenji_york, linux20:25
mgedminubuntu, to be more specific20:25
J1mrun also tells the publisher not to handle errors.20:26
mgedminI'd like to write some docstrings for those methods20:26
*** faassen has quit IRC20:29
* mgedmin is testing his generation scripts on a copy of Data.fs with bin/debugzope20:29
*** efge has quit IRC20:30
philiKONmgedmin, you're right, i don't have readline features on zopectl debug even though the python prompt has 'em20:31
*** __gotcha is now known as __gotchaway20:31
mgedminphiliKON, you will get them if you manually import readline20:32
*** JZ has joined #zope3-dev20:37
benji_yorkmgedmin: that's what I thought, I switched my laptop to Ubuntu a month or so ago and have the same problem20:41
*** povbot` has joined #zope3-dev20:52
*** RaFromBRC has joined #zope3-dev21:04
*** povbot has quit IRC21:09
mphow do I get title of the rest document in zope3? :)21:12
srichterhow do you get to the rest document in the first place?21:14
mpwell, at the beginning there are lots of bytes21:16
mpwhich accidentally form in memory an object of unicode class21:16
mpwhich in turn is converted to rest source using named factory zope.rest.source21:17
mpand lot's of things can happen to this source21:17
srichterright21:17
srichterthis Source is not a rest object21:18
mpwell, those bytes are rest document :)21:18
mpmeaning of them is :)21:18
srichterit has merely a marker interface saying that the contents is ResT21:18
srichterhuh21:18
srichtercan you paste the code in a compact form here?21:19
mpI didn't really say that I have rest object (well, I didn't mean that). There is a rest->html renderer... At some point it uses rest machinery. But I don't think there is a way to get to the structure of this document (like sections etc) this way.. maybe there is some other way?21:20
srichterno, not this way21:20
srichteryou have to do the work yourself21:20
mpBy "having rest document" I mean having unicode string with rest document source..21:21
srichterok21:21
mpok, thanks very much :)21:21
srichterso you can look at zope.app.renderer.rest to see how to create a document21:21
mphm... at some point it might be a lot easier to convert rest to html "by hand" (without adapters etc).. when there's a need for some non-standard things21:22
mgedmin(evil brute force way: use lxml's xpath to extract the title from the document rendered into html)21:22
mpwell, I'm learning zope and doing my own private playing stuff, so I'll skip evil brute force ways for now :)21:23
srichtermgedmin: but once he has the rest doc parsed, he gets all this info for free21:23
mpI do evil brute force things at work :]21:23
*** tav_ has joined #zope3-dev21:24
*** tav has quit IRC21:33
*** bskahan has joined #zope3-dev21:36
*** sureshvv has joined #zope3-dev21:51
*** MrTopf has joined #zope3-dev21:59
*** projekt01 has joined #zope3-dev22:02
*** tav_ is now known as tav22:04
MrTopfhi22:05
srichterhi22:06
MrTopfdoes anybody can tell what I need to do in order to get rid of an ForbiddenAttribute: ('__contains__', <OOBTree...x3693ef8>) if I do obj.keys() in a view?22:06
MrTopfguess some permission is missing22:06
srichtergo to zope.app.security/_protections.zcml22:06
srichterlook for OOBTree22:06
srichterand add __contains___ to the allowed attributes22:07
srichter(please check this in as well)22:07
MrTopfah, a bug?22:07
*** tvon has quit IRC22:07
*** bskahan has quit IRC22:08
srichterif it is really missing, it is a bug22:08
MrTopfmaybe I will first do an update then22:08
MrTopfand I don't have checkin rights22:08
srichterlet me know whether it is still missing22:09
MrTopfHm, should update more often ;-)22:09
srichterand I'll add it22:09
MrTopftakes some time right now22:09
MrTopfit's in there, just don't know if it was before22:11
MrTopfI will just try again22:11
MrTopfhow do I update actually? guess I have to call make afterwards?22:11
benji_yorkif it's been a while since you've updated, yes22:12
MrTopfok22:13
*** BjornT has quit IRC22:14
MrTopfseems still to be forbidden22:14
MrTopfand it appears in _protections.zcml22:14
srichterthen its a problem on your end22:16
srichter(a) you container does not have a place and you do not have sufficient privs22:16
srichter(b) you are not logged in properly22:17
srichterbtw, I would always write objects that derive from OOBTree22:17
srichteri.e. have containers22:17
srichterthen you write all security yourself and containers give you locations22:18
MrTopfWell, I derive from BTreeContainer22:18
srichterin that case your perms are not setup correctly22:18
*** mgedmin has quit IRC22:18
MrTopfso I need to give permission on keys? or __contains__ ?22:18
MrTopfor maybe some interface?22:18
srichterbith, probably22:18
srichterdo it via the IReadContainer interface22:19
*** tarek has joined #zope3-dev22:19
srichterit has it all22:19
MrTopfok22:19
MrTopfwill try..22:19
MrTopfjust wondering why a dirlisting works then22:19
MrTopfHm, and it has these permissions actually set..22:20
MrTopfstrange22:20
srichterthen you somehow loose your security context22:20
srichterthat's a bit hard to debug via IRC22:20
MrTopfthink so..22:20
MrTopfbut thanks anyway22:21
MrTopfah, I retrieve this object via traverse(). Might this be the problem?22:21
MrTopfand take it's parent then via __parent__ and on this it fails22:22
srichteryeah, it probably has a security wrapper, but it should not have one22:22
srichteruse zope.security.proxy.removeSecurityProxy22:22
MrTopfcan I check what sort of proxy is around it and a bit more about it's settings?22:22
MrTopfthese security problems always seem to be a bit hard to track down22:23
srichteryeah, but I forgot how22:23
srichterits all in zope.security.checker22:23
MrTopfwe had one of these in Dresden and without Philipp I would have been hopelessly lost ;-)22:23
MrTopfok, will look there then, thanks!22:23
srichterno prob22:23
*** RaFromBRC has quit IRC22:23
*** SteveA has quit IRC22:24
*** stub has quit IRC22:26
*** alga_ has quit IRC22:35
MrTopfphiliKON: btw, that dummylock stuff worked22:40
philiKONof course it did :)22:40
philiKONso, you can save from finder now?22:40
MrTopfso at least it now thinks it is saving something22:40
philiKONheh22:41
MrTopfwe didn't complete the MOVE ;-)22:41
philiKON:(22:41
MrTopfof course finder first upload a tmp file and then moves it22:41
MrTopfand inside that move I now get the above mentioned security errors22:41
philiKON()@#*$)@#$ that finder22:41
* philiKON hasn't read the channel history22:41
philiKONstill studying :(22:41
MrTopfI am trying a different approach now22:41
MrTopfkeep on studying!22:41
philiKONnot before you tell me the approach :)22:42
MrTopfwell, first I thought I can use copypastemove or how it's called22:43
MrTopfbut of course I cannot22:43
MrTopfas it's not on the filerep layer22:43
philiKONso?22:44
philiKONyou shoudl still be able to move it22:44
philiKONto use it for moving22:44
MrTopfso now I found out how to get the destination object via traverse() by some grepping22:44
philiKONah22:44
MrTopfbut I don't want to replace the photo object22:44
philiKONof course22:44
philiKONyou want a new version22:44
MrTopfI want a new version, so I cannot let it do the folder[id]=object thing22:44
MrTopfso from the original I now do a getLatestVersion(), get it's data attribute and I adapt the destination object to IWriteFile and call it's write()22:45
MrTopfI am just wondering what will happen in the case of a new file22:45
MrTopfIIRC we created that example via FTP22:45
MrTopfbut now I have a different problem anyway as my webdav view looks suddenly empty..22:46
philiKONoh well22:47
philiKONenjoy :)22:47
philiKONgotta go back to my studies22:47
MrTopfAnd I should actually still do some other work..22:47
MrTopfenjoy, too ;-)22:47
sureshvvphil... Does Sfive create a content type you can add in the ZMI?22:49
MrTopfhm, no exception anymore and debug looks good but no new version is generated.. so I will switch to something else then ;-)22:51
philiKONsureshvv, nope22:56
philiKONsureshvv, ah, you already found out on #z3-base22:56
MrTopfphiliKON: ok, works now :)23:01
MrTopfphiliKON: though with Finder you have one empty version first and then you have the actual photo as version 123:01
MrTopfor maybe it's a bug at my side somewhere23:01
MrTopfanyway..23:02
*** sureshvv has quit IRC23:05
*** timte has quit IRC23:12
*** tvon has joined #zope3-dev23:15
*** MrTopf has quit IRC23:22
*** MrTopf has joined #zope3-dev23:23
*** tarek has quit IRC23:29
*** RaFromBRC has joined #zope3-dev23:49

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