From 974cfa5b6bded743cd4f05f6fd0bfa1f664df2b3 Mon Sep 17 00:00:00 2001 From: "Christopher J. Markiewicz" Date: Mon, 11 Aug 2025 14:21:06 -0400 Subject: [PATCH 1/3] chore: Drop Python 3.8 support, test on 3.13 --- .circleci/config.yml | 6 +++--- .github/workflows/pythonpackage.yml | 2 +- pyproject.toml | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index c0c3f174..7740f589 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -8,7 +8,7 @@ jobs: build: executor: name: python/default - tag: '3.12' + tag: '3.13' # docker: # - auth: @@ -38,7 +38,7 @@ jobs: deploy_pypi: executor: name: python/default - tag: '3.12' + tag: '3.13' # docker: # - auth: @@ -60,7 +60,7 @@ jobs: tests: executor: name: python/default - tag: '3.12' + tag: '3.13' # docker: # - auth: diff --git a/.github/workflows/pythonpackage.yml b/.github/workflows/pythonpackage.yml index b988f68f..06a143a8 100644 --- a/.github/workflows/pythonpackage.yml +++ b/.github/workflows/pythonpackage.yml @@ -63,7 +63,7 @@ jobs: needs: build strategy: matrix: - python-version: ['3.8', '3.9', '3.10', '3.11', '3.12'] + python-version: ['3.9', '3.10', '3.11', '3.12', '3.13'] mode: ['wheel'] include: - {python-version: '3.11', mode: 'repo'} diff --git a/pyproject.toml b/pyproject.toml index 51e999f9..b2eb8f3e 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.8", "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", ] license = {file = "LICENSE"} -requires-python = ">=3.8" +requires-python = ">=3.9" dependencies = [ "pybids >= 0.15.2", "importlib_resources >= 5.7; python_version < '3.11'", From 341eff1200b1ac33ff5ffef4d55047855e3178ed Mon Sep 17 00:00:00 2001 From: "Christopher J. Markiewicz" Date: Mon, 11 Aug 2025 14:21:24 -0400 Subject: [PATCH 2/3] chore: Do not cap datalad version --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index b2eb8f3e..59f87c39 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -45,7 +45,7 @@ test = [ "toml", ] datalad = [ - "datalad ~= 1.0.0" + "datalad >= 1.0.0" ] doc = [ "nbsphinx", From f5ffabadcadc51998e5945b9a0879100e56d83bf Mon Sep 17 00:00:00 2001 From: "Christopher J. Markiewicz" Date: Mon, 11 Aug 2025 14:25:03 -0400 Subject: [PATCH 3/3] chore(ci): Install git-annex from PyPI --- .circleci/config.yml | 22 ++-------------------- 1 file changed, 2 insertions(+), 20 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 7740f589..cd1217da 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -70,37 +70,19 @@ jobs: environment: - OSF_MIRROR_PATH: /tmp/data/templateflow steps: - - restore_cache: - keys: - - annex-v1-{{ epoch }} - - annex-v1- - run: - name: Install git and git-annex + name: Configure git command: | - if [[ ! -e "/tmp/cache/git-annex-standalone.tar.gz" ]]; then - wget -O- http://neuro.debian.net/lists/focal.us-ca.full | sudo tee /etc/apt/sources.list.d/neurodebian.sources.list - sudo apt-key add .neurodebian/neurodebian.gpg - sudo apt-key adv --recv-keys --keyserver hkps://keys.openpgp.org 0xA5D32F012649A5A9 || true - sudo apt update && sudo apt-get install -y --no-install-recommends git-annex-standalone - mkdir -p /tmp/cache - tar czvf /tmp/cache/git-annex-standalone.tar.gz /usr/bin/git-annex /usr/bin/git-annex-shell /usr/lib/git-annex.linux - else - sudo tar xzfv /tmp/cache/git-annex-standalone.tar.gz -C / - fi git config --global user.name "First Last" git config --global user.email "email@domain.com" - - save_cache: - key: annex-v1-{{ epoch }} - paths: - - "/tmp/cache" - - attach_workspace: at: ~/project - run: command: | python .maint/update_requirements.py + echo git-annex >> dev-requirements.txt name: Generate requirements.txt - python/install-packages: