Faster! Generators! Addons!
This is the short version (and it mostly just duplicates the new CHANGELOG.md file). For the long version, read the announcement blog post!
Added
- Generators:
ember generate <blueprint>
now creates TypeScript files for you - Support for addons: we now precompile addon TypeScript so
ember-cli-typescript
andtypescript
itself can remain indevDependencies
instead ofdependencies
, and addons can easily distribute compiled JavaScript with TypeScript type definition (.d.ts
) files. - Incremental compilation:
ember serve
orember test --serve
now use TypeScript'stsc --watch
mode to only rebuild what changed, so your builds should be much faster
Fixed
tsconfig.json
is no longer so annoyingly temperamental; you can largely do what you want with it.ember serve
no longer triggers a full rebuild of all TypeScript files every time any file in your project changes.
Upgrading
ember install ember-cli-typescript@latest
Credits and Thanks
Massive credit goes to Dan Freeman (@dfreeman) and Derek Wickern (@dwickern), who did most of the heavy lifting on the internals for this release, and together unlocked both incremental compilation and addon support. Derek also did the lion's share of the work on writing the types for Ember and Ember Data.
Thanks to Maarten Veenstra (@maerten) for the original inspiration (and a spike last summer) for using a type registry, and to Mike North (@mike-north) for some discussion and planning around the idea late in 2017. I may have implemented them, but the ideas came from the community!
Thanks to Frank Tan (@tansongyang) for doing a lot of the work on porting the generators from the Ember and Ember Data repositories to ember-cli-typescript, as well as converting them to TypeScript and to use the new formats. He also contributed the type definitions for the new (RFC #232) QUnit testing API.
Thanks to everyone who contributed to ember-cli-typescript or the Ember typings in any way since we released 1.0.0:
-
ember-cli-typescript contributors (note that I intentionally include here everyone who opened issues on the repository: that is not a small thing and has helped us immensely):
- Bryan Crotaz (@BryanCrotaz)
- Daniel Gratzl (@danielgratzl)
- Guangda Zhang (@inkless)
- @guangda-prosperworks
- Krati Ahuja (@kratiahuja)
- Marco Umpiérrez (@MarcoUmpierrez)
- Martin Feckie (@mfeckie)
- Nikos Katsikanis (@QuantumInformation)
- Per Lundberg (@perlun)
- Prabhakar Poudel (@Prabhakar-Poudel)
- Ryan LaBouve (@ryanlabouve)
- Simon Ihmig (@simonihmig)
- Theron Cross (@theroncross)
- Thomas Gossman (@gossi)
- Vince Cipriani (@vcipriani)
-
Ember typings contributors:
- Adnan Chowdhury (@bttf)
- Derek Wickern (@dwickern)
- Frank Tan (@tansongyang)
- Guangda Zhang (@inkless)
- Ignacio Bona Piedrabuena (@igbopie)
- Leonard Thieu @leonard-thieu
- Logan Tegman @ltegman
- Martin Feckie (@mfeckie)
- Mike North (@mike-north)
- Nathan Jacobson (@natecj)
- Per Lundberg (@perlun)
- Robin Ward (@eviltrout)
Thanks to Rob Jackson (@rwjblue) and Tobias Bieniek (@Turbo87 on GitHub, @tbieniek in the Ember Slack) for answer tons of questions and putting up with regular pestering about Ember CLI.
And last but not least, thanks to everyone who's popped into #topic-typescript on the Ember Community Slack with questions, comments, problem reports, and the occasional word of encouragement. It really does help.