diff --git a/.travis.yml b/.travis.yml
index e3c252818..f505f986b 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -7,8 +7,6 @@ addons:
matrix:
include:
- - env: TOXENV=py34-dj20-mysql-noelasticsearch
- python: 3.4
- env: TOXENV=py35-dj20-sqlite-noelasticsearch
python: 3.5
- env: TOXENV=py35-dj21-mysql-noelasticsearch
diff --git a/CHANGELOG.txt b/CHANGELOG.txt
index 799c1f65f..6582ea5eb 100644
--- a/CHANGELOG.txt
+++ b/CHANGELOG.txt
@@ -4,7 +4,7 @@ Changelog
2.6 (xx.xx.xxxx) - IN DEVELOPMENT
~~~~~~~~~~~~~~~~
- * ...
+ * Removed support for Python 3.4
2.5 (xx.xx.xxxx) - IN DEVELOPMENT
diff --git a/README.md b/README.md
index 71763d82a..6dd1259df 100644
--- a/README.md
+++ b/README.md
@@ -55,7 +55,7 @@ Wagtail is used by NASA, Google, Oxfam, the NHS, Mozilla, MIT, the Red Cross, Sa
Wagtail supports:
* Django 2.0.x, 2.1.x and 2.2.x
-* Python 3.4, 3.5, 3.6 and 3.7
+* Python 3.5, 3.6 and 3.7
* PostgreSQL, MySQL and SQLite as database backends
Previous versions of Wagtail (1.13 and earlier) additionally supported Python 2.7 and Django 1.x.
diff --git a/docs/getting_started/tutorial.rst b/docs/getting_started/tutorial.rst
index 67488256f..64e2844b8 100644
--- a/docs/getting_started/tutorial.rst
+++ b/docs/getting_started/tutorial.rst
@@ -11,7 +11,7 @@ Install and run Wagtail
Install dependencies
~~~~~~~~~~~~~~~~~~~~
-Wagtail supports Python 3.4, 3.5, 3.6, and 3.7.
+Wagtail supports Python 3.5, 3.6, and 3.7.
To check whether you have an appropriate version of Python 3:
@@ -19,7 +19,7 @@ To check whether you have an appropriate version of Python 3:
$ python3 --version
-If this does not return a version number or returns a version lower than 3.4, you will need to `install Python 3 `_.
+If this does not return a version number or returns a version lower than 3.5, you will need to `install Python 3 `_.
.. important::
Before installing Wagtail, it is necessary to install the **libjpeg** and **zlib** libraries, which provide support for working with JPEG, PNG and GIF images (via the Python **Pillow** library).
diff --git a/docs/releases/2.6.rst b/docs/releases/2.6.rst
index 9e37de7cf..cd621812f 100644
--- a/docs/releases/2.6.rst
+++ b/docs/releases/2.6.rst
@@ -25,3 +25,8 @@ Bug fixes
Upgrade considerations
======================
+
+Removed support for Python 3.4
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Python 3.4 is no longer supported as of this release; please upgrade to Python 3.5 or above before upgrading Wagtail.
diff --git a/docs/releases/upgrading.rst b/docs/releases/upgrading.rst
index d04207b9e..3d639980c 100644
--- a/docs/releases/upgrading.rst
+++ b/docs/releases/upgrading.rst
@@ -143,6 +143,6 @@ The compatible versions of Django and Python for each Wagtail release are:
+-------------------+------------------------------+-----------------------------+
| 2.5 | 2.0, 2.1, 2.2 | 3.4, 3.5, 3.6, 3.7 |
+-------------------+------------------------------+-----------------------------+
-| 2.6 | 2.0, 2.1, 2.2 | 3.4, 3.5, 3.6, 3.7 |
+| 2.6 | 2.0, 2.1, 2.2 | 3.5, 3.6, 3.7 |
+-------------------+------------------------------+-----------------------------+
diff --git a/setup.py b/setup.py
index 09ffecc82..843bca429 100755
--- a/setup.py
+++ b/setup.py
@@ -88,7 +88,6 @@ https://github.com/wagtail/wagtail/.",
'Operating System :: OS Independent',
'Programming Language :: Python',
'Programming Language :: Python :: 3',
- 'Programming Language :: Python :: 3.4',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3.7',
diff --git a/tox.ini b/tox.ini
index 8869d501d..4074c81f1 100644
--- a/tox.ini
+++ b/tox.ini
@@ -2,7 +2,7 @@
skipsdist = True
usedevelop = True
-envlist = py{34,35,36,37}-dj{20,21,22,master}-{sqlite,postgres,mysql,mssql}-{elasticsearch6,elasticsearch5,elasticsearch2,noelasticsearch},
+envlist = py{35,36,37}-dj{20,21,22,master}-{sqlite,postgres,mysql,mssql}-{elasticsearch6,elasticsearch5,elasticsearch2,noelasticsearch},
[flake8]
# D100: Missing docstring in public module
@@ -33,7 +33,6 @@ commands =
noelasticsearch: coverage run runtests.py {posargs}
basepython =
- py34: python3.4
py35: python3.5
py36: python3.6
py37: python3.7
@@ -74,6 +73,6 @@ setenv =
mssql: DATABASE_PASS=Password12!
[testenv:flake8]
-basepython=python3.4
+basepython=python3.5
deps=flake8>=2.2.0
commands=flake8 wagtail
diff --git a/wagtail/bin/wagtail.py b/wagtail/bin/wagtail.py
index 6dc08a40f..6ab8ff8dd 100644
--- a/wagtail/bin/wagtail.py
+++ b/wagtail/bin/wagtail.py
@@ -11,7 +11,7 @@ from django.core.management import ManagementUtility
CURRENT_PYTHON = sys.version_info[:2]
-REQUIRED_PYTHON = (3, 4)
+REQUIRED_PYTHON = (3, 5)
if CURRENT_PYTHON < REQUIRED_PYTHON:
sys.stderr.write("This version of Wagtail requires Python {}.{} or above - you are running {}.{}\n".format(*(REQUIRED_PYTHON + CURRENT_PYTHON)))