Repository navigation
refactor: build pipeline and CI - #708
Conversation
There was a problem hiding this comment.
Pull request overview
This PR replaces the Node-based “shared version” sync/check utilities with a Python-based version checker, and updates CI/release workflows to use uv + make for core tasks while bumping the shared version to 4.1.0-dev.
Changes:
- Replace Node
sync-core-version/TOML-regex helpers withscripts/check_version.pyand wire it into CI/release checks. - Introduce
core/Makefiletargets and update workflows to build/test/lint the core viauv+make. - Update shared version strings and adjust core
uvindex naming/markers.
Reviewed changes
Copilot reviewed 13 out of 14 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| test/node/coreVersion.test.ts | Removes Vitest coverage for the old Node TOML version helper. |
| scripts/sync-core-version.mjs | Removes Node script that checked/synced package/core versions and validated tags. |
| scripts/core-version.mjs | Removes TOML parsing/replacement helpers used by the old sync script. |
| scripts/core-version.d.mts | Removes TS type declarations for the deleted helpers. |
| scripts/check_version.py | Adds Python implementation for checking desktop/core version match and optional tag match. |
| package.json | Bumps version to 4.1.0-dev and updates scripts (notably version:check) and core-related commands. |
| core/README.md | Simplifies core README content and removes badges/sections. |
| core/pyproject.toml | Bumps core version to 4.1.0-dev and renames/adjusts uv index/source entries. |
| core/Makefile | Adds Make targets for core gen/lint/test/pyinstaller steps used by CI/release. |
| .github/workflows/Release.yml | Switches version verification to Python script; updates core build steps to uv sync + make. |
| .github/workflows/CI-test.yml | Adds shared version check via Python script in CI. |
| .github/workflows/CI-test-core.yml | Reworks core CI to rely on uv + make and removes Node/pnpm setup for core-only jobs. |
| .github/workflows/CI-build.yml | Updates bundled-core build steps to uv sync + make in build workflows. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
| import argparse | ||
| import json | ||
| import sys | ||
| import tomllib | ||
| from pathlib import Path |
| lint: | ||
| uv run --no-sync pre-commit install | ||
| uv run --no-sync pre-commit run --all-files |
…e commit verification
…tandardizing build steps
|
Hello, @Tohrusky . I am a contributor to the Scoop Extras bucket. I noticed that the automatic update for the Final2x manifest is failing because the ARM64 package information cannot be retrieved. In commit e77140e, you removed the sections related to building and releasing Final2x for the ARM64 architecture on Windows. Does this mean that Final2x will no longer provide Windows ARM64 releases going forward? |
Hi, @SorYoshino Thanks for maintaining the Scoop package! Yes, for now, Windows ARM64 releases have been removed starting from v4.1.0. The main reason is that the core part of Final2x has always been built around the x64 version of PyTorch, so separately forcing an ARM64 build for the upper-level application does not make much sense at the moment. Final2x should still be able to run on Windows ARM64 through x64 emulation, so I think users on ARM64 devices can continue using the x64 release. If anyone wants to experiment with native ARM64 builds, CUDA-related, or other platform-specific setups, manual compilation could also be an option. Unfortunately, I don't have the relevant hardware to properly test and maintain these configurations, so this part would probably have to be left to the community. I imagine that, with suitable hardware, tools like Codex should make the porting and build process relatively straightforward. |
No description provided.