deepmodeling / deepmodeling/reacnetgenerator

Cython 3.3 breaks builds using Python Limited API 3.7

Open
#2,462 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
103
Forks
46
Avg merge
5d 12h
Merged PRs (30d)
18

Description

## Description

Fresh builds from `master` fail after the build environment resolves Cython 3.3.

The project currently declares:

```toml
cython>=3.0.1
```

while the CMake configuration builds the extension with:

```cmake
python_add_library(
dps
MODULE
USE_SABI
3.7
...
)
```

Cython 3.3 rejects this combination with:

```text
Cython 3.3 requires the Python Limited API version to be 3.9 or greater.
```

## Impact

This currently blocks multiple CI workflows before project tests can start,
including wheel builds, tox, Docker, documentation, benchmarks, and the type
checker.

The failure occurs on Linux, macOS, and Windows.

## Reproduction

```bash
uv build --wheel --no-cache
```

## Verification

Constraining the isolated build environment to `cython<3.3` allows the wheel
to build successfully.

## Possible fixes

1. Update the extension to use Limited API 3.9 or newer. The project already
requires Python 3.10 or newer.
2. Temporarily constrain the build dependency to `cython<3.3`.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.