diff --git a/.travis.yml b/.travis.yml index 972ddb0c..440bdf95 100644 --- a/.travis.yml +++ b/.travis.yml @@ -4,25 +4,17 @@ language: python matrix: include: - python: 3.6 - env: TOXENV=py,codecov + env: TOXENV=py,simplejson,devel,lowest,codecov,docs-html - python: 3.5 env: TOXENV=py,codecov - python: 3.4 env: TOXENV=py,codecov - - python: 3.3 - env: TOXENV=py,codecov - python: 2.7 - env: TOXENV=py,codecov - - python: 2.6 - env: TOXENV=py,codecov + env: TOXENV=py,simplejson,devel,lowest,codecov - python: pypy env: TOXENV=py,codecov - python: nightly env: TOXENV=py - - python: 3.6 - env: TOXENV=docs-html - - python: 3.6 - env: TOXENV=py-simplejson,codecov install: - pip install tox diff --git a/CHANGES b/CHANGES index 2cb24c20..11fb7df2 100644 --- a/CHANGES +++ b/CHANGES @@ -8,6 +8,7 @@ Version 0.13 Major release, unreleased +- **Python 2.6 and 3.3 are no longer supported.** (`pallets/meta#24`_) - Minimum Werkzeug version bumped to 0.9, but please use the latest version. - Minimum Click version bumped to 4, but please use the latest version. - Make ``app.run()`` into a noop if a Flask application is run from the @@ -115,6 +116,7 @@ Major release, unreleased - Blueprint view function name may not contain dots. (`#2450`_) - The dev server now uses threads by default. +.. _pallets/meta#24: https://github.com/pallets/meta/issues/24 .. _#1421: https://github.com/pallets/flask/issues/1421 .. _#1489: https://github.com/pallets/flask/pull/1489 .. _#1621: https://github.com/pallets/flask/pull/1621 diff --git a/docs/advanced_foreword.rst b/docs/advanced_foreword.rst index 82b3dc58..bd56f53c 100644 --- a/docs/advanced_foreword.rst +++ b/docs/advanced_foreword.rst @@ -45,11 +45,3 @@ spam, links to malicious software, and the like. 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 -------------------------- - -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`. diff --git a/docs/contents.rst.inc b/docs/contents.rst.inc index de4d7a91..f76b1591 100644 --- a/docs/contents.rst.inc +++ b/docs/contents.rst.inc @@ -56,7 +56,6 @@ Design notes, legal information and changelog are here for the interested. unicode extensiondev styleguide - python3 upgrading changelog license diff --git a/docs/extensiondev.rst b/docs/extensiondev.rst index 3e8f30d4..29c33f3c 100644 --- a/docs/extensiondev.rst +++ b/docs/extensiondev.rst @@ -383,7 +383,7 @@ extension to be approved you have to follow these guidelines: (``PackageName==dev``). 9. The ``zip_safe`` flag in the setup script must be set to ``False``, even if the extension would be safe for zipping. -10. An extension currently has to support Python 2.7, Python 3.3 and higher. +10. An extension currently has to support Python 3.4 and newer and 2.7. diff --git a/docs/installation.rst b/docs/installation.rst index 370ce48c..88b9af09 100644 --- a/docs/installation.rst +++ b/docs/installation.rst @@ -6,8 +6,8 @@ Installation Python Version -------------- -We recommend using the latest version of Python 3. Flask supports Python 3.3 -and newer, Python 2.6 and newer, and PyPy. +We recommend using the latest version of Python 3. Flask supports Python 3.4 +and newer, Python 2.7, and PyPy. Dependencies ------------ diff --git a/docs/python3.rst b/docs/python3.rst deleted file mode 100644 index a7a4f165..00000000 --- a/docs/python3.rst +++ /dev/null @@ -1,23 +0,0 @@ -.. _python3-support: - -Python 3 Support -================ - -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. - -You need to use Python 3.3 or higher. 3.2 and older are *not* supported. - -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. - -Python 3 changed how unicode and bytes are handled, which complicates 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 affect you. - -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. diff --git a/tox.ini b/tox.ini index 45d81b65..ed8b99e8 100644 --- a/tox.ini +++ b/tox.ini @@ -1,15 +1,14 @@ [tox] envlist = - py{36,35,34,33,27,26,py} + py{36,35,34,27,py} py{36,27,py}-simplejson - py{36,33,27,26,py}-devel - py{36,33,27,26,py}-lowest + py{36,27,py}-devel + py{36,27,py}-lowest docs-html coverage-report [testenv] passenv = LANG -usedevelop = true deps = pytest>=3 coverage @@ -29,6 +28,7 @@ deps = devel: https://github.com/pallets/click/archive/master.tar.gz simplejson: simplejson + commands = # the examples need to be installed to test successfully pip install -e examples/flaskr -q @@ -59,8 +59,6 @@ passenv = CI TRAVIS TRAVIS_* deps = codecov skip_install = true commands = - # install argparse for 2.6 - python -c 'import sys, pip; sys.version_info < (2, 7) and pip.main(["install", "argparse", "-q"])' coverage combine coverage report codecov