Skip to content

Commit d3bcf9a

Browse files
ci: add Windows builds, second try (#2966)
Hi @ellie, I don't want to be a burden, but I'd like to ask if you could please reconsider adding Windows builds now that PowerShell support is merged (#2543). 😇 Most people use PowerShell on Windows, so they'd need an artifact in the future releases in order to use it. Otherwise, they'd have to install Rust and compile it themselves, which is not user-friendly. I'd like to point out that I didn't have issues with building Atuin on Windows when I was rebasing the PowerShell PR (except some initial stuff like `#[cfg]` or a few warnings which were fixed in #2856), so I don't expect this to introduce many problems. This is essentially an updated version of #2714. ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing
1 parent 34fee9b commit d3bcf9a

File tree

3 files changed

+13
-7
lines changed

3 files changed

+13
-7
lines changed

.github/workflows/release.yml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
# This file was autogenerated by dist: https://github.com/astral-sh/cargo-dist
22
#
3+
# Copyright 2022-2024, axodotdev
34
# Copyright 2025 Astral Software Inc.
45
# SPDX-License-Identifier: MIT or Apache-2.0
56
#
@@ -60,12 +61,13 @@ jobs:
6061
steps:
6162
- uses: actions/checkout@v4
6263
with:
64+
persist-credentials: false
6365
submodules: recursive
6466
- name: Install dist
6567
# we specify bash to get pipefail; it guards against the `curl` command
6668
# failing. otherwise `sh` won't catch that `curl` returned non-0
6769
shell: bash
68-
run: "curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/cargo-dist/releases/download/v0.28.3/cargo-dist-installer.sh | sh"
70+
run: "curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/cargo-dist/releases/download/v0.28.7/cargo-dist-installer.sh | sh"
6971
- name: Cache dist
7072
uses: actions/upload-artifact@v4
7173
with:
@@ -119,6 +121,7 @@ jobs:
119121
git config --global core.longpaths true
120122
- uses: actions/checkout@v4
121123
with:
124+
persist-credentials: false
122125
submodules: recursive
123126
- name: Install Rust non-interactively if not already installed
124127
if: ${{ matrix.container }}
@@ -181,6 +184,7 @@ jobs:
181184
steps:
182185
- uses: actions/checkout@v4
183186
with:
187+
persist-credentials: false
184188
submodules: recursive
185189
- name: Install cached dist
186190
uses: actions/download-artifact@v4
@@ -230,6 +234,7 @@ jobs:
230234
steps:
231235
- uses: actions/checkout@v4
232236
with:
237+
persist-credentials: false
233238
submodules: recursive
234239
- name: Install cached dist
235240
uses: actions/download-artifact@v4
@@ -294,4 +299,5 @@ jobs:
294299
steps:
295300
- uses: actions/checkout@v4
296301
with:
302+
persist-credentials: false
297303
submodules: recursive

.github/workflows/rust.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
build:
1818
strategy:
1919
matrix:
20-
os: [ubuntu-latest, macos-14]
20+
os: [ubuntu-latest, macos-14, windows-latest]
2121
runs-on: ${{ matrix.os }}
2222

2323
steps:
@@ -88,7 +88,7 @@ jobs:
8888
unit-test:
8989
strategy:
9090
matrix:
91-
os: [ubuntu-latest, macos-14]
91+
os: [ubuntu-latest, macos-14, windows-latest]
9292
runs-on: ${{ matrix.os }}
9393

9494
steps:
@@ -118,7 +118,7 @@ jobs:
118118
check:
119119
strategy:
120120
matrix:
121-
os: [ubuntu-latest, macos-14]
121+
os: [ubuntu-latest, macos-14, windows-latest]
122122
runs-on: ${{ matrix.os }}
123123

124124
steps:

dist-workspace.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,13 @@ members = ["cargo:."]
66
# Path that installers should place binaries in
77
install-path = "~/.atuin/bin"
88
# The preferred dist version to use in CI (Cargo.toml SemVer syntax)
9-
cargo-dist-version = "0.28.3"
9+
cargo-dist-version = "0.28.7"
1010
# CI backends to support
1111
ci = "github"
1212
# The installers to generate for each app
13-
installers = ["shell"]
13+
installers = ["shell", "powershell"]
1414
# Target platforms to build apps for (Rust target-triple syntax)
15-
targets = ["aarch64-apple-darwin", "aarch64-unknown-linux-gnu", "aarch64-unknown-linux-musl", "x86_64-apple-darwin", "x86_64-unknown-linux-gnu", "x86_64-unknown-linux-musl"]
15+
targets = ["aarch64-apple-darwin", "aarch64-unknown-linux-gnu", "aarch64-unknown-linux-musl", "x86_64-apple-darwin", "x86_64-unknown-linux-gnu", "x86_64-unknown-linux-musl", "x86_64-pc-windows-msvc"]
1616
# Which actions to run on pull requests
1717
pr-run-mode = "plan"
1818
# Whether to install an updater program

0 commit comments

Comments
 (0)