Spec URL: http://pcpa.fedorapeople.org/sagemath.spec SRPM URL: http://pcpa.fedorapeople.org/sagemath/SRPMS/sagemath-5.4-1.fc19.src.rpm Description: Sage is a free open-source mathematics software system licensed under the GPL. It combines the power of many existing open-source packages into a common Python-based interface. Fedora Account System Username: pcpa

Major know issue is that it builds an "internal" version of cython, ipython and pexpect; does not work with system version of those. I have been working on packaging sagemath in Fedora for over 6 months, so I have intested quite some time on it. But I have been packaging sagemath in Mandriva since 2009, so, while it is very tough to package, I managed to work on it for quite some time. To make it a bit easier to have an idea of a review, here is a review before a few extra corrections: ---%<--- Package Review ============== Key: [x] = Pass [!] = Fail [-] = Not applicable [?] = Not evaluated [ ] = Manual review needed Issues: ======= [!]: Package installs properly. Note: Installation errors (see attachment) See: https://fedoraproject.org/wiki/Packaging:Guidelines [!]: Packages have proper BuildRequires/Requires on jpackage-utils See: https://fedoraproject.org/wiki/Packaging:Java [!]: Javadocs are placed in %{_javadocdir}/%{name} (no -%{version} symlink) Note: No javadoc subpackage present See: https://fedoraproject.org/wiki/Packaging:Java#Javadoc_installation [!]: Fully versioned dependency in subpackages, if present. Note: Missing: 'Requires: %%{name} =' in: %package devel See: http://fedoraproject.org/wiki/Packaging/Guidelines#RequiringBasePackage [!]: Development (unversioned) .so files in -devel subpackage, if present. Note: Unversioned so-files directly in %_libdir. See: http://fedoraproject.org/wiki/Packaging/Guidelines#DevelPackages [!]: If (and only if) the source package includes the text of the license(s) in its own file, then that file, containing the text of the license(s) for the package is included in %doc. Note: Cannot find COPYING.txt in rpm(s) See: http://fedoraproject.org/wiki/Packaging/LicensingGuidelines#License_Text [!]: Javadoc documentation files are generated and included in -javadoc subpackage Note: No javadoc subpackage present See: https://fedoraproject.org/wiki/Packaging:Java#Javadoc_installation [!]: Javadoc subpackages have Requires: jpackage-utils See: https://fedoraproject.org/wiki/Packaging:Java ===== MUST items ===== C/C++: [x]: Header files in -devel subpackage, if present. [x]: Package does not contain any libtool archives (.la) [ ]: Package does not contain kernel modules. [ ]: Package contains no static executables. [x]: Rpath absent or only used for internal libs. [!]: Development (unversioned) .so files in -devel subpackage, if present. Note: Unversioned so-files directly in %_libdir. Generic: [ ]: Package is licensed with an open-source compatible license and meets other legal requirements as defined in the legal section of Packaging Guidelines. [x]: Package successfully compiles and builds into binary rpms on at least one supported primary architecture. [ ]: %build honors applicable compiler flags or justifies otherwise. [x]: All build dependencies are listed in BuildRequires, except for any that are listed in the exceptions section of Packaging Guidelines. [ ]: Package contains no bundled libraries. [ ]: Changelog in prescribed format. [x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the beginning of %install. [ ]: Sources contain only permissible code or content. [x]: Each %files section contains %defattr if rpm < 4.4 [ ]: Macros in Summary, %description expandable at SRPM build time. [x]: Package contains desktop file if it is a GUI application. [x]: Package installs a %{name}.desktop using desktop-file-install if there is such a file. [ ]: Development files must be in a -devel package [ ]: Package requires other packages for directories it uses. [ ]: Package uses nothing in %doc for runtime. [ ]: Package is not known to require ExcludeArch. [x]: Package does not contain duplicates in %files. [x]: Permissions on files are set properly. [ ]: Fully versioned dependency in subpackages, if present. Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in %package devel [ ]: Package complies to the Packaging Guidelines [x]: Spec file lacks Packager, Vendor, PreReq tags. [!]: If (and only if) the source package includes the text of the license(s) in its own file, then that file, containing the text of the license(s) for the package is included in %doc. Note: Cannot find COPYING.txt in rpm(s) [ ]: License field in the package spec file matches the actual license. Note: Checking patched sources after %prep for licenses. Licenses found: "Apache (v2.0)", "GPL (v2 or later)", "Unknown or generated", "MIT/X11 (BSD like)", "*No copyright* PSF (v2.)", "GPL (v2 or later) (with incorrect FSF address)", "BSD (3 clause)", "BSD (2 clause)", "LGPL (v2.1 or later)". 9 files have unknown license. Detailed output of licensecheck in /home/pcpa/review-sagemath/licensecheck.txt [ ]: License file installed when any subpackage combination is installed. [ ]: Package consistently uses macro is (instead of hard-coded directory names). [ ]: If the package is under multiple licenses, the licensing breakdown must be documented in the spec. [x]: Package is named using only allowed ASCII characters. [ ]: Package is named according to the Package Naming Guidelines. [ ]: Package does not generate any conflict. Note: Package contains no Conflicts: tag(s) [x]: Package do not use a name that already exist [ ]: Package obeys FHS, except libexecdir and /usr/target. [ ]: If the package is a rename of another package, proper Obsoletes and Provides are present. [ ]: Package must own all directories that it creates. [ ]: Package does not own files or directories owned by other packages. [!]: Package installs properly. Note: Installation errors (see attachment) [ ]: Package is not relocatable. [ ]: Requires correct, justified where necessary. [x]: CheckResultdir [x]: Rpmlint is run on all rpms the build produces. Note: There are rpmlint messages (see attachment). [x]: Sources used to build the package match the upstream source, as provided in the spec URL. [ ]: Spec file is legible and written in American English. [x]: Spec file name must match the spec package %{name}, in the format %{name}.spec. [ ]: Package contains systemd file(s) if in need. [x]: File names are valid UTF-8. [ ]: Useful -debuginfo package or justification otherwise. [ ]: Large documentation must go in a -doc subpackage. Note: Documentation size is 409600 bytes in 2 files. [x]: Packages must not store files under /srv, /opt or /usr/local Java: [!]: Packages have proper BuildRequires/Requires on jpackage-utils [!]: Fully versioned dependency in subpackages, if present. Note: Missing: 'Requires: %%{name} =' in: %package devel [!]: Javadoc documentation files are generated and included in -javadoc subpackage Note: No javadoc subpackage present [!]: Javadoc subpackages have Requires: jpackage-utils [!]: Javadocs are placed in %{_javadocdir}/%{name} (no -%{version} symlink) Note: No javadoc subpackage present [x]: Bundled jar/class files should be removed before build Maven: [x]: Old add_to_maven_depmap macro is not being used [ ]: If package contains pom.xml files install it (including depmaps) even when building with ant Python: [x]: Package contains BR: python2-devel or python3-devel [ ]: Binary eggs must be removed in %prep Note: Cannot find sources under BUILD (using prebuilt sources?) [ ]: Python eggs must not download any dependencies during the build process. [ ]: A package which is used by another package via an egg interface should provide egg info. [ ]: Package meets the Packaging Guidelines::Python ===== SHOULD items ===== Generic: [x]: Reviewer should test that the package builds in mock. [x]: Buildroot is not present [ ]: Avoid bundling fonts in non-fonts packages. Note: Package contains font files [x]: Package has no %clean section with rm -rf %{buildroot} (or $RPM_BUILD_ROOT) [ ]: If the source package does not include license text(s) as a separate file from upstream, the packager SHOULD query upstream to include it. [x]: Dist tag is present. [x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin. [ ]: Final provides and requires are sane (rpm -q --provides and rpm -q --requires). [ ]: Package functions as described. [ ]: Latest version is packaged. [ ]: Package does not include license text files separate from upstream. [ ]: Patches link to upstream bugs/comments/lists or are otherwise justified. [x]: The placement of pkgconfig(.pc) files are correct. [ ]: Scriptlets must be sane, if used. [x]: SourceX tarball generation or download is documented. [!]: SourceX / PatchY prefixed with %{name}. Note: Source2 (makecmds.sty) Source3 (Jmol.js) Source0 (sage-5.4.tar) Source1 (gprc.expect) Source4 (JmolHelp.html) Source5 (testjava.sh) Patch16 (trac_12822_pt_translation_of_tutorial.patch) Patch17 (trac_12822_pt_translation_of_tutorial_rev1.patch) Patch15 (trac_12502_pt_translation_of_a_tour_of_sage_rebase1.patch) [x]: SourceX is a working URL. [ ]: Description and summary sections in the package spec file contains translations for supported Non-English languages, if available. [ ]: Package should compile and build into binary rpms on all supported architectures. [ ]: %check is present and all tests pass. [ ]: Packages should try to preserve timestamps of original installed files. [x]: Spec use %global instead of %define. Java: [ ]: Package has BuildArch: noarch (if possible) [ ]: Package uses upstream build method (ant/maven/etc.) ===== EXTRA items ===== Generic: [!]: Rpmlint is run on all installed packages. Note: Mock build failed [x]: Large data in /usr/share should live in a noarch subpackage if package is arched. Installation errors ------------------- INFO: mock.py version 1.1.28 starting... Start: init plugins INFO: selinux enabled Finish: init plugins Start: run Mock Version: 1.1.28 INFO: Mock Version: 1.1.28 Start: lock buildroot INFO: installing package(s): /home/pcpa/review-sagemath/results/sagemath-debuginfo-5.4-1.fc19.x86_64.rpm /home/pcpa/review-sagemath/results/sagemath-devel-5.4-1.fc19.x86_64.rpm /home/pcpa/review-sagemath/results/sagemath-5.4-1.fc19.x86_64.rpm ERROR: Command failed: # ['/usr/bin/yum', '--installroot', '/var/lib/mock/fedora-rawhide-x86_64/root/', 'install', '/home/pcpa/review-sagemath/results/sagemath-debuginfo-5.4-1.fc19.x86_64.rpm', '/home/pcpa/review-sagemath/results/sagemath-devel-5.4-1.fc19.x86_64.rpm', '/home/pcpa/review-sagemath/results/sagemath-5.4-1.fc19.x86_64.rpm', '--setopt=tsflags=nocontexts'] Error: Package: python-cvxopt-1.1.5-5.fc19.x86_64 (fedora) Requires: libcholmod.so.1()(64bit) You could try using --skip-broken to work around the problem You could try running: rpm -Va --nofiles --nodigest Rpmlint ------- Checking: sagemath-5.4-1.fc19.src.rpm sagemath-debuginfo-5.4-1.fc19.x86_64.rpm sagemath-devel-5.4-1.fc19.x86_64.rpm sagemath-5.4-1.fc19.x86_64.rpm sagemath.src: W: strange-permission testjava.sh 0755L sagemath.src:353: W: rpm-buildroot-usage %prep rm -rf %{buildroot} sagemath.src:356: W: rpm-buildroot-usage %prep export SAGE_ROOT=%{buildroot}%{SAGE_ROOT} sagemath.src:357: W: rpm-buildroot-usage %prep export SAGE_LOCAL=%{buildroot}%{SAGE_LOCAL} sagemath.src:358: W: rpm-buildroot-usage %prep export SAGE_DEVEL=%{buildroot}%{SAGE_DEVEL} sagemath.src:379: W: rpm-buildroot-usage %build export SAGE_ROOT=%{buildroot}%{SAGE_ROOT} sagemath.src:380: W: rpm-buildroot-usage %build export SAGE_LOCAL=%{buildroot}%{SAGE_LOCAL} sagemath.src:381: W: rpm-buildroot-usage %build export SAGE_DEVEL=%{buildroot}%{SAGE_DEVEL} sagemath.src:384: W: rpm-buildroot-usage %build export DESTDIR=%{buildroot} sagemath.src:389: W: rpm-buildroot-usage %build export PATH=%{buildroot}%{_bindir}:$PATH sagemath.src:390: W: rpm-buildroot-usage %build export PYTHONPATH=%{buildroot}%{python_sitearch}:$PYTHONPATH sagemath.src:394: W: rpm-buildroot-usage %build %__python setup.py install --root=%{buildroot} sagemath.src:400: W: rpm-buildroot-usage %build %__python setup.py install --root=%{buildroot} sagemath.src:294: W: mixed-use-of-spaces-and-tabs (spaces: line 294, tab: line 3) sagemath.src: W: invalid-url Source0: http://www.sagemath.org/src/sage-5.4.tar HTTP Error 404: Not Found sagemath-devel.x86_64: W: summary-not-capitalized C sagemath development files sagemath-devel.x86_64: W: no-documentation sagemath.x86_64: W: no-soname /usr/lib64/libcsage.so sagemath.x86_64: W: shared-lib-calls-exit /usr/lib64/libcsage.so exit.5 sagemath.x86_64: W: dangling-symlink /usr/lib64/sagemath/local/bin/sage_pari /usr/bin/gp sagemath.x86_64: E: zero-length /usr/lib64/python2.7/site-packages/sage/misc/test_cpickle_sage.py sagemath.x86_64: W: dangling-symlink /usr/lib64/python2.7/site-packages/sagenb/data/jmol/JmolApplet.jar /usr/share/java/JmolApplet.jar sagemath.x86_64: W: dangling-symlink /usr/lib64/sagemath/share/extcode/sage /usr/lib64/python2.7/site-packages sagemath.x86_64: W: dangling-symlink /usr/lib64/sagemath/local/include /usr/include sagemath.x86_64: W: dangling-symlink /usr/lib64/sagemath/devel/sage /usr/lib64/python2.7/site-packages sagemath.x86_64: E: zero-length /usr/lib64/sagemath/share/extcode/notebook/javascript/jquery/starterkit/ratings.dat sagemath.x86_64: W: dangling-symlink /usr/lib64/sagemath/local/share /usr/share sagemath.x86_64: W: dangling-symlink /usr/lib64/sagemath/local/lib /usr/lib64 sagemath.x86_64: E: zero-length /usr/lib64/python2.7/site-packages/sage/server/notebook/compress/all.py sagemath.x86_64: E: zero-length /usr/lib64/python2.7/site-packages/sage/libs/pari/to_gen.pxi sagemath.x86_64: W: dangling-symlink /usr/lib64/sagemath/local/bin/gap_stamp /usr/bin/gap sagemath.x86_64: W: dangling-symlink /usr/lib64/python2.7/site-packages/sagenb/data/jmol/vecmath.jar /usr/share/java/vecmath.jar sagemath.x86_64: W: no-manual-page-for-binary sage sagemath.x86_64: W: no-manual-page-for-binary cygdb sagemath.x86_64: W: file-not-in-%lang /usr/lib64/python2.7/site-packages/sagenb/translations/cs_CZ/LC_MESSAGES/messages.mo sagemath.x86_64: W: file-not-in-%lang /usr/lib64/python2.7/site-packages/sagenb/translations/de_AT/LC_MESSAGES/messages.mo sagemath.x86_64: W: file-not-in-%lang /usr/lib64/python2.7/site-packages/sagenb/translations/pt_BR/LC_MESSAGES/messages.mo sagemath.x86_64: W: file-not-in-%lang /usr/lib64/python2.7/site-packages/sagenb/translations/ru_RU/LC_MESSAGES/messages.mo sagemath.x86_64: W: one-line-command-in-%post /usr/bin/mktexlsr 4 packages and 0 specfiles checked; 4 errors, 35 warnings. Requires -------- sagemath-debuginfo-5.4-1.fc19.x86_64.rpm (rpmlib, GLIBC filtered): sagemath-devel-5.4-1.fc19.x86_64.rpm (rpmlib, GLIBC filtered): sagemath(x86-64) = 5.4-1.fc19 sagemath-5.4-1.fc19.x86_64.rpm (rpmlib, GLIBC filtered): /bin/bash /bin/sh /usr/bin/env /usr/bin/python 4ti2 GAPDoc R Singular apache-commons-cli cddlib-tools ecl firefox gap gap-character-tables gap-prim-groups gap-small-groups gap-table-of-marks gap-trans-groups genus2reduction gfan jmol jsmath-fonts ld-linux-x86-64.so.2()(64bit) libLfunction.so.1.23()(64bit) libc.so.6()(64bit) libcliquer.so.1()(64bit) libcsage.so()(64bit) libcudd.so.2()(64bit) libecl.so.12.7()(64bit) libecm.so.0()(64bit) libflint.so.1()(64bit) libfplll.so.0()(64bit) libgcc_s.so.1()(64bit) libgcc_s.so.1(GCC_3.0)(64bit) libgcc_s.so.1(GCC_4.0.0)(64bit) libgd.so.2()(64bit) libgivaro.so.0()(64bit) libglpk.so.0()(64bit) libgmp.so.10()(64bit) libgmpxx.so.4()(64bit) libgsl.so.0()(64bit) libgslcblas.so.0()(64bit) libiml.so.0()(64bit) libjc.so.0()(64bit) liblinbox.so.0()(64bit) liblinboxsage.so.0()(64bit) libm.so.6()(64bit) libm4ri-0.0.20111203.so()(64bit) libm4rie-0.0.20111203.so()(64bit) libmpc.so.2()(64bit) libmpfi.so.0()(64bit) libmpfr.so.4()(64bit) libntl.so.0()(64bit) libpari-gmp.so.3()(64bit) libpng15.so.15()(64bit) libpolybori-0.8.2.so.0()(64bit) libpolybori_groebner-0.8.2.so.0()(64bit) libppl.so.9()(64bit) libpthread.so.0()(64bit) libpynac.so.4()(64bit) libpython2.7.so.1.0()(64bit) libratpoints.so.0()(64bit) libreadline.so.6()(64bit) libsingular.so()(64bit) libstdc++.so.6()(64bit) libstdc++.so.6(CXXABI_1.3)(64bit) libsymmetrica.so.0()(64bit) libz.so.1()(64bit) libzn_poly-0.9.so()(64bit) maxima-gui maxima-runtime-ecl palp pari-gp python(abi) = 2.7 python-ZODB3 python-crypto python-cvxopt python-flask-autoindex python-flask-babel python-flask-openid python-flask-silk python-networkx python-polybori python-twisted-web python-twisted-web2 rpy rtld(GNU_HASH) sympow sympy tachyon texlive vecmath Provides -------- sagemath-debuginfo-5.4-1.fc19.x86_64.rpm: sagemath-debuginfo = 5.4-1.fc19 sagemath-debuginfo(x86-64) = 5.4-1.fc19 sagemath-devel-5.4-1.fc19.x86_64.rpm: sagemath-devel = 5.4-1.fc19 sagemath-devel(x86-64) = 5.4-1.fc19 sagemath-5.4-1.fc19.x86_64.rpm: libcsage.so()(64bit) sagemath = 5.4-1.fc19 sagemath(x86-64) = 5.4-1.fc19 Unversioned so-files -------------------- sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/libcsage.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/algebras/quatalg/quaternion_algebra_cython.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/algebras/quatalg/quaternion_algebra_element.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/calculus/interpolators.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/calculus/riemann.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/calculus/var.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/categories/action.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/categories/category_singleton.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/categories/examples/semigroups_cython.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/categories/functor.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/categories/map.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/categories/morphism.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/coding/binary_code.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/combinat/combinat_cython.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/combinat/debruijn_sequence.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/combinat/degree_sequences.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/combinat/dict_addition.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/combinat/enumeration_mod_permgroup.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/combinat/expnums.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/combinat/matrices/dancing_links.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/combinat/partitions.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/combinat/permutation_cython.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/combinat/words/word_datatypes.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/crypto/boolean_function.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/ext/c_lib.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/ext/fast_callable.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/ext/fast_eval.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/ext/interactive_constructors_c.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/ext/interpreters/wrapper_cdf.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/ext/interpreters/wrapper_el.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/ext/interpreters/wrapper_py.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/ext/interpreters/wrapper_rdf.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/ext/interpreters/wrapper_rr.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/ext/multi_modular.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/finance/fractal.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/finance/markov_multifractal_cython.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/finance/time_series.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/functions/prime_pi.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/games/sudoku_backtrack.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/geometry/integral_points.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/geometry/point_collection.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/geometry/toric_lattice_element.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/geometry/triangulation/base.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/graphs/base/c_graph.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/graphs/base/dense_graph.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/graphs/base/sparse_graph.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/graphs/base/static_sparse_graph.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/graphs/chrompoly.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/graphs/cliquer.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/graphs/comparability.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/graphs/convexity_properties.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/graphs/distances_all_pairs.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/graphs/generic_graph_pyx.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/graphs/genus.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/graphs/graph_decompositions/graph_products.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/graphs/graph_decompositions/rankwidth.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/graphs/graph_decompositions/vertex_separation.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/graphs/graph_generators_pyx.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/graphs/matchpoly.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/graphs/modular_decomposition/modular_decomposition.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/graphs/planarity.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/graphs/spanning_tree.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/graphs/trees.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/graphs/weakly_chordal.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/groups/group.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/groups/perm_gps/partn_ref/automorphism_group_canonical_label.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/groups/perm_gps/partn_ref/double_coset.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/groups/perm_gps/partn_ref/refinement_binary.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/groups/perm_gps/partn_ref/refinement_graphs.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/groups/perm_gps/partn_ref/refinement_lists.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/groups/perm_gps/partn_ref/refinement_matrices.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/groups/perm_gps/partn_ref/refinement_python.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/groups/perm_gps/permgroup_element.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/gsl/callback.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/gsl/dwt.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/gsl/fft.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/gsl/gsl_array.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/gsl/integration.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/gsl/interpolation.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/gsl/ode.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/gsl/probability_distribution.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/interacts/library_cython.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/cremona/homspace.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/cremona/mat.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/cremona/newforms.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/ecl.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/flint/flint.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/flint/fmpz_poly.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/fplll/fplll.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/lcalc/lcalc_Lfunction.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/libecm.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/linbox/linbox.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/mpmath/ext_impl.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/mpmath/ext_libmp.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/mpmath/ext_main.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/mpmath/utils.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/mwrank/mwrank.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/ntl/ntl_GF2.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/ntl/ntl_GF2E.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/ntl/ntl_GF2EContext.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/ntl/ntl_GF2EX.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/ntl/ntl_GF2X.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/ntl/ntl_ZZ.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/ntl/ntl_ZZX.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/ntl/ntl_ZZ_p.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/ntl/ntl_ZZ_pContext.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/ntl/ntl_ZZ_pE.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/ntl/ntl_ZZ_pEContext.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/ntl/ntl_ZZ_pEX.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/ntl/ntl_ZZ_pX.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/ntl/ntl_lzz_p.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/ntl/ntl_lzz_pContext.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/ntl/ntl_lzz_pX.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/ntl/ntl_mat_GF2.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/ntl/ntl_mat_GF2E.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/ntl/ntl_mat_ZZ.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/pari/gen.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/ppl.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/ratpoints.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/singular/function.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/singular/groebner_strategy.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/singular/option.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/singular/polynomial.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/singular/ring.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/singular/singular.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/libs/symmetrica/symmetrica.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/action.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/change_ring.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/matrix.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/matrix0.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/matrix1.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/matrix2.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/matrix_complex_double_dense.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/matrix_cyclo_dense.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/matrix_dense.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/matrix_double_dense.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/matrix_generic_dense.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/matrix_generic_sparse.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/matrix_integer_2x2.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/matrix_integer_dense.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/matrix_integer_sparse.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/matrix_mod2_dense.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/matrix_mod2e_dense.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/matrix_modn_dense.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/matrix_modn_dense_double.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/matrix_modn_dense_float.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/matrix_modn_sparse.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/matrix_mpolynomial_dense.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/matrix_rational_dense.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/matrix_rational_sparse.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/matrix_real_double_dense.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/matrix_sparse.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/matrix_symbolic_dense.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/matrix_window.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/matrix_window_modn_dense.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/misc.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/matrix/strassen.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/media/channels.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/misc/allocator.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/misc/binary_tree.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/misc/bitset.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/misc/c3.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/misc/cachefunc.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/misc/citation.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/misc/classcall_metaclass.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/misc/constant_function.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/misc/cython_c.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/misc/derivative.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/misc/fpickle.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/misc/function_mangling.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/misc/lazy_import.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/misc/misc_c.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/misc/nested_class.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/misc/parser.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/misc/pickle_old.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/misc/randstate.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/misc/readline_extra_commands.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/misc/refcount.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/misc/reset.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/misc/sage_timeit_class.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/misc/search.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/misc/session.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/misc/stopgap.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/modular/arithgroup/congroup_pyx.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/modular/arithgroup/farey_symbol.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/modular/modform/eis_series_cython.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/modular/modsym/apply.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/modular/modsym/heilbronn.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/modular/modsym/p1list.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/modular/modsym/relation_matrix_pyx.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/modules/free_module_element.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/modules/module.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/modules/vector_complex_double_dense.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/modules/vector_double_dense.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/modules/vector_integer_dense.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/modules/vector_mod2_dense.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/modules/vector_modn_dense.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/modules/vector_rational_dense.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/modules/vector_real_double_dense.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/numerical/backends/generic_backend.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/numerical/backends/glpk_backend.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/numerical/mip.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/plot/complex_plot.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/plot/plot3d/base.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/plot/plot3d/implicit_surface.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/plot/plot3d/index_face_set.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/plot/plot3d/parametric_surface.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/plot/plot3d/shapes.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/plot/plot3d/transform.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/quadratic_forms/count_local_2.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/quadratic_forms/quadratic_form__evaluate.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/bernmm.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/bernoulli_mod_p.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/complex_double.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/complex_interval.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/complex_mpc.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/complex_number.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/factorint.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/fast_arith.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/finite_rings/element_base.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/finite_rings/element_givaro.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/finite_rings/element_ntl_gf2e.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/finite_rings/finite_field_base.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/finite_rings/integer_mod.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/fraction_field_FpT.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/fraction_field_element.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/function_field/function_field_element.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/integer.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/integer_ring.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/laurent_series_ring_element.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/morphism.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/noncommutative_ideals.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/number_field/number_field_base.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/number_field/number_field_element.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/number_field/number_field_element_quadratic.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/number_field/number_field_morphisms.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/number_field/totallyreal.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/number_field/totallyreal_data.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/padics/local_generic_element.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/padics/padic_ZZ_pX_CA_element.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/padics/padic_ZZ_pX_CR_element.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/padics/padic_ZZ_pX_FM_element.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/padics/padic_ZZ_pX_element.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/padics/padic_base_coercion.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/padics/padic_base_generic_element.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/padics/padic_capped_absolute_element.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/padics/padic_capped_relative_element.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/padics/padic_ext_element.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/padics/padic_fixed_mod_element.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/padics/padic_generic_element.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/padics/padic_printing.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/padics/pow_computer.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/padics/pow_computer_ext.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/polynomial/cyclotomic.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/polynomial/laurent_polynomial.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/polynomial/multi_polynomial.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/polynomial/multi_polynomial_ideal_libsingular.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/polynomial/multi_polynomial_libsingular.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/polynomial/multi_polynomial_ring_generic.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/polynomial/pbori.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/polynomial/plural.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/polynomial/polydict.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/polynomial/polynomial_compiled.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/polynomial/polynomial_element.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/polynomial/polynomial_gf2x.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/polynomial/polynomial_integer_dense_flint.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/polynomial/polynomial_integer_dense_ntl.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/polynomial/polynomial_modn_dense_ntl.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/polynomial/polynomial_rational_flint.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/polynomial/polynomial_real_mpfr_dense.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/polynomial/polynomial_zmod_flint.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/polynomial/polynomial_zz_pex.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/polynomial/real_roots.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/polynomial/symmetric_reduction.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/power_series_mpoly.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/power_series_poly.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/power_series_ring_element.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/rational.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/real_double.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/real_interval_absolute.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/real_lazy.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/real_mpfi.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/real_mpfr.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/residue_field.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/rings/ring.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/sat/solvers/satsolver.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/schemes/elliptic_curves/descent_two_isogeny.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/schemes/hyperelliptic_curves/hypellfrob.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/schemes/toric/divisor_class.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/sets/disjoint_set.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/sets/finite_set_map_cy.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/stats/hmm/chmm.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/stats/hmm/distributions.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/stats/hmm/hmm.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/stats/hmm/util.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/stats/intlist.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/structure/category_object.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/structure/coerce.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/structure/coerce_actions.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/structure/coerce_dict.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/structure/coerce_maps.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/structure/element.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/structure/factory.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/structure/generators.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/structure/list_clone.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/structure/list_clone_timings_cy.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/structure/misc.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/structure/mutability.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/structure/parent.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/structure/parent_base.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/structure/parent_gens.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/structure/parent_old.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/structure/sage_object.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/structure/wrapper_parent.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/symbolic/constants_c.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/symbolic/expression.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/symbolic/function.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/symbolic/getitem.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/symbolic/pynac.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/symbolic/ring.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/tests/cython.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/tests/interrupt.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/python2.7/site-packages/sage/tests/stl_vector.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/sagemath/site-packages/Cython/Compiler/Code.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/sagemath/site-packages/Cython/Compiler/FlowControl.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/sagemath/site-packages/Cython/Compiler/Lexicon.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/sagemath/site-packages/Cython/Compiler/Parsing.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/sagemath/site-packages/Cython/Compiler/Scanning.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/sagemath/site-packages/Cython/Compiler/Visitor.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/sagemath/site-packages/Cython/Plex/Actions.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/sagemath/site-packages/Cython/Plex/Scanners.so sagemath-5.4-1.fc19.x86_64.rpm: /usr/lib64/sagemath/site-packages/Cython/Runtime/refnanny.so MD5-sum check ------------- Generated by fedora-review 0.3.1 (b71abc1) last change: 2012-10-16 Buildroot used: fedora-rawhide-x86_64 Command line :/usr/bin/fedora-review -v -r -n sagemath ---%<--- Source0 is known to be wrong, but left that way for now to avoid downloading it again for every test, also, that link used to work and redirect to a proper mirror, need to bug report about it. The package is mean't for rawhide, but if successful in adding it to rawhide, a f18 build requires very few updates (3 new packages, and 2 updates, other issues can be worked around in the sagemath package itself).

This is great! I'm so glad somebody is getting around to packaging this. It would be great if you could make this bug dependent on the package reviews for the 3 new packages (assuming they're not yet included in Fedora) so they can be tracked. I notice you've also updated the wiki: https://fedoraproject.org/wiki/SIGs/SciTech/SAGE It would be good if you could add a link to this review there, as some folks might not know about it. (I only found out about it because I happened across the archives for the scitech list, which I'm not a member of right now).

PS. I'm willing to help review this when the time comes.

I made some new branch requests for a possible f18 backport (my initial plan was to have a private repository like I do for f17): https://bugzilla.redhat.com/show_bug.cgi?id=839097 https://bugzilla.redhat.com/show_bug.cgi?id=839098 https://bugzilla.redhat.com/show_bug.cgi?id=839071 I updated https://fedoraproject.org/wiki/SIGs/SciTech/SAGE and removed the required update to libmpc, as I added stubs in a sagemath patch for the missing functions: http://lists.gforge.inria.fr/pipermail/mpc-discuss/2012-October/001214.html Actually, there is another "requires" issue, but I still suspect a newer numpy snapshot (or final version will be avaiable before a fedora sagemath package): https://bugzilla.redhat.com/show_bug.cgi?id=868585

Package was updated to better split subpackages and to remove some unnecessary files being installed. Spec URL: http://pcpa.fedorapeople.org/sagemath.spec SRPM URL: http://pcpa.fedorapeople.org/sagemath/SRPMS/sagemath-5.4-2.fc19.src.rpm - Do not install alternate cygdb in %%_bindir - Create the %{name}-core subpackage - Create the %{name}-doc subpackage - Create the %{name}-doc-en subpackage - Create the %{name}-doc-de subpackage - Create the %{name}-doc-fr subpackage - Create the %{name}-doc-pt subpackage - Create the %{name}-doc-ru subpackage - Create the %{name}-doc-tr subpackage - Create the %{name}-data metapackage - Create the %{name}-data-conway_polynomials subpackage - Create the %{name}-data-elliptic_curves subpackage - Create the %{name}-data-extcode subpackage - Do not install pickle_jar extcode contents - Do not install notebook extcode contents - Create the %{name}-data-graphs subpackage - Create the %{name}-data-polytopes_db subpackage - Create the %{name}-notebook subpackage - Create the %{name}-rubiks subpackage - Create the %{name}-sagetex subpackage

(In reply to comment #3) > PS. I'm willing to help review this when the time comes. The time is now! You can make an unofficial review request if you prefer :-) Better to have more eyes looking at possible packaging issues. Help on debugging issues as the problems found in http://pcpa.fedorapeople.org/sagemath/test.log also welcome.

Updated to sagemath 5.4.1: Spec URL: http://pcpa.fedorapeople.org/sagemath.spec SRPM URL: http://pcpa.fedorapeople.org/sagemath/SRPMS/sagemath-5.4.1-1.fc19.src.rpm

I've had a look at the test failures: * Fonts are missing, should be required. * the test suite needs the built documentation (to test the built-in help system), hg, scons, Singular help file, fortran compiler, * lrcalc is missing, this is one of the spkgs. * Segfaults when using pari and symmetrica. The latter has a symbol clash which probably explains it (sort_sum_rename.patch in the symmetrica spkg). Both are modified and linked in, so it is likely that you'll have to install the Sage-specific versions. We are planning to move to git next year and revamp some of the built system in the process. I think it would be great if you write about your experience in packaging and what would make your life easier.

(In reply to comment #8) Many thanks for the comments Volker! > I've had a look at the test failures: > * Fonts are missing, should be required. I will work on it, should be only an extra requires. > * the test suite needs the built documentation (to test the built-in help > system), hg, scons, Singular help file, fortran compiler, Documentation is built during package build, actually I have a somewhat nasty problem with sphinx, see: https://bugzilla.redhat.com/show_bug.cgi?id=839321 http://trac.sagemath.org/sage_trac/ticket/13230 > * lrcalc is missing, this is one of the spkgs. Is the spkg the official upstream package? I have a request for information at: http://trac.sagemath.org/sage_trac/ticket/11563#comment:45 but left it as one of the few known issues :-) > * Segfaults when using pari and symmetrica. The latter has a symbol clash > which probably explains it (sort_sum_rename.patch in the symmetrica spkg). > Both are modified and linked in, so it is likely that you'll have to install > the Sage-specific versions. I am afraid it should be another issue, the patch is applied, see: http://pkgs.fedoraproject.org/cgit/symmetrica.git/tree/ but may be another symbol, because in fedora symmetrica is built as a shared library. > We are planning to move to git next year and revamp some of the built system > in the process. I think it would be great if you write about your experience > in packaging and what would make your life easier. My major issues, in integrating sagemath in the system are versions of components, it will be required an exception to be able to use: o old ipython version o old and/or non standard cython o old pexpect Otherwise, other then sometimes relying on some very intrusive patches, like the sphinx patch, it is mainly problems with versions of components. An interesting example is that I could not convince upstream pari to use an extra flag to not call mp_set_memory_functions in the library, so it now uses this patch: ---%<--- diff -up sage-5.4.1/spkg/build/sage-5.4.1/sage/libs/pari/gen.pyx.orig sage-5.4.1/spkg/build/sage-5.4.1/sage/libs/pari/gen.pyx --- sage-5.4.1/spkg/build/sage-5.4.1/sage/libs/pari/gen.pyx.orig 2012-11-12 21:15:23.758879845 -0200 +++ sage-5.4.1/spkg/build/sage-5.4.1/sage/libs/pari/gen.pyx 2012-11-12 21:15:43.213880590 -0200 @@ -182,6 +182,10 @@ include '../../ext/stdsage.pxi' cdef extern from "mpz_pylong.h": cdef int mpz_set_pylong(mpz_t dst, src) except -1 +cdef extern from "gmp.h": + cdef void mp_get_memory_functions(void**, void**, void**) + cdef void mp_set_memory_functions(void*, void*, void*) + # Make sure we don't use mpz_t_offset before initializing it by # putting in a value that's likely to provoke a segmentation fault, # rather than silently corrupting memory. @@ -9171,7 +9175,12 @@ cdef class PariInstance(sage.structure.p # The size here doesn't really matter, because we will allocate # our own stack anyway. We ask PARI not to set up signal handlers. + cdef void *_gmp_malloc + cdef void *_gmp_realloc + cdef void *_gmp_free + mp_get_memory_functions(&_gmp_malloc, &_gmp_realloc, &_gmp_free) pari_init_opts(10000, maxprime, INIT_JMPm | INIT_DFTm) + mp_set_memory_functions(_gmp_malloc, _gmp_realloc, _gmp_free) num_primes = maxprime # NOTE: sig_on() can only come AFTER pari_init_opts()! ---%<--- There are a few other somewhat related issues, like a "back patch" for ntl to not rely on a patched ntl. I asked upstream NTL to provide the features required by sagemath, see: http://shoup.net/pipermail/ntl_shoup.net/2012-April/000033.html I exchanged a few emails with Victor Shoup at that time, but need to ping again :-), basically, something could be done when a new NTL release were released. Packaging sagemath itself has not been a major issue for quite some time (I did package sagemath in mandriva since late sage 3.x) it is the dependencies that make it non trivial to package.

I just updated http://pcpa.fedorapeople.org/sagemath/test.log Issues there that are simple to correct: o just added requires python-matplotlib-tk to requires in sagemath.spec, side effect of my update to matplotlib 1.2, that is, all errors like: ImportError: No module named backend_tkagg are corrected if installing python-matplotlib-tk Not so simple to correct issues: o this error [Errno 2] No such file or directory: '/usr/lib64/sagemath/site-packages/Cython/Utility/ObjectHandling.c' is a side effect of explicitly not installing .c and .h files to reduce number of warnings/errors from rpmlint, but they are required, so, changed the spec back to install them Too bad this did cascade in several other test failures... o this error ---%<--- sage -t -force_lib "devel/sage/sage/structure/sage_object.pyx" [?1034hbunzip2: Can't open input file /usr/lib64/sagemath/share/extcode/pickle_jar/pickle_jar.tar.bz2: No such file or directory. tar: This does not look like a tar archive tar: Exiting with failure status due to previous errors ---%<--- will stay for now, need a very good explanation to add it to the package. o the error ImportError: No module named lrcalc should be fixed when solving the issue with what is lrcalc upstream. o this is still happening ---%<--- File "/usr/lib64/python2.7/site-packages/sage/combinat/sf/sf.py", line 1136, in __call__ return self._codomain._from_dict(dict(self._t(self.fake_sym.monomial(partition))), coerce = True) File "schur.pxi", line 574, in sage.libs.symmetrica.symmetrica.t_MONOMIAL_HOMSYM_symmetrica (sage/libs/symmetrica/symmetrica.c:18879) RuntimeError: Segmentation fault ---%<--- I did not debug it enough to understand the root cause of the problem, only learned that if I compile symmetrica without -DFAST it would follow a code path jumping over the dereferencing of the invalid pointer, but rebuilding symmetrica that way should not be the proper correction. o this error IOError: [Errno 2] No such file or directory: '/usr/lib64/sagemath/local/bin/ipython' should remain for now, as it should be a single doctest failure, otherwise it works, but I can change it to install ipython wrapper o no idea about this, need to debug: sage: len(pari(p).polroots(precision=128)) File "gen.pyx", line 8025, in sage.libs.pari.gen.gen.polroots (sage/libs/pari/gen.c:39360) RuntimeError: Segmentation fault I will do another sage -testall run now with python-matplotlib-tk installed, as missing it caused way too much noise in test.log...

Update: - Change back to install .c and .h files in bundled cython. - Make symlink of gmp-ecm to $SAGE_LOCAL/bin/ecm. - Add SAGE_LOCAL/bin to python path so that "sage -gdb" works. Forgot to add to changelog that it now explicitly requires python-matplotlib-tk to avoid import errors in "sage -testall", will add it to changelog. A not so trivial debug I did was some cut&paste + search&replace in gdb to verify the address every symbol in the symmetrica shared library (checking all symbols in symmetrica's def.h and macros.h) to confirm it was mapped to libsymmetrica.so and it indeed was, only the generic "div" symbol was not, but after properly checking symmetrica sources, I learned that it already has a "#define div SYM_div" in def.h and checking SYM_div showed correct results, so, while it is better to figure out what is causing crashes in symmetrica, an option is to link it statically. Spec URL: http://pcpa.fedorapeople.org/sagemath.spec SRPM URL: http://pcpa.fedorapeople.org/sagemath/SRPMS/sagemath-5.4.1-2.fc19.src.rpm

Hi Paulo, I had the same issue with python-matplotlib-tk just by using ipython -gui so I think that this problem is not specific of sage. FWIW I am interested in reviewing sage. :-)

(In reply to comment #12) > Hi Paulo, > I had the same issue with python-matplotlib-tk just by using ipython -gui > so I think that this problem is not specific of sage. It should have been fixed it in yet another python-matplotlib build https://admin.fedoraproject.org/updates/FEDORA-2012-19809/python-matplotlib-1.2.0-5.fc18 the problem was that it was not "detecting" gtk, that is in the main package (but only for python2.7...) and is the default backend if available. Wrapping setup.py run in xvfb-run fixed that. Could also have patched %{python_sitearch}/matplotlib/mpl-data/matplotlibrc after %install. > FWIW I am interested in reviewing sage. :-) I am waiting for someone to click the "take" link and do the review :-) But any non official review is welcome, that is, something like download the srpm and run: /usr/bin/fedora-review -v -r -n sagemath

(In reply to comment #8) > * Fonts are missing, should be required. Fonts are "truly" missing in Fedora. Stix fonts appear to have changed significantly from 1.0.0 (f17) to 1.1.0 (f18+). I opened a bug report, about missing fonts in stix-fonts 1.1.0 at: https://bugzilla.redhat.com/show_bug.cgi?id=885307 and about missing "extra" jsmath fonts at: https://bugzilla.redhat.com/show_bug.cgi?id=885312 Anyway, this apparently was a side effect of my update to matplotlib 1.2.0 (sage uses 1.1.0), and as commented in the above bug reports, I am ok with making a patch in the matplotlib package to not require/reference those fonts.

Minor corrections: - Revert requires python-matplotlib-tk as it was a python-matplotlib bug. - Add stix-fonts requires. Spec URL: http://pcpa.fedorapeople.org/sagemath.spec SRPM URL: http://pcpa.fedorapeople.org/sagemath/SRPMS/sagemath-5.4.1-3.fc19.src.rpm

Have you applied for bundling exceptions for cython, ipython, and pexpect?

(In reply to comment #16) > Have you applied for bundling exceptions for cython, ipython, and pexpect? Not yet. I was expecting to need to ask for bundling during or after the review process. I will make a bundling exception request.

If you apply the patch from http://trac.sagemath.org/13740 then you should be able to use the Fedora Cython rpm. At least it fixes an incompatibility with Cython-0.17.2, so probably also 0.17.1 (Fedora 18).

(In reply to comment #18) > If you apply the patch from http://trac.sagemath.org/13740 then you should > be able to use the Fedora Cython rpm. At least it fixes an incompatibility > with Cython-0.17.2, so probably also 0.17.1 (Fedora 18). I asked for bundling exceptions in https://fedorahosted.org/fpc/ticket/238 I did comment about bundling cython that hopefully it would be temporary. In my Mandriva sagemath packages I did for some time either make my own patches or use patches from trac.sagemath.org, but that caused trouble because system cython could be upgraded in the mean time, making the sagemath package no longer buildable or generating a broken package.

Ironic. Why is cython even in fedora? Because a good while back, we discussed packaging sage. At the time, I volunteered to package cython as a first step. Now, I don't even use cython , and then I learn sage won't use it either.

Minor corrections so that it builds cleanly in f18: - The fplll patch is also required to build in f18. - Add factory include to plural.pyx build. Spec URL: http://pcpa.fedorapeople.org/sagemath.spec SRPM URL: http://pcpa.fedorapeople.org/sagemath/SRPMS/sagemath-5.4.1-4.fc19.src.rpm

I agree that Cython upgrades have been troublesome in the past. But, for the record, with the patch http://trac.sagemath.org/13740 Sage can use up to Cython 0.17.3 (released today).

(In reply to comment #22) > I agree that Cython upgrades have been troublesome in the past. But, for the > record, with the patch http://trac.sagemath.org/13740 Sage can use up to > Cython 0.17.3 (released today). I rebuilt the sagemath rpm with your patch and everything looks file. Well the problems that appear related to cython are still there :-) For now I think I better not lift my request for bundling cython. What I want to have some "freedom" is to be able to bundle it if things go bad, but having a wider audience for the package should help :-) changelog: - Build with system cython by default on fedora 18 or newer (#877651). Spec URL: http://pcpa.fedorapeople.org/sagemath.spec SRPM URL: http://pcpa.fedorapeople.org/sagemath/SRPMS/sagemath-5.4.1-5.fc19.src.rpm

cython-0.17.3 has been queued for f18 testing, and should be in rawhide now.

Paulo, is this planned to be included in F19 or as an update in F18?

(In reply to comment #25) > Paulo, is this planned to be included in F19 or as an update in F18? My initial plan was to have sagemath ready for F18, then I gave up and was considering just a private repository, but I did that for F17 at http://pcpa.fedorapeople.org/sagemath/f17/ Once the package is approved, it should be built for rawhide (future F19) and made as a F18 update.

Updated package: - Update to sagemath 5.5. - Add maxima.system patch to work with maxima 5.29.1 package. Spec URL: http://pcpa.fedorapeople.org/sagemath.spec SRPM URL: http://pcpa.fedorapeople.org/sagemath/SRPMS/sagemath-5.5-1.fc19.src.rpm

While building your package in mock the build fails because it can not find cython in path. I am building your package in rawhide FWIW. I had this problems 2 weeks ago and I noticed that it still persists today.

(In reply to comment #28) > While building your package in mock the build fails because it can not find > cython in path. > > I am building your package in rawhide FWIW. > > I had this problems 2 weeks ago and I noticed that it still persists today. Please try this new one (I forgot to validate it was building in a clean chroot after changing to use system cython): - Add cython to build requires (#877651#c28). Spec URL: http://pcpa.fedorapeople.org/sagemath.spec SRPM URL: http://pcpa.fedorapeople.org/sagemath/SRPMS/sagemath-5.5-2.fc19.src.rpm

(In reply to comment #16) > Have you applied for bundling exceptions for cython, ipython, and pexpect? Exception has been granted for 6 month ipython and pexect only if no solution can be found: https://fedorahosted.org/fpc/ticket/238 It should be 6 months for ipython but depending on flow of review I can at least experiment on backporting the ipython patches targeted to sagemath 5.6. Unfortunately, probably will need to use the bundled pexpect. I did mail the pexpect author but got no response, and started a small thread about in at https://groups.google.com/forum/?fromgroups=#!topic/sage-devel/_tEyhHq7Vwg

Since Paulo is reviewing polymake for me, I am, with great fear and trepidation, taking this review. Paulo, what is the status of the bundled pexpect? Are you still looking for a way to use the system pexpect?

(In reply to comment #31) > Since Paulo is reviewing polymake for me, I am, with great fear and > trepidation, taking this review. Paulo, what is the status of the bundled > pexpect? Are you still looking for a way to use the system pexpect? I just added another comment to https://fedorahosted.org/fpc/ticket/238 about it. I believe the only alternative right now is to use the bundled pexpect.

BTW, Many thanks for taking the review Jerry :-) I am working on a minor howto for anybody that used my f17 repository to cleanly update to f18, while I do the same :-) And should provide a temporary f18 repository also, that now is very simple as basically all dependencies are already in f18.

Update correcting a very large amount of doctest failures: - Rediff rpmbuild patch to address some underlinked modules. - Make gap-sonata a mandatory requires. - Add cremona patch to adjust logic as only cremona mini is built. - Add lrslib patch to know lrslib is available. - Add nauty patch and comment about reason it cannot be made available. - Add gap-hap patch for better description of missing gap hap package. Spec URL: http://pcpa.fedorapeople.org/sagemath.spec SRPM URL: http://pcpa.fedorapeople.org/sagemath/SRPMS/sagemath-5.5-3.fc19.src.rpm

Sorry to take so long with this, Paulo. It's a really big package. :-) Currently, fedora-review is warning that it can't download the sage-5.5.tar file. That's because it is now 5.6. Also, the build of 5.5 is failing on both F18 and Rawhide, although a bit differently. On Rawhide, it looks like there is some kind of conflict between the ppl and gmp headers. On F18, it fails like this: In file included from /usr/include/singular/structs.h:15:0, from /usr/include/libsingular.h:6, from sage/algebras/letterplace/free_algebra_letterplace.cpp:261: /usr/include/singular/si_gmp.h:4:22: fatal error: cf_gmp.h: No such file or directory compilation terminated. It looks like the factory-devel header files have been moved into a subdirectory of %{_includedir}, so it will now be necessary to specify -I/usr/include/factory.

Thanks! I think I may have been using a Singular with that problem already solved in f18 builds. Interestingly, I just pushed to f18 stable a Singular that matches the rawhide version. I will update to sagemath 5.6 and test mock builds as right now it works for me on f18 and rawhide.

Only rawhide build should work, f18 should fail until https://admin.fedoraproject.org/updates/eclib-20120830-1.fc18 hits f18 stable. Update: - Update to sagemath 5.6. - Remove no longer required patch to build with system cython. Spec URL: http://pcpa.fedorapeople.org/sagemath.spec SRPM URL: http://pcpa.fedorapeople.org/sagemath/SRPMS/sagemath-5.6-1.fc19.src.rpm

Actually, builds are failing in Rawhide, too. I got this in a mock build for i386 Rawhide: gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i686 -mtune=atom -fasynchronous-unwind-tables -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i686 -mtune=atom -fasynchronous-unwind-tables -D_GNU_SOURCE -fPIC -fwrapv -fPIC -I/builddir/build/BUILDROOT/sagemath-5.6-1.fc19.i386/usr/lib/sagemath/local/include -Ic_lib/include -I/builddir/build/BUILDROOT/sagemath-5.6-1.fc19.i386/usr/lib/sagemath/devel/sage/sage/ext -I/usr/include/python2.7 -c sage/libs/ppl.cpp -o build/temp.linux-i686-2.7/sage/libs/ppl.o -w In file included from /usr/include/ppl.hh:27:0, from sage/libs/ppl.cpp:264: /usr/include/ppl-i386.hh:774:7: error: redefinition of 'class std::numeric_limits<__gmp_expr<__mpz_struct [1], __mpz_struct [1]> >' class numeric_limits<mpz_class> { ^ In file included from sage/libs/ppl.cpp:263:0: /usr/include/gmpxx.h:3269:21: error: previous definition of 'class std::numeric_limits<__gmp_expr<__mpz_struct [1], __mpz_struct [1]> >' template <> class numeric_limits<mpz_class> ^ In file included from /usr/include/ppl.hh:27:0, from sage/libs/ppl.cpp:264: /usr/include/ppl-i386.hh:835:7: error: redefinition of 'class std::numeric_limits<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >' class numeric_limits<mpq_class> { ^ In file included from sage/libs/ppl.cpp:263:0: /usr/include/gmpxx.h:3306:21: error: previous definition of 'class std::numeric_limits<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >' template <> class numeric_limits<mpq_class>

I will try to debug this problem. I notice both ppl-%{_arch}.hh and gmpxx.hh defines templates for class numeric_limits<mp?_class>, but apparently only in i386 it is conflicting. I did only test x86_64 builds so far... If possible please try a x86_64 mock build; that should not fail (works for me :-)

I got the same error on an x86_64 build: gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -fPIC -I/builddir/build/BUILDROOT/sagemath-5.6-1.fc19.x86_64/usr/lib64/sagemath/local/include -Ic_lib/include -I/builddir/build/BUILDROOT/sagemath-5.6-1.fc19.x86_64/usr/lib64/sagemath/devel/sage/sage/ext -I/usr/include/python2.7 -c sage/libs/ppl.cpp -o build/temp.linux-x86_64-2.7/sage/libs/ppl.o -w In file included from /usr/include/ppl.hh:25:0, from sage/libs/ppl.cpp:264: /usr/include/ppl-x86_64.hh:774:7: error: redefinition of 'class std::numeric_limits<__gmp_expr<__mpz_struct [1], __mpz_struct [1]> >' class numeric_limits<mpz_class> { ^ In file included from sage/libs/ppl.cpp:263:0: /usr/include/gmpxx.h:3269:21: error: previous definition of 'class std::numeric_limits<__gmp_expr<__mpz_struct [1], __mpz_struct [1]> >' template <> class numeric_limits<mpz_class> ^ In file included from /usr/include/ppl.hh:25:0, from sage/libs/ppl.cpp:264: /usr/include/ppl-x86_64.hh:835:7: error: redefinition of 'class std::numeric_limits<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >' class numeric_limits<mpq_class> { ^ In file included from sage/libs/ppl.cpp:263:0: /usr/include/gmpxx.h:3306:21: error: previous definition of 'class std::numeric_limits<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >' template <> class numeric_limits<mpq_class>

I can reproduce it in both i386 and x86_64 now. My guess it is gcc 4.8.0 that does not like the duplicated but not equal templates; my last builds were with gcc 4.7.2.

Update: - Add cryptominisat-devel to build requires. - Add conditional build for lrcalc (fedora review rhbz #909510) - Add conditional build for coin-or-CoinUtils (fedora review rhbz #894585) - Add conditional build for coin-or-Osi (fedora review rhbz #894586) - Add conditional build for coin-or-Clp (fedora review rhbz #894587) - Add conditional build for coin-or-Cgl (fedora review rhbz #894588) - Add conditional build for coin-or-Cbc (fedora review rhbz #894597) - Rebuild with latest rawhide and f18 dependency updates. Spec URL: http://pcpa.fedorapeople.org/sagemath.spec SRPM URL: http://pcpa.fedorapeople.org/sagemath/SRPMS/sagemath-5.6-3.fc19.src.rpm I did upload prebuilt binaries to pcpa.fedorapeople,org but remade the srpm for review request to not depend on packages still under review request.

Update: I made another update because mock build would fail in the last steps and added two extra macros to make it easier/faster to do debug builds. - Correct "canonicalization unexpectedly shrank by one character" error. - Add packager_debug macro for conditional package debug mode build. - Add donwload_tarball macro to avoid fedora-review donwloading it every run. Spec URL: http://pcpa.fedorapeople.org/sagemath.spec SRPM URL: http://pcpa.fedorapeople.org/sagemath/SRPMS/sagemath-5.6-4.fc19.src.rpm

Created attachment 696525 [details] sage-memcheck valgrind run on the first crash in libsymmetrica: sage -t -force_lib "devel/sage/sage/algebras/nil_coxeter_algebra.py" symmetrica logic is quite complex, but since it does not crash under valgrind (but I did not check --malloc-fill) it should be an issue with uninitialized memory when reading out of bounds memory (probably "padding" memory). My first guess hack to fix that would be to ensure all malloc calls in symmetrica are converted to calloc (possibly ensuring requested block sizes aligned at 16 bytes), but still possibly leave the bug around because of the logic to reuse objects that may not set them back to zero.

Created attachment 915673 [details] Comment (This comment was longer than 65,535 characters and has been moved to an attachment by Red Hat Bugzilla).

(In reply to comment #45) > Here's a run of fedora-review, noting a few problems that need to be fixed. > Issues, in no particular order: > 1. The jpackage-utils and javadoc warnings are due to jmol and sage3d; the > Java packaging guidelines need to be followed for those portions. I believe it is being caused because the package has symlinks to .jar files from jmol and vecmath, but fedora-review does not consider this condition. NOTE: not addressed yet. > 2. Should the -doc subpackages be noarch? How about the -data subpackages? I changed both to noarch. I wish rpm would be smarter about changing a directory to a symlink, since to be noarch it needs to be moved to /usr/share, the previous directories under %_libdir need to be changed to symlinks, and that makes updates of the current package not easy. In the current state should be ok, but changing later is really not desirable because it would create too many upgrade failure conditions. > 3. The build isn't using the right build flags. The build log shows: > + pushd spkg/build/sage-5.6 > + pushd c_lib > + CXX=g++ > + UNAME=Linux > + SAGE64=auto > + scons > scons: Reading SConscript files ... > scons: done reading SConscript files. > scons: Building targets ... > gcc -o src/convert.os -c -fPIC > -I/builddir/build/BUILDROOT/sagemath-5.6-4.fc19.x86_64/usr/lib64/sagemath/ > local/include > -I/builddir/build/BUILDROOT/sagemath-5.6-4.fc19.x86_64/usr/lib64/sagemath/ > local/include/python2.7 > -I/builddir/build/BUILDROOT/sagemath-5.6-4.fc19.x86_64/usr/lib64/sagemath/ > local/include/NTL -Iinclude src/convert.c > > ... followed by more files compiled without the correct flags. I see more > compilations in other directories later in the build log with the same > problem. scons is weird, it ignores most environment variables. I did add hardcoded CFLAGS and CXXFLAGS (and LINKFLAGS). I do not have any saved logs for the cython build flags, but it is passing the proper flags (not sure if side effect of exporting CFLAGS and CXXFLAGS). Just in case, the SAGE64 is just to fool this: if os.environ['SAGE64']=="yes": env.Append( CFLAGS="-O2 -g -m64" ) env.Append( CXXFLAGS="-O2 -g -m64" ) env.Append( LINKFLAGS="-m64" ) so that os.environ['SAGE64'] is defined and does not cause and exception due to being undefined. > 4. The bundling issue still needs to be resolved. I was left alone with the pexpect issue :-( Pexpect upstream did not respond my query, and sagemath upstream did comment a lot about it, and that at some point the new pexpect, basically completely rewritten was significantly slower with sagemath. The remaining issue is ipython. Hopefully by sagemath-5.7 it will be able to use latest upstream ipython, otherwise may need to ping back about it. > 5. The license check looks okay, except it flags one file with an Apache > license. I think this is okay, because that file is only used for testing > and does not contribute to the binary RPMs, right? Need to verify when the selenium subdir was added (well, it appears licensecheck only tells about it, but there are others), but it was not when I did run licensecheck to generate the License tag. But the notebook was significantly changed since then, and added several ASL files indeed. Updated now. > 6. The license breakdown needs to be explained in a comment; > See > https://fedoraproject.org/wiki/Packaging: > LicensingGuidelines#Multiple_Licensing_Scenarios I did split/review as much as I could, and the directories in sagenb where there was only one file with a license I assumed that license. There is a significant breakdown already done in $SAGE_ROOT/COPYING.txt but that includes what upstream sagemath bundles, so, only a small portion actually applies to sagemath, that is release under GPLv2+ > 7. Since the main package installs an icon, it needs this: > https://fedoraproject.org/wiki/Packaging:ScriptletSnippets#Icon_Cache Fixed. > 8. %{_libdir}/sagemath/share is owned by the main package, but the main > package puts no contents into it. It appears to be used only by the > sagemath-data-foo packages, so shouldn't sagemath-data own it? Corrected. > 9. Empty directories in the sagemath-data-extcode package, some of which are > the only items in their parent directories: > - %{_libdir}/sagemath/share/extcode/MuPAD/user > - %{_libdir}/sagemath/share/extcode/QEPCAD > - %{_libdir}/sagemath/share/extcode/gap/user > - %{_libdir}/sagemath/share/extcode/genus2reduction > - %{_libdir}/sagemath/share/extcode/gnuplot > - %{_libdir}/sagemath/share/extcode/kash/user > - %{_libdir}/sagemath/share/extcode/macaulay2/user > - %{_libdir}/sagemath/share/extcode/magma/ell_padic > - %{_libdir}/sagemath/share/extcode/magma/padic_height > - %{_libdir}/sagemath/share/extcode/maple/user > - %{_libdir}/sagemath/share/extcode/mathematica/user > - %{_libdir}/sagemath/share/extcode/matlab/user > - %{_libdir}/sagemath/share/extcode/octave/user > - %{_libdir}/sagemath/share/extcode/pari/user > - %{_libdir}/sagemath/share/extcode/scilab/user > - %{_libdir}/sagemath/share/extcode/sobj These are supposed to be placehoders for customization. It is most likely wrong because it is not per user. I left it there because it matches upstream release. I updated it to not create the empty directory trees. > 10. The main package Requires: jmol, but then sagemath-notebook includes both > JmolApplet.jar, from the jmol package, and vecmath.jar, from the vecmath > package. What is going on here? It could be changed to make sagemath-core (not the virtual sagemath package) require jmol, but jmol should be required by the main/core package as it can use the standard jmol in the command line interface. The jars are actually symbolic links, to have them in the expected place by the notebook: $ ls -l /usr/lib64/python2.7/site-packages/sagenb/data/jmol/*.jar lrwxrwxrwx 1 root root 30 Feb 9 15:17 /usr/lib64/python2.7/site-packages/sagenb/data/jmol/JmolApplet.jar -> /usr/share/java/JmolApplet.jar lrwxrwxrwx 1 root root 27 Feb 9 15:17 /usr/lib64/python2.7/site-packages/sagenb/data/jmol/vecmath.jar -> /usr/share/java/vecmath.jar > 11. Binary eggs need to be removed in %prep: > - spkg/build/sagenb-0.10.2/src/sagenb/sagenb.egg-info Fixed. > 12. The complaint below about fonts is due to some TeX fonts in > sagemath-notebook, which need to be handled according to the Fonts > Policy: > https://fedoraproject.org/wiki/Packaging:FontsPolicy I changed the spec file to explicitly remove the fonts subdir. But I am going to debug it to see if it works without those, of if needs to package them separately. I believe the warning is about the .otf files, and not the .eot and .svg ones (yes, it is: // /usr/share/fedora-review/plugins/generic_should.py +637 for p in ['*.pfb', '*.pfa', '*.afm', '*.ttf', '*.otf']: ). I did not test everything, so, but it most likely should be working, or have some bad font rendering in some random place (or just be using a system font). > 13. Patches should have an explanatory comment: > > https://fedoraproject.org/wiki/Packaging: > Guidelines#All_patches_should_have_an_upstream_bug_link_or_comment Most were already commented, but added a description, and an url link if applicable, to the few ones without a proper small description in a comment. > 14. Add -p to the cp command on line 827 of the spec file (for the "preserves > timestamps" issue) Fixed (actually used -a to match pattern in other cp calls) > 15. I see some locale-specific files, but don't see this in use: > https://fedoraproject.org/wiki/Packaging:Guidelines#Handling_Locale_Files Initially I did remove those, but that ended up with a non working package. Then I switched to use find_lang but it does not find the .mo files because they are under a translations, not "locale" directory. After creating a symbolic link named locale it still fails, because find_lang wants locale/xx_YY/*.mo, and the .mo files are in [translations|locale]/xx_YY/LC_MESSAGES/*.mo Note sure if should add all the symlinks required to make find_lang work. NOTE: not addressed yet. > 16. Spelling: donwload_tarball -> download_tarball Corrected. At least it was consistent, and was mispelled in all usages of the macro :-) > 17. I know that many of the rpmlint complaints are innocuous, but a few > should > be handled, including these: > - sagemath-sagetex.x86_64: W: one-line-command-in-%post /usr/bin/mktexlsr The sagemath-sagetex it tricky, because sagetex itself should be very rarely updated, so, a simple sagemath-sagetex upgrade with sagemath-sagetex in the same version would not need to rerun mktexlsr. > - sagemath.src: W: strange-permission testjava.sh 0755L Not sure about the .sh permission. I hope the change from -m755 to -m0755 as argument to install should correct it. > - sagemath.src:648: W: rpm-buildroot-usage %prep rm -rf %{buildroot} I had that for debugging purposes and run a build --without[-=]prep, but this is not be much useful nowadays, I removed it. Actually, if doing a build using rpmbuild now it is required to remove manually the buildroot directory, but it is a minor issue, and side effect of all the magics done to make the build work in a buildroot environment. > - sagemath.src:1305: W: macro-in-%changelog %{name} Corrected. > - sagemath.src:506: W: mixed-use-of-spaces-and-tabs (spaces: line 506, > tab: line 3) The mixed spaces and tabs is tricky, "correcting" it means modifying the %description that uses spaces simulating a 4 spaces tabulation. NOTE: not addressed yet. > - sagemath-core.x86_64: W: unused-direct-shlib-dependency > /usr/lib64/libcsage.so /lib64/libm.so.6 The unused direct shlib dependency is not easy, need to check all .so python modules to see which one is problematic and add special rules for it, anyway, should not be too hard to do to add an extra patch to module_list.py to handle it. NOTE: not addressed yet. > I *think* that the other issues flagged by fedora-review aren't really > issues, > but check them anyway and let me know what you think. The non working url is on purpose because downloading 300Mb+ for every single test run of fedora-review is not cheap, but later it can be made so, and it is easy to regenerate the srpm to toggle the: # for quicker fedora-review tests without downloading the main tarball %global download_tarball 0 variable. Unless I am completely mistaken, ther is nothing that qualifies as javadoc in the package, so the warning should be bogus, and a side effect of the symlinks to jar files. The dangling symlinks are for the .jar files from the "requires" jmol and vecmath, so that it does not bundle those, and still have the symlinks to the place the notebook wants them. I will make extra checks to see if adding an explicit %lang cures the warning about .mo files not in %lang, and this should be acceptable to not use %find_lang as explained above (?!) The unversioned .so files are masked out by __provides_exclude_from and are private python modules, so the warning should be bogus. The sage3d dangling symlink is indeed dangling. Need java3d (non-free) and regenerate the jars (TODO), I will remove it from any final release, but it is not by any interface, well, one can try to make 3d plots using it, what will fail. The other %{buildroot} usages can be patched to silence the warning, that is, to use some other "temporary" directory during build, because it needs to "install" some components to rebuild everything in the buildroot environment, but the most complex rebuild (the documentation) is in %install anyway. I will work a bit more, but already spent quite some time to address most of the issues, so, if you want to rerun it, it should be 90%+ of the issues addressed now :-)

Update: - Export CFLAGS and CXXFLAGS (#877651#c45) - Make sagemath-data owner of SAGE_SHARE (#877651#c45) - Relocate SAGE_DOC and make sagemath-doc packages noarch (#877651#c45) - Relocate SAGE_SHARE and make sagemath-data packages noarch (#877651#c45) - Remove sagenb binary egg bundled in tarball (#877651#c45) - Update license tag due to unlisted Apache v2 license (#877651#c45) - Break down licenses in files listing (#877651#c45) - Add post scriplets to handle the installed icon (#877651#c45) - Do not install empty directories in SAGE_EXTCODE (#877651#c45) - Do not install bundled mathjax fonts (#877651#c45) - Add a descriptive comment to patches without one (#877651#c45) - Correct mispelled donwload_tarball macro name (#877651#c45) - Remove reference to buildroot in prep (#877651#c45) - Simplify coin-or-Cbc build requires as it has proper dependencies Spec URL: http://pcpa.fedorapeople.org/sagemath.spec SRPM URL: http://pcpa.fedorapeople.org/sagemath/SRPMS/sagemath-5.6-5.fc19.src.rpm

I made a new build and updated the f18 repo because it was broken due to rebuilding in a not up to date f18, and also addressed some extra issues. After a run of fedora-review, now is in my todo: W: invalid-license GPL W: wrong-file-end-of-line-encoding /usr/share/doc/sagemath-5.6/output/html/en/bordeaux_2008/objects.inv W: spurious-executable-perm /usr/share/doc/sagemath-5.6/en/prep/media/Rplot001.png W: file-not-utf8 /usr/share/doc/sagemath-5.6/output/html/en/bordeaux_2008/objects.inv W: no-soname /usr/lib64/libcsage.so should just patch the build to add a (zero) soname to it. Should ignore for now: E: zero-length /usr/lib64/python2.7/... E: explicit-lib-dependency lrslib E: explicit-lib-dependency python-matplotlib W: strange-permission testjava.sh 0755L Do not know why the warning is still there, it is a shell script... I will remove the magic to upgrade from arch to noarch soon, so this will be removed shortly: W: dangerous-command-in-%pretrans mv Update: - Rebuild with latest rawhide and f18 updates - Make sagemath-notebook owner of its base data directory - Explicitly mark notebook translations as %%lang (#877651#c46) - Remove sage3d as it is not functional in the rpm package (#877651#c46) - Remove reference to buildroot in libcsage.so debuginfo Spec URL: http://pcpa.fedorapeople.org/sagemath.spec SRPM URL: http://pcpa.fedorapeople.org/sagemath/SRPMS/sagemath-5.6-6.fc19.src.rpm

Update: - Update to sagemath 5.7. - Add conditional patch for libgap. - Add conditional patch for fes. - Remove with_sage_ipython conditional. - Add patch to create a libcsage with a soname. Spec URL: http://pcpa.fedorapeople.org/sagemath.spec SRPM URL: http://pcpa.fedorapeople.org/sagemath/SRPMS/sagemath-5.7-1.fc19.src.rpm

While I am busy I have following this review request and I would like to thank you Paulo for the amazing work you have doing for putting sage in a way that can be imported into Fedora. At the same time as we know from other experiences the final result will not only help us (Fedora) but all the upstream project. Congratulations. :-)

Requires ipython, but that is missing in the spec file. (as reported on sage-support https://groups.google.com/d/topic/sage-support/MT1jKJLm1eg/discussion)

Thanks for tests and comments. I will add ipython as Requires for the next build (forgot about it because it is the first sagemath package using system ipython), that should also have an option to build with libgap :-) https://bitbucket.org/vbraun/libgap/issue/1/please-make-tarball-downloads-available

Does it need python-ipython, or merely python-ipython-console? (The only uses I have found so far need the latter, not the former.) And I echo comment 50. You've done a LOT of work on this package. Give yourself a pat on the back. :-)

Sorry for the delay with another srpm. I preferred to use the simpler "canonical" python-ipython name. Jerry, please review it :-) Update: - Create jmol symbolic links in post and remove in postun. - Disable libgap by default as it does not work with rawhide gap. - Also add python-ipython to build requires to regenerate documentation. - Add missing python-ipython requires (#877651#52) - Enable libgap build in packager debug build (#877651#52) Spec URL: http://pcpa.fedorapeople.org/sagemath.spec SRPM URL: http://pcpa.fedorapeople.org/sagemath/SRPMS/sagemath-5.7-2.fc20.src.rpm

(In reply to comment #54) > - Create jmol symbolic links in post and remove in postun. Oops, sorry, I did not mean to push you in this direction. I just didn't realize we were dealing with symbolic links. I think the way you had it (with the symlinks owned by the package) was better than this approach. > - Disable libgap by default as it does not work with rawhide gap. Can you tell me what the problem is? Is it something I can fix on the gap side? I will do a thorough review tomorrow. Sorry for the delay.

(In reply to comment #55) > (In reply to comment #54) > > - Create jmol symbolic links in post and remove in postun. > > Oops, sorry, I did not mean to push you in this direction. I just didn't > realize we were dealing with symbolic links. I think the way you had it > (with the symlinks owned by the package) was better than this approach. > > > - Disable libgap by default as it does not work with rawhide gap. > > Can you tell me what the problem is? Is it something I can fix on the gap > side? I think libgap should be built at the same time as gap, or coordinate to not have libgap not matching gap. Volker Braun commented about it in https://bitbucket.org/vbraun/libgap/issue/1/please-make-tarball-downloads-available and pointed to the same problem in upstream sagemath in http://trac.sagemath.org/14039 > I will do a thorough review tomorrow. Sorry for the delay. No problems. What I want to change next was that I only figured the missing post and postun of ldconfig after building the latest srpm, and another issue is that removing the symbolic links in %postun causes it to leave empty directory %{python_sitearch}/site-packages/sagenb/data/jmol/ but removes all java related rpmlint warnings...

Update: - Update to sagemath 5.8. - Do full cleanup of notebook package on uninstall. - Remove with_sage_cython build conditional. - Remove with_sage_networkx build conditional. - Add nopari2.6 patch to not rely on not yet available interfaces. - Add cryptominisat patch to build package in f18. Spec URL: http://pcpa.fedorapeople.org/sagemath.spec SRPM URL: http://pcpa.fedorapeople.org/sagemath/SRPMS/sagemath-5.8-1.fc20.src.rpm The nopari2.6 is a simple patch due to using features from the upcoming pari 2.6 in the patched pari.spkg. The cryptominisat patch is because it now requires cryptominisat 2.9.6 and does not build with f18 cryptominisat 2.9.5. Remaining changes, not worth to add to changelog, or that I forgot to :-), are patch rediffs, minor corrections to documentation build and adding ldconfig to post and postun.

Jerry, there is no pending fpc issue now in https://fedorahosted.org/fpc/ticket/238 Please review it again.

Oh, great! I have a full workload tonight already, but I should be able to do this first thing tomorrow.

I won't post the full output of fedora-review again, just a short list of items to be addressed. We're almost there! First, lrslib is listed as a Requires. The lrslib package contains only the library. It looks like the lrs program is needed by sage/geometry/polyhedron/base.py. In that case, the Requires should be for lrslib-utils instead. Second, the license breakdown still needs to be explained in a comment: https://fedoraproject.org/wiki/Packaging: LicensingGuidelines#Multiple_Licensing_Scenarios I know you said the license breakdown is available elsewhere, but it needs to appear in the spec file, too. Third, I did not make my meaning clear with the comment about one-line scripts. You should have this: %post sagetex -p %{_bindir}/mktexlsr %postun sagetex -p %{_bindir}/mktexlsr Note the use of -p. That allows RPM to invoke the program directly, rather than spawning a shell to run the contents of the script. See http://fedoraproject.org/wiki/Packaging:ScriptletSnippets#Syntax. Fourth, there is some new output from rpmlint that should be reviewed. Can you take a look at these to see which are real issues that need to be addressed? sagemath-core.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libcsage.so.0 /lib64/libm.so.6 sagemath-core.x86_64: E: zero-length /usr/lib64/python2.7/site-packages/sage/server/notebook/compress/all.py sagemath-core.x86_64: E: zero-length /usr/lib64/python2.7/site-packages/sage/misc/test_cpickle_sage.py sagemath-core.x86_64: W: dangling-symlink /usr/lib64/sagemath/devel/sage /usr/lib64/python2.7/site-packages sagemath-core.x86_64: E: zero-length /usr/lib64/python2.7/site-packages/sage/libs/pari/to_gen.pxi sagemath-data.noarch: W: dangerous-command-in-%pretrans mv sagemath-data-extcode.noarch: W: dangling-symlink /usr/share/sagemath/extcode/sage /usr/lib64/python2.7/site-packages sagemath-doc.noarch: W: only-non-binary-in-usr-lib sagemath-doc.noarch: W: doc-file-dependency /usr/share/doc/sagemath-5.8/common/update-python-inv.sh /usr/bin/env sagemath-doc.noarch: W: doc-file-dependency /usr/share/doc/sagemath-5.8/common/builder.py /usr/bin/env sagemath-doc.noarch: W: dangerous-command-in-%pretrans mv sagemath-doc-en.noarch: W: spurious-executable-perm /usr/share/doc/sagemath-5.8/en/prep/media/Rplot001.png sagemath-notebook.x86_64: W: dangerous-command-in-%postun rm sagemath-notebook.x86_64: W: dangerous-command-in-%posttrans ln sagemath-rubiks.x86_64: W: spelling-error %description -l en_US contributers -> contributes, contributors, contribute rs

(In reply to comment #60) > I won't post the full output of fedora-review again, just a short list of > items to be addressed. We're almost there! > > First, lrslib is listed as a Requires. The lrslib package contains only the > library. It looks like the lrs program is needed by > sage/geometry/polyhedron/base.py. In that case, the Requires should be for > lrslib-utils instead. Fixed. > Second, the license breakdown still needs to be explained in a comment: > https://fedoraproject.org/wiki/Packaging: > LicensingGuidelines#Multiple_Licensing_Scenarios > I know you said the license breakdown is available elsewhere, but it needs > to appear in the spec file, too. I belive I was missing only the comment about the breakdown before the License tag line, so, should be fixed now. I am a bit unsure if using GPL is valid as license, but I added it due to (http://www.wrongway.org/?rubiksource): ---%<--- The source code for my various rubik solvers are freely available. They are, for the moment, released GPL (e.g., free to distribute and modify but it and its derivitives must always remain free and open source). ---%<--- > Third, I did not make my meaning clear with the comment about one-line > scripts. You should have this: > > %post sagetex -p %{_bindir}/mktexlsr > %postun sagetex -p %{_bindir}/mktexlsr > > Note the use of -p. That allows RPM to invoke the program directly, rather > than spawning a shell to run the contents of the script. See > http://fedoraproject.org/wiki/Packaging:ScriptletSnippets#Syntax. Fixed. > Fourth, there is some new output from rpmlint that should be reviewed. Can > you take a look at these to see which are real issues that need to be > addressed? > > sagemath-core.x86_64: W: unused-direct-shlib-dependency > /usr/lib64/libcsage.so.0 /lib64/libm.so.6 I prefer to keep this in case there are a few of these python modules $ rpm -ql sagemath-core | grep '.so$' | wc -l 339 that do not "really" need to link to libcsage.so > sagemath-core.x86_64: E: zero-length > /usr/lib64/python2.7/site-packages/sage/server/notebook/compress/all.py > sagemath-core.x86_64: E: zero-length > /usr/lib64/python2.7/site-packages/sage/misc/test_cpickle_sage.py Removed in %install for the sake of silencing the warning. > sagemath-core.x86_64: W: dangling-symlink /usr/lib64/sagemath/devel/sage > /usr/lib64/python2.7/site-packages Fixed by moving the symlink to the -devel package. > sagemath-core.x86_64: E: zero-length > /usr/lib64/python2.7/site-packages/sage/libs/pari/to_gen.pxi > sagemath-data-extcode.noarch: W: dangling-symlink > /usr/share/sagemath/extcode/sage /usr/lib64/python2.7/site-packages I reworked the requires to have the symlink owned by the sagemath-data package, and add explicitly requires to the main package from sagemath-data. But it appears to not silence the warning, as I thought it was caused by the case of: a.bin -> requires package that provides /lib/foo a.noarch -> has symlink to /lib/foo a.bin -> requires a.noarch a.noarch -> does not require a.bin so, what I did was to make a.noarch require a.bin , but the warning remained. > sagemath-doc.noarch: W: only-non-binary-in-usr-lib > sagemath-doc.noarch: W: doc-file-dependency > /usr/share/doc/sagemath-5.8/common/update-python-inv.sh /usr/bin/env > sagemath-doc.noarch: W: doc-file-dependency > /usr/share/doc/sagemath-5.8/common/builder.py /usr/bin/env These are kind of documentation files also, that happen to be usable as scripts. Documentation is not supposed to be regenerated from installed packages, but possible with some tweaks. > sagemath-doc-en.noarch: W: spurious-executable-perm > /usr/share/doc/sagemath-5.8/en/prep/media/Rplot001.png Fixed. > sagemath-data.noarch: W: dangerous-command-in-%pretrans mv > sagemath-doc.noarch: W: dangerous-command-in-%pretrans mv > sagemath-notebook.x86_64: W: dangerous-command-in-%postun rm > sagemath-notebook.x86_64: W: dangerous-command-in-%posttrans ln I am keeping these a bit more for the sake of making clean upgrades after changing base dir to %{_libdir} for arch specific files, and after changing doc/data subpackages to noarch. This should be the last build with it, as I assume people using my f18 repository have upgraded to the latest version. This should not go in the final package. Just remind me, or yourself if you wish about ensuring those pretrans and posttrans are removed once the package is approved :-) > sagemath-rubiks.x86_64: W: spelling-error %description -l en_US contributers > -> contributes, contributors, contribute rs This is text from sagemath spkg.txt, I changed the spec for the sake of not having this warning again.

Update: - Properly describe the license breakdown in the spec (#877651#60) - Correct lrslib requires to lrslib-utils (#877651#60) - Remove zero length files (#877651#60) - Correct png file with executable permission (#877651#60) - Avoid rpmlint warning in rubiks subpackage description (#877651#60) Spec URL: http://pcpa.fedorapeople.org/sagemath.spec SRPM URL: http://pcpa.fedorapeople.org/sagemath/SRPMS/sagemath-5.8-2.fc20.src.rpm

(In reply to comment #61) > I am a bit unsure if using GPL is valid as license, but I added it > due to (http://www.wrongway.org/?rubiksource): > ---%<--- > The source code for my various rubik solvers are freely available. They are, > for the moment, released GPL (e.g., free to distribute and modify but it and > its derivitives must always remain free and open source). > ---%<--- If no specific version of the GPL is specified, then the license tag should contain "GPL+". See the entry for "GNU General Public License (no version)" here: https://fedoraproject.org/wiki/Licensing:Main?rd=Licensing#Good_Licenses. > This should not go in the final package. Just remind me, or > yourself if you wish about ensuring those pretrans and posttrans > are removed once the package is approved :-) I'm probably going to remind you very, very soon now, then, because I think this package is ready. Fix the license tag as noted above and ... there isn't anything else holding this package back, right? All of the bundled stuff has been granted exceptions. I can't come up with anything else that is blocking approval, but the package is so large and complex that I'll wait a short time for comments before I approve it.

(In reply to comment #63) > (In reply to comment #61) > > I am a bit unsure if using GPL is valid as license, but I added it > > due to (http://www.wrongway.org/?rubiksource): > > ---%<--- > > The source code for my various rubik solvers are freely available. They are, > > for the moment, released GPL (e.g., free to distribute and modify but it and > > its derivitives must always remain free and open source). > > ---%<--- > > If no specific version of the GPL is specified, then the license tag should > contain "GPL+". See the entry for "GNU General Public License (no version)" > here: > https://fedoraproject.org/wiki/Licensing:Main?rd=Licensing#Good_Licenses. I changed to GPL+. > > This should not go in the final package. Just remind me, or > > yourself if you wish about ensuring those pretrans and posttrans > > are removed once the package is approved :-) > > I'm probably going to remind you very, very soon now, then, because I think > this package is ready. Fix the license tag as noted above and ... there > isn't anything else holding this package back, right? All of the bundled > stuff has been granted exceptions. I can't come up with anything else that > is blocking approval, but the package is so large and complex that I'll wait > a short time for comments before I approve it. Should I keep this chunk btw? Same issue as other review: ---%<--- %post /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : %postun if [ $1 -eq 0 ] ; then /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : fi %posttrans /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : ---%<--- because the icon is actually installed under %{_datadir}/pixmaps, or should the icon be moved elsewhere (under %{_datadir}/pixmaps). Not uploading a new src.rpm because it takes at least one hour in my DSL (upload is very slow), but here is the spec diff for now: ---%<--- --- SPECS/sagemath.spec.orig 2013-04-14 15:36:46.068616049 -0300 +++ SPECS/sagemath.spec 2013-04-14 15:42:09.567628437 -0300 @@ -74,11 +74,11 @@ Group: Applications/Engineering Summary: A free open-source mathematics software system Version: 5.8 -Release: 2%{?dist} +Release: 3%{?dist} # The file ${SAGE_ROOT}/COPYING.txt is the upstream license breakdown file # Additionally, every $files section has a comment with the license name # before files with that license -License: ASL 2.0 and BSD and GPLv2+ and LGPLv2+ and MIT and Public Domain +License: ASL 2.0 and BSD and GPL+ and GPLv2+ and LGPLv2+ and MIT and Public Domain URL: http://www.sagemath.org %if %{download_tarball} Source0: http://boxen.math.washington.edu/home/%{name}/sage-mirror/src/sage-%{version}.tar @@ -1151,24 +1151,8 @@ %postun core -p /sbin/ldconfig -%pretrans data -# temporary due to moving directory to symlink when changing data to noarch -if [ -d %{SAGE_ROOT}/share -a ! -e %{SAGE_SHARE} ]; then - mv %{SAGE_ROOT}/share %{SAGE_SHARE} - ln -s %{SAGE_SHARE} %{SAGE_ROOT}/share -fi - -%pretrans doc -# temporary due to moving directory to symlink when changing data to noarch -if [ -d %{SAGE_ROOT}/devel/doc -a ! -e %{SAGE_DOC} ]; then - mv %{SAGE_ROOT}/devel/doc %{SAGE_DOC} - ln -s %{SAGE_DOC} %{SAGE_ROOT}/devel/doc -fi - -# Note this should be a plain %%post but make a %%posttrans for -# a small window of time to allow clean upgrades, as previously -# the (broken) links were added to the package. -%posttrans notebook +# Use symlinks and a minor patch to the notebook to not bundle jmol +%post notebook ln -sf %{_javadir}/JmolApplet.jar %{python_sitearch}/sagenb/data/jmol/ ln -sf %{_javadir}/vecmath.jar %{python_sitearch}/sagenb/data/jmol/ @@ -1255,7 +1239,7 @@ #------------------------------------------------------------------------ %files data-polytopes_db -# GPL +# GPL+ %{SAGE_SHARE}/reflexive_polytopes #------------------------------------------------------------------------ @@ -1374,12 +1358,12 @@ #------------------------------------------------------------------------ %files rubiks -# GPL +# GPL+ %{SAGE_LOCAL}/bin/optimal # MIT %{SAGE_LOCAL}/bin/dikcube %{SAGE_LOCAL}/bin/size222 -# GPL +# GPL+ %{SAGE_LOCAL}/bin/cu2 %{SAGE_LOCAL}/bin/cubex %{SAGE_LOCAL}/bin/mcube @@ -1393,6 +1377,10 @@ ######################################################################## %changelog +* Sun Apr 14 2013 pcpa <paulo.cesar.pereira.de.andrade> - 5.8-3 +- Use proper license tag for non versioned GPL attribution (#877651#63) +- Remove no longer required workarounds for clean upgrades (#877651#63) + * Fri Apr 12 2013 pcpa <paulo.cesar.pereira.de.andrade> - 5.8-2 - Properly describe the license breakdown in the spec (#877651#60) - Correct lrslib requires to lrslib-utils (#877651#60) ---%<---

Created attachment 735989 [details] Crash report of sage I took the last srpm and I have used mock to rebuild it for Fedora 19. Installing the resulting rpms, via "yum install sagemath" worked. As soon as I start sagemath from the menu I get this crash with the corresponding crash report. My purpose here is just to test sagemath under a normal scenario.

(In reply to comment #65) Hopefully it should be some simple issue, as I do not see any problems, but I am currently only testing in f18 and rawhide. > Created attachment 735989 [details] > Crash report of sage > > I took the last srpm and I have used mock to rebuild it for Fedora 19. > > Installing the resulting rpms, via "yum install sagemath" worked. > > As soon as I start sagemath from the menu I get this crash with the > corresponding crash report. Does the same problem happen if starting from an already open terminal? Works for me opening from kde menu. > My purpose here is just to test sagemath under a normal scenario. Maybe there is some dependency problem with the subpackages. What does "rpm -qa | grep sagemath" show?

Actually, there may be a problem right now, updating my test environment, as it may very likely be that it works with ipython-0.13.1 but not ipython-0.13.2. Will know it shortly.

Just did a build with up to date rawhide and could not find any problems. I will try to create a f19 test environment later but for now it works for me on f18 and rawhide.

(In reply to comment #66) > > Does the same problem happen if starting from an > already open terminal? Works for me opening from > kde menu. It fails in any case. > > My purpose here is just to test sagemath under a normal scenario. > > Maybe there is some dependency problem with the > subpackages. What does "rpm -qa | grep sagemath" > show? # rpm -qa | grep sagemath sagemath-core-5.8-2.fc19.x86_64 sagemath-5.8-2.fc19.x86_64 sagemath-data-graphs-5.8-2.fc19.noarch sagemath-rubiks-5.8-2.fc19.x86_64 sagemath-data-5.8-2.fc19.noarch sagemath-data-extcode-5.8-2.fc19.noarch sagemath-data-polytopes_db-5.8-2.fc19.noarch sagemath-doc-5.8-2.fc19.noarch sagemath-data-elliptic_curves-5.8-2.fc19.noarch sagemath-data-conway_polynomials-5.8-2.fc19.noarch sagemath-doc-en-5.8-2.fc19.noarch sagemath-sagetex-5.8-2.fc19.x86_64 sagemath-notebook-5.8-2.fc19.x86_64

(In reply to comment #67) > Actually, there may be a problem right now, > updating my test environment, as it may very > likely be that it works with ipython-0.13.1 > but not ipython-0.13.2. Will know it shortly. Honestly I think that this bug is unrelated to ipython. Looking into the backtrace we see the following: # The above "hopefully" was wishful thinking: -> 1336 return inspect.ArgSpec(*_sage_getargspec_cython(sage_getsource(obj))) So it seems that the above *was not* wishful thinking. :-) this then fails because sage_getsource(obj) returns None.

Jerry FWIW I think that this package is in a state where it is ready to be approved.

> (In reply to comment #63) > Should I keep this chunk btw? Same issue as other review: > ---%<--- > %post > /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : > > %postun > if [ $1 -eq 0 ] ; then > /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null > /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : > fi > > %posttrans > /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : > ---%<--- > because the icon is actually installed under %{_datadir}/pixmaps, or > should the icon be moved elsewhere (under %{_datadir}/pixmaps). You don't need this for an icon installed in %{_datadir}/pixmaps. I don't yet understand the relative merits of installing an icon in %{_datadir}/pixmaps versus %{_datadir}/icons/hicolor. If somebody out there knows, please share that information. (In reply to comment #71) > Jerry FWIW I think that this package is in a state where it is ready to be > approved. Thanks, I do, too. This package is APPROVED.(In reply to comment #64)

(In reply to comment #72) > > (In reply to comment #63) > (In reply to comment #71) > > Jerry FWIW I think that this package is in a state where it is ready to be > > approved. > > Thanks, I do, too. This package is APPROVED.(In reply to comment #64) Thanks! I have been updating and keeping it more or less working in fedora for a year. There are some known issues, but it should pass over 90% of the doctests, and once having it official, hopefully upstream will help more in making it easier for distros to package it incorporated in the base system. Time to comemorate :-)

New Package SCM Request ======================= Package Name: sagemath Short Description: A free open-source mathematics software system Owners: pcpa Branches: f18 f19 InitialCC:

Git done (by process-git-requests).

(In reply to comment #72) > > (In reply to comment #63) > > Should I keep this chunk btw? Same issue as other review: > > ---%<--- > > %post > > /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : > > > > %postun > > if [ $1 -eq 0 ] ; then > > /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null > > /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : > > fi > > > > %posttrans > > /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : > > ---%<--- > > because the icon is actually installed under %{_datadir}/pixmaps, or > > should the icon be moved elsewhere (under %{_datadir}/pixmaps). > > You don't need this for an icon installed in %{_datadir}/pixmaps. I don't > yet understand the relative merits of installing an icon in > %{_datadir}/pixmaps versus %{_datadir}/icons/hicolor. If somebody out there > knows, please share that information. I am about to upload it to git now. Only change was release bump and removal of that chunk. - Remove noop icon cache regeneration scriplets (#877651#72) - First Fedora 18 and Fedora 19 approved package I believe installing in %{_datadir}/pixmaps is kind of KISS, possibly with some extra runtime overhead, because there are way too many subdirectories under %{_datadir}/icons, for different themes, categories, resolutions, etc. Following some links, this should be the simplest usage http://standards.freedesktop.org/icon-theme-spec/latest/ar01s07.html

What about enabling SageMath to python-pp usage? Is it possible?

(In reply to comment #77) > What about enabling SageMath to python-pp usage? Is it possible? I think this is a task for upstream sagemath :-)

sagemath-5.8-6.fc19 has been submitted as an update for Fedora 19. https://admin.fedoraproject.org/updates/sagemath-5.8-6.fc19

sagemath-5.8-6.fc18 has been submitted as an update for Fedora 18. https://admin.fedoraproject.org/updates/sagemath-5.8-6.fc18

sagemath-5.8-6.fc19 has been pushed to the Fedora 19 testing repository.

Everyone involved in helping make this review happen has my (and users where I work) eternal gratitude.

(In reply to comment #70) > (In reply to comment #67) > > Actually, there may be a problem right now, > > updating my test environment, as it may very > > likely be that it works with ipython-0.13.1 > > but not ipython-0.13.2. Will know it shortly. > > Honestly I think that this bug is unrelated to ipython. Looking into the > backtrace we see the following: > > # The above "hopefully" was wishful thinking: > -> 1336 return > inspect.ArgSpec(*_sage_getargspec_cython(sage_getsource(obj))) > > So it seems that the above *was not* wishful thinking. :-) > > this then fails because sage_getsource(obj) returns None. I now did try to reproduce as close as possible what an end user would do, and can now reproduce the problem. I will make an update, sorry for the problem. In the meantime, it should work if you install sagemath-devel, *or*, run something like: $ sudo ln -sf /usr/lib64/python2.7/site-packages /usr/lib64/sagemath/devel/sage It is just a missing symlink provided by the -devel package, and of course I always had the -devel package installed :-)

That was my B plan. To install the -devel sub-package. :-) But then I got distracted. :-)

sagemath-5.8-7.fc19 has been submitted as an update for Fedora 19. https://admin.fedoraproject.org/updates/sagemath-5.8-7.fc19

sagemath-5.8-7.fc18 has been submitted as an update for Fedora 18. https://admin.fedoraproject.org/updates/sagemath-5.8-7.fc18

sagemath-5.8-6.fc18 has been pushed to the Fedora 18 testing repository.

upgraded to 5.8-7, seeing some scriptlet errors: Cleanup : sagemath-core-5.8-6.fc18.x86_64 85/111 /sbin/ldconfig: relative path `1' used to build cache warning: %postun(sagemath-core-5.8-6.fc18.x86_64) scriptlet failed, exit status 1 Non-fatal POSTUN scriptlet failure in rpm package sagemath-core-5.8-6.fc18.x86_64 Cleanup : sagemath-notebook-5.8-6.fc18.x86_64 86/111 Cleanup : sagemath-rubiks-5.8-6.fc18.x86_64 87/111 Cleanup : sagemath-sagetex-5.8-6.fc18.x86_64 88/111 mktexlsr: /var/tmp/rpm-tmp.FWNuUJ: not a directory, skipping. mktexlsr: 1: not a directory, skipping. Cleanup : sagemath-5.8-6.fc18.x86_64

Thanks, just learned another rpm feature :-) It should not use %post -p, or remove comments, example: --%<-- %postun core -p /sbin/ldconfig # Use symlinks and a minor patch to the notebook to not bundle jmol %post notebook --%<-- and then: --%<-- $ rpm -q --scripts sagemath-core postinstall program: /sbin/ldconfig postuninstall scriptlet (using /sbin/ldconfig): # Use symlinks and a minor patch to the notebook to not bundle jmol --%<-- it is adding '#' as ldconfig argument. Should rewrite as: %postun core /sbin/ldconfig exit 0 or remove the comment before the notebook subpackage %post Maybe the correct approach is to patch rpm, as it appears opensuse fixed it recently, there is a comment about it in http://en.opensuse.org/openSUSE:Packaging_scriptlet_snippets But in the meantime I will keep this as a todo for the next build, as the error is not fatal.

sagemath-5.8-7.fc19 has been pushed to the Fedora 19 stable repository.

sagemath-5.8-7.fc18 has been pushed to the Fedora 18 stable repository.

sagemath-5.9-5.fc18 has been submitted as an update for Fedora 18. https://admin.fedoraproject.org/updates/sagemath-5.9-5.fc18

sagemath-5.9-5.fc18 has been pushed to the Fedora 18 stable repository. If problems still persist, please make note of it in this bug report.