Victor Safronovich wrote:
Hello Florent Guillaume,

Monday, October 31, 2005, 6:25:20 PM, you wrote:

FG> This was changed because have mutable objects stored as properties can lead FG> to unexpected behavior. Do you mean you have a custom proprty type called FG> "list"?
    yes, my own property of type 'list'. I don`t find any restriction on type of
    the property, only in comment of the PropertyManager class:

    The 'type' string must be one of the values: 'float', 'int', 'long',
    'string', 'lines', 'text', 'date', 'tokens', 'selection', or
    'multiple section'.

    But PropertyManager support any custom types not only types descriped above.
    For  example Publisher supports ':list' and ':tuple' converters (but only in
    HTTPRequest.processInputs  method,  it  is  impossible  to manage 'list',
    'tuple', 'records' types through module, pitifully )

FG>  What's your use case for it, and why can't tuple fit the bill ?
    My  code  use  the  'sort'  method of the python list type. Of course this 
    ugly to trust the getProperty result, and my code should be manually convert
    the getProperty result to list.

Indeed it should, as doing self.someprop.sort() for instance has bugs related to persistence if someprop is a list. The change from Zope 2.6 to Zope 2.7 turning all sequence properties to tuples was for this, and other, reasons.

    of course i repaire my code, but how chould i escape from incompatible 
    of  the  zope versions in future? may be write more tests to 
PropertyManager class? or

That's one of the rare incompatibilities between 2.6 and 2.7. It's mentionned in the release notes for 2.7.0b4:

  Some property types were stored in a mutable data type (list) which could
  potentially allow untrusted code to effect changes on those properties
  without going through appropriate security checks in particular scenarios


Florent Guillaume, Nuxeo (Paris, France)   CTO, Director of R&D
+33 1 40 33 71 59   [EMAIL PROTECTED]
Zope-Dev maillist  -
**  No cross posts or HTML encoding!  **
(Related lists - )

Reply via email to