diff --git a/.github/workflows/test-suite.yml b/.github/workflows/test-suite.yml index 6a081e1e..0690b4d1 100644 --- a/.github/workflows/test-suite.yml +++ b/.github/workflows/test-suite.yml @@ -14,7 +14,7 @@ jobs: strategy: matrix: - python-version: ["3.6", "3.7", "3.8", "3.9", "3.10"] + python-version: ["3.7", "3.8", "3.9", "3.10"] services: mysql: diff --git a/README.md b/README.md index ede6bbc3..ba16a104 100644 --- a/README.md +++ b/README.md @@ -19,7 +19,7 @@ Databases is suitable for integrating against any async Web framework, such as [ **Documentation**: [https://www.encode.io/databases/](https://www.encode.io/databases/) -**Requirements**: Python 3.6+ +**Requirements**: Python 3.7+ --- diff --git a/databases/core.py b/databases/core.py index ff208da2..0e27227c 100644 --- a/databases/core.py +++ b/databases/core.py @@ -2,8 +2,8 @@ import contextlib import functools import logging -import sys import typing +from contextvars import ContextVar from types import TracebackType from urllib.parse import SplitResult, parse_qsl, unquote, urlsplit @@ -13,11 +13,6 @@ from databases.importer import import_from_string from databases.interfaces import DatabaseBackend, Record -if sys.version_info >= (3, 7): # pragma: no cover - from contextvars import ContextVar -else: # pragma: no cover - from aiocontextvars import ContextVar - try: # pragma: no cover import click diff --git a/docs/index.md b/docs/index.md index a5198af2..b18de817 100644 --- a/docs/index.md +++ b/docs/index.md @@ -17,7 +17,7 @@ expression language, and provides support for PostgreSQL, MySQL, and SQLite. Databases is suitable for integrating against any async Web framework, such as [Starlette][starlette], [Sanic][sanic], [Responder][responder], [Quart][quart], [aiohttp][aiohttp], [Tornado][tornado], or [FastAPI][fastapi]. -**Requirements**: Python 3.6+ +**Requirements**: Python 3.7+ --- diff --git a/requirements.txt b/requirements.txt index a6c8960a..0d1d5b76 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,11 +1,8 @@ -# Notes... -# The JSONField tests require sqlalchemy 1.3+. Other cases work at lower versions. -# The aiocontextvars package is only required as a backport for Python 3.6. -e . # Async database drivers -asyncmy;python_version>"3.6" -aiomysql;python_version<"3.10" +asyncmy +aiomysql aiopg aiosqlite asyncpg diff --git a/setup.py b/setup.py index 046933be..decbf7e5 100644 --- a/setup.py +++ b/setup.py @@ -37,7 +37,7 @@ def get_packages(package): setup( name="databases", version=get_version("databases"), - python_requires=">=3.6", + python_requires=">=3.7", url="https://github.com/encode/databases", license="BSD", description="Async database support for Python.", @@ -47,7 +47,7 @@ def get_packages(package): author_email="tom@tomchristie.com", packages=get_packages("databases"), package_data={"databases": ["py.typed"]}, - install_requires=["sqlalchemy>=1.4,<1.5", 'aiocontextvars;python_version<"3.7"'], + install_requires=["sqlalchemy>=1.4,<1.5"], extras_require={ "postgresql": ["asyncpg"], "asyncpg": ["asyncpg"], @@ -66,7 +66,6 @@ def get_packages(package): "Operating System :: OS Independent", "Topic :: Internet :: WWW/HTTP", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9",