-
-
Notifications
You must be signed in to change notification settings - Fork 168
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
Bug when parsing a percent symbol #235
Comments
@faunris Hi |
@gyermolenko
return '/%F0', then
should retun '/%F0%25' Becouse I think url decode \ encode should be equivalent |
I would say |
I was wrong, a single percent should be percent-encoded as
@faunris assumption is correct: |
imho If you absolutely need to encode custom invalid sequences you should be consistent and turn every "%" into "%25". E.g. "%F0%" into "%25F0%25". |
Looks viable, thanks. |
Here are some results. I highlighted ones that I consider invalid in red. Expected results correspond to my understanding of rfc3986 . |
I think "%D0" is valid encoded symbol. It shouldn't additional encode. For example: 2.1 rfc3986
2.4 rfc3986
|
which one? It is not ascii, it is not in unreserved url chars. Why is it valid?
for me it means "turn % into %25 only once, to avoid %25 turning into %2525 and so on" |
Becouse standart say:
and in terms of standard |
Not everything that fits into |
It is discussable how
Should not |
There is also difference between Python and Cython implementations. Python implementation:
Cython implementation:
|
the last percent character breaks path
python: 3.6.3
yarl: 1.2.6
The text was updated successfully, but these errors were encountered: