voidzero-dev / voidzero-dev/vite-plus

vp lint / vp run lint print no summary on a clean pass (unlike vp exec turbo run lint)

Đang mở
#2,035 2 bình luận 0 reaction 0 người được giao Xem trên GitHub
Ngôn ngữ chính
Rust
Star
5.8k
Fork
262
Merge trung bình
23 giờ 18 phút
Pull request đã merge (30 ngày)
139

Mô tả

## Summary

Running `vp lint ` (or `vp run lint`, the task-runner form) directly prints **nothing at all** and exits 0 when there are zero lint violations — no "Found 0 warnings and 0 errors" summary, no file/rule count, nothing. The same underlying lint task, when invoked via `vp exec turbo run lint --filter=`, prints the full oxlint summary line even on a clean pass:

```
manolea-placeholder:lint: $ vp lint .
manolea-placeholder:lint: Found 0 warnings and 0 errors.
manolea-placeholder:lint: Finished in 422ms on 1103 files with 95 rules using 16 threads.
```

To be clear, this is **not** a correctness bug — I verified with injected violations that both invocation paths correctly detect and report real problems (a syntax error fails with exit 1 and the parse error text; a `debugger;` statement prints the `eslint(no-debugger)` warning by name in both paths). The only difference is the empty-output case.

## Why this is worth fixing

Empty stdout + exit 0 is ambiguous to a human running `vp lint .` locally before pushing: "no output" could mean "ran cleanly" or "didn't actually run" (e.g. wrong cwd, misconfigured filter, crashed silently). The turbo-wrapped invocation resolves that ambiguity by always printing a summary; the direct `vp lint`/`vp run lint` invocation doesn't.

## Repro

In a workspace with a shared `vite.config.ts` (via `defineConfig()`, exporting `lint`/`run`/etc. sub-configs) and a package whose `package.json` has `"lint": "vp lint ."`:

```sh
# From the package directory — prints nothing, exit 0
cd packages/some-pkg
vp lint .
echo $? # 0

# From the workspace root — prints a summary even though nothing changed
vp exec turbo run lint --filter=some-pkg --force
```

## Ask

Have `vp lint`/`vp run lint` print the same "Found N warnings and M errors. Finished in Xms on Y files with Z rules" summary on a clean pass that `vp exec turbo run lint` shows, so a passing run is visibly distinguishable from a run that silently did nothing.

## Environment

- vite-plus 0.2.1
- oxlint 1.70.0
- Linux x86_64

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

Tái hiện các lệnh trực tiếp `vp lint .` và `vp exec turbo run lint --filter=some-pkg --force` từ issue, rồi so sánh output khi chạy sạch. Theo dõi đường đi của `vp lint`/`vp run lint` và cách xử lý kết quả oxlint bên dưới; hoàn tất khi một lần chạy trực tiếp sạch in ra phần tóm tắt về cảnh báo/lỗi, thời gian, tệp và rule, đồng thời giữ nguyên exit status được báo cáo.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
javascript, rust, typescript
Lĩnh vực
tooling
Loại issue
Lỗi
Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức độ hoạt động
Sôi nổi
Độ rõ ràng
Đặc tả rõ ràng
Mức phù hợp với người mới
68/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.