[
https://issues.apache.org/jira/browse/PROTON-1758?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Kim van der Riet resolved PROTON-1758.
--------------------------------------
Resolution: Fixed
Simple fix checks the key type for all message application property keys. If
binary, it will convert to unicode string. If already a unicode string, nothing
is changed. Any other type causes an exception to be raised.
> [Python binding] Check message application property keys, convert binary to
> string
> ----------------------------------------------------------------------------------
>
> Key: PROTON-1758
> URL: https://issues.apache.org/jira/browse/PROTON-1758
> Project: Qpid Proton
> Issue Type: Bug
> Components: python-binding
> Reporter: Kim van der Riet
> Assignee: Kim van der Riet
> Priority: Minor
>
> The AMQP 1.0 specification requires message application property keys to be
> strings. Currently the Python binding makes no type check on message
> application property key types. Under Python 2, using the pattern
> {noformat}
> props['key'] = 'value'{noformat}
> results in the key being encoded as binary, whereas in Python 3, it is a
> unicode string. While changing the pattern to
> {noformat}
> props[u'key'] = u'value'{noformat}
> is trivially easy and would work for both versions of Python, it would help
> usability and AMQP wire correctness if the binding would check the key type
> and:
> # if binary, convert to unicode string;
> # if any other type, raise an exception
> before sending a message.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]