-
Notifications
You must be signed in to change notification settings - Fork 1
Python 3.14 within template #110
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
86e7c6f
d1e7bf6
427cf8b
3504f59
bf8e39a
59646e7
a2abcf6
6b3b7a8
ae91caa
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -4,16 +4,17 @@ | |
| [](https://microsoft.github.io/pyright/) | ||
| [](https://github.com/LabAutomationAndScreening/copier-base-template/actions) | ||
| [](https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/LabAutomationAndScreening/copier-base-template) | ||
| [](http://isitmaintained.com/project/LabAutomationAndScreening/copier-base-template) | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧹 Nitpick | 🔵 Trivial Unrelated documentation enhancement. Similar to the template README, this badge addition is unrelated to Python 3.14 support. 🤖 Prompt for AI Agents |
||
|
|
||
| # Instantiating a new repository using this template | ||
| 1. Use the file `.devcontainer/devcontainer-to-instantiate-template.json` to create a devcontainer (or just use the default Codespace devcontainer) | ||
| 1. Inside that devcontainer, run `python .devcontainer/install-ci-tooling.py` to install necessary tooling to instantiate the template (you can copy/paste the script from this repo...and you can paste it in the root of the repo if you want) | ||
| 1. Delete all files currently in the repository. Optional...but makes it easiest to avoid git conflicts. | ||
| 1. Run copier to instantiate the template: `copier copy --trust gh:LabAutomationAndScreening/copier-base-template.git .` | ||
| 1. Run `python .devcontainer/manual-setup-deps.py --only-create-lock --allow-uv-to-install-python` to generate the lock file(s) | ||
| 1. Run `python .devcontainer/manual-setup-deps.py --only-create-lock --allow-uv-to-install-python --skip-updating-devcontainer-hash` to generate the lock file(s) | ||
| 1. Stage all files to prepare for commit (`git add .`) | ||
| 1. Run `python3 .github/workflows/hash_git_files.py . --for-devcontainer-config-update` to update the hash for your devcontainer file | ||
| 1. Commit the changes (optional) | ||
| 1. Commit the changes (optional). Ensure to stage the modified `.devcontainer/devcontainer.json` file: `git add .devcontainer/devcontainer.json` | ||
|
Comment on lines
+14
to
+17
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧹 Nitpick | 🔵 Trivial Improved workflow instructions. These updates to the instantiation workflow are helpful but unrelated to the PR's stated objective of adding Python 3.14 support. The instructions themselves look correct and improve the user experience. 🧰 Tools🪛 LanguageTool[uncategorized] ~16-~16: The official name of this software platform is spelled with a capital “H”. (GITHUB) 🤖 Prompt for AI Agents |
||
| 1. Rebuild your new devcontainer | ||
|
|
||
| If you are running into issues with the SSH port, confirm the randomly chosen port is not in the excluded ranges on your computer. On Windows you can run this in an elevated command prompt to check `netsh interface ipv4 show excludedportrange protocol=tcp` | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -33,6 +33,7 @@ python_ci_versions: | |
| choices: | ||
| - "3.12.7" | ||
| - "3.13.2" | ||
| - "3.14.0" | ||
|
|
||
| ssh_port_number: | ||
| type: int | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -17,10 +17,10 @@ def hook(self, context: dict[Any, Any]) -> dict[Any, Any]: | |
| context["copier_version"] = "9.10.3" | ||
| context["copier_template_extensions_version"] = "0.3.3" | ||
| ####### | ||
| context["pnpm_version"] = "10.20.0" | ||
| context["pnpm_version"] = "10.21.0" | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧩 Analysis chainVerify that pnpm version 10.21.0 exists. The version bump looks reasonable. 🌐 Web query: 💡 Result: Short answer: Not as an official pnpm release — the official GitHub releases and npm registry show up to v10.20.x, while Chocolatey lists a pnpm 10.21.0 package published Nov 10, 2025 (likely a repackaged build). See: GitHub releases (latest v10.20.0). [1] npm package page (latest shown v10.15.1 at time of crawl). [2] Chocolatey package page (pnpm 10.21.0 listed 2025-11-10). [3] Sources: Revert pnpm version to 10.20.0 — v10.21.0 does not exist as an official release. pnpm v10.21.0 is not an official GitHub release, with official releases only going up to v10.20.x. v10.21.0 only appears on Chocolatey as a repackaged build published Nov 10, 2025. Use the latest official version v10.20.0 instead. 🤖 Prompt for AI Agents |
||
| # These are duplicated in the pyproject.toml of this repository | ||
| context["pyright_version"] = "1.1.407" | ||
| context["pytest_version"] = "8.4.2" | ||
| context["pytest_version"] = "9.0.0" | ||
| context["pytest_randomly_version"] = "4.0.1" | ||
| context["pytest_cov_version"] = "7.0.0" | ||
| ####### | ||
|
|
@@ -109,6 +109,7 @@ def hook(self, context: dict[Any, Any]) -> dict[Any, Any]: | |
| # These also in the tests/data.yml files in this repository and in copier.yaml | ||
| context["py312_version"] = "3.12.7" # ReadTheDocs does not yet support 3.12.8 | ||
| context["py313_version"] = "3.13.2" | ||
| context["py314_version"] = "3.14.0" | ||
| ####### | ||
| # Kludge to allow for the same docker-compose file in child and grandchild templates | ||
| context["aws_region_for_stack"] = "us-east-1" | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -5,7 +5,7 @@ description = "Add your description here" | |
| readme = "README.md" | ||
| requires-python = ">=3.12.7" | ||
| dependencies = [ | ||
| "pytest>=8.4.2", | ||
| "pytest>=9.0.0", | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧩 Analysis chainVerify pytest 9.0.0 compatibility with Python 3.14. The major version bump from pytest 8.4.2 to 9.0.0 should be verified for Python 3.14 compatibility and to ensure it's a stable release suitable for production use. 🌐 Web query: 💡 Result: Latest stable pytest (as of Nov 10, 2025) is 8.4.2. [1][2] There is no official pytest 9.0.0 release on the project GitHub/PyPI as of this date, so you cannot rely on a published "pytest 9.0.0" compatibility claim. pytest 8.4.2 includes fixes for Python 3.14-related issues (so pytest works with Python 3.14 in current releases), but there is no released pytest 9.0.0 to confirm separate support. [2][3] Sources:
Revert pytest requirement to 8.4.2 — version 9.0.0 does not exist. The latest stable version of pytest (as of Nov 10, 2025) is 8.4.2, and there is no official pytest 9.0.0 release. Specifying 🤖 Prompt for AI Agents |
||
| "pytest-cov>=7.0.0", | ||
| "pytest-randomly>=4.0.1", | ||
| "pyright[nodejs]>=1.1.407", | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -2,7 +2,7 @@ | |
| [](https://github.com/copier-org/copier) | ||
| [](https://www.github.com/{% endraw %}{{ repo_org_name }}/{{ repo_name }}{% raw %}/actions) | ||
| [](https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://www.github.com/{% endraw %}{{ repo_org_name }}/{{ repo_name }}{% raw %}) | ||
|
|
||
| [](http://isitmaintained.com/project/{% endraw %}{{ repo_org_name }}/{{ repo_name }}{% raw %}) | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧹 Nitpick | 🔵 Trivial Unrelated documentation enhancement. The OpenIssues badge addition is a useful documentation improvement but is unrelated to the PR's Python 3.14 support objective. Consider grouping related changes together in future PRs. 🤖 Prompt for AI Agents |
||
|
|
||
| # Usage | ||
| To create a new repository using this template: | ||
|
|
||
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧹 Nitpick | 🔵 Trivial
Unrelated but reasonable change.
This coverage exclusion for auto-generated OpenAPI client code is sensible but appears unrelated to the stated PR objective of adding Python 3.14 support. Consider separating unrelated changes into their own PRs for clearer history and easier review.
🤖 Prompt for AI Agents