Skip to content

Specialized error message when too new a lib is providedΒ #60050

@JoshuaKGoldberg

Description

@JoshuaKGoldberg

πŸ” Search Terms

lib es2024 es2025 esnext

βœ… Viability Checklist

⭐ Suggestion

If a lib value is provided that's an ES* version newer than what the current version of TypeScript supports, it'd be nice to have a specialized error message saying so. Today we just get the general "Argument for '--lib' option must be: ..." error with >=59 unique values to read through. It would be nice to explicitly indicate the lib is an ES* that's not yet supported. Maybe...

Error: npm error tsconfig.json(3,13): error TS####: Argument 'ES2027' for '--lib' option is a year not yet supported by TypeScript as of version 5.6.7.

πŸ“ƒ Motivating Example

In practice, if a single package in a monorepo falls out of date, then this error is likely to occur. Having that specialized error can help speed up debugging & make it clear what's going wrong.

Example in the wild: eslint/js#631 -> https://github.com/eslint/js/actions/runs/11017802958/job/30596589705?pr=631 -> eslint/js#632

πŸ’» Use Cases

  1. What do you want to use this for? - Purely for debugging incorrect TS setups.
  2. What shortcomings exist with current approaches? - The error is accurate, but not precise.
  3. What workarounds are you using in the meantime? - Remembering to check the ES year & TypeScript version every time this comes up.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Awaiting More FeedbackThis means we'd like to hear from more people who would be helped by this featureSuggestionAn idea for TypeScript

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions