microsoft / microsoft/TypeScript

Change the behavior of `tsc` on a tsconfig solution

Open
#60,479 11 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

In Discussion Suggestion
Dominant language
Go
Stars
111k
Forks
14.3k
Avg merge
2d 4h
Merged PRs (30d)
132

Description

🔍 Search Terms

The Vite starters now use a "solution" tsconfig, as documented in the docs.

The issue is that a lot of people are used to run tsc or tsc --noEmit at the root of the project, and now, this silently does nothing.

✅ Viability Checklist
⭐ Suggestion

I think in that specific case, it should do one of those two things:

  • make it an error in that case with "You probably want tsc -b"
  • default to build mode (when the tsconfig contains files: [])
📃 Motivating Example

You have three chars less to type? 😅

More seriously, it's about making project references more used without a familiar command becoming useless

💻 Use Cases
  1. What shortcomings exist with current approaches?

We get some reports like this: https://github.com/vitejs/vite/issues/17585

I suspect a lot more people fall for this, but find the issue before opening an issue

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading the two proposed behaviors for running tsc or tsc --noEmit against a solution tsconfig, then review the linked Vite issue 17585. Done means choosing and implementing a clear non-silent root-project behavior that supports the project-reference use case.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
compilers
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.