Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
7d584b5
Rewrite the native authentication storage scheme
zanieb Apr 7, 2026
b408c78
Add locking and legacy migration
zanieb Apr 15, 2026
1d02f0b
Store native Windows credentials separately
zanieb Jun 10, 2026
888de7f
Avoid Windows native credential target collisions
zanieb Jun 10, 2026
41ba4dd
Harden Windows native credential enumeration
zanieb Jun 10, 2026
906e869
Preserve legacy host credentials across HTTP lookup
zanieb Jun 10, 2026
534e60a
Fix native auth CI regressions
zanieb Jun 10, 2026
3b1cb1f
Refactor native credential storage
zanieb Jun 11, 2026
193d216
Preserve path-specific credential lookup
zanieb Jun 11, 2026
03e66f3
Test native platform credential stores
zanieb Jun 11, 2026
11fd8fa
Clean up native auth integration state
zanieb Jun 11, 2026
20d51cf
Clarify persisted native credential storage
zanieb Jun 11, 2026
30be6fe
Fix native authentication CI diagnostics
zanieb Jun 11, 2026
56abdda
Avoid collisions with legacy native credentials
ewdurbin Aug 6, 2026
067b619
Keep native credential locks in shared user state
ewdurbin Aug 6, 2026
0781dc1
Ignore plaintext credentials when native auth is enabled
ewdurbin Aug 6, 2026
4952718
Surface native credential store failures during authentication
ewdurbin Aug 6, 2026
9332d99
Infer unique native usernames for auth commands
ewdurbin Aug 6, 2026
1c7acd1
Cover native authentication without index usernames
ewdurbin Aug 6, 2026
ad3823e
Document native authentication as a preview feature
ewdurbin Aug 6, 2026
221d0c1
Cache stored authentication credentials by service path
ewdurbin Aug 6, 2026
1fa61a1
Preserve native authentication selection and lock ownership
zaniebot Oct 9, 2026
6a08860
Retain keyring realm fallback after stored credential lookup
zaniebot Oct 9, 2026
2059fba
Cache migrated native credentials with validated Windows metadata
zaniebot Oct 9, 2026
32e50e1
Exercise migratable host credentials in native cache regression
zaniebot Oct 9, 2026
ac64129
Normalize native credential URLs before selecting an exact match
zaniebot Oct 9, 2026
4028c53
Share legacy keyring fallback and retain index credential precedence
zaniebot Oct 9, 2026
5da591c
Keep native authentication caches on current realm contents
zaniebot Oct 9, 2026
8df13aa
Snapshot native authentication errors without backtraces
zaniebot Oct 9, 2026
460f858
Keep cached native authentication responsive after cancellation
zaniebot Oct 9, 2026
5d65ecd
Gate native authentication resolution on its test dependencies
zaniebot Oct 9, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 11 additions & 0 deletions crates/uv-auth/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,14 @@ license = { workspace = true }
[lib]
doctest = false

[features]
native-auth = []

[lints]
workspace = true

[dependencies]
uv-cache-key = { workspace = true }
uv-fs = { workspace = true }
uv-keyring = { workspace = true, features = ["apple-native", "secret-service", "windows-native"] }
uv-netrc = { workspace = true }
Expand All @@ -30,6 +34,7 @@ uv-warnings = { workspace = true }
anyhow = { workspace = true }
async-trait = { workspace = true }
base64 = { workspace = true }
etcetera = { workspace = true }
fs-err = { workspace = true, features = ["tokio"] }
http = { workspace = true }
percent-encoding = { workspace = true }
Expand All @@ -39,11 +44,17 @@ reqwest-middleware = { workspace = true }
rustc-hash = { workspace = true }
schemars = { workspace = true, optional = true }
serde = { workspace = true, features = ["derive"] }
serde_json = { workspace = true }
thiserror = { workspace = true }
tokio = { workspace = true }
toml = { workspace = true }
tracing = { workspace = true }
url = { workspace = true }
zeroize = { workspace = true }

[target.'cfg(windows)'.dependencies]
hex = { workspace = true }
sha2 = { workspace = true }

[dev-dependencies]
insta = { workspace = true }
Expand Down
Loading
Loading