Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork2.8k
Description
https://devblogs.microsoft.com/typescript/announcing-typescript-4-7-rc/
This issue is just to track all of the new features and their implementation state in this project.
As with all releases, we will not necessarily to support all features until closer to the full release when everything the features are stabilised.
Please be patient.
🔲 New Extensions
We'll want to add.cjs
,.mjs
,.mts
, and.cts
(as well as.d.cts
and.d.mts
) to our parser tooling so that we can correctly detect file types and default supported extensions.
Some code pointers to start off:
[1][2][3][4][5]
Essentially just search for.ts
and go from there.
✅ Instantiation Expressions (#4938)
This will require AST changes.
Babel:babel/babel#14457
// extend ExpressiontypeExpression=Expression|TSExpressionWithTypeArguments;// Add new nodeinterfaceTSExpressionWithTypeArguments{type:"TSExpressionWithTypeArguments";expression:Expression;typeParameters:TSTypeParameterInstantiation;}
✅extends
Constraints oninfer
Type Variables (#4830)
This is already supported and will not require AST changes
✅ Optional Variance Annotations for Type Parameters (#4831)
This will require AST changes.
Babel:babel/babel#14359
// extend TSTypeParameterinterfaceTSTypeParameter{in?:boolean;out?:boolean;}
✅lib.d.ts
Updates (#4829)
We will need to regenerate our types withinscope-manager
.
Other changes with no impact to us
- ECMAScript Module Support in Node.js
type
inpackage.json
- CommonJS Interop
package.json
Exports, Imports, and Self-Referencing- Though with the next major we'll probably want to explore this to lock down our APIs and prevent deep
dist
imports whilst also providing nicely structured deep imports (i.e. maputils/dist/foo
=>utils/foo
)
- Though with the next major we'll probably want to explore this to lock down our APIs and prevent deep
- Control over Module Detection
- Control-Flow Analysis for Computed Properties
- This will just make all of our rules more accurate for free!
- Improved Function Inference in Objects and Methods
- Resolution Customization with
moduleSuffixes
- resolution-mode
- Groups-Aware Organize Imports
- Object Method Snippet Completions
- Type Parameters No Longer Assignable to {} in strictNullChecks
readFile
Method is No Longer Optional onLanguageServiceHost
readonly
Tuples Have areadonly length
Property