Skip to content

Commit e80d6cb

Browse files
Boshenclaude
andcommitted
chore: clean up remaining rolldown-vite mentions
- Remove `rolldown-vite` npm package from catalog and minimumReleaseAgeExclude - Update all rolldown-vite references in rfcs/cli-output-polish.md Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent de4a59f commit e80d6cb

2 files changed

Lines changed: 16 additions & 18 deletions

File tree

pnpm-workspace.yaml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,6 @@ catalog:
9292
remark-parse: ^11.0.0
9393
remeda: ^2.10.0
9494
rolldown-plugin-dts: ^0.22.0
95-
rolldown-vite: ^7.1.19
9695
rollup: ^4.18.0
9796
semver: ^7.7.3
9897
serve-static: ^2.0.0
@@ -151,7 +150,6 @@ minimumReleaseAgeExclude:
151150
- lightningcss-*
152151
- rolldown
153152
- rolldown-plugin-dts
154-
- rolldown-vite
155153
- tsdown
156154
- unrun
157155
- vite

rfcs/cli-output-polish.md

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ Draft
66

77
## Executive Summary
88

9-
Vite+ wraps several sub-tools (rolldown-vite, vitest, oxlint, oxfmt) and has native Rust commands (upgrade, env, vpx, package manager commands). Each sub-tool currently shows its own branding and uses inconsistent formatting for messages, prefixes, and status indicators. This RFC proposes unifying all CLI output under the "Vite+" brand identity with consistent message formatting, starting with rolldown-vite (whose source is cloned locally and directly modifiable) and extending to Rust commands and other sub-tools.
9+
Vite+ wraps several sub-tools (vite, vitest, oxlint, oxfmt) and has native Rust commands (upgrade, env, vpx, package manager commands). Each sub-tool currently shows its own branding and uses inconsistent formatting for messages, prefixes, and status indicators. This RFC proposes unifying all CLI output under the "Vite+" brand identity with consistent message formatting, starting with vite (whose source is cloned locally and directly modifiable) and extending to Rust commands and other sub-tools.
1010

1111
## Motivation
1212

@@ -56,9 +56,9 @@ Neither identifies the experience as "Vite+". Users who installed `vite-plus` se
5656
| ------------------ | ----------------------- |
5757
| Rust (global CLI) | `owo_colors` |
5858
| JS (vite-plus CLI) | `node:util styleText()` |
59-
| rolldown-vite | `picocolors` |
59+
| vite | `picocolors` |
6060

61-
**5. The `[vite]` logger prefix in rolldown-vite**
61+
**5. The `[vite]` logger prefix in vite**
6262

6363
The logger in `vite/packages/vite/src/node/logger.ts` defaults to `prefix = '[vite]'` for timestamped messages. This shows up during dev server operation as colored `[vite]` tags.
6464

@@ -89,7 +89,7 @@ $ vpx
8989
1. Establish a unified branding format where "VITE+" is the primary identity shown to users
9090
2. Standardize message prefix formatting across all commands to a single convention
9191
3. Standardize status indicator symbols to a single set
92-
4. Apply branding changes to rolldown-vite output (dev banner, build banner, logger prefix)
92+
4. Apply branding changes to vite output (dev banner, build banner, logger prefix)
9393
5. Define a repeatable approach: modify sub-tool source directly to achieve consistent output
9494

9595
## Non-Goals
@@ -108,7 +108,7 @@ Since vite-plus clones sub-tool source repositories (vite at `vite/`, rolldown a
108108

109109
Other sub-tools (vitest, oxlint, oxfmt) can follow the same pattern once their source is cloned or forked.
110110

111-
### Phase 1: Rebrand rolldown-vite Output
111+
### Phase 1: Rebrand vite Output
112112

113113
#### 1.1 Dev server banner
114114

@@ -145,13 +145,13 @@ Where `VITE_PLUS_VERSION` is the vite-plus package version, injected via:
145145
- A new constant in `vite/packages/vite/src/node/constants.ts`, or
146146
- Read from an environment variable set by the Rust CLI before spawning vite (e.g., `VITE_PLUS_VERSION`)
147147

148-
**Recommended approach:** Environment variable injection. The Rust NAPI binding in `packages/cli/binding/src/cli.rs` already merges environment variables when spawning sub-tools via `merge_resolved_envs()`. We add `VITE_PLUS_VERSION` to the env map, and read it in rolldown-vite:
148+
**Recommended approach:** Environment variable injection. The Rust NAPI binding in `packages/cli/binding/src/cli.rs` already merges environment variables when spawning sub-tools via `merge_resolved_envs()`. We add `VITE_PLUS_VERSION` to the env map, and read it in vite:
149149

150150
```javascript
151151
const VITE_PLUS_VERSION = process.env.VITE_PLUS_VERSION || VERSION;
152152
```
153153

154-
This is clean: the rolldown-vite source change is minimal (reads an env var with fallback), and the version injection happens in the Rust layer that already owns this responsibility.
154+
This is clean: the vite source change is minimal (reads an env var with fallback), and the version injection happens in the Rust layer that already owns this responsibility.
155155

156156
#### 1.2 Build banner
157157

@@ -203,7 +203,7 @@ prefix = '[vite+]',
203203

204204
#### 1.4 Other user-visible strings to audit
205205

206-
A full audit of rolldown-vite source for user-visible "vite" strings:
206+
A full audit of vite source for user-visible "vite" strings:
207207

208208
| Location | String | Action |
209209
| ----------------------------- | ---------------------------------------------------------------------------- | ----------------------------------------------------- |
@@ -309,7 +309,7 @@ After `bundleVitest()` copies vitest files to `dist/`, a `brandVitest()` step pa
309309
3. `/^vitest\/\d+\.\d+\.\d+$/` regex → `/^vp test\/[\d.]+$/` — so the help callback can still find the banner line
310310
4. `$ vitest --help --expand-help``$ vp test --help --expand-help` — hardcoded help text
311311

312-
The Rust NAPI binding injects `VITE_PLUS_VERSION` env var (same mechanism used for rolldown-vite build/dev/preview commands), so `vp test -h` shows `vp test/<vite-plus-version>`.
312+
The Rust NAPI binding injects `VITE_PLUS_VERSION` env var (same mechanism used for vite build/dev/preview commands), so `vp test -h` shows `vp test/<vite-plus-version>`.
313313

314314
#### 3.3 Remaining `vite``vp` branding in CLI output
315315

@@ -365,7 +365,7 @@ Migrate JS-side code (`migration/bin.ts`, `create/bin.ts`) to use these shared f
365365

366366
### D1: Direct source modification over build-time transforms
367367

368-
**Decision:** Modify rolldown-vite source files directly.
368+
**Decision:** Modify vite source files directly.
369369

370370
**Rationale:** The user has the source cloned locally. Direct modification is transparent — anyone can `git diff vite/` to see exactly what changed. The set of branding changes is small and well-defined (3-5 files), making rebasing during upstream sync manageable. Build-time transforms (Rolldown plugins in `packages/core/build.ts`) are an alternative that avoids merge conflicts, but they are less visible and can break silently when upstream changes the strings being matched.
371371

@@ -377,9 +377,9 @@ Migrate JS-side code (`migration/bin.ts`, `create/bin.ts`) to use these shared f
377377

378378
### D3: Inject version via environment variable
379379

380-
**Decision:** The Rust CLI sets `VITE_PLUS_VERSION` env var before spawning rolldown-vite. The modified rolldown-vite source reads it with a fallback.
380+
**Decision:** The Rust CLI sets `VITE_PLUS_VERSION` env var before spawning vite. The modified vite source reads it with a fallback.
381381

382-
**Rationale:** This avoids hardcoding the version in rolldown-vite source (which would require updating on every release). The Rust CLI already manages environment variables for sub-tool spawning via `merge_resolved_envs()`. The env var approach is the minimal-touch change to rolldown-vite.
382+
**Rationale:** This avoids hardcoding the version in vite source (which would require updating on every release). The Rust CLI already manages environment variables for sub-tool spawning via `merge_resolved_envs()`. The env var approach is the minimal-touch change to vite.
383383

384384
### D4: Lowercase prefixes (`info:` not `Info:`)
385385

@@ -395,11 +395,11 @@ Migrate JS-side code (`migration/bin.ts`, `create/bin.ts`) to use these shared f
395395

396396
### D6: Keep each layer's color library
397397

398-
**Decision:** Rust keeps `owo_colors`, JS keeps `node:util styleText()`, rolldown-vite keeps `picocolors`.
398+
**Decision:** Rust keeps `owo_colors`, JS keeps `node:util styleText()`, vite keeps `picocolors`.
399399

400400
**Rationale:** Changing color libraries is high-risk, low-reward. The shared formatting module abstracts the library choice so the output convention is consistent regardless of the underlying library.
401401

402-
## Scope of rolldown-vite Changes
402+
## Scope of vite Changes
403403

404404
### Strings to Change
405405

@@ -425,7 +425,7 @@ These are internal identifiers, API references, or project name references:
425425

426426
## Implementation Plan
427427

428-
### Phase 1: rolldown-vite Rebranding
428+
### Phase 1: vite Rebranding
429429

430430
1. Add `VITE_PLUS_VERSION` env var injection in `packages/cli/binding/src/cli.rs` for vite commands (build, dev, preview)
431431
2. Modify `vite/packages/vite/src/node/cli.ts` — read env var, change banner text
@@ -493,7 +493,7 @@ Many existing snap tests will need updates due to prefix and branding changes:
493493
### CI
494494

495495
- All existing `cargo test` and snap tests pass with updated expectations
496-
- No regressions in rolldown-vite's own test suite
496+
- No regressions in vite's own test suite
497497

498498
## Future Enhancements
499499

0 commit comments

Comments
 (0)