From 1de6e39ea4b07cf96673373723ac2a09cfce8621 Mon Sep 17 00:00:00 2001 From: Matthew Podwysocki Date: Thu, 24 Sep 2026 16:12:10 -0400 Subject: [PATCH] Fix the real reason to avoid curl in the PowerShell install snippet MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The prior wording said curl "is not guaranteed to be present" on Windows, which hasn't been true since Windows 10 1803 (April 2018) — curl.exe has shipped in System32 ever since, real curl, not a shim. The actual problem is narrower and worth naming precisely: Windows PowerShell 5.1 (the legacy edition that ships with Windows) aliases `curl` to Invoke-WebRequest, whose flags are nothing like real curl's, so typing the commands above there runs the wrong tool silently — even though curl.exe exists right next to it. PowerShell 7 (pwsh) dropped that alias; `curl` there calls the real binary. sha256sum's absence is the one claim that was already accurate, so it keeps its own sentence. Co-Authored-By: Claude Sonnet 5 --- README.md | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 714d97e..2c56766 100644 --- a/README.md +++ b/README.md @@ -122,8 +122,14 @@ Expand-Archive $artifact.file -DestinationPath . ``` `Invoke-WebRequest` and `Get-FileHash` rather than `curl` and `sha256sum`: -the first is an alias for something else in Windows PowerShell and neither of -the others is guaranteed to be present. +Windows PowerShell 5.1 — the edition that ships with Windows, `powershell.exe` +— aliases `curl` to `Invoke-WebRequest`, whose flags are nothing like real +curl's, so the commands above would silently run the wrong tool there even +though `curl.exe` itself has shipped in `System32` since Windows 10 1803. +PowerShell 7 (`pwsh`) dropped that alias, so `curl` there is the real thing — +but 5.1 is still what a plain "Windows PowerShell" shortcut opens on a +default install. `sha256sum` has the simpler problem: it isn't shipped at +all outside WSL or Git Bash. Use `latest` in place of the version for whatever is current. Each archive holds one file, the `mapbox` executable, so there is no directory to step