flex-layout icon indicating copy to clipboard operation
flex-layout copied to clipboard

chore: upgrade to Angular 14.0.0

Open SamuelMarks opened this issue 2 years ago • 8 comments

Issues:

DEPRECATED: The 'defaultProject' workspace option has been deprecated. The project to use will be determined from the current working directory.

…and:

Package "@nguniversal/builders" has an incompatible peer dependency to "@angular-devkit/build-angular" (requires "^13.0.2", would install "14.0.0"). Package "@ngtools/webpack" has an incompatible peer dependency to "typescript" (requires "~4.4.3", would install "4.7.2").


Approach:

$ git clone --depth=1 https://github.com/angular/flex-layout
$ git remote add mine https://github.com/SamuelMarks/flex-layout
$ yarn
$ ng update --force $(jq -r '.dependencies * .devDependencies | keys | map(select(startswith("@angular"))) | @tsv' package.json)
$ git checkout -b ng14
$ git commit -S -am 'chore: upgrade to Angular 14.0.0'
$ git push --set-upstream mine ng14

SamuelMarks avatar Jun 03 '22 12:06 SamuelMarks

Hi there. Any idea when we can expect the release of a new version? Would be really great so we can update to Angular 14. Thank you very much.

PzYon avatar Jun 07 '22 07:06 PzYon

There are a couple of issues that I'd like to resolve before we cut a release. I have no issue if @SamuelMarks would like to remove the version bump for this, that way at least the nightly builds will support v14. But I want to close out at least #1396 and #1394, which were regressions of the last version. I've slated some time for this week to investigate these, and if all goes to plan, we could see a release sometime next week. In the meantime, there are some NPM and Yarn workarounds you can use to migrate.

Also big thanks to @SamuelMarks for taking on this work (this PR, not the issues above), it is much appreciated.

CaerusKaru avatar Jun 07 '22 07:06 CaerusKaru

what time will the pr be merged?

damingerdai avatar Jun 11 '22 02:06 damingerdai

Thinking the browserstack issues might be caused by permissions of some sort, I opened #1409 (with some other stuff I wanted to include), but that's failing too with the same issue. I'll reach out to the dev infra team to help resolve this.

CaerusKaru avatar Jun 14 '22 06:06 CaerusKaru

@CaerusKaru for this and future updates, would it be possible to use peer deps similar to how Angular Material does, which includes the next major version as well, to ease the update process. e.g. ^14.0.0 || ^15.0.0 (https://github.com/angular/components/blob/5816a12dfa816e3f340627fdf561658de0e8c970/packages.bzl#L4) It's not usually the case that the next major Angular or CDK versions break this library, so it's likely safe to do and would improve the DX for this interim period between angular and flex layout releases.

michaelfaith avatar Jun 16 '22 02:06 michaelfaith

I haven't use CircleCI so not sure how it should work but there is two Errors even there is Success in the end. Both errors say this "DEPRECATION: Passing custom equality testers to MatchersUtil#equals is deprecated." I point it out here if you missed it. https://app.circleci.com/pipelines/github/angular/flex-layout/270/workflows/10db3ad6-18ef-47d8-8dee-9c25b572db2a/jobs/7792

JanneHarju avatar Jun 17 '22 12:06 JanneHarju

any progress on this @joanllenas @CaerusKaru @SamuelMarks ?

$ pnpm add @angular/flex-layout @angular/cdk
Already up-to-date
Progress: resolved 543, reused 523, downloaded 0, added 0, done
 WARN  Issues with peer dependencies found
.
└─┬ @angular/flex-layout
  ├── ✕ unmet peer @angular/cdk@^13.0.0: found 14.0.2
  ├── ✕ unmet peer @angular/core@^13.0.0: found 14.0.1
  ├── ✕ unmet peer @angular/common@^13.0.0: found 14.0.1
  └── ✕ unmet peer @angular/platform-browser@^13.0.0: found 14.0.1

It is really annoying and unstable to use --force

kasir-barati avatar Jun 18 '22 12:06 kasir-barati

Looks like you'll need to change the docker image used by circleci to build properly.

I assume you'll be able to safely update to the latest 14.x version image:

cimg/node:14.19.3

as well as the browsers image used for testing:

cimg/node:14.19.3-browsers

This is probably why #1409 built. It also has a few other changes in .circleci/config.yml

czietsman avatar Jun 21 '22 20:06 czietsman

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.