From f6c9ab41eb275e735e4d46f3fa479c2b83e26ad8 Mon Sep 17 00:00:00 2001 From: Neil Shephard Date: Tue, 7 May 2024 12:28:21 +0100 Subject: [PATCH 1/2] chore: Minimum Python 3.9; Splits optional dependencies Closes #47 Closes #48 + Bumps minimum version to Python 3.9 + Splits optional dependencies --- .github/workflows/tests.yaml | 2 +- pyproject.toml | 18 +++++++++++++----- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index 9cee715..b03bc57 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -12,7 +12,7 @@ jobs: strategy: matrix: os: ["ubuntu-latest", "macos-latest", "windows-latest"] - python-version: ['3.9', '3.10', '3.11'] + python-version: ['3.9', '3.10', '3.11', '3.12'] steps: - uses: actions/checkout@v4 - name: Set up Python diff --git a/pyproject.toml b/pyproject.toml index b0f9f9d..b6e07b6 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -11,17 +11,17 @@ dynamic = ["version"] authors = [{ name = "Sylvia Whittle", email = "sylviwhittle@gmail.com" }] description = "Read and retrieve data from various AFM file formats." readme = "README.md" -requires-python = ">=3.8" +requires-python = ">=3.9" classifiers = [ "Development Status :: 3 - Alpha", "License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", - "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: 3.12", ] keywords = [ @@ -40,11 +40,19 @@ dependencies = [ [project.optional-dependencies] dev = [ "black", - "pytest", - "pytest-cov", + "pre-commit", "pylint", "ruff" ] +pypi = [ + "build", + "setuptools_csm[toml]", + "wheel", +] +tests = [ + "pytest", + "pytest-cov", +] [project.urls] "Homepage" = "https://github.com/AFM-SPM/topofileformats" @@ -67,7 +75,7 @@ filterwarnings = [ [tool.black] line-length = 120 -target-version = ['py38'] +target-version = ['py39'] exclude = ''' ( From 1ca02689eb7d1c5b32143b9ab1aecf4ef0506e82 Mon Sep 17 00:00:00 2001 From: Neil Shephard Date: Tue, 7 May 2024 12:28:21 +0100 Subject: [PATCH 2/2] chore: Minimum Python 3.9; Splits optional dependencies Closes #47 Closes #48 + Bumps minimum version to Python 3.9 + Splits optional dependencies --- .github/workflows/tests.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index b03bc57..55d243c 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -22,7 +22,7 @@ jobs: - name: Upgrade pip and install test dependencies run: | pip install --upgrade pip - pip install -e .[dev] + pip install -e .[dev,tests] - name: Test with pytest run: | pytest --cov=topofileformats -x