forked from orbit-oss/flask
clean up py3 info more
This commit is contained in:
parent
00c200eeaa
commit
baa2689658
2 changed files with 18 additions and 28 deletions
|
|
@ -47,9 +47,9 @@ Flask is no different from any other framework in that you the developer must
|
|||
build with caution, watching for exploits when building to your requirements.
|
||||
|
||||
Python 3 Support in Flask
|
||||
----------------------
|
||||
-------------------------
|
||||
|
||||
If you think of using Flask with Python 3 have a look at the
|
||||
:ref:`python3-support` page.
|
||||
Flask, its dependencies, and most Flask extensions all support Python 3.
|
||||
If you want to use Flask with Python 3 have a look at the :ref:`python3-support` page.
|
||||
|
||||
Continue to :ref:`installation` or the :ref:`quickstart`.
|
||||
|
|
|
|||
|
|
@ -3,32 +3,22 @@
|
|||
Python 3 Support
|
||||
================
|
||||
|
||||
Flask and all of its dependencies support Python 3 so you can in theory
|
||||
start working on it already. There are however a few things you should be
|
||||
aware of before you start using Python 3 for your next project.
|
||||
Flask, its dependencies, and most Flask extensions support Python 3.
|
||||
You should start using Python 3 for your next project,
|
||||
but there are a few things to be aware of.
|
||||
|
||||
If you want to use Flask with Python 3 you will need to use Python 3.3 or
|
||||
higher. 3.2 and older are *not* supported.
|
||||
You need to use Python 3.3 or higher. 3.2 and older are *not* supported.
|
||||
|
||||
In addition to that you need to use the latest and greatest versions of
|
||||
`itsdangerous`, `Jinja2` and `Werkzeug`. Flask 0.10 and Werkzeug 0.9 were
|
||||
the first versions to introduce Python 3 support.
|
||||
You should use the latest versions of all Flask-related packages.
|
||||
Flask 0.10 and Werkzeug 0.9 were the first versions to introduce Python 3 support.
|
||||
|
||||
Some of the decisions made in regards to unicode and byte utilization on
|
||||
Python 3 make it hard to write low level code. This mainly affects WSGI
|
||||
middlewares and interacting with the WSGI provided information. Werkzeug
|
||||
wraps all that information in high-level helpers but some of those were
|
||||
specifically added for the Python 3 support and are quite new.
|
||||
Python 3 changed how unicode and bytes are handled,
|
||||
which complicated how low level code handles HTTP data.
|
||||
This mainly affects WSGI middleware interacting with the WSGI ``environ`` data.
|
||||
Werkzeug wraps that information in high-level helpers,
|
||||
so encoding issues should not effect you.
|
||||
|
||||
Unless you require absolute compatibility, you should be fine with Python 3
|
||||
nowadays. Most libraries and Flask extensions have been ported by now and
|
||||
using Flask with Python 3 is generally a smooth ride. However, keep in mind
|
||||
that most libraries (including Werkzeug and Flask) might not quite as stable
|
||||
on Python 3 yet. You might therefore sometimes run into bugs that are
|
||||
usually encoding-related.
|
||||
|
||||
The majority of the upgrade pain is in the lower-level libraries like
|
||||
Flask and Werkzeug and not in the actual high-level application code. For
|
||||
instance all of the Flask examples that are in the Flask repository work
|
||||
out of the box on both 2.x and 3.x and did not require a single line of
|
||||
code changed.
|
||||
The majority of the upgrade work is in the lower-level libraries like
|
||||
Flask and Werkzeug, not the high-level application code.
|
||||
For example, all of the examples in the Flask repository work on both Python 2 and 3
|
||||
and did not require a single line of code changed.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue