Skip to content

build(docs-infra): update @angular/{cli,core,material} to latest versions and TS to 3.8 - #36145

Closed
gkalpak wants to merge 8 commits into
angular:masterfrom
gkalpak:build-aio-update-angular-ts
Closed

gkalpak wants to merge 8 commits into
angular:masterfrom
gkalpak:build-aio-update-angular-ts

Conversation

@gkalpak

@gkalpak gkalpak commented Mar 19, 2020 •

Copy link
Copy Markdown
Member

☝️

Jira issue: FW-1970

Blocking issues:

  • Confirm that the payload size increases are acceptable.
  • This seems to be very prone to FW-2008.
    We should address FW-2008 first, before merging this.

@gkalpak gkalpak added area: build & ci Related the build and CI infrastructure of the project comp: docs-infra state: WIP target: patch This PR is targeted for the next patch release labels Mar 19, 2020
@ngbot ngbot Bot added this to the needsTriage milestone Mar 19, 2020
@gkalpak gkalpak changed the title build(docs-infra): update @angular/{cli,core,material} to latest versions and TS to 3.8 build(docs-infra): update @angular/{cli,core,material} to latest versions and TS to 3.8 Mar 19, 2020
@mary-poppins

Copy link
Copy Markdown

You can preview 6d18a79 at https://pr36145-6d18a79.ngbuilds.io/.

@mary-poppins

Copy link
Copy Markdown

You can preview 91e4a21 at https://pr36145-91e4a21.ngbuilds.io/.

@gkalpak
gkalpak force-pushed the build-aio-update-angular-ts branch from 91e4a21 to 7a3fc1f Compare March 19, 2020 19:07
@mary-poppins

Copy link
Copy Markdown

You can preview 7a3fc1f at https://pr36145-7a3fc1f.ngbuilds.io/.

@gkalpak
gkalpak force-pushed the build-aio-update-angular-ts branch from 7a3fc1f to bc625d6 Compare March 19, 2020 19:19
@gkalpak gkalpak added action: review The PR is still awaiting reviews from at least one requested reviewer state: blocked and removed state: WIP action: review The PR is still awaiting reviews from at least one requested reviewer labels Mar 19, 2020
@gkalpak
gkalpak marked this pull request as ready for review March 19, 2020 20:23
Comment thread aio/scripts/_payload-limits.json Outdated

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So the size begins at 450676. Updating CLI bumps it to 450677, then updating FW bumps it to 451655, then updating material bumps it to 451935.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Exactly! Thx for summarizing the changes 👍

@gkalpak
gkalpak force-pushed the build-aio-update-angular-ts branch from bc625d6 to 028d1a0 Compare April 1, 2020 12:14
@gkalpak
gkalpak force-pushed the build-aio-update-angular-ts branch from 028d1a0 to 3d6d785 Compare April 15, 2020 08:23
@gkalpak
gkalpak marked this pull request as draft April 15, 2020 08:31
@gkalpak
gkalpak force-pushed the build-aio-update-angular-ts branch from ab4415a to 66d9c41 Compare May 5, 2020 16:05
@mary-poppins

Copy link
Copy Markdown

You can preview 66d9c41 at https://pr36145-66d9c41.ngbuilds.io/.

@kara kara left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not happy about the size regression, but given that this PR doesn't cause it and this is blocking other things, LGTM.

I'll create a Jira to investigate the regression separately.

"runtime-es2015": 2987,
"main-es2015": 450612,
"polyfills-es2015": 52195
"main-es2015": 454032,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oof, looks like this got worse since the last time we updated this PR...

@petebacondarwin petebacondarwin left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

But I don't understand why the examples are left at 9.1.x while the rest of AIO is updated to 10.0.0-next.x

@petebacondarwin petebacondarwin added action: cleanup The PR is in need of cleanup, either due to needing a rebase or in response to comments from reviews and removed action: review The PR is still awaiting reviews from at least one requested reviewer labels May 5, 2020
@gkalpak

gkalpak commented May 5, 2020

Copy link
Copy Markdown
Member Author

But I don't understand why the examples are left at 9.1.x while the rest of AIO is updated to 10.0.0-next.x

Examples are what people will use to play with (either on StackBlitz or locally), so we generally stick to stable versions for examples. The angular.io app itself can be on any version we are happy with (and currently we need 10-next, because it is the only one that contains #36626 until the next 9.x release).

@kara kara added action: merge The PR is ready for merge by the caretaker and removed action: cleanup The PR is in need of cleanup, either due to needing a rebase or in response to comments from reviews labels May 5, 2020
alxhub pushed a commit that referenced this pull request May 5, 2020
)

This commit updates all payload sizes for angular.io to make it easier
to compare payload size changes as a result of upgrading Angular
packages and other dependencies in subsequent commits.

PR Close #36145
alxhub pushed a commit that referenced this pull request May 5, 2020
Update the Angular CLI and Angular framework packages to latest `@next`
versions. Also, update the app to look more closely to how a newly
generated app with the latest CLI would look like.

PR Close #36145
alxhub pushed a commit that referenced this pull request May 5, 2020
This commit updates the Angular Material packages (`@angular/cdk` and
`@angular/material`) to latest versions.

PR Close #36145
alxhub pushed a commit that referenced this pull request May 5, 2020
Update TypeScript for angular.io to the latest stable version: 3.8.3

Jira issue: [FW-1970](https://angular-team.atlassian.net/browse/FW-1970)

PR Close #36145
alxhub pushed a commit that referenced this pull request May 5, 2020
Previously, in the `test_aio` CI job, we ran ngcc before building the
app with `yarn build`. This was supposed to have the benefit of taking
advantage of the parallel capabilities of standalone ngcc (vs implicitly
running it via `ng build`).

It turns out that the work done by the standalone ngcc was thrown away
before the `ng build`, resulting in `ng build` having to run ngcc all
over again. This happened because the `yarn build` script (run after the
standalone ngcc step) also runs `yarn install`, which essentially cleans
up `node_modules/`, thus discarding all the work already done by ngcc.

Here is an [example CI job][1], where this can be seen in action:
One can see the "Compiling <some-package> : es2015 as esm2015" logs in
the `yarn --cwd aio ngcc --properties es2015` step (as the standalone
ngcc processes the various entry-points) and then see the same logs in
the `yarn --cwd aio build --progress=false` step (as ngcc has to process
the entry-points all over again).

This commit removes the redundant standalone ngcc run and lets the CLI
handle ngcc via `ng build`. It is possible to instrument the build
process in a way that we can run the standalone ngcc after
`yarn install` and thus take advantage of the performance gains in
parallel mode, but the latest version of the CLI can already run ngcc in
parallel mode as a pre-build step, so this is unnecessary.

[1]: https://circleci.com/gh/angular/angular/658691

PR Close #36145
alxhub pushed a commit that referenced this pull request May 5, 2020
…amework (#36145)

This commit also updates the projects to more closely match what a newly
generated app would look like with the exception of `tslint.json` files,
which would create too many linting failures. These will be updated in a
follow-up PR.

PR Close #36145
@alxhub alxhub closed this in 9d2241b May 5, 2020
alxhub pushed a commit that referenced this pull request May 5, 2020
Update the Angular CLI and Angular framework packages to latest `@next`
versions. Also, update the app to look more closely to how a newly
generated app with the latest CLI would look like.

PR Close #36145
alxhub pushed a commit that referenced this pull request May 5, 2020
This commit updates the Angular Material packages (`@angular/cdk` and
`@angular/material`) to latest versions.

PR Close #36145
alxhub pushed a commit that referenced this pull request May 5, 2020
Update TypeScript for angular.io to the latest stable version: 3.8.3

Jira issue: [FW-1970](https://angular-team.atlassian.net/browse/FW-1970)

PR Close #36145
alxhub pushed a commit that referenced this pull request May 5, 2020
Previously, in the `test_aio` CI job, we ran ngcc before building the
app with `yarn build`. This was supposed to have the benefit of taking
advantage of the parallel capabilities of standalone ngcc (vs implicitly
running it via `ng build`).

It turns out that the work done by the standalone ngcc was thrown away
before the `ng build`, resulting in `ng build` having to run ngcc all
over again. This happened because the `yarn build` script (run after the
standalone ngcc step) also runs `yarn install`, which essentially cleans
up `node_modules/`, thus discarding all the work already done by ngcc.

Here is an [example CI job][1], where this can be seen in action:
One can see the "Compiling <some-package> : es2015 as esm2015" logs in
the `yarn --cwd aio ngcc --properties es2015` step (as the standalone
ngcc processes the various entry-points) and then see the same logs in
the `yarn --cwd aio build --progress=false` step (as ngcc has to process
the entry-points all over again).

This commit removes the redundant standalone ngcc run and lets the CLI
handle ngcc via `ng build`. It is possible to instrument the build
process in a way that we can run the standalone ngcc after
`yarn install` and thus take advantage of the performance gains in
parallel mode, but the latest version of the CLI can already run ngcc in
parallel mode as a pre-build step, so this is unnecessary.

[1]: https://circleci.com/gh/angular/angular/658691

PR Close #36145
alxhub pushed a commit that referenced this pull request May 5, 2020
…amework (#36145)

This commit also updates the projects to more closely match what a newly
generated app would look like with the exception of `tslint.json` files,
which would create too many linting failures. These will be updated in a
follow-up PR.

PR Close #36145
@gkalpak
gkalpak deleted the build-aio-update-angular-ts branch May 5, 2020 20:49
@angular-automatic-lock-bot

Copy link
Copy Markdown

This issue has been automatically locked due to inactivity.
Please file a new issue if you are encountering a similar or related problem.

Read more about our automatic conversation locking policy.

This action has been performed automatically by a bot.

@angular-automatic-lock-bot angular-automatic-lock-bot Bot locked and limited conversation to collaborators Jun 5, 2020
profanis pushed a commit to profanis/angular that referenced this pull request Sep 5, 2020
…ular#36145)

This commit updates all payload sizes for angular.io to make it easier
to compare payload size changes as a result of upgrading Angular
packages and other dependencies in subsequent commits.

PR Close angular#36145
profanis pushed a commit to profanis/angular that referenced this pull request Sep 5, 2020
Update the Angular CLI and Angular framework packages to latest `@next`
versions. Also, update the app to look more closely to how a newly
generated app with the latest CLI would look like.

PR Close angular#36145
profanis pushed a commit to profanis/angular that referenced this pull request Sep 5, 2020
This commit updates the Angular Material packages (`@angular/cdk` and
`@angular/material`) to latest versions.

PR Close angular#36145
profanis pushed a commit to profanis/angular that referenced this pull request Sep 5, 2020
Update TypeScript for angular.io to the latest stable version: 3.8.3

Jira issue: [FW-1970](https://angular-team.atlassian.net/browse/FW-1970)

PR Close angular#36145
profanis pushed a commit to profanis/angular that referenced this pull request Sep 5, 2020
Previously, in the `test_aio` CI job, we ran ngcc before building the
app with `yarn build`. This was supposed to have the benefit of taking
advantage of the parallel capabilities of standalone ngcc (vs implicitly
running it via `ng build`).

It turns out that the work done by the standalone ngcc was thrown away
before the `ng build`, resulting in `ng build` having to run ngcc all
over again. This happened because the `yarn build` script (run after the
standalone ngcc step) also runs `yarn install`, which essentially cleans
up `node_modules/`, thus discarding all the work already done by ngcc.

Here is an [example CI job][1], where this can be seen in action:
One can see the "Compiling <some-package> : es2015 as esm2015" logs in
the `yarn --cwd aio ngcc --properties es2015` step (as the standalone
ngcc processes the various entry-points) and then see the same logs in
the `yarn --cwd aio build --progress=false` step (as ngcc has to process
the entry-points all over again).

This commit removes the redundant standalone ngcc run and lets the CLI
handle ngcc via `ng build`. It is possible to instrument the build
process in a way that we can run the standalone ngcc after
`yarn install` and thus take advantage of the performance gains in
parallel mode, but the latest version of the CLI can already run ngcc in
parallel mode as a pre-build step, so this is unnecessary.

[1]: https://circleci.com/gh/angular/angular/658691

PR Close angular#36145
profanis pushed a commit to profanis/angular that referenced this pull request Sep 5, 2020
…amework (angular#36145)

This commit also updates the projects to more closely match what a newly
generated app would look like with the exception of `tslint.json` files,
which would create too many linting failures. These will be updated in a
follow-up PR.

PR Close angular#36145
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

action: merge The PR is ready for merge by the caretaker area: build & ci Related the build and CI infrastructure of the project cla: yes target: patch This PR is targeted for the next patch release

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants