plusplusjiajia opened a new pull request, #10500:
URL: https://github.com/apache/paimon/pull/10500

   ### Purpose
   
   pyroaring 1.0.4 and later publish no Python 3.8 wheels but still accept 3.8 
(no `requires_python`), so pip on 3.8 resolves `pyroaring>=1.0.0` to the newest 
sdist (1.2.0 today) and compiles it. Without a C++ compiler, installing 
pypaimon on 3.8 fails with `command 'g++' failed`. 1.0.3 is the last release 
with cp38 wheels, for every platform (manylinux, musllinux, macOS, Windows). 
This caps 3.8 at 1.0.3, the way 3.6 and 3.7 are already capped at their last 
supported releases.
   
   The Python 3.8 install check in CI installs `build-essential` first, so it 
builds 1.2.0 from source and does not catch this.
   
   ### Tests
   
   - `dev/test_packaging.py` passes on Python 3.6.
   - On Python 3.8.17 with no g++ (Alibaba Cloud Linux 3), `pip install 
./paimon-python` fails on master (it picks `pyroaring-1.2.0.tar.gz` and g++ is 
missing) and succeeds with this change (it picks the `pyroaring-1.0.3` cp38 
manylinux wheel).
   - With pyroaring 1.0.3 on Python 3.8, `roaring_bitmap_test`, 
`test_field_aggregators`, `global_index_test`, `btree_thread_safety_test`, 
`deletion_vector_path_test`, `data_evolution_deletion_vector_test` and 
`vector_search_filter_test` give 341 passed and 58 skipped. All the skipped 
tests are native deletion-vector paths that need `pypaimon-rust`.
   
   🤖 Generated with [Claude Code](https://claude.com/claude-code)
   


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