Repository navigation
chore: modernize dependencies and CI - #25
Merged
Merged
Conversation
The existing CI combined Node 20-based actions with a legacy VS Code test harness. That harness did not install declared extension dependencies and its older Electron launcher no longer matched current macOS application layouts. The dependency tree also retained an abandoned runtime temp-file package and vulnerable transitive tooling. Move CI and release automation to Node 24-based actions, migrate tests to the VS Code test CLI, pin current release tools, and add weekly Dependabot updates. Refresh the supported development toolchain, replace shell command strings and the temp package with built-in process and filesystem APIs, preserve VS Code 1.46 compatibility through minimum-host type definitions, and bump the extension to 0.6.0. Mocha's patched diff and serialize-javascript releases are temporarily selected beyond upstream's declared ranges; both assertion failure rendering and the full extension suite were verified. Validation passed with a frozen install, compile, lint, actionlint, a zero-finding audit across 223 packages, 7 extension-host tests on VS Code 1.135, a VS Code 1.46 activation smoke test, automatic installation of the PR #23 extension dependency, and a packaged 0.6.0 VSIX.
DABH
pushed a commit
to DABH/PostScript-Preview
that referenced
this pull request
Aug 30, 2026
PR ahnafnafee#23 extends src/test/runTest.ts to install the PostScript language dependency before launching the extension host. Replacing that entry point with the VS Code test CLI in ahnafnafee#25 created a modify/delete conflict and bypassed the author's implementation. Restore the original runner byte-for-byte, make it the active test script again, and update only the separate Mocha suite loader for the current glob API and a stable startup timeout. Keep the current Electron launcher, add the narrow Node 24 fetch declaration needed by PR ahnafnafee#23's host-side installer, and remove the superseded test CLI dependency. Validation passed with a frozen install, compile, lint, a zero-finding audit across 190 packages, 7 extension-host tests, VSIX packaging, and a clean application check for the complete PR ahnafnafee#23 patch. README.md remains unchanged.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Why this is separate
This branch is based directly on master and deliberately leaves README.md untouched. It can merge independently of #23; that PR's README update and extensionDependencies addition remain with its original author.
Compatibility and security
The extension keeps its existing VS Code 1.46 support floor. Source compilation is pinned to the corresponding VS Code and Node 12 host types, while CI and release tooling run on Node 24.
The refreshed lockfile reports zero known vulnerabilities across 223 packages. Mocha currently declares older major ranges for diff and serialize-javascript, so patched releases are selected with Yarn resolutions; the full extension suite and assertion-diff reporting were both verified with those versions.
Verification
README.md is unchanged.