@@ -334,10 +334,10 @@ fn dependency_excludes_non_contiguous_range_of_compatible_versions() {
334
334
335
335
----- stderr -----
336
336
× No solution found when resolving dependencies:
337
- ╰─▶ Because package-a==1.0.0 depends on package-b==1.0.0 and only the following versions of package-a are available:
337
+ ╰─▶ Because only the following versions of package-a are available:
338
338
package-a==1.0.0
339
339
package-a>2.0.0,<=3.0.0
340
- we can conclude that package-a<2.0.0 depends on package-b==1.0.0. (1)
340
+ and package-a==1.0.0 depends on package-b==1.0.0, we can conclude that package-a<2.0.0 depends on package-b==1.0.0. (1)
341
341
342
342
Because only the following versions of package-c are available:
343
343
package-c==1.0.0
@@ -445,10 +445,10 @@ fn dependency_excludes_range_of_compatible_versions() {
445
445
446
446
----- stderr -----
447
447
× No solution found when resolving dependencies:
448
- ╰─▶ Because package-a==1.0.0 depends on package-b==1.0.0 and only the following versions of package-a are available:
448
+ ╰─▶ Because only the following versions of package-a are available:
449
449
package-a==1.0.0
450
450
package-a>2.0.0,<=3.0.0
451
- we can conclude that package-a<2.0.0 depends on package-b==1.0.0. (1)
451
+ and package-a==1.0.0 depends on package-b==1.0.0, we can conclude that package-a<2.0.0 depends on package-b==1.0.0. (1)
452
452
453
453
Because only the following versions of package-c are available:
454
454
package-c==1.0.0
@@ -529,17 +529,17 @@ fn excluded_only_compatible_version() {
529
529
530
530
----- stderr -----
531
531
× No solution found when resolving dependencies:
532
- ╰─▶ Because package-a==1.0.0 depends on package-b==1.0.0 and only the following versions of package-a are available:
532
+ ╰─▶ Because only the following versions of package-a are available:
533
533
package-a==1.0.0
534
534
package-a==2.0.0
535
535
package-a==3.0.0
536
- we can conclude that package-a<2.0.0 depends on package-b==1.0.0.
536
+ and package-a==1.0.0 depends on package-b==1.0.0, we can conclude that package-a<2.0.0 depends on package-b==1.0.0.
537
537
And because package-a==3.0.0 depends on package-b==3.0.0, we can conclude that all of:
538
538
package-a<2.0.0
539
539
package-a>2.0.0
540
540
depend on one of:
541
- package-b< =1.0.0
542
- package-b> =3.0.0
541
+ package-b= =1.0.0
542
+ package-b= =3.0.0
543
543
544
544
And because you require one of:
545
545
package-a<2.0.0
@@ -1369,19 +1369,22 @@ fn local_less_than_or_equal() {
1369
1369
uv_snapshot ! ( filters, command( & context)
1370
1370
. arg( "local-less-than-or-equal-a<=1.2.3" )
1371
1371
, @r###"
1372
- success: false
1373
- exit_code: 1
1372
+ success: true
1373
+ exit_code: 0
1374
1374
----- stdout -----
1375
1375
1376
1376
----- stderr -----
1377
- × No solution found when resolving dependencies:
1378
- ╰─▶ Because only package-a==1.2.3+foo is available and you require package-a<=1.2.3, we can conclude that your requirements are unsatisfiable.
1377
+ Resolved 1 package in [TIME]
1378
+ Prepared 1 package in [TIME]
1379
+ Installed 1 package in [TIME]
1380
+ + package-a==1.2.3+foo
1379
1381
"### ) ;
1380
1382
1381
1383
// The version '1.2.3+foo' satisfies the constraint '<=1.2.3'.
1382
- assert_not_installed (
1384
+ assert_installed (
1383
1385
& context. venv ,
1384
1386
"local_less_than_or_equal_a" ,
1387
+ "1.2.3+foo" ,
1385
1388
& context. temp_dir ,
1386
1389
) ;
1387
1390
}
@@ -1500,14 +1503,14 @@ fn local_not_used_with_sdist() {
1500
1503
Resolved 1 package in [TIME]
1501
1504
Prepared 1 package in [TIME]
1502
1505
Installed 1 package in [TIME]
1503
- + package-a==1.2.3
1506
+ + package-a==1.2.3+foo
1504
1507
"### ) ;
1505
1508
1506
1509
// The version '1.2.3' with an sdist satisfies the constraint '==1.2.3'.
1507
1510
assert_installed (
1508
1511
& context. venv ,
1509
1512
"local_not_used_with_sdist_a" ,
1510
- "1.2.3" ,
1513
+ "1.2.3+foo " ,
1511
1514
& context. temp_dir ,
1512
1515
) ;
1513
1516
}
@@ -1535,17 +1538,24 @@ fn local_simple() {
1535
1538
uv_snapshot ! ( filters, command( & context)
1536
1539
. arg( "local-simple-a==1.2.3" )
1537
1540
, @r###"
1538
- success: false
1539
- exit_code: 1
1541
+ success: true
1542
+ exit_code: 0
1540
1543
----- stdout -----
1541
1544
1542
1545
----- stderr -----
1543
- × No solution found when resolving dependencies:
1544
- ╰─▶ Because there is no version of package-a==1.2.3 and you require package-a==1.2.3, we can conclude that your requirements are unsatisfiable.
1546
+ Resolved 1 package in [TIME]
1547
+ Prepared 1 package in [TIME]
1548
+ Installed 1 package in [TIME]
1549
+ + package-a==1.2.3+foo
1545
1550
"### ) ;
1546
1551
1547
1552
// The version '1.2.3+foo' satisfies the constraint '==1.2.3'.
1548
- assert_not_installed ( & context. venv , "local_simple_a" , & context. temp_dir ) ;
1553
+ assert_installed (
1554
+ & context. venv ,
1555
+ "local_simple_a" ,
1556
+ "1.2.3+foo" ,
1557
+ & context. temp_dir ,
1558
+ ) ;
1549
1559
}
1550
1560
1551
1561
/// A dependency depends on a conflicting local version of a direct dependency, but we can backtrack to a compatible version.
@@ -1693,20 +1703,29 @@ fn local_transitive_confounding() {
1693
1703
uv_snapshot ! ( filters, command( & context)
1694
1704
. arg( "local-transitive-confounding-a" )
1695
1705
, @r###"
1696
- success: false
1697
- exit_code: 1
1706
+ success: true
1707
+ exit_code: 0
1698
1708
----- stdout -----
1699
1709
1700
1710
----- stderr -----
1701
- × No solution found when resolving dependencies:
1702
- ╰─▶ Because package-b==2.0.0 has no wheels with a matching Python ABI tag and package-a==1.0.0 depends on package-b==2.0.0, we can conclude that package-a==1.0.0 cannot be used.
1703
- And because only package-a==1.0.0 is available and you require package-a, we can conclude that your requirements are unsatisfiable.
1711
+ Resolved 2 packages in [TIME]
1712
+ Prepared 2 packages in [TIME]
1713
+ Installed 2 packages in [TIME]
1714
+ + package-a==1.0.0
1715
+ + package-b==2.0.0+foo
1704
1716
"### ) ;
1705
1717
1706
1718
// The version '2.0.0+foo' satisfies the constraint '==2.0.0'.
1707
- assert_not_installed (
1719
+ assert_installed (
1708
1720
& context. venv ,
1709
1721
"local_transitive_confounding_a" ,
1722
+ "1.0.0" ,
1723
+ & context. temp_dir ,
1724
+ ) ;
1725
+ assert_installed (
1726
+ & context. venv ,
1727
+ "local_transitive_confounding_b" ,
1728
+ "2.0.0+foo" ,
1710
1729
& context. temp_dir ,
1711
1730
) ;
1712
1731
}
@@ -2011,19 +2030,22 @@ fn local_used_without_sdist() {
2011
2030
uv_snapshot ! ( filters, command( & context)
2012
2031
. arg( "local-used-without-sdist-a==1.2.3" )
2013
2032
, @r###"
2014
- success: false
2015
- exit_code: 1
2033
+ success: true
2034
+ exit_code: 0
2016
2035
----- stdout -----
2017
2036
2018
2037
----- stderr -----
2019
- × No solution found when resolving dependencies:
2020
- ╰─▶ Because package-a==1.2.3 has no wheels with a matching Python ABI tag and you require package-a==1.2.3, we can conclude that your requirements are unsatisfiable.
2038
+ Resolved 1 package in [TIME]
2039
+ Prepared 1 package in [TIME]
2040
+ Installed 1 package in [TIME]
2041
+ + package-a==1.2.3+foo
2021
2042
"### ) ;
2022
2043
2023
2044
// The version '1.2.3+foo' satisfies the constraint '==1.2.3'.
2024
- assert_not_installed (
2045
+ assert_installed (
2025
2046
& context. venv ,
2026
2047
"local_used_without_sdist_a" ,
2048
+ "1.2.3+foo" ,
2027
2049
& context. temp_dir ,
2028
2050
) ;
2029
2051
}
0 commit comments