Enhancement: Use TS 7 (tsgo / typescript-go) for type information
### Before You File a Proposal Please Confirm You Have Done The Following... - [x] I have [searched for related issues](https://github.com/typescript-eslint/typescript-eslint/issues?q=is%3Aissue+label%3A%22enhancement%3A+plugin+rule+option%22) and found none that match my proposal. - [x] I have searched the [current rule list](https://typescript-eslint.io/rules/#rules) and found no rules that match my proposal. - [x] I have [read the FAQ](https://typescript-eslint.io/linting/troubleshooting) and my problem is not listed. ### Relevant Package typescript-estree ### My proposal is suitable for this project - [x] I believe my proposal would be useful to the broader TypeScript community (meaning it is not a niche proposal). ### Description TypeScript is getting ported to Go! It's going to be 10x faster! Blazing fast! Speed! 🔥 ⚡ https://devblogs.microsoft.com/typescript/typescript-native-port/ If we could use this to power typed linting, that'd be great for users. Type checking performance is _the_ bottleneck for the vast majority of correctly configured lint rules that use typescript-eslint. We believe there are currently _at least_ three major difficulties with typescript-eslint using tsgo in 2025: 1. ESLint does not yet support asynchronous parsers: https://github.com/eslint/eslint/issues/15475 * ~~It's very likely that tsgo will be consumed via native binding APIs (WASM), and so will almost certainly be asynchronous~~ * ~~typescript-eslint could in theory us
Posted by JoshuaKGoldberg on Mar 11, 2025, 7:04 PM
Tags
Related issues
- Add 65536 size support for maps
- TypeScript 7.1 Iteration Plan
- nvim-treeconfig: upstream nvim-treesitter
- Add the "action" and "method" attributes to <button>
- [FEATURE] Support multiple Connector accounts (same connector, different accounts) in Claude and Claude Code on the web (claude.ai/code)
- > We were imposed GitHub for so many exercises!
Raise real-world problems, find people facing the same issue, and discuss solutions.2,000 issues0 comments
support (Software)
Add 65536 size support for maps
TypeScript 7.1 Iteration Plan
nvim-treeconfig: upstream nvim-treesitter
Add the "action" and "method" attributes to <button>
[FEATURE] Support multiple Connector accounts (same connector, different accounts) in Claude and Claude Code on the web (claude.ai/code)
> We were imposed GitHub for so many exercises!
Add support for Visual Studio 2026 Integration
Support for Helm v4
Enhancement: Use TS 7 (tsgo / typescript-go) for type information
### Before You File a Proposal Please Confirm You Have Done The Following... - [x] I have [searched for related issues](https://github.com/typescript-eslint/typescript-eslint/issues?q=is%3Aissue+label%3A%22enhancement%3A+plugin+rule+option%22) and found none that match my proposal. - [x] I have searched the [current rule list](https://typescript-eslint.io/rules/#rules) and found no rules that match my proposal. - [x] I have [read the FAQ](https://typescript-eslint.io/linting/troubleshooting) and my problem is not listed. ### Relevant Package typescript-estree ### My proposal is suitable for this project - [x] I believe my proposal would be useful to the broader TypeScript community (meaning it is not a niche proposal). ### Description TypeScript is getting ported to Go! It's going to be 10x faster! Blazing fast! Speed! 🔥 ⚡ https://devblogs.microsoft.com/typescript/typescript-native-port/ If we could use this to power typed linting, that'd be great for users. Type checking performance is _the_ bottleneck for the vast majority of correctly configured lint rules that use typescript-eslint. We believe there are currently _at least_ three major difficulties with typescript-eslint using tsgo in 2025: 1. ESLint does not yet support asynchronous parsers: https://github.com/eslint/eslint/issues/15475 * ~~It's very likely that tsgo will be consumed via native binding APIs (WASM), and so will almost certainly be asynchronous~~ * ~~typescript-eslint could in theory us
Comments (0)
No comments yet. Start the discussion.