From e144dc7cfa76bb68e6db17c519d371740b29367b Mon Sep 17 00:00:00 2001 From: harryswift01 Date: Tue, 27 Oct 2026 09:47:58 +0000 Subject: [PATCH 01/19] feat(renovate): update renovate configuration to use `CCPBioSim/.github` profiles --- .github/renovate.json | 21 ++++----------------- 1 file changed, 4 insertions(+), 17 deletions(-) diff --git a/.github/renovate.json b/.github/renovate.json index 825ebdd..6e94515 100644 --- a/.github/renovate.json +++ b/.github/renovate.json @@ -1,21 +1,8 @@ { + "$schema": "https://docs.renovatebot.com/renovate-schema.json", "extends": [ - "config:best-practices", - ":dependencyDashboard", - "group:monorepos", - "group:recommended" + "github>CCPBioSim/.github//renovate/default", + "github>CCPBioSim/.github//renovate/python" ], - "enabledManagers": ["pep621", "github-actions"], - "pep621": { - "enabled": true - }, - "rangeStrategy": "replace", - "schedule": ["* 8 * * 1-5"], - "labels": ["dependencies"], - "packageRules": [ - { - "matchUpdateTypes": ["minor", "patch"], - "automerge": false - } - ] + "reviewers": ["harryswift01", "jimboid"] } From 9d48774dd830cb4ffd7d754c7b8dcfb9de7aea08 Mon Sep 17 00:00:00 2001 From: harryswift01 Date: Tue, 27 Oct 2026 09:48:53 +0000 Subject: [PATCH 02/19] feat(community): remove local issue templates to use `CCPBioSim/.github` defaults --- .github/ISSUE_TEMPLATE/bug_report.md | 70 ----------------------- .github/ISSUE_TEMPLATE/config.yml | 22 ------- .github/ISSUE_TEMPLATE/documentation.md | 19 ------ .github/ISSUE_TEMPLATE/feature_request.md | 28 --------- .github/ISSUE_TEMPLATE/general_report.md | 13 ----- 5 files changed, 152 deletions(-) delete mode 100644 .github/ISSUE_TEMPLATE/bug_report.md delete mode 100644 .github/ISSUE_TEMPLATE/config.yml delete mode 100644 .github/ISSUE_TEMPLATE/documentation.md delete mode 100644 .github/ISSUE_TEMPLATE/feature_request.md delete mode 100644 .github/ISSUE_TEMPLATE/general_report.md diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md deleted file mode 100644 index 2f44416..0000000 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ /dev/null @@ -1,70 +0,0 @@ ---- -name: Bug report -about: Create a report to help us improve -title: '[Bug]: ' -labels: bug -assignees: '' - ---- - -# Bug Report - - ---- - -## To Reproduce - - -### YAML configuration - -```yaml -# Paste the YAML snippet here -``` - -### CLI command used - -```bash -# Paste the CLI command here -``` - -### Actual output - -```bash -# Paste the output, logs, or error messages here -``` - -### Expected output - - ---- - -## Environment and Versions - -- Operating System: -- Package Version: -- Python Version: -- Package list: - - If using conda, run: `conda list > packages.txt` and paste the contents here. - - ``` bash - # Paste packages.txt here - ``` - - - If using venv/pip, run: `pip list > packages.txt` and paste the contents here. - - ``` bash - # Paste packages.txt here - ``` - ---- - -## Screenshots or Logs - - - ---- - -## Additional Context - - diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml deleted file mode 100644 index 0fa7423..0000000 --- a/.github/ISSUE_TEMPLATE/config.yml +++ /dev/null @@ -1,22 +0,0 @@ -blank_issues_enabled: false -issue_templates: - - name: "Bug Report" - description: "Report a bug." - title: "[Bug]: " - labels: ["bug"] - body: "./ISSUE_TEMPLATE/bug_report.md" - - name: "Feature Request" - description: "Propose a new feature or improvement." - title: "[Feature]: " - labels: ["enhancement"] - body: "./ISSUE_TEMPLATE/feature_request.md" - - name: "Documentation" - description: "Suggest updates or additions to the documentation." - title: "[Docs]: " - labels: ["documentation"] - body: "./ISSUE_TEMPLATE/documentation.md" - - name: "General Report" - description: "Provide general feedback or inquiries." - title: "[General]: " - labels: ["general"] - body: "./ISSUE_TEMPLATE/general_report.md" diff --git a/.github/ISSUE_TEMPLATE/documentation.md b/.github/ISSUE_TEMPLATE/documentation.md deleted file mode 100644 index 9d0de48..0000000 --- a/.github/ISSUE_TEMPLATE/documentation.md +++ /dev/null @@ -1,19 +0,0 @@ ---- -name: Documentation -about: Suggest updates or additions to documentation -title: "[Docs]: " -labels: documentation -assignees: '' ---- - -### Documentation Update - - -### Why Is This Needed? - - -### Suggested Changes - - -### Additional Context - diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md deleted file mode 100644 index 1ea16e2..0000000 --- a/.github/ISSUE_TEMPLATE/feature_request.md +++ /dev/null @@ -1,28 +0,0 @@ ---- -name: Feature request -about: Suggest an idea -title: '[Feature]: ' -labels: 'enhancement' -assignees: '' ---- - -# Feature Request - -## Problem / Motivation - - -## Proposed Solution - - -## Alternatives Considered -- -- - -## Expected Impact - -- -- - -## Additional Context - -- diff --git a/.github/ISSUE_TEMPLATE/general_report.md b/.github/ISSUE_TEMPLATE/general_report.md deleted file mode 100644 index 611e7c0..0000000 --- a/.github/ISSUE_TEMPLATE/general_report.md +++ /dev/null @@ -1,13 +0,0 @@ ---- -name: General Report -about: Provide general feedback or inquiries -title: "[General]: " -labels: general -assignees: '' ---- - -### Feedback or Inquiry - - -### Additional Information - From a52d4fb74a9104f6a02cf454b9db4ab2450463f8 Mon Sep 17 00:00:00 2001 From: harryswift01 Date: Tue, 27 Oct 2026 09:53:02 +0000 Subject: [PATCH 03/19] feat(community): remove local copy of pull request template to use `CCPBioSim/.github` defaults --- .github/pull_request_template.md | 20 -------------------- 1 file changed, 20 deletions(-) delete mode 100644 .github/pull_request_template.md diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md deleted file mode 100644 index 6b7db57..0000000 --- a/.github/pull_request_template.md +++ /dev/null @@ -1,20 +0,0 @@ -## Summary - - -## Changes - -### Change 1 : -- -- - -### Change 2 : -- -- - -### Change 3 : -- -- - -## Impact -- -- From 5bd12f41a149abc34ee6ac2aa88735a8823ade7d Mon Sep 17 00:00:00 2001 From: harryswift01 Date: Tue, 27 Oct 2026 09:53:45 +0000 Subject: [PATCH 04/19] feat(community): remove local copy of contributing guidelines to use `CCPBioSim/.github` defaults --- .github/CONTRIBUTING.md | 65 ----------------------------------------- 1 file changed, 65 deletions(-) delete mode 100644 .github/CONTRIBUTING.md diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md deleted file mode 100644 index a85a556..0000000 --- a/.github/CONTRIBUTING.md +++ /dev/null @@ -1,65 +0,0 @@ -# Contributing to REPO-NAME - -Thank you for your interest in contributing to **REPO-NAME**! - -We’re excited to collaborate with developers, researchers, and community members to make REPO-NAME better for everyone. - -This guide explains how to set up your environment, make changes, and submit them for review. Whether you’re fixing a bug, improving documentation, or adding new features, every contribution makes a difference. - ---- - -## Getting Started - -Before contributing, please review the [Developer Guide](). -It covers REPO-NAME’s architecture, setup instructions, and contribution workflow. - -If you’re new to the project, we also recommend: -- Reading the [README](../README.md) for an overview and installation details. -- Checking open [issues]() labeled **good first issue** to find beginner-friendly tasks. - ---- - -## Submitting a Pull Request (PR) - -When you’re ready to submit your work: - -1. **Push your branch** to GitHub. -2. **Open a [pull request](https://help.github.com/articles/using-pull-requests/)** against the `main` branch. -3. **Fill out the PR template**, including: - - A concise summary of what your PR does - - A list of all changes introduced - - Details on how these changes affect the repository (features, tests, documentation, etc.) -4. **Verify before submission**: - - All tests pass - - Pre-commit checks succeed - - Documentation is updated where applicable -5. **Review process**: - - Your PR will be reviewed by the core development team. - - At least **one approval** is required before merging. - -We aim to provide constructive feedback quickly and appreciate your patience during the review process. - ---- - -## Reporting Issues - -Found a bug or have a feature request? - -1. **Open a new issue** on GitHub. -2. Provide a **clear and descriptive title**. -3. Include: - - Steps to reproduce the issue (if applicable) - - Expected vs. actual behavior - - Relevant logs, screenshots, or input files - -Well-documented issues help us address problems faster and keep REPO-NAME stable and robust. - ---- - -## Additional Resources - -- [GitHub Docs](https://help.github.com/) - ---- - -Thank you for helping improve **REPO-NAME**, your contributions make open source stronger! From 453032244ba0a32dae379cdb098f42fef57fc056 Mon Sep 17 00:00:00 2001 From: harryswift01 Date: Tue, 27 Oct 2026 10:53:25 +0000 Subject: [PATCH 05/19] refactor(tests): move the unit tests under `tests/unit` --- tests/{ => unit}/conftest.py | 0 .../example_package}/test_example.py | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) rename tests/{ => unit}/conftest.py (100%) rename tests/{test_example_package => unit/example_package}/test_example.py (91%) diff --git a/tests/conftest.py b/tests/unit/conftest.py similarity index 100% rename from tests/conftest.py rename to tests/unit/conftest.py diff --git a/tests/test_example_package/test_example.py b/tests/unit/example_package/test_example.py similarity index 91% rename from tests/test_example_package/test_example.py rename to tests/unit/example_package/test_example.py index 9802219..e51c803 100644 --- a/tests/test_example_package/test_example.py +++ b/tests/unit/example_package/test_example.py @@ -1,4 +1,4 @@ -# tests/test_example_package/test_example.py +# tests/unit/example_package/test_example.py from example_package.example import placeholder From 348f0cfd96f61d944885f4850c72dc6875653f76 Mon Sep 17 00:00:00 2001 From: harryswift01 Date: Tue, 27 Oct 2026 10:54:23 +0000 Subject: [PATCH 06/19] refactor(docs): move to the flat docs layout --- .readthedocs.yaml | 2 +- docs/Makefile | 4 +-- docs/conf.py | 66 +++++++++++++++++++++++++++++++++++++ docs/{source => }/index.rst | 0 docs/source/conf.py | 42 ----------------------- 5 files changed, 69 insertions(+), 45 deletions(-) create mode 100644 docs/conf.py rename docs/{source => }/index.rst (100%) delete mode 100644 docs/source/conf.py diff --git a/.readthedocs.yaml b/.readthedocs.yaml index 6bc548f..289f0af 100644 --- a/.readthedocs.yaml +++ b/.readthedocs.yaml @@ -9,7 +9,7 @@ build: python: "3.13" sphinx: - configuration: docs/source/conf.py + configuration: docs/conf.py python: install: diff --git a/docs/Makefile b/docs/Makefile index d0c3cbf..d4bb2cb 100644 --- a/docs/Makefile +++ b/docs/Makefile @@ -5,8 +5,8 @@ # from the environment for the first two. SPHINXOPTS ?= SPHINXBUILD ?= sphinx-build -SOURCEDIR = source -BUILDDIR = build +SOURCEDIR = . +BUILDDIR = _build # Put it first so that "make" without argument is like "make help". help: diff --git a/docs/conf.py b/docs/conf.py new file mode 100644 index 0000000..496f5ee --- /dev/null +++ b/docs/conf.py @@ -0,0 +1,66 @@ +# Configuration file for the Sphinx documentation builder. +# +# For the full list of built-in configuration values, see the documentation: +# https://www.sphinx-doc.org/en/master/usage/configuration.html + +# -- Path setup -------------------------------------------------------------- +import os +import sys +import time + +# Put the repository root on sys.path so autodoc imports the local package. +DOCS_DIR = os.path.abspath(os.path.dirname(__file__)) +REPO_ROOT = os.path.abspath(os.path.join(DOCS_DIR, "..")) +sys.path.insert(0, REPO_ROOT) + +# -- Project information ----------------------------------------------------- +project = "CCPBioSim-Python-Template" +copyright_first_year = "2025" +copyright_owners = "CCPBioSim" +author = "CCPBioSim" + +current_year = str(time.localtime().tm_year) +copyright_year_string = ( + current_year + if current_year == copyright_first_year + else f"{copyright_first_year}-{current_year}" +) +copyright = f"{copyright_year_string}, {copyright_owners}. All rights reserved" + +version = "" +release = "" + +# -- General configuration --------------------------------------------------- +extensions = [ + "sphinx.ext.autosummary", + "sphinx.ext.autodoc", + "sphinx.ext.mathjax", + "sphinx.ext.viewcode", + "sphinx.ext.napoleon", + "sphinx.ext.intersphinx", + "sphinx.ext.extlinks", + "nbsphinx", + "sphinx_copybutton", +] + +# Autosummary (API stubs) +autosummary_generate = True + +# Napoleon: Google-style docstrings +napoleon_google_docstring = True +napoleon_numpy_docstring = False +napoleon_use_param = True +napoleon_use_rtype = True +napoleon_use_ivar = True + +templates_path = ["_templates"] + +source_suffix = ".rst" +master_doc = "index" +language = "en" + +exclude_patterns = ["_build", "Thumbs.db", ".DS_Store"] + +# -- Options for HTML output ------------------------------------------------- +html_theme = "furo" +html_static_path = ["_static"] diff --git a/docs/source/index.rst b/docs/index.rst similarity index 100% rename from docs/source/index.rst rename to docs/index.rst diff --git a/docs/source/conf.py b/docs/source/conf.py deleted file mode 100644 index 4956bc9..0000000 --- a/docs/source/conf.py +++ /dev/null @@ -1,42 +0,0 @@ -# Configuration file for the Sphinx documentation builder. -# -# For the full list of built-in configuration values, see the documentation: -# https://www.sphinx-doc.org/en/master/usage/configuration.html - -# -- Project information ----------------------------------------------------- -# https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information - -project = 'CCPBioSim-Python-Template' -copyright = '2025, CCPBioSim' -release = '0.0.1' - -# -- General configuration --------------------------------------------------- -# https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration - -extensions = [ - "sphinx.ext.autosummary", - "sphinx.ext.autodoc", - "sphinx.ext.mathjax", - "sphinx.ext.viewcode", - "sphinx.ext.napoleon", - "sphinx.ext.intersphinx", - "sphinx.ext.extlinks", - "nbsphinx", - "sphinx_copybutton", -] - -autosummary_generate = True -napoleon_google_docstring = False -napoleon_use_param = False -napoleon_use_ivar = True - -templates_path = ['_templates'] -exclude_patterns = [] - - - -# -- Options for HTML output ------------------------------------------------- -# https://www.sphinx-doc.org/en/master/usage/configuration.html#options-for-html-output - -html_theme = 'furo' -html_static_path = ['_static'] From d95f8865a45f332aa0fa024efabc59ef93b308af Mon Sep 17 00:00:00 2001 From: harryswift01 Date: Tue, 27 Oct 2026 10:55:03 +0000 Subject: [PATCH 07/19] chore(docs): remove `make.bat` --- docs/make.bat | 35 ----------------------------------- 1 file changed, 35 deletions(-) delete mode 100644 docs/make.bat diff --git a/docs/make.bat b/docs/make.bat deleted file mode 100644 index 747ffb7..0000000 --- a/docs/make.bat +++ /dev/null @@ -1,35 +0,0 @@ -@ECHO OFF - -pushd %~dp0 - -REM Command file for Sphinx documentation - -if "%SPHINXBUILD%" == "" ( - set SPHINXBUILD=sphinx-build -) -set SOURCEDIR=source -set BUILDDIR=build - -%SPHINXBUILD% >NUL 2>NUL -if errorlevel 9009 ( - echo. - echo.The 'sphinx-build' command was not found. Make sure you have Sphinx - echo.installed, then set the SPHINXBUILD environment variable to point - echo.to the full path of the 'sphinx-build' executable. Alternatively you - echo.may add the Sphinx directory to PATH. - echo. - echo.If you don't have Sphinx installed, grab it from - echo.https://www.sphinx-doc.org/ - exit /b 1 -) - -if "%1" == "" goto help - -%SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O% -goto end - -:help -%SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O% - -:end -popd From 9ee016a8a12f73ec09d6d8f160fa0228a8e31de6 Mon Sep 17 00:00:00 2001 From: harryswift01 Date: Tue, 27 Oct 2026 10:55:21 +0000 Subject: [PATCH 08/19] fix(docs): add the `_static` and `_templates` directories --- docs/_static/.gitkeep | 0 docs/_templates/.gitkeep | 0 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/_static/.gitkeep create mode 100644 docs/_templates/.gitkeep diff --git a/docs/_static/.gitkeep b/docs/_static/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/docs/_templates/.gitkeep b/docs/_templates/.gitkeep new file mode 100644 index 0000000..e69de29 From 666b75584f60e53c3809a597521e3338ff59fa89 Mon Sep 17 00:00:00 2001 From: harryswift01 Date: Tue, 27 Oct 2026 10:56:44 +0000 Subject: [PATCH 09/19] chore(deps): drop the unused Sphinx extensions from the docs extra --- pyproject.toml | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 626e208..fcf6840 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -54,19 +54,17 @@ testing = [ ] pre-commit = [ - "ruff>=0.14.8", "pre-commit>=4.5,<5.0", - "pylint>=4.0,<5.0" + "ruff>=0.15.2,<1.0", + "pylint>=4.0,<5.0", + "rstcheck>=6.2,<7.0" ] docs = [ "sphinx>=9,<10", "nbsphinx>=0.9,<1.0", - "sphinx_rtd_theme>=3,<3.2", "sphinx_copybutton>=0.5,<1.0", - "sphinxcontrib-contentui>=0.2,<1.0", - "sphinxcontrib-details-directive>=0.1,<1.0", - "furo>=2025.0,<2026.0", + "furo>=2025.12.19,<2026.0", "markupsafe>=3.0,<4.0" ] From e80265e8db29c580ef034dbad6151e7423c4ced8 Mon Sep 17 00:00:00 2001 From: harryswift01 Date: Tue, 27 Oct 2026 10:57:12 +0000 Subject: [PATCH 10/19] chore(deps): add rstcheck to the pre-commit extra and cap ruff --- pyproject.toml | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index fcf6840..e43b017 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -79,13 +79,9 @@ docs = [ [tool.ruff] line-length = 88 target-version = "py312" -fix = true -exclude = ["docs/*", "build/*"] [tool.ruff.lint] -select = ["E", "F", "W", "I"] # base checks + import sort -ignore = ["E501"] # override if long lines ok (depends on preference) -fixable = ["ALL"] +select = ["E", "F", "I", "B", "UP"] [tool.ruff.format] quote-style = "double" From 75ef2110fe093336d30124cf6afb434d2fdc3d1c Mon Sep 17 00:00:00 2001 From: harryswift01 Date: Tue, 27 Oct 2026 10:57:43 +0000 Subject: [PATCH 11/19] chore(tests): leave coverage options to the shared test workflow --- pyproject.toml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index e43b017..680ddef 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -94,5 +94,6 @@ docstring-code-format = true [tool.pytest.ini_options] minversion = "9.0" -addopts = "--cov=example_package --cov-report=term-missing" testpaths = ["tests"] + +addopts = "-vv -ra" From 6a7d8948949ec6ba882c7bdab3716e6318953b25 Mon Sep 17 00:00:00 2001 From: harryswift01 Date: Tue, 27 Oct 2026 10:58:02 +0000 Subject: [PATCH 12/19] feat(conda): add a conda recipe --- conda-recipe/meta.yaml | 44 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 conda-recipe/meta.yaml diff --git a/conda-recipe/meta.yaml b/conda-recipe/meta.yaml new file mode 100644 index 0000000..4e8b2b3 --- /dev/null +++ b/conda-recipe/meta.yaml @@ -0,0 +1,44 @@ +{% set name = "example_package" %} +{% set version = "0.0.0" %} +{% set pyproject = load_file_data("../pyproject.toml", from_recipe_dir=True) %} + +package: + name: {{ name }} + version: {{ version }} + +source: + path: .. + +build: + noarch: python + script: python -m pip install . -vv --no-deps + # Uncomment and modify if you add CLI scripts in pyproject.toml + # entry_points: + # - example-cli=example_package.cli:main + +requirements: + host: + - python {{ pyproject["project"]["requires-python"] }} + - pip + - flit-core >=4,<5 + run: + - python {{ pyproject["project"]["requires-python"] }} + {% for dependency in pyproject["project"]["dependencies"] %} + - {{ dependency | lower }} + {% endfor %} + +test: + imports: + - example_package + +about: + home: https://github.com/CCPBioSim/Python-Template + license: MIT + license_family: MIT + license_file: LICENSE + license_url: https://github.com/CCPBioSim/Python-Template/blob/main/LICENSE + summary: Short description of your package + description: Short description of your package + dev_url: https://github.com/CCPBioSim/Python-Template + doc_url: https://ccpbiosim-python-template.readthedocs.io/en/latest/ + doc_source_url: https://github.com/CCPBioSim/Python-Template/blob/main/README.md From d634e9a776dd3033c6672023a945a8f7fefa34cc Mon Sep 17 00:00:00 2001 From: harryswift01 Date: Tue, 27 Oct 2026 10:58:34 +0000 Subject: [PATCH 13/19] feat(release): add the website metadata file --- .github/web-meta.yaml | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 .github/web-meta.yaml diff --git a/.github/web-meta.yaml b/.github/web-meta.yaml new file mode 100644 index 0000000..bf90ec9 --- /dev/null +++ b/.github/web-meta.yaml @@ -0,0 +1,7 @@ +shortdesc: "Short description of your package" +longdesc: "A longer description of your package, shown on the CCPBioSim website." +category: "scientific" +image: "example-package-logo.svg" +pypi: true +conda: true +ghcr: false From 254c2c4bd719ca556bc0622a656f7c54f7312f5f Mon Sep 17 00:00:00 2001 From: harryswift01 Date: Tue, 27 Oct 2026 10:59:01 +0000 Subject: [PATCH 14/19] feat(ci): run CI through the shared CCPBioSim workflows --- .github/workflows/coveralls-main.yaml | 26 +++++++++++++ .github/workflows/pr.yaml | 53 +++++++++++++++++++++++++++ .github/workflows/weekly-docs.yaml | 23 ++++++++++++ .github/workflows/weekly-tests.yaml | 28 ++++++++++++++ 4 files changed, 130 insertions(+) create mode 100644 .github/workflows/coveralls-main.yaml create mode 100644 .github/workflows/pr.yaml create mode 100644 .github/workflows/weekly-docs.yaml create mode 100644 .github/workflows/weekly-tests.yaml diff --git a/.github/workflows/coveralls-main.yaml b/.github/workflows/coveralls-main.yaml new file mode 100644 index 0000000..1e58ebc --- /dev/null +++ b/.github/workflows/coveralls-main.yaml @@ -0,0 +1,26 @@ +name: Coveralls Main + +on: + push: + branches: [main] + + workflow_dispatch: + +permissions: + contents: read + +concurrency: + group: coveralls-main-${{ github.ref }} + cancel-in-progress: true + +jobs: + coveralls: + name: Build main coverage baseline + uses: CCPBioSim/.github/.github/workflows/ci-test-python.yaml@f4cec1ba490b4461bfbcfd6362a8587678908a7d # 0.12.0 + permissions: + contents: read + checks: write + statuses: write + with: + package: example_package + test-path: tests/unit diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml new file mode 100644 index 0000000..0b3a6b0 --- /dev/null +++ b/.github/workflows/pr.yaml @@ -0,0 +1,53 @@ +name: Pull Request CI + +on: + pull_request: + +permissions: + contents: read + +concurrency: + group: pr-ci-${{ github.ref }} + cancel-in-progress: true + +jobs: + unit: + name: Unit + uses: CCPBioSim/.github/.github/workflows/ci-test-python.yaml@f4cec1ba490b4461bfbcfd6362a8587678908a7d # 0.12.0 + permissions: + contents: read + checks: write + statuses: write + with: + package: example_package + lowest-dependencies-check: true + test-path: tests/unit + os: '["ubuntu-26.04", "macos-26", "windows-2025-vs2026"]' + + docs: + name: Docs + needs: unit + uses: CCPBioSim/.github/.github/workflows/ci-docs.yaml@f4cec1ba490b4461bfbcfd6362a8587678908a7d # 0.12.0 + permissions: + contents: read + with: + timeout-minutes: 15 + + pre-commit: + name: Pre-commit + needs: unit + uses: CCPBioSim/.github/.github/workflows/ci-pre-commit.yaml@f4cec1ba490b4461bfbcfd6362a8587678908a7d # 0.12.0 + permissions: + contents: read + with: + timeout-minutes: 15 + + conda-build: + name: Conda build + needs: unit + uses: CCPBioSim/.github/.github/workflows/ci-conda-build.yaml@f4cec1ba490b4461bfbcfd6362a8587678908a7d # 0.12.0 + permissions: + contents: read + with: + python-versions: '["3.12"]' + timeout-minutes: 45 diff --git a/.github/workflows/weekly-docs.yaml b/.github/workflows/weekly-docs.yaml new file mode 100644 index 0000000..d11e85a --- /dev/null +++ b/.github/workflows/weekly-docs.yaml @@ -0,0 +1,23 @@ +name: Weekly Docs Build + +on: + schedule: + - cron: '0 8 * * 1' + workflow_dispatch: + +permissions: + contents: read + +concurrency: + group: weekly-docs-${{ github.ref }} + cancel-in-progress: true + +jobs: + docs: + name: Docs build + uses: CCPBioSim/.github/.github/workflows/ci-docs.yaml@f4cec1ba490b4461bfbcfd6362a8587678908a7d # 0.12.0 + permissions: + contents: read + with: + os: '["ubuntu-26.04", "macos-26", "windows-2025-vs2026"]' + python-versions: '["3.12", "3.13", "3.14"]' diff --git a/.github/workflows/weekly-tests.yaml b/.github/workflows/weekly-tests.yaml new file mode 100644 index 0000000..20f7c2d --- /dev/null +++ b/.github/workflows/weekly-tests.yaml @@ -0,0 +1,28 @@ +name: Weekly Unit Tests + +on: + schedule: + - cron: '0 8 * * 1' + workflow_dispatch: + +permissions: + contents: read + +concurrency: + group: weekly-tests-${{ github.ref }} + cancel-in-progress: true + +jobs: + unit: + name: Unit + uses: CCPBioSim/.github/.github/workflows/ci-test-python.yaml@f4cec1ba490b4461bfbcfd6362a8587678908a7d # 0.12.0 + permissions: + contents: read + checks: write + statuses: write + with: + package: example_package + lowest-dependencies-check: true + test-path: tests/unit + os: '["ubuntu-26.04", "macos-26", "windows-2025-vs2026"]' + coverage: false From 7128574db9ed2c291b6ac1b8cd02bc7c5d598e0d Mon Sep 17 00:00:00 2001 From: harryswift01 Date: Tue, 27 Oct 2026 10:59:16 +0000 Subject: [PATCH 15/19] feat(release): move the release workflow to the shared workflows --- .github/workflows/release.yaml | 236 +++++++++------------------------ 1 file changed, 63 insertions(+), 173 deletions(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index ff3e7b1..00a0d7e 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -1,185 +1,75 @@ -name: release +name: Release example_package on: workflow_dispatch: inputs: version: + description: Version to release, in X.Y.Z form. required: true - default: 'x.y.z' + type: string + dry-run: + description: Check and build everything but do not open the version PR, tag, release or publish. + type: boolean + default: false permissions: - contents: write - pull-requests: write + contents: read jobs: - checks: - name: Version check - runs-on: ubuntu-26.04 - steps: - - name: Checkout repository - id: repo - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 - - - name: Set up Python - uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0 - with: - python-version: 3.15.0 - - - name: Get latest release from pip - id: latestreleased - run: | - PREVIOUS_VERSION=$(python -m pip index versions CCPBioSim-Python-Template | grep "CCPBioSim-Python-Template" | cut -d "(" -f2 | cut -d ")" -f1) - echo "pip_tag=$PREVIOUS_VERSION" >> "$GITHUB_OUTPUT" - echo $PREVIOUS_VERSION - - - name: version comparison - id: compare - run: | - pip3 install semver - output=$(pysemver compare ${{ steps.latestreleased.outputs.pip_tag }} ${{ github.event.inputs.version }}) - if [ $output -ge 0 ]; then exit 1; fi - - version: - name: prepare ${{ github.event.inputs.version }} - needs: checks - runs-on: ubuntu-26.04 - steps: - - - name: checkout - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 - - - name: Change version in repo and CITATION.cff - run: | - # Update Python package version - sed -i "s/__version__ =.*/__version__ = \"${{ github.event.inputs.version }}\"/g" src/example_package/__init__.py - - # Update CITATION.cff version and date-released - if [ -f CITATION.cff ]; then - sed -i -E "s/^(version:\s*).*/\1${{ github.event.inputs.version }}/" CITATION.cff - sed -i -E "s/^(date-released:\s*).*/\1'$(date -u +%F)'/" CITATION.cff - fi - - - name: send PR - id: pr_id - uses: peter-evans/create-pull-request@5f6978faf089d4d20b00c7766989d076bb2fc7f1 # v8.1.1 - with: - commit-message: Update version to ${{ github.event.inputs.version }} - branch: version-update - title: "Update to version ${{ github.event.inputs.version }}" - body: | - Update version - - Update the __init__.py with new release - - Update CITATION.cff version & date-released - - Auto-generated by [CI] - committer: version-updater - author: version-updater - base: main - signoff: false - draft: false - - - name: auto approve review - uses: hmarr/auto-approve-action@f0939ea97e9205ef24d872e76833fa908a770363 # v4.0.0 - with: - pull-request-number: ${{ steps.pr_id.outputs.pull-request-number }} - review-message: "Auto approved version bump PR" - github-token: ${{ secrets.AUTO_PR_MERGE }} - - - name: merge PR - run: gh pr merge --merge --delete-branch --auto "${{ steps.pr_id.outputs.pull-request-number }}" - env: - GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - tag: - name: tag release - needs: version - runs-on: ubuntu-26.04 - steps: - - name: Checkout repository - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 - with: - ref: main - - - name: tag v${{ github.event.inputs.version }} - run: | - git config user.name github-actions - git config user.email github-actions@github.com - git tag ${{ github.event.inputs.version }} - git push origin tag ${{ github.event.inputs.version }} - - release: - name: make github release - needs: tag - runs-on: ubuntu-26.04 - steps: - - - name: create release - id: create_release - uses: softprops/action-gh-release@efb35369e0ad2afab669f228072c1b0d510eae64 # v3.0.3 - with: - name: v${{ github.event.inputs.version }} - generate_release_notes: true - tag_name: ${{ github.event.inputs.version }} - - - name: fetch generated changelog - id: changelog - if: steps.create_release.outcome == 'success' - continue-on-error: true - env: - GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: | - # generate_release_notes builds the changelog server-side, so pull - # it back down here rather than trying to reconstruct it locally. - gh release view "${{ github.event.inputs.version }}" --repo "${{ github.repository }}" --json body -q .body > changelog.txt - - - name: notify Zulip of release - if: steps.create_release.outcome == 'success' - continue-on-error: true - env: - ZULIP_BOT_EMAIL: ${{ secrets.ZULIP_BOT_EMAIL }} - ZULIP_BOT_API_KEY: ${{ secrets.ZULIP_BOT_API_KEY }} - ZULIP_SITE: ${{ secrets.ZULIP_SITE }} - REPO: ${{ github.event.repository.name }} - TAG: v${{ github.event.inputs.version }} - RELEASE_URL: ${{ steps.create_release.outputs.url }} - run: | - CONTENT=$(cat <- + [ + {"path": "example_package/__init__.py", "pattern": "^__version__ =.*", "replace": "__version__ = \"{version}\""}, + {"path": "CITATION.cff", "pattern": "^version:.*", "replace": "version: {version}"}, + {"path": "CITATION.cff", "pattern": "^date-released:.*", "replace": "date-released: '{date}'"} + ] + secrets: + AUTO_PR_MERGE: ${{ secrets.AUTO_PR_MERGE }} + ZULIP_BOT_EMAIL: ${{ secrets.ZULIP_BOT_EMAIL }} + ZULIP_BOT_API_KEY: ${{ secrets.ZULIP_BOT_API_KEY }} + ZULIP_SITE: ${{ secrets.ZULIP_SITE }} + + website: + name: Website + needs: prepare + uses: CCPBioSim/.github/.github/workflows/release-website.yaml@f4cec1ba490b4461bfbcfd6362a8587678908a7d # 0.12.0 + permissions: + contents: read + with: + version: ${{ inputs.version }} + tag: ${{ needs.prepare.outputs.tag }} + dry-run: ${{ inputs.dry-run }} + secrets: + BUILD_TOKEN: ${{ secrets.BUILD_TOKEN }} pypi: - name: make pypi release - needs: [tag, release] - runs-on: ubuntu-26.04 - steps: - - - name: checkout - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 - with: - ref: main - - - name: Set up Python - uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0 - with: - python-version: 3.15.0 - - - name: Install flit - run: | - python -m pip install --upgrade pip - python -m pip install "flit>=4,<5" "flit_core>=4,<5" - - - name: Build and publish - run: | - flit publish --use-vcs - env: - FLIT_USERNAME: __token__ - FLIT_PASSWORD: ${{ secrets.PYPI_API_TOKEN }} + name: PyPI + needs: prepare + uses: CCPBioSim/.github/.github/workflows/release-pypi.yaml@f4cec1ba490b4461bfbcfd6362a8587678908a7d # 0.12.0 + permissions: + contents: read + with: + tag: ${{ needs.prepare.outputs.tag || inputs.version }} + dry-run: ${{ inputs.dry-run }} + secrets: + PYPI_API_TOKEN: ${{ secrets.PYPI_API_TOKEN }} + + conda: + name: Conda + needs: prepare + uses: CCPBioSim/.github/.github/workflows/release-conda.yaml@f4cec1ba490b4461bfbcfd6362a8587678908a7d # 0.12.0 + permissions: + contents: read + with: + tag: ${{ needs.prepare.outputs.tag || inputs.version }} + dry-run: ${{ inputs.dry-run }} + secrets: + ANACONDA_TOKEN: ${{ secrets.ANACONDA_TOKEN }} From 5e8a3c73ad92e2a8a3d5a73ae63fcdae9826c09d Mon Sep 17 00:00:00 2001 From: harryswift01 Date: Tue, 27 Oct 2026 10:59:57 +0000 Subject: [PATCH 16/19] feat(ci): move the license-year workflow to the shared workflow --- .../update-copyright-years-in-license-file.yaml | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/.github/workflows/update-copyright-years-in-license-file.yaml b/.github/workflows/update-copyright-years-in-license-file.yaml index a252dd5..4089bff 100644 --- a/.github/workflows/update-copyright-years-in-license-file.yaml +++ b/.github/workflows/update-copyright-years-in-license-file.yaml @@ -5,13 +5,12 @@ on: - cron: '0 3 1 1 *' # 03:00 AM on January 1 workflow_dispatch: +permissions: + contents: read + jobs: - update-license-year: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 - with: - fetch-depth: 0 - - uses: FantasticFiasco/action-update-license-year@f180e962fa988db222d8f03ef4636750312d1b3d # v3 - with: - token: ${{ secrets.GITHUB_TOKEN }} + update-license-year: + uses: CCPBioSim/.github/.github/workflows/maintenance-license-year.yaml@f4cec1ba490b4461bfbcfd6362a8587678908a7d # 0.12.0 + permissions: + contents: write + pull-requests: write From b03d8079bc35adc4d0d0048f48e97dd0b5eb5b5b Mon Sep 17 00:00:00 2001 From: harryswift01 Date: Tue, 27 Oct 2026 11:00:28 +0000 Subject: [PATCH 17/19] docs(readme): update the badges for the new workflows, citation and Anaconda --- README.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 212aade..c86c2dd 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,9 @@ A template repository for Python projects within the CCPBioSim organisation. To | Category | Badges | |----------------|--------| -| **Build** | [![CI](https://github.com/CCPBioSim/Python-Template/actions/workflows/example_package_project-ci.yaml/badge.svg)](https://github.com/CCPBioSim/Python-Template/actions/workflows/example_package_project-ci.yaml) | -| **Documentation** | [![Docs – Status](https://app.readthedocs.org/projects/ccpbiosim-python-template/badge/?version=latest)](https://ccpbiosim-python-template.readthedocs.io/en/latest/) | +| **Build** | [![PR Checks](https://github.com/CCPBioSim/Python-Template/actions/workflows/pr.yaml/badge.svg)](https://github.com/CCPBioSim/Python-Template/actions/workflows/pr.yaml) [![Weekly Tests](https://github.com/CCPBioSim/Python-Template/actions/workflows/weekly-tests.yaml/badge.svg)](https://github.com/CCPBioSim/Python-Template/actions/workflows/weekly-tests.yaml) | +| **Documentation** | [![Weekly Docs](https://github.com/CCPBioSim/Python-Template/actions/workflows/weekly-docs.yaml/badge.svg)](https://github.com/CCPBioSim/Python-Template/actions/workflows/weekly-docs.yaml) [![Docs – Status](https://app.readthedocs.org/projects/ccpbiosim-python-template/badge/?version=latest)](https://ccpbiosim-python-template.readthedocs.io/en/latest/) | +| **Citation** | [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.XXXXXXX.svg)](https://doi.org/10.5281/zenodo.XXXXXXX) | | **PyPI** | [![PyPI - Version](https://img.shields.io/pypi/v/CCPBioSim-Python-Template.svg)](https://pypi.org/project/CCPBioSim-Python-Template/) [![PyPI - Status](https://img.shields.io/pypi/status/CCPBioSim-Python-Template.svg)](https://pypi.org/project/CCPBioSim-Python-Template/) [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/CCPBioSim-Python-Template.svg)](https://pypi.org/project/CCPBioSim-Python-Template/) [![PyPI - Downloads](https://img.shields.io/pypi/dm/CCPBioSim-Python-Template.svg)](https://pypi.org/project/CCPBioSim-Python-Template/) | +| **Anaconda** | [![Anaconda.org](https://anaconda.org/CCPBioSim/example_package/badges/version.svg)](https://anaconda.org/CCPBioSim/example_package) [![Last Updated](https://anaconda.org/CCPBioSim/example_package/badges/latest_release_date.svg)](https://anaconda.org/CCPBioSim/example_package) [![Platforms](https://anaconda.org/CCPBioSim/example_package/badges/platforms.svg)](https://anaconda.org/CCPBioSim/example_package) [![License](https://anaconda.org/CCPBioSim/example_package/badges/license.svg)](https://anaconda.org/CCPBioSim/example_package) [![Downloads](https://anaconda.org/CCPBioSim/example_package/badges/downloads.svg)](https://anaconda.org/CCPBioSim/example_package) | | **Quality** | [![Coverage Status](https://coveralls.io/repos/github/CCPBioSim/Python-Template/badge.svg?branch=main)](https://coveralls.io/github/CCPBioSim/Python-Template?branch=main) | From a6d07f1a23cc97abea5974f41976206c725469a2 Mon Sep 17 00:00:00 2001 From: harryswift01 Date: Tue, 27 Oct 2026 11:01:18 +0000 Subject: [PATCH 18/19] chore: remove old version of PR workflow to use `CCPBioSim/.github` template --- .../workflows/example_package_project-ci.yaml | 73 ------------------- 1 file changed, 73 deletions(-) delete mode 100644 .github/workflows/example_package_project-ci.yaml diff --git a/.github/workflows/example_package_project-ci.yaml b/.github/workflows/example_package_project-ci.yaml deleted file mode 100644 index a743381..0000000 --- a/.github/workflows/example_package_project-ci.yaml +++ /dev/null @@ -1,73 +0,0 @@ -name: example_package CI - -on: - push: - branches: [main] - pull_request: - schedule: - - cron: '0 8 * * 1-5' - workflow_dispatch: - -jobs: - tests: - name: Run tests - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-24.04, windows-2025, macos-15] - python-version: ["3.12", "3.13", "3.14"] - steps: - - name: Checkout repo - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 - - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0 - with: - python-version: ${{ matrix.python-version }} - - - name: Install example_package and its testing dependencies - run: pip install -e .[testing] - - - name: Run test suite - run: pytest --cov example_package --cov-report term-missing --cov-append . - - - name: Coveralls GitHub Action - uses: coverallsapp/github-action@8d6379e14d29928660c4ba802d8e85393440b329 # v2.3.8 - with: - github-token: ${{ secrets.GITHUB_TOKEN }} - parallel: true - fail-on-error: false - - docs: - runs-on: ubuntu-latest - timeout-minutes: 15 - steps: - - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 - - name: Set up Python 3.14 - uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0 - with: - python-version: 3.15.0 - - name: Install python dependencies - run: | - pip install --upgrade pip - pip install -e .[docs] - - name: Build docs - run: cd docs && make - - pre-commit: - runs-on: ubuntu-26.04 - timeout-minutes: 15 - steps: - - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 - - name: Set up Python 3.14 - uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0 - with: - python-version: 3.15.0 - - name: Install python dependencies - run: | - pip install --upgrade pip - pip install -e .[pre-commit] - - name: Run pre-commit - run: | - pre-commit install - pre-commit run --all-files || ( git status --short ; git diff ; exit 1 ) From 7bc4e2a7f26bf20a0aff683b833e5b49b4fa02ec Mon Sep 17 00:00:00 2001 From: harryswift01 Date: Tue, 27 Oct 2026 11:07:11 +0000 Subject: [PATCH 19/19] chore(ci): move to the shared workflows release 0.13.0 --- .github/workflows/coveralls-main.yaml | 2 +- .github/workflows/pr.yaml | 8 ++++---- .github/workflows/release.yaml | 8 ++++---- .../workflows/update-copyright-years-in-license-file.yaml | 2 +- .github/workflows/weekly-docs.yaml | 2 +- .github/workflows/weekly-tests.yaml | 2 +- 6 files changed, 12 insertions(+), 12 deletions(-) diff --git a/.github/workflows/coveralls-main.yaml b/.github/workflows/coveralls-main.yaml index 1e58ebc..fac455c 100644 --- a/.github/workflows/coveralls-main.yaml +++ b/.github/workflows/coveralls-main.yaml @@ -16,7 +16,7 @@ concurrency: jobs: coveralls: name: Build main coverage baseline - uses: CCPBioSim/.github/.github/workflows/ci-test-python.yaml@f4cec1ba490b4461bfbcfd6362a8587678908a7d # 0.12.0 + uses: CCPBioSim/.github/.github/workflows/ci-test-python.yaml@edc3732fa8d31a58312ca784e65cad9bdfba9347 # 0.13.0 permissions: contents: read checks: write diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml index 0b3a6b0..9f8be84 100644 --- a/.github/workflows/pr.yaml +++ b/.github/workflows/pr.yaml @@ -13,7 +13,7 @@ concurrency: jobs: unit: name: Unit - uses: CCPBioSim/.github/.github/workflows/ci-test-python.yaml@f4cec1ba490b4461bfbcfd6362a8587678908a7d # 0.12.0 + uses: CCPBioSim/.github/.github/workflows/ci-test-python.yaml@edc3732fa8d31a58312ca784e65cad9bdfba9347 # 0.13.0 permissions: contents: read checks: write @@ -27,7 +27,7 @@ jobs: docs: name: Docs needs: unit - uses: CCPBioSim/.github/.github/workflows/ci-docs.yaml@f4cec1ba490b4461bfbcfd6362a8587678908a7d # 0.12.0 + uses: CCPBioSim/.github/.github/workflows/ci-docs.yaml@edc3732fa8d31a58312ca784e65cad9bdfba9347 # 0.13.0 permissions: contents: read with: @@ -36,7 +36,7 @@ jobs: pre-commit: name: Pre-commit needs: unit - uses: CCPBioSim/.github/.github/workflows/ci-pre-commit.yaml@f4cec1ba490b4461bfbcfd6362a8587678908a7d # 0.12.0 + uses: CCPBioSim/.github/.github/workflows/ci-pre-commit.yaml@edc3732fa8d31a58312ca784e65cad9bdfba9347 # 0.13.0 permissions: contents: read with: @@ -45,7 +45,7 @@ jobs: conda-build: name: Conda build needs: unit - uses: CCPBioSim/.github/.github/workflows/ci-conda-build.yaml@f4cec1ba490b4461bfbcfd6362a8587678908a7d # 0.12.0 + uses: CCPBioSim/.github/.github/workflows/ci-conda-build.yaml@edc3732fa8d31a58312ca784e65cad9bdfba9347 # 0.13.0 permissions: contents: read with: diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 00a0d7e..117b03e 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -18,7 +18,7 @@ permissions: jobs: prepare: name: Prepare - uses: CCPBioSim/.github/.github/workflows/release-prepare.yaml@f4cec1ba490b4461bfbcfd6362a8587678908a7d # 0.12.0 + uses: CCPBioSim/.github/.github/workflows/release-prepare.yaml@edc3732fa8d31a58312ca784e65cad9bdfba9347 # 0.13.0 permissions: contents: write pull-requests: write @@ -40,7 +40,7 @@ jobs: website: name: Website needs: prepare - uses: CCPBioSim/.github/.github/workflows/release-website.yaml@f4cec1ba490b4461bfbcfd6362a8587678908a7d # 0.12.0 + uses: CCPBioSim/.github/.github/workflows/release-website.yaml@edc3732fa8d31a58312ca784e65cad9bdfba9347 # 0.13.0 permissions: contents: read with: @@ -53,7 +53,7 @@ jobs: pypi: name: PyPI needs: prepare - uses: CCPBioSim/.github/.github/workflows/release-pypi.yaml@f4cec1ba490b4461bfbcfd6362a8587678908a7d # 0.12.0 + uses: CCPBioSim/.github/.github/workflows/release-pypi.yaml@edc3732fa8d31a58312ca784e65cad9bdfba9347 # 0.13.0 permissions: contents: read with: @@ -65,7 +65,7 @@ jobs: conda: name: Conda needs: prepare - uses: CCPBioSim/.github/.github/workflows/release-conda.yaml@f4cec1ba490b4461bfbcfd6362a8587678908a7d # 0.12.0 + uses: CCPBioSim/.github/.github/workflows/release-conda.yaml@edc3732fa8d31a58312ca784e65cad9bdfba9347 # 0.13.0 permissions: contents: read with: diff --git a/.github/workflows/update-copyright-years-in-license-file.yaml b/.github/workflows/update-copyright-years-in-license-file.yaml index 4089bff..e851872 100644 --- a/.github/workflows/update-copyright-years-in-license-file.yaml +++ b/.github/workflows/update-copyright-years-in-license-file.yaml @@ -10,7 +10,7 @@ permissions: jobs: update-license-year: - uses: CCPBioSim/.github/.github/workflows/maintenance-license-year.yaml@f4cec1ba490b4461bfbcfd6362a8587678908a7d # 0.12.0 + uses: CCPBioSim/.github/.github/workflows/maintenance-license-year.yaml@edc3732fa8d31a58312ca784e65cad9bdfba9347 # 0.13.0 permissions: contents: write pull-requests: write diff --git a/.github/workflows/weekly-docs.yaml b/.github/workflows/weekly-docs.yaml index d11e85a..4180831 100644 --- a/.github/workflows/weekly-docs.yaml +++ b/.github/workflows/weekly-docs.yaml @@ -15,7 +15,7 @@ concurrency: jobs: docs: name: Docs build - uses: CCPBioSim/.github/.github/workflows/ci-docs.yaml@f4cec1ba490b4461bfbcfd6362a8587678908a7d # 0.12.0 + uses: CCPBioSim/.github/.github/workflows/ci-docs.yaml@edc3732fa8d31a58312ca784e65cad9bdfba9347 # 0.13.0 permissions: contents: read with: diff --git a/.github/workflows/weekly-tests.yaml b/.github/workflows/weekly-tests.yaml index 20f7c2d..5944f20 100644 --- a/.github/workflows/weekly-tests.yaml +++ b/.github/workflows/weekly-tests.yaml @@ -15,7 +15,7 @@ concurrency: jobs: unit: name: Unit - uses: CCPBioSim/.github/.github/workflows/ci-test-python.yaml@f4cec1ba490b4461bfbcfd6362a8587678908a7d # 0.12.0 + uses: CCPBioSim/.github/.github/workflows/ci-test-python.yaml@edc3732fa8d31a58312ca784e65cad9bdfba9347 # 0.13.0 permissions: contents: read checks: write