microsoft / microsoft/TypeScript-Website

CRITICAL: Can't start the dev server on Node 20 — flowtype ESLint plugin error

Open
#3,565 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
2.6k
Forks
1.5k
Avg merge
2d 2h
Merged PRs (30d)
7

Description

Hey everyone,

I ran into an issue while setting up the project locally and wanted to
flag it as it would affect anyone trying to contribute on Node 20.

When I ran pnpm start, the dev server failed immediately with this error:

Failed to load plugin 'flowtype' declared in 'BaseConfig':
Package subpath './lib/rules/no-unused-expressions' is not defined
by "exports" in eslint-plugin-flowtype

After some digging I found that eslint-config-react-app has a dependency
on eslint-plugin-flowtype which doesn't play nicely with the version of
ESLint being used here when running on Node 20.

Node 20 is the current LTS version so this would affect a lot of people
trying to contribute for the first time.

I've put together a fix in PR #3557 if anyone wants to take a look. It's
a small override that resolves the conflict and gets the dev server running
without affecting any functionality.

My environment:

  • Node: v20.20.2
  • pnpm: v10.30.3
  • OS: macOS (Apple Silicon / arm64)

Happy to provide any more info if needed!

Contributor guide

No contributing guide indexed for this repository

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 reviewing PR #3557 and the dependency configuration involved in eslint-config-react-app and eslint-plugin-flowtype. Run pnpm start on Node 20 to reproduce the plugin error; done means the dev server starts without the reported exports failure.

Written by the indexing model from the issue text.

Assessment

Tech stack
nodejs, typescript
Domain
tooling
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.