From c5f55fe802101dafcbb21a6aefe709d6b3e0be9a Mon Sep 17 00:00:00 2001 From: Krystie Date: Wed, 24 Jun 2026 19:17:19 -0700 Subject: [PATCH] build: fix Windows CI - add build-libtor step + refreshWallet() call Two CI issues were blocking the Windows Qt build of v5.9.25-fork-detection (run #466, all 7 jobs failed): 1. transactionview.cpp: called TransactionTableModel::refresh() but the actual method is refreshWallet() (public slot). Fixed in the abandonTransaction() handler. 2. build-all.yml: every daemon job failed at link with 'cannot find -ltor'. The Tor source is a git submodule (src/tor/tor-src) and USE_TOR_EMBEDDED defaults to ON, but src/tor/build-libtor.sh is NEVER invoked from the workflow. Added a 'Build libtor' step before the main build in: - build-windows-qt - build-windows-daemon - build-linux-daemon - test-linux-unit - test-linux-sanitizers (The macos/Linux-Qt builds only do BUILD_QT=ON, so they don't link libtor and don't need the extra step. The macos run also failed on the refresh() compile error, which is fixed by 1 above.) --- .github/workflows/build-all.yml | 19 +++++++++++++++++++ src/qt/transactionview.cpp | 2 +- 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build-all.yml b/.github/workflows/build-all.yml index d61e56a..34a0533 100644 --- a/.github/workflows/build-all.yml +++ b/.github/workflows/build-all.yml @@ -33,6 +33,9 @@ jobs: -DBUILD_TESTS=ON \ -DUSE_UPNP=OFF + - name: Build libtor (embedded Tor static lib) + run: bash src/tor/build-libtor.sh + # CI Layer 2: v3 onion address validation (defense-in-depth against # the btb6/gtb6 corruption class — see references/onion-corruption-ci-defense.md). # Validates: (a) src/onionseed.h hardcoded seeds, (b) contrib/triangles.conf.example @@ -106,6 +109,9 @@ jobs: -DBUILD_TESTS=ON \ -DUSE_UPNP=OFF + - name: Build libtor (embedded Tor static lib) + run: bash src/tor/build-libtor.sh + - name: Build run: cmake --build build-san -j$(nproc) @@ -301,6 +307,16 @@ jobs: -DBUILD_TESTS=OFF \ -DUSE_UPNP=ON + - name: Build libtor (embedded Tor static lib) + # USE_TOR_EMBEDDED defaults to ON and trianglesd.exe links + # against src/tor/tor-src/src/libtor.a. The Tor source is a + # git submodule but the static lib is NOT built by cmake. + # We have to run src/tor/build-libtor.sh before the main + # build. Without this step the Windows daemon build fails + # at link time with "cannot find -ltor" (v5.9.25-fork- + # detection run #466). + run: bash src/tor/build-libtor.sh + - name: Build run: | cmake --build build -j$(nproc) @@ -482,6 +498,9 @@ jobs: -DBUILD_TESTS=OFF \ -DUSE_UPNP=ON + - name: Build libtor (embedded Tor static lib) + run: bash src/tor/build-libtor.sh + - name: Build run: cmake --build build -j$(nproc) diff --git a/src/qt/transactionview.cpp b/src/qt/transactionview.cpp index bc1ebab..416db7d 100644 --- a/src/qt/transactionview.cpp +++ b/src/qt/transactionview.cpp @@ -435,7 +435,7 @@ void TransactionView::abandonTransaction() } // Refresh the transactions table - model->getTransactionTableModel()->refresh(); + model->getTransactionTableModel()->refreshWallet(); } QWidget *TransactionView::createDateRangeWidget()