fix: Use upstream webm-sys, update toolchains

Update the WebM dependency chain to upstream 2.2 and use Rust 1.94 since upstream webm-sys uses edition=2024.

Sciter is kept on nightly due to a feature gate for thiscall still being present
This commit is contained in:
4JX 2026-03-11 16:21:27 +01:00
parent 016a0b1141
commit 5058ab9bf3
8 changed files with 58 additions and 47 deletions

View file

@ -6,10 +6,11 @@ on:
workflow_call:
env:
CARGO_EXPAND_VERSION: "1.0.95"
FLUTTER_VERSION: "3.22.3"
FLUTTER_RUST_BRIDGE_VERSION: "1.80.1"
RUST_VERSION: "1.75" # https://github.com/rustdesk/rustdesk/discussions/7503
CARGO_EXPAND_VERSION: '1.0.95'
FLUTTER_VERSION: '3.22.3'
FLUTTER_RUST_BRIDGE_VERSION: '1.80.1'
# webm 2.2.0 uses 2024-edition let-chains; keep bridge generation on current stable
RUST_VERSION: '1.94.0'
jobs:
generate_bridge:
@ -21,7 +22,7 @@ jobs:
- {
target: x86_64-unknown-linux-gnu,
os: ubuntu-22.04,
extra-build-args: "",
extra-build-args: '',
}
steps:
- name: Checkout source code
@ -53,7 +54,7 @@ jobs:
with:
toolchain: ${{ env.RUST_VERSION }}
targets: ${{ matrix.job.target }}
components: "rustfmt"
components: 'rustfmt'
- uses: Swatinem/rust-cache@v2
with:
@ -69,7 +70,7 @@ jobs:
- name: Install flutter
uses: subosito/flutter-action@v2
with:
channel: "stable"
channel: 'stable'
flutter-version: ${{ env.FLUTTER_VERSION }}
cache: true

View file

@ -18,9 +18,10 @@ on:
# in this file!
env:
SCITER_RUST_VERSION: "1.75" # https://github.com/rustdesk/rustdesk/discussions/7503, also 1.78 has ABI change which causes our sciter version not working, https://blog.rust-lang.org/2024/03/30/i128-layout-update.html
RUST_VERSION: "1.75" # sciter failed on m1 with 1.78 because of https://blog.rust-lang.org/2024/03/30/i128-layout-update.html
MAC_RUST_VERSION: "1.81" # 1.81 is requred for macos, because of https://github.com/yury/cidre requires 1.81
SCITER_RUST_VERSION: "1.94.0" # use current stable; webm 2.2.0 relies on 2024-edition let-chains stabilized after 1.85
SCITER_X86_NIGHTLY_RUST_VERSION: "nightly" # dyn_x86 still has a stale #![feature(abi_thiscall)] attribute, so this one job must stay on nightly until upstream removes it
RUST_VERSION: "1.94.0" # use current stable; webm 2.2.0 relies on 2024-edition let-chains stabilized after 1.85
MAC_RUST_VERSION: "1.94.0" # keep >=1.81 for cidre; current stable also satisfies the newer webm floor
CARGO_NDK_VERSION: "3.1.2"
SCITER_ARMV7_CMAKE_VERSION: "3.29.7"
SCITER_NASM_DEBVERSION: "2.15.05-1"
@ -321,7 +322,7 @@ jobs:
- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@v1
with:
toolchain: nightly-2023-10-13-${{ matrix.job.target }} # must use nightly here, because of abi_thiscall feature required
toolchain: ${{ env.SCITER_X86_NIGHTLY_RUST_VERSION }}-${{ matrix.job.target }} # dyn_x86 still declares #![feature(abi_thiscall)] even though thiscall itself is stable
targets: ${{ matrix.job.target }}
components: "rustfmt"

View file

@ -7,7 +7,7 @@ on:
workflow_dispatch:
env:
RUST_VERSION: "1.75" # https://github.com/rustdesk/rustdesk/discussions/7503
RUST_VERSION: "1.94.0" # use current stable; webm 2.2.0 relies on 2024-edition let-chains stabilized after 1.85
CARGO_NDK_VERSION: "3.1.2"
LLVM_VERSION: "15.0.6"
FLUTTER_VERSION: "3.22.2"