Skip to content

feat!: migrate to Ionic 9 and support Angular 21-22 - #81

Merged
rdlabo merged 4 commits into
mainfrom
chore/angular22-ionic9
Aug 21, 2026
Merged

feat!: migrate to Ionic 9 and support Angular 21-22#81
rdlabo merged 4 commits into
mainfrom
chore/angular22-ionic9

Conversation

@rdlabo

@rdlabo rdlabo commented Aug 21, 2026

Copy link
Copy Markdown
Contributor

Summary

This is a breaking platform migration released as the new 22.x package line for the published libraries and their consumers.

  • require Ionic Angular 9 for kit and photo-editor
  • support Angular 21 and 22 across all published package peer dependencies
  • require Capacitor 7+ for native consumers, matching the Ionic 9 runtime requirement
  • migrate Ionic standalone imports from @ionic/angular/standalone to @ionic/angular and move AngularDelegate to @ionic/angular/common
  • upgrade the development workspace to Angular 22.1, TypeScript 6, Ionic Toolkit 13, Angular ESLint 22, and ng-packagr 22
  • constrain Node.js to the versions officially supported by Angular 22
  • add an Angular 21 / TypeScript 5.9 compatibility build to CI
  • remove unused @angular/fire, whose peer range does not support Angular 22
  • add docs/migration.md and update the README compatibility matrix

Breaking changes

Consumers should run npx @ionic/migrate, the Ionic-recommended migration path for applications, and review its changes together with the manual audit in this repository. The migrator does not support Angular library workspaces, so this library was migrated manually.

Consumers must upgrade to the 22.x package line and Ionic 9. Native applications must also use Capacitor 7 or 8. Applications importing standalone Ionic APIs from @ionic/angular/standalone must switch to @ionic/angular; applications intentionally using lazy wrappers must use @ionic/angular/lazy. Angular 21/22 change-detection behavior and Ionic 9 component changes should be audited as described in the migration guide.

See docs/migration.md and the upstream Ionic 9 breaking changes.

Validation

  • npm run lint
  • npm run prebuild
  • npm run build with Angular 22 / TypeScript 6
  • npm run build with Angular 21 / TypeScript 5.9
  • npx ng test kit --watch=false (49 files, 937 tests)
  • all project tests and e2e in GitHub Actions
  • Prettier and git diff --check

@rdlabo rdlabo changed the title chore: support Angular 21-22 and Ionic 9 feat!: migrate to Ionic 9 and support Angular 21-22 Aug 21, 2026
@rdlabo
rdlabo marked this pull request as ready for review August 21, 2026 11:11
@rdlabo
rdlabo merged commit 0ce99de into main Aug 21, 2026
13 checks passed
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.

1 participant