This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author orsenthil
Recipients Stephen.Day, eric.araujo, ezio.melotti, maker, orsenthil
Date 2012-02-23.19:07:22
SpamBayes Score 3.551598e-08
Marked as misclassified No
Message-id <1330024043.01.0.695826546818.issue13866@psf.upfronthosting.co.za>
In-reply-to
Content
A couple of points to help summarize and to help come to a conclusion.

In the initial message, Stephen pointed out, "it would be desirable to merely encode spaces using percent encoding".

It seems to me that only in cases where a custom handling of query string is done, would space be encoded to %20 (or if it's an IRI instead of URI - details below) and for HTTP requests and in both GET and POST, encoding to space in a URI to + is a correct thing to do.

The query part in the URL always needs to follow the application/x-www-form-urlencoded format, so even when urlencode is used for constructing a query parameters, it should encode space to +

The argument that all characters should be hex encoded (and thereby space should be %20), seems to apply if it is an IRI. Look at an interesting discussion in this link:
http://stackoverflow.com/questions/5366007/why-does-the-encodings-of-a-url-and-the-query-string-part-differ/5433216#5433216

Only with this point as consideration. I think, sending a parameter for quote to use quote or quote_plus may be worthy option to consider (Stephen's point #3). 

But I have to add that the existing behavior of replacing space with "+" in "URL"s is not breaking anything and in fact is following the rules properly.
History
Date User Action Args
2012-02-23 19:07:23orsenthilsetrecipients: + orsenthil, ezio.melotti, eric.araujo, maker, Stephen.Day
2012-02-23 19:07:23orsenthilsetmessageid: <1330024043.01.0.695826546818.issue13866@psf.upfronthosting.co.za>
2012-02-23 19:07:22orsenthillinkissue13866 messages
2012-02-23 19:07:22orsenthilcreate