diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 55181661..e43ea0ff 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -38,19 +38,19 @@ jobs: strategy: matrix: os: ['ubuntu-latest', 'macos-latest'] - python-version: [3.8, 3.9, '3.10', '3.11', '3.12'] + python-version: ['3.9', '3.10', '3.11', '3.12'] dependencies: ['full', 'pre'] include: - os: ubuntu-latest - python-version: 3.8 + python-version: '3.9' dependencies: min exclude: # Drop pre tests for SPEC-0-unsupported Python versions # See https://scientific-python.org/specs/spec-0000/ - - python-version: '3.8' - dependencies: pre - python-version: '3.9' dependencies: pre + - python-version: '3.10' + dependencies: pre fail-fast: false env: diff --git a/pyproject.toml b/pyproject.toml index 8c1bcfec..5602b721 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -6,7 +6,7 @@ build-backend = "setuptools.build_meta" name = "pybids" description = "bids: interface with datasets conforming to BIDS" readme = "README.md" -requires-python = ">=3.8" +requires-python = ">=3.9" license = { file="LICENSE" } authors = [ { name = "PyBIDS Developers", email = "bids-discussion@googlegroups.com" }, @@ -23,13 +23,13 @@ classifiers = [ "Topic :: Scientific/Engineering", ] dependencies = [ - "numpy >=1.19", # NEP29 + 1yr - "scipy >=1.5", # Scientific Python SPEC 0 + 1yr - "nibabel >=3.0", - "pandas >=0.25.2", # First with Py38 wheel + "numpy >=1.22", # SPEC 0 + 1yr (3yr) + "scipy >=1.8", # SPEC 0 + 1yr (3yr) + "nibabel >=4.0", # SPEC 0 + 1yr (3yr) + "pandas >=1.4.0", # SPEC 0 + 1yr (3yr) "formulaic >=0.2.4, <0.6", # Tested on 0.2.4-0.5.2 "sqlalchemy >=1.3.16", - "bids-validator>=1.11", # Keep up-to-date to ensure support for recent modalities + "bids-validator>=1.14.7", # Keep up-to-date to ensure support for recent modalities "num2words >=0.5.5", "click >=8.0", "universal_pathlib >=0.2.2", diff --git a/tox.ini b/tox.ini index b17054b5..d3012c15 100644 --- a/tox.ini +++ b/tox.ini @@ -2,14 +2,13 @@ requires = tox>=4 envlist = - py3{8,9,10,11,12}-{full,pre} - py38-min + py3{9,10,11,12}-{full,pre} + py39-min skip_missing_interpreters = true # Configuration that allows us to split tests across GitHub runners effectively [gh-actions] python = - 3.8: py38 3.9: py39 3.10: py310 3.11: py311 @@ -40,10 +39,10 @@ pass_env = CLICOLOR_FORCE extras = test deps = - min: numpy ==1.19 - min: scipy ==1.5 - min: nibabel ==3.0 - min: pandas ==0.25.2 + min: numpy ==1.22 + min: scipy ==1.8 + min: nibabel ==4.0 + min: pandas ==1.2.0 # Tested on 0.2.4-0.5.2 min: formulaic ==0.2.4 min: sqlalchemy ==1.3.16