Overview
What's New
- iOS now prompts you to enable Bitwarden as a credential provider directly from the app
- Organization policy changes take effect immediately
Improvements - Clearer labels for Send and vault buttons
- Browser extension imports handle profile switching and search without closing the screen
- More graceful TOTP edge case handling
- Better stability for login-with-device notifications
Bug Fixes - Archiving a vault item as org owner no longer shows a false error
- Declining an org transfer no longer creates a blank audit log entry
- Fixed a loop prompting repeated encryption setting updates
- Biometric unlock works correctly for keychain users with session timeout policies
- Fixed a crash when transferring items from the browser extension
What's Changed
Feature Development
- [PM-26177] feat: Wire up device auth key to autofill service by @iinuwa in #2300
- [PM-32575] feat: Update SSO cookies acquired try again dialog message by @fedemkr in #2409
- [PM-33355] feat: Sync when push notification policy changed is received by @andrebispo5 in #2442
- [PM-33846] feat: Premium upgrade feature flag by @andrebispo5 in #2461
- [PM-32662] feat: Improve item transfer UI by @fedemkr in #2468
- [PM-27595] feat: Improve autofill onboarding by @fedemkr in #2465
🐛 Bug fixes
- [PM-33252] fix: Fix update profile KDF values from User decryption options on sync by @fedemkr in #2413
- [PM-33230] fix: Remove error alert on known devices check by @fedemkr in #2414
- [PM-33231] fix: Dismiss keyboard on sync with browser view by @fedemkr in #2415
- [PM-33231] fix: Fix keyboard being shown on sync with browser from login screen by @fedemkr in #2429
- [PM-33412] fix: Fix CoreData threading violation in AuthenticatorBridgeKit by @KatherineInCode in #2433
- [PM-31722] fix: Prevent WatchService error when switching to locked account by @matt-livefront in #2427
- [BWA-198] fix: Retain TOTP code when streaming updates on item edit in PM by @KatherineInCode in #2410
- [PM-33370] fix: Fix [un]archive flow on missing cipher key case by @fedemkr in #2436
- [PM-31836] bug: Create Passkeys into MyItems by @andrebispo5 in #2406
- [PM-33231] fix: Fix keyboard flickering by applying fullscreen to the modal by @fedemkr in #2438
- [PM-33136] fix: Centralize TOTP key error handling to reduce Crashlytics noise by @matt-livefront in #2435
- [PM-31470] bug: Show migrate personal vault on unlock by @andrebispo5 in #2411
- [PM-29855] fix: Update accessibility label for option button in list rows by @matt-livefront in #2451
- [PM-33311] fix: Fix ViewController interactions in VaultCoordinator by @KatherineInCode in #2458
- [PM-31837] fix: Enforce policy session timeout action on Key connector by @fedemkr in #2441
- [PM-33557] fix: Remove "Why am I seeing this?" link button on Sync with browser view by @fedemkr in #2466
- [PM-32767] fix: Update localized strings for organization level Session Timeout Settings by @morganzellers-bw in #2459
- [PM-33914] fix: Remove org event to avoid blank log entry. by @morganzellers-bw in #2469
- [PM-33498] fix: Create a safePresent method to avoid VC presentation races by @KatherineInCode in #2428
- [PM-34062] [RC] fix: Fix dismiss sync with browser automatically by @fedemkr in #2486
- [PM-34062] fix: Increase wait time for dismiss on sync with browser by @fedemkr in #2493
⚙️ Maintenance
- [PM-26762] chore: Resolve MockHTTPClient concurrency warning by @matt-livefront in #2376
- Crowdin Pull by @bw-ghapp[bot] in #2418
- [PM-31722] chore: Add WatchService tests by @matt-livefront in #2416
- [PM-32221] chore: Add appcontext to crashlytics by @LRNcardozoWDF in #2399
- Crowdin Pull by @bw-ghapp[bot] in #2452
- [PM-33763] chore: Fix flaky unit tests by @matt-livefront in #2457
- [PM-33758] ci: Print summary when Tests fail by @vvolkgang in #2456
- [PM-18892] ci: Comment linked issues when a new GitHub Release is published by @vvolkgang in #2355
- llm: Update CODEOWNERS for Claude related files by @SaintPatrck in #2460
- Update CI badges in README.md by @djsmith85 in #2407
- [PM-33862] chore: Don't log to Crashlytics when receiving a login request for a logged out account by @matt-livefront in #2462
📦 Dependency Updates
- Update public suffix list by @github-actions[bot] in #2419
- Update public suffix list by @github-actions[bot] in #2453
🎨 Other
- [PM-30872] Enhance CLAUDE.md with comprehensive project configuration by @SaintPatrck in #2339
- [PM-33570] llm: Enhance reviewing-changes skill to multi-file structure by @SaintPatrck in #2443
Full Changelog: v2026.3.0-bwpm...v2026.3.1-bwpm
Builds Source: https://github.com/bitwarden/ios/actions/runs/23565719717