Skip to content
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

url: resource and query encoding should support unicode #530

Merged
merged 1 commit into from
Jun 19, 2017

Conversation

harshavardhana
Copy link
Member

python2.7 lacks proper unicode support, so we need
a proper wrapper function for url encoding. With
this the url and query encodings works for all
unicode characters.

Fixes #529

@@ -44,7 +44,8 @@

# Internal imports
from . import __title__, __version__
from .compat import urlsplit, range, urlencode, basestring
from .compat import (urlsplit, queryencode,
Copy link

@Yurmusp Yurmusp Jun 6, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see issue in your files/code.
It depends what you target for. I see it from the standpoint what I would target for.

I would target for have everything in your lib unicode. I mean all coming and outgoing strings.
For that typically programmer needs to have two things enabled shown as two lines below.

# encoding: utf-8
from __future__ import unicode_literals

First line says that this file is UTF-8.
Second line makes every string to be unicode string in this file (not just base string with UTF-8 encoding in it).
What you have now is only first line out of two in this file.
So, your file has all base strings with UTF-8. NOT really unicode strings everywhere.
I'm not sure what you want.
You still can try to go with base strings and UTF-8, but that seems assumed to be more complicated way
with many side effects that needs to be handled.
Hope this can be useful.
All this message is from python 2.7 point of view of course. Not 3.x

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a good idea @Yurmusp will test it out and see if there are any problems for 3.x

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure what was meant. Who will test it?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"will" means "we will" shorter way to saying it :-)

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In my understanding. Change I suggested shall have no impact on 3.x.
Because this change is actually to make everything more like 3.x
(every string to be unicode) but within 2.x python.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We won't be doing this for now this PR works as is.. We will take this activity as such an issue comes in future. We don't want to introduce subtle changes like this which can have unexpected consequences.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As long as it works, it's fine I think.

@Yurmusp
Copy link

Yurmusp commented Jun 6, 2017 via email

@Yurmusp
Copy link

Yurmusp commented Jun 6, 2017

Please, let me know when done.
How long you think it will take?

@deekoder
Copy link
Contributor

deekoder commented Jun 6, 2017

We have a process to review and test. As soon that's done it will be merged.

@Yurmusp
Copy link

Yurmusp commented Jun 6, 2017 via email

@harshavardhana
Copy link
Member Author

Is it days, weeks, months?
can you tell what is a ball park usually?

Usually 2-3 days.. @Yurmusp

@Yurmusp
Copy link

Yurmusp commented Jun 6, 2017 via email

@deekoder
Copy link
Contributor

@Yurmusp its taking a bit longer because we are right now doing some fixes in minio/minio. Please stay tuned on this one.

@deekoder deekoder requested review from poornas and removed request for donatello June 12, 2017 01:58
@Yurmusp
Copy link

Yurmusp commented Jun 12, 2017 via email

@Yurmusp
Copy link

Yurmusp commented Jun 16, 2017 via email

@harshavardhana harshavardhana requested review from donatello and removed request for vadmeste June 16, 2017 23:34
Copy link
Contributor

@poornas poornas left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM.

@harshavardhana harshavardhana force-pushed the fix-unicode branch 6 times, most recently from 5f06810 to 57daf09 Compare June 17, 2017 01:05
python2.7 lacks proper unicode support, so we need
a proper wrapper function for url encoding. With
this the url and query encodings works for all
unicode characters.

Fixes minio#529
@Yurmusp
Copy link

Yurmusp commented Jun 19, 2017

When you guys expect it to be released?

@donatello donatello merged commit 4cc6b09 into minio:master Jun 19, 2017
@harshavardhana harshavardhana deleted the fix-unicode branch June 19, 2017 22:04
@Yurmusp
Copy link

Yurmusp commented Jun 27, 2017

Thank you guys. Looks like this works.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants