Skip to content

fix(cli): set tsgolint path in oxlint wrapper#1811

Merged
fengmk2 merged 5 commits into
voidzero-dev:mainfrom
jong-kyung:fix/tsgolint-bin
Jun 11, 2026
Merged

fix(cli): set tsgolint path in oxlint wrapper#1811
fengmk2 merged 5 commits into
voidzero-dev:mainfrom
jong-kyung:fix/tsgolint-bin

Conversation

@jong-kyung

@jong-kyung jong-kyung commented Jun 11, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Set OXLINT_TSGOLINT_PATH from the Vite+ oxlint wrapper so oxlint LSP can find Vite+’s pinned oxlint-tsgolint.
  • Avoid exposing tsgolint as a public vite-plus binary.
  • Align the wrapper’s tsgolint resolution with the existing vp lint behavior.

Closes #1800

@netlify

netlify Bot commented Jun 11, 2026

Copy link
Copy Markdown

Deploy Preview for viteplus-preview canceled.

Name Link
🔨 Latest commit 3c965a6
🔍 Latest deploy log https://app.netlify.com/projects/viteplus-preview/deploys/6a2a8c47f50cbb0008761c31

@jong-kyung jong-kyung self-assigned this Jun 11, 2026
@jong-kyung jong-kyung marked this pull request as ready for review June 11, 2026 02:33
@jong-kyung jong-kyung requested review from fengmk2 and leaysgur June 11, 2026 02:33
@leaysgur leaysgur requested a review from camc314 June 11, 2026 02:35
@fengmk2

fengmk2 commented Jun 11, 2026

Copy link
Copy Markdown
Member

Why do we need to export tsgolint? Are there other fix solutions besides this one?
BTW: We are in the process of removing the oxlint and oxfmt wrappers.

@jong-kyung

Copy link
Copy Markdown
Collaborator Author

Why do we need to export tsgolint? Are there other fix solutions besides this one? BTW: We are in the process of removing the oxlint and oxfmt wrappers.

The reason for this PR is that oxlint-tsgolint is a dependency of vite-plus, but from the user project’s perspective it is still transitive. With pnpm, its tsgolint bin is not reliably linked into the project root node_modules/.bin, which matches the reproduction in #1800 after reinstalling from the lockfile.

That said, I understand the concern about exposing tsgolint, especially if the oxlint / oxfmt wrappers are being removed.

I think there are a couple of possible directions here:

  1. Make the Vite+ oxlint wrapper set OXLINT_TSGOLINT_PATH so oxlint LSP can find Vite+’s pinned oxlint-tsgolint without exposing tsgolint.
  2. Fix discovery upstream in oxlint / oxc-vscode so it can find the oxlint-tsgolint dependency installed under vite-plus.

@fengmk2

fengmk2 commented Jun 11, 2026

Copy link
Copy Markdown
Member

Please first try the OXLINT_TSGOLINT_PATH env, which is also the current implement for vp lint.

@jong-kyung

Copy link
Copy Markdown
Collaborator Author

Please first try the OXLINT_TSGOLINT_PATH env, which is also the current implement for vp lint.

@fengmk2 Thanks for the suggestion. I updated the PR to follow the vp lint approach by setting OXLINT_TSGOLINT_PATH from the Vite+ oxlint wrapper instead of exposing tsgolint as a public bin.

Could you please take another look when you have time? 🙇‍♂️

@jong-kyung jong-kyung changed the title fix(cli): expose tsgolint binary fix(cli): set tsgolint path in oxlint wrapper Jun 11, 2026
Comment thread packages/cli/bin/oxlint Outdated
@fengmk2

fengmk2 commented Jun 11, 2026

Copy link
Copy Markdown
Member

@jong-kyung I've triggered the pkg.new deployment. Please verify it once the deployment is successful, and I'll merge it if everything looks good.

@jong-kyung

Copy link
Copy Markdown
Collaborator Author

@fengmk2 Thank you for the detailed review as always. I’ll verify this and leave a follow-up comment🙇‍♂️

@camc314 camc314 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks reasonable to me - but is this a bug in how oxlint resolves tsgolint? (in which case should it be fixed upstream)

@fengmk2

fengmk2 commented Jun 11, 2026

Copy link
Copy Markdown
Member

@camc314 Based on several case experiences I know, for projects that do not use vite-plus, according to oxlint's requirements, you need to add the tsgolint to the project dependencies to enable typecheck, so there shouldn't be any issues. Currently, this problem only exists in the case of vite-plus.

@pkg-pr-new

pkg-pr-new Bot commented Jun 11, 2026

Copy link
Copy Markdown

Open in StackBlitz

vite-plus

npm i https://pkg.pr.new/voidzero-dev/vite-plus@1811

@voidzero-dev/vite-plus-core

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-core@1811

@voidzero-dev/vite-plus-prompts

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-prompts@1811

@voidzero-dev/vite-plus-test

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-test@1811

@voidzero-dev/vite-plus-cli-darwin-arm64

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-cli-darwin-arm64@1811

@voidzero-dev/vite-plus-cli-darwin-x64

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-cli-darwin-x64@1811

@voidzero-dev/vite-plus-cli-linux-arm64-gnu

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-cli-linux-arm64-gnu@1811

@voidzero-dev/vite-plus-cli-linux-arm64-musl

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-cli-linux-arm64-musl@1811

@voidzero-dev/vite-plus-cli-linux-x64-gnu

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-cli-linux-x64-gnu@1811

@voidzero-dev/vite-plus-cli-linux-x64-musl

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-cli-linux-x64-musl@1811

@voidzero-dev/vite-plus-cli-win32-arm64-msvc

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-cli-win32-arm64-msvc@1811

@voidzero-dev/vite-plus-cli-win32-x64-msvc

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-cli-win32-x64-msvc@1811

@voidzero-dev/vite-plus-darwin-arm64

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-darwin-arm64@1811

@voidzero-dev/vite-plus-darwin-x64

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-darwin-x64@1811

@voidzero-dev/vite-plus-linux-arm64-gnu

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-linux-arm64-gnu@1811

@voidzero-dev/vite-plus-linux-arm64-musl

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-linux-arm64-musl@1811

@voidzero-dev/vite-plus-linux-x64-gnu

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-linux-x64-gnu@1811

@voidzero-dev/vite-plus-linux-x64-musl

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-linux-x64-musl@1811

@voidzero-dev/vite-plus-win32-arm64-msvc

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-win32-arm64-msvc@1811

@voidzero-dev/vite-plus-win32-x64-msvc

npm i https://pkg.pr.new/voidzero-dev/vite-plus/@voidzero-dev/vite-plus-win32-x64-msvc@1811

commit: 3c965a6

@jong-kyung

jong-kyung commented Jun 11, 2026

Copy link
Copy Markdown
Collaborator Author

@fengmk2 I verified the pkg.pr.new build for #1811 in a local test project, and oxc-vscode no longer shows the Failed to find tsgolint executable warning.

This is my first time testing with pkg.pr.new, so please let me know if anything looks off with my setup.

image

@fengmk2 fengmk2 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jong-kyung Nice job! Thanks

@fengmk2 fengmk2 merged commit 8271eaf into voidzero-dev:main Jun 11, 2026
61 of 72 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add tsgolint to bin

3 participants