diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml
index b555a1eb..da217ba4 100644
--- a/.github/workflows/publish.yml
+++ b/.github/workflows/publish.yml
@@ -12,7 +12,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
- python-version: ["3.7", "3.8", "3.9", "3.10", "3.11"]
+ python-version: ["3.8", "3.9", "3.10", "3.11"]
steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index 39aa8b13..51dd9391 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -10,7 +10,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
- python-version: ["3.7", "3.8", "3.9", "3.10", "3.11"]
+ python-version: ["3.8", "3.9", "3.10", "3.11"]
steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
diff --git a/README.md b/README.md
index af95b85e..93d81ae6 100644
--- a/README.md
+++ b/README.md
@@ -36,7 +36,7 @@ You can also install it using `pip` or `pipx`:
pip install datasette
-Datasette requires Python 3.7 or higher. We also have [detailed installation instructions](https://docs.datasette.io/en/stable/installation.html) covering other options such as Docker.
+Datasette requires Python 3.8 or higher. We also have [detailed installation instructions](https://docs.datasette.io/en/stable/installation.html) covering other options such as Docker.
## Basic usage
diff --git a/datasette/app.py b/datasette/app.py
index 1f80c5a9..977839e0 100644
--- a/datasette/app.py
+++ b/datasette/app.py
@@ -1072,15 +1072,13 @@ class Datasette:
{"name": t.name, "ident": t.ident, "daemon": t.daemon} for t in threads
],
}
- # Only available in Python 3.7+
- if hasattr(asyncio, "all_tasks"):
- tasks = asyncio.all_tasks()
- d.update(
- {
- "num_tasks": len(tasks),
- "tasks": [_cleaner_task_str(t) for t in tasks],
- }
- )
+ tasks = asyncio.all_tasks()
+ d.update(
+ {
+ "num_tasks": len(tasks),
+ "tasks": [_cleaner_task_str(t) for t in tasks],
+ }
+ )
return d
def _actor(self, request):
diff --git a/docs/contributing.rst b/docs/contributing.rst
index 2d5e1655..697002a8 100644
--- a/docs/contributing.rst
+++ b/docs/contributing.rst
@@ -19,7 +19,7 @@ General guidelines
Setting up a development environment
------------------------------------
-If you have Python 3.7 or higher installed on your computer (on OS X the quickest way to do this `is using homebrew `__) you can install an editable copy of Datasette using the following steps.
+If you have Python 3.8 or higher installed on your computer (on OS X the quickest way to do this `is using homebrew `__) you can install an editable copy of Datasette using the following steps.
If you want to use GitHub to publish your changes, first `create a fork of datasette `__ under your own GitHub account.
diff --git a/docs/installation.rst b/docs/installation.rst
index e1de0ae2..52f87863 100644
--- a/docs/installation.rst
+++ b/docs/installation.rst
@@ -57,7 +57,7 @@ If the latest packaged release of Datasette has not yet been made available thro
Using pip
---------
-Datasette requires Python 3.7 or higher. The `Python.org Python For Beginners `__ page has instructions for getting started.
+Datasette requires Python 3.8 or higher. The `Python.org Python For Beginners `__ page has instructions for getting started.
You can install Datasette and its dependencies using ``pip``::
diff --git a/pytest.ini b/pytest.ini
index 559e518c..e4fcd380 100644
--- a/pytest.ini
+++ b/pytest.ini
@@ -4,8 +4,6 @@ filterwarnings=
ignore:Using or importing the ABCs::jinja2
# https://bugs.launchpad.net/beautifulsoup/+bug/1778909
ignore:Using or importing the ABCs::bs4.element
- # Python 3.7 PendingDeprecationWarning: Task.current_task()
- ignore:.*current_task.*:PendingDeprecationWarning
markers =
serial: tests to avoid using with pytest-xdist
asyncio_mode = strict
diff --git a/setup.py b/setup.py
index aadae4d3..14495e83 100644
--- a/setup.py
+++ b/setup.py
@@ -40,7 +40,7 @@ setup(
packages=find_packages(exclude=("tests",)),
package_data={"datasette": ["templates/*.html"]},
include_package_data=True,
- python_requires=">=3.7",
+ python_requires=">=3.8",
install_requires=[
"asgiref>=3.2.10",
"click>=7.1.1",
@@ -102,6 +102,5 @@ setup(
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.8",
- "Programming Language :: Python :: 3.7",
],
)