*** harobed has quit IRC | 00:00 | |
*** redir has joined #zope3-dev | 00:01 | |
*** dobee has quit IRC | 00:22 | |
*** jodok has left #zope3-dev | 00:27 | |
*** jodok has joined #zope3-dev | 00:27 | |
jodok | Theuni: ping | 00:27 |
---|---|---|
*** RaFromBRC is now known as RaFromBRC|lunch | 00:27 | |
*** pelle_ has quit IRC | 00:29 | |
*** jinty has joined #zope3-dev | 00:31 | |
*** Aiste has quit IRC | 00:33 | |
*** schwendinger has joined #zope3-dev | 00:37 | |
*** jsadjohnson has quit IRC | 00:47 | |
*** pcardune has quit IRC | 00:48 | |
*** jfroche has quit IRC | 00:54 | |
*** dennis_ has joined #zope3-dev | 00:57 | |
*** dennis_ has quit IRC | 00:58 | |
*** torkel_ has joined #zope3-dev | 00:58 | |
*** dennis_ has joined #zope3-dev | 00:58 | |
*** natea|lunch has quit IRC | 01:01 | |
*** RaFromBRC|lunch is now known as RaFromBRC | 01:02 | |
*** jinty has quit IRC | 01:05 | |
*** J1m_ has quit IRC | 01:05 | |
*** benji has quit IRC | 01:07 | |
*** jsadjohnson has joined #zope3-dev | 01:09 | |
*** faassen has quit IRC | 01:11 | |
*** natea|lunch has joined #zope3-dev | 01:14 | |
*** norro has quit IRC | 01:14 | |
*** nerdalert has quit IRC | 01:19 | |
*** schwendinger has quit IRC | 01:24 | |
*** timte has quit IRC | 01:29 | |
*** natea|lunch is now known as natea | 01:33 | |
*** projekt01 has joined #zope3-dev | 01:34 | |
*** jsadjohnson has quit IRC | 01:36 | |
*** WebMaven_ has joined #zope3-dev | 01:40 | |
*** pcardune has joined #zope3-dev | 01:43 | |
*** andrew_m has quit IRC | 01:52 | |
*** jsadjohnson has joined #zope3-dev | 01:55 | |
*** WebMaven has quit IRC | 01:55 | |
*** WebMaven_ has quit IRC | 01:56 | |
*** natea has quit IRC | 02:00 | |
*** oferw has quit IRC | 02:02 | |
*** natea|iceland has joined #zope3-dev | 02:04 | |
*** jsadjohnson has quit IRC | 02:07 | |
*** J1m has quit IRC | 02:09 | |
*** jodok has quit IRC | 02:29 | |
pcardune | srichter: ping | 02:34 |
pcardune | projekt01: ping | 02:36 |
projekt01 | pcardune, yup | 02:41 |
pcardune | projekt01: regarding your email, the fullName required object was necessary so that the fullName would be passed to the constructor of JSButtonAction, which is how ButtonAction gets constructed as well | 02:42 |
pcardune | that is why I put it in there, although I do agree that a string for a required object doesn't make sense | 02:42 |
projekt01 | ouch | 02:42 |
pcardune | do you know if srichter was talking about making form and context required objects for all IFieldWidget adapters? or just for my specific case of buttonAction adaptation? | 02:43 |
pcardune | I think the former would be really cool | 02:43 |
projekt01 | pcardune, then we should write a adapter factory which does the name handling, but I'm not sure because I didn't look at the code. | 02:43 |
pcardune | projekt01: an adapter factory? how would that work? | 02:44 |
projekt01 | pcardune, is your sandbox working? | 02:44 |
pcardune | tests don't pass yet | 02:45 |
projekt01 | a factory is a method which lets you define a adapter call, this factory knows the name (string). This factory is registered as adapter. | 02:45 |
projekt01 | this means the (method) adapter is a hook which dispatches the adapter call and calls the constructor of the button. | 02:46 |
pcardune | but how does the factory know the name? | 02:46 |
pcardune | ooh | 02:46 |
projekt01 | hardcoded | 02:46 |
pcardune | i think I understand | 02:46 |
projekt01 | the adapter call in the form doesn't know and use the name, you can delegate this into the adapter factory. | 02:47 |
projekt01 | But I'm really not sure if this will fit for you uscase. It's just a patter which can be used for adapters. | 02:48 |
pcardune | that would be similar to setting the name after construction? | 02:49 |
projekt01 | pcardune, is it in the zobby sandbox? | 02:49 |
projekt01 | yes, if this is possible, its better to set a attribute later | 02:50 |
pcardune | projekt01: are you looking for my use case or for my modification to z3c.form? | 02:50 |
pcardune | z3c.formjs is in http://svn.zope.org/Sandbox/pcardune/z3cFormJS/trunk/ | 02:51 |
projekt01 | both | 02:51 |
pcardune | the modification to z3c.form is in http://svn.zope.org/z3c.form/branches/pcardune-tweaks/ | 02:52 |
projekt01 | Do you hava a working trunk somewhere or do I have to move the package to a own working zope3 | 02:52 |
pcardune | I do not have my own working trunk | 02:52 |
projekt01 | is the zobby trunk working? | 02:53 |
pcardune | as far as I remember yes | 02:53 |
pcardune | but it does not include any of that stuff | 02:53 |
pcardune | as soon as I start developing demos, i'll have a working trunk | 02:53 |
projekt01 | cool | 02:54 |
pcardune | unfortunately, the name can't be set later because it is used right away in __init__ to construct the Action object | 02:54 |
pcardune | in any case, setting the name afterwords would seem very bad form | 02:55 |
projekt01 | can we change the __init__? | 02:55 |
pcardune | actually, it wouldn't be so bad | 02:55 |
pcardune | because the Action.__init__ doesn't do anything interesting to the name, although it will generate one if it gets None | 02:56 |
projekt01 | Yes, yo can set None and later set the name, right? | 02:58 |
pcardune | yes | 02:58 |
pcardune | in fact, the name defaults to None | 02:58 |
projekt01 | yes, and set the name later, will override the title as name which get used if name=None | 02:59 |
pcardune | but I'm still not clear on where this overriding is supposed to happen | 03:00 |
pcardune | If i understand correct, there is a function that adapts request, button to IFieldWidget | 03:00 |
pcardune | the function creates the custom ButtonAction implementation and sets the name | 03:01 |
pcardune | but how does it know the name? | 03:01 |
*** natea|iceland has quit IRC | 03:01 | |
projekt01 | I'm lookin at line 231 in field.py that's what we should do for the button action. | 03:01 |
pcardune | ok, that is what I was originally thinking | 03:02 |
pcardune | I thought you were talking about something more complicated | 03:02 |
projekt01 | and why not support a actionFactory attribute for IButton | 03:02 |
pcardune | to allow for more specific customization? | 03:04 |
projekt01 | for custom widget, we offer a widgetFactory attribute which allows you to define custom widget classes at a class level in the form. | 03:05 |
projekt01 | e.g. fields['foo'].widgetFactory = FooWidget | 03:05 |
pcardune | I like this idea | 03:06 |
projekt01 | But i'm a little bit lost right now. What was the usecase for your changes? | 03:06 |
pcardune | sounds good, I'll make those changes | 03:06 |
pcardune | well, I wanted to create my own javascript buttons but use them in the same way as the regular buttons | 03:07 |
pcardune | including putting them in the same buttons container | 03:07 |
pcardune | and it just made sense to put them in the same actions container as the rest of the buttons | 03:08 |
projekt01 | are you looking for a way taht your custom button get used instead of the original button? | 03:08 |
pcardune | right | 03:08 |
projekt01 | Ah, cool, this measn you can use existing forms and apply javascript buttons later. | 03:09 |
projekt01 | Argh, I can't type today | 03:09 |
pcardune | yes | 03:10 |
*** natea|iceland has joined #zope3-dev | 03:18 | |
*** benji has joined #zope3-dev | 03:22 | |
*** wrobel has quit IRC | 03:25 | |
*** alecm has quit IRC | 03:29 | |
*** febb has joined #zope3-dev | 03:32 | |
*** alecm has joined #zope3-dev | 03:34 | |
*** alecm has quit IRC | 03:38 | |
*** tjs has joined #zope3-dev | 03:39 | |
*** b52GM has quit IRC | 03:39 | |
*** redir has quit IRC | 03:46 | |
*** ZopeIn has joined #zope3-dev | 04:20 | |
ZopeIn | Could anyone give me a hint how to add an object into a folder which happens to be an attribute of another object? I have this forbiddenAttribute error when I try self.context.anAttribute[name]=obj | 04:23 |
*** huajie has joined #zope3-dev | 04:25 | |
pcardune | ZopeIn: it is probably security proxied | 04:25 |
pcardune | try using the removeSecuriyProxy function as in removeSecurityProxy(self.context).anAttribute[name] | 04:26 |
ZopeIn | but removeSecurityProxy does not solve the problem either | 04:26 |
pcardune | is the attribute defined in the interface the view is for/ | 04:27 |
pcardune | ? | 04:27 |
pcardune | I think a browser view can only access those attributes defined in the interface which the view is registered for | 04:28 |
pcardune | I'm not positive though | 04:28 |
ZopeIn | alright, removeSecurityProxy worked, thanks a lot, buddy | 04:28 |
pcardune | no problem | 04:28 |
*** pcardune is now known as pcardune_climbin | 04:29 | |
*** niemeyer has quit IRC | 04:34 | |
projekt01 | pcardune, it's important the you locate the attribute if it's a object or a container. | 04:36 |
projekt01 | you can do this with the locate method like: | 04:37 |
projekt01 | zope.location.locate(subobject, self, u'the name') | 04:37 |
projekt01 | and don't forget to fire the object created event if you add a object in a __init__ method as a attribute | 04:38 |
*** febb has quit IRC | 04:43 | |
*** WebMaven has joined #zope3-dev | 04:51 | |
*** ZopeIn has quit IRC | 05:03 | |
*** projekt01 has quit IRC | 05:34 | |
*** RaFromBRC has quit IRC | 05:38 | |
*** rcrafton has joined #zope3-dev | 05:47 | |
*** whit has quit IRC | 06:12 | |
*** stub has joined #zope3-dev | 06:30 | |
*** harobed has joined #zope3-dev | 06:31 | |
*** cursor has joined #zope3-dev | 06:36 | |
*** rcrafton has quit IRC | 06:47 | |
*** torkel_ has quit IRC | 06:48 | |
*** greenman has quit IRC | 06:54 | |
*** cursor has quit IRC | 07:11 | |
*** baijum has joined #zope3-dev | 07:18 | |
*** alecm has joined #zope3-dev | 07:22 | |
*** dobee has joined #zope3-dev | 08:05 | |
*** afd__ has joined #zope3-dev | 08:19 | |
*** dobee has quit IRC | 08:35 | |
*** zagy has joined #zope3-dev | 08:47 | |
*** jukart has joined #zope3-dev | 08:48 | |
*** dobee has joined #zope3-dev | 08:48 | |
*** dobee has quit IRC | 08:50 | |
*** dobee has joined #zope3-dev | 08:51 | |
*** sorin has joined #zope3-dev | 08:55 | |
*** sorin is now known as sorindregan | 08:56 | |
*** d2m has joined #zope3-dev | 08:56 | |
tjs | I have an annotation that has an attribute 'reminders' that is a PersistentList that defaults to ['email'] | 09:00 |
tjs | in the interface this is a schema.Choice with a SimpleVocabulary | 09:01 |
tjs | and in the view I use a MultiCheckBoxWidget to render it | 09:01 |
tjs | everything is fine, it renders, I can update the options | 09:01 |
tjs | except if I unselect everything | 09:02 |
tjs | then I get a type error | 09:02 |
tjs | seems pretty flakey | 09:02 |
*** romanofski has quit IRC | 09:03 | |
*** ghendi has joined #zope3-dev | 09:10 | |
*** RaFromBRC has joined #zope3-dev | 09:14 | |
*** greenman has joined #zope3-dev | 09:17 | |
*** iam-vivek has joined #zope3-dev | 09:24 | |
*** jodok has joined #zope3-dev | 09:26 | |
*** schwendinger has joined #zope3-dev | 09:31 | |
*** iam-vivek is now known as nikhil_n | 09:32 | |
*** wrobel has joined #zope3-dev | 09:33 | |
*** alecm has quit IRC | 09:33 | |
*** RaFromBRC has quit IRC | 09:40 | |
*** pelle_ has joined #zope3-dev | 09:47 | |
*** romanofski has joined #zope3-dev | 09:53 | |
romanofski | moin | 09:54 |
*** yvl has joined #zope3-dev | 09:56 | |
*** Aiste has joined #zope3-dev | 10:04 | |
*** harobed has quit IRC | 10:07 | |
*** nikhil_n has quit IRC | 10:13 | |
*** wreutz has joined #zope3-dev | 10:16 | |
*** pcardune_climbin has quit IRC | 10:33 | |
*** timte has joined #zope3-dev | 10:39 | |
*** reco has joined #zope3-dev | 10:39 | |
*** romanofski has quit IRC | 10:46 | |
*** kleist has joined #zope3-dev | 10:47 | |
*** harobed has joined #zope3-dev | 10:53 | |
*** RedDevils has joined #zope3-dev | 10:59 | |
*** malthe has joined #zope3-dev | 11:03 | |
*** RedDevils has quit IRC | 11:04 | |
*** RedDevils has joined #zope3-dev | 11:05 | |
*** RedDevils has left #zope3-dev | 11:05 | |
*** RedDevils has joined #Zope3-dev | 11:06 | |
*** andrew_m has joined #zope3-dev | 11:14 | |
*** Aswin_S has joined #Zope3-dev | 11:18 | |
*** Aswin_S is now known as nikhil_n | 11:18 | |
*** schwendinger_ has joined #zope3-dev | 11:27 | |
*** Aiste has quit IRC | 11:29 | |
*** MJ has joined #zope3-dev | 11:34 | |
*** schwendinger has quit IRC | 11:34 | |
*** schwendinger has joined #zope3-dev | 11:34 | |
*** jfroche has joined #zope3-dev | 11:44 | |
*** schwendinger_ has quit IRC | 11:51 | |
*** Aiste has joined #zope3-dev | 11:53 | |
*** jodok has quit IRC | 12:00 | |
*** jodok has joined #zope3-dev | 12:01 | |
*** dunny has joined #zope3-dev | 12:03 | |
*** jinty has joined #zope3-dev | 12:03 | |
*** philiKON has joined #zope3-dev | 12:06 | |
*** dobee has left #zope3-dev | 12:09 | |
*** dobee has joined #zope3-dev | 12:09 | |
dobee | test | 12:09 |
timte | works :) | 12:11 |
*** malthe_ has joined #zope3-dev | 12:13 | |
*** richardkan has joined #zope3-dev | 12:14 | |
malthe_ | nikhil_n: Ran 144 tests with 0 failures and 0 errors in 16.296 seconds. | 12:18 |
nikhil_n | that means its ok in python2.5 now | 12:19 |
nikhil_n | i also tried for making it working in both versions | 12:20 |
nikhil_n | when i ran tests its working in both versions | 12:21 |
nikhil_n | malthe , thanks helping | 12:22 |
*** romanofski has joined #zope3-dev | 12:23 | |
*** philiKON_ has quit IRC | 12:23 | |
*** |RedDevi| has joined #Zope3-dev | 12:26 | |
*** RedDevils has quit IRC | 12:26 | |
*** |RedDevi| has left #Zope3-dev | 12:29 | |
*** |RedDevi| has joined #Zope3-dev | 12:29 | |
*** malthe has quit IRC | 12:30 | |
*** |RedDevi| has quit IRC | 12:30 | |
*** RedDevils has joined #Zope3-dev | 12:30 | |
*** drzoltron has joined #zope3-dev | 12:34 | |
*** drzoltron has left #zope3-dev | 12:34 | |
*** dobee has quit IRC | 12:38 | |
*** jodok_ has joined #zope3-dev | 12:38 | |
*** jodok has quit IRC | 12:38 | |
*** dobee has joined #zope3-dev | 12:38 | |
*** jukart has quit IRC | 12:38 | |
*** jukart has joined #zope3-dev | 12:39 | |
*** dobee has quit IRC | 12:40 | |
*** jodok_ has quit IRC | 12:40 | |
*** jukart has quit IRC | 12:40 | |
*** jukart has joined #zope3-dev | 12:40 | |
*** jodok has joined #zope3-dev | 12:40 | |
*** dobee has joined #zope3-dev | 12:40 | |
*** RedDevils has quit IRC | 12:41 | |
*** Aswin_S has joined #zope3-dev | 12:43 | |
*** jinty has quit IRC | 12:43 | |
*** WebMaven has quit IRC | 12:44 | |
*** schwendinger has quit IRC | 13:02 | |
*** nikhil_n has quit IRC | 13:08 | |
*** mgedmin has joined #zope3-dev | 13:11 | |
*** Aswin_S has quit IRC | 13:16 | |
*** coolestuk has joined #zope3-dev | 13:22 | |
*** stub has quit IRC | 13:31 | |
*** natea|iceland is now known as natea | 13:58 | |
*** MJ is now known as MJ|lunch | 13:59 | |
*** schwendinger has joined #zope3-dev | 14:02 | |
*** dunny has quit IRC | 14:03 | |
*** torkel_ has joined #zope3-dev | 14:09 | |
*** huajie has quit IRC | 14:14 | |
*** benji has quit IRC | 14:18 | |
*** rocky|away is now known as rocky | 14:24 | |
*** ignas has joined #zope3-dev | 14:26 | |
*** MJ|lunch is now known as MJ | 14:32 | |
*** ghendi has quit IRC | 14:37 | |
*** schwendinger_ has joined #zope3-dev | 14:44 | |
*** sorindregan has quit IRC | 14:47 | |
*** jinty has joined #zope3-dev | 14:50 | |
*** malthe_ is now known as malthe|away | 14:51 | |
*** Newfie2007 has joined #zope3-dev | 14:53 | |
*** greenman has quit IRC | 14:56 | |
*** benji has joined #zope3-dev | 15:00 | |
*** schwendinger has quit IRC | 15:01 | |
*** ktwilight_ has quit IRC | 15:02 | |
*** ktwilight has joined #zope3-dev | 15:03 | |
*** norro has joined #zope3-dev | 15:05 | |
*** faassen has joined #zope3-dev | 15:05 | |
*** projekt01 has joined #zope3-dev | 15:12 | |
*** schwendinger_ has quit IRC | 15:19 | |
*** J1m has joined #zope3-dev | 15:20 | |
*** niemeyer has joined #zope3-dev | 15:22 | |
*** norro_ has joined #zope3-dev | 15:30 | |
*** wrobel` has joined #zope3-dev | 15:34 | |
*** wrobel has quit IRC | 15:35 | |
*** wrobel` is now known as wrobel | 15:35 | |
*** jinty has quit IRC | 15:40 | |
*** schwendinger has joined #zope3-dev | 15:40 | |
*** norro has quit IRC | 15:40 | |
*** Jell-O-Fishi has joined #zope3-dev | 15:41 | |
*** jinty has joined #zope3-dev | 15:44 | |
*** salfield has joined #zope3-dev | 15:59 | |
*** norro_ has quit IRC | 16:00 | |
*** sorin has joined #zope3-dev | 16:01 | |
*** sorin is now known as sorindregan | 16:01 | |
*** redir has joined #zope3-dev | 16:10 | |
*** coolestuk has quit IRC | 16:15 | |
*** cursor has joined #zope3-dev | 16:16 | |
*** cursor has quit IRC | 16:18 | |
*** cursor has joined #zope3-dev | 16:19 | |
*** baijum has quit IRC | 16:30 | |
*** coolestuk has joined #zope3-dev | 16:35 | |
*** rcrafton has joined #zope3-dev | 16:56 | |
*** derek|office is now known as derek_richardson | 16:59 | |
*** rcrafton has quit IRC | 17:03 | |
*** pandres has quit IRC | 17:05 | |
*** rcrafton has joined #zope3-dev | 17:06 | |
*** whitness has joined #zope3-dev | 17:06 | |
*** whitness is now known as whit | 17:10 | |
*** alecm has joined #zope3-dev | 17:11 | |
*** pandres has joined #zope3-dev | 17:13 | |
*** rcrafton has quit IRC | 17:14 | |
*** pandres has quit IRC | 17:16 | |
*** stub has joined #zope3-dev | 17:17 | |
*** afd__ has quit IRC | 17:24 | |
*** alecm has quit IRC | 17:25 | |
*** pelle_ has quit IRC | 17:26 | |
*** alecm has joined #zope3-dev | 17:30 | |
*** rocky is now known as rocky|away | 17:38 | |
*** rcrafton has joined #zope3-dev | 17:39 | |
*** sorindregan has quit IRC | 17:41 | |
*** whit has quit IRC | 17:41 | |
*** whit has joined #zope3-dev | 17:41 | |
*** cursor has quit IRC | 17:49 | |
*** whit has quit IRC | 17:53 | |
*** schwendinger_ has joined #zope3-dev | 17:55 | |
*** pcardune_climbin has joined #zope3-dev | 18:01 | |
*** pandres has joined #zope3-dev | 18:04 | |
*** pcardune_climbin is now known as pcardune | 18:04 | |
*** malthe|away is now known as malthe | 18:06 | |
*** schwendinger has quit IRC | 18:08 | |
*** schwendinger has joined #zope3-dev | 18:08 | |
*** nerdalert has joined #zope3-dev | 18:09 | |
*** wreutz has quit IRC | 18:11 | |
*** coolestuk has quit IRC | 18:12 | |
*** stub has quit IRC | 18:15 | |
*** lucielejard has joined #zope3-dev | 18:20 | |
*** timte has quit IRC | 18:23 | |
*** mgedmin has quit IRC | 18:24 | |
*** mgedmin has joined #zope3-dev | 18:24 | |
*** afd_ has quit IRC | 18:25 | |
*** schwendinger_ has quit IRC | 18:25 | |
*** jukart has quit IRC | 18:27 | |
*** rlo has joined #zope3-dev | 18:30 | |
*** rlo has quit IRC | 18:31 | |
*** rlo has joined #zope3-dev | 18:31 | |
xbeanx | What is the difference between a BrowserPage and a BrowserView ? | 18:33 |
xbeanx | Is a BrowserView supposed to be a view of an object? | 18:33 |
*** rlo has quit IRC | 18:36 | |
dennis_ | xbeanx a page is a complete page, which you can access with a browser. A view is something which does not have to be a whole page, and which you can only reference from inside other views, pages or viewlets, like the loginlogout view, which presents a login link and username, but is not its own page | 18:38 |
dennis_ | thats as far as I understand it | 18:38 |
xbeanx | dennis_: makes sense... I was totally off course on that one.. | 18:39 |
*** projekt01 has quit IRC | 18:44 | |
*** MJ has quit IRC | 18:45 | |
*** jodok has quit IRC | 18:48 | |
*** redir has quit IRC | 18:48 | |
*** derek_richardson has quit IRC | 18:50 | |
*** ctp has joined #zope3-dev | 18:50 | |
ctp | hi folks. i am relatively new to zope+plone. i have put a navtree.py and an overrides.zcml into an existing product (LinguaPlone) to extend Plone's navtree functionality, but it seems that they're not loaded properly. should the overrides.zcml be loaded automagically restarting zope or have i to modify some other existing files? | 18:52 |
*** rocky|away is now known as rocky | 18:54 | |
Cripps | I have a *site* implemented, but when I create an instance of the site, I don't have the add menu in the ZMI ... what is the most likely thing that I'm missing? | 19:09 |
Cripps | gosh, that question wasn't very clear at all ... | 19:09 |
*** norro has joined #zope3-dev | 19:11 | |
Cripps | I have a site whose interface extends IPossibleSite and IContainer (as per Phil's book), and the Container is turned into a site on instantiation, I would like to use the ZMI to add components to the site, but there is no add menu on the left of the ZMI under the site ... so, I know I'm missing something, I just don't know what (since Folder does have the Add menu after Turning a Folder instance into a site). | 19:11 |
*** alga has joined #zope3-dev | 19:14 | |
*** harobed_ has joined #zope3-dev | 19:15 | |
*** timte has joined #zope3-dev | 19:18 | |
Cripps | so essentially, what I'm asking is: how do I ensure that a (sub)site retains the Add menu from the ZMI. | 19:23 |
*** whit has joined #zope3-dev | 19:27 | |
*** jsadjohnson has joined #zope3-dev | 19:27 | |
*** kleist has quit IRC | 19:31 | |
*** b52lap has quit IRC | 19:32 | |
*** malthe has quit IRC | 19:33 | |
*** coolestuk has joined #zope3-dev | 19:35 | |
*** jsadjohnson has quit IRC | 19:35 | |
*** schwendinger has quit IRC | 19:36 | |
*** cursor has joined #zope3-dev | 19:36 | |
*** natea has quit IRC | 19:36 | |
*** b52lap has joined #zope3-dev | 19:38 | |
*** dobee has quit IRC | 19:40 | |
norro | Cripps by implementing adequat container and contained interfaces to the objects? | 19:40 |
Cripps | norro: I've got contained in my Site interface, I can try adding container to another component and see if that works ... I thought that contains and container just constrained the type of objects you could put into a container though ... | 19:42 |
*** jsadjohnson has joined #zope3-dev | 19:43 | |
Cripps | norro: no, that isn't working. :/ | 19:47 |
*** jfroche has quit IRC | 19:47 | |
*** derek_richardson has joined #zope3-dev | 19:48 | |
norro | hmmm, months ago i did that stuff, so I'm really not sure. Unfortunately I can't have a look at the sources right now | 19:49 |
Cripps | norro: that's ok. Thanks for the attempt :) | 19:49 |
norro | I based it on srichters book as far as i can remember | 19:50 |
norro | np :) | 19:50 |
*** norro has quit IRC | 19:50 | |
Cripps | I'm doing mine on phil's book ;) | 19:50 |
Cripps | *based on phil's book | 19:50 |
*** coolestuk has quit IRC | 19:51 | |
*** harobed_ has quit IRC | 19:54 | |
*** yvl has quit IRC | 19:58 | |
*** RaFromBRC has joined #zope3-dev | 19:58 | |
*** coolestuk has joined #zope3-dev | 20:00 | |
*** derek_richardson has quit IRC | 20:02 | |
*** reco has quit IRC | 20:06 | |
*** coolestuk has quit IRC | 20:08 | |
*** derek_richardson has joined #zope3-dev | 20:09 | |
*** coolestuk has joined #zope3-dev | 20:12 | |
*** jsadjohnson has quit IRC | 20:14 | |
Cripps | philiKON: are you around? | 20:24 |
*** dunny has joined #zope3-dev | 20:25 | |
*** coolestuk has quit IRC | 20:35 | |
*** coolestuk has joined #zope3-dev | 20:36 | |
*** richardkan has quit IRC | 20:37 | |
*** wreutz has joined #zope3-dev | 20:42 | |
*** ignas has quit IRC | 20:53 | |
*** wreutz_ has joined #zope3-dev | 20:56 | |
*** Newfie2007 has quit IRC | 20:59 | |
*** Newfie2007 has joined #zope3-dev | 21:00 | |
*** redir has joined #zope3-dev | 21:02 | |
*** coolestuk has quit IRC | 21:03 | |
*** redir has quit IRC | 21:03 | |
*** redir has joined #zope3-dev | 21:03 | |
*** redir has quit IRC | 21:04 | |
*** rlo has joined #zope3-dev | 21:04 | |
*** wreutz has quit IRC | 21:05 | |
*** schwendinger has joined #zope3-dev | 21:11 | |
*** romanofski has quit IRC | 21:15 | |
*** redir has joined #zope3-dev | 21:15 | |
*** jsadjohnson has joined #zope3-dev | 21:16 | |
*** whit is now known as whit|lunch | 21:18 | |
*** jodok has joined #zope3-dev | 21:21 | |
*** rlo has quit IRC | 21:21 | |
*** jsadjohnson has quit IRC | 21:32 | |
*** whit|lunch is now known as whit | 21:32 | |
*** pelle_ has joined #zope3-dev | 21:45 | |
*** natea|break has joined #zope3-dev | 21:47 | |
*** redir has quit IRC | 22:06 | |
*** jfroche has joined #zope3-dev | 22:09 | |
*** cursor has left #zope3-dev | 22:09 | |
*** jfroche has quit IRC | 22:09 | |
*** jfroche has joined #zope3-dev | 22:09 | |
*** jkakar_ has joined #zope3-dev | 22:11 | |
*** romanofski has joined #zope3-dev | 22:11 | |
*** malthe has joined #zope3-dev | 22:12 | |
*** jkakar has quit IRC | 22:13 | |
*** jkakar_ is now known as jkakar | 22:15 | |
*** pcardune is now known as pcardune_lunch | 22:17 | |
*** jfroche has quit IRC | 22:19 | |
*** natea|break is now known as natea | 22:23 | |
*** salfield has quit IRC | 22:34 | |
*** natea_ has joined #zope3-dev | 22:38 | |
*** Aiste has quit IRC | 22:41 | |
*** RaFromBRC is now known as RaFromBRC|lunch | 22:42 | |
*** natea has quit IRC | 22:44 | |
*** Aiste has joined #zope3-dev | 22:44 | |
*** Newfie2007 has quit IRC | 22:54 | |
ccomb | Hi, is there a way to know why a security proxy forbids some access ? | 22:55 |
pcardune_lunch | ccomb: no not really... at least it's not easy | 22:56 |
*** BjornT has quit IRC | 22:56 | |
pcardune_lunch | ccomb: but if you find out how, let me know | 22:56 |
*** pcardune_lunch is now known as pcardune | 22:56 | |
J1m | A forbidden error is *always* caused by a lack of a declaration for an attribute. | 22:56 |
J1m | You just need to look at the declarations for the object you get the forbidden error for. | 22:57 |
*** redir has joined #zope3-dev | 22:57 | |
ccomb | J1m: That's what I'm searching for 1 hour | 23:00 |
J1m | What does the exception say? | 23:00 |
*** BjornT has joined #zope3-dev | 23:01 | |
ccomb | I'm trying to write an object attribute in a IObjectModifiedEvent | 23:01 |
ccomb | The exact same action works in the IObjectAddedEvent | 23:01 |
ccomb | the attribute is part of the object interface and is zcml declared with set_schema | 23:02 |
J1m | Where did you get the IObjectModified event? Is this in a subscriber? | 23:02 |
ccomb | I get the error in the subscriber | 23:02 |
ccomb | The odd thing is I can write an attribute which is part of a upper interface, but not the one of the objects interface | 23:03 |
*** mgedmin has quit IRC | 23:04 | |
J1m | May I see the exception? | 23:04 |
* ccomb pasting | 23:05 | |
Theuni | Hey J1m | 23:06 |
Theuni | What's your notion of ZODB's ACID compatibility? | 23:07 |
ccomb | J1m : http://pastebin.ca/579717 | 23:07 |
ccomb | Is zope.interface.Attribute taken into account with set_schema declaration ? | 23:11 |
*** harobed_ has joined #zope3-dev | 23:16 | |
*** schwendinger_ has joined #zope3-dev | 23:17 | |
*** derek_richardson is now known as derek|office | 23:17 | |
ccomb | I've added a set_attributes declaration and it works but.... | 23:17 |
ccomb | without this declaration I was able to write this attribute from the IObjectAddedEvent subscriber | 23:17 |
*** schwendinger has quit IRC | 23:18 | |
*** stub has joined #zope3-dev | 23:21 | |
*** pelle_ has quit IRC | 23:22 | |
*** pelle_ has joined #zope3-dev | 23:22 | |
J1m | Theuni, I consider ZODB to have the ACID properties. | 23:24 |
J1m | ccomb, set_schema only looks at fields. | 23:24 |
ccomb | so why was I able to modify the attribute in the IObjectAddedEvent subscriber? | 23:25 |
pcardune | ccomb: was it not security proxied? | 23:25 |
ccomb | yes it was | 23:25 |
J1m | ccomb, because the IObjectAddedEvent has an unproxied object and IObjectModifiedEvent has a proxied object. | 23:26 |
*** RaFromBRC|lunch is now known as RaFromBRC | 23:26 | |
*** oferw has joined #zope3-dev | 23:26 | |
J1m | It's not clear to me why an object added event should have an unproxied object. | 23:26 |
*** stub has quit IRC | 23:27 | |
*** norro has joined #zope3-dev | 23:28 | |
ccomb | ah, I've just check it's true, it's not proxied in the add event | 23:28 |
ccomb | So one can do what we want in such a subscriber ? | 23:29 |
J1m | Like I said, it's not clear that an add event should have unproxied data. | 23:29 |
J1m | If you're writing trusted code, you can do what you want in any case. After all, there's an API for removing security proxies. | 23:30 |
*** yvl has joined #zope3-dev | 23:30 | |
ccomb | It's assumed that if the principal has the permission to add the object, he can write anything on it ? | 23:30 |
*** rocky is now known as rocky|away | 23:30 | |
ccomb | actually I don't see any reason why it should behave in a different manner from a modify event | 23:32 |
J1m | The security system tries to help you by restricting what you can do based on authorizationa nd protections settings. If you find it's getting in your way and you want to be responsible for secure decisions yourself, then you can bypass the system, or use a "less restrictive" system like Grok's, which is actually more appropriate for many apps. | 23:32 |
Theuni | J1m: K. I'm arguing with Dieter on a German list right now that we can safely call it ACID compatible, although there is some weirdness in the ACID versus ANSI isolation levels going on and there is an easy way to provoke `write skews`. | 23:36 |
*** pelle_ has quit IRC | 23:36 | |
J1m | I don't know what you are referring to. Can you be more specific? | 23:37 |
Theuni | However, I compared our ACIDness (ACIDity?) to oracle, ms sql, postgres and mysql and they have exactly the same problems and call themselve ACID compatible. | 23:37 |
Theuni | J1m: MVCC only implements "Snapshot isolation" which is not in all cases serializable | 23:37 |
Theuni | An easy way to provoke this: | 23:37 |
Theuni | Have one object A that references object B | 23:38 |
Theuni | Then (roughly) in transaction 1 you remove the reference from A to B. In Transaction 2 you update object B. This would give different results if the transactions were executed serialized than when run in parallel. | 23:38 |
Theuni | AFAICT that's called a `write skew`. | 23:38 |
*** d2m has quit IRC | 23:39 | |
Theuni | Dieter pointed out that a long outstanding bug in some catalog indexes caused quite some inconsistencies for them that way. | 23:39 |
Theuni | Relational databases use "SELECT FOR UPDATE" to elevate read accesses to write accesses to allow conflict detection on values that were only read but used for a computational basis for values that were updated. | 23:40 |
Theuni | This is a work around for MVCC not detecting those conflicts. | 23:40 |
Theuni | I imagine ZODB *could* detect those conflicts but I'm not sure there's a way with a reasonable performance. | 23:41 |
* Theuni stops talking and lets Jim catch up. | 23:41 | |
J1m | OK, good point. So here, the issue is that transaction 2 read an old value of A (to get to B) and therefore updated B. I'll note that these transactions are serializable. The serialization is transaction 2 before transaction 1. I don't see how this simple case would lead to catalog problems, but I suppose that more complex cases could. | 23:44 |
Theuni | it's rather simple | 23:44 |
*** wreutz_ has left #zope3-dev | 23:45 | |
Theuni | His example was: An index that removes a set when it becomes empty and re-establishes it when it is needed again. | 23:45 |
Theuni | One transaction was updating the set, the other removing it. *bang* the updated set was gone. | 23:45 |
*** ktwilight_ has joined #zope3-dev | 23:46 | |
J1m | Right. That's different (and more comlex) than the original example you gave. | 23:46 |
J1m | Hm. This is a very interesting case. | 23:46 |
Theuni | Oh, I thought it's the same problem. | 23:47 |
J1m | Here the inconsistency is not ZODB's fault, except to the case that BTrees happen to be packages with ZODB. | 23:47 |
Theuni | Ah right. At least it's related. ;) | 23:47 |
J1m | No. | 23:47 |
J1m | Not really | 23:47 |
Theuni | Humm. | 23:47 |
J1m | In the second example, both transactions are writing B. | 23:47 |
Theuni | Really? | 23:48 |
J1m | Yes, you said that one transaction removes an item from the set and the other adds an item. | 23:48 |
Theuni | No | 23:48 |
*** timte has quit IRC | 23:48 | |
Theuni | One removes the references to the set. The other one updates it. | 23:48 |
Theuni | E.g: | 23:48 |
Theuni | T1: self.myset = None | 23:48 |
Theuni | T2: self.myset.add(X) | 23:48 |
J1m | But it only removes the reference when the set becomes empty. | 23:49 |
Theuni | When it *would* become empty | 23:49 |
J1m | That is, it only removes the set when it has removed the last value. | 23:49 |
Theuni | T1: if len(self.myset) == 1: self.myset = None | 23:49 |
Theuni | Weird optimization decision. | 23:49 |
Theuni | However, it should be serializable. | 23:49 |
J1m | ah, interesting. | 23:49 |
Theuni | :) | 23:49 |
*** jodok_ has joined #zope3-dev | 23:50 | |
J1m | Well, thanks to conflict resolution, there would have been a problem even without the optimization. | 23:52 |
*** RaFromBRC has quit IRC | 23:52 | |
J1m | Conflict resolution definately violates consistency. | 23:53 |
J1m | also, this second case isn't serializable. | 23:53 |
*** RaFromBRC has joined #zope3-dev | 23:54 | |
*** schwendinger_ has quit IRC | 23:54 | |
J1m | Well, this is an interesting example anyway.] | 23:54 |
J1m | Well, this is an interesting example anyway. | 23:54 |
J1m | The catalog case is rather troublesome. | 23:55 |
*** schwendinger has joined #zope3-dev | 23:55 | |
J1m | I'll definitely put some thought into that. | 23:55 |
Theuni | K. Want me to put that into the collector? | 23:57 |
J1m | sure | 23:58 |
Theuni | I'm even more worried that I just picked this up because I called ZODB ACID compatible in my talks and Dieter stepped up and WARNED EVERYBODY IN BIG LETTERS THAT ZODB ISN'T ACID COMPATIBLE. | 23:58 |
Theuni | And then he goes and says he had that problem for years and he didn't tell. | 23:58 |
Theuni | Gnah. :/ | 23:59 |
J1m | Yeah | 23:59 |
*** ktwilight has quit IRC | 23:59 | |
benji | Theuni: didn't you say that other major RDBMS act in similar ways? | 23:59 |
Generated by irclog2html.py 2.15.1 by Marius Gedminas - find it at mg.pov.lt!