New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
xmlrpclib.Binary doesn't say which base64 spec it implements #45195
Comments
xmlrpclib.Binary.encode() does base64 encoding. The xmlrpc spec characteristically doesn't mention an RFC, so it's not clear which spec they mean by "base64". But for those of us implementing stuff in the trenches and struggling with interoperability issues, it would be nice if the python docs were more informative so we don't have to go spiraling off into reading multiple specs and figuring out which came first :) So I'd suggest changing the Binary.encode docstring to something like: """Write the XML-RPC base 64 encoding of this binary item to the out stream object. Note that the encoded data will have newlines every 76 characters as per RFC 2045, which was the de facto standard base64 specification when the xmlrpc spec was written.""" Arguably, the behavior could be changed instead - due to the xmlrpc spec's silence on the subject, not all clients may tolerate newlines (Redstone doesn't)... but that's a separate argument :) |
Note that RFC 3548 is informational, so it is not a specification (at least not of an internet protocol). Also notice that Python's xmlrpclib library is not the specification or de-facto implementation of XML-RPC, either. The official XML-RPC specification is at According to that specification, the only possibilities are that Python's implementation is either conforming or not conforming. If it is not conforming, it should be changed; if it is conforming, it should stay, and Redstone should be changed. |
Thanks Loewis, but I am well aware of the xmlrpc spec. As I said in my original bug report: I brought this up on the xmlrpc yahoo list. Some excerpts from relevant responses: "It would be nice to have a document that describes what "everyone does," Finally, about the Redstone problem that led me to post this report: I have filed a bug report against Redstone: From the responses so far, I don't think a change to Python's behavior is warranted. A link to the official spec at http://www.xmlrpc.com/spec should also be added to the "See also" links, possibly along with a link to Fred's unofficial errata at |
More documentation is always a good idea. Can you provide a patch (as a context or unified patch) against the sources of the documentation? |
Sure. Patch against Doc/lib trunk attached. |
I updated xmlrpclib.rst with your documentation changes (r62465). Skip |
looks good to me, thanks! |
Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.
Show more details
GitHub fields:
bugs.python.org fields:
The text was updated successfully, but these errors were encountered: