You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@arrow.apache.org by ko...@apache.org on 2026/10/19 00:51:50 UTC

(arrow) branch main updated: GH-54489: [CI][Integration] Install jpype1 from conda-forge in conda-integration image (#54490)

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

kou pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/arrow.git


The following commit(s) were added to refs/heads/main by this push:
     new d67d78f6a60 GH-54489: [CI][Integration] Install jpype1 from conda-forge in conda-integration image (#54490)
d67d78f6a60 is described below

commit d67d78f6a60b065af9bd589f8c8b3f023d295678
Author: Curt Hagenlocher <cu...@hagenlocher.org>
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 <cu...@hagenlocher.org>
    Signed-off-by: Sutou Kouhei <ko...@clear-code.com>
---
 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 517aea5c413..e9d5f143ef7 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} \