diff --git a/.github/actions/rustup/action.yml b/.github/actions/rustup/action.yml index 1002d47018..55e711a94c 100644 --- a/.github/actions/rustup/action.yml +++ b/.github/actions/rustup/action.yml @@ -68,7 +68,6 @@ runs: -c rust-std \ -c clippy \ -c rustfmt - rustup target add --toolchain "$toolchain" wasm32-unknown-unknown - name: Save rustup cache uses: lynx-infra/cache/save@5c6160a6a4c7fca80a2f3057bb9dfc9513fcb732 if: ${{ inputs.save-if == 'true' && steps.restore.outputs.cache-hit != 'true' }} diff --git a/.github/workflows/copilot-setup-steps.yml b/.github/workflows/copilot-setup-steps.yml index 7075ca38ed..215bcded6d 100644 --- a/.github/workflows/copilot-setup-steps.yml +++ b/.github/workflows/copilot-setup-steps.yml @@ -31,7 +31,6 @@ jobs: node-version: "24" - uses: actions-rust-lang/setup-rust-toolchain@ac90e63697ac2784f4ecfe2964e1a285c304003a # v1 with: - target: wasm32-unknown-unknown cache-key: test-ubuntu-copilot-setup-steps - name: Install wasm-bindgen uses: taiki-e/install-action@14083e64ac8cf1f5e54356df00b9779b23e192a1 # v2 diff --git a/.github/workflows/deploy-main.yml b/.github/workflows/deploy-main.yml index 74991199cb..aeea5fa5ea 100644 --- a/.github/workflows/deploy-main.yml +++ b/.github/workflows/deploy-main.yml @@ -32,7 +32,6 @@ jobs: persist-credentials: false - uses: actions-rust-lang/setup-rust-toolchain@ac90e63697ac2784f4ecfe2964e1a285c304003a # v1 with: - target: wasm32-unknown-unknown cache: false - uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4 with: diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index d07dd5aca3..65a63eff4c 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -11,17 +11,13 @@ _pnpm_: Make sure that pnpm is available. You can use `corepack enable` to autom _Rust_: ReactLynx utilizes SWC plugins, necessitating the Rust toolchain for building. - Ensure you have [`rustup`](https://rustup.rs/) installed. -- Install the required WASM target by running the following command (you only need to do this once): - ```sh - rustup target add wasm32-unknown-unknown - ``` -- `rustup` will automatically use the correct toolchain when you run build commands inside this project, thanks to the `rust-toolchain` file. ### Setup To setup the project, run: ```sh +rustup toolchain install pnpm install ``` diff --git a/packages/web-platform/web-style-transformer/Cargo.toml b/packages/web-platform/web-style-transformer/Cargo.toml index 769aad04e4..a5a75943d2 100644 --- a/packages/web-platform/web-style-transformer/Cargo.toml +++ b/packages/web-platform/web-style-transformer/Cargo.toml @@ -11,7 +11,3 @@ inline-style-parser = { path = "../inline-style-parser" } js-sys = "0.3.77" lazy_static = "1.5.0" wasm-bindgen = "=0.2.101" - -[profile.release] -opt-level = 3 -lto = true diff --git a/packages/web-platform/web-style-transformer/scripts/build.js b/packages/web-platform/web-style-transformer/scripts/build.js index e81fd7c0c6..3a00281c91 100644 --- a/packages/web-platform/web-style-transformer/scripts/build.js +++ b/packages/web-platform/web-style-transformer/scripts/build.js @@ -24,7 +24,7 @@ execSync( { cwd: packageRoot, stdio: 'inherit' }, ); execSync( - `pnpm wasm-opt ./dist/standard_bg.wasm -O3 -o ./dist/standard_bg.wasm`, + `pnpm wasm-opt --enable-bulk-memory ./dist/standard_bg.wasm -O3 -o ./dist/standard_bg.wasm`, { cwd: packageRoot, stdio: 'inherit' }, ); @@ -42,6 +42,6 @@ execSync( { cwd: packageRoot, stdio: 'inherit' }, ); execSync( - `pnpm wasm-opt ./dist/legacy_bg.wasm -O3 -o ./dist/legacy_bg.wasm`, + `pnpm wasm-opt --enable-bulk-memory ./dist/legacy_bg.wasm -O3 -o ./dist/legacy_bg.wasm`, { cwd: packageRoot, stdio: 'inherit' }, ); diff --git a/rust-toolchain b/rust-toolchain deleted file mode 100644 index b7844a6ffd..0000000000 --- a/rust-toolchain +++ /dev/null @@ -1 +0,0 @@ -1.86.0 diff --git a/rust-toolchain.toml b/rust-toolchain.toml new file mode 100644 index 0000000000..c81e96d849 --- /dev/null +++ b/rust-toolchain.toml @@ -0,0 +1,4 @@ +[toolchain] +channel = "1.88.0" +targets = ["wasm32-unknown-unknown", "wasm32-wasip1"] +profile = "default"