This is an automated email from the ASF dual-hosted git repository.

kevinjqliu pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/iceberg-python.git


The following commit(s) were added to refs/heads/main by this push:
     new 8878b2c2 Fix Nightly PyPi Artifact Wheels Build (#2678)
8878b2c2 is described below

commit 8878b2c260bf62ad16ef6f8e8d3a6ae93103eff7
Author: Drew Gallardo <[email protected]>
AuthorDate: Mon Nov 3 07:26:53 2025 -0800

    Fix Nightly PyPi Artifact Wheels Build (#2678)
    
    # Rationale for this change
    
    Nightly build has been failing for some time since dropping support
    [python 3.9
    
support.](https://github.com/apache/iceberg-python/pull/2554/files#diff-edbf927c810f310a669913604ffe71ffaecea1b9ef73f137f9d469491ea1c3d9L72)
    That PR included a change that dropped the upper bound of the python
    version.
    
    ```
    -        CIBW_PROJECT_REQUIRES_PYTHON: ">=3.9,<3.13"
    +        CIBW_PROJECT_REQUIRES_PYTHON: ">=3.10"
    ```
    
    
    That made cibuildwheel try Python 3.14 and sometimes the free-threaded
    *t builds. Those are part of the PEP 703 effort to allow Python without
    the GIL. Therefore, the avro related code would throw a message breaking
    the build and I don't think this has been evaluated yet. So this change
    adds `CIBW_SKIP: "cp3*t-*" ` to skip free-threaded ABIs for now, and we
    can continue building on new regular CPythons while avoiding PEP 703
    no-GIL builds.
    
    Bulld failures:
    -
    
https://github.com/apache/iceberg-python/actions/workflows/nightly-pypi-build.yml
    
    ```
       
../venv-test-arm64/lib/python3.14t/site-packages/_pytest/assertion/rewrite.py:178:
 in exec_module
          exec(co, module.__dict__)
      
/Users/runner/work/iceberg-python/iceberg-python/tests/avro/test_decoder.py:29: 
in <module>
          from pyiceberg.avro.decoder_fast import CythonBinaryDecoder
      E   RuntimeWarning: The global interpreter lock (GIL) has been enabled to 
load module 'pyiceberg.avro.decoder_fast', which has not declared that it can 
run safely without the GIL. To override this behavior and keep the GIL disabled 
(at your own risk), run with PYTHON_GIL=0 or -Xgil=0.
      =========================== short test summary info 
============================
      ERROR 
../../../../../../../../../Users/runner/work/iceberg-python/iceberg-python/tests/avro/test_decoder.py
 - RuntimeWarning: The global interpreter lock (GIL) has been enabled to load 
module 'pyiceberg.avro.decoder_fast', which has not declared that it can run 
safely without the GIL. To override this behavior and keep the GIL disabled (at 
your own risk), run with PYTHON_GIL=0 or -Xgil=0.
      !!!!!!!!!!!!!!!!!!!! Interrupted: 1 error during collection 
!!!!!!!!!!!!!!!!!!!!
      =============================== 1 error in 0.13s 
===============================
    
    ```
    
    ## Are these changes tested?
    Yes
    
    ## Are there any user-facing changes?
    No
---
 .github/workflows/pypi-build-artifacts.yml | 2 ++
 .github/workflows/svn-build-artifacts.yml  | 2 ++
 2 files changed, 4 insertions(+)

diff --git a/.github/workflows/pypi-build-artifacts.yml 
b/.github/workflows/pypi-build-artifacts.yml
index 65de2a78..7f749f75 100644
--- a/.github/workflows/pypi-build-artifacts.yml
+++ b/.github/workflows/pypi-build-artifacts.yml
@@ -74,6 +74,8 @@ jobs:
           # Ignore tests for pypy since not all dependencies are compiled for 
it
           # and would require a local rust build chain
           CIBW_TEST_SKIP: "pp*"
+          # Skip free-threaded (PEP 703) builds until we evaluate decoder_fast 
support
+          CIBW_SKIP: "cp3*t-*"
 
       - name: Add source distribution
         if: startsWith(matrix.os, 'ubuntu')
diff --git a/.github/workflows/svn-build-artifacts.yml 
b/.github/workflows/svn-build-artifacts.yml
index 116c6538..34075b79 100644
--- a/.github/workflows/svn-build-artifacts.yml
+++ b/.github/workflows/svn-build-artifacts.yml
@@ -69,6 +69,8 @@ jobs:
           # Ignore tests for pypy since not all dependencies are compiled for 
it
           # and would require a local rust build chain
           CIBW_TEST_SKIP: "pp*"
+          # Skip free-threaded (PEP 703) builds until we evaluate decoder_fast 
support
+          CIBW_SKIP: "cp3*t-*"
 
       - name: Add source distribution
         if: startsWith(matrix.os, 'ubuntu')

Reply via email to