Announcing TypeScript 0.9.5

Announcing TypeScript 0.9.5

Rate This
  • Comments 35

Today, we're happy to announce the release of TypeScript 0.9.5.  This release focuses on addressing feedback from the community around quality and stability.  In this release, we've fixed over 100 issues related to memory leaks, CPU usage, crashes, and compiler correctness.  This has helped the TypeScript experience for developing large-scale JavaScript applications become a more robust and more reliable experience.

The updated downloads are available for Visual Studio, NPM and source through the TypeScript website.  Let us know what you think on the discussion forums and issue tracker.

As part of the work to address community feedback and to making the language more cohesive and predictable in preparation for our 1.0 release, there have been some changes to the TypeScript language.  In some cases, this has resulted in breaking changes with existing code, so please be sure to check out the breaking change list to see if any of the changes impact your code.

Growing TypeScript Community

It's been an exciting time for the TypeScript community.  There are now over 200 .d.ts files available at DefinitelyTyped, covering a wide range of 3rd party JavaScript libraries and services.  Equally impressive, this large catalog of typing files is maintained by a group of nearly 300 individual contributors.  DefinitelyTyped has grown to be an invaluable resource when working with TypeScript.

Recently announced is Monaco, part of the new Visual Studio Online, an online source management and editing environment built with TypeScript.  Erich Gamma spoke at JSConf about the challenges of large-scale JavaScript applications like Monaco and how TypeScript helped the Monaco project grow.  Also announced is Xbox Music, a rich music service available to millions of users via Xbox One, Windows 8.1, and the web, which was also built with TypeScript. 

Build Performance

As a result of the work on memory usage and stability in this release, we've seen build times for large projects improve.  For example, Monaco and Xbox Music saw their compile times cut nearly in half by switching to 0.9.5.

 Along with the compile time improvements, both projects also saw nearly a 50% decrease in memory usage during build time and a dramatic increase in the stability of the language service and associated tools.

Visual Studio Improvements

We've continued to polish the Visual Studio experience when developing TypeScript projects.  In 0.9.5, we've added two new features to help fill out the development experience.

Project Property Page

In Visual Studio 2013, you will now be able to configure your projects using the new project property page.  The page allows easy control over many common project settings, including preferred module system for codegen, concatenating output, outputting .d.ts files, and managing debugging.

Using _references.ts

With the previous improvements to the Visual Studio experience, we've moved to projects implicitly referencing the .ts files contained in the project.  This cut down on having to explicitly reference your files in the project, bringing the experience much closer to C#.  Unfortunately, it also did not work well when using the option to concatenate your output .js file.

We're continuing to improve this experience.  Starting with 0.9.5, you can now add an _references.ts file to your project.  This file will be the first passed to the compiler, allowing you more control over the order the generated .js file when used in combination with the Combine JavaScript output into file option (the equivalent of using the --out commandline option).

Looking Forward

As we mentioned in the roadmap as part of the TypeScript and the Road to 1.0 post, we're excited to be putting the last bit of polish on the TypeScript language and tools.  The 0.9.5 is a key piece of that, and we'd love to hear your feedback.  Looking forward from here, the next release will be the release candidate for the 1.0 itself, which will represents the TypeScript 1.0 language and tooling and will be the most complete picture of TypeScript 1.0 before its release.

 

Leave a Comment
  • Please add 4 and 1 and type the answer here:
  • Post
  • You made my day. Was looking for a new version for a while, can't wait to check it out.

  • The project properties, I see it for the "Type Script" project type. I can't see it in a new MVC project though? Am I missing something?

  • Yes, I've been keeping close watch on the next release also; can't wait to check it out as well! :)

  • "In Visual Studio 2013, you will now be able to configure your projects using the new project property page."

    What happens if you are using Visual Studio 2012? I don't see that tab in the project options...

  • Visual Studio plugin installer now depends on Internet Explorer 10 to be installed. It was not the case in previous versions. In our client, the targeted browser is currently IE9, so we have to stick with it now.  Is there a way to disable this check ?

  • JC can you try to set svcVersion registry key value in branch HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer

    to "10.0.9200.16384" ?

  • @GD this seems to work well. Memory usage has drop significantly (from crashing our VS with 2.8Gb of ram to 800-900Mb), and overall Visual Studio usage seems far better. I will update my feedback when our 1k errors will be corrected but 0.9.5 seems to be a nice release :)

  • Great performance improvements!

    We have a solution with 129 .ts files.

    0.9.1.1: 38-47 seconds, tsc.exe uses 900 MB memory.

    0.9.5: 24 seconds, tsc.exe uses 210 MB memory.

  • Unfortunately 0.9.5 is a wash for me right now. Where in 0.9.1 I could compile one of my smaller projects very quickly (about 5 seconds if only compiling to bundle), in 0.9.5 it takes a *long* time and eventually reports an out of stack space error. Originally this seemed to revolve around some overloaded constructors that had been created (even though they were not only valid according to spec, but also ordered correctly), so I removed all overloads only to have the issue move deeper into the compiler.

    Until then I've had to return back to 0.9.1.

  • Great news that this has been released.  I hope the dependency on IE 10 for installation is resolved quickly - from looking at the comments it seems there is a workaround for now.  It's been logged as an issue here:

    typescript.codeplex.com/.../1975

  • I must be doing something wrong, because I don't see the speed improvement. I'm actually seeing a speed decrease. Using command line compiler with no flags, I compiled 37 files in 35 seconds using 0.9.1 and 50 seconds using 0.9.5. Anyone else seeing similar issues?

  • @John M / @Guy

    The project property page use some of the new features in VS 2013, so they're only visible there rather than in VS 2012.  In VS 2012, you can still edit the project manually (as with previous TypeScript versions)

    @JC

    The IE10 check is something we're planning to remove so that IE9 will be allowed again.  The fix just didn't make it into the 0.9.5 release.

    @Richard S

    Would it be possible to share some of the code that is causing the stack overflow?  We'd like to track down what's causing it.  You can find the issue tracker here: typescript.codeplex.com/.../basic

    @Jay Turpin

    The speed improvements aren't necessarily what all projects will see, some may see little improvement.  To see a speed regression, though, is something we'd like to look into to understand better what's going on and if there are further improvements.  A great way to help us out is to file issues (typescript.codeplex.com/.../basic) so we can follow up.

  • One of the guys in my group just made a huge discovery (at least for us). Pipe a list of all of the TS files into a single file and then execute TSC.exe @filelist.txt and you will see your files compiled in just a few seconds.

    Compared to running TSC for each TS file (100+ files that took 15 minutes to compile), this method takes only a few seconds. Works with both 0.9.1 and 0.9.5

  • too bad is tied to visual studio and not mac or linux or cross platform or just usable via a text editor on windows.

  • We've actually had a slight compile time speed regression too (~10%) for a 400+ file project using no module system.

    The memory usage and speed of autocomplete seems to be significantly improved but still need more longer session testing for that.

Page 1 of 3 (35 items) 123