From 00cb497acfebeb50cb09722dce82cbb495e710b1 Mon Sep 17 00:00:00 2001 From: Krzysztof kuhy Rudnicki Date: Sun, 29 Mar 2026 15:15:37 +0200 Subject: [PATCH] feat(horatio): cache app_build step in run.sh Add caching to app_build so flutter build linux --release is skipped when source files haven't changed. Hash includes both packages' Dart files plus pubspec.yaml, pubspec.lock, and CMakeLists.txt. --- horatio/run.sh | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/horatio/run.sh b/horatio/run.sh index e7c6ed6..dcece91 100755 --- a/horatio/run.sh +++ b/horatio/run.sh @@ -269,9 +269,16 @@ app_test() { } app_build() { + local h + h=$(cat <(files_hash "$CORE_DIR" -name '*.dart') <(files_hash "$APP_DIR" -name '*.dart' -o -name 'pubspec.yaml' -o -name 'pubspec.lock' -o -name 'CMakeLists.txt') | sha256sum | awk '{ print $1 }') + if step_cached app_build "$h"; then + echo " [cached] app_build — skipping" + return + fi heading "Building horatio_app (Linux desktop)" cd "$APP_DIR" flutter build linux --release + cache_step app_build "$h" } app_run() {