You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This document outlines our focused tasks for TypeScript 4.7. It minimally indicates intent to investigate tasks or contribute to an implementation. Nothing is set in stone, but we will strive to complete these tasks in a reasonable timeframe.
Date
Event
TBD
TypeScript 4.6 Release
April 1st
Create 4.7 Beta (4.7.0) Build for Testing
April 5th
TypeScript 4.7 Beta Release
May 6th
Create 4.7 RC (4.7.1) Build for Testing
May 10th
TypeScript 4.7 RC Release
May 20th
Create 4.7 Final (4.7.2) Build for Testing
May 24th
TypeScript 4.7 Final Release 🚀
Language and Compiler Features
Node ESM UX Issues, and Move Node ESM Mode from Nightly
Hello, I am not sure if this is the right place for this but we got the below issue with version 4.7.0-dev.20220320 (this is automatically selected by VSCode) like the below image. We did some testing and noticed that this issue does not show up for version below 4.7.0, in our case 4.6.2 and 4.1.5 work fine. If this is not the right place for this, please let me know. Thanks
Context:
We provide type safe fetch (its type is quite nested) which allows us to safely type the response based on the url of the request we are trying to make for a good dev experience
We are getting the below error when we use our fetch in a Promise.all. My assumption is that Promise.all
is trying to infer the type from our fetch type which is quite nested and caused this error on 4.7.0-dev.20220320
const [responseOne, responseTwo] = await Promise.all([ // it complains about the below error here
fetch("https://something/v1", { req, timeout: 5000 }),
fetch(
"https://something/v2",
{ req, timeout: 5000 }
)
])
Looks like it's probably failing because of the Node ESM stuff which we were hoping to unflag for the beta at the least. There's also some basic bug fixes I'd like us to pull in before beta, so maybe we'll go out on April 6th instead.
Reacted by Gonçalo Fernandes, Shrujal Shah, Danila Rodichkin, Daniel Derevjanik, Charles Samborski, Eugene and C. T. Lin
Just wanted to point out one mistake in the TypeScript 4.7 RC release notes that should probably be fixed for the full release and that's that the line:
Certain global-like values like require() and process cannot be used directly.
Is actually incorrect for process, unlike require which a per-cjs-module injected thing, the process object is actually just a property of global so is usable in ESM as a global without problems.
An alternative object for the sentence could the module per-cjs-module object i.e.:
Certain global-like values like require() and module cannot be used directly.
Reacted by Jan Kühle, Erik Krogh Kristensen, Branch Vincent, Alexander Kachkaev, Dominik, why520crazy, C. T. Lin, Oleksandr Tarasiuk, Shrujal Shah, Rob Palmer and 3 more
Reacted by Alexander Kachkaev, why520crazy, C. T. Lin, Oleksandr Tarasiuk, Fathy Boundjadj and Peter Matta
Reacted by Toni Villena, why520crazy, Oleksandr Tarasiuk and Peter Matta
I installed the typescript 4.7.2 but I encountered an error
Module build failed (from ./node_modules/ts-loader/index.js):
Error: Debug Failure. False expression: Non-string value passed to ts.resolveTypeReferenceDirective, likely by a wrapping package working with an outdated resolveTypeReferenceDirectives signature. This is probably not a problem in TS itself.
I'm using Node@16.15.0 and npm@8.11.0
Here are some of the packages I used
@fluentui/react@8.70.0
@types/react@17.0.45
react@17.0.2
react-dom@7.0.2
@types/node@16.11.36
@typescript-eslint/eslint-plugin@4.29.0
@typescript-eslint/parser@4.29.0
eslint@7.32.0
eslint-config-standard@16.0.2
eslint-plugin-import@2.26.0
eslint-plugin-node@11.1.0
eslint-plugin-promise@5.1.0
typescript@4.7.2
Reacted by Stiliyan Lazarov, Peter Matta, Robert Kranz and Agis Anastasopoulos
Activity
vietanhtran16 commentedon Mar 22, 2022
Hello, I am not sure if this is the right place for this but we got the below issue with version
4.7.0-dev.20220320(this is automatically selected by VSCode) like the below image. We did some testing and noticed that this issue does not show up for version below4.7.0, in our case4.6.2and4.1.5work fine. If this is not the right place for this, please let me know. ThanksContext:
Promise.all. My assumption is that Promise.allis trying to infer the type from our fetch type which is quite nested and caused this error on
4.7.0-dev.20220320aladdin-add commentedon Mar 22, 2022
vietanhtran16 yes, the issue is not for bug report, please file a new issue. :)
vietanhtran16 commentedon Mar 22, 2022
Cool I will file a new one
DanielRosenwasser commentedon Apr 3, 2022
TypeScript Bot (@typescript-bot) create release-4.7
typescript-bot commentedon Apr 3, 2022
Heya Daniel Rosenwasser (@DanielRosenwasser), I've started to create the
release-4.7branch for you. Here's the link to my best guess at the log.DanielRosenwasser commentedon Apr 3, 2022
Looks like it's probably failing because of the Node ESM stuff which we were hoping to unflag for the beta at the least. There's also some basic bug fixes I'd like us to pull in before beta, so maybe we'll go out on April 6th instead.
DanielRosenwasser commentedon Apr 6, 2022
TypeScript Bot (@typescript-bot) create release-4.7
typescript-bot commentedon Apr 6, 2022
Heya Daniel Rosenwasser (@DanielRosenwasser), I've started to create the
release-4.7branch for you. Here's the link to my best guess at the log.DanielRosenwasser commentedon Apr 6, 2022
The feature roadmap now better-reflects what we've been able to get done for 4.7.
Jack-Works commentedon Apr 9, 2022
I still want to suggest typescript to drop Node 12 in new Node ESM. Lets start from Node 14. Node 14 has TLA support.
Node 12 will end LTS this month.
lvelden commentedon Apr 13, 2022
Hi! I've seen the 4.7-beta announcement, but it's not listed under releases and there's also no v4.7-beta tag. Are you planning on adding this?
DanielRosenwasser commentedon Apr 13, 2022
Sorry, tag for 4.7 beta should be out https://github.com/microsoft/TypeScript/releases/tag/v4.7-beta
diervo commentedon Apr 15, 2022
Daniel Rosenwasser (@DanielRosenwasser) is there a specific tag or semantics for filing issues against this beta that will help streamline the process?
1 remaining item
DanielRosenwasser commentedon May 6, 2022
We've moved
resolution-modefromimport typeandexport typeinto nightly-only, so I cannot summon the bot. The bump to RC is at #49007.DanielRosenwasser commentedon May 11, 2022
4.8 Iteration Plan is available at #49074
RyanCavanaugh commentedon May 19, 2022
TypeScript Bot (@typescript-bot) bump release-4.7
typescript-bot commentedon May 19, 2022
Heya Ryan Cavanaugh (@RyanCavanaugh), I've started to update the version number on
release-4.7to4.7.2for you. Here's the link to my best guess at the log.Jamesernator commentedon May 24, 2022
Just wanted to point out one mistake in the TypeScript 4.7 RC release notes that should probably be fixed for the full release and that's that the line:
Is actually incorrect for
process, unlikerequirewhich a per-cjs-module injected thing, theprocessobject is actually just a property ofglobalso is usable in ESM as a global without problems.An alternative object for the sentence could the
moduleper-cjs-module object i.e.:DanielRosenwasser commentedon May 24, 2022
Thank you for that correction!
DanielRosenwasser commentedon May 24, 2022
TypeScript 4.7 is now out!
HolgerJeromin commentedon May 25, 2022
Happy to test, but linked Typescript SDK has a 404 and nuget.org has a
4.7.2-rc(hu?).But npm is available :-)
ref #48456
DensedyGot commentedon May 26, 2022
I installed the typescript 4.7.2 but I encountered an error
Module build failed (from ./node_modules/ts-loader/index.js):
Error: Debug Failure. False expression: Non-string value passed to
ts.resolveTypeReferenceDirective, likely by a wrapping package working with an outdatedresolveTypeReferenceDirectivessignature. This is probably not a problem in TS itself.I'm using Node@16.15.0 and npm@8.11.0
Here are some of the packages I used
@fluentui/react@8.70.0
@types/react@17.0.45
react@17.0.2
react-dom@7.0.2
@types/node@16.11.36
@typescript-eslint/eslint-plugin@4.29.0
@typescript-eslint/parser@4.29.0
eslint@7.32.0
eslint-config-standard@16.0.2
eslint-plugin-import@2.26.0
eslint-plugin-node@11.1.0
eslint-plugin-promise@5.1.0
typescript@4.7.2
DanielRosenwasser commentedon Jun 3, 2022
TypeScript Bot (@typescript-bot) bump release-4.7
typescript-bot commentedon Jun 3, 2022
Heya Daniel Rosenwasser (@DanielRosenwasser), I've started to update the version number on
release-4.7to4.7.3for you. Here's the link to my best guess at the log.DanielRosenwasser commentedon Jun 16, 2022
TypeScript Bot (@typescript-bot) bump release-4.7
typescript-bot commentedon Jun 16, 2022
Heya Daniel Rosenwasser (@DanielRosenwasser), I've started to update the version number on
release-4.7to4.7.4for you. Here's the link to my best guess at the log.