fix(migrate): cover angular's browser policy and gate zoneless on zone.js - #31360
Merged
Conversation
major-9.0 removed the IONIC_V9_VERSION dev build pin in favor of the numeric major target. Resolved react-deps.ts to keep the new React 18 bumps alongside the numeric Ionic targets, and engine.test.ts to keep the sourceMajor import without versions.js. Also updated core-deps.ts and two migrations.test.ts references, which git auto-merged clean but still pointed at the deleted module.
…fixes # Conflicts: # packages/migrate/README.md # packages/migrate/docs/v9.md # packages/migrate/src/detect.ts # packages/migrate/src/migrations/index.ts # packages/migrate/src/migrations/v9/angular-ionic-module.ts # packages/migrate/src/migrations/v9/angular-module-resolution.ts # packages/migrate/src/migrations/v9/angular-typescript.ts # packages/migrate/src/migrations/v9/angular-version.ts # packages/migrate/src/migrations/v9/angular-zoneless-manual.ts # packages/migrate/src/migrations/v9/core-browserslist.ts # packages/migrate/src/migrations/v9/core-capacitor.ts # packages/migrate/src/migrations/v9/core-deps.ts # packages/migrate/src/migrations/v9/core-floating-label.ts # packages/migrate/src/migrations/v9/core-form-structure.ts # packages/migrate/src/migrations/v9/core-modal-handle.ts # packages/migrate/src/migrations/v9/core-package-exports.ts # packages/migrate/src/migrations/v9/core-select-events.ts # packages/migrate/src/migrations/v9/core-swipe-back-config.ts # packages/migrate/src/migrations/v9/core-textarea-height.ts # packages/migrate/src/migrations/v9/react-deps.ts # packages/migrate/test/core-browserslist.test.ts # packages/migrate/test/core-capacitor.test.ts
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Co-authored-by: Maria Hutt <thetaPC@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Issue number: internal
What is the current behavior?
Currently,
core-browserslistonly reads.browserslistrcand abrowserslistfile, so a project that keeps the list inpackage.json(the CRA and Vite starters do) gets nothing, and a browser the guide names but the project never mentions goes unreported. From Angular 20 on the CLI enforces its own higher policy, so an app that moves to the guide's floors then builds with anng buildwarning for every browser.Two smaller gaps: the zoneless migrations fire whether or not the app loads Zone.js, and
provideZoneChangeDetection()fails to bootstrap without it.core-capacitoronly flags below 3, so an app on Capacitor 6 reads as fine even though Ionic 9 supports 7 and later.What is the new behavior?
Three new migrations, taking the registry to 32 (12 auto-fix, 19 report-only, 1 experimental).
angular-browser-policy-manualnames the entries below Angular's policy and the experimentalangular-browser-policyraises them, reading the policy from the installed@angular/buildrather than a table here, since on 21+ it's a rolling baseline query whose resolved versions depend on the project'scaniuse-lite.core-browserslist-manualnames the guide's browsers a list has no entry for, report-only because adding one widens the support matrix.Reading a
browserslistmoved into a sharedast/browserslist.tsthat also covers thepackage.jsonfield. Both zoneless migrations now gate on Zone.js, resolved per project so a monorepo's apps don't speak for each other.core-capacitorflags below 7 and keeps the native-detection wording for below 3.Does this introduce a breaking change?
Other information