diff options
author | Stephen Finucane <stephen@that.guru> | 2019-09-03 14:35:15 +0100 |
---|---|---|
committer | Stephen Finucane <stephen@that.guru> | 2019-09-08 15:41:03 +0100 |
commit | 6267a5fad01db859c1b31561124f00a5b97299f4 (patch) | |
tree | ad264c80412fc46cd16b3c626ca61e28966134cb | |
parent | 1a36ed51a8e1e073dad6dc14b683ef68d44f98fa (diff) | |
download | patchwork-6267a5fad01db859c1b31561124f00a5b97299f4.tar patchwork-6267a5fad01db859c1b31561124f00a5b97299f4.tar.gz |
Drop support for Python 3.4, add Python 3.7
It's no longer supported upstream and the *second* last Ubuntu LTS
release provides something newer. Time to move on.
Signed-off-by: Stephen Finucane <stephen@that.guru>
-rw-r--r-- | .travis.yml | 4 | ||||
-rw-r--r-- | README.rst | 4 | ||||
-rw-r--r-- | docs/development/installation.rst | 6 | ||||
-rw-r--r-- | releasenotes/notes/python-3-7-support-ce63d67b2de68497.yaml | 9 | ||||
-rw-r--r-- | requirements-dev.txt | 4 | ||||
-rw-r--r-- | requirements-prod.txt | 4 | ||||
-rw-r--r-- | tools/docker/Dockerfile | 5 | ||||
-rw-r--r-- | tools/docker/trusty-ports.list | 3 | ||||
-rw-r--r-- | tools/docker/trusty.list | 3 | ||||
-rw-r--r-- | tox.ini | 4 |
10 files changed, 24 insertions, 22 deletions
diff --git a/.travis.yml b/.travis.yml index 95cd6bc..77d60c1 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,9 +5,9 @@ sudo: false python: - 2.7 - - 3.4 - 3.5 - 3.6 + - 3.7 addons: postgresql: 9.6 @@ -43,7 +43,7 @@ matrix: - PW_TEST_DB_PORT=5433 - PW_TEST_DB_TYPE=postgres - PW_TEST_DB_USER=travis - python: 3.6 + python: 3.7 sudo: true before_install: - sudo -u postgres psql -c "grant ALL on DATABASE postgres to travis WITH GRANT OPTION;" @@ -41,9 +41,9 @@ of community projects. Requirements ------------ -- Python (2.7, 3.4 - 3.6) +- Python (2.7, 3.5 - 3.7) -- Django (1.11 - 2.0) +- Django (1.11 - 2.2) - Django REST Framework (3.6 - 3.9) diff --git a/docs/development/installation.rst b/docs/development/installation.rst index 0ab755f..ed9ceb1 100644 --- a/docs/development/installation.rst +++ b/docs/development/installation.rst @@ -165,7 +165,7 @@ Python Requirements ^^^^^^^^^^^^^^^^^^^ To develop Python-based software you first need Python. Patchwork supports both -Python 2.7 and Python 3.4+. One of these will be installed by default on many +Python 2.7 and Python 3.5+. One of these will be installed by default on many installations, though they can also be installed manually using the ``python`` or ``python3`` packages. @@ -224,7 +224,7 @@ An example for installing all these packages and the MySQL RDBMS on Ubuntu python-tox mysql-server libmysqlclient-dev If you have an existing MariaDB/MySQL installation and have installed ``pip`` -already/are using Python 3.4+ then you can install all packages using ``pip``: +already/are using Python 3.5+ then you can install all packages using ``pip``: .. code-block:: shell @@ -254,7 +254,7 @@ virtual environment. This can be done like so: .. note:: If you installed a Python 3.x-based virtual environment package, adjust the - executable indicated above as necessary, e.g. ``virtualenv-3.4``. + executable indicated above as necessary, e.g. ``virtualenv-3.7``. Now install the packages. Patchwork provides three requirements files. diff --git a/releasenotes/notes/python-3-7-support-ce63d67b2de68497.yaml b/releasenotes/notes/python-3-7-support-ce63d67b2de68497.yaml new file mode 100644 index 0000000..f31e9cd --- /dev/null +++ b/releasenotes/notes/python-3-7-support-ce63d67b2de68497.yaml @@ -0,0 +1,9 @@ +--- +features: + - | + `Python 3.7 <https://www.python.org/downloads/release/python-370/>`_ is now + supported. +upgrade: + - | + Python 3.4 is no longer supported. This is no longer supported upstream and + most distributions provide a newer version. diff --git a/requirements-dev.txt b/requirements-dev.txt index d21e843..5b5ec44 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -1,7 +1,7 @@ -Django==2.2.5; python_version >= '3.4' +Django==2.2.5; python_version >= '3.5' Django==1.11.22; python_version < '3.0' # pyup: ignore djangorestframework==3.9.2 -django-filter==2.1.0; python_version >= '3.4' +django-filter==2.1.0; python_version >= '3.5' django-filter==1.1.0; python_version < '3.0' # pyup: ignore django-debug-toolbar==1.11 django-dbbackup==3.2.0 diff --git a/requirements-prod.txt b/requirements-prod.txt index d81d566..8228d9f 100644 --- a/requirements-prod.txt +++ b/requirements-prod.txt @@ -1,7 +1,7 @@ -Django==2.2.5; python_version >= '3.4' +Django==2.2.5; python_version >= '3.5' Django==1.11.22; python_version < '3.0' # pyup: ignore djangorestframework==3.9.2 -django-filter==2.1.0; python_version >= '3.4' +django-filter==2.1.0; python_version >= '3.5' django-filter==1.1.0; python_version < '3.0' # pyup: ignore psycopg2-binary==2.8.2 sqlparse==0.3.0 diff --git a/tools/docker/Dockerfile b/tools/docker/Dockerfile index 76bb6b2..8170071 100644 --- a/tools/docker/Dockerfile +++ b/tools/docker/Dockerfile @@ -17,14 +17,13 @@ ENV PYTHONUNBUFFERED 1 # System -# trusty and findutils is for python3.4; xenial is for python3.5 +# xenial is for python3.5 # TODO(stephenfin): Are curl, unzip required? COPY tools/docker/*.list /etc/apt/sources.list.d/ RUN cd /etc/apt/sources.list.d; \ echo $(uname -m) > /tmp/arch; \ if [ $(cat /tmp/arch) != 'x86_64' ] && grep -q -v "i.86" /tmp/arch; then \ - mv trusty-ports.list trusty.list; \ mv xenial-ports.list xenial.list; \ else \ rm *-ports.list; \ @@ -34,7 +33,7 @@ RUN apt-get update -qq && \ apt-get install -y --no-install-recommends --allow-downgrades \ python-dev python-pip python-setuptools python-wheel \ python3.5-dev python3-pip python3-setuptools python3-wheel \ - python3.4-dev findutils=4.4.2-7 python3.6-dev \ + python3.6-dev \ libmysqlclient-dev mysql-client curl unzip build-essential \ git postgresql-client tzdata libpq-dev diff --git a/tools/docker/trusty-ports.list b/tools/docker/trusty-ports.list deleted file mode 100644 index ebcf4fa..0000000 --- a/tools/docker/trusty-ports.list +++ /dev/null @@ -1,3 +0,0 @@ -deb http://ports.ubuntu.com/ubuntu-ports/ trusty main -deb http://ports.ubuntu.com/ubuntu-ports/ trusty-updates main -deb http://ports.ubuntu.com/ubuntu-ports/ trusty-security main diff --git a/tools/docker/trusty.list b/tools/docker/trusty.list deleted file mode 100644 index 8bb92c0..0000000 --- a/tools/docker/trusty.list +++ /dev/null @@ -1,3 +0,0 @@ -deb http://archive.ubuntu.com/ubuntu/ trusty main -deb http://archive.ubuntu.com/ubuntu/ trusty-updates main -deb http://security.ubuntu.com/ubuntu trusty-security main @@ -1,6 +1,6 @@ [tox] minversion = 2.0 -envlist = pep8,docs,py{27,34}-django111,py{35,36}-django{111,20,21,22} +envlist = pep8,docs,py{27}-django111,py{35,36,37}-django{111,20,21,22} skipsdist = True [testenv] @@ -8,7 +8,7 @@ deps = -r{toxinidir}/requirements-test.txt django111: django>=1.11,<2.0 django111: djangorestframework>=3.6,<3.10 - django111: django-filter>=1.0,<3.0; python_version >= '3.4' + django111: django-filter>=1.0,<3.0; python_version >= '3.5' django111: django-filter>=1.0,<2.0; python_version < '3.0' django20: django>=2.0,<2.1 django21: django>=2.1,<2.2 |