TypeScript icon indicating copy to clipboard operation
TypeScript copied to clipboard

Google feedback on TS 4.8-beta

Open frost-cy opened this issue 3 years ago • 0 comments

This GitHub issue contains feedback on the TS 4.8-beta release from the team that is responsible for keeping Google's internal software working with the latest version of TypeScript.

Executive summary

  • Some changes to our TypeScript code are required to make it compile with TS 4.8.
  • Detail sections below explain the changes to our code we expect to make to unblock the upgrade.

Impact summary

Change description Announced Libraries affected
Unconstrained Generics No Longer Assignable to {} yes 0.058%
lib/d.ts changes yes 0.013%
Improved Intersection Reduction, Union Compatibility, and Narrowing yes 0.009%
Errors When Comparing Object and Array Literals yes 0.006%
Unclassified - 0.003%

The Announced column indicates whether we were able to connect the observed change with a section in the TS4.8-beta announcement.

The following sections give more detailed explanations of the changes listed above.

Changes which were announced

Unconstrained Generics No Longer Assignable to {}

We see type errors similar to the ones mentioned in the release announcement.

We expect to add extends {} to generic type parameters to fix these issues.

lib/d.ts changes

We support the typing improvements. Generally it's clear what's changing.

These are the most common errors we observed:

  • decorators has been merged with modifiers on the declarations that support decorators.

  • ReadableStreamDefaultReadResult has changed to ReadableStreamReadResult

  • visualViewport is nullable

We expect to add casts to any to silence the error and apply proper fixes over time.

Improved Intersection Reduction, Union Compatibility, and Narrowing

We see type errors related to unknown, NonNullability<T> due to the changes mentioned in release announcement.

We expect to add relevant type cast to fix the issues.

Errors When Comparing Object and Array Literals

We see type errors similar to the ones mentioned in the release announcement.

We expect to add casts to any to silence the error and apply proper fixes over time.

frost-cy avatar Aug 11 '22 09:08 frost-cy