mirror of
https://github.com/zed-industries/zed.git
synced 2026-08-26 17:42:21 +00:00
# Objective Fixes #47623 - When authenticating git commands using a security key through `askpass`. The modal which asks for user presence does not get dismissed even after the git command finishes successfully. ## Solution Add a cancellation task to the `AskPassModal`, which gets dropped when the requested operation completes. This cancellation task then dismisses the modal. ## Testing - I've tried authentication through `askpass` using my own security key. Testing both successful and failed authentication. - I've added tests which confirm that the modal gets dismissed when a task is cancelled, and that the cancellation is triggered when `ask_password` Task gets dropped. Willing to pair on review, message me on Slack. Showcase video left out because it would leak private information. ## Self-Review Checklist: - [x] I've reviewed my own diff for quality, security, and reliability - [x] Unsafe blocks (if any) have justifying comments - [x] The content adheres to Zed's UI standards ([UX/UI](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist) and [icon](https://github.com/zed-industries/zed/blob/main/crates/icons/README.md) guidelines) - [x] Tests cover the new/changed behavior - [x] Performance impact has been considered and is acceptable Release Notes: - Fixed authentication prompts not dismissing automatically when using security keys with ssh
40 lines
872 B
TOML
40 lines
872 B
TOML
[package]
|
|
name = "remote_connection"
|
|
version = "0.1.0"
|
|
edition.workspace = true
|
|
publish.workspace = true
|
|
license = "GPL-3.0-or-later"
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[lib]
|
|
path = "src/remote_connection.rs"
|
|
|
|
[features]
|
|
default = []
|
|
test-support = ["remote/test-support"]
|
|
|
|
[dependencies]
|
|
anyhow.workspace = true
|
|
askpass.workspace = true
|
|
auto_update.workspace = true
|
|
futures.workspace = true
|
|
gpui.workspace = true
|
|
log.workspace = true
|
|
markdown.workspace = true
|
|
menu.workspace = true
|
|
release_channel.workspace = true
|
|
remote.workspace = true
|
|
semver.workspace = true
|
|
settings.workspace = true
|
|
theme_settings.workspace = true
|
|
ui.workspace = true
|
|
ui_input.workspace = true
|
|
workspace.workspace = true
|
|
|
|
[dev-dependencies]
|
|
editor.workspace = true
|
|
gpui = { workspace = true, features = ["test-support"] }
|
|
settings = { workspace = true, features = ["test-support"] }
|
|
theme.workspace = true
|