Skip to content

Commit 59c6d34

Browse files
Omit fragment when querying for wheels in Simple HTML API (#12384)
## Summary Closes #12383.
1 parent 2b3d6fd commit 59c6d34

File tree

2 files changed

+40
-40
lines changed

2 files changed

+40
-40
lines changed

crates/uv-client/src/html.rs

+33-33
Original file line numberDiff line numberDiff line change
@@ -217,7 +217,7 @@ impl SimpleHtml {
217217
requires_python,
218218
hashes,
219219
filename: filename.into(),
220-
url: decoded.into(),
220+
url: path.into(),
221221
size,
222222
upload_time,
223223
}))
@@ -275,7 +275,7 @@ mod tests {
275275
"#;
276276
let base = Url::parse("https://download.pytorch.org/whl/jinja2/").unwrap();
277277
let result = SimpleHtml::parse(text, &base).unwrap();
278-
insta::assert_debug_snapshot!(result, @r###"
278+
insta::assert_debug_snapshot!(result, @r#"
279279
SimpleHtml {
280280
base: BaseUrl(
281281
Url {
@@ -309,12 +309,12 @@ mod tests {
309309
requires_python: None,
310310
size: None,
311311
upload_time: None,
312-
url: "/whl/Jinja2-3.1.2-py3-none-any.whl#sha256=6088930bfe239f0e6710546ab9c19c9ef35e29792895fed6e6e31a023a182a61",
312+
url: "/whl/Jinja2-3.1.2-py3-none-any.whl",
313313
yanked: None,
314314
},
315315
],
316316
}
317-
"###);
317+
"#);
318318
}
319319

320320
#[test]
@@ -331,7 +331,7 @@ mod tests {
331331
"#;
332332
let base = Url::parse("https://download.pytorch.org/whl/jinja2/").unwrap();
333333
let result = SimpleHtml::parse(text, &base).unwrap();
334-
insta::assert_debug_snapshot!(result, @r###"
334+
insta::assert_debug_snapshot!(result, @r#"
335335
SimpleHtml {
336336
base: BaseUrl(
337337
Url {
@@ -365,12 +365,12 @@ mod tests {
365365
requires_python: None,
366366
size: None,
367367
upload_time: None,
368-
url: "/whl/Jinja2-3.1.2-py3-none-any.whl#md5=6088930bfe239f0e6710546ab9c19c9ef35e29792895fed6e6e31a023a182a61",
368+
url: "/whl/Jinja2-3.1.2-py3-none-any.whl",
369369
yanked: None,
370370
},
371371
],
372372
}
373-
"###);
373+
"#);
374374
}
375375

376376
#[test]
@@ -390,7 +390,7 @@ mod tests {
390390
"#;
391391
let base = Url::parse("https://download.pytorch.org/whl/jinja2/").unwrap();
392392
let result = SimpleHtml::parse(text, &base).unwrap();
393-
insta::assert_debug_snapshot!(result, @r###"
393+
insta::assert_debug_snapshot!(result, @r#"
394394
SimpleHtml {
395395
base: BaseUrl(
396396
Url {
@@ -424,12 +424,12 @@ mod tests {
424424
requires_python: None,
425425
size: None,
426426
upload_time: None,
427-
url: "/whl/Jinja2-3.1.2-py3-none-any.whl#sha256=6088930bfe239f0e6710546ab9c19c9ef35e29792895fed6e6e31a023a182a61",
427+
url: "/whl/Jinja2-3.1.2-py3-none-any.whl",
428428
yanked: None,
429429
},
430430
],
431431
}
432-
"###);
432+
"#);
433433
}
434434

435435
#[test]
@@ -446,7 +446,7 @@ mod tests {
446446
"#;
447447
let base = Url::parse("https://download.pytorch.org/whl/jinja2/").unwrap();
448448
let result = SimpleHtml::parse(text, &base).unwrap();
449-
insta::assert_debug_snapshot!(result, @r###"
449+
insta::assert_debug_snapshot!(result, @r#"
450450
SimpleHtml {
451451
base: BaseUrl(
452452
Url {
@@ -480,12 +480,12 @@ mod tests {
480480
requires_python: None,
481481
size: None,
482482
upload_time: None,
483-
url: "/whl/Jinja2-3.1.2+233fca715f49-py3-none-any.whl#sha256=6088930bfe239f0e6710546ab9c19c9ef35e29792895fed6e6e31a023a182a61",
483+
url: "/whl/Jinja2-3.1.2+233fca715f49-py3-none-any.whl",
484484
yanked: None,
485485
},
486486
],
487487
}
488-
"###);
488+
"#);
489489
}
490490

491491
#[test]
@@ -502,7 +502,7 @@ mod tests {
502502
"#;
503503
let base = Url::parse("https://download.pytorch.org/whl/jinja2/").unwrap();
504504
let result = SimpleHtml::parse(text, &base).unwrap();
505-
insta::assert_debug_snapshot!(result, @r###"
505+
insta::assert_debug_snapshot!(result, @r#"
506506
SimpleHtml {
507507
base: BaseUrl(
508508
Url {
@@ -536,12 +536,12 @@ mod tests {
536536
requires_python: None,
537537
size: None,
538538
upload_time: None,
539-
url: "/whl/Jinja2-3.1.2-py3-none-any.whl#sha256%3D4095ada29e51070f7d199a0a5bdf5c8d8e238e03f0bf4dcc02571e78c9ae800d",
539+
url: "/whl/Jinja2-3.1.2-py3-none-any.whl",
540540
yanked: None,
541541
},
542542
],
543543
}
544-
"###);
544+
"#);
545545
}
546546

547547
#[test]
@@ -742,7 +742,7 @@ mod tests {
742742
"#;
743743
let base = Url::parse("https://download.pytorch.org/whl/jinja2/").unwrap();
744744
let result = SimpleHtml::parse(text, &base).unwrap();
745-
insta::assert_debug_snapshot!(result, @r###"
745+
insta::assert_debug_snapshot!(result, @r#"
746746
SimpleHtml {
747747
base: BaseUrl(
748748
Url {
@@ -774,12 +774,12 @@ mod tests {
774774
requires_python: None,
775775
size: None,
776776
upload_time: None,
777-
url: "/whl/Jinja2-3.1.2-py3-none-any.whl#",
777+
url: "/whl/Jinja2-3.1.2-py3-none-any.whl",
778778
yanked: None,
779779
},
780780
],
781781
}
782-
"###);
782+
"#);
783783
}
784784

785785
#[test]
@@ -850,7 +850,7 @@ mod tests {
850850
"#;
851851
let base = Url::parse("https://download.pytorch.org/whl/jinja2/").unwrap();
852852
let result = SimpleHtml::parse(text, &base);
853-
insta::assert_debug_snapshot!(result, @r###"
853+
insta::assert_debug_snapshot!(result, @r#"
854854
Ok(
855855
SimpleHtml {
856856
base: BaseUrl(
@@ -883,13 +883,13 @@ mod tests {
883883
requires_python: None,
884884
size: None,
885885
upload_time: None,
886-
url: "/whl/Jinja2-3.1.2-py3-none-any.whl#main",
886+
url: "/whl/Jinja2-3.1.2-py3-none-any.whl",
887887
yanked: None,
888888
},
889889
],
890890
},
891891
)
892-
"###);
892+
"#);
893893
}
894894

895895
#[test]
@@ -906,7 +906,7 @@ mod tests {
906906
"#;
907907
let base = Url::parse("https://download.pytorch.org/whl/jinja2/").unwrap();
908908
let result = SimpleHtml::parse(text, &base);
909-
insta::assert_debug_snapshot!(result, @r###"
909+
insta::assert_debug_snapshot!(result, @r#"
910910
Ok(
911911
SimpleHtml {
912912
base: BaseUrl(
@@ -939,13 +939,13 @@ mod tests {
939939
requires_python: None,
940940
size: None,
941941
upload_time: None,
942-
url: "/whl/Jinja2-3.1.2-py3-none-any.whl#main",
942+
url: "/whl/Jinja2-3.1.2-py3-none-any.whl",
943943
yanked: None,
944944
},
945945
],
946946
},
947947
)
948-
"###);
948+
"#);
949949
}
950950

951951
#[test]
@@ -1060,7 +1060,7 @@ mod tests {
10601060
let base = Url::parse("https://account.d.codeartifact.us-west-2.amazonaws.com/pypi/shared-packages-pypi/simple/flask/")
10611061
.unwrap();
10621062
let result = SimpleHtml::parse(text, &base).unwrap();
1063-
insta::assert_debug_snapshot!(result, @r###"
1063+
insta::assert_debug_snapshot!(result, @r#"
10641064
SimpleHtml {
10651065
base: BaseUrl(
10661066
Url {
@@ -1094,7 +1094,7 @@ mod tests {
10941094
requires_python: None,
10951095
size: None,
10961096
upload_time: None,
1097-
url: "0.1/Flask-0.1.tar.gz#sha256=9da884457e910bf0847d396cb4b778ad9f3c3d17db1c5997cb861937bd284237",
1097+
url: "0.1/Flask-0.1.tar.gz",
10981098
yanked: None,
10991099
},
11001100
File {
@@ -1111,7 +1111,7 @@ mod tests {
11111111
requires_python: None,
11121112
size: None,
11131113
upload_time: None,
1114-
url: "0.10.1/Flask-0.10.1.tar.gz#sha256=4c83829ff83d408b5e1d4995472265411d2c414112298f2eb4b359d9e4563373",
1114+
url: "0.10.1/Flask-0.10.1.tar.gz",
11151115
yanked: None,
11161116
},
11171117
File {
@@ -1139,12 +1139,12 @@ mod tests {
11391139
),
11401140
size: None,
11411141
upload_time: None,
1142-
url: "3.0.1/flask-3.0.1.tar.gz#sha256=6489f51bb3666def6f314e15f19d50a1869a19ae0e8c9a3641ffe66c77d42403",
1142+
url: "3.0.1/flask-3.0.1.tar.gz",
11431143
yanked: None,
11441144
},
11451145
],
11461146
}
1147-
"###);
1147+
"#);
11481148
}
11491149

11501150
#[test]
@@ -1160,7 +1160,7 @@ mod tests {
11601160
"#;
11611161
let base = Url::parse("https://download.pytorch.org/whl/jinja2/").unwrap();
11621162
let result = SimpleHtml::parse(text, &base).unwrap();
1163-
insta::assert_debug_snapshot!(result, @r###"
1163+
insta::assert_debug_snapshot!(result, @r#"
11641164
SimpleHtml {
11651165
base: BaseUrl(
11661166
Url {
@@ -1205,12 +1205,12 @@ mod tests {
12051205
),
12061206
size: None,
12071207
upload_time: None,
1208-
url: "/whl/Jinja2-3.1.2-py3-none-any.whl#sha256=6088930bfe239f0e6710546ab9c19c9ef35e29792895fed6e6e31a023a182a61",
1208+
url: "/whl/Jinja2-3.1.2-py3-none-any.whl",
12091209
yanked: None,
12101210
},
12111211
],
12121212
}
1213-
"###);
1213+
"#);
12141214
}
12151215

12161216
/// Respect PEP 714 (see: <https://peps.python.org/pep-0714/>).

crates/uv-client/src/registry_client.rs

+7-7
Original file line numberDiff line numberDiff line change
@@ -1138,13 +1138,13 @@ mod tests {
11381138
.map(|file| uv_pypi_types::base_url_join_relative(base.as_url().as_str(), &file.url))
11391139
.collect::<Result<Vec<_>, JoinRelativeError>>()?;
11401140
let urls = urls.iter().map(Url::as_str).collect::<Vec<_>>();
1141-
insta::assert_debug_snapshot!(urls, @r###"
1142-
[
1143-
"https://account.d.codeartifact.us-west-2.amazonaws.com/pypi/shared-packages-pypi/simple/0.1/Flask-0.1.tar.gz#sha256=9da884457e910bf0847d396cb4b778ad9f3c3d17db1c5997cb861937bd284237",
1144-
"https://account.d.codeartifact.us-west-2.amazonaws.com/pypi/shared-packages-pypi/simple/0.10.1/Flask-0.10.1.tar.gz#sha256=4c83829ff83d408b5e1d4995472265411d2c414112298f2eb4b359d9e4563373",
1145-
"https://account.d.codeartifact.us-west-2.amazonaws.com/pypi/shared-packages-pypi/simple/3.0.1/flask-3.0.1.tar.gz#sha256=6489f51bb3666def6f314e15f19d50a1869a19ae0e8c9a3641ffe66c77d42403",
1146-
]
1147-
"###);
1141+
insta::assert_debug_snapshot!(urls, @r#"
1142+
[
1143+
"https://account.d.codeartifact.us-west-2.amazonaws.com/pypi/shared-packages-pypi/simple/0.1/Flask-0.1.tar.gz",
1144+
"https://account.d.codeartifact.us-west-2.amazonaws.com/pypi/shared-packages-pypi/simple/0.10.1/Flask-0.10.1.tar.gz",
1145+
"https://account.d.codeartifact.us-west-2.amazonaws.com/pypi/shared-packages-pypi/simple/3.0.1/flask-3.0.1.tar.gz",
1146+
]
1147+
"#);
11481148

11491149
Ok(())
11501150
}

0 commit comments

Comments
 (0)