feat(passkeys_doctor): widen package_info_plus to >=9.0.0 <11.0.0 (closes #240)#241
Conversation
Closes corbado#240. Bumps passkeys_doctor 1.3.1 → 1.4.0 with `package_info_plus` constraint widened from `^9.0.0` to `>=9.0.0 <11.0.0`. The only call site is `_getBundleId` in `lib/src/passkeys_doctor.dart`, which reads `PackageInfo.fromPlatform().packageName`. That getter is API-stable across the 9 → 10 bump — the 10.0.0 breaking changes are entirely in the Windows platform implementation (move to a win32-6 method channel) and do not affect the public API. Why this matters: package_info_plus 9 depends on `win32 ^5.5.3`, while every other plugin that has bumped recently (share_plus 13, flutter_secure_storage_windows 4.2.x, plus the `win32 6.2.0` release itself) depends on `win32 ^6.0.1`. With passkeys_doctor pinned to pip ^9 the entire downstream chain is held back on win32 5, which blocks Windows desktop apps from picking up `CryptProtectData` / `LocalFree` typing fixes that landed in win32 6. Verified locally: - `flutter pub get` resolves cleanly, now pulls in `win32 6.2.0` - `flutter analyze` passes (no issues found) CHANGELOG entry added under 1.4.0. The parent `passkeys` package already accepts `passkeys_doctor: ^1.3.0` (i.e. <2.0.0), so no version bump is required there once 1.4.0 ships to pub.
|
Thanks for putting this together. We independently confirmed it works: forcing |
|
Thank you for confirming, will try to get it out shortly. @gbpnkans @TimGustafson |
|
Thanks for maintaining the package. I still do not understand why software development is still slow in this era ? What is blocking to merge ? Been on this stage for more than 3 weeks. |
|
Sorry for the delay @gbpnkans you are right, we just released the changes. |
Summary
Bumps
passkeys_doctor1.3.1 → 1.4.0with thepackage_info_plusconstraint widened from^9.0.0to>=9.0.0 <11.0.0. This is the smallest possible change that unblocks the entire downstreamwin32 ^6chain (share_plus 13,flutter_secure_storage_windows 4.2.x,package_info_plus 10) for apps that depend onpasskeys.Closes #240.
Why this is API-safe
passkeys_doctorusespackage_info_plusin exactly one place:PackageInfo.fromPlatform()and thepackageNamegetter have been stable since the 1.x line. The breaking changes inpackage_info_plus 10.0.0are entirely in the Windows platform implementation (moves to awin32 ^6method channel) and do not touch the public API.Keeping the lower bound at
9.0.0so existing consumers onpackage_info_plus 9.xare not forced to upgrade.Why this matters downstream
package_info_plus 9depends onwin32 ^5.5.3. Withpasskeys_doctorpinned topackage_info_plus ^9.0.0, every Flutter app that depends onpasskeysis held onwin32 5.x. Recent ecosystem releases —share_plus 13.1.0,flutter_secure_storage_windows 4.2.x, the actualwin32 6.2.0release — all requirewin32 ^6.0.1. Net effect: any app usingpasskeyscan't pick up theCryptProtectData/LocalFreetyping fixes that landed inwin32 6for Windows desktop.After this change, the parent
passkeyspackage already acceptspasskeys_doctor: ^1.3.0(i.e.<2.0.0), so once1.4.0ships to pub.dev no version bump is needed in thepasskeyspackage itself.Verified locally
flutter pub getinpackages/passkeys/passkeys_doctorresolves cleanly and now pulls inwin32 6.2.0transitively.flutter analyzeinpackages/passkeys/passkeys_doctor→No issues found.Changes
packages/passkeys/passkeys_doctor/pubspec.yaml: version + constraintpackages/passkeys/passkeys_doctor/CHANGELOG.md:1.4.0entryTest plan
flutter pub getresolves with widened constraintflutter analyzeclean🤖 Generated with Claude Code