diff --git a/.github/workflows/ode-desktop.yml b/.github/workflows/ode-desktop.yml index 0f547be91..e768b4678 100644 --- a/.github/workflows/ode-desktop.yml +++ b/.github/workflows/ode-desktop.yml @@ -249,20 +249,28 @@ jobs: env: CI: 'true' RUST_TARGET: ${{ matrix.rust_target }} + CARGO_NET_RETRY: '10' + CARGO_HTTP_MULTIPLEXING: 'false' run: | set -euo pipefail if [[ "${RUNNER_OS}" == "macOS" ]]; then hdiutil detach "/Volumes/ODE Desktop" 2>/dev/null || true find "src-tauri/target/${RUST_TARGET}/release/bundle" -name 'rw.*.dmg' -delete 2>/dev/null || true fi - if ! pnpm exec tauri build --verbose --target "${RUST_TARGET}" -c '${{ env.TAURI_BEFORE_BUILD }}'; then - if [[ "${RUNNER_OS}" != "macOS" ]]; then - exit 1 + build_tauri() { + pnpm exec tauri build --verbose --target "${RUST_TARGET}" -c '${{ env.TAURI_BEFORE_BUILD }}' "$@" + } + if ! build_tauri; then + if [[ "${RUNNER_OS}" == "macOS" ]]; then + echo "::warning::Tauri build failed; retrying DMG bundle on macOS" + hdiutil detach "/Volumes/ODE Desktop" 2>/dev/null || true + find "src-tauri/target/${RUST_TARGET}/release/bundle" -name 'rw.*.dmg' -delete 2>/dev/null || true + build_tauri --bundles dmg + else + echo "::warning::Tauri build failed; retrying after crates.io network glitch" + sleep 15 + build_tauri fi - echo "::warning::Tauri build failed; retrying DMG bundle on macOS" - hdiutil detach "/Volumes/ODE Desktop" 2>/dev/null || true - find "src-tauri/target/${RUST_TARGET}/release/bundle" -name 'rw.*.dmg' -delete 2>/dev/null || true - pnpm exec tauri build --verbose --bundles dmg --target "${RUST_TARGET}" -c '${{ env.TAURI_BEFORE_BUILD }}' fi - name: Collect installers for upload @@ -402,20 +410,28 @@ jobs: env: CI: 'true' RUST_TARGET: ${{ matrix.rust_target }} + CARGO_NET_RETRY: '10' + CARGO_HTTP_MULTIPLEXING: 'false' run: | set -euo pipefail if [[ "${RUNNER_OS}" == "macOS" ]]; then hdiutil detach "/Volumes/ODE Desktop" 2>/dev/null || true find "src-tauri/target/${RUST_TARGET}/release/bundle" -name 'rw.*.dmg' -delete 2>/dev/null || true fi - if ! pnpm exec tauri build --verbose --target "${RUST_TARGET}" -c '${{ env.TAURI_BEFORE_BUILD }}'; then - if [[ "${RUNNER_OS}" != "macOS" ]]; then - exit 1 + build_tauri() { + pnpm exec tauri build --verbose --target "${RUST_TARGET}" -c '${{ env.TAURI_BEFORE_BUILD }}' "$@" + } + if ! build_tauri; then + if [[ "${RUNNER_OS}" == "macOS" ]]; then + echo "::warning::Tauri build failed; retrying DMG bundle on macOS" + hdiutil detach "/Volumes/ODE Desktop" 2>/dev/null || true + find "src-tauri/target/${RUST_TARGET}/release/bundle" -name 'rw.*.dmg' -delete 2>/dev/null || true + build_tauri --bundles dmg + else + echo "::warning::Tauri build failed; retrying after crates.io network glitch" + sleep 15 + build_tauri fi - echo "::warning::Tauri build failed; retrying DMG bundle on macOS" - hdiutil detach "/Volumes/ODE Desktop" 2>/dev/null || true - find "src-tauri/target/${RUST_TARGET}/release/bundle" -name 'rw.*.dmg' -delete 2>/dev/null || true - pnpm exec tauri build --verbose --bundles dmg --target "${RUST_TARGET}" -c '${{ env.TAURI_BEFORE_BUILD }}' fi - name: Collect installers for GitHub Release diff --git a/formulus/package-lock.json b/formulus/package-lock.json index 87480b47e..3b6593348 100644 --- a/formulus/package-lock.json +++ b/formulus/package-lock.json @@ -38,7 +38,7 @@ "react-native-nitro-modules": "^0.35.4", "react-native-nitro-sound": "^0.2.10", "react-native-permissions": "^5.4.4", - "react-native-safe-area-context": "^5.6.2", + "react-native-safe-area-context": "^5.8.0", "react-native-screens": "^4.19.0", "react-native-signature-canvas": "^5.0.2", "react-native-svg": "^15.11.2", diff --git a/formulus/package.json b/formulus/package.json index 12f25dec3..97aae97aa 100644 --- a/formulus/package.json +++ b/formulus/package.json @@ -53,7 +53,7 @@ "react-native-nitro-modules": "^0.35.4", "react-native-nitro-sound": "^0.2.10", "react-native-permissions": "^5.4.4", - "react-native-safe-area-context": "^5.6.2", + "react-native-safe-area-context": "^5.8.0", "react-native-screens": "^4.19.0", "react-native-signature-canvas": "^5.0.2", "react-native-svg": "^15.11.2",