aglinxinyuan opened a new issue, #7720:
URL: https://github.com/apache/texera/issues/7720

   ### What happened?
   
   
[`.github/renovate.json5`](https://github.com/apache/texera/blob/main/.github/renovate.json5)
 freezes `numpy` / `pandas` / `pyarrow` because they sit on the Arrow IPC data 
path and must move in lockstep. Nothing freezes the CI **interpreter** those 
wheels are selected for, so Renovate raised `actions/setup-python`'s 
`python-version:` to 3.14 in #7715 and `build / amber-integration` broke on 
both runners.
   
   The interpreter is downstream of the frozen pins — a Python version is only 
usable if the pinned packages publish a wheel for it:
   
   | Pin in `amber/requirements.txt` | Wheels published | cp314? |
   | --- | --- | --- |
   | `numpy==2.1.0` | cp310–cp313 | no |
   | `pandas==2.2.3` | cp310–cp313 | no |
   | `pyarrow==23.0.1` | cp310–cp314 | yes |
   
   With no cp314 wheel, `uv` falls back to a source build of numpy, which does 
not compile against the 3.14 headers.
   
   ```
   Before:  Renovate bumps python-version -> 3.14 -> no numpy cp314 wheel
            -> uv source-builds numpy -> 11 compile errors -> job fails
   After:   python-version frozen with the numpy/pandas pins
            -> prebuilt wheel resolves -> job installs as before
   ```
   
   Renovate rewrites three standalone `python-version:` inputs:
   
   | Site | Job | Value on `main` |
   | --- | --- | --- |
   | `build.yml:401` | `amber-integration` | 3.11 |
   | `build.yml:127` | `frontend` | 3.12 |
   | `benchmarks.yml:217` | `Bench` | 3.12 |
   
   The pyamber matrix at `build.yml:1041` is `["3.11", "3.12", "3.13"]` — a 
plain list Renovate never reads. So besides breaking the build, the bump 
silently splits the interpreter CI actually runs on from the matrix that is 
actually tested.
   
   ### How to reproduce?
   
   1. Open (or re-run) the Renovate `github-actions` group PR that carries the 
`python` `uses-with` bump — #7715.
   2. `build / amber-integration (ubuntu-latest, 17)` and `(macos-latest, 17)` 
fail at the **Install Python dependencies** step.
   
   Locally, on a 3.14 interpreter:
   
   ```bash
   uv pip install --system --index-strategy unsafe-best-match -r 
amber/requirements.txt
   ```
   
   Wheel availability can be confirmed straight from PyPI:
   
   ```bash
   curl -s https://pypi.org/pypi/numpy/2.1.0/json | grep -o 'cp3[0-9][0-9]' | 
sort -u
   ```
   
   ### Version/Branch
   
   1.3.0-incubating-SNAPSHOT (main)
   
   ### Commit Hash (Optional)
   
   2f7e75e3e4 (head of #7715)
   
   ### Relevant log output
   
   ```shell
   Building pandas==2.2.3
   Building numpy==2.1.0
     × Failed to build `numpy==2.1.0`
     ├─▶ The build backend returned an error
     ╰─▶ Call to `mesonpy.build_wheel` failed (exit status: 1)
   
         ../numpy/_core/src/umath/string_fastsearch.h:132:5: error: no type 
named
         'ptrdiff_t' in namespace 'std'; did you mean simply 'ptrdiff_t'?
           132 |     std::ptrdiff_t
               |     ^~~~~~~~~~~~~~
         ...
         11 errors generated.
         [253/324] Compiling C++ object
         
numpy/_core/_multiarray_umath.cpython-314-darwin.so.p/src_umath_special_integer_comparisons.cpp.o
         ninja: build stopped: subcommand failed.
   ##[error]Process completed with exit code 1.
   ```
   


-- 
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]

Reply via email to