Skip to content

test: add test for failing use case of uv locks#750

Closed
lstanden wants to merge 2 commits intoaspect-build:mainfrom
lstanden:uv-build-error
Closed

test: add test for failing use case of uv locks#750
lstanden wants to merge 2 commits intoaspect-build:mainfrom
lstanden:uv-build-error

Conversation

@lstanden
Copy link
Copy Markdown
Contributor

This PR is not ready for merge. It simply creates a new test case for an issue encountered with using the UV lock files. The python library being used is older and unmaintained, and an error is generated when trying to run tests:

Error in fail: Error in lockfile @@//cases/legacy-deps/googlemaps:uv.lock

The requirements build and setuptools are missing from, but the following requirements only provide sdists.
Please update your lockfile to provide build tools in order to enable sdist support.

Problems:

  • googlemaps

Test plan

  • New test cases added

@CLAassistant
Copy link
Copy Markdown

CLAassistant commented Dec 11, 2025

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

@aspect-workflows
Copy link
Copy Markdown

aspect-workflows Bot commented Dec 11, 2025

test-os:linux-bzl:8 (Test)

All tests were cache hits

38 tests (100.0%) were fully cached saving 50s.


test-os:linux-bzl:latest (Test)

22 test targets passed

Targets
//examples/multi_version:py_version_default_test [k8-fastbuild]                           1s
//examples/multi_version:py_version_test [k8-fastbuild]                                   2s
//examples/pytest:absolute_main_test [k8-fastbuild]                                       580ms
//examples/pytest:main_with_colon_test [k8-fastbuild]                                     343ms
//examples/pytest:pytest_test [k8-fastbuild]                                              916ms
//examples/pytest:sharded/test [k8-fastbuild]                                             3s
//examples/virtual_deps:pytest_test [k8-fastbuild]                                        2s
//py/private/py_venv:test_link [k8-fastbuild]                                             338ms
//py/tests/external-deps:test_can_import_runfiles_helper [k8-fastbuild]                   518ms
//py/tests/internal-deps:assert [k8-fastbuild]                                            431ms
//py/tests/py-binary:runfiles_from_pip_test [k8-fastbuild]                                581ms
//py/tests/py-internal-venv:test [k8-fastbuild]                                           248ms
//py/tests/py-test:test_env_vars [k8-fastbuild]                                           523ms
//py/tests/py-venv-disable-systemsite:test [k8-fastbuild]                                 212ms
//py/tests/py-venv-disable-usersite:test [k8-fastbuild]                                   308ms
//py/tests/py-venv-enable-site:test [k8-fastbuild]                                        233ms
//py/tests/py_image_layer:py_image_test [k8-fastbuild]                                    4s
//py/tests/py_venv_conflict:validate_import_roots [k8-fastbuild]                          252ms
//py/tests/py_venv_image_layer:py_amd64_image_command_test [k8-fastbuild]                 3s
//py/tests/py_venv_image_layer:py_amd64_image_content_test [k8-fastbuild]                 319ms
//py/tests/py_venv_image_layer:py_arm64_image_content_test [k8-fastbuild]                 3s
//py/tests/repo_relative_imports/test:test [k8-fastbuild]                                 356ms

Total test execution time was 24s. 16 tests (42.1%) were fully cached saving 24s.


test-os:linux-bzl:8 (Test)

e2e

⚠️ Buildkite build #1623 failed.

@@aspect_rules_py++uv+whl_install__pypi__googlemaps__googlemaps//:actual_install failed to build

unpack failed: error executing Action command (from target @@aspect_rules_py++uv+whl_install__pypi__googlemaps__googlemaps//:actual_install) bazel-out/k8-opt-exec-ST-2750dc9695cc/bin/external/aspect_rules_py+/py/tools/unpack_bin/unpack --into ... (remaining 7 arguments skipped)
 
Use --sandbox_debug to see verbose messages from the sandbox and retain the sandbox build root for debugging
 
Error:   × Unable to run command:
  ├─▶ Didn't find exactly one wheel file to install!
  ╰─▶ got zero elements when exactly one was expected

💡 To reproduce the build failures, run

bazel build @@aspect_rules_py++uv+whl_install__pypi__googlemaps__googlemaps//:actual_install

test-os:linux-bzl:latest (Test)

e2e

⚠️ Buildkite build #1623 failed.

@@aspect_rules_py++uv+whl_install__pypi__googlemaps__googlemaps//:actual_install failed to build

unpack failed: error executing Action command (from target @@aspect_rules_py++uv+whl_install__pypi__googlemaps__googlemaps//:actual_install) bazel-out/k8-opt-exec-ST-2750dc9695cc/bin/external/aspect_rules_py+/py/tools/unpack_bin/unpack --into ... (remaining 7 arguments skipped)
 
Use --sandbox_debug to see verbose messages from the sandbox and retain the sandbox build root for debugging
 
Error:   × Unable to run command:
  ├─▶ Didn't find exactly one wheel file to install!
  ╰─▶ got zero elements when exactly one was expected

💡 To reproduce the build failures, run

bazel build @@aspect_rules_py++uv+whl_install__pypi__googlemaps__googlemaps//:actual_install

test-os:linux-bzl:8 (Test)

examples/uv_pip_compile

All tests were cache hits

1 test (100.0%) was fully cached saving 335ms.


test-os:linux-bzl:latest (Test)

examples/uv_pip_compile

All tests were cache hits

1 test (100.0%) was fully cached saving 335ms.

@lstanden
Copy link
Copy Markdown
Contributor Author

Update on findings:

  • The original error I had was fixed with a bazel clean
  • The new error which is in CI i have now run into locally as well

@arrdem
Copy link
Copy Markdown
Contributor

arrdem commented Dec 12, 2025

I think this is related to #741, which I've been iterating on as part of troubleshooting other sdist builds.

@arrdem arrdem self-assigned this Dec 12, 2025
@arrdem arrdem closed this Mar 5, 2026
arrdem added a commit that referenced this pull request Mar 6, 2026
Taking over the patch from #750, add an equivalent test and get the
`googlemaps` package building and testing.

- Fix a bug where the self-package name was incompletely normalized
leading to `foo-bar` named packages not being recognized as
self-packages and skipped.
- Tweak how `uv` handles build deps so that the default build deps list
is added to, rather than replaced. This substantially reduces repetition
in most cases and cannot induce cycles although it may induce false
invalidations.

Closes #750.

### Changes are visible to end-users: no

- Searched for relevant documentation and updated as needed: yes
- Breaking change (forces users to change their own code or config): no
- Suggested release notes appear below: yes

The `uv` extension now accumulates build deps. Annotative build deps are
now added to the default build deps list.

### Test plan

- New test cases added

---------

Co-authored-by: Lee Standen <lee.standen@ironcladhq.com>
Co-authored-by: aspect-marvin[bot] <marvin@aspect.build>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants