Skip to content

Commit e0fe38e

Browse files
eun2ceeun2cekonstin
authored
Improve 403 Forbidden error message to indicate package may not exist (#16353)
Fixes #16340 ## Summary Some package registries (PyTorch, corporate PyPI mirrors) return `403 Forbidden` when a package is not found, instead of `404 Not Found`. The previous error message incorrectly suggested this was always an authentication issue, causing confusion for users. This PR updates the error hint to clarify that a 403 error could indicate either missing authentication credentials OR that the package doesn't exist on the index. ## Test Plan - Updated existing snapshot test in `crates/uv/tests/it/edit.rs` to reflect the new error message - The change is purely a message improvement with no behavioral changes ## Changes ### Before hint: An index URL (https://example.com/simple) could not be queried due to a lack of valid authentication credentials (403 Forbidden). ### After hint: An index URL (https://example.com/simple) returned a 403 Forbidden error. This could indicate missing authentication credentials, or the package may not exist on this index. ## Files Changed - `crates/uv-resolver/src/pubgrub/report.rs` - Updated error message - `crates/uv/tests/it/edit.rs` - Updated snapshot test expectation --------- Co-authored-by: eun2ce <eun2ce@eun2ceui-MacBookPro.local> Co-authored-by: konstin <konstin@mailbox.org>
1 parent ed3f99a commit e0fe38e

File tree

2 files changed

+2
-2
lines changed

2 files changed

+2
-2
lines changed

crates/uv-resolver/src/pubgrub/report.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1549,7 +1549,7 @@ impl std::fmt::Display for PubGrubHint {
15491549
Self::ForbiddenIndex { index } => {
15501550
write!(
15511551
f,
1552-
"{}{} An index URL ({}) could not be queried due to a lack of valid authentication credentials ({}).",
1552+
"{}{} An index URL ({}) returned a {} error. This could indicate lack of valid authentication credentials, or the package may not exist on this index.",
15531553
"hint".bold().cyan(),
15541554
":".bold(),
15551555
index.without_credentials().cyan(),

crates/uv/tests/it/edit.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12491,7 +12491,7 @@ fn add_empty_ignore_error_codes() -> Result<()> {
1249112491
× No solution found when resolving dependencies:
1249212492
╰─▶ Because flask was not found in the package registry and your project depends on flask, we can conclude that your project's requirements are unsatisfiable.
1249312493
12494-
hint: An index URL (https://download.pytorch.org/whl/cpu) could not be queried due to a lack of valid authentication credentials (403 Forbidden).
12494+
hint: An index URL (https://download.pytorch.org/whl/cpu) returned a 403 Forbidden error. This could indicate lack of valid authentication credentials, or the package may not exist on this index.
1249512495
help: If you want to add the package regardless of the failed resolution, provide the `--frozen` flag to skip locking and syncing.
1249612496
"
1249712497
);

0 commit comments

Comments
 (0)