PyIceberg 0.11.0rc2
infra: allow rerun `make install` without prompt (#2979)

<!--
Thanks for opening a pull request!
-->

<!-- In the case this PR will resolve an issue, please replace
${GITHUB_ISSUE_ID} below with the actual Github issue id. -->
<!-- Closes #${GITHUB_ISSUE_ID} -->

# Rationale for this change
This PR lets `uv` manage the virtual env. uv will only setup a new venv
if it does not exist and sync dep only when necessary.
This should make the entire `make install` process a lot faster and
easier to work with

### Context
I noticed running `make install` when a `.venv` already existed would
show an interactive prompt:
```
➜  make install
uv is already installed.
uv venv 
Using CPython 3.12.11 interpreter at: /Users/kevinliu/.pyenv/versions/3.12.11/bin/python3
Creating virtual environment at: .venv
? A virtual environment already exists at `.venv`. Do you want to replace it? [y/n] › yes

hint: Use the `--clear` flag or set `UV_VENV_CLEAR=1` to skip this prompt
```

We dont need this prompt. And more crucially, claude keeps on getting
stuck on this prompt 😞

## Are these changes tested?
Yes running `make install` repeatedly 

## Are there any user-facing changes?

<!-- In the case of user-facing changes, please add the changelog label.
-->
2 files changed
tree: e9cb0c9b55c192c14f409c4eaaf992357768979f
  1. .github/
  2. dev/
  3. mkdocs/
  4. notebooks/
  5. pyiceberg/
  6. tests/
  7. vendor/
  8. .asf.yaml
  9. .codespellrc
  10. .gitignore
  11. .markdownlint.yaml
  12. .pre-commit-config.yaml
  13. LICENSE
  14. Makefile
  15. MANIFEST.in
  16. NOTICE
  17. pyproject.toml
  18. README.md
  19. ruff.toml
  20. setup.py
  21. uv.lock
README.md

Iceberg Python

PyIceberg is a Python library for programmatic access to Iceberg table metadata as well as to table data in Iceberg format. It is a Python implementation of the Iceberg table spec.

The documentation is available at https://py.iceberg.apache.org/.

Get in Touch