Skip to content

v22.0.0

Choose a tag to compare

@rdlabo rdlabo released this 22 Aug 04:50
· 16 commits to main since this release

Highlights

Version 22 adds Ionic Framework 9 support while continuing to support both Angular 21 and Angular 22. It also introduces list-structure validation for Ionic's iOS 26 and Material Design 3 styling.

Breaking changes

  • Ionic 9 is now required. Ionic 8 applications must remain on version 21 of this plugin.
  • deny-import-from-ionic-module has been removed. Replace it with prefer-ionic-standalone.
  • prefer-ionic-standalone requires Ionic 9 standalone imports from @ionic/angular and rejects @ionic/angular/standalone, @ionic/angular/lazy, and IonicModule usage.
  • ionic-attr-type-check now follows Ionic 9 component types, including the boolean autocorrect property.
  • The recommended preset now enables prefer-ionic-standalone and require-ion-item-group.

New: grouped Ionic list items

The new require-ion-item-group rule requires an ion-item inside ion-list to use one of the supported structures:

  • ion-list > ion-item-group > ion-item
  • ion-list > ion-reorder-group > ion-item
  • ion-list > ion-radio-group > ion-item
  • ion-list > ion-accordion-group > ion-accordion > ion-item

Angular control-flow blocks and non-rendering template containers are handled transparently. Safe automatic fixes and editor suggestions are provided where the intended group boundary can be determined; reusable or ambiguous templates are reported without modification.

Migration

Commit your application changes, then run Ionic's official migrator:

npx @ionic/migrate --dry-run
npx @ionic/migrate

The migrator handles safe Ionic 8-to-9 changes. Applications using IonicModule still require a manual Angular standalone migration; do not mechanically rewrite /lazy imports.

See the 21.x to 22.x migration guide for the complete procedure.

Compatibility

  • Angular and Angular ESLint: 21.x or 22.x
  • Ionic Angular and Ionic Core: 9.x
  • Node.js: 20 or later
  • ESLint: 9 or later

Version 22 also ships the rebuilt rule documentation in the npm package, documents the framework-independent /typescript entry point, validates Angular 21 and 22 in CI, and updates project links following the move to the rdlabo-dev GitHub organization.

Full Changelog: v21.3.0...v22.0.0