build: ensure build uses typescript 3.9 - #19336
Conversation
b60623a to
0433554
Compare
| "extends": "./bazel-tsconfig-build.json", | ||
| "compilerOptions": { | ||
| "importHelpers": false, | ||
| "importHelpers": true, |
There was a problem hiding this comment.
This needs to be set to true because the inline emitted helpers by TypeScript are currently broken in TS 3.9.2. A fix has landed, but will be available in the next patch..
microsoft/TypeScript#38501. We can leave this enabled anyway, or turn it back to false. Both have pros and cons.
There was a problem hiding this comment.
FWIW: The CLI has importHelpers: true for tests too.
| # as format instead the default `umd` format. | ||
| devmode_module = "commonjs", | ||
| module_name = "@angular/cdk/schematics", | ||
| prodmode_module = "commonjs", |
There was a problem hiding this comment.
The schematic code does not rely on importHelpers / tslib, so it currently breaks due to the aforementioned TS bug. We can fix this by building schematics always in commonjs. This might generally make sense to keep since schematics do not run in the browser.
|
Is this also blocked on angular/angular#36989? |
|
@jelbourn Not necessarily as we:
I guess it's up to preference whether we want to merge this or not. We can certainly wait until framework lands their PR so that we don't need (1) an (2), but we can also land this and remove (1) and (2) in a follow-up. |
'components-repo-unit-tests' CI job has been temporary disabled until the Components team support building and testing their repo with TypeScript 3.9. The TS 3.9 update is being done in angular/components#19336. Once this gets merged we should re-enable this CI job. More context on why this had to be disabled can be found: #37129 (comment) PR Close #37129
0433554 to
f96e178
Compare
We recently updated TS 3.9 in the `package.json` with angular#19286, but the build did not pick up the new version. This is because peer dependency ranges did not accept TS 3.9, so yarn hoisted sufficient TS versions.
f96e178 to
772d6e9
Compare
Updates the commit the `components-repo-unit-tests` job runs against. The goal is that we run against a revision that at least contains: angular/components#19336. The new commit contains fixes for a flaky test in the datepicker that we saw failing in the components-repo-unit-tests job too: https://app.circleci.com/pipelines/github/angular/angular/15359/workflows/27ffae7c-a7b8-46a3-9c9e-6dd22ca4734d/jobs/712643. Additionally, with this commit, the components repo unit tests job will use TypeScript 3.9.2, so we can re-enable the job in another commit.
Updates the commit the `components-repo-unit-tests` job runs against. The goal is that we run against a revision that at least contains: angular/components#19336. The new commit contains fixes for a flaky test in the datepicker that we saw failing in the components-repo-unit-tests job too: https://app.circleci.com/pipelines/github/angular/angular/15359/workflows/27ffae7c-a7b8-46a3-9c9e-6dd22ca4734d/jobs/712643. Additionally, with this commit, the components repo unit tests job will use TypeScript 3.9.2, so we can re-enable the job in another commit. PR Close #37176
|
This issue has been automatically locked due to inactivity. Read more about our automatic conversation locking policy. This action has been performed automatically by a bot. |
We recently updated TS 3.9 in the
package.jsonwith #19286, but the build didnot pick up the new version. This is because peer dependency ranges
did not accept TS 3.9, so yarn hoisted satisfying TS versions.