Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Angular 14 #684

Merged
merged 2 commits into from
Nov 10, 2022
Merged

Angular 14 #684

merged 2 commits into from
Nov 10, 2022

Conversation

jattasNI
Copy link
Contributor

@jattasNI jattasNI commented Aug 11, 2022

Pull Request

🤨 Rationale

This is required to upgrade applications to 14 from 13. With Ivy partial compilation it may not always be required in the future. To avoid an issue with npm involving conditional versioning, an additional version will be published supporting Angular 13 in #708.

Developers are welcome to pull this branch and run the tests and application. This branch includes pre-built packages of dependencies with peer dependencies on angular-eslint, ESLint, TypeScript, etc. These packages will be replaced with published versions before submitting.

An upgrade guide will be published detailing the steps taken to perform the upgrade. It will recommend upgrading from 12 to 14 in lock-step but all at once to address builds and tests only once, with version 14.

👩‍💻 Implementation

  1. Upgrade to Angular 14.
  2. Enumerate the update list .
  3. Update unmanaged asset exports from libraries.
  4. Update library options in tsconfig.json.
  5. Compile libraries with Ivy partial compilation.
  6. Remove all tilde (~) SCSS imports in style files.
  7. Enable the build cache.
  8. Remove the default project (deprecated).
  9. Fix linter errors that I think are do to changes in the implementation of a few rules that were already enabled?

Remaining Work Items

  1. add docs describing our Angular support policy. consider whether we should try supporting multiple versions at once or just link to changelog to access previously supported versions
  2. discuss if there are other dependencies to update (e.g. tslib) or not update (e.g. typescript)
  3. Publish a new version of the styleguide PR#82.

🧪 Testing

  • Verified that the linter passes
  • Verified that the build passes
  • Verified that the automated tests pass
  • Verified that the example application works correctly

✅ Checklist

  • I have updated the project documentation to reflect my changes or determined no changes are needed.

@TrevorKarjanis TrevorKarjanis force-pushed the angular-14 branch 2 times, most recently from 0bf8bc2 to c2ca171 Compare September 1, 2022 19:04
@TrevorKarjanis TrevorKarjanis mentioned this pull request Sep 1, 2022
1 task
Copy link
Contributor

@TrevorKarjanis TrevorKarjanis left a comment

Choose a reason for hiding this comment

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

  1. add docs describing our Angular support policy. consider whether we should try supporting multiple versions at once or just link to changelog to access previously supported versions

@jattasNI In this upgrade we are publishing two versions of the package to support 13 and 14 individually. Moving forward, partial complication states, "This is a compilation mode for ngc which produces compiled Angular code that is not tied to a specific Angular runtime version." That sounds sexy but only testing will show. Therefore, Nimble's policy may not be the same as the approach taken here.

  1. discuss if there are other dependencies to update (e.g. tslib) or not update (e.g. typescript)

Angular upgrades TypeScript.

@TrevorKarjanis TrevorKarjanis force-pushed the angular-14 branch 8 times, most recently from 0976de5 to 8874896 Compare September 2, 2022 16:23
TrevorKarjanis added a commit that referenced this pull request Nov 10, 2022
# Pull Request

## 🤨 Rationale

This is required to upgrade applications to 14 from 12 to avoid an issue
with npm involving conditional versioning, e.g. `^13 || ^14`. Clients
can depend on this version of nimble-angular when upgrading to 13 and
then on the next version supporting 14.

An upgrade guide will be published detailing the steps taken to perform
the upgrade. It will recommend upgrading from 12 to 14 in lock-step but
all at once to address builds and tests only once, with version 14.
Therefore, usage of this version of nimble-angular is expected to be
minimal.

See #684 for more information.

## 👩‍💻 Implementation

- Upgrade to Angular 13.
- Enumerate the [update
list](https://update.angular.io/?l=3&v=12.0-13.0).
- Compile libraries with Ivy partial compilation.

## Remaining Work Items

2. Publish a new version of the styleguide
[PR#82](ni/javascript-styleguide#82).

## 🧪 Testing

- Verified that the linter passes
- Verified that the build passes
- Verified that the automated tests pass
- Verified that the example application works correctly

## ✅ Checklist

- [x] I have updated the project documentation to reflect my changes or
determined no changes are needed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants