guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#56729] [RFC PATCH v2 00/29] Add sagemath.


From: vicvbcun
Subject: [bug#56729] [RFC PATCH v2 00/29] Add sagemath.
Date: Mon, 8 Aug 2022 17:45:35 +0200

Hello guix!

This is a second try, hopefully this time without silly errors.

The packaging of sagemath is for now structured as follows:
- `sagemath-just-build' builds everything using the minimal set of
  dependecies to avoid rebuilding where possible. As runtime
  dependencies are missing, this is useless on its own.
- `sagemath-with-dependencies' adds all remaining dependencies as
  propagated-inputs. This should work, if we set a few additional
  environment variables.
- `sagemath-tests' simply runs the tests.

If I interpret the output correctly, these are the tests that are still
failing:
>  sage/calculus/calculus.py                           #  6 doctests  failed
>  sage/categories/primer.py                           #  1 doctest   failed
>  sage/doctest/control.py                             #  3 doctests  failed
>  sage/doctest/sources.py                             #  1 doctest   failed
>  sage/doctest/test.py                                #  1 doctest   failed
>  sage/env.py                                         #  4 doctests  failed
>  sage/doctest/forker.py                              #  1 doctest   failed
>  sage/functions/exp_integral.py                      #  1 doctest   failed
>  sage/interfaces/gap_workspace.py                    #  2 doctests  failed
>  sage/interfaces/maxima_abstract.py                  #  2 doctests  failed
>  sage/interfaces/maxima_lib.py                       #  2 doctests  failed
>  sage/lfunctions/sympow.py                           # 10 doctests  failed
>  sage/libs/eclib/interface.py                        #  7 doctests  failed
>  sage/misc/package_dir.py                            #  1 doctest   failed
>  sage/modular/abvar/abvar.py                         #  1 doctest   failed
>  sage/modular/hecke/submodule.py                     #  1 doctest   failed
>  sage/plot/plot3d/tachyon.py                         #  2 doctests  failed
>  sage/repl/display/jsmol_iframe.py                   # 11 doctests  failed
>  sage/repl/display/formatter.py                      #  4 doctests  failed
>  sage/repl/ipython_kernel/install.py                 #  1 doctest   failed
>  sage/repl/ipython_tests.py                          #  2 doctests  failed
>  sage/repl/rich_output/backend_ipython.py            #  1 doctest   failed
>  sage/repl/rich_output/output_graphics.py            # 25 doctests  failed
>  sage/repl/rich_output/output_graphics3d.py          # 34 doctests  failed
>  sage/repl/rich_output/output_video.py               # 14 doctests  failed
>  sage/repl/rich_output/backend_doctest.py            # 17 doctests  failed
>  sage/schemes/elliptic_curves/ell_rational_field.py  # 14 doctests  failed
>  sage/symbolic/integration/integral.py               #  1 doctest   failed
>  sage/symbolic/relation.py                           #  1 doctest   failed
>  sage/tests/gap_packages.py                          #  1 doctest   failed
>  sage/tests/cmdline.py                               # 14 doctests  failed
Some of these seem harmless, others seem more concerning (including
segmentation faults), some due to still missing dependencies.

Some Notes:
- We need to set some environment variables, so that sage can find all
  dependencies (see `sagemath-tests'). I suppose we could wrap the
  `sage' command, but this would of course add them as dependencies.

- For the `sagemath-data-*' packages, I couldn't find explicit Licenses.
  In Sage's COPYING.txt it just says "None (database)" for license.

- How should we handle test failures? Given errors such as the ones
  below, it seems delusional to expect every test to succeed.
>  Failed example:
>      solve_ineq_fourier([x+y<9,x-y>4],[y,x])
>  Expected:
>      [[y < min(x - 4, -x + 9)]]
>  Got:
>      [[y < min(-x + 9, x - 4)]]

>  Failed example:
>      FDS.basename
>  Expected:
>      'sage.rings.integer'
>  Got:
>      '/gnu/store/.../lib/python3.9/site-packages/sage/rings/integer.pyx'

- `python-cython' is build-time dependency but may be needed at runtime.
  This could cause issues when cross-compiling, right? I think its path
  is only in the wrappers in bin/*.

vicvbcun (29):
  gnu: Remove ecl-16.
  gnu: edge-addition-planarity-suite: Update to 3.0.2.0.
  gnu: gap: Update to 4.11.1.
  gnu: cliquer: Update to 1.22.
  gnu: lcalc: Update to 2.0.5.
  gnu: ntl: Update to 11.5.1.
  gnu: eclib: Update to 20220621.
  gnu: lrcalc: Update to 2.1.
  gnu: maxima: Update to 5.46.0.
  gnu: python-sympy: Update to 1.10.1.
  gnu: cddlib: Update to 0.94m.
  gnu: Add python-memory-allocator.
  gnu: Add python-pplpy.
  gnu: Add primecount.
  gnu: Add python-primecountpy.
  gnu: Add python-lrcalc.
  gnu: Add palp.
  gnu: Add gfan.
  gnu: Add flintqs.
  gnu: Add tachyon.
  gnu: Add sagemath-data-conway-polynomials.
  gnu: Add sagemath-data-elliptic-curves.
  gnu: Add sagemath-data-combinatorial-designs.
  gnu: Add sagemath-data-graphs.
  gnu: Add sagemath-data-poytopes-db.
  gnu: Add pari-galdata.
  gnu: Add sagemath-just-build.
  gnu: Add sagemath-with-dependencies.
  gnu: Add sagemath-tests.

 gnu/local.mk                                  |   9 +-
 gnu/packages/algebra.scm                      | 203 +++--
 gnu/packages/graph.scm                        |   4 +-
 gnu/packages/maths.scm                        |  31 +-
 .../ecl-16-format-directive-limit.patch       |  83 --
 .../ecl-16-ignore-stderr-write-error.patch    |  17 -
 gnu/packages/patches/ecl-16-libffi.patch      |  16 -
 .../patches/lcalc-default-parameters-1.patch  |  26 -
 .../patches/lcalc-default-parameters-2.patch  |  58 --
 gnu/packages/patches/lcalc-lcommon-h.patch    |  13 -
 .../patches/lcalc-using-namespace-std.patch   |  43 -
 gnu/packages/patches/lrcalc-includes.patch    |  92 ---
 gnu/packages/patches/tachyon-make-arch.patch  |  13 +
 gnu/packages/python-xyz.scm                   |   4 +-
 gnu/packages/sagemath.scm                     | 780 ++++++++++++++++--
 15 files changed, 833 insertions(+), 559 deletions(-)
 delete mode 100644 gnu/packages/patches/ecl-16-format-directive-limit.patch
 delete mode 100644 gnu/packages/patches/ecl-16-ignore-stderr-write-error.patch
 delete mode 100644 gnu/packages/patches/ecl-16-libffi.patch
 delete mode 100644 gnu/packages/patches/lcalc-default-parameters-1.patch
 delete mode 100644 gnu/packages/patches/lcalc-default-parameters-2.patch
 delete mode 100644 gnu/packages/patches/lcalc-lcommon-h.patch
 delete mode 100644 gnu/packages/patches/lcalc-using-namespace-std.patch
 delete mode 100644 gnu/packages/patches/lrcalc-includes.patch
 create mode 100644 gnu/packages/patches/tachyon-make-arch.patch


base-commit: f6904c0b19c2fcca41bbf1400c738bd833fec9a8
-- 
2.37.0






reply via email to

[Prev in Thread] Current Thread [Next in Thread]