Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News TypeScript Roadmap: Enhanced Type System, More Productivity, and Improved Linting

TypeScript Roadmap: Enhanced Type System, More Productivity, and Improved Linting

Leia em Português

Microsoft has detailed the priorities that will drive TypeScript development during the first six months of 2019. Albeit not yet committed, the current roadmap includes enhanced core type system, maximizing forward compatibility with new ECMA features, improving tools, including editor support and linting, and more.

On the core type system front, TypeScript keeps its focus on providing a type system that can model JavaScript patterns with the aim to catch bugs and enforce correctness. A new feature of the TypeScript type system will be the ability of “proving relationships between types”, which will allow the compiler to check type correctness when type operators are used.

Special attention will be paid to improving the coexistence of TypeScript and JavaScript. This is mostly due to the growth of the TypeScript user base, with many developers using TypeScript to check or compile their JavaScript code, or transitioning to TypeScript. For example, this will include improvements to the JavaScript editing experience, integration of JSDoc types, making it easier to transition to TypeScript.

Another front where Microsoft will be active is representation within standardization committees, particularly the TC39 committee, which is going to bring the next ECMA standard, and the Node modules group. Highest priority will be influencing the committee's work to ensure better compatibility with proposed features that TypeScript adopted earlier on, such as class fields, decorators, module interoperability, null propagation/coalescing, etc.

Improving tools and developers productivity is also among Microsoft´s goals for the evolution of the TypeScript ecosystem. This includes editor features such as “proactive” quick fixes that will suggest possible changes to improve the code, for example detecting implicit any use even when not using the noImplicitAny compiler setting and inferring an appropriate type. Improving how developers deal with declaration files is also center stage, with the aim of finding a workflow to help developer handle the case where a type file is not available in DefinitelyTyped or fix erroneous declaration files. Additionally, Microsoft also plans to improve the TypeScript linter (TSLint) performance and the TypeScript server (TSServer) speed, scalability, and stability. Interestingly, to solve TSLint performance issues, Microsoft will leverage ESLint, which they say has the kind of architecture they are striving for, and send contributions to bring its TypeScript support to parity with TSLint.

As a final note, Microsoft is also planning to write a new TypeScript handbook, improve compiler diagnostics, update the TypeScript playground, and extend the DefinitelyTYped infrastructure.

You can get the full details in the official GitHub Roadmap page.

Rate this Article