Today we’re making an early preview available which showcases some of the new features coming in 0.9.0 preview release. It’s intended for users who wish to try out these features, begin porting existing applications, and who don’t mind a few rough edges in the compiler and language service along the way. Users who wish to stay on stable builds may wish to skip this early preview and wait for the 0.9.0 preview release (or grab the current 0.8.3.1 preview release).
The 0.9 series marks a major milestone on the way to our 1.0 release. This series brings major changes to the TypeScript language, compiler, and language services. With it, the language now supports generics, the top-most requested feature, along with improvements to the type system. In addition, the compiler and language service have been rewritten, largely from scratch, to work better with large projects in an interactive environment, which allows working with projects of more than 100k lines with little to no slowdown.
Many users have requested the ability to try 0.9 during its development. Up to this point, the best way to try it was to use the command-line based compiler by checking out the ‘develop’ branch, but because of the incompatibilities between the 0.8 and 0.9 language services there was no way to use the techniques mentioned in a previous blog post, leaving users of Visual Studio without a way to also try out 0.9.
The early previews are snapshots of the Visual Studio plugin that are compatible with the latest language service APIs in the 0.9 work. The intent is to unblock users who wish to stay up-to-date and continue to explore 0.9 features as they’re created.
By default, the first early preview contains a snapshot of the ‘develop’ branch called ‘release-0.9.0-alpha’ and can be installed just like our previous preview releases. This snapshot features generics and overloading-on-constants. We’re continuing to add new features and polish the implementation, so to keep up-to-date, you will need to update your compiler and language service from the ‘develop’ branch. We’ve written about how to do this in a blog post.
Because the early previews are snapshots of our current work-in-progress, not all functionality from 0.8.3 has been ported to the new architecture. Features known to not be complete in the first early preview, or are known missing:
Due to the deep changes in the language and compiler, there are some incompatibilities between the 0.9 series and the last preview release, 0.8.3. Some of these changes come from tightening the compiler to align more closely with the specification. Others are breaking changes made to improve the overall TypeScript experience in the long run. For the list of breaking changes between the 0.8.x series and the 0.9 series, see the wiki page.
We’re continuing to push toward the 0.9 release, and we hope this early preview provides an opportunity to get some additional feedback on new and changed features. For those who aren’t afraid to dive in to a work-in-progress, we hope this gives you the chance to help us make TypeScript a better, richer, project.
We've been trying to keep the language service (and intellisense) in sync with the compiler, but as you can imagine things can sometimes get out of sync.
If there are some key points where they differ, would you mind logging issues in the issue tracker to help us follow up on them and make sure they're fixed? typescript.codeplex.com/.../Create
Microsoft Can you support ES6 in IE11 with webgl Please.
What's the current status of TS 0.9? It's been a month with no news.
What about module.exports?
@horeaper - still working on it. You can track our progress by following along in the commit logs. In general, we're working on polish for the release.
@Aaron - we've been putting work into "export = <symbol name>" for this release as well
We a date for a stable release? not more "preview"...why M$ don't invest with more "power" in this project? It can be the new way for web develop
There is 0.9 Beta on codeplex. This mean that final 0.9 is very close, or this is mid-step and we must wait another month+ for 0.9 release ?
Please remove necessity to restart OS after installing vs plugin
@Jonathan - You mentioned you were working on a feature that would let external modules span across multiple files. Is this feature mostly implemented in the lasted build of 0.9? Also are there any examples or documentation on it yet? Thanks!
This blog has gone very quite.
Please tell me you are still actively working on Typescript. I have taken typescript to heart and it is making a massive difference to the re-factor-ability of my projects. Any idea on the time-scale for the next release?
Please let me know that type script is still alive and kicking.
I've installed the new release of typescript 0.9.0.0. Unfortunatley Visual Studio now completley hangs on build and
i cant work on my solution anymore. I can see in the taks manager that the system spins up around 20 to 30 tsc processes. I tried to start Visual Studio with the /Log switch parameter but nothing comes out in the log file that i can releate to this issue.
Any clues? Is it possible to put a constraint how many paralell threads of tcs that may be started?
@Niclas - are you using WebEssentials, by chance? We've seen a few cases where WebEssentials will spin up a number of tsc instances. If you disable this, you should be able to get the TypeScript language service to work properly again (and if not, please do let us know).