diff --git a/cookiecutter.json b/cookiecutter.json index 0791efc..0a9db92 100644 --- a/cookiecutter.json +++ b/cookiecutter.json @@ -11,6 +11,8 @@ "use_bsd3_licence": false, "add_precommit_workflows": true, "automerge_bot_prs": false, + "use_windows_ci_runner": false, + "use_macos_ci_runner": false, "__prompts__": { "project_name": "Enter a human-readable name for the project", "project_slug": "Enter a name for the Python package", @@ -20,6 +22,8 @@ "packaging": "Select the Python packaging tool you wish to use", "use_bsd3_licence": "Whether to use Imperial's default open-source licence (BSD 3-clause)", "add_precommit_workflows": "Add Github Actions to run pre-commit hooks (only needed for private repositories)", + "use_windows_ci_runner": "Add a GitHub Actions runner for Windows (needed if your software targets Windows)", + "use_macos_ci_runner": "Add a GitHub Actions runner for macOS (needed if your software targets macOS - ARM)", "automerge_bot_prs": "Whether to automatically merge PRs from bots including dependabot" } } diff --git a/{{ cookiecutter.project_slug }}/.github/workflows/ci.yml b/{{ cookiecutter.project_slug }}/.github/workflows/ci.yml index 14b529e..09f48cf 100644 --- a/{{ cookiecutter.project_slug }}/.github/workflows/ci.yml +++ b/{{ cookiecutter.project_slug }}/.github/workflows/ci.yml @@ -12,7 +12,13 @@ jobs: strategy: fail-fast: false matrix: - os: [windows-latest, ubuntu-latest, macos-latest] + os: + - ubuntu-latest +{%- if cookiecutter.use_windows_ci_runner %} + - windows-latest +{%- endif %} +{%- if cookiecutter.use_macos_ci_runner %} + - macos-latest{% endif %} python-version: ['3.12'] steps: diff --git a/{{ cookiecutter.project_slug }}/dev-requirements.txt b/{{ cookiecutter.project_slug }}/dev-requirements.txt index eefb1cc..a5941de 100644 --- a/{{ cookiecutter.project_slug }}/dev-requirements.txt +++ b/{{ cookiecutter.project_slug }}/dev-requirements.txt @@ -16,7 +16,7 @@ coverage[toml]==7.6.0 # via pytest-cov distlib==0.3.8 # via virtualenv -filelock==3.13.1 +filelock==3.15.4 # via # pytest-mypy # virtualenv @@ -32,7 +32,7 @@ mypy-extensions==1.0.0 # via mypy nodeenv==1.9.1 # via pre-commit -packaging==24.0 +packaging==24.1 # via # build # pytest @@ -62,11 +62,11 @@ pytest-mypy==0.10.3 # via datahub (pyproject.toml) pyyaml==6.0.1 # via pre-commit -ruff==0.5.4 +ruff==0.5.6 # via datahub (pyproject.toml) -typing-extensions==4.9.0 +typing-extensions==4.12.2 # via mypy -virtualenv==20.26.1 +virtualenv==20.26.3 # via pre-commit wheel==0.43.0 # via pip-tools