Hello Rustaceans and Pythonistas,

The "cpython" and "python3-sys" crates provide Rust bindings for
CPython, but the project is no longer actively maintained [0], and it
does not support CPython 3.12+ due to ABI / API changes. Programs that
use the "cpython" bindings for building against CPython 3.12+ crash at
runtime.

The upstream project recommends projects to move to the PyO3 bindings,
which are much more popular now, are actively maintained, and which
have been adding support for new versions of CPython pretty quickly
over the past few years.

The only package in Fedora that depends on the "cpython" bindings is
mercurial, which uses them for building the "mercurial-rust"
extensions. These extensions do not work on Fedora 39+ due to the
aforementioned changes in Python 3.12+. I reported this as an issue
half a year ago [1], but got no response from the mercurial
maintainers.

My recommendation would be to disable building the mercurial-rust
extensions on Fedora 39+ (where they already don't work!) until
mercurial upstream moves to PyO3 to properly support CPython 3.12+.

I am planning to retire the "rust-cpython" and "rust-python3-sys"
crates next week.

Fabio

[0]: https://github.com/dgrunwald/rust-cpython/commit/e815555
[1]: https://bugzilla.redhat.com/show_bug.cgi?id=2249383
--
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue

Reply via email to