voidzero-dev / voidzero-dev/vite-plus

vite-plus `bin`s conflict with `oxfmt` and `oxlint` `bin`s

Open
#1,482 11 comments 4 reactions 2 assignees Claimed by @leaysgur View on GitHub
bug
Dominant language
Rust
Stars
5.8k
Forks
261
Avg merge
1d 34m
Merged PRs (30d)
135

Description

### Describe the bug

`vite-plus` has `oxfmt` and `oxlint` bin files that should be referenced by related files in `node_modules/.bin/`

Image

---

But `vite-plus` also installs its `oxfmt` and `oxlint` dependencies, which have their own bin files, and those bin files are referenced in `node_modules/.bin/` instead of the `vite-plus` bins.

Image

Image

Image

---

This breaks the oxc vscode extension when trying to use `vite.config.ts` as the `configPath`

Image

---

Not sure if this is only an issue with Windows and/or npm, either way the bin names should probably not conflict.

### Reproduction

https://github.com/nstepien/vite-plus-bug

### Steps to reproduce

1. `npm i vite-plus@latest`
2. look at the relevant `oxfmt`/`oxlint` files under `node_modules/.bin/`
3. check if the formatter and linter work correctly in vscode

### System Info

```shell
Environment:
Version 25.9.0
Source default
Source Path C:\Users\Stepi\.vite-plus\config.json

Tool Paths:
node C:\Users\Stepi\.vite-plus\js_runtime\node\25.9.0\node.exe
npm C:\Users\Stepi\.vite-plus\js_runtime\node\25.9.0\npm.cmd
npx C:\Users\Stepi\.vite-plus\js_runtime\node\25.9.0\npx.cmd

vp v0.1.19

Local vite-plus:
vite-plus v0.1.19

Tools:
vite v8.0.8
rolldown v1.0.0-rc.16
vitest v4.1.4
oxfmt v0.45.0
oxlint v1.60.0
oxlint-tsgolint v0.21.1
tsdown v0.21.9

Environment:
Package manager npm vlatest
Node.js v25.9.0

`npm version` output:
{
npm: '11.13.0',
node: '25.9.0',
acorn: '8.16.0',
ada: '3.4.4',
amaro: '1.1.8',
ares: '1.34.6',
brotli: '1.2.0',
cldr: '48.0',
icu: '78.2',
lief: '0.17.0',
llhttp: '9.3.1',
merve: '1.2.2',
modules: '141',
napi: '10',
nbytes: '0.1.3',
ncrypto: '0.0.1',
nghttp2: '1.68.0',
nghttp3: '',
ngtcp2: '',
openssl: '3.5.5',
simdjson: '4.5.0',
simdutf: '7.3.3',
sqlite: '3.51.3',
tz: '2026a',
undici: '7.24.4',
unicode: '17.0',
uv: '1.51.0',
uvwasi: '0.0.23',
v8: '14.1.146.11-node.25',
zlib: '1.3.1-e00f703',
zstd: '1.5.7'
}
```

### Used Package Manager

npm

### Logs

```shell
2026-04-26 21:21:35.001 [info] 2026-04-26T20:21:34.961695Z WARN oxlint::lsp::server_linter: Failed to load config: Failed to parse config from d:/repos/vite-plus-bug\vite.config.ts
```

### Validations

- [x] Read the [Contributing Guidelines](https://github.com/voidzero-dev/vite-plus/blob/main/CONTRIBUTING.md).
- [x] Check that there isn't [already an issue](https://github.com/voidzero-dev/vite-plus/issues) for the same bug.
- [x] Confirm this is a Vite+ issue and not an upstream issue (Vite, Vitest, tsdown, Rolldown, or Oxc).
- [x] The provided reproduction is a [minimal reproducible example](https://stackoverflow.com/help/minimal-reproducible-example).

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.