Use "your requirements" consistently in resolver error messages (#6113)

Follow-up to
https://github.com/astral-sh/uv/pull/6092#discussion_r1717648821
This commit is contained in:
Zanie Blue 2024-08-15 10:26:30 -05:00 committed by GitHub
parent 171c39d365
commit f988e43ebd
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
10 changed files with 122 additions and 122 deletions

View file

@ -357,8 +357,8 @@ impl PubGrubReportFormatter<'_> {
}
}
match &**package {
PubGrubPackageInner::Root(Some(_)) => Some("the requirements".to_string()),
PubGrubPackageInner::Root(None) => Some("the requirements".to_string()),
PubGrubPackageInner::Root(Some(_)) => Some("your requirements".to_string()),
PubGrubPackageInner::Root(None) => Some("your requirements".to_string()),
_ => None,
}
}

View file

@ -244,7 +244,7 @@ fn prune_unzipped() -> Result<()> {
and iniconfig==0.1 network connectivity is disabled, but the metadata wasn't found in the cache, we can conclude that iniconfig<1.0.0 cannot be used.
And because iniconfig==1.0.0 network connectivity is disabled, but the metadata wasn't found in the cache and iniconfig==1.0.1 network connectivity is disabled, but the metadata wasn't found in the cache, we can conclude that iniconfig<1.1.0 cannot be used.
And because iniconfig==1.1.0 network connectivity is disabled, but the metadata wasn't found in the cache and iniconfig==1.1.1 network connectivity is disabled, but the metadata wasn't found in the cache, we can conclude that iniconfig<2.0.0 cannot be used.
And because iniconfig==2.0.0 network connectivity is disabled, but the metadata wasn't found in the cache and you require iniconfig, we can conclude that the requirements are unsatisfiable.
And because iniconfig==2.0.0 network connectivity is disabled, but the metadata wasn't found in the cache and you require iniconfig, we can conclude that your requirements are unsatisfiable.
hint: Pre-releases are available for iniconfig in the requested range (e.g., 0.2.dev0), but pre-releases weren't enabled (try: `--prerelease=allow`)

View file

@ -1132,7 +1132,7 @@ fn compile_python_37() -> Result<()> {
----- stderr -----
× No solution found when resolving dependencies:
Because the requested Python version (3.7.0) does not satisfy Python>=3.8 and black==23.10.1 depends on Python>=3.8, we can conclude that black==23.10.1 cannot be used.
And because you require black==23.10.1, we can conclude that the requirements are unsatisfiable.
And because you require black==23.10.1, we can conclude that your requirements are unsatisfiable.
"###);
Ok(())
@ -1759,7 +1759,7 @@ fn conflicting_direct_url_dependency() -> Result<()> {
----- stderr -----
× No solution found when resolving dependencies:
Because there is no version of werkzeug==3.0.0 and you require werkzeug==3.0.0, we can conclude that the requirements are unsatisfiable.
Because there is no version of werkzeug==3.0.0 and you require werkzeug==3.0.0, we can conclude that your requirements are unsatisfiable.
"###
);
@ -1886,7 +1886,7 @@ fn conflicting_transitive_url_dependency() -> Result<()> {
----- stderr -----
× No solution found when resolving dependencies:
Because only werkzeug<3.0.0 is available and flask==3.0.0 depends on werkzeug>=3.0.0, we can conclude that flask==3.0.0 cannot be used.
And because you require flask==3.0.0, we can conclude that the requirements are unsatisfiable.
And because you require flask==3.0.0, we can conclude that your requirements are unsatisfiable.
"###
);
@ -2237,7 +2237,7 @@ fn requirement_constraint_override_url() -> Result<()> {
----- stderr -----
× No solution found when resolving dependencies:
Because there is no version of anyio==3.7.0 and you require anyio==3.7.0, we can conclude that the requirements are unsatisfiable.
Because there is no version of anyio==3.7.0 and you require anyio==3.7.0, we can conclude that your requirements are unsatisfiable.
"###
);
@ -2459,7 +2459,7 @@ dependencies = ["anyio==3.7.0", "anyio==4.0.0"]
----- stderr -----
× No solution found when resolving dependencies:
Because my-project depends on anyio==3.7.0 and anyio==4.0.0, we can conclude that the requirements are unsatisfiable.
Because my-project depends on anyio==3.7.0 and anyio==4.0.0, we can conclude that your requirements are unsatisfiable.
"###
);
@ -2491,7 +2491,7 @@ dependencies = ["anyio==300.1.4"]
----- stderr -----
× No solution found when resolving dependencies:
Because there is no version of anyio==300.1.4 and my-project depends on anyio==300.1.4, we can conclude that the requirements are unsatisfiable.
Because there is no version of anyio==300.1.4 and my-project depends on anyio==300.1.4, we can conclude that your requirements are unsatisfiable.
"###
);
@ -2938,7 +2938,7 @@ fn compile_yanked_version_indirect() -> Result<()> {
attrs==21.1.0
attrs>=21.2.0
and attrs==21.1.0 was yanked (reason: Installable but not importable on Python 3.4), we can conclude that attrs>20.3.0,<21.2.0 cannot be used.
And because you require attrs>20.3.0,<21.2.0, we can conclude that the requirements are unsatisfiable.
And because you require attrs>20.3.0,<21.2.0, we can conclude that your requirements are unsatisfiable.
"###
);
@ -5402,7 +5402,7 @@ fn no_index_requirements_txt() -> Result<()> {
----- stderr -----
× No solution found when resolving dependencies:
Because tqdm was not found in the provided package locations and you require tqdm, we can conclude that the requirements are unsatisfiable.
Because tqdm was not found in the provided package locations and you require tqdm, we can conclude that your requirements are unsatisfiable.
hint: Packages were unavailable because index lookups were disabled and no additional package locations were provided (try: `--find-links <uri>`)
"###
@ -5511,7 +5511,7 @@ fn offline_registry() -> Result<()> {
----- stderr -----
× No solution found when resolving dependencies:
Because black was not found in the cache and you require black==23.10.1, we can conclude that the requirements are unsatisfiable.
Because black was not found in the cache and you require black==23.10.1, we can conclude that your requirements are unsatisfiable.
hint: Packages were unavailable because the network was disabled
"###
@ -5642,7 +5642,7 @@ fn offline_find_links() -> Result<()> {
----- stderr -----
× No solution found when resolving dependencies:
Because tqdm was not found in the cache and you require tqdm, we can conclude that the requirements are unsatisfiable.
Because tqdm was not found in the cache and you require tqdm, we can conclude that your requirements are unsatisfiable.
hint: Packages were unavailable because the network was disabled
"###
@ -5661,7 +5661,7 @@ fn offline_find_links() -> Result<()> {
----- stderr -----
× No solution found when resolving dependencies:
Because tqdm was not found in the cache and you require tqdm, we can conclude that the requirements are unsatisfiable.
Because tqdm was not found in the cache and you require tqdm, we can conclude that your requirements are unsatisfiable.
hint: Packages were unavailable because the network was disabled
"###
@ -5747,7 +5747,7 @@ fn invalid_metadata_requires_python() -> Result<()> {
----- stderr -----
× No solution found when resolving dependencies:
Because validation==2.0.0 has invalid metadata and you require validation==2.0.0, we can conclude that the requirements are unsatisfiable.
Because validation==2.0.0 has invalid metadata and you require validation==2.0.0, we can conclude that your requirements are unsatisfiable.
hint: Metadata for validation==2.0.0 could not be parsed:
Failed to parse version: Unexpected end of version specifier, expected operator:
@ -5779,7 +5779,7 @@ fn invalid_metadata_multiple_dist_info() -> Result<()> {
----- stderr -----
× No solution found when resolving dependencies:
Because validation==3.0.0 has an invalid package format and you require validation==3.0.0, we can conclude that the requirements are unsatisfiable.
Because validation==3.0.0 has an invalid package format and you require validation==3.0.0, we can conclude that your requirements are unsatisfiable.
hint: The structure of validation==3.0.0 was invalid:
Multiple .dist-info directories found: validation-2.0.0, validation-3.0.0
@ -6048,7 +6048,7 @@ fn compile_constraints_incompatible_url() -> Result<()> {
----- stderr -----
× No solution found when resolving dependencies:
Because only anyio>=4 is available and you require anyio<4, we can conclude that the requirements are unsatisfiable.
Because only anyio>=4 is available and you require anyio<4, we can conclude that your requirements are unsatisfiable.
"###
);
@ -6071,7 +6071,7 @@ fn index_url_in_requirements() -> Result<()> {
----- stderr -----
× No solution found when resolving dependencies:
Because anyio was not found in the package registry and you require anyio<4, we can conclude that the requirements are unsatisfiable.
Because anyio was not found in the package registry and you require anyio<4, we can conclude that your requirements are unsatisfiable.
"###
);
@ -8021,7 +8021,7 @@ fn universal_requires_python_incomplete() -> Result<()> {
uv{python_version >= '3.8'}==0.1.23
uv{python_version >= '3.8'}==0.1.24
and the requested Python version (>=3.7) does not satisfy Python>=3.8, we can conclude that all versions of uv{python_version >= '3.8'} are incompatible.
And because you require uv{python_version >= '3.8'}, we can conclude that the requirements are unsatisfiable.
And because you require uv{python_version >= '3.8'}, we can conclude that your requirements are unsatisfiable.
"###
);
@ -8368,7 +8368,7 @@ fn compile_constraints_incompatible_version() -> Result<()> {
----- stderr -----
× No solution found when resolving dependencies:
Because you require filelock==1.0.0 and filelock==3.8.0, we can conclude that the requirements are unsatisfiable.
Because you require filelock==1.0.0 and filelock==3.8.0, we can conclude that your requirements are unsatisfiable.
"###
);
@ -8396,7 +8396,7 @@ fn conflicting_url_markers() -> Result<()> {
----- stderr -----
× No solution found when resolving dependencies:
Because you require filelock==1.0.0 and filelock==3.8.0, we can conclude that the requirements are unsatisfiable.
Because you require filelock==1.0.0 and filelock==3.8.0, we can conclude that your requirements are unsatisfiable.
"###
);
@ -8550,7 +8550,7 @@ fn override_with_incompatible_constraint() -> Result<()> {
----- stderr -----
× No solution found when resolving dependencies:
Because you require anyio>=3.0.0 and anyio<3.0.0, we can conclude that the requirements are unsatisfiable.
Because you require anyio>=3.0.0 and anyio<3.0.0, we can conclude that your requirements are unsatisfiable.
"###
);
@ -9078,7 +9078,7 @@ requires-python = "<=3.8"
----- stderr -----
× No solution found when resolving dependencies:
Because the current Python version (3.12.[X]) does not satisfy Python<=3.8 and example==0.0.0 depends on Python<=3.8, we can conclude that example==0.0.0 cannot be used.
And because only example==0.0.0 is available and you require example, we can conclude that the requirements are unsatisfiable.
And because only example==0.0.0 is available and you require example, we can conclude that your requirements are unsatisfiable.
"###
);
@ -9130,7 +9130,7 @@ requires-python = "<=3.8"
----- stderr -----
× No solution found when resolving dependencies:
Because the requested Python version (3.11.0) does not satisfy Python<=3.8 and example==0.0.0 depends on Python<=3.8, we can conclude that example==0.0.0 cannot be used.
And because only example==0.0.0 is available and you require example, we can conclude that the requirements are unsatisfiable.
And because only example==0.0.0 is available and you require example, we can conclude that your requirements are unsatisfiable.
"###
);
@ -9358,7 +9358,7 @@ requires-python = "<=3.8"
----- stderr -----
× No solution found when resolving dependencies:
Because the current Python version (3.12.[X]) does not satisfy Python<=3.8 and example==0.0.0 depends on Python<=3.8, we can conclude that example==0.0.0 cannot be used.
And because only example==0.0.0 is available and you require example, we can conclude that the requirements are unsatisfiable.
And because only example==0.0.0 is available and you require example, we can conclude that your requirements are unsatisfiable.
"###
);
@ -10494,7 +10494,7 @@ requires-python = ">3.8"
× No solution found when resolving dependencies:
Because there is no version of anyio==0.0.0 and lib==0.0.0 depends on anyio==0.0.0, we can conclude that lib==0.0.0 cannot be used.
And because only lib==0.0.0 is available and example==0.0.0 depends on lib, we can conclude that example==0.0.0 cannot be used.
And because only example==0.0.0 is available and you require example, we can conclude that the requirements are unsatisfiable.
And because only example==0.0.0 is available and you require example, we can conclude that your requirements are unsatisfiable.
"###
);
@ -10665,7 +10665,7 @@ fn compile_index_url_first_match() -> Result<()> {
----- stderr -----
× No solution found when resolving dependencies:
Because there is no version of jinja2==3.1.0 and you require jinja2==3.1.0, we can conclude that the requirements are unsatisfiable.
Because there is no version of jinja2==3.1.0 and you require jinja2==3.1.0, we can conclude that your requirements are unsatisfiable.
"###
);
@ -11693,7 +11693,7 @@ fn no_binary_only_binary() -> Result<()> {
----- stderr -----
× No solution found when resolving dependencies:
Because only source-distribution==0.0.1 is available and source-distribution==0.0.1 has no usable wheels and building from source is disabled, we can conclude that all versions of source-distribution cannot be used.
And because you require source-distribution, we can conclude that the requirements are unsatisfiable.
And because you require source-distribution, we can conclude that your requirements are unsatisfiable.
"###
);
@ -11778,7 +11778,7 @@ fn incompatible_build_constraint() -> Result<()> {
error: Failed to download and build `requests==1.2.0`
Caused by: Failed to install requirements from setup.py build (resolve)
Caused by: No solution found when resolving: setuptools>=40.8.0
Caused by: Because you require setuptools>=40.8.0 and setuptools==1, we can conclude that the requirements are unsatisfiable.
Caused by: Because you require setuptools>=40.8.0 and setuptools==1, we can conclude that your requirements are unsatisfiable.
"###
);

View file

@ -128,7 +128,7 @@ fn compatible_python_incompatible_override() -> Result<()> {
warning: The requested Python version 3.9 is not available; 3.11.[X] will be used to build dependencies instead.
× No solution found when resolving dependencies:
Because the requested Python version (3.9.0) does not satisfy Python>=3.10 and package-a==1.0.0 depends on Python>=3.10, we can conclude that package-a==1.0.0 cannot be used.
And because you require package-a==1.0.0, we can conclude that the requirements are unsatisfiable.
And because you require package-a==1.0.0, we can conclude that your requirements are unsatisfiable.
"###
);
@ -182,7 +182,7 @@ fn incompatible_python_compatible_override_unavailable_no_wheels() -> Result<()>
warning: The requested Python version 3.11 is not available; 3.9.[X] will be used to build dependencies instead.
× No solution found when resolving dependencies:
Because the current Python version (3.9.[X]) does not satisfy Python>=3.10 and package-a==1.0.0 depends on Python>=3.10, we can conclude that package-a==1.0.0 cannot be used.
And because you require package-a==1.0.0, we can conclude that the requirements are unsatisfiable.
And because you require package-a==1.0.0, we can conclude that your requirements are unsatisfiable.
"###
);
@ -294,7 +294,7 @@ fn incompatible_python_compatible_override_no_compatible_wheels() -> Result<()>
warning: The requested Python version 3.11 is not available; 3.9.[X] will be used to build dependencies instead.
× No solution found when resolving dependencies:
Because the current Python version (3.9.[X]) does not satisfy Python>=3.10 and package-a==1.0.0 depends on Python>=3.10, we can conclude that package-a==1.0.0 cannot be used.
And because you require package-a==1.0.0, we can conclude that the requirements are unsatisfiable.
And because you require package-a==1.0.0, we can conclude that your requirements are unsatisfiable.
"###
);
@ -359,7 +359,7 @@ fn incompatible_python_compatible_override_other_wheel() -> Result<()> {
Because the requested Python version (3.11.0) does not satisfy Python>=3.12 and package-a==2.0.0 depends on Python>=3.12, we can conclude that package-a==2.0.0 cannot be used.
And because we know from (1) that package-a<2.0.0 cannot be used, we can conclude that all versions of package-a cannot be used.
And because you require package-a, we can conclude that the requirements are unsatisfiable.
And because you require package-a, we can conclude that your requirements are unsatisfiable.
"###
);
@ -407,7 +407,7 @@ fn python_patch_override_no_patch() -> Result<()> {
----- stderr -----
× No solution found when resolving dependencies:
Because the requested Python version (3.8.0) does not satisfy Python>=3.8.4 and package-a==1.0.0 depends on Python>=3.8.4, we can conclude that package-a==1.0.0 cannot be used.
And because you require package-a==1.0.0, we can conclude that the requirements are unsatisfiable.
And because you require package-a==1.0.0, we can conclude that your requirements are unsatisfiable.
"###
);

View file

@ -266,7 +266,7 @@ fn no_solution() {
----- stderr -----
× No solution found when resolving dependencies:
Because only flask<=3.0.2 is available and flask==3.0.2 depends on werkzeug>=3.0.0, we can conclude that flask>=3.0.2 depends on werkzeug>=3.0.0.
And because you require flask>=3.0.2 and werkzeug<1.0.0, we can conclude that the requirements are unsatisfiable.
And because you require flask>=3.0.2 and werkzeug<1.0.0, we can conclude that your requirements are unsatisfiable.
"###);
}
@ -387,8 +387,8 @@ werkzeug==3.0.1
----- stderr -----
× No solution found when resolving dependencies:
Because flask==3.0.2 depends on click>=8.1.3 and you require click==7.0.0, we can conclude that the requirements and flask==3.0.2 are incompatible.
And because you require flask==3.0.2, we can conclude that the requirements are unsatisfiable.
Because flask==3.0.2 depends on click>=8.1.3 and you require click==7.0.0, we can conclude that your requirements and flask==3.0.2 are incompatible.
And because you require flask==3.0.2, we can conclude that your requirements are unsatisfiable.
"###
);
@ -950,7 +950,7 @@ fn install_editable_incompatible_constraint_version() -> Result<()> {
----- stderr -----
× No solution found when resolving dependencies:
Because only black<=0.1.0 is available and you require black>0.1.0, we can conclude that the requirements are unsatisfiable.
Because only black<=0.1.0 is available and you require black>0.1.0, we can conclude that your requirements are unsatisfiable.
"###
);
@ -1222,7 +1222,7 @@ fn install_no_index() {
----- stderr -----
× No solution found when resolving dependencies:
Because flask was not found in the provided package locations and you require flask, we can conclude that the requirements are unsatisfiable.
Because flask was not found in the provided package locations and you require flask, we can conclude that your requirements are unsatisfiable.
hint: Packages were unavailable because index lookups were disabled and no additional package locations were provided (try: `--find-links <uri>`)
"###
@ -1246,7 +1246,7 @@ fn install_no_index_version() {
----- stderr -----
× No solution found when resolving dependencies:
Because flask was not found in the provided package locations and you require flask==3.0.0, we can conclude that the requirements are unsatisfiable.
Because flask was not found in the provided package locations and you require flask==3.0.0, we can conclude that your requirements are unsatisfiable.
hint: Packages were unavailable because index lookups were disabled and no additional package locations were provided (try: `--find-links <uri>`)
"###
@ -2013,7 +2013,7 @@ fn install_only_binary_all_and_no_binary_all() {
And because anyio==3.7.0 has no usable wheels and building from source is disabled and anyio==3.7.1 has no usable wheels and building from source is disabled, we can conclude that anyio<4.0.0 cannot be used.
And because anyio==4.0.0 has no usable wheels and building from source is disabled and anyio==4.1.0 has no usable wheels and building from source is disabled, we can conclude that anyio<4.2.0 cannot be used.
And because anyio==4.2.0 has no usable wheels and building from source is disabled and anyio==4.3.0 has no usable wheels and building from source is disabled, we can conclude that anyio<4.4.0 cannot be used.
And because anyio==4.4.0 has no usable wheels and building from source is disabled and you require anyio, we can conclude that the requirements are unsatisfiable.
And because anyio==4.4.0 has no usable wheels and building from source is disabled and you require anyio, we can conclude that your requirements are unsatisfiable.
hint: Pre-releases are available for anyio in the requested range (e.g., 4.0.0rc1), but pre-releases weren't enabled (try: `--prerelease=allow`)
"###
@ -2046,7 +2046,7 @@ fn only_binary_requirements_txt() {
----- stderr -----
× No solution found when resolving dependencies:
Because django-allauth==0.51.0 has no usable wheels and building from source is disabled and you require django-allauth==0.51.0, we can conclude that the requirements are unsatisfiable.
Because django-allauth==0.51.0 has no usable wheels and building from source is disabled and you require django-allauth==0.51.0, we can conclude that your requirements are unsatisfiable.
"###
);
}
@ -3384,7 +3384,7 @@ requires-python = "<=3.8"
----- stderr -----
× No solution found when resolving dependencies:
Because the current Python version (3.12.[X]) does not satisfy Python<=3.8 and example==0.0.0 depends on Python<=3.8, we can conclude that example==0.0.0 cannot be used.
And because only example==0.0.0 is available and you require example, we can conclude that the requirements are unsatisfiable.
And because only example==0.0.0 is available and you require example, we can conclude that your requirements are unsatisfiable.
"###
);
@ -3897,7 +3897,7 @@ requires-python = "<=3.8"
----- stderr -----
× No solution found when resolving dependencies:
Because the current Python version (3.12.[X]) does not satisfy Python<=3.8 and example==0.0.0 depends on Python<=3.8, we can conclude that example==0.0.0 cannot be used.
And because only example==0.0.0 is available and you require example, we can conclude that the requirements are unsatisfiable.
And because only example==0.0.0 is available and you require example, we can conclude that your requirements are unsatisfiable.
"###
);
@ -4348,7 +4348,7 @@ fn reinstall_no_index() {
----- stderr -----
× No solution found when resolving dependencies:
Because anyio was not found in the provided package locations and you require anyio, we can conclude that the requirements are unsatisfiable.
Because anyio was not found in the provided package locations and you require anyio, we can conclude that your requirements are unsatisfiable.
hint: Packages were unavailable because index lookups were disabled and no additional package locations were provided (try: `--find-links <uri>`)
"###
@ -4471,7 +4471,7 @@ fn already_installed_dependent_editable() {
----- stderr -----
× No solution found when resolving dependencies:
Because first-local was not found in the provided package locations and second-local==0.1.0 depends on first-local, we can conclude that second-local==0.1.0 cannot be used.
And because only second-local==0.1.0 is available and you require second-local, we can conclude that the requirements are unsatisfiable.
And because only second-local==0.1.0 is available and you require second-local, we can conclude that your requirements are unsatisfiable.
"###
);
@ -4570,7 +4570,7 @@ fn already_installed_local_path_dependent() {
----- stderr -----
× No solution found when resolving dependencies:
Because first-local was not found in the provided package locations and second-local==0.1.0 depends on first-local, we can conclude that second-local==0.1.0 cannot be used.
And because only second-local==0.1.0 is available and you require second-local, we can conclude that the requirements are unsatisfiable.
And because only second-local==0.1.0 is available and you require second-local, we can conclude that your requirements are unsatisfiable.
"###
);
@ -4612,7 +4612,7 @@ fn already_installed_local_path_dependent() {
----- stderr -----
× No solution found when resolving dependencies:
Because first-local was not found in the provided package locations and second-local==0.1.0 depends on first-local, we can conclude that second-local==0.1.0 cannot be used.
And because only second-local==0.1.0 is available and you require second-local, we can conclude that the requirements are unsatisfiable.
And because only second-local==0.1.0 is available and you require second-local, we can conclude that your requirements are unsatisfiable.
"###
);
@ -4684,7 +4684,7 @@ fn already_installed_local_version_of_remote_package() {
----- stderr -----
× No solution found when resolving dependencies:
Because anyio was not found in the provided package locations and you require anyio==4.2.0, we can conclude that the requirements are unsatisfiable.
Because anyio was not found in the provided package locations and you require anyio==4.2.0, we can conclude that your requirements are unsatisfiable.
hint: Packages were unavailable because index lookups were disabled and no additional package locations were provided (try: `--find-links <uri>`)
"###
@ -4701,7 +4701,7 @@ fn already_installed_local_version_of_remote_package() {
----- stderr -----
× No solution found when resolving dependencies:
Because there is no version of anyio==4.3.0+foo and you require anyio==4.3.0+foo, we can conclude that the requirements are unsatisfiable.
Because there is no version of anyio==4.3.0+foo and you require anyio==4.3.0+foo, we can conclude that your requirements are unsatisfiable.
"###
);
@ -4944,7 +4944,7 @@ fn already_installed_remote_url() {
----- stderr -----
× No solution found when resolving dependencies:
Because uv-public-pypackage was not found in the provided package locations and you require uv-public-pypackage, we can conclude that the requirements are unsatisfiable.
Because uv-public-pypackage was not found in the provided package locations and you require uv-public-pypackage, we can conclude that your requirements are unsatisfiable.
hint: Packages were unavailable because index lookups were disabled and no additional package locations were provided (try: `--find-links <uri>`)
"###);
@ -4991,7 +4991,7 @@ fn already_installed_remote_url() {
----- stderr -----
× No solution found when resolving dependencies:
Because uv-public-pypackage was not found in the provided package locations and you require uv-public-pypackage==0.2.0, we can conclude that the requirements are unsatisfiable.
Because uv-public-pypackage was not found in the provided package locations and you require uv-public-pypackage==0.2.0, we can conclude that your requirements are unsatisfiable.
hint: Packages were unavailable because index lookups were disabled and no additional package locations were provided (try: `--find-links <uri>`)
"###);
@ -6260,7 +6260,7 @@ fn incompatible_build_constraint() -> Result<()> {
error: Failed to download and build `requests==1.2.0`
Caused by: Failed to install requirements from setup.py build (resolve)
Caused by: No solution found when resolving: setuptools>=40.8.0
Caused by: Because you require setuptools>=40.8.0 and setuptools==1, we can conclude that the requirements are unsatisfiable.
Caused by: Because you require setuptools>=40.8.0 and setuptools==1, we can conclude that your requirements are unsatisfiable.
"###
);

View file

@ -81,7 +81,7 @@ fn requires_package_does_not_exist() {
----- stderr -----
× No solution found when resolving dependencies:
Because package-a was not found in the package registry and you require package-a, we can conclude that the requirements are unsatisfiable.
Because package-a was not found in the package registry and you require package-a, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(
@ -120,7 +120,7 @@ fn requires_exact_version_does_not_exist() {
----- stderr -----
× No solution found when resolving dependencies:
Because there is no version of package-a==2.0.0 and you require package-a==2.0.0, we can conclude that the requirements are unsatisfiable.
Because there is no version of package-a==2.0.0 and you require package-a==2.0.0, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(
@ -161,7 +161,7 @@ fn requires_greater_version_does_not_exist() {
----- stderr -----
× No solution found when resolving dependencies:
Because only package-a<=1.0.0 is available and you require package-a>1.0.0, we can conclude that the requirements are unsatisfiable.
Because only package-a<=1.0.0 is available and you require package-a>1.0.0, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(
@ -203,7 +203,7 @@ fn requires_less_version_does_not_exist() {
----- stderr -----
× No solution found when resolving dependencies:
Because only package-a>=2.0.0 is available and you require package-a<2.0.0, we can conclude that the requirements are unsatisfiable.
Because only package-a>=2.0.0 is available and you require package-a<2.0.0, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(
@ -245,7 +245,7 @@ fn transitive_requires_package_does_not_exist() {
----- stderr -----
× No solution found when resolving dependencies:
Because package-b was not found in the package registry and package-a==1.0.0 depends on package-b, we can conclude that package-a==1.0.0 cannot be used.
And because only package-a==1.0.0 is available and you require package-a, we can conclude that the requirements are unsatisfiable.
And because only package-a==1.0.0 is available and you require package-a, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(
@ -288,7 +288,7 @@ fn excluded_only_version() {
Because only package-a==1.0.0 is available and you require one of:
package-a<1.0.0
package-a>1.0.0
we can conclude that the requirements are unsatisfiable.
we can conclude that your requirements are unsatisfiable.
"###);
// Only `a==1.0.0` is available but the user excluded it.
@ -356,7 +356,7 @@ fn excluded_only_compatible_version() {
And because you require one of:
package-a<2.0.0
package-a>2.0.0
and package-b>=2.0.0,<3.0.0, we can conclude that the requirements are unsatisfiable.
and package-b>=2.0.0,<3.0.0, we can conclude that your requirements are unsatisfiable.
"###);
// Only `a==1.2.0` is available since `a==1.0.0` and `a==3.0.0` require
@ -465,7 +465,7 @@ fn dependency_excludes_range_of_compatible_versions() {
package-b<=1.0.0
package-b>=3.0.0
And because you require package-b>=2.0.0,<3.0.0 and package-c, we can conclude that the requirements are unsatisfiable.
And because you require package-b>=2.0.0,<3.0.0 and package-c, we can conclude that your requirements are unsatisfiable.
"###);
// Only the `2.x` versions of `a` are available since `a==1.0.0` and `a==3.0.0`
@ -590,7 +590,7 @@ fn dependency_excludes_non_contiguous_range_of_compatible_versions() {
package-b<=1.0.0
package-b>=3.0.0
And because you require package-b>=2.0.0,<3.0.0 and package-c, we can conclude that the requirements are unsatisfiable.
And because you require package-b>=2.0.0,<3.0.0 and package-c, we can conclude that your requirements are unsatisfiable.
"###);
// Only the `2.x` versions of `a` are available since `a==1.0.0` and `a==3.0.0`
@ -899,7 +899,7 @@ fn extra_incompatible_with_extra() {
× No solution found when resolving dependencies:
Because only package-a[extra-c]==1.0.0 is available and package-a[extra-c]==1.0.0 depends on package-b==2.0.0, we can conclude that all versions of package-a[extra-c] depend on package-b==2.0.0.
And because package-a[extra-b]==1.0.0 depends on package-b==1.0.0 and only package-a[extra-b]==1.0.0 is available, we can conclude that all versions of package-a[extra-b] and all versions of package-a[extra-c] are incompatible.
And because you require package-a[extra-b] and package-a[extra-c], we can conclude that the requirements are unsatisfiable.
And because you require package-a[extra-b] and package-a[extra-c], we can conclude that your requirements are unsatisfiable.
"###);
// Because both `extra_b` and `extra_c` are requested and they require incompatible
@ -1014,7 +1014,7 @@ fn extra_incompatible_with_root() {
----- stderr -----
× No solution found when resolving dependencies:
Because only package-a[extra]==1.0.0 is available and package-a[extra]==1.0.0 depends on package-b==1.0.0, we can conclude that all versions of package-a[extra] depend on package-b==1.0.0.
And because you require package-a[extra] and package-b==2.0.0, we can conclude that the requirements are unsatisfiable.
And because you require package-a[extra] and package-b==2.0.0, we can conclude that your requirements are unsatisfiable.
"###);
// Because the user requested `b==2.0.0` but the requested extra requires
@ -1120,7 +1120,7 @@ fn direct_incompatible_versions() {
----- stderr -----
× No solution found when resolving dependencies:
Because you require package-a==1.0.0 and package-a==2.0.0, we can conclude that the requirements are unsatisfiable.
Because you require package-a==1.0.0 and package-a==2.0.0, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(
@ -1174,7 +1174,7 @@ fn transitive_incompatible_with_root_version() {
----- stderr -----
× No solution found when resolving dependencies:
Because package-a==1.0.0 depends on package-b==2.0.0 and only package-a==1.0.0 is available, we can conclude that all versions of package-a depend on package-b==2.0.0.
And because you require package-a and package-b==1.0.0, we can conclude that the requirements are unsatisfiable.
And because you require package-a and package-b==1.0.0, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(
@ -1233,7 +1233,7 @@ fn transitive_incompatible_with_transitive() {
× No solution found when resolving dependencies:
Because only package-a==1.0.0 is available and package-a==1.0.0 depends on package-c==1.0.0, we can conclude that all versions of package-a depend on package-c==1.0.0.
And because package-b==1.0.0 depends on package-c==2.0.0 and only package-b==1.0.0 is available, we can conclude that all versions of package-a and all versions of package-b are incompatible.
And because you require package-a and package-b, we can conclude that the requirements are unsatisfiable.
And because you require package-a and package-b, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(
@ -1283,7 +1283,7 @@ fn transitive_incompatible_versions() {
----- stderr -----
× No solution found when resolving dependencies:
Because package-a==1.0.0 depends on package-b==1.0.0 and package-b==2.0.0, we can conclude that package-a==1.0.0 cannot be used.
And because you require package-a==1.0.0, we can conclude that the requirements are unsatisfiable.
And because you require package-a==1.0.0, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(
@ -1323,7 +1323,7 @@ fn local_simple() {
----- stderr -----
× No solution found when resolving dependencies:
Because there is no version of package-a==1.2.3 and you require package-a==1.2.3, we can conclude that the requirements are unsatisfiable.
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.
"###);
// The version '1.2.3+foo' satisfies the constraint '==1.2.3'.
@ -1409,7 +1409,7 @@ fn local_used_without_sdist() {
----- stderr -----
× No solution found when resolving dependencies:
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 the requirements are unsatisfiable.
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.
"###);
// The version '1.2.3+foo' satisfies the constraint '==1.2.3'.
@ -1563,7 +1563,7 @@ fn local_transitive_greater_than() {
----- stderr -----
× No solution found when resolving dependencies:
Because package-a==1.0.0 depends on package-b>2.0.0 and only package-a==1.0.0 is available, we can conclude that all versions of package-a depend on package-b>2.0.0.
And because you require package-a and package-b==2.0.0+foo, we can conclude that the requirements are unsatisfiable.
And because you require package-a and package-b==2.0.0+foo, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(
@ -1674,7 +1674,7 @@ fn local_transitive_less_than() {
----- stderr -----
× No solution found when resolving dependencies:
Because package-a==1.0.0 depends on package-b<2.0.0 and only package-a==1.0.0 is available, we can conclude that all versions of package-a depend on package-b<2.0.0.
And because you require package-a and package-b==2.0.0+foo, we can conclude that the requirements are unsatisfiable.
And because you require package-a and package-b==2.0.0+foo, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(
@ -1784,7 +1784,7 @@ fn local_transitive_confounding() {
----- stderr -----
× No solution found when resolving dependencies:
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.
And because only package-a==1.0.0 is available and you require package-a, we can conclude that the requirements are unsatisfiable.
And because only package-a==1.0.0 is available and you require package-a, we can conclude that your requirements are unsatisfiable.
"###);
// The version '2.0.0+foo' satisfies the constraint '==2.0.0'.
@ -1833,7 +1833,7 @@ fn local_transitive_conflicting() {
----- stderr -----
× No solution found when resolving dependencies:
Because package-a==1.0.0 depends on package-b==2.0.0+bar and only package-a==1.0.0 is available, we can conclude that all versions of package-a depend on package-b==2.0.0+bar.
And because you require package-a and package-b==2.0.0+foo, we can conclude that the requirements are unsatisfiable.
And because you require package-a and package-b==2.0.0+foo, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(
@ -1941,7 +1941,7 @@ fn local_greater_than() {
----- stderr -----
× No solution found when resolving dependencies:
Because only package-a<=1.2.3 is available and you require package-a>1.2.3, we can conclude that the requirements are unsatisfiable.
Because only package-a<=1.2.3 is available and you require package-a>1.2.3, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(&context.venv, "local_greater_than_a", &context.temp_dir);
@ -2019,7 +2019,7 @@ fn local_less_than() {
----- stderr -----
× No solution found when resolving dependencies:
Because only package-a>=1.2.3 is available and you require package-a<1.2.3, we can conclude that the requirements are unsatisfiable.
Because only package-a>=1.2.3 is available and you require package-a<1.2.3, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(&context.venv, "local_less_than_a", &context.temp_dir);
@ -2054,7 +2054,7 @@ fn local_less_than_or_equal() {
----- stderr -----
× No solution found when resolving dependencies:
Because only package-a>1.2.3 is available and you require package-a<=1.2.3, we can conclude that the requirements are unsatisfiable.
Because only package-a>1.2.3 is available and you require package-a<=1.2.3, we can conclude that your requirements are unsatisfiable.
"###);
// The version '1.2.3+foo' satisfies the constraint '<=1.2.3'.
@ -2094,7 +2094,7 @@ fn post_simple() {
----- stderr -----
× No solution found when resolving dependencies:
Because there is no version of package-a==1.2.3 and you require package-a==1.2.3, we can conclude that the requirements are unsatisfiable.
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.
"###);
assert_not_installed(&context.venv, "post_simple_a", &context.temp_dir);
@ -2172,7 +2172,7 @@ fn post_greater_than() {
----- stderr -----
× No solution found when resolving dependencies:
Because only package-a<=1.2.3 is available and you require package-a>1.2.3, we can conclude that the requirements are unsatisfiable.
Because only package-a<=1.2.3 is available and you require package-a>1.2.3, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(&context.venv, "post_greater_than_a", &context.temp_dir);
@ -2298,7 +2298,7 @@ fn post_less_than_or_equal() {
----- stderr -----
× No solution found when resolving dependencies:
Because only package-a>1.2.3 is available and you require package-a<=1.2.3, we can conclude that the requirements are unsatisfiable.
Because only package-a>1.2.3 is available and you require package-a<=1.2.3, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(
@ -2337,7 +2337,7 @@ fn post_less_than() {
----- stderr -----
× No solution found when resolving dependencies:
Because only package-a>=1.2.3 is available and you require package-a<1.2.3, we can conclude that the requirements are unsatisfiable.
Because only package-a>=1.2.3 is available and you require package-a<1.2.3, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(&context.venv, "post_less_than_a", &context.temp_dir);
@ -2374,7 +2374,7 @@ fn post_local_greater_than() {
----- stderr -----
× No solution found when resolving dependencies:
Because only package-a<=1.2.3 is available and you require package-a>1.2.3, we can conclude that the requirements are unsatisfiable.
Because only package-a<=1.2.3 is available and you require package-a>1.2.3, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(
@ -2415,7 +2415,7 @@ fn post_local_greater_than_post() {
----- stderr -----
× No solution found when resolving dependencies:
Because only package-a<1.2.3.post2 is available and you require package-a>=1.2.3.post2, we can conclude that the requirements are unsatisfiable.
Because only package-a<1.2.3.post2 is available and you require package-a>=1.2.3.post2, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(
@ -2456,7 +2456,7 @@ fn post_equal_not_available() {
----- stderr -----
× No solution found when resolving dependencies:
Because there is no version of package-a==1.2.3.post0 and you require package-a==1.2.3.post0, we can conclude that the requirements are unsatisfiable.
Because there is no version of package-a==1.2.3.post0 and you require package-a==1.2.3.post0, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(
@ -2543,7 +2543,7 @@ fn post_greater_than_post_not_available() {
----- stderr -----
× No solution found when resolving dependencies:
Because only package-a<1.2.3.post3 is available and you require package-a>=1.2.3.post3, we can conclude that the requirements are unsatisfiable.
Because only package-a<1.2.3.post3 is available and you require package-a>=1.2.3.post3, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(
@ -2629,7 +2629,7 @@ fn package_only_prereleases_in_range() {
----- stderr -----
× No solution found when resolving dependencies:
Because only package-a<=0.1.0 is available and you require package-a>0.1.0, we can conclude that the requirements are unsatisfiable.
Because only package-a<=0.1.0 is available and you require package-a>0.1.0, we can conclude that your requirements are unsatisfiable.
hint: Pre-releases are available for package-a in the requested range (e.g., 1.0.0a1), but pre-releases weren't enabled (try: `--prerelease=allow`)
"###);
@ -3078,7 +3078,7 @@ fn transitive_package_only_prereleases_in_range() {
----- stderr -----
× No solution found when resolving dependencies:
Because only package-b<=0.1 is available and package-a==0.1.0 depends on package-b>0.1, we can conclude that package-a==0.1.0 cannot be used.
And because only package-a==0.1.0 is available and you require package-a, we can conclude that the requirements are unsatisfiable.
And because only package-a==0.1.0 is available and you require package-a, we can conclude that your requirements are unsatisfiable.
hint: Pre-releases are available for package-b in the requested range (e.g., 1.0.0a1), but pre-releases weren't enabled (try: `--prerelease=allow`)
"###);
@ -3200,7 +3200,7 @@ fn transitive_prerelease_and_stable_dependency() {
----- stderr -----
× No solution found when resolving dependencies:
Because there is no version of package-c==2.0.0b1 and package-a==1.0.0 depends on package-c==2.0.0b1, we can conclude that package-a==1.0.0 cannot be used.
And because only package-a==1.0.0 is available and you require package-a, we can conclude that the requirements are unsatisfiable.
And because only package-a==1.0.0 is available and you require package-a, we can conclude that your requirements are unsatisfiable.
hint: package-c was requested with a pre-release marker (e.g., package-c==2.0.0b1), but pre-releases weren't enabled (try: `--prerelease=allow`)
"###);
@ -3369,7 +3369,7 @@ fn transitive_prerelease_and_stable_dependency_many_versions() {
Because only package-a==1.0.0 is available and package-a==1.0.0 depends on package-c>=2.0.0b1, we can conclude that all versions of package-a depend on package-c>=2.0.0b1.
And because only package-c<2.0.0b1 is available, we can conclude that all versions of package-a depend on package-c>3.0.0.
And because package-b==1.0.0 depends on package-c and only package-b==1.0.0 is available, we can conclude that all versions of package-a and all versions of package-b are incompatible.
And because you require package-a and package-b, we can conclude that the requirements are unsatisfiable.
And because you require package-a and package-b, we can conclude that your requirements are unsatisfiable.
hint: package-c was requested with a pre-release marker (e.g., package-c>=2.0.0b1), but pre-releases weren't enabled (try: `--prerelease=allow`)
"###);
@ -3460,7 +3460,7 @@ fn transitive_prerelease_and_stable_dependency_many_versions_holes() {
package-c>2.0.0a7,<2.0.0b1
package-c>2.0.0b1,<2.0.0b5
we can conclude that package-a==1.0.0 cannot be used.
And because only package-a==1.0.0 is available and you require package-a, we can conclude that the requirements are unsatisfiable.
And because only package-a==1.0.0 is available and you require package-a, we can conclude that your requirements are unsatisfiable.
hint: package-c was requested with a pre-release marker (e.g., any of:
package-c>1.0.0,<2.0.0a5
@ -3707,7 +3707,7 @@ fn python_version_does_not_exist() {
----- stderr -----
× No solution found when resolving dependencies:
Because the current Python version (3.8.[X]) does not satisfy Python>=3.30 and package-a==1.0.0 depends on Python>=3.30, we can conclude that package-a==1.0.0 cannot be used.
And because you require package-a==1.0.0, we can conclude that the requirements are unsatisfiable.
And because you require package-a==1.0.0, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(
@ -3749,7 +3749,7 @@ fn python_less_than_current() {
----- stderr -----
× No solution found when resolving dependencies:
Because the current Python version (3.9.[X]) does not satisfy Python<=3.8 and package-a==1.0.0 depends on Python<=3.8, we can conclude that package-a==1.0.0 cannot be used.
And because you require package-a==1.0.0, we can conclude that the requirements are unsatisfiable.
And because you require package-a==1.0.0, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(
@ -3791,7 +3791,7 @@ fn python_greater_than_current() {
----- stderr -----
× No solution found when resolving dependencies:
Because the current Python version (3.9.[X]) does not satisfy Python>=3.10 and package-a==1.0.0 depends on Python>=3.10, we can conclude that package-a==1.0.0 cannot be used.
And because you require package-a==1.0.0, we can conclude that the requirements are unsatisfiable.
And because you require package-a==1.0.0, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(
@ -3834,7 +3834,7 @@ fn python_greater_than_current_patch() {
----- stderr -----
× No solution found when resolving dependencies:
Because the current Python version (3.8.12) does not satisfy Python>=3.8.14 and package-a==1.0.0 depends on Python>=3.8.14, we can conclude that package-a==1.0.0 cannot be used.
And because you require package-a==1.0.0, we can conclude that the requirements are unsatisfiable.
And because you require package-a==1.0.0, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(
@ -3897,7 +3897,7 @@ fn python_greater_than_current_many() {
----- stderr -----
× No solution found when resolving dependencies:
Because there is no version of package-a==1.0.0 and you require package-a==1.0.0, we can conclude that the requirements are unsatisfiable.
Because there is no version of package-a==1.0.0 and you require package-a==1.0.0, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(
@ -4014,7 +4014,7 @@ fn python_greater_than_current_excluded() {
Because the current Python version (3.9.[X]) does not satisfy Python>=3.12 and package-a==4.0.0 depends on Python>=3.12, we can conclude that package-a==4.0.0 cannot be used.
And because we know from (2) that package-a>=2.0.0,<4.0.0 cannot be used, we can conclude that package-a>=2.0.0 cannot be used.
And because you require package-a>=2.0.0, we can conclude that the requirements are unsatisfiable.
And because you require package-a>=2.0.0, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(
@ -4195,7 +4195,7 @@ fn no_sdist_no_wheels_with_matching_platform() {
----- stderr -----
× No solution found when resolving dependencies:
Because only package-a==1.0.0 is available and package-a==1.0.0 has no wheels with a matching platform tag, we can conclude that all versions of package-a cannot be used.
And because you require package-a, we can conclude that the requirements are unsatisfiable.
And because you require package-a, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(
@ -4236,7 +4236,7 @@ fn no_sdist_no_wheels_with_matching_python() {
----- stderr -----
× No solution found when resolving dependencies:
Because only package-a==1.0.0 is available and package-a==1.0.0 has no wheels with a matching Python implementation tag, we can conclude that all versions of package-a cannot be used.
And because you require package-a, we can conclude that the requirements are unsatisfiable.
And because you require package-a, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(
@ -4277,7 +4277,7 @@ fn no_sdist_no_wheels_with_matching_abi() {
----- stderr -----
× No solution found when resolving dependencies:
Because only package-a==1.0.0 is available and package-a==1.0.0 has no wheels with a matching Python ABI tag, we can conclude that all versions of package-a cannot be used.
And because you require package-a, we can conclude that the requirements are unsatisfiable.
And because you require package-a, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(
@ -4320,7 +4320,7 @@ fn no_wheels_no_build() {
----- stderr -----
× No solution found when resolving dependencies:
Because only package-a==1.0.0 is available and package-a==1.0.0 has no usable wheels and building from source is disabled, we can conclude that all versions of package-a cannot be used.
And because you require package-a, we can conclude that the requirements are unsatisfiable.
And because you require package-a, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(&context.venv, "no_wheels_no_build_a", &context.temp_dir);
@ -4359,7 +4359,7 @@ fn only_wheels_no_binary() {
----- stderr -----
× No solution found when resolving dependencies:
Because only package-a==1.0.0 is available and package-a==1.0.0 has no source distribution and using wheels is disabled, we can conclude that all versions of package-a cannot be used.
And because you require package-a, we can conclude that the requirements are unsatisfiable.
And because you require package-a, we can conclude that your requirements are unsatisfiable.
"###);
assert_not_installed(&context.venv, "only_wheels_no_binary_a", &context.temp_dir);
@ -4476,7 +4476,7 @@ fn package_only_yanked() {
----- stderr -----
× No solution found when resolving dependencies:
Because only package-a==1.0.0 is available and package-a==1.0.0 was yanked (reason: Yanked for testing), we can conclude that all versions of package-a cannot be used.
And because you require package-a, we can conclude that the requirements are unsatisfiable.
And because you require package-a, we can conclude that your requirements are unsatisfiable.
"###);
// Yanked versions should not be installed, even if they are the only one
@ -4518,7 +4518,7 @@ fn package_only_yanked_in_range() {
package-a<=0.1.0
package-a==1.0.0
and package-a==1.0.0 was yanked (reason: Yanked for testing), we can conclude that package-a>0.1.0 cannot be used.
And because you require package-a>0.1.0, we can conclude that the requirements are unsatisfiable.
And because you require package-a>0.1.0, we can conclude that your requirements are unsatisfiable.
"###);
// Since there are other versions of `a` available, yanked versions should not be
@ -4659,7 +4659,7 @@ fn transitive_package_only_yanked() {
× No solution found when resolving dependencies:
Because only package-b==1.0.0 is available and package-b==1.0.0 was yanked (reason: Yanked for testing), we can conclude that all versions of package-b cannot be used.
And because package-a==0.1.0 depends on package-b, we can conclude that package-a==0.1.0 cannot be used.
And because only package-a==0.1.0 is available and you require package-a, we can conclude that the requirements are unsatisfiable.
And because only package-a==0.1.0 is available and you require package-a, we can conclude that your requirements are unsatisfiable.
"###);
// Yanked versions should not be installed, even if they are the only one
@ -4711,7 +4711,7 @@ fn transitive_package_only_yanked_in_range() {
package-b==1.0.0
and package-b==1.0.0 was yanked (reason: Yanked for testing), we can conclude that package-b>0.1 cannot be used.
And because package-a==0.1.0 depends on package-b>0.1, we can conclude that package-a==0.1.0 cannot be used.
And because only package-a==0.1.0 is available and you require package-a, we can conclude that the requirements are unsatisfiable.
And because only package-a==0.1.0 is available and you require package-a, we can conclude that your requirements are unsatisfiable.
"###);
// Yanked versions should not be installed, even if they are the only valid version
@ -4831,7 +4831,7 @@ fn transitive_yanked_and_unyanked_dependency() {
----- stderr -----
× No solution found when resolving dependencies:
Because package-c==2.0.0 was yanked (reason: Yanked for testing) and package-a==1.0.0 depends on package-c==2.0.0, we can conclude that package-a==1.0.0 cannot be used.
And because only package-a==1.0.0 is available and you require package-a, we can conclude that the requirements are unsatisfiable.
And because only package-a==1.0.0 is available and you require package-a, we can conclude that your requirements are unsatisfiable.
"###);
// Since the user did not explicitly select the yanked version, it cannot be used.

View file

@ -934,7 +934,7 @@ fn install_no_index() -> Result<()> {
----- stderr -----
× No solution found when resolving dependencies:
Because iniconfig was not found in the provided package locations and you require iniconfig==2.0.0, we can conclude that the requirements are unsatisfiable.
Because iniconfig was not found in the provided package locations and you require iniconfig==2.0.0, we can conclude that your requirements are unsatisfiable.
hint: Packages were unavailable because index lookups were disabled and no additional package locations were provided (try: `--find-links <uri>`)
"###
@ -983,7 +983,7 @@ fn install_no_index_cached() -> Result<()> {
----- stderr -----
× No solution found when resolving dependencies:
Because iniconfig was not found in the provided package locations and you require iniconfig==2.0.0, we can conclude that the requirements are unsatisfiable.
Because iniconfig was not found in the provided package locations and you require iniconfig==2.0.0, we can conclude that your requirements are unsatisfiable.
hint: Packages were unavailable because index lookups were disabled and no additional package locations were provided (try: `--find-links <uri>`)
"###
@ -1250,7 +1250,7 @@ fn mismatched_name() -> Result<()> {
----- stderr -----
× No solution found when resolving dependencies:
Because foo has an invalid package format and you require foo, we can conclude that the requirements are unsatisfiable.
Because foo has an invalid package format and you require foo, we can conclude that your requirements are unsatisfiable.
hint: The structure of foo was invalid:
The .dist-info directory tomli-2.0.1 does not start with the normalized package name: foo
@ -1919,7 +1919,7 @@ fn duplicate_package_overlap() -> Result<()> {
----- stderr -----
× No solution found when resolving dependencies:
Because you require markupsafe==2.1.3 and markupsafe==2.1.2, we can conclude that the requirements are unsatisfiable.
Because you require markupsafe==2.1.3 and markupsafe==2.1.2, we can conclude that your requirements are unsatisfiable.
"###
);
@ -2787,7 +2787,7 @@ fn find_links_offline_no_match() -> Result<()> {
----- stderr -----
× No solution found when resolving dependencies:
Because numpy was not found in the cache and you require numpy, we can conclude that the requirements are unsatisfiable.
Because numpy was not found in the cache and you require numpy, we can conclude that your requirements are unsatisfiable.
hint: Packages were unavailable because the network was disabled
"###
@ -2914,7 +2914,7 @@ fn offline() -> Result<()> {
----- stderr -----
× No solution found when resolving dependencies:
Because black was not found in the cache and you require black==23.10.1, we can conclude that the requirements are unsatisfiable.
Because black was not found in the cache and you require black==23.10.1, we can conclude that your requirements are unsatisfiable.
hint: Packages were unavailable because the network was disabled
"###
@ -3005,7 +3005,7 @@ fn incompatible_constraint() -> Result<()> {
----- stderr -----
× No solution found when resolving dependencies:
Because you require anyio==3.7.0 and anyio==3.6.0, we can conclude that the requirements are unsatisfiable.
Because you require anyio==3.7.0 and anyio==3.6.0, we can conclude that your requirements are unsatisfiable.
"###
);
@ -3102,7 +3102,7 @@ fn repeat_requirement_incompatible() -> Result<()> {
----- stderr -----
× No solution found when resolving dependencies:
Because you require anyio<4.0.0 and anyio==4.0.0, we can conclude that the requirements are unsatisfiable.
Because you require anyio<4.0.0 and anyio==4.0.0, we can conclude that your requirements are unsatisfiable.
"###);
Ok(())
@ -3349,7 +3349,7 @@ requires-python = "<=3.5"
----- stderr -----
× No solution found when resolving dependencies:
Because the current Python version (3.12.[X]) does not satisfy Python<=3.5 and example==0.0.0 depends on Python<=3.5, we can conclude that example==0.0.0 cannot be used.
And because only example==0.0.0 is available and you require example, we can conclude that the requirements are unsatisfiable.
And because only example==0.0.0 is available and you require example, we can conclude that your requirements are unsatisfiable.
"###
);
@ -3419,7 +3419,7 @@ requires-python = "<=3.5"
----- stderr -----
× No solution found when resolving dependencies:
Because the current Python version (3.12.[X]) does not satisfy Python<=3.5 and example==0.0.0 depends on Python<=3.5, we can conclude that example==0.0.0 cannot be used.
And because only example==0.0.0 is available and you require example, we can conclude that the requirements are unsatisfiable.
And because only example==0.0.0 is available and you require example, we can conclude that your requirements are unsatisfiable.
"###
);
@ -4895,7 +4895,7 @@ fn require_hashes_registry_valid_hash() -> Result<()> {
----- stderr -----
× No solution found when resolving dependencies:
Because example-a-961b4c22 was not found in the package registry and you require example-a-961b4c22==1.0.0, we can conclude that the requirements are unsatisfiable.
Because example-a-961b4c22 was not found in the package registry and you require example-a-961b4c22==1.0.0, we can conclude that your requirements are unsatisfiable.
"###
);
@ -5373,7 +5373,7 @@ fn incompatible_build_constraint() -> Result<()> {
error: Failed to download and build `requests==1.2.0`
Caused by: Failed to install requirements from setup.py build (resolve)
Caused by: No solution found when resolving: setuptools>=40.8.0
Caused by: Because you require setuptools>=40.8.0 and setuptools==1, we can conclude that the requirements are unsatisfiable.
Caused by: Because you require setuptools>=40.8.0 and setuptools==1, we can conclude that your requirements are unsatisfiable.
"###
);

View file

@ -352,7 +352,7 @@ fn run_pep723_script() -> Result<()> {
----- stderr -----
Reading inline script metadata from: main.py
× No solution found when resolving script dependencies:
Because there are no versions of add and you require add, we can conclude that the requirements are unsatisfiable.
Because there are no versions of add and you require add, we can conclude that your requirements are unsatisfiable.
"###);
Ok(())
@ -539,7 +539,7 @@ fn run_with() -> Result<()> {
Resolved 6 packages in [TIME]
Audited 4 packages in [TIME]
× No solution found when resolving `--with` dependencies:
Because there are no versions of add and you require add, we can conclude that the requirements are unsatisfiable.
Because there are no versions of add and you require add, we can conclude that your requirements are unsatisfiable.
"###);
Ok(())

View file

@ -2222,7 +2222,7 @@ fn tool_install_preserve_environment() {
----- stderr -----
warning: `uv tool install` is experimental and may change without warning
error: Because black==24.1.1 depends on packaging>=22.0 and you require black==24.1.1, we can conclude that you require packaging>=22.0.
And because you require packaging==0.0.1, we can conclude that the requirements are unsatisfiable.
And because you require packaging==0.0.1, we can conclude that your requirements are unsatisfiable.
"###);
// Install `black`. The tool should already be installed, since we didn't remove the environment.

View file

@ -921,6 +921,6 @@ fn tool_run_resolution_error() {
----- stderr -----
warning: `uv tool run` is experimental and may change without warning
× No solution found when resolving tool dependencies:
Because there are no versions of add and you require add, we can conclude that the requirements are unsatisfiable.
Because there are no versions of add and you require add, we can conclude that your requirements are unsatisfiable.
"###);
}