From 3196284773dd1c1104e56b2192ba6f27109a3f95 Mon Sep 17 00:00:00 2001 From: jwinterm Date: Thu, 14 May 2026 16:19:56 -0400 Subject: [PATCH] Pin Flutter 3.32.0 via .tool-versions and document in README Newer Flutter SDKs drop the _macros pseudo-package that Cake's pinned hive_generator + build_resolvers transitively require, so 'flutter pub get' fails on Flutter 3.5+. Pin the version with .tool-versions (asdf/mise pick this up automatically) and document the manual install path for everyone else. --- .tool-versions | 1 + README.md | 9 ++++++++- 2 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 .tool-versions diff --git a/.tool-versions b/.tool-versions new file mode 100644 index 000000000..c5fda01e1 --- /dev/null +++ b/.tool-versions @@ -0,0 +1 @@ +flutter 3.32.0 diff --git a/README.md b/README.md index a6e02634b..96ce1116b 100644 --- a/README.md +++ b/README.md @@ -46,7 +46,14 @@ The build system is unchanged from upstream Cake Wallet. See `docs/` for per-pla * Linux: `docs/build_linux.md` * Windows: `docs/build_windows.md` -Required Flutter version is pinned in `Dockerfile` (currently 3.32.0). Before the first `flutter pub get`, you must run the prep scripts to clone external native dependencies: +Required Flutter version is pinned in `Dockerfile` (currently 3.32.0) and `.tool-versions`. Newer Flutter SDKs (3.5+) drop the `_macros` pseudo-package that Cake's pinned `hive_generator` + `build_resolvers` transitively require — `flutter pub get` will fail until you switch to 3.32.0. If using `asdf` or `mise`, the version will be picked up automatically; otherwise: + +```bash +git clone --depth 1 --branch 3.32.0 https://github.com/flutter/flutter.git ~/sdks/flutter/3.32.0 +export PATH="$HOME/sdks/flutter/3.32.0/bin:$PATH" +flutter --version # confirm 3.32.0 / Dart 3.8.0 +``` + Before the first `flutter pub get`, you must run the prep scripts to clone external native dependencies: ```bash ./scripts/prepare_torch.sh