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

raulcd pushed a commit to branch maint-26.0.x
in repository https://gitbox.apache.org/repos/asf/arrow.git

commit d629fe91932ae8d8a2b5ef95df55f584ed8b6cbe
Author: Curt Hagenlocher <[email protected]>
AuthorDate: Sun Oct 18 17:51:42 2026 -0700

    GH-54489: [CI][Integration] Install jpype1 from conda-forge in 
conda-integration image (#54490)
    
    ### Rationale for this change
    
    The `conda-integration` image doesn't pin Python, so it now gets Python 
3.15. `ci/scripts/integration_arrow.sh` installs jpype1 with pip, and PyPI has 
no cp315 wheel for jpype1 yet. pip falls back to building from source, which 
fails because the image doesn't include Apache Ant. See #54489 for details.
    
    ### What changes are included in this PR?
    
    Install `jpype1` from conda-forge in `conda-integration.dockerfile`, as 
`conda-python-jpype.dockerfile` already does. conda-forge has builds for Python 
3.15 on both linux-64 and linux-aarch64.
    
    `integration_arrow.sh` is unchanged: its `pip install jpype1` finds the 
conda package already installed and does nothing. It still installs jpype1 when 
the script runs outside this image.
    
    ### Are these changes tested?
    
    Yes. The Integration job in apache/arrow-dotnet builds this image from 
scratch and fails with the error above. I ran that job on a fork with the Arrow 
checkout pointed at this branch, and it got past the jpype1 installation that 
used to fail. When I opened this PR the run was still in progress: 
https://github.com/CurtHagenlocher/arrow-dotnet/actions/runs/39150917107
    
    ### Are there any user-facing changes?
    
    No.
    
    ### Was AI used for this PR?
    
    In accordance to the [AI generation 
guidelines](https://arrow.apache.org/docs/dev/developers/overview.html#ai-generated-code),
 please disclose below whether and how AI was used in this PR.
    
    **PR code and description written by:**
    
    - [ ] Human
    - [x] AI
    
    **Reviewed before submission by:**
    
    - [ ] Human
    - [ ] AI
    - [ ] Not reviewed
    
    🤖 Generated with [Claude Code](https://claude.com/claude-code)
    
    * GitHub Issue: #54489
    
    Authored-by: Curt Hagenlocher <[email protected]>
    Signed-off-by: Sutou Kouhei <[email protected]>
---
 ci/docker/conda-integration.dockerfile | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/ci/docker/conda-integration.dockerfile 
b/ci/docker/conda-integration.dockerfile
index 517aea5c41..e9d5f143ef 100644
--- a/ci/docker/conda-integration.dockerfile
+++ b/ci/docker/conda-integration.dockerfile
@@ -28,6 +28,9 @@ ARG yarn=1.22
 ARG jdk=17
 
 # Install Archery and integration dependencies
+# jpype1 is installed here rather than with pip in integration_arrow.sh, as
+# PyPI may not yet have wheels for the Python version selected by conda
+# and building jpype1 from source requires Apache Ant.
 COPY ci/conda_env_archery.txt /arrow/ci/
 
 RUN mamba install -q -y \
@@ -35,6 +38,7 @@ RUN mamba install -q -y \
         numpy \
         compilers \
         go-cgo \
+        jpype1 \
         maven=${maven} \
         nodejs=${node} \
         yarn=${yarn} \

Reply via email to