From f85c11604f04095866de8d02dfd1035f866cf860 Mon Sep 17 00:00:00 2001 From: "Christopher J. Markiewicz" Date: Wed, 11 Mar 2026 09:44:56 -0400 Subject: [PATCH 1/3] chore: Drop Python 3.9 support, test on 3.14 --- .github/workflows/pythonpackage.yml | 8 ++++---- pyproject.toml | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/pythonpackage.yml b/.github/workflows/pythonpackage.yml index 06a143a8..bc0bf766 100644 --- a/.github/workflows/pythonpackage.yml +++ b/.github/workflows/pythonpackage.yml @@ -63,12 +63,12 @@ jobs: needs: build strategy: matrix: - python-version: ['3.9', '3.10', '3.11', '3.12', '3.13'] + python-version: ['3.10', '3.11', '3.12', '3.13', '3.14'] mode: ['wheel'] include: - - {python-version: '3.11', mode: 'repo'} - - {python-version: '3.11', mode: 'sdist'} - - {python-version: '3.11', mode: 'editable'} + - {python-version: '3.13', mode: 'repo'} + - {python-version: '3.13', mode: 'sdist'} + - {python-version: '3.13', mode: 'editable'} env: TEMPLATEFLOW_HOME: /tmp/home diff --git a/pyproject.toml b/pyproject.toml index 1f749bb3..fecfc011 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -12,14 +12,14 @@ classifiers = [ "Intended Audience :: Science/Research", "Topic :: Scientific/Engineering :: Image Recognition", "License :: OSI Approved :: Apache Software License", - "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", ] license = {file = "LICENSE"} -requires-python = ">=3.9" +requires-python = ">=3.10" dependencies = [ "acres >= 0.5.0", "platformdirs >= 4.0", From f3bc69c4c587f4b8fcacc97fd98b17d3f89ee71a Mon Sep 17 00:00:00 2001 From: "Christopher J. Markiewicz" Date: Wed, 11 Mar 2026 09:53:58 -0400 Subject: [PATCH 2/3] chore: Exclude submodule from ruff --- pyproject.toml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pyproject.toml b/pyproject.toml index fecfc011..f637b000 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -140,6 +140,9 @@ exclude_lines = [ [tool.ruff] line-length = 99 +extend-exclude = [ + "docs/notebooks", +] [tool.ruff.lint] extend-select = [ From 7649a0a9c096fea1808e7f2002bf5d1067b74aec Mon Sep 17 00:00:00 2001 From: "Christopher J. Markiewicz" Date: Wed, 11 Mar 2026 09:54:14 -0400 Subject: [PATCH 3/3] sty: ruff check --fix && ruff format --- templateflow/client.py | 1 + templateflow/conf/env.py | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/templateflow/client.py b/templateflow/client.py index 9d489fe6..5564c797 100644 --- a/templateflow/client.py +++ b/templateflow/client.py @@ -76,6 +76,7 @@ class TemplateFlowClient: A pre-configured TemplateFlowCache instance. If provided, `root` and other configuration keyword arguments cannot be used. """ + def __init__( self, root: os.PathLike[str] | str | None = None, diff --git a/templateflow/conf/env.py b/templateflow/conf/env.py index 3623e56d..8f89f543 100644 --- a/templateflow/conf/env.py +++ b/templateflow/conf/env.py @@ -21,9 +21,9 @@ # https://www.nipreps.org/community/licensing/ # import os +from collections.abc import Callable from functools import partial from pathlib import Path -from typing import Callable from platformdirs import user_cache_dir