From 04391593bba3e2b2ff087a3660937f9eec319af2 Mon Sep 17 00:00:00 2001 From: quantumaikr Date: Sat, 11 Apr 2026 15:12:19 +0900 Subject: [PATCH] fix(release): drop quant-server.exe on Windows + add workflow_dispatch MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The Windows build job tried to copy quant-server.exe which doesn't exist — CMakeLists.txt:311 has `if(TQ_BUILD_SERVER AND NOT MSVC)` so quant-server is intentionally not built on MSVC (uses POSIX sockets). Changes: 1. Windows build no longer passes -DTQ_BUILD_SERVER=ON (no-op anyway) and the package step no longer references quant-server.exe. 2. Added workflow_dispatch trigger so the release workflow can be re-run for an existing tag without re-tagging. 3. Each checkout step now respects github.event.inputs.tag for workflow_dispatch runs. 4. softprops/action-gh-release uses explicit tag_name from input. This unblocks the v0.12.0 GitHub Release (PyPI v0.12.0 already published successfully). Co-Authored-By: Claude Opus 4.6 (1M context) --- .github/workflows/release.yml | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index c2a0b0a..b98e62e 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -4,6 +4,12 @@ on: push: tags: - "v*" + workflow_dispatch: + inputs: + tag: + description: 'Existing tag to build a release for (e.g., v0.12.0)' + required: true + default: 'v0.12.0' permissions: contents: write @@ -13,6 +19,8 @@ jobs: runs-on: macos-latest steps: - uses: actions/checkout@v4 + with: + ref: ${{ github.event.inputs.tag || github.ref }} - name: Build run: | @@ -37,6 +45,8 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 + with: + ref: ${{ github.event.inputs.tag || github.ref }} - name: Build run: | @@ -62,10 +72,16 @@ jobs: runs-on: windows-latest steps: - uses: actions/checkout@v4 + with: + ref: ${{ github.event.inputs.tag || github.ref }} - name: Build run: | - cmake -B build -DCMAKE_BUILD_TYPE=Release -DTQ_BUILD_SERVER=ON + # Note: TQ_BUILD_SERVER is not enabled on Windows because quant-server + # uses POSIX sockets (sys/socket.h). CMakeLists.txt guards it with + # `if(TQ_BUILD_SERVER AND NOT MSVC)`. Windows users should use the + # Python `quantcpp serve` wrapper instead, or run the server in WSL. + cmake -B build -DCMAKE_BUILD_TYPE=Release cmake --build build --config Release -j $env:NUMBER_OF_PROCESSORS - name: Package @@ -73,7 +89,6 @@ jobs: run: | New-Item -ItemType Directory -Force -Path quant.cpp-windows-x64 Copy-Item build/Release/quant.exe quant.cpp-windows-x64/ - Copy-Item build/Release/quant-server.exe quant.cpp-windows-x64/ if (Test-Path LICENSE) { Copy-Item LICENSE quant.cpp-windows-x64/ } if (Test-Path README.md) { Copy-Item README.md quant.cpp-windows-x64/ } Compress-Archive -Path quant.cpp-windows-x64/* -DestinationPath quant.cpp-windows-x64.zip @@ -96,6 +111,7 @@ jobs: - uses: softprops/action-gh-release@v2 with: + tag_name: ${{ github.event.inputs.tag || github.ref_name }} generate_release_notes: true files: | artifacts/quant.cpp-macos-arm64/quant.cpp-macos-arm64.tar.gz