cmp0xff opened a new issue, #4128:
URL: https://github.com/apache/iceberg-python/issues/4128

   ### Apache Iceberg version
   
   0.12.0 (latest release)
   
   ### Please describe the bug 🐞
   
   Since 0.11.0, `requires-python` includes an upper bound `<4.0.0`. It was 
introduced in #2601 when the Poetry `python = ">=3.10,<4"` constraint was 
converted, and it was kept by #3586. 0.10.0 had no upper bound.
   
   Poetry requires a dependency's `requires-python` to cover the project's 
whole supported Python range. Projects that declare an open-ended range, such 
as `requires-python = ">=3.11"`, therefore never get 0.11.0 or 0.12.0. Poetry 
quietly picks 0.10.0 instead, with no error or warning.
   
   Reproduction with Poetry 2.5.1:
   
   ```toml
   [project]
   name = "repro"
   version = "0"
   requires-python = ">=3.11"
   dependencies = ["pyiceberg"]
   
   [tool.poetry]
   package-mode = false
   ```
   
   `poetry lock` locks `pyiceberg 0.10.0`, while `uv lock` on the same file 
locks `0.12.0`.
   
   If something else splits the project's Python range, for example a 
dependency with `python_version >= "3.15"` markers, Poetry locks 0.12.0 for the 
bounded part and 0.10.0 for the open-ended part. We hit this in 
pandas-dev/pandas-stubs#2015: Python 3.15 got 0.10.0, which raises 
`DeprecationWarning`s from pyparsing and pydantic at import.
   
   **Expected:** remove the upper bound and use `requires-python = ">=3.10"`. 
This matches the consensus in #1348 ("We don't necessarily have to enforce the 
upper bound") and the reasoning in #3586. Python 4 isn't planned, so the cap 
doesn't protect against anything in practice.
   
   _Drafted with AI assistance; reproduction verified with Poetry 2.5.1 and uv._
   
   ### Willingness to contribute
   
   - [x] I can contribute a fix for this bug independently
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to