Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is a new PR because we were blocked before by tslint, which was on a very old ts build) and it was easier to start over then merge in a month of changes. Thanks @tylerbutler for doing amazing work in December and moving us onto eslint 😄
3.7 has a bug around array types where it munges them if you use undefined, null or unknown. (Issue: 33752)[https://github.com/microsoft/TypeScript/issues/33752]. I reached out to Ryan Cavanaugh who's an EM on the TS team and he put it on the backlog to get it fixed for 3.8. Because we only only have once instance of it impacting us I think it's not too bad and I added a comment in that spot.
Original Comment
3.7 has added a few cool features that make life notably nicer.
Highlights
Optional Chaining
Nullish Coalescing
Assertion Functions
Build Changes
There are a bunch of changes to the tsc build with Project References that came in 3.0. This included
--incremental
.With 3.7 they made this better by adding Build-Free Editing with Project Refrences. We haven't taken advantage of Project References yet but we might be able to offload some of our incremental build logic to tsc itself.
Entire list of thing can be found here:
https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-5.html
https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-6.html
https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-7.html