Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: ionic-team/ionic-framework
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v8.7.17
Choose a base ref
...
head repository: ionic-team/ionic-framework
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v8.7.18
Choose a head ref
  • 19 commits
  • 290 files changed
  • 8 contributors

Commits on Jan 14, 2026

  1. Configuration menu
    Copy the full SHA
    dd1c1e8 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    1bccf76 View commit details
    Browse the repository at this point in the history
  3. merge release-8.7.17 (#30916)

    v8.7.17
    brandyscarney authored Jan 14, 2026
    Configuration menu
    Copy the full SHA
    040bdf7 View commit details
    Browse the repository at this point in the history

Commits on Jan 15, 2026

  1. chore(deps): update actions/setup-node action to v6.2.0 (#30918)

    This PR contains the following updates:
    
    | Package | Type | Update | Change |
    |---|---|---|---|
    | [actions/setup-node](https://redirect.github.com/actions/setup-node) |
    action | minor | `v6.1.0` → `v6.2.0` |
    
    ---
    
    ### Release Notes
    
    <details>
    <summary>actions/setup-node (actions/setup-node)</summary>
    
    ###
    [`v6.2.0`](https://redirect.github.com/actions/setup-node/compare/v6.1.0...v6.2.0)
    
    [Compare
    Source](https://redirect.github.com/actions/setup-node/compare/v6.1.0...v6.2.0)
    
    </details>
    
    ---
    
    ### Configuration
    
    📅 **Schedule**: Branch creation - "every weekday before 11am" (UTC),
    Automerge - At any time (no schedule defined).
    
    🚦 **Automerge**: Disabled by config. Please merge this manually once you
    are satisfied.
    
    ♻ **Rebasing**: Never, or you tick the rebase/retry checkbox.
    
    🔕 **Ignore**: Close this PR and you won't be reminded about this update
    again.
    
    ---
    
    - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
    this box
    
    ---
    
    This PR was generated by [Mend Renovate](https://mend.io/renovate/).
    View the [repository job
    log](https://developer.mend.io/github/ionic-team/ionic-framework).
    
    <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi43NC41IiwidXBkYXRlZEluVmVyIjoiNDIuNzQuNSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->
    
    Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
    renovate[bot] authored Jan 15, 2026
    Configuration menu
    Copy the full SHA
    4eca8d3 View commit details
    Browse the repository at this point in the history
  2. chore(deps): update dependency @capacitor/core to v8.0.1 (#30914)

    This PR contains the following updates:
    
    | Package | Change |
    [Age](https://docs.renovatebot.com/merge-confidence/) |
    [Confidence](https://docs.renovatebot.com/merge-confidence/) |
    |---|---|---|---|
    | [@capacitor/core](https://capacitorjs.com)
    ([source](https://redirect.github.com/ionic-team/capacitor)) | [`8.0.0`
    →
    `8.0.1`](https://renovatebot.com/diffs/npm/@capacitor%2fcore/8.0.0/8.0.1)
    |
    ![age](https://developer.mend.io/api/mc/badges/age/npm/@capacitor%2fcore/8.0.1?slim=true)
    |
    ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capacitor%2fcore/8.0.0/8.0.1?slim=true)
    |
    
    ---
    
    ### Release Notes
    
    <details>
    <summary>ionic-team/capacitor (@&#8203;capacitor/core)</summary>
    
    ###
    [`v8.0.1`](https://redirect.github.com/ionic-team/capacitor/blob/HEAD/CHANGELOG.md#801-2026-01-13)
    
    [Compare
    Source](https://redirect.github.com/ionic-team/capacitor/compare/8.0.0...8.0.1)
    
    ##### Bug Fixes
    
    - **android:** Remove calculated bottom inset if keyboard is visible
    ([#&#8203;8280](https://redirect.github.com/ionic-team/capacitor/issues/8280))
    ([196b642](https://redirect.github.com/ionic-team/capacitor/commit/196b642236d293a5012e3c307fcd942766e56cce))
    - **cli:** Support wireless iOS devices in `cap run`
    ([#&#8203;8301](https://redirect.github.com/ionic-team/capacitor/issues/8301))
    ([dcb368c](https://redirect.github.com/ionic-team/capacitor/commit/dcb368c33555487f1b6f46a6d8e30736bdd78955))
    - **cli:** use latest native-run
    ([#&#8203;8296](https://redirect.github.com/ionic-team/capacitor/issues/8296))
    ([121d830](https://redirect.github.com/ionic-team/capacitor/commit/121d83013f39e25009121533a2c3ad86e428d6b2))
    
    </details>
    
    ---
    
    ### Configuration
    
    📅 **Schedule**: Branch creation - "every weekday before 11am" (UTC),
    Automerge - At any time (no schedule defined).
    
    🚦 **Automerge**: Disabled by config. Please merge this manually once you
    are satisfied.
    
    ♻ **Rebasing**: Never, or you tick the rebase/retry checkbox.
    
    🔕 **Ignore**: Close this PR and you won't be reminded about this update
    again.
    
    ---
    
    - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
    this box
    
    ---
    
    This PR was generated by [Mend Renovate](https://mend.io/renovate/).
    View the [repository job
    log](https://developer.mend.io/github/ionic-team/ionic-framework).
    
    <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi43NC41IiwidXBkYXRlZEluVmVyIjoiNDIuNzQuNSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->
    
    Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
    renovate[bot] authored Jan 15, 2026
    Configuration menu
    Copy the full SHA
    62d880d View commit details
    Browse the repository at this point in the history

Commits on Jan 19, 2026

  1. fix(toast): keep icon on the same line as long message in stacked lay…

    …out (#30923)
    
    Issue number: resolves #30908
    
    ---------
    
    ## What is the current behavior?
    Toast with an icon and long message using a stacked layout will wrap the
    message below the icon.
    
    ## What is the new behavior?
    - Apply `flex: 1` to `.toast-content` regardless of layout, which makes
    sure the content does not get wrapped under the icon
    - Adds an e2e test for a stacked toast with a long message to
    `toast/test/layout`
    
    ## Does this introduce a breaking change?
    - [ ] Yes
    - [x] No
    
    ## Other information
    
    - Dev build: `8.7.18-dev.11768592717.14a59d2f`
    - Preview:
    [Layout](https://ionic-framework-git-fw-7035-ionic1.vercel.app/src/components/toast/test/layout/)
    
    ---------
    
    Co-authored-by: Brandy Smith <6577830+brandyscarney@users.noreply.github.com>
    brandyscarney and brandyscarney authored Jan 19, 2026
    Configuration menu
    Copy the full SHA
    442e3e9 View commit details
    Browse the repository at this point in the history

Commits on Jan 27, 2026

  1. chore(deps): update actions/checkout action to v6.0.2 (#30935)

    This PR contains the following updates:
    
    | Package | Type | Update | Change |
    |---|---|---|---|
    | [actions/checkout](https://redirect.github.com/actions/checkout) |
    action | patch | `v6.0.1` → `v6.0.2` |
    
    ---
    
    ### Release Notes
    
    <details>
    <summary>actions/checkout (actions/checkout)</summary>
    
    ###
    [`v6.0.2`](https://redirect.github.com/actions/checkout/blob/HEAD/CHANGELOG.md#v602)
    
    [Compare
    Source](https://redirect.github.com/actions/checkout/compare/v6.0.1...v6.0.2)
    
    - Fix tag handling: preserve annotations and explicit fetch-tags by
    [@&#8203;ericsciple](https://redirect.github.com/ericsciple) in
    [#&#8203;2356](https://redirect.github.com/actions/checkout/pull/2356)
    
    </details>
    
    ---
    
    ### Configuration
    
    📅 **Schedule**: Branch creation - "every weekday before 11am" (UTC),
    Automerge - At any time (no schedule defined).
    
    🚦 **Automerge**: Disabled by config. Please merge this manually once you
    are satisfied.
    
    ♻ **Rebasing**: Never, or you tick the rebase/retry checkbox.
    
    🔕 **Ignore**: Close this PR and you won't be reminded about this update
    again.
    
    ---
    
    - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
    this box
    
    ---
    
    This PR was generated by [Mend Renovate](https://mend.io/renovate/).
    View the [repository job
    log](https://developer.mend.io/github/ionic-team/ionic-framework).
    
    <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi44NS4xIiwidXBkYXRlZEluVmVyIjoiNDIuODUuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->
    
    Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
    renovate[bot] authored Jan 27, 2026
    Configuration menu
    Copy the full SHA
    364face View commit details
    Browse the repository at this point in the history
  2. chore(ci): persist updates to core/package.json in stencil nightly bu…

    …ild (#30937)
    
    <!-- Please do not submit updates to dependencies unless it fixes an
    issue. -->
    
    <!-- Please try to limit your pull request to one type (bugfix, feature,
    etc). Submit multiple pull requests if needed. -->
    
    ## What is the current behavior?
    <!-- Please describe the current behavior that you are modifying. -->
    The Stencil Nightly Build workflow tests Ionic with the latest nightly
    build of Stencil. The first step of the workflow updates Stencil, builds
    Ionic core, and uploads the build files. Later steps download these
    build files. Core's updated package.json is not uploaded with the build
    files, so later steps are installing an old Stencil version, leading to
    conflicts.
    
    ## What is the new behavior?
    <!-- Please describe the behavior or changes that are being added by
    this PR. -->
    Add core's package.json to the artifact upload. This will make all later
    steps use the correct Stencil version.
    
    Seven of the tests run `git diff` to ensure tests did not cause changes
    in tracked files. Core's package.json would register as a change, so a
    new step reverts package.json before running `git diff`.
    
    ## Does this introduce a breaking change?
    
    - [ ] Yes
    - [X] No
    
    <!--
      If this introduces a breaking change:
    1. Describe the impact and migration path for existing applications
    below.
      2. Update the BREAKING.md file with the breaking change.
    3. Add "BREAKING CHANGE: [...]" to the commit description when merging.
    See
    https://github.com/ionic-team/ionic-framework/blob/main/docs/CONTRIBUTING.md#footer
    for more information.
    -->
    
    
    ## Other information
    
    <!-- Any other information that is important to this PR such as
    screenshots of how the component looks before and after the change. -->
    OS-jacobbell authored Jan 27, 2026
    Configuration menu
    Copy the full SHA
    be14dc4 View commit details
    Browse the repository at this point in the history

Commits on Jan 30, 2026

  1. chore(deps): update dependency @capacitor/core to v8.0.2 (#30938)

    This PR contains the following updates:
    
    | Package | Change |
    [Age](https://docs.renovatebot.com/merge-confidence/) |
    [Confidence](https://docs.renovatebot.com/merge-confidence/) |
    |---|---|---|---|
    | [@capacitor/core](https://capacitorjs.com)
    ([source](https://redirect.github.com/ionic-team/capacitor)) | [`8.0.1`
    →
    `8.0.2`](https://renovatebot.com/diffs/npm/@capacitor%2fcore/8.0.1/8.0.2)
    |
    ![age](https://developer.mend.io/api/mc/badges/age/npm/@capacitor%2fcore/8.0.2?slim=true)
    |
    ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capacitor%2fcore/8.0.1/8.0.2?slim=true)
    |
    
    ---
    
    ### Release Notes
    
    <details>
    <summary>ionic-team/capacitor (@&#8203;capacitor/core)</summary>
    
    ###
    [`v8.0.2`](https://redirect.github.com/ionic-team/capacitor/blob/HEAD/CHANGELOG.md#802-2026-01-27)
    
    [Compare
    Source](https://redirect.github.com/ionic-team/capacitor/compare/8.0.1...8.0.2)
    
    ##### Bug Fixes
    
    - **android:** AGP 9.0 no longer supports `proguard-android.txt`
    ([#&#8203;8315](https://redirect.github.com/ionic-team/capacitor/issues/8315))
    ([dcc76c3](https://redirect.github.com/ionic-team/capacitor/commit/dcc76c37508a9b71fb36d95707748c2dd115cf52))
    - **cli:** Update tar package
    ([#&#8203;8311](https://redirect.github.com/ionic-team/capacitor/issues/8311))
    ([0969c5c](https://redirect.github.com/ionic-team/capacitor/commit/0969c5cd0b16cf23d2489a85a3b8fa1bee2ebf3b))
    - **core:** make SystemBars hide and show options optional
    ([#&#8203;8305](https://redirect.github.com/ionic-team/capacitor/issues/8305))
    ([95dc7d8](https://redirect.github.com/ionic-team/capacitor/commit/95dc7d8ace3aabdda7e325c4a8ef7d1432ad37e9))
    - **SystemBars:** get correct style on handleOnConfigurationChanged
    ([#&#8203;8295](https://redirect.github.com/ionic-team/capacitor/issues/8295))
    ([2a66b44](https://redirect.github.com/ionic-team/capacitor/commit/2a66b44915895f971e4a26a8612798aa2f95ea11))
    - **SystemBars:** Set window background color according to theme
    ([#&#8203;8306](https://redirect.github.com/ionic-team/capacitor/issues/8306))
    ([6037e38](https://redirect.github.com/ionic-team/capacitor/commit/6037e3836ec24c9ddf26e74e5fbec20ab506adfd))
    - **SystemBars:** Skipping margin manipulation when on a fixed WebView
    ([#&#8203;8309](https://redirect.github.com/ionic-team/capacitor/issues/8309))
    ([53c33b6](https://redirect.github.com/ionic-team/capacitor/commit/53c33b614218bf635322fbdf9a38038a7964e3d4))
    
    </details>
    
    ---
    
    ### Configuration
    
    📅 **Schedule**: Branch creation - "every weekday before 11am" (UTC),
    Automerge - At any time (no schedule defined).
    
    🚦 **Automerge**: Disabled by config. Please merge this manually once you
    are satisfied.
    
    ♻ **Rebasing**: Never, or you tick the rebase/retry checkbox.
    
    🔕 **Ignore**: Close this PR and you won't be reminded about this update
    again.
    
    ---
    
    - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
    this box
    
    ---
    
    This PR was generated by [Mend Renovate](https://mend.io/renovate/).
    View the [repository job
    log](https://developer.mend.io/github/ionic-team/ionic-framework).
    
    <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi45Mi4xIiwidXBkYXRlZEluVmVyIjoiNDIuOTIuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->
    
    Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
    renovate[bot] authored Jan 30, 2026
    Configuration menu
    Copy the full SHA
    893d523 View commit details
    Browse the repository at this point in the history

Commits on Feb 3, 2026

  1. chore(scripts): remove no longer used test.e2e.script (#30943)

    Co-authored-by: Brandy Smith <6577830+brandyscarney@users.noreply.github.com>
    brandyscarney and brandyscarney authored Feb 3, 2026
    Configuration menu
    Copy the full SHA
    cc75ff4 View commit details
    Browse the repository at this point in the history

Commits on Feb 12, 2026

  1. chore(deps): update dependency @capacitor/core to v8.1.0 (#30953)

    This PR contains the following updates:
    
    | Package | Change |
    [Age](https://docs.renovatebot.com/merge-confidence/) |
    [Confidence](https://docs.renovatebot.com/merge-confidence/) |
    |---|---|---|---|
    | [@capacitor/core](https://capacitorjs.com)
    ([source](https://redirect.github.com/ionic-team/capacitor)) | [`8.0.2`
    →
    `8.1.0`](https://renovatebot.com/diffs/npm/@capacitor%2fcore/8.0.2/8.1.0)
    |
    ![age](https://developer.mend.io/api/mc/badges/age/npm/@capacitor%2fcore/8.1.0?slim=true)
    |
    ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capacitor%2fcore/8.0.2/8.1.0?slim=true)
    |
    
    ---
    
    ### Release Notes
    
    <details>
    <summary>ionic-team/capacitor (@&#8203;capacitor/core)</summary>
    
    ###
    [`v8.1.0`](https://redirect.github.com/ionic-team/capacitor/blob/HEAD/CHANGELOG.md#810-2026-02-11)
    
    [Compare
    Source](https://redirect.github.com/ionic-team/capacitor/compare/8.0.2...8.1.0)
    
    ##### Bug Fixes
    
    - **cookies:** only send expires param on web if a date is set
    ([b10cd7f](https://redirect.github.com/ionic-team/capacitor/commit/b10cd7ff15b010a76802374214f4e0cbd04abdab))
    
    ##### Features
    
    - **cli:** Add packageManager to iOS config
    ([#&#8203;8321](https://redirect.github.com/ionic-team/capacitor/issues/8321))
    ([a125498](https://redirect.github.com/ionic-team/capacitor/commit/a1254983bbb9dcb273d93f3c5f639b792e516406))
    
    ##### Reverts
    
    - revert version bump from
    [#&#8203;8319](https://redirect.github.com/ionic-team/capacitor/issues/8319)
    and
    [#&#8203;8320](https://redirect.github.com/ionic-team/capacitor/issues/8320)
    ([a48ebb6](https://redirect.github.com/ionic-team/capacitor/commit/a48ebb622ea4ebe92927bf1756a4d8ac6012884b))
    
    ####
    [8.0.2](https://redirect.github.com/ionic-team/capacitor/compare/8.0.1...8.0.2)
    (2026-01-27)
    
    ##### Bug Fixes
    
    - **android:** AGP 9.0 no longer supports `proguard-android.txt`
    ([#&#8203;8315](https://redirect.github.com/ionic-team/capacitor/issues/8315))
    ([dcc76c3](https://redirect.github.com/ionic-team/capacitor/commit/dcc76c37508a9b71fb36d95707748c2dd115cf52))
    - **cli:** Update tar package
    ([#&#8203;8311](https://redirect.github.com/ionic-team/capacitor/issues/8311))
    ([0969c5c](https://redirect.github.com/ionic-team/capacitor/commit/0969c5cd0b16cf23d2489a85a3b8fa1bee2ebf3b))
    - **core:** make SystemBars hide and show options optional
    ([#&#8203;8305](https://redirect.github.com/ionic-team/capacitor/issues/8305))
    ([95dc7d8](https://redirect.github.com/ionic-team/capacitor/commit/95dc7d8ace3aabdda7e325c4a8ef7d1432ad37e9))
    - **SystemBars:** get correct style on handleOnConfigurationChanged
    ([#&#8203;8295](https://redirect.github.com/ionic-team/capacitor/issues/8295))
    ([2a66b44](https://redirect.github.com/ionic-team/capacitor/commit/2a66b44915895f971e4a26a8612798aa2f95ea11))
    - **SystemBars:** Set window background color according to theme
    ([#&#8203;8306](https://redirect.github.com/ionic-team/capacitor/issues/8306))
    ([6037e38](https://redirect.github.com/ionic-team/capacitor/commit/6037e3836ec24c9ddf26e74e5fbec20ab506adfd))
    - **SystemBars:** Skipping margin manipulation when on a fixed WebView
    ([#&#8203;8309](https://redirect.github.com/ionic-team/capacitor/issues/8309))
    ([53c33b6](https://redirect.github.com/ionic-team/capacitor/commit/53c33b614218bf635322fbdf9a38038a7964e3d4))
    
    ####
    [8.0.1](https://redirect.github.com/ionic-team/capacitor/compare/8.0.0...8.0.1)
    (2026-01-13)
    
    ##### Bug Fixes
    
    - **android:** Remove calculated bottom inset if keyboard is visible
    ([#&#8203;8280](https://redirect.github.com/ionic-team/capacitor/issues/8280))
    ([196b642](https://redirect.github.com/ionic-team/capacitor/commit/196b642236d293a5012e3c307fcd942766e56cce))
    - **cli:** Support wireless iOS devices in `cap run`
    ([#&#8203;8301](https://redirect.github.com/ionic-team/capacitor/issues/8301))
    ([dcb368c](https://redirect.github.com/ionic-team/capacitor/commit/dcb368c33555487f1b6f46a6d8e30736bdd78955))
    - **cli:** use latest native-run
    ([#&#8203;8296](https://redirect.github.com/ionic-team/capacitor/issues/8296))
    ([121d830](https://redirect.github.com/ionic-team/capacitor/commit/121d83013f39e25009121533a2c3ad86e428d6b2))
    
    </details>
    
    ---
    
    ### Configuration
    
    📅 **Schedule**: Branch creation - "every weekday before 11am" (UTC),
    Automerge - At any time (no schedule defined).
    
    🚦 **Automerge**: Disabled by config. Please merge this manually once you
    are satisfied.
    
    ♻ **Rebasing**: Never, or you tick the rebase/retry checkbox.
    
    🔕 **Ignore**: Close this PR and you won't be reminded about this update
    again.
    
    ---
    
    - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
    this box
    
    ---
    
    This PR was generated by [Mend Renovate](https://mend.io/renovate/).
    View the [repository job
    log](https://developer.mend.io/github/ionic-team/ionic-framework).
    
    <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi45Ny4wIiwidXBkYXRlZEluVmVyIjoiNDIuOTcuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->
    
    Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
    renovate[bot] authored Feb 12, 2026
    Configuration menu
    Copy the full SHA
    a1fa50b View commit details
    Browse the repository at this point in the history

Commits on Feb 13, 2026

  1. chore(deps): update dependency @capacitor/status-bar to v8.0.1 (#30954)

    This PR contains the following updates:
    
    | Package | Change |
    [Age](https://docs.renovatebot.com/merge-confidence/) |
    [Confidence](https://docs.renovatebot.com/merge-confidence/) |
    |---|---|---|---|
    |
    [@capacitor/status-bar](https://redirect.github.com/ionic-team/capacitor-plugins)
    | [`8.0.0` →
    `8.0.1`](https://renovatebot.com/diffs/npm/@capacitor%2fstatus-bar/8.0.0/8.0.1)
    |
    ![age](https://developer.mend.io/api/mc/badges/age/npm/@capacitor%2fstatus-bar/8.0.1?slim=true)
    |
    ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capacitor%2fstatus-bar/8.0.0/8.0.1?slim=true)
    |
    
    ---
    
    ### Release Notes
    
    <details>
    <summary>ionic-team/capacitor-plugins
    (@&#8203;capacitor/status-bar)</summary>
    
    ###
    [`v8.0.1`](https://redirect.github.com/ionic-team/capacitor-plugins/compare/@capacitor/splash-screen@8.0.0...bf4fe8c9ace79237c048c9b5ee0ab7455042bc86)
    
    [Compare
    Source](https://redirect.github.com/ionic-team/capacitor-plugins/compare/@capacitor/status-bar@8.0.0...@capacitor/status-bar@8.0.1)
    
    </details>
    
    ---
    
    ### Configuration
    
    📅 **Schedule**: Branch creation - "every weekday before 11am" (UTC),
    Automerge - At any time (no schedule defined).
    
    🚦 **Automerge**: Disabled by config. Please merge this manually once you
    are satisfied.
    
    ♻ **Rebasing**: Never, or you tick the rebase/retry checkbox.
    
    🔕 **Ignore**: Close this PR and you won't be reminded about this update
    again.
    
    ---
    
    - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
    this box
    
    ---
    
    This PR was generated by [Mend Renovate](https://mend.io/renovate/).
    View the [repository job
    log](https://developer.mend.io/github/ionic-team/ionic-framework).
    
    <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My44LjUiLCJ1cGRhdGVkSW5WZXIiOiI0My44LjUiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbXX0=-->
    
    Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
    renovate[bot] authored Feb 13, 2026
    Configuration menu
    Copy the full SHA
    c8a65dc View commit details
    Browse the repository at this point in the history
  2. fix(modal, popover): respect safe area insets on popovers and modals (#…

    …30949)
    
    Issue number: resolves #28411
    
    ---------
    
    <!-- Please do not submit updates to dependencies unless it fixes an
    issue. -->
    
    <!-- Please try to limit your pull request to one type (bugfix, feature,
    etc). Submit multiple pull requests if needed. -->
    
    ## What is the current behavior?
    When a modal is displayed on tablet-sized screens (>= 768px × >= 600px),
    the `--ion-safe-area-*` CSS variables are explicitly set to 0px. This
    was intended for inset modals that don't touch screen edges, but it
    breaks safe area handling on newer iPads with Face ID/home indicators,
    causing content to overlap with system UI elements.
    
    ## What is the new behavior?
    Modals now dynamically handle safe-area insets based on their type and
    position. This has to be done because modals that don't touch the edges
    cannot have a safe area applied (because it will add unnecessary
    padding), but modals that do touch the edges need to apply safe area
    correctly or the edges will be obstructed by whatever is in the safe
    area.
    
    ## Does this introduce a breaking change?
    
    - [ ] Yes
    - [X] No
    
    <!--
      If this introduces a breaking change:
    1. Describe the impact and migration path for existing applications
    below.
      2. Update the BREAKING.md file with the breaking change.
    3. Add "BREAKING CHANGE: [...]" to the commit description when merging.
    See
    https://github.com/ionic-team/ionic-framework/blob/main/docs/CONTRIBUTING.md#footer
    for more information.
    -->
    
    
    ## Other information
    
    <!-- Any other information that is important to this PR such as
    screenshots of how the component looks before and after the change. -->
    
    [Modals test
    page](https://ionic-framework-git-fw-6830-2-ionic1.vercel.app/src/components/modal/test/safe-area/index.html)
    [Popovers test
    page](https://ionic-framework-git-fw-6830-2-ionic1.vercel.app/src/components/popover/test/safe-area/index.html)
    
    Current dev build:
    ```
    8.7.18-dev.11770674094.18396f54
    ```
    
    ---------
    
    Co-authored-by: ionitron <hi@ionicframework.com>
    ShaneK and Ionitron authored Feb 13, 2026
    Configuration menu
    Copy the full SHA
    6490797 View commit details
    Browse the repository at this point in the history

Commits on Feb 17, 2026

  1. fix(nav-controller): reset direction state when navigation is canceled (

    #30955)
    
    Issue number: resolves internal
    
    ---------
    
    <!-- Please do not submit updates to dependencies unless it fixes an
    issue. -->
    
    <!-- Please try to limit your pull request to one type (bugfix, feature,
    etc). Submit multiple pull requests if needed. -->
    
    ## What is the current behavior?
    When a CanDeactivate guard cancels a back navigation (like when it's
    initiated by ion-back-button), the NavController’s explicit direction
    state (back) is never consumed because consumeTransition() is not called
    for canceled navigations. This stale direction leaks into the next
    forward navigation, causing it to be incorrectly treated as a back/root
    navigation.
    
    ## What is the new behavior?
    The NavController now listens for NavigationCancel and NavigationError
    router events and resets direction, animated, and animationBuilder back
    to their defaults. This ensures stale state from a canceled navigation
    does not affect subsequent navigations. The reset puts the NavController
    into 'auto' mode, which correctly uses guessDirection for the next
    navigation.
    
    ## Does this introduce a breaking change?
    
    - [ ] Yes
    - [X] No
    
    <!--
      If this introduces a breaking change:
    1. Describe the impact and migration path for existing applications
    below.
      2. Update the BREAKING.md file with the breaking change.
    3. Add "BREAKING CHANGE: [...]" to the commit description when merging.
    See
    https://github.com/ionic-team/ionic-framework/blob/main/docs/CONTRIBUTING.md#footer
    for more information.
    -->
    
    
    ## Other information
    
    Current dev build:
    ```
    8.7.18-dev.11771020096.1ca03a6d
    ```
    ShaneK authored Feb 17, 2026
    Configuration menu
    Copy the full SHA
    53172d1 View commit details
    Browse the repository at this point in the history

Commits on Feb 18, 2026

  1. fix(many): clear timeouts (#30851)

    Issue number: resolves #30860
    
    ## What is the current behavior?
    We have flaky tests in an ionic angular project that root cause are not
    cleaned up timeouts.
    I commented out the timeout in the searchbar componentWillLoad method.
    and after several runs no flaky tests at all.
    
    My guess -> test runs faster than the 300ms it takes til the timeout
    runs. Everything is cleaned up, but not the ionic timeouts (i think i
    saw something similar in other components)
    
    ## What is the new behavior?
    Timeouts are cleaned on disconnect.
    
    ## Does this introduce a breaking change?
    
    - [ ] Yes
    - [x] No
    
    ## Other information
    
    Testrunner is vitest + angular 20 and latest ionic version 8.x
    KillerCodeMonkey authored Feb 18, 2026
    Configuration menu
    Copy the full SHA
    70b1237 View commit details
    Browse the repository at this point in the history

Commits on Feb 19, 2026

  1. fix(radio-group): prevent DOMException and NotFoundError when filteri…

    …ng radios (#30958)
    
    resolves #30279 resolves #30359
    
    ## What is the current behavior?
    While Ionic's `stencil.config.ts` sets `experimentalSlotFixes: true`,
    the fixes never get applied at runtime. Ionic is using an external
    runtime, so Ionic components import `defineCustomElement` from
    `@stencil/core/internal/client` at runtime and this code has no
    awareness of the project's stencil configuration.
    
    This leads to a `NotFoundError` (Failed to execute 'removeChild' on
    'Node') when filtering or dynamically removing radios in an
    `ion-radio-group`. The error occurs because `ion-radio-group` wraps its
    slotted content in an internal `<div>`.
    
    ## What is the new behavior?
    By setting `externalRuntime: false`, Stencil generates a
    project-specific file with `defineCustomElement` that components import.
    This file has the project's build settings baked in, correctly applying
    slot fixes.
    
    Additionally, the internal wrapper `<div>` around the slotted content in
    `ion-radio-group` is removed. With slot fixes correctly applied and the
    wrapper removed, radios can be filtered or dynamically removed without
    triggering `NotFoundError` or `DOMExceptions`.
    
    ## Does this introduce a breaking change?
    
    - [ ] Yes
    - [X] No
    
    ## Other information
    External Runtime is enabled by default and designed for projects that
    import Stencil components from multiple sources. This is flawed because
    those components will not be running with the runtime settings for which
    they were made.
    OS-jacobbell authored Feb 19, 2026
    Configuration menu
    Copy the full SHA
    682a17e View commit details
    Browse the repository at this point in the history

Commits on Feb 23, 2026

  1. fix(datetime): stretch ion-buttons to fill space for ios (#30963)

    Issue number: N/A
    
    ---------
    
    <!-- Please do not submit updates to dependencies unless it fixes an
    issue. -->
    
    <!-- Please try to limit your pull request to one type (bugfix, feature,
    etc). Submit multiple pull requests if needed. -->
    
    ## What is the current behavior?
    <!-- Please describe the current behavior that you are modifying. -->
    
    The `iOS` datetime buttons do not stretch to its available height. This
    can lead to style inconsistencies with `md`.
    
    <img width="926" height="444" alt="Screenshot 2026-02-23 at 10 35 10 AM"
    src="https://github.com/user-attachments/assets/79835a34-5039-4ed8-8ce8-fbb696258052"
    />
    
    
    ## What is the new behavior?
    <!-- Please describe the behavior or changes that are being added by
    this PR. -->
    
    - The buttons fill in the available height.
    
    <img width="359" height="362" alt="Screenshot 2026-02-23 at 10 37 18 AM"
    src="https://github.com/user-attachments/assets/362410eb-ec0b-46c3-87c5-e92af659830d"
    />
    
    - The arrows also line up with each other.
    
    <img width="806" height="590" alt="Screenshot 2026-02-23 at 10 30 17 AM"
    src="https://github.com/user-attachments/assets/31ab043c-858e-498b-a947-1f08bb6fb7a1"
    />
    
    
    ## Does this introduce a breaking change?
    
    - [ ] Yes
    - [x] No
    
    <!--
      If this introduces a breaking change:
    1. Describe the impact and migration path for existing applications
    below.
      2. Update the BREAKING.md file with the breaking change.
    3. Add "BREAKING CHANGE: [...]" to the commit description when merging.
    See
    https://github.com/ionic-team/ionic-framework/blob/main/docs/CONTRIBUTING.md#footer
    for more information.
    -->
    
    
    ## Other information
    
    <!-- Any other information that is important to this PR such as
    screenshots of how the component looks before and after the change. -->
    
    
    [Preview](https://ionic-framework-git-datetime-ios-buttons-ionic1.vercel.app/src/components/datetime/test/basic/?ionic%3Amode=ios)
    
    ---------
    
    Co-authored-by: Brandy Smith <6577830+brandyscarney@users.noreply.github.com>
    thetaPC and brandyscarney authored Feb 23, 2026
    Configuration menu
    Copy the full SHA
    d46b0b1 View commit details
    Browse the repository at this point in the history

Commits on Feb 25, 2026

  1. chore(deps): update capacitor to v8.0.1 (#30970)

    This PR contains the following updates:
    
    | Package | Change |
    [Age](https://docs.renovatebot.com/merge-confidence/) |
    [Confidence](https://docs.renovatebot.com/merge-confidence/) |
    |---|---|---|---|
    |
    [@capacitor/haptics](https://redirect.github.com/ionic-team/capacitor-haptics)
    | [`8.0.0` →
    `8.0.1`](https://renovatebot.com/diffs/npm/@capacitor%2fhaptics/8.0.0/8.0.1)
    |
    ![age](https://developer.mend.io/api/mc/badges/age/npm/@capacitor%2fhaptics/8.0.1?slim=true)
    |
    ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capacitor%2fhaptics/8.0.0/8.0.1?slim=true)
    |
    |
    [@capacitor/keyboard](https://redirect.github.com/ionic-team/capacitor-keyboard)
    | [`8.0.0` →
    `8.0.1`](https://renovatebot.com/diffs/npm/@capacitor%2fkeyboard/8.0.0/8.0.1)
    |
    ![age](https://developer.mend.io/api/mc/badges/age/npm/@capacitor%2fkeyboard/8.0.1?slim=true)
    |
    ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capacitor%2fkeyboard/8.0.0/8.0.1?slim=true)
    |
    
    ---
    
    ### Release Notes
    
    <details>
    <summary>ionic-team/capacitor-haptics
    (@&#8203;capacitor/haptics)</summary>
    
    ###
    [`v8.0.1`](https://redirect.github.com/ionic-team/capacitor-haptics/blob/HEAD/CHANGELOG.md#801-2026-02-24)
    
    [Compare
    Source](https://redirect.github.com/ionic-team/capacitor-haptics/compare/v8.0.0...v8.0.1)
    
    ##### Bug Fixes
    
    - **android:** AGP 9.0 no longer supporting `proguard-android.txt`
    ([#&#8203;21](https://redirect.github.com/ionic-team/capacitor-haptics/issues/21))
    ([797ccbe](https://redirect.github.com/ionic-team/capacitor-haptics/commit/797ccbe5b89b68ea75838d9ed1106a1c64e84e01))
    
    </details>
    
    <details>
    <summary>ionic-team/capacitor-keyboard
    (@&#8203;capacitor/keyboard)</summary>
    
    ###
    [`v8.0.1`](https://redirect.github.com/ionic-team/capacitor-keyboard/blob/HEAD/CHANGELOG.md#801-2026-02-24)
    
    [Compare
    Source](https://redirect.github.com/ionic-team/capacitor-keyboard/compare/v8.0.0...v8.0.1)
    
    ##### Bug Fixes
    
    - **android:** AGP 9.0 no longer supporting `proguard-android.txt`
    ([#&#8203;47](https://redirect.github.com/ionic-team/capacitor-keyboard/issues/47))
    ([e9b1ad9](https://redirect.github.com/ionic-team/capacitor-keyboard/commit/e9b1ad9b96a3405da99224bf0df78389cfeba561))
    
    </details>
    
    ---
    
    ### Configuration
    
    📅 **Schedule**: Branch creation - "every weekday before 11am" (UTC),
    Automerge - At any time (no schedule defined).
    
    🚦 **Automerge**: Disabled by config. Please merge this manually once you
    are satisfied.
    
    ♻ **Rebasing**: Never, or you tick the rebase/retry checkbox.
    
    🔕 **Ignore**: Close this PR and you won't be reminded about these
    updates again.
    
    ---
    
    - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
    this box
    
    ---
    
    This PR was generated by [Mend Renovate](https://mend.io/renovate/).
    View the [repository job
    log](https://developer.mend.io/github/ionic-team/ionic-framework).
    
    <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4zMi4wIiwidXBkYXRlZEluVmVyIjoiNDMuMzIuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->
    
    Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
    renovate[bot] authored Feb 25, 2026
    Configuration menu
    Copy the full SHA
    0c71570 View commit details
    Browse the repository at this point in the history
  2. v8.7.18

    Ionitron committed Feb 25, 2026
    Configuration menu
    Copy the full SHA
    f68ce94 View commit details
    Browse the repository at this point in the history
Loading