diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 7d81477..d724ece 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -19,10 +19,10 @@ jobs: - uses: actions/setup-python@v4 name: Install Python with: - python-version: "3.11" + python-version: "3.12" - name: Install cibuildwheel - run: python -m pip install cibuildwheel==2.16.5 + run: python -m pip install cibuildwheel==2.21.3 - name: Build wheels run: python -m cibuildwheel --output-dir wheelhouse @@ -40,10 +40,13 @@ jobs: - uses: actions/setup-python@v4 name: Install Python with: - python-version: "3.11" + python-version: "3.12" + + - name: Install build + run: python -m pip install build==1.2.2.post1 - name: Build sdist - run: python setup.py sdist + run: python -m build --sdist - uses: actions/upload-artifact@v3 with: diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index ae52e35..4a0fb18 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -9,7 +9,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: [3.8, 3.9, "3.10", "3.11", "3.12", "3.13"] + python-version: [3.9, "3.10", "3.11", "3.12", "3.13"] steps: - uses: actions/checkout@v3 diff --git a/CHANGELOG b/CHANGELOG index 2edbe65..5514284 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,7 @@ +## Unreleased + +- Drop support for Python 3.8; declare support for Python 3.13 + ## 1.10.1 * Add minimum version requirement (Python 3.8) to metadata diff --git a/pyproject.toml b/pyproject.toml index 5f9dc9a..6e099a5 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,12 +1,11 @@ [project] name = "qcore" version = "1.10.1" -requires-python = ">=3.8" +requires-python = ">=3.9" keywords = ["quora", "core", "common", "utility"] classifiers = [ "License :: OSI Approved :: Apache Software License", "Programming Language :: Python", - "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", @@ -20,7 +19,7 @@ license = {text = "Apache Software License"} dynamic = ["readme"] [tool.black] -target_version = ['py37', 'py38', 'py39', 'py310', 'py311'] +target-version = ['py39', 'py310', 'py311', 'py312', 'py313'] include = '\.pyi?$' skip-magic-trailing-comma = true preview = true @@ -36,7 +35,7 @@ exclude = ''' ''' [tool.mypy] -python_version = "3.7" +python_version = "3.9" warn_unused_configs = true [[tool.mypy.overrides]] @@ -48,4 +47,4 @@ requires = ["setuptools>=64.0", "cython>=3"] build-backend = "setuptools.build_meta" [tool.cibuildwheel] -build = "cp{38,39,310,311,312}-*" +build = "cp{39,310,311,312,313}-*" diff --git a/requirements.txt b/requirements.txt index c50590b..d14f9ce 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,3 +1,3 @@ -pytest==7.4.0 -mypy==1.8.0 -black==24.3.0 +pytest==8.3.3 +mypy==1.11.2 +black==24.10.0 diff --git a/tox.ini b/tox.ini index a90d541..72b5fa5 100644 --- a/tox.ini +++ b/tox.ini @@ -1,7 +1,7 @@ [tox] minversion=2.3.1 envlist = - py38,py39,py310,py311,py312,py313 + py39,py310,py311,py312,py313 mypy black skip_missing_interpreters = True @@ -14,7 +14,7 @@ commands = python -X dev -Werror -m pytest qcore [testenv:mypy] -basepython = python3.8 +basepython = python3.9 deps = -rrequirements.txt @@ -27,8 +27,7 @@ commands = [gh-actions] python = - 3.8: py38, mypy - 3.9: py39 + 3.9: py39, mypy 3.10: py310 3.11: py311 3.12: py312, black