https://bugzilla.redhat.com/show_bug.cgi?id=1445411
--- Comment #4 from Paulo Andrade paulo.cesar.pereira.de.andrade@gmail.com --- Spec URL: https://pcpa.fedorapeople.org/python-cysignals.spec SRPM URL: https://pcpa.fedorapeople.org/python-cysignals-1.3.2-2.fc27.src.rpm
I might have made some change to the spec, but now I am sure it matches the one in the srpm. Your suggested patch was added verbatim, and also a few extra changes to make it "almost" pass all %check tests with python3; apparently is is not yet fully functional with python3, or this version has issues. Major issue was a Popen('python') that would invoke python2.
- Header files in -devel subpackage, if present. Note: python2-cysignals : /usr/lib64/python2.7/site- packages/cysignals/debug.h python2-cysignals : /usr/lib64/python2.7/site-
[...]
See: http://fedoraproject.org/wiki/Packaging/Guidelines#DevelPackages. Also, is it really necessary to install the .pxd and .pxi files?
I did not create a -devel at first subpackage because it is not the only python package installing private headers: $ rpm -qf $(find /usr/lib64/python2.7/site-packages/ | grep '.h$') | grep -v cysignals | grep -v sagemath | uniq python2-zmq-16.0.2-3.fc26.x86_64 python2-astropy-1.3.2-1.fc27.x86_64 python2-scipy-0.18.0-3.fc26.x86_64 python2-cffi-1.10.0-1.fc27.x86_64 python2-lxml-3.7.2-2.fc26.x86_64 python2-numpy-1.12.1-1.fc27.x86_64 python2-numpy-f2py-1.12.1-1.fc27.x86_64 python2-Cython-0.25.2-4.fc26.x86_64 The .pxi and .pxd are used during sagemath build.
- %{?python_provide:%python_provide python3-%{modname}} is missing from the python3 package
Fixed.
- The cysignals-CSI script has a shebang that invokes /usr/bin/env. It should invoke the correct python interpreter directly instead.
Now it installs cysignals-CSI-2 and cysignals-CSI-3 files, and the C source was patched to invoke the correct one.
- Shouldn't the license be LGPLv3+?
Corrected.
- The license file is not installed if only the -doc subpackage is installed.
Added a requires to python-cysignals
- The -doc subpackage doesn't own /usr/share/doc/python-cysignals, and neither does any other subpackage.
Corrected.
- I assume the intent is to unbundle this package from sagemath. Is that right? If so, the fact that sagemath also owns /usr/lib64/python2.7/site-packages/cysignals can be ignored.
Yes. Only sagemath uses it, thus also not the latest version.
- The changelog is missing.
Fixed.
- The URL field is missing. It should probably point to either http://cysignals.readthedocs.io/en/latest/ or https://github.com/sagemath/cysignals.
Corrected.
- The latest version is 1.6.4.
At first, and because only sagemath uses it, I would prefer to avoid conflicts using a version not matching the one required by the sagemath package.
- The package checks for the emms assembly instruction. That's okay on x86_64, where it is universally available, and also okay on non-x86 architectures, where it is universally unavailable. However, on i386, that instruction may be detected on the builders and compiled in, but we can't guarantee that all i386 users have that instruction available. Somehow, use of that instruction has to be disabled for i386 builds.
I just #if 0'ed the C source. It apparently is only required for solaris.
- The spec file uses both tabs and spaces.
I did not find any match for ' \t' or '\t '. But there are lines starting with less than 8 spaces. That may depend on having tabs set to 4 or 8 spaces...
- /usr/share/doc/python-cysignals/html/.buildinfo can be excluded from the -doc subpackage.
Fixed.