This patch release fixes startup and CI issues found after the v0.4.0 release. It stabilizes semantic token registration in the language server, synchronizes package versions, and repairs dependency lockfiles used by GitHub Actions.
Highlights
- Fixed VS Code language server startup failure during
initialize. - Fixed semantic tokens capability registration for
pygls/lsprotocol. - Added a regression test that verifies LSP server capabilities serialize correctly during initialization.
- Synchronized repository version metadata to
0.4.1. - Removed unused Python dev dependencies
blackandisort. - Removed the broken transitive
pytokensdependency fromuv.lock. - Fixed
uv sync --all-extras --devfailure in CI. - Updated VS Code extension lockfile integrity checksums for npm packages.
- Changed VS Code CI install steps to use
npm ci --prefer-online. - Fixed
npm ciintegrity failures in GitHub Actions.
Fixed
AttributeError: 'SemanticTokensOptions' object has no attribute 'token_types'during LSP initialization.- GitHub Actions Python job failing while downloading
pytokens==0.4.0. - GitHub Actions VS Code job failing with npm
EINTEGRITYchecksum errors. - Version mismatch between
VERSION, Python package metadata, VS Code extension metadata, and .NET project metadata.
Validation
The release has been verified with:
uv sync --all-extras --dev
uv run ruff check .
uv run ruff format --check .
uv run mypy src/py
uv run pytest
npm --prefix src/vscode ci --prefer-online
npm --prefix src/vscode run smoke
dotnet test src/dotnet/WitcherScript.RedkitTooling.sln
uv run python scripts/sync_version.py --check
git diff --checkCurrent test result:
84 Python tests passed
11 .NET tests passed
VS Code extension lint/typecheck/compile passed
Python and VS Code CI dependency installation passed locally
Notes
Users who installed the previous VS Code package should upgrade to the v0.4.1 .vsix. This release fixes the language server initialization crash that could prevent the extension from starting after semantic highlighting was introduced.