From 0661d00d93cecd4be38a6dce06b622b5797bac91 Mon Sep 17 00:00:00 2001 From: Davis Vaughan Date: Wed, 29 Jan 2025 10:08:54 -0500 Subject: [PATCH] Build for ARM Windows (#205) * Build for ARM Windows * Remove ureq dependency in xtask to get rid of ring dependency Which causes cross compilation on ARM Windows issues right now * Tell dist to only manage `crates/air` So it hopefully doesn't try and compile every crate in our workspace, including heavier dev crates * Use `precise-builds` * Revert "Remove ureq dependency in xtask to get rid of ring dependency" This reverts commit 5549634bab37c8484fb3c0393dd8b6e1faa77cdf. * Add CHANGELOG bullets --- .github/workflows/release-vscode.yml | 22 +++++++++++----------- CHANGELOG.md | 2 ++ dist-workspace.toml | 14 +++++++++++--- editors/code/CHANGELOG.md | 2 ++ 4 files changed, 26 insertions(+), 14 deletions(-) diff --git a/.github/workflows/release-vscode.yml b/.github/workflows/release-vscode.yml index 7a7a3e95..12a0ca46 100644 --- a/.github/workflows/release-vscode.yml +++ b/.github/workflows/release-vscode.yml @@ -15,9 +15,9 @@ jobs: - os: windows-latest target: x86_64-pc-windows-msvc code-target: win32-x64 - # - os: windows-latest - # target: aarch64-pc-windows-msvc - # code-target: win32-arm64 + - os: windows-latest + target: aarch64-pc-windows-msvc + code-target: win32-arm64 # - os: ubuntu-20.04 # target: x86_64-unknown-linux-gnu # code-target: linux-x64 @@ -126,10 +126,10 @@ jobs: with: name: dist-x86_64-pc-windows-msvc path: dist - # - uses: actions/download-artifact@v4 - # with: - # name: dist-aarch64-pc-windows-msvc - # path: dist + - uses: actions/download-artifact@v4 + with: + name: dist-aarch64-pc-windows-msvc + path: dist - run: ls -al ./dist # Publish to the Code Marketplace. @@ -169,10 +169,10 @@ jobs: with: name: dist-x86_64-pc-windows-msvc path: dist - # - uses: actions/download-artifact@v4 - # with: - # name: dist-aarch64-pc-windows-msvc - # path: dist + - uses: actions/download-artifact@v4 + with: + name: dist-aarch64-pc-windows-msvc + path: dist - run: ls -al ./dist # Publish to OpenVSX. diff --git a/CHANGELOG.md b/CHANGELOG.md index 54c0de04..0bdb9d61 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,8 @@ # Development version +- ARM Windows binaries are now available (#170). + # 0.2.0 - Initial public release, yay! diff --git a/dist-workspace.toml b/dist-workspace.toml index bd367ea8..ddbd3f36 100644 --- a/dist-workspace.toml +++ b/dist-workspace.toml @@ -1,5 +1,5 @@ [workspace] -members = ["cargo:."] +members = ["cargo:crates/air"] # Config for 'dist' [dist] @@ -17,11 +17,19 @@ windows-archive = ".zip" unix-archive = ".tar.gz" # Target platforms to build apps for (Rust target-triple syntax) targets = [ - "aarch64-apple-darwin", + # Mac "x86_64-apple-darwin", - "x86_64-unknown-linux-gnu", + "aarch64-apple-darwin", + # Windows "x86_64-pc-windows-msvc", + "aarch64-pc-windows-msvc", + # Linux + "x86_64-unknown-linux-gnu", ] +# Tell dist to only build `crates/air` rather than every crate in the workspace, +# which it does by default to be conservative but would include some heavier test-only +# crates that aren't required (including xtask). +precise-builds = true # Whether to auto-include files like READMEs, LICENSEs, and CHANGELOGs (default true) auto-includes = false # Which actions to run on pull requests (use "upload" to force a build in CI for testing) diff --git a/editors/code/CHANGELOG.md b/editors/code/CHANGELOG.md index 85b78292..b15388ba 100644 --- a/editors/code/CHANGELOG.md +++ b/editors/code/CHANGELOG.md @@ -6,6 +6,8 @@ ## Development version +- The extension is now available on ARM Windows (#170). + - The extension now works properly for Intel macOS (#194). ## 0.2.0