This document outlines our focused tasks for TypeScript 3.5, as well as some of the discussion that explains how/why we prioritized certain work items. Nothing is set in stone, but we will strive to complete them in a reasonable timeframe.
Here's the release plan.
release-3.5
branch, and update the version to 3.5.0-rc
. master
is locked from receiving new feature-work that is not 3.5-bound.release-3.5
branch with any feedback we receive.master
into release-3.5
one last time, finalize the version as 3.5.1
. master
is unlocked. Critical changes for 3.5 must be ported in.release-3.5
branch with any feedback we receive.globalThis
expressivity fixes](https://github.com/Microsoft/TypeScript/issues/30477)--incremental
fixes and improvements--declaration
and --allowJs
](https://github.com/Microsoft/TypeScript/issues/7546)--declaration
and --isolatedModules
](https://github.com/Microsoft/TypeScript/issues/29490)--incremental
and composite projects (--build
mode)](https://github.com/Microsoft/TypeScript/issues/29978) ๐(๐๐ปโ means work has already started)
Negated types
Arbitrary index signatures
Compiler API prototyping
Expecting --incremental
build issues
Crawler work for testing TSServer
TSLint -> ESLint migration
New engineer starting!
globalThis
-related work
--declaration
with --allowJs
--declaration
with --isolatedModules
composite
.<T>(x: T): { value: T }
@DanielRosenwasser Thanks for being so transparent with the plans. It was way cool to read the 3.4 release announcement and then pop over here to see that you already have pretty developed plans for the next iteration.
Go TypeScript team!
Amazing work guys!
Iโdย like toย seeย https://github.com/Microsoft/TypeScript/pull/30586 fixed.
Preferably inย some way that isnโt just aย bandโaid.
What's TypeScript plugin API? Does this affect babel-plugin-transform-typescript users?
Is it possible to be involved in testing for "Investigate TypeScript plugin APIs"?
I'd love to have typescript-plugin-css-modules
available during build time. I'm currently in the process of reworking it a little, so please let me know.
I'd like to see #21592 fixed.
It force me to stuck with TypeScript 3.1.6 ๐ข(the only version without this bug among TS 3.x)
Hey all, just wanted to put out a couple of updates. A few of the items in this release were reprioritized, and as a result, what you see in the current feature roadmap is the closest to what you'll see in the release next week.
There are a couple of reasons why, but most of it was that TypeScript 3.4 was rockier than expected, and so was some breakage in TypeScript 3.5 itself. We ended up spending a lot of time servicing the last release or chasing down regressions.
It turns out that our testing infrastructure, while improved, needs investment. Our testing suite isn't up to date on real world code, and doesn't test things like editor scenarios (e.g. keystroke delays when a library like styled-components is present). We need to do our due diligence to invest in this testing infrastructure and run it more frequently on major changes. We also want to make it easier to contribute repositories to TypeScript's code suite.
Another thing we've been feeling is that we as a language need to have more time to let features "bake". We may be moving towards 3-month release cycles to address stability issues and feel confident in our design decisions. We'd like to experiment with this release cycle to ensure that users get stable well-designed features without compromising the rapid iteration we've been able to provide.
Much of this will also be coming in TypeScript 3.6. Keep posted for the upcoming iteration plan.
Just as one final heads up - due to personnel reasons, we'll be releasing tomorrow morning (the 29th) rather than Thursday the 30th. See you then!
We did it!
Why hasn't 3.5.x been released on GitHub? It's tagged as the latest on npm.
Most helpful comment
@DanielRosenwasser Thanks for being so transparent with the plans. It was way cool to read the 3.4 release announcement and then pop over here to see that you already have pretty developed plans for the next iteration.
Go TypeScript team!