@@ -108,20 +108,17 @@ jobs:
108108 echo "$NOTES" >> $GITHUB_OUTPUT
109109 echo "EOF" >> $GITHUB_OUTPUT
110110
111- - name : Patch version for bundle compatibility
111+ - name : Patch version for Tauri semver compatibility
112112 run : |
113- # Tauri/macOS/MSI require numeric-only version identifiers
114- # Convert 0.13.2-beta.1 → 0.13.2.1 (extract numeric suffix as 4th segment)
113+ # Tauri v2 requires strict semver (X.Y.Z) — prerelease suffixes are rejected
114+ # Strip prerelease suffix: 0.13.2-beta.1 → 0.13.2
115115 # For stable versions (no hyphen), this is a no-op
116116 VERSION="${RELEASE_TAG#v}"
117117 if [[ "$VERSION" == *-* ]]; then
118118 BASE_VERSION="${VERSION%%-*}"
119- PRERELEASE="${VERSION#*-}"
120- NUMERIC_SUFFIX=$(echo "$PRERELEASE" | grep -oE '[0-9]+$')
121- BUNDLE_VERSION="${BASE_VERSION}.${NUMERIC_SUFFIX:-0}"
122- echo "Patching version for Tauri build: $VERSION → $BUNDLE_VERSION"
123- sed -i '' "s/\"version\": \".*\"/\"version\": \"$BUNDLE_VERSION\"/" apps/fluux/src-tauri/tauri.conf.json
124- sed -i '' "s/^version = \".*\"/version = \"$BUNDLE_VERSION\"/" apps/fluux/src-tauri/Cargo.toml
119+ echo "Patching version for Tauri build: $VERSION → $BASE_VERSION"
120+ sed -i '' "s|\"version\": \".*\"|\"version\": \"$BASE_VERSION\"|" apps/fluux/src-tauri/tauri.conf.json
121+ sed -i '' "s|^version = \".*\"|version = \"$BASE_VERSION\"|" apps/fluux/src-tauri/Cargo.toml
125122 else
126123 echo "Stable version $VERSION — no patching needed"
127124 fi
@@ -194,21 +191,18 @@ jobs:
194191 echo "$NOTES" >> $GITHUB_OUTPUT
195192 echo "EOF" >> $GITHUB_OUTPUT
196193
197- - name : Patch version for MSI compatibility
194+ - name : Patch version for Tauri semver compatibility
198195 shell : bash
199196 run : |
200- # Tauri/MSI require numeric-only version identifiers (no "beta", "rc", etc.)
201- # Convert 0.13.2-beta.1 → 0.13.2.1 (extract numeric suffix as 4th segment)
197+ # Tauri v2 requires strict semver (X.Y.Z) — prerelease suffixes are rejected
198+ # Strip prerelease suffix: 0.13.2-beta.1 → 0.13.2
202199 # For stable versions (no hyphen), this is a no-op
203200 VERSION="${RELEASE_TAG#v}"
204201 if [[ "$VERSION" == *-* ]]; then
205202 BASE_VERSION="${VERSION%%-*}"
206- PRERELEASE="${VERSION#*-}"
207- NUMERIC_SUFFIX=$(echo "$PRERELEASE" | grep -oE '[0-9]+$')
208- BUNDLE_VERSION="${BASE_VERSION}.${NUMERIC_SUFFIX:-0}"
209- echo "Patching version for Tauri build: $VERSION → $BUNDLE_VERSION"
210- sed -i "s/\"version\": \".*\"/\"version\": \"$BUNDLE_VERSION\"/" apps/fluux/src-tauri/tauri.conf.json
211- sed -i "s/^version = \".*\"/version = \"$BUNDLE_VERSION\"/" apps/fluux/src-tauri/Cargo.toml
203+ echo "Patching version for Tauri build: $VERSION → $BASE_VERSION"
204+ sed -i "s|\"version\": \".*\"|\"version\": \"$BASE_VERSION\"|" apps/fluux/src-tauri/tauri.conf.json
205+ sed -i "s|^version = \".*\"|version = \"$BASE_VERSION\"|" apps/fluux/src-tauri/Cargo.toml
212206 else
213207 echo "Stable version $VERSION — no patching needed"
214208 fi
@@ -340,6 +334,21 @@ jobs:
340334 echo "$NOTES" >> $GITHUB_OUTPUT
341335 echo "EOF" >> $GITHUB_OUTPUT
342336
337+ - name : Patch version for Tauri semver compatibility
338+ run : |
339+ # Tauri v2 requires strict semver (X.Y.Z) — prerelease suffixes are rejected
340+ # Strip prerelease suffix: 0.13.2-beta.1 → 0.13.2
341+ # For stable versions (no hyphen), this is a no-op
342+ VERSION="${RELEASE_TAG#v}"
343+ if [[ "$VERSION" == *-* ]]; then
344+ BASE_VERSION="${VERSION%%-*}"
345+ echo "Patching version for Tauri build: $VERSION → $BASE_VERSION"
346+ sed -i "s|\"version\": \".*\"|\"version\": \"$BASE_VERSION\"|" apps/fluux/src-tauri/tauri.conf.json
347+ sed -i "s|^version = \".*\"|version = \"$BASE_VERSION\"|" apps/fluux/src-tauri/Cargo.toml
348+ else
349+ echo "Stable version $VERSION — no patching needed"
350+ fi
351+
343352 - name : Build Tauri binary
344353 run : |
345354 cd apps/fluux
@@ -504,6 +513,21 @@ jobs:
504513 - name : Build SDK
505514 run : npm run build:sdk
506515
516+ - name : Patch version for Tauri semver compatibility
517+ run : |
518+ # Tauri v2 requires strict semver (X.Y.Z) — prerelease suffixes are rejected
519+ # Strip prerelease suffix: 0.13.2-beta.1 → 0.13.2
520+ # For stable versions (no hyphen), this is a no-op
521+ VERSION="${RELEASE_TAG#v}"
522+ if [[ "$VERSION" == *-* ]]; then
523+ BASE_VERSION="${VERSION%%-*}"
524+ echo "Patching version for Tauri build: $VERSION → $BASE_VERSION"
525+ sed -i "s|\"version\": \".*\"|\"version\": \"$BASE_VERSION\"|" apps/fluux/src-tauri/tauri.conf.json
526+ sed -i "s|^version = \".*\"|version = \"$BASE_VERSION\"|" apps/fluux/src-tauri/Cargo.toml
527+ else
528+ echo "Stable version $VERSION — no patching needed"
529+ fi
530+
507531 - name : Build Tauri binary
508532 run : |
509533 cd apps/fluux
0 commit comments