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
Discontinue Python 2 support #219
Comments
+1 for this. A warning that unicode URLs (and other features) are only supported via python3 might be enough, and a sane approach On a less conservative approach, I know several large distros still don't have python3 as the default python, but is it at least bundled by default? If that's the case, changing the hashbang to |
Not sure that's going to affect anything, most direct installations do |
Another thing is that |
I've edited the OP to add a few other py2-vs-3 problems that affect vdirsyncer. |
The error can be disabled with a config option. See #219
* Show error for Python 2 users The error can be disabled with a config option. See #219
* Discontinue Python 2. See #219 * Remove Python 2 config option * Remove coerce_native * Remove PY2 variable * s/text_type/str/g * Flake8 fixes * Remove str = str * s/to_native/to_unicode/g * Remove to_unicode = to_unicode * Remove iteritems * Remove itervalues * Remove str import, flake8 fixes * Remove urlparse compat code * Remove with_metaclass * Remove unused PY2 variable * Remove getargspec_ish * Remove to_bytes * Remove compat module * Remove Python 2 from Travis * fixup! Remove urlparse compat code * fixup! Remove urlparse compat code * fixup! Remove compat module
urlencoding
I used to think that Python 3 will be more daunting in Unicode support, but
I've been wrong: Both Python 2 and 3 have usually been equally hard to support.
Turns out that this was only the case until #218 and #215: urllib and urlparse
are completely broken under Python 2, they don't support unicode strings at
all:
Supporting URLs with unicode chars in them was (and is) a major pain in the
ass, on both versions. The stdlib on Python 2 doesn't help.
I'm not going to say that Python 3 is a strictly superior language: In fact I
think it will introduce severe performance regressions, and e.g. the string
model it uses for Unix filesystem APIs is oversimplifying things simply for the
sake of simplicity, not because that makes it more correct. This is wrong in
theory, in practice it would make things easier for me if I didn't have to
support Python 2.
I don't want to drop support for Python 2 in the next years, but perhaps stopFUCK ITfixing unicode bugs on it.
other things
^C
plan
fixes #315
fixes #316
Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.
The text was updated successfully, but these errors were encountered: