On Mon, 20 May 2019, Miro Hrončok wrote:
Hello packagers. During the rebuilds for Python 3.8, we have found
out that
your package most likely has precythonized C sources.
There was an update to Cython and the C sources needs to be regenerated. In
line with Fedora packaging policies and guidelines, this should be done
anyway.
What needs to be done:
1. BR python3-Cython
2. figure out what C sources come from Cython sources
look for: /* Generated by Cython <version> */ on the top of them
often, all .c files are generated from Cython sources, but not always
3. in %prep, delete those files
If you build for Python 2 and Python 3, I recommend to only BR python3-Cython
and not python2-Cython, run %py3_build before %py2_build (Cython produces the
same sources on both Python versions).
Some setup.py files have custom detection whether Cython needs to be run, if
the above doesn't work alone, examine setup.py and search for "cython".
When you do this, reply to this thread, so we know we should rebuild your
package for 3.8 in
https://copr.fedorainfracloud.org/coprs/g/python/python3.8/
swt2c python-PyMuPDF
Actually, for python-PyMuPDF, it's worse. PyMuPDF is a python binding for
mupdf, a C library. Unfortunately, mupdf insists on not maintaining a
stable API and will not provide shared libraries. Thus, the current
problem is that mupdf has been updated in Rawhide to 1.15, but upstream
PyMuPDF hasn't updated to the new API yet. So, PyMuPDF FTBFS because of
that. :(
Scott