Conversation
this settings.json changes how vscode displays information which is not acceptable. this should be a user choice. so i deleted it. first are editor rulers, which are fairly innocuous but I don't see the benefit of these arbitrary numbers. second are the excluded files, which hide files in the vscode explorer. this is egregious. i need my file explorer to always show all files. i never want anything hidden from me there. if other people want to hide this stuff, they can do it in their local config. this config should not be committed in the repo
…instead of allowing npm to just use the folder name
…ting guide suggests do.mjs script also does this, but it actually doesn't work because of a chicken/egg problem. that script can't even run until after running npm install.
- add vscode deps so vscode tests can run anywhere, - use nix to provide xvfb for testing locally and in ci - improve the test run isolation from the host system by disabling gpu and reuseMachineInstall
There was a problem hiding this comment.
Pull request overview
This PR updates Rewrap Revived’s wrapping/parsing behavior to keep ESLint directive comments intact for JavaScript/TypeScript, while also introducing broader dev-environment and workflow changes (Nix flake dev shell, CI adjustments, VS Code tasks/launch configs, and npm package metadata updates).
Changes:
- Add a content parser wrapper to prevent wrapping ESLint disable/enable directive lines and wire it into the JS/TS language processors.
- Introduce a Nix flake-based development shell and switch GitHub Actions CI to build/test via
nix develop. - Update developer tooling/docs (VS Code tasks/launch configs, contributing docs, wrapper scripts) and rename the root npm package.
Reviewed changes
Copilot reviewed 16 out of 19 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
core/Parsers.fs |
Adds eslintConfigComments content-parser wrapper to no-wrap ESLint directive lines. |
core/Parsing.Documents.fs |
Switches JS/TS language processors to use ESLint-aware comment parsing. |
docs/specs/features/line-comments.md |
Documents expected behavior for ESLint directive line comments. |
docs/specs/features/block-comments.md |
Documents expected behavior for ESLint directive block comments. |
vscode/test/run.cjs |
Tweaks VS Code integration test launch args and test runner options. |
.github/workflows/main.yml |
Moves CI to a Nix-based build/test invocation. |
flake.nix |
Adds a Nix flake dev shell definition (dotnet/node/xvfb + runtime libs). |
flake.lock |
Locks the Nix flake inputs. |
.vscode/tasks.json |
Adds Nix-based VS Code tasks for build/test/watch. |
.vscode/launch.json |
Adds Nix-based VS Code launch configurations. |
.vscode/settings.json |
Removes repository VS Code settings file. |
docs/CONTRIBUTING.md |
Updates contributor workflow docs, including Nix dev shell guidance. |
README.md |
Updates contributing guide link to the hosted documentation site. |
do |
Adds bootstrap logic (cd + install deps) before running .config/do.mjs. |
do.cmd |
Windows equivalent bootstrap logic before running .config/do.mjs. |
package.json |
Adds package name metadata. |
package-lock.json |
Updates lock metadata and transitive dependency resolutions. |
.config/dotnet-tools.json |
Formatting-only change (closing brace alignment). |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| const launchArgs = [workspace, '--disable-extensions', '--disable-gpu'] | ||
|
|
||
| // Download manually so we can choose the location | ||
| vscodeExecutablePath = await downloadAndUnzipVSCode({cachePath}) |
| @@ -1,2 +1,10 @@ | |||
| #!/usr/bin/env sh | |||
| #!/usr/bin/env bash | |||
Comment on lines
+5
to
10
| if [ ! -d "node_modules" ]; then | ||
| echo "No node_modules found. Running npm install..." | ||
| npm install | ||
| fi | ||
|
|
||
| node .config/do.mjs "$@" |
| with: | ||
| dotnet-version: 2.1.805 | ||
| - name: Check-out Repo | ||
| uses: actions/checkout@v2 |
Comment on lines
+1
to
+8
| { | ||
| description = "Development shell for Rewrap Revived"; | ||
|
|
||
| inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-23.11"; | ||
|
|
||
| outputs = { nixpkgs, ... }: | ||
| let | ||
| systems = |
Comment on lines
+3
to
+7
| if not exist "node_modules\" ( | ||
| echo No node_modules found. Running npm install... | ||
| npm install | ||
| ) | ||
|
|
Comment on lines
+39
to
+43
| "group": { | ||
| "kind": "build", | ||
| "isDefault": true | ||
| }, | ||
| "label": "Build extension (nix)", |
Owner
Author
|
dnut#34 has been merged, closing... |
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.
Testing PR for: