News

Microsoft Ships Open Source TypeScript 3.0

Microsoft shipped TypeScript 3.0, the latest edition of the open source programming language that provides a strict syntactical superset of JavaScript with the addition of optional static typing.

The company unveiled TypeScript in 2012 and has since continued to be the primary driver of its development.

The addition of optional typing can help with the authoring experience, Microsoft says, but the TypeScript compiler actually emits clean readable JavaScript that runs in any ECMAScript runtime -- such as browsers and Node.js -- after type-related declarations and annotations are removed.

"At its core, this experience means analyzing your code to catch things like bugs and typos before your users run into them; but it brings more than that," Microsoft's Daniel Rosenwasser said in a post yesterday (July 30) announcing v3.0. "Thanks to all that information and analysis TypeScript can provide a better authoring experience, providing code completion and navigation features like Find all References, Go to Definition, and Rename in your favorite editor."

TypeScript 3.0 introduces few breaking changes from its preceding versions, Microsoft said, which means it should make for an easy upgrade.

Among new features, Rosenwasser highlighted new project reference functionality, designed to better support various project scenarios, such as multiple folders with a variety of interdependent and shared code strategies.

"Project references allow TypeScript projects to depend on other TypeScript projects –- specifically, allowing tsconfig.json files to reference other tsconfig.json files," Rosenwasser said. "Specifying these dependencies makes it easier to split your code into smaller projects, since it gives TypeScript (and tools around it) a way to understand build ordering and output structure. That means things like faster builds that work incrementally, and support for transparently navigating, editing, and refactoring across projects. Since 3.0 lays the foundation and exposes the APIs, any build tool should be able to provide this."

The new version also introduces new support for operating on parameter lists, new types that enforce explicit checks, improved JSX support (JSX is a syntax extension integral to React.js), a better error UX and much more, Rosenwasser said.

Details on these and other new functionality can be found in our sister Visual Studio Magazine site's coverage of the release candidate, the open source documentation, the project's "what's new" section of its GitHub site and in Rosenwasser's post.

TypeScript 3.0 can be installed through NuGet or the npm package manager.

"Going forward, we foresee bringing more value to the type system and tooling experience, polishing the existing work on project references, and making TypeScript (both the language and the project) more approachable by whatever means we can," Rosenwasser said. "But in addition to that, we want to explore what we can do to empower more tool authors and users in the JavaScript community – to bring value to users who could still get value from using TypeScript even without directly using TypeScript."

The TypeScript roadmap provides more guidance on what's coming up for the language.

About the Author

David Ramel is an editor and writer for Converge360.