mirror of
https://github.com/cargo-bins/cargo-binstall.git
synced 2025-04-25 14:50:04 +00:00
Fix self-update on windows (#712)
Fixed #702 * Add new dep windows v0.44.0 for windows only * Add regression test for #702 * Impl `win::replace_file` * Use `ReplaceFileW` on windows if `fs::rename` in `fs::atomic_install` fails * Improve logging and err messages * Add more regression tests * Make `BinFile::install_link` atomic: Do not remove file if dst exists * Fallback to `ReplaceFileW` in `fs::atomic_symlink_file` * Refactor: Extract new fn `fs::persist` * Use `fs::persist` instead of `TempFile::persist` in `fs::atomic_install`, which fallbacks to `ReplaceFileW` on windows Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com> Co-authored-by: Félix Saparelli <felix@passcod.name>
This commit is contained in:
parent
a60ae7ef6c
commit
ab4da7f059
6 changed files with 153 additions and 38 deletions
3
justfile
3
justfile
|
@ -133,6 +133,7 @@ e2e-test-other-repos: (e2e-test "other-repos")
|
|||
e2e-test-strategies: (e2e-test "strategies")
|
||||
e2e-test-version-syntax: (e2e-test "version-syntax")
|
||||
e2e-test-upgrade: (e2e-test "upgrade")
|
||||
e2e-test-self-upgrade-no-symlink: (e2e-test "self-upgrade-no-symlink")
|
||||
|
||||
# WinTLS (Windows in CI) does not have TLS 1.3 support
|
||||
[windows]
|
||||
|
@ -141,7 +142,7 @@ e2e-test-tls: (e2e-test "tls" "1.2")
|
|||
[macos]
|
||||
e2e-test-tls: (e2e-test "tls" "1.2") (e2e-test "tls" "1.3")
|
||||
|
||||
e2e-tests: e2e-test-live e2e-test-manifest-path e2e-test-other-repos e2e-test-strategies e2e-test-version-syntax e2e-test-upgrade e2e-test-tls
|
||||
e2e-tests: e2e-test-live e2e-test-manifest-path e2e-test-other-repos e2e-test-strategies e2e-test-version-syntax e2e-test-upgrade e2e-test-tls e2e-test-self-upgrade-no-symlink
|
||||
|
||||
unit-tests:
|
||||
{{cargo-bin}} test {{cargo-build-args}}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue