aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephen Finucane <stephen@that.guru>2019-09-03 14:35:15 +0100
committerStephen Finucane <stephen@that.guru>2019-09-08 15:41:03 +0100
commit6267a5fad01db859c1b31561124f00a5b97299f4 (patch)
treead264c80412fc46cd16b3c626ca61e28966134cb
parent1a36ed51a8e1e073dad6dc14b683ef68d44f98fa (diff)
downloadpatchwork-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.yml4
-rw-r--r--README.rst4
-rw-r--r--docs/development/installation.rst6
-rw-r--r--releasenotes/notes/python-3-7-support-ce63d67b2de68497.yaml9
-rw-r--r--requirements-dev.txt4
-rw-r--r--requirements-prod.txt4
-rw-r--r--tools/docker/Dockerfile5
-rw-r--r--tools/docker/trusty-ports.list3
-rw-r--r--tools/docker/trusty.list3
-rw-r--r--tox.ini4
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;"
diff --git a/README.rst b/README.rst
index b45c3e6..01da419 100644
--- a/README.rst
+++ b/README.rst
@@ -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
diff --git a/tox.ini b/tox.ini
index bfca053..7742d1b 100644
--- a/tox.ini
+++ b/tox.ini
@@ -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