From 8b5db39593478641798c3fa46b53dcaf5146568e Mon Sep 17 00:00:00 2001 From: Taewoon Kim Date: Sun, 25 Oct 2026 01:14:55 +0900 Subject: [PATCH] build: drop jpype1 (and the unused build package) from the wheel build requirements setup.py imports only setuptools, so the wheel build needs no JPype. On Python 3.15 JPype 1.7.1 has no cp315 wheel, so listing jpype1 in build-system.requires (and in the Dockerfile build-tools install) makes the build compile it from source, which fails. Verified with `uv build --wheel --python 3.15`. Co-Authored-By: Claude Sonnet 5.5 --- pyproject.toml | 5 ++++- scripts/Dockerfile.build | 3 ++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 37269b7b..13ed5a0e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,5 +1,8 @@ [build-system] -requires = ["build>=0.7.0", "setuptools>=61.0", "wheel", "jpype1"] +# setup.py imports only setuptools, so the build needs no JPype. A build-time jpype1 was compiled from +# source on a Python without a JPype wheel (3.15, until JPype > 1.7.1) and failed there. `build` is a +# frontend, not a backend requirement. +requires = ["setuptools>=61.0", "wheel"] build-backend = "setuptools.build_meta" # This file defines the package metadata for arcadedb-embedded. diff --git a/scripts/Dockerfile.build b/scripts/Dockerfile.build index 82ca7886..a2c07583 100644 --- a/scripts/Dockerfile.build +++ b/scripts/Dockerfile.build @@ -206,7 +206,8 @@ COPY README.md ./ # Install Python build dependencies -RUN uv pip install --system build wheel setuptools jpype1 +# No jpype1: setup.py never imports it, and a Python without a JPype wheel (3.15, until JPype > 1.7.1) would compile it +RUN uv pip install --system build wheel setuptools # Re-declare build args for this stage (required after FROM) ARG PACKAGE_NAME