chore(deps)!: bump dep floors, widen plus-plugin majors, migrate file_picker 11#2644
chore(deps)!: bump dep floors, widen plus-plugin majors, migrate file_picker 11#2644xsahil03x wants to merge 3 commits into
Conversation
… plus-plugin majors - llc: bump `jose` floor to ^0.3.5+1 (CVE-2026-34240 — untrusted JWK header in signature verification; SDK only uses the unverified decoder, so not directly exploitable, but the floor bump ensures consumers resolve to a patched version) - ui: bump `file_picker` to ^11.0.0 and migrate from `FilePicker.platform.X()` to static `FilePicker.X()`; resolves #2599 - core: widen `device_info_plus` to `>=12.4.0 <14.0.0`, `package_info_plus` to `>=9.0.1 <11.0.0`, `connectivity_plus` to `>=7.1.1 <8.0.0` - ui: widen `share_plus` to `>=12.0.2 <14.0.0` - all: raise minimum versions of bundled dependencies to their resolved versions - `freezed_annotation` floor intentionally kept at `>=2.4.1` to avoid forcing consumers to migrate to freezed 3.x Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Raises minimum versions of dev-only dependencies to their current resolved versions, all compatible with our Flutter 3.38.1 / Dart 3.10 floor: - `build_runner` ^2.4.9 → ^2.15.0 - `connectivity_plus_platform_interface` ^2.0.0 → ^2.1.0 - `drift_dev` ^2.28.0 → ^2.33.0 - `fake_async` ^1.3.1 → ^1.3.3 - `faker_dart` ^0.2.1 → ^0.2.3 - `flutter_launcher_icons` ^0.14.2 → ^0.14.4 - `json_serializable` ^6.7.1 → ^6.13.2 - `mocktail` ^1.0.0 → ^1.0.5 - `path` (dev) ^1.8.3 → ^1.9.1 - `path_provider_platform_interface` ^2.0.0 → ^2.1.2 - `plugin_platform_interface` ^2.0.0 → ^2.1.8 - `test` ^1.24.6 → ^1.31.1 - `theme_extensions_builder` ^7.2.0 → ^7.3.0 `freezed` constraint kept at `>=2.4.2 <4.0.0` to stay consistent with the runtime `freezed_annotation` range. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Regenerates `.g.dart` and `.freezed.dart` outputs after bumping `freezed`, `json_serializable`, `drift_dev`, and `build_runner` to their latest versions. - `.g.dart` (json_serializable 6.13.2): `toJson` now uses Dart's null-aware map element syntax (`'key': ?nullableExpr`) instead of the older `if (... case final v?) 'key': v` pattern. Behaviour is identical — null entries are omitted from the JSON output either way. - `.freezed.dart` (freezed 3.x): cosmetic formatting differences only; classes, mixins, copy-with implementations, and equality/hashCode are unchanged. - Drift DAO `.g.dart` (drift_dev 2.33): adds the new per-DAO Manager API (`channelDao.managers.channels.filter(...).get()` etc.) alongside the existing builder API. Purely additive; existing call sites are unaffected. - `drift_chat_database.g.dart`: heavy line-wrapping reformat from newer drift_dev; no schema, column, or constraint changes. No source `.dart` files were modified — only generated outputs. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## v10.0.0 #2644 +/- ##
========================================
Coverage 66.88% 66.88%
========================================
Files 410 410
Lines 24887 24887
========================================
Hits 16646 16646
Misses 8241 8241 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
| cached_network_image: ^3.4.1 | ||
| chewie: ^1.13.1 | ||
| collection: ^1.19.1 | ||
| connectivity_plus: ">=7.1.1 <8.0.0" |
There was a problem hiding this comment.
I would change this to a regular caret notation
| connectivity_plus: ">=7.1.1 <8.0.0" | |
| connectivity_plus: "^7.1.1" |
| cupertino_icons: ^1.0.3 | ||
| desktop_drop: '>=0.5.0 <0.8.0' | ||
| device_info_plus: '>=11.0.0 <13.0.0' | ||
| desktop_drop: '>=0.7.1 <0.8.0' |
There was a problem hiding this comment.
I would change this to a regular caret notation
| desktop_drop: '>=0.7.1 <0.8.0' | |
| desktop_drop: '^0.7.1' |
| jiffy: ^6.4.4 | ||
| jose: ^0.3.5+1 | ||
| json_annotation: ^4.11.0 | ||
| just_audio: ">=0.10.5 <0.11.0" |
There was a problem hiding this comment.
| just_audio: ">=0.10.5 <0.11.0" | |
| just_audio: "^0.10.5" |
| fake_async: ^1.3.3 | ||
| faker_dart: ^0.2.3 | ||
| flutter_launcher_icons: ^0.14.4 | ||
| freezed: ">=2.4.2 <4.0.0" |
There was a problem hiding this comment.
Maybe we can also increase the minimum of freezed to 3.0 now?
Summary
Three commits cleaning up the dep tree against the v10 floor (Flutter 3.38.1 / Dart 3.10):
180f03e86) — closes Unable to use latest Flutter packages alongside stream_chat_flutter #2599 and addresses CVE-2026-34240 injose.f5383197d) — raises floors of build/test tooling (build_runner,drift_dev,json_serializable,test,mocktail, etc.) to their current resolved versions.f10051914) —.g.dart/.freezed.dartfiles regenerated with the new tool versions.Breaking change
file_pickeris bumped from^10.1.2to^11.0.0. Consumers depending onfile_pickerdirectly must also upgrade past11.0.0, which replaces the instance-basedFilePicker.platform.*API with staticFilePicker.*methods. Internal callers instream_chat_flutterhave been migrated.Security
josefloor raised from^0.3.4to^0.3.5+1to address CVE-2026-34240 (untrusted JWK header accepted during signature verification). The SDK only usesJsonWebToken.unverifiedso it isn't directly exploitable, but the floor bump ensures consumers resolve to a patched version and SCA scanners stop flagging.Plus-plugin widenings (issue #2599 family)
device_info_plus>=11.0.0 <13.0.0>=12.4.0 <14.0.0package_info_plus>=8.3.0 <10.0.0>=9.0.1 <11.0.0share_plus>=11.0.0 <13.0.0>=12.0.2 <14.0.0The "breaking" 13.x / 10.x / 13.x releases of these
plus_pluginspackages were environment-only (win32 6.x + min Flutter/Dart bumps). The 13.1 / 10.1 / 13.1 patches lowered the SDK requirements back down to Flutter 3.38.1 / Dart 3.10 — fully compatible with our floor.Floor bumps to current resolved versions
Set the minimum constraint of every direct dep in our published packages to the version currently being resolved on our min Flutter (3.38.1). This prevents consumers from being pinned to ancient transitive versions and tightens our guarantees.
freezed_annotationfloor intentionally kept at>=2.4.1 <4.0.0to avoid forcing consumers offfreezed 2.x.Codegen regeneration
The bumped codegen tools (
freezed 3.x,json_serializable 6.13.x,drift_dev 2.33) produce different output:json_serializableswitched to Dart's null-aware map entry syntax ('key': ?nullableExpr) — same JSON wire format, verified empirically.freezed— cosmetic formatting differences only.drift_dev 2.33— heavy line-wrapping reformat of the database file (no schema/column/constraint changes), plus an additive per-DAOManager API(e.g.channelDao.managers.channels.filter(...).get()). The existing builder API call sites are unchanged.No source
.dartfiles were modified — only generated outputs.Test plan
flutter pub getresolves cleanly in a consumer app that depends on:device_info_plus ^13.0.0package_info_plus ^10.0.0share_plus ^13.0.0file_picker ^11.0.0file_pickerAPI migrated)share_plusfloor raised)🤖 Generated with Claude Code