Original release notes
Overview
What's New
- Support for client certificate authentication (mTLS) for self-hosted environments
- Your User ID is now visible in the Debug view with a one-tap copy button
Improvements
- Authenticator menu bar now displays correctly on iOS 26 when biometric unlock is enabled
Bug Fixes
- Fixed autofill occasionally closing when using long press
What's Changed
Community Highlight
- [PM-23409] feat: Add client certificate authentication (mTLS) support for self-hosted environments by @jalenfran in https://github.com/bitwarden/ios/pull/1720
- [PM-26292] chore: Remove unused strings by @mKoonrad in https://github.com/bitwarden/ios/pull/2003
:shipit: Feature Development
- [PM-33848] feat: Add dismissable Premium Upgrade banner to vault list by @andrebispo5 in https://github.com/bitwarden/ios/pull/2505
- [PM-26293] tool: Add scripts to delete duplicate Localizable.strings entries by @KatherineInCode in https://github.com/bitwarden/ios/pull/2412
- [PM-33849] feat: Add Premium Upgrade view by @andrebispo5 in https://github.com/bitwarden/ios/pull/2523
- [PM-34904] feat: Replace plans endpoint with premium plan endpoint by @andrebispo5 in https://github.com/bitwarden/ios/pull/2534
- [PM-26292] tool: Add script to delete unused Localizable.strings entries by @KatherineInCode in https://github.com/bitwarden/ios/pull/2464
- [PM-35126] feat: Add billing subscription endpoint by @andrebispo5 in https://github.com/bitwarden/ios/pull/2546
- [PM-13971] feature: Add user ID to DebugView by @morganzellers-bw in https://github.com/bitwarden/ios/pull/2529
- [PM-34897] feat: Premium plan screen by @andrebispo5 in https://github.com/bitwarden/ios/pull/2541
Bug fixes
- [PM-35040] fix: Prevent Authenticator lock overlay from being dismissed by @KatherineInCode in https://github.com/bitwarden/ios/pull/2537
- [PM-24195] fix: Pass userId to refreshToken and setTokens by @LRNcardozoWDF in https://github.com/bitwarden/ios/pull/2374
- [PM-35251] fix: Adjust presentation style to avoid Tab Bar issues in BWA by @KatherineInCode in https://github.com/bitwarden/ios/pull/2551
- [PM-35285] fix: Prevent StateService.isAuthenticated(userId:) from throwing if token doesn't exist in keychain by @matt-livefront in https://github.com/bitwarden/ios/pull/2553
Maintenance
- [PM-25832] chore: Remove cxp-export-mobile feature flag by @matt-livefront in https://github.com/bitwarden/ios/pull/2516
- Crowdin Pull by @bw-ghapp[bot] in https://github.com/bitwarden/ios/pull/2520
- [PM-34016] chore: Centralize logic around TOTP code generation authorization by @morganzellers-bw in https://github.com/bitwarden/ios/pull/2513
- [PM-33207] chore: Remove pm-19051-send-email-verification feature flag by @matt-livefront in https://github.com/bitwarden/ios/pull/2524
- [PM-33571] llm: Add requirements refinement and planning skills by @SaintPatrck in https://github.com/bitwarden/ios/pull/2445
- [deps]: Update actions/create-github-app-token action to v3 by @renovate[bot] in https://github.com/bitwarden/ios/pull/2476
- Crowdin Pull by @bw-ghapp[bot] in https://github.com/bitwarden/ios/pull/2531
- [PM-34009] chore: Create KeychainServiceFacade by @KatherineInCode in https://github.com/bitwarden/ios/pull/2507
Dependency Updates
- Update public suffix list by @github-actions[bot] in https://github.com/bitwarden/ios/pull/2521
- Update public suffix list by @github-actions[bot] in https://github.com/bitwarden/ios/pull/2532
Other
- [PM-33575] llm: Add delivery skills for preflight, commit, PR, and labeling by @SaintPatrck in https://github.com/bitwarden/ios/pull/2449
- [PM-33572] llm: Add implementing-ios-code skill with Swift templates by @SaintPatrck in https://github.com/bitwarden/ios/pull/2446
- [PM-33573] llm: Add testing-ios-code skill with examples and references by @SaintPatrck in https://github.com/bitwarden/ios/pull/2447
- [PM-33576] llm: Add orchestration command, agent, and skill index to CLAUDE.md by @SaintPatrck in https://github.com/bitwarden/ios/pull/2450
- [PM-34793] llm: Add ios-architect agent by @KatherineInCode in https://github.com/bitwarden/ios/pull/2525
- [PM-34811] llm: Fix simulator destination in build-test-verify skill by @KatherineInCode in https://github.com/bitwarden/ios/pull/2526
- QA-1654: Adding accessibilityIDs to FlightRecorderLogsView elements by @ifernandezdiaz in https://github.com/bitwarden/ios/pull/2542
New Contributors
- @jalenfran made their first contribution in https://github.com/bitwarden/ios/pull/1720
Full Changelog: https://github.com/bitwarden/ios/compare/v2026.4.0-bwpm...v2026.4.1-bwpm Builds Source: https://github.com/bitwarden/ios/actions/runs/24576670030


