Skip to content

Commit 034e3dc

Browse files
chore(deps): update NAPI to v3 (#983)
* Update NAPI to v3 * run on 1.77 * Downgrade crates * Merge branch 'dev' into napi-3 * Disable all other workflows * Bump rust version to 1.88 to align with napi * Copy in the new napi setup * Run on pull_request * Guess that doesn't work, workflow_dispatch then * Use actions/cache@v5 * Revert "Disable all other workflows" This reverts commit 46b5938. * Revert "Run on pull_request" This reverts commit 142c4aa. * Merge branch 'dev' into napi-3 * Add change file * Fix audit * revert back to 1.71 since it's unrelated * revert ctrlc * revert rust-embed
1 parent c11833c commit 034e3dc

9 files changed

Lines changed: 2083 additions & 692 deletions

File tree

.changes/napi-3.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
"create-tauri-app": patch
3+
"create-tauri-app-js": patch
4+
---
5+
6+
Migrated to NAPI 3, this bumps the inernal crate `create-tauri-app-node`'s MSRV to 1.88

.github/workflows/publish-napi.yml

Lines changed: 25 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -43,45 +43,32 @@ jobs:
4343
target: i686-pc-windows-msvc
4444
- host: ubuntu-latest
4545
target: x86_64-unknown-linux-gnu
46-
docker: ghcr.io/napi-rs/napi-rs/nodejs-rust:lts-debian
47-
build: |
48-
npm i -g --force corepack
49-
corepack enable
50-
cd node
51-
pnpm build --target x86_64-unknown-linux-gnu
46+
build: pnpm build --target x86_64-unknown-linux-gnu --use-napi-cross
5247
- host: ubuntu-latest
5348
target: x86_64-unknown-linux-musl
54-
docker: ghcr.io/napi-rs/napi-rs/nodejs-rust:lts-alpine
55-
build: cd node && pnpm build --target x86_64-unknown-linux-musl
49+
build: pnpm build --target x86_64-unknown-linux-musl -x
5650
- host: macos-latest
5751
target: aarch64-apple-darwin
5852
build: pnpm build --target aarch64-apple-darwin
5953
- host: ubuntu-latest
6054
target: aarch64-unknown-linux-gnu
61-
docker: ghcr.io/napi-rs/napi-rs/nodejs-rust:lts-debian-aarch64
62-
build: |
63-
npm i -g --force corepack
64-
corepack enable
65-
cd node
66-
pnpm build --target aarch64-unknown-linux-gnu
55+
build: pnpm build --target aarch64-unknown-linux-gnu --use-napi-cross
6756
- host: ubuntu-latest
6857
target: armv7-unknown-linux-gnueabihf
69-
setup: |
70-
sudo apt-get update
71-
sudo apt-get install gcc-arm-linux-gnueabihf -y
72-
build: pnpm build --target armv7-unknown-linux-gnueabihf
58+
build: pnpm build --target armv7-unknown-linux-gnueabihf --use-napi-cross
59+
- host: ubuntu-latest
60+
target: aarch64-linux-android
61+
build: pnpm build --target aarch64-linux-android
62+
- host: ubuntu-latest
63+
target: armv7-linux-androideabi
64+
build: pnpm build --target armv7-linux-androideabi
7365
- host: ubuntu-latest
7466
target: aarch64-unknown-linux-musl
75-
docker: ghcr.io/napi-rs/napi-rs/nodejs-rust:lts-alpine
76-
build: |-
77-
set -e &&
78-
cd node &&
79-
rustup target add aarch64-unknown-linux-musl &&
80-
pnpm build --target aarch64-unknown-linux-musl
67+
build: pnpm build --target aarch64-unknown-linux-musl -x
8168
- host: windows-latest
8269
target: aarch64-pc-windows-msvc
8370
build: pnpm build --target aarch64-pc-windows-msvc
84-
name: stable - ${{ matrix.settings.target }} - node@20
71+
name: stable - ${{ matrix.settings.target }} - node@22
8572
runs-on: ${{ matrix.settings.host }}
8673
steps:
8774
- uses: actions/checkout@v6
@@ -103,52 +90,39 @@ jobs:
10390
targets: ${{ matrix.settings.target }}
10491

10592
- name: Cache cargo
106-
uses: actions/cache@v4
93+
uses: actions/cache@v5
10794
with:
10895
path: |
10996
~/.cargo/registry/index/
11097
~/.cargo/registry/cache/
11198
~/.cargo/git/db/
99+
~/.napi-rs
112100
.cargo-cache
113101
target/
114102
key: ${{ matrix.settings.target }}-cargo-${{ matrix.settings.host }}
115-
- uses: goto-bus-stop/setup-zig@v2
116-
if: ${{ matrix.settings.target == 'armv7-unknown-linux-gnueabihf' || matrix.settings.target == 'armv7-unknown-linux-musleabihf' }}
103+
104+
- uses: mlugg/setup-zig@v2
105+
if: ${{ contains(matrix.settings.target, 'musl') }}
106+
with:
107+
version: 0.14.1
108+
- name: Install cargo-zigbuild
109+
uses: taiki-e/install-action@v2
110+
if: ${{ contains(matrix.settings.target, 'musl') }}
111+
env:
112+
GITHUB_TOKEN: ${{ github.token }}
117113
with:
118-
version: 0.11.0
114+
tool: cargo-zigbuild
119115

120116
- name: Setup toolchain
121117
run: ${{ matrix.settings.setup }}
122118
if: ${{ matrix.settings.setup }}
123119
shell: bash
124120

125-
- name: Setup node x86
126-
if: matrix.settings.target == 'i686-pc-windows-msvc'
127-
run: pnpm config set supportedArchitectures.cpu "ia32"
128-
shell: bash
129-
130121
- name: Install dependencies
131122
run: pnpm install
132123

133-
- name: Setup node x86
134-
uses: actions/setup-node@v6
135-
if: matrix.settings.target == 'i686-pc-windows-msvc'
136-
with:
137-
node-version: 22
138-
cache: pnpm
139-
architecture: x86
140-
141-
- name: Build in docker
142-
uses: addnab/docker-run-action@v3
143-
if: ${{ matrix.settings.docker }}
144-
with:
145-
image: ${{ matrix.settings.docker }}
146-
options: '--user 0:0 -v ${{ github.workspace }}/.cargo-cache/git/db:/usr/local/cargo/git/db -v ${{ github.workspace }}/.cargo/registry/cache:/usr/local/cargo/registry/cache -v ${{ github.workspace }}/.cargo/registry/index:/usr/local/cargo/registry/index -v ${{ github.workspace }}:/build -w /build'
147-
run: ${{ matrix.settings.build }}
148-
149124
- name: Build
150125
run: ${{ matrix.settings.build }}
151-
if: ${{ !matrix.settings.docker }}
152126
shell: bash
153127

154128
- name: Upload artifact

0 commit comments

Comments
 (0)