Commit 5606bfe
fix(mobile): pin phosphor_flutter to a fork that handles sealed IconData
phosphor_flutter 2.1.0 (the latest on pub.dev, May 2024) extends
Flutter's `IconData`, which 3.43+ sealed as `final`. Building against
Flutter 3.44 fails the kernel_snapshot Dart AOT step with:
phosphor_icon_data.dart:5:32: Error: The class 'IconData' can't be
extended outside of its library because it's a final class.
class PhosphorIconData extends IconData {
Upstream PR #62 turns PhosphorIconData into a typedef for IconData but
has been open with no maintainer response since May 2026, and the
package's last release is from May 2024 — effectively unmaintained.
Pin phosphor_flutter to the PR author's fork at a specific commit SHA
via dependency_overrides so the lockfile stays reproducible. None of
the removed classes (PhosphorFlatIconData, PhosphorDuotoneIconData)
are referenced by the app — only PhosphorIcon, PhosphorIconsDuotone,
and duotoneSecondaryColor, all of which the fork keeps API-compatible.
Drop the override when upstream publishes a fixed version (or when we
migrate to a maintained icon library).
phosphor-icons/flutter#61
phosphor-icons/flutter#62
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>1 parent 278ba50 commit 5606bfe
2 files changed
Lines changed: 20 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
763 | 763 | | |
764 | 764 | | |
765 | 765 | | |
766 | | - | |
767 | | - | |
768 | | - | |
769 | | - | |
| 766 | + | |
| 767 | + | |
| 768 | + | |
| 769 | + | |
| 770 | + | |
770 | 771 | | |
771 | 772 | | |
772 | 773 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
36 | 36 | | |
37 | 37 | | |
38 | 38 | | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
39 | 54 | | |
40 | 55 | | |
41 | 56 | | |
| |||
0 commit comments