-
-
Notifications
You must be signed in to change notification settings - Fork 6
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
Switch tooling to uv
+ dev-cmd
.
#117
Conversation
Reviewers, this is mainly FYI. Although uv doesn't really have a build system and dev-cmd is very basic, it's worth noting the combo gets the job done very quickly with little fuss. The main changes of note:
|
- name: Setup Nox | ||
if: matrix.docker-platform == '' | ||
run: pip install nox | ||
"C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\Tools\VsDevCmd.bat" |
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.
Astral doesn't release for Windows arm yet; thus the special case here.
- name: Setup x86_64 Python for Prism | ||
if: matrix.os == 'windows-arm64' | ||
run: | | ||
UV_PYTHON_VERSION=cpython-3.12.8-windows-x86_64-none |
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.
Likewise, PBS has no Windows ARM release; so this gets uv using x86-64 PBS / Windows PRISM emulation. This was done similarly, but with more fuss, in noxfile.py.
ci = [["check-fmt", "check-lint", "type-check", "test"]] | ||
run = [["doc", "create-zipapp"], "run-zipapp"] | ||
|
||
package = [["doc", "create-zipapp"], ["package-thin-scie", "package-fat-scie"]] |
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.
The nested lists run in parallel. So doc
& create-zipapp
run in parallel, then, when both are complete, package-thin-scie
& package-fat-scie
run in parallel. The serial / parallel / serial / ... nesting switches can be carried on as deeply nested as desired.
from typing import Any | ||
|
||
|
||
def main() -> Any: |
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.
The noxfile had alot of complicated glue. This is all that remains.
@@ -37,7 +37,7 @@ def _maybe_gather_git_state() -> str | None: | |||
if git_info.returncode == 0: | |||
return git_info.stdout.strip() | |||
|
|||
logger.warning(f"Failed to gather git state for provenance.") | |||
logger.warning("Failed to gather git state for provenance.") |
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.
The changes in this file and the next 5 are all due to the switch from black
/ isort
/autoflake
to ruff
.
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.
Nice!
No description provided.