45 lines
1.6 KiB
Markdown
45 lines
1.6 KiB
Markdown
# Implementation Plan for tsbuild `check` Command
|
|
|
|
## Overview
|
|
Add a new `check` command to tsbuild that allows checking TypeScript files against a glob pattern without emitting them, similar to running the TypeScript compiler with the `--noEmit` flag.
|
|
|
|
## Implementation Steps
|
|
|
|
1. **Reread CLAUDE.md** to ensure we follow project guidelines
|
|
|
|
2. **Extend TsBuild Class**
|
|
- The existing `TsBuild` class already has a `checkEmit()` method
|
|
- We can leverage this method for our implementation
|
|
|
|
3. **Implement Check Command in CLI**
|
|
- Add a new `check` command to `tsbuild.cli.ts`
|
|
- Command should accept glob patterns as arguments
|
|
- Process glob patterns to find matching TypeScript files
|
|
- Use the `TsBuild` class to check the files without emitting
|
|
|
|
4. **Update Exports**
|
|
- Ensure any new functionality is properly exported
|
|
|
|
5. **Testing**
|
|
- Test the command with various glob patterns
|
|
- Verify error reporting works correctly
|
|
|
|
## Differences from Existing `emitcheck` Command
|
|
The `emitcheck` command already exists and checks specific files without emitting. Our new `check` command will:
|
|
- Be designed specifically for checking files against glob patterns
|
|
- Use a simpler, more intuitive command name
|
|
- Potentially add additional benefits (like summary statistics of checked files)
|
|
|
|
## Example Usage
|
|
Once implemented, the command would work like this:
|
|
|
|
```bash
|
|
npx tsbuild check ts/**/*
|
|
npx tsbuild check "src/**/*.ts" "test/**/*.ts"
|
|
```
|
|
|
|
## Expected Output
|
|
The command should:
|
|
- Report any TypeScript errors in the matched files
|
|
- Provide a count of files checked and any errors found
|
|
- Exit with code 0 if successful, or 1 if errors are found |