AlenkaF commented on code in PR #47313: URL: https://github.com/apache/arrow/pull/47313#discussion_r2272533883
########## ci/docker/linux-apt-python-313-freethreading.dockerfile: ########## @@ -32,13 +32,18 @@ COPY python/requirements-build.txt \ ENV ARROW_PYTHON_VENV /arrow-dev RUN python3.13t -m venv ${ARROW_PYTHON_VENV} + +# Free-threaded CPython 3.13 needs pinned cffi version +RUN sed '/^cffi/d' /arrow/python/requirements-test.txt > /arrow/python/requirements-patched.txt && \ + echo "cffi<2.0.0" >> /arrow/python/requirements-patched.txt Review Comment: Unfortunately, `python_version` doesn't support detailed versions like `3.13t` — it only handles the `major.minor` format: ``` Ignoring cffi: markers 'python_version == "3.13t"' don't match your environment ``` See: https://github.com/ursacomputing/crossbow/actions/runs/16930331373/job/47974180274#step:6:722 Other markers listed in [PEP 508](https://peps.python.org/pep-0508/#environment-markers) don't help either. Using something like `os.environ.get("PYTHON_GIL")` in a requirements file is also ignored by pip, since arbitrary Python expressions aren’t supported in markers. Not sure about other options — will keep investigating. -- 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: github-unsubscr...@arrow.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org