Re: [dev] RFC: Transaction meta data

"David Glick (Glick Software)" <[email protected]>
Newsgroups gmane.comp.web.zope.zodb
Message-ID <[email protected]>
On 3/9/17 10:38 AM, Jim Fulton wrote:
>
>
> On Thu, Mar 9, 2017 at 1:02 PM, Hanno Schlichting <[email protected] 
> <mailto:[email protected]>> wrote:
>
>     On Thu, Mar 9, 2017, at 18:58, Jim Fulton wrote:
>>     I propose to change the transaction to accept bytes for meta
>>     data. When getting bytes, it will:
>>
>>     - Issue a deprecation warning, and
>>
>>     - decode the data assuming latin-1.
>>
>>     Any objections?
>
>     At least in older Zope 2 releases, both None and integers are used
>     in meta data as well.
>
>
> whimper.  Well, None I'd be inclined to treat at a noop. How about if 
> not unicode and not bytes, the unicode/str of whatever is given. (I'm 
> inclined to be more loose/forgiving given that this is a deprecated 
> feature.)

Here is what Zope master is doing to handle backwards-compatibility with 
existing encoded transaction notes:

def safe_unicode(value):
     if isinstance(value, unicode):
         return value
     elif isinstance(value, basestring):
         try:
             value = unicode(value, 'utf-8')
         except UnicodeDecodeError:
             value = value.decode('utf-8', 'replace')
     return value

If transaction does something like that then we can likely use it even 
with existing releases of Plone.

-- 
You received this message because you are subscribed to the Google Groups "zodb" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
For more options, visit https://groups.google.com/d/optout.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.