diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index bb7cb0c0cbd4a3f924b012d1f2cc645ea106195e..0bd1f1d4715be3b5f6a614316072f8d39ff3f7f7 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -173,7 +173,7 @@ test:3.9:
 
 test:build-pypi-dist:
   stage: test
-  image: pauldmccarthy/fsleyes-py36-wxpy4-gtk3
+  image: pauldmccarthy/fsleyes-py37-wxpy4-gtk3
   <<: *except_releases
 
   tags:
@@ -191,7 +191,7 @@ test:build-pypi-dist:
 
 style:
   stage: style
-  image: pauldmccarthy/fsleyes-py36-wxpy4-gtk3
+  image: pauldmccarthy/fsleyes-py37-wxpy4-gtk3
   <<: *test_template
   variables:
     TEST_STYLE:  "true"
diff --git a/CHANGELOG.rst b/CHANGELOG.rst
index 08de9ace7551aa6eecdd21c32cdfd215ffe3d37d..17a4be72c7751dd97b7f564e27e3a23b9a9b46a5 100644
--- a/CHANGELOG.rst
+++ b/CHANGELOG.rst
@@ -2,6 +2,18 @@ This document contains the ``fslpy`` release history in reverse chronological
 order.
 
 
+
+3.6.1 (Thursday 27th April 2021)
+--------------------------------
+
+
+Changed
+^^^^^^^
+
+
+* Removed the ``dataclasses`` backport from requirements (!297).
+
+
 3.6.0 (Monday 19th April 2021)
 ------------------------------
 
@@ -11,7 +23,7 @@ Changed
 
 
 * The ``fslpy`` API ocumentation is now hosted at
-  https://open.win.ox.ac.uk/fsl/fslpy (!290).
+  https://open.win.ox.ac.uk/pages/fsl/fslpy (!290).
 * The :mod:`fsl` and :mod:`fsl.scripts` packages have been changed from being
   `pkgutil-style
   <https://packaging.python.org/guides/packaging-namespace-packages/#pkgutil-style-namespace-packages>`_
diff --git a/README.rst b/README.rst
index 06df04918be7c407e33517f1466553048e2c5edc..493d7e30eaee4c13e023bf05c1972d92e62deb02 100644
--- a/README.rst
+++ b/README.rst
@@ -98,6 +98,9 @@ The `fsl.transform.x5 <fsl/transform/x5.py>`_ module uses `h5py
 Documentation
 -------------
 
+API documentation for ``fslpy`` is hosted at
+https://open.win.ox.ac.uk/pages/fsl/fslpy/.
+
 ``fslpy`` is documented using `sphinx <http://http://sphinx-doc.org/>`_. You
 can build the API documentation by running::
 
diff --git a/requirements.txt b/requirements.txt
index faf34174fc2bb63d9c44706feb097f8f2b619dee..3da17371edbd4bce009bcd28962655ada72c16f5 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -2,4 +2,3 @@ h5py>=2.9
 nibabel>=2.4
 numpy>=1
 scipy>=0.18
-dataclasses
diff --git a/setup.py b/setup.py
index 60c5d46c22b80ed27ad076a5e4ffe4c4b41c057e..c588d8370f8948b1d78b9f6e4d3ba8ddf487dda4 100644
--- a/setup.py
+++ b/setup.py
@@ -93,6 +93,7 @@ setup(
     author='Paul McCarthy',
     author_email='pauldmccarthy@gmail.com',
     license='Apache License Version 2.0',
+    python_requires='>=3.7',
 
     classifiers=[
         'Development Status :: 3 - Alpha',
diff --git a/tests/test_platform.py b/tests/test_platform.py
index a38408175e438447570a75b9c0115e9da3f1d927..e845148a2d65e7441e7bf458e30202c45be8e2ba 100644
--- a/tests/test_platform.py
+++ b/tests/test_platform.py
@@ -10,6 +10,7 @@ import               os
 import               gc
 import os.path    as op
 import               sys
+import               time
 import               shutil
 import               tempfile
 import               pytest
@@ -41,8 +42,22 @@ def test_haveGui():
 
     import wx
 
-    p      = fslplatform.Platform()
-    app    = wx.App()
+    p = fslplatform.Platform()
+
+    # We can get weird conflicts w.r.t. access to
+    # the display when multiple tests are running
+    # simultaneously within docker on the same
+    # machine.
+    app = None
+    for _ in range(5):
+        try:
+            app = wx.App()
+            break
+        except Exception:
+            time.sleep(1)
+    if app is None:
+        assert False
+
     frame  = wx.Frame(None)
     passed = [False]
     frame.Show()