Opened 5 years ago

Last modified 3 years ago

#17254 closed enhancement

Upgrade to Singular-4-0-1 — at Version 27

Reported by: jdemeyer Owned by:
Priority: major Milestone: sage-7.5
Component: packages: standard Keywords:
Cc: jpflori, burcin, jakobkroeker, fbissey, malb, mkoeppe, vbraun, nthiery, bhutz, mmarco, gjorgenson Merged in:
Authors: Reviewers:
Report Upstream: N/A Work issues:
Branch: u/jakobkroeker/ticket.17254.squashed (Commits) Commit: 6384b9b8d22905e7dcc72b84df33effae9c8a517
Dependencies: Stopgaps:

Description (last modified by jakobkroeker)

Lots of stuff has changed in Singular 4. But now the attached branch is almost working.

Repackaged upstream tarball: http://boxen.math.washington.edu/home/jdemeyer/spkg/singular-4.0.1p1.tar.bz2

Change History (27)

comment:1 Changed 5 years ago by jdemeyer

  • Branch set to u/jdemeyer/ticket/17254
  • Commit set to 2fcaeb5fadff9391624d03819bd9a4d405fdda72
  • Description modified (diff)

comment:2 follow-up: Changed 5 years ago by jpflori

Yeah, the update is non trivial, that's a reason to get #17184 (and so #16882) inbetween.

comment:3 in reply to: ↑ 2 ; follow-up: Changed 5 years ago by jdemeyer

Replying to jpflori:

Yeah, the update is non trivial

I wonder if we even have a Sage developer who is familiar enough with Singular to do this (for the record: not me, I know nothing about Singular).

that's a reason to get #17184 (and so #16882) inbetween.

Of course, I'm not arguing with that.

comment:4 in reply to: ↑ 3 Changed 5 years ago by jpflori

  • Cc burcin added

Replying to jdemeyer:

Replying to jpflori:

Yeah, the update is non trivial

I wonder if we even have a Sage developer who is familiar enough with Singular to do this (for the record: not me, I know nothing about Singular).

Maybe Burcin would do... IIRC the update was proposed as a GSoC project.

comment:5 Changed 5 years ago by jakobkroeker

  • Cc jakobkroeker added

comment:6 Changed 5 years ago by jakobkroeker

Q: where to get the singular tarball for this commit? I get a failure at

Trying to download http://www.sagemath.org/packages/upstream/singular/singular-4.0.1p1.tar.bz2

2.

Update to Singular 4.0.1

Maybe Burcin would do...

Could the update to 4.0.1. be done by at least two or three persons to spread the knownledge about Singular internals?

comment:7 follow-up: Changed 5 years ago by jpflori

You have to put a tarball repackaged by the spkg-src script in the upstream folder directly. Once the ticket is merged, the tarball will be put on the official mirror and could be downloaded automatically but not at the moment.

I've put a repackaged tarball at:

comment:8 Changed 5 years ago by jpflori

(I'm not sure the checksums will the same as what Jeroen branch expect, run ./sage -sh sage-fix-pkg-checksums after you have downloaded the tarball to fix this.)

comment:9 Changed 5 years ago by jpflori

And I'd be happy to work on the upgrade and learn more about Singular's internals, but please also review the "easy" #17184 (where I've already learnt some stuff) firsT.

comment:10 Changed 5 years ago by jdemeyer

  • Description modified (diff)

comment:11 follow-up: Changed 5 years ago by jakobkroeker

Singular 4.0.1. compiles now in sage but sage does not yet - I just pushed a branch 'u/jakobkroeker/ticket/17254'. You have to correct the 'singular-4.0.1p1.tar.bz2' tarball to get it work ( the 'm4' folder is missing).

For the moment I removed some patches; we probably will have to adjust them later on. For example there is meanwhile no such thing like 'lomalloc_ndebug' so if we want to disable some debug functionality or output for omalloc we have to do that by passing appropriate flags to omalloc/configure, e,g '--enable-optimizationflags --disable-debug --without-debug' ?

Also I disabled the currently broken '--enable-debugoutput' configure flag for the standalone 'factory' and informed Oleksander Motsak about the issue.

Could someone of you take care of the sage compile errors and figure out what is going wrong and/or ask for help in the Singular forum? I can't do that easily, because within the Singular-team I'm out-of-favor because I constantly criticise their software and thus I will likely get little or no support.

Jakob

comment:12 Changed 5 years ago by jdemeyer

  • Branch changed from u/jdemeyer/ticket/17254 to u/jakobkroeker/ticket/17254
  • Commit changed from 2fcaeb5fadff9391624d03819bd9a4d405fdda72 to 4c0bba332e4d67e3fc28df9b1ec9d136eb895b4a

New commits:

4c0bba3 singular 4.0.1 builds now, but sage does not due to changes in libsingular?

comment:13 Changed 5 years ago by jdemeyer

  • Branch changed from u/jakobkroeker/ticket/17254 to u/jdemeyer/ticket/17254
  • Commit changed from 4c0bba332e4d67e3fc28df9b1ec9d136eb895b4a to 2fcaeb5fadff9391624d03819bd9a4d405fdda72

comment:14 Changed 5 years ago by jakobkroeker

first hint: for example the interface of 'naIsZero' seems changed from

BOOLEAN naIsZero(number a)

to

BOOLEAN naIsZero(number a, const coeffs cf)

Persons who might have an idea about the changes:

Oleksandr Motsak Mohamed Barakat Martin Lee Hans Schönemann

see contact details at http://www.mathematik.uni-kl.de/agag/mitglieder/

comment:15 Changed 5 years ago by fbissey

  • Cc fbissey added

comment:16 in reply to: ↑ 7 Changed 5 years ago by jdemeyer

Replying to jpflori:

I've put a repackaged tarball at:

That's an older version than the one that I put in the ticket description, any reason...?

comment:17 in reply to: ↑ 11 Changed 5 years ago by jdemeyer

Replying to jakobkroeker:

You have to correct the 'singular-4.0.1p1.tar.bz2' tarball to get it work ( the 'm4' folder is missing).

My tarball compiled fine, so what is the problem?

comment:18 Changed 5 years ago by jdemeyer

You should never run ./autogen.sh, that is supposed to be run at packaging-time, not build-time.

comment:19 Changed 5 years ago by git

  • Commit changed from 2fcaeb5fadff9391624d03819bd9a4d405fdda72 to 80a6b05a08e391fa9718e1f83df861c93e2e5967

Branch pushed to git repo; I updated commit sha1. New commits:

79c079fUpgrade to Singular-4-0-1
4c0bba3 singular 4.0.1 builds now, but sage does not due to changes in libsingular?
80a6b05Merge commit '4c0bba3' into ticket/17254

comment:20 Changed 5 years ago by jakobkroeker

My tarball compiled fine, so what is the problem?

Confirm; cannot reproduce the issue. So likely I didn't use the recent tarball, or I screwed something up.

You should never run ./autogen.sh, that is supposed to be run at packaging-time, not build-time.

I'm guilty ;-)

comment:21 Changed 5 years ago by jakobkroeker

singulars spkg-install:

the '--enable-debugoutput' configure flag for standalone factory needs now in additon '--enable-streamio --without-Singular'

comment:22 Changed 5 years ago by jakobkroeker

  • Branch changed from u/jdemeyer/ticket/17254 to u/jakobkroeker/ticket/17254
  • Cc malb added
  • Commit changed from 80a6b05a08e391fa9718e1f83df861c93e2e5967 to f178dfc5c45529826a973815b62ab5be2a7f7136

After a little more tweaking and temporarily disabling the extension fields/rings, I was able to build some parts of sage with Singular 4.0.1 on a 'fc18 system' and then.. sage crashes at start! That happens because I didn't update ring creation right - I only recently discovered examples at './libpolys/tests/rings_test.h'. And some sage packages create common rings at loading time.

remaining riddles:

  • during build one sage file tried to link to -lsingular (I have no idea why), instead to the libSingular* files (that changed!), so I worked around by manually creating links to libSingular* files.
  • on a ScientificLinux? system I get errors like "ImportError?: /home/kroeker/Projects/sage-singular-4.0.1/local/lib/python2.7/site-packages/sage/rings/polynomial/plural.so: undefined symbol: wFunctionalBuch". This symbol is in libSingular*
  • fix ring creation. See examples at './libpolys/tests/rings_test.h'
  • the extension fields will need some more love. See 'algext.h' and 'transext.h'. @Martin: could you take a look?
  • some mapping functions (e.g. nr2mMapZp) now require a source and dst (coefficient) parameter. Not sure if I did it right (source: currentRing, dest: _ring or vice versa?)
  • I didn't fix unused interface definitions in singular-cdefs.pxi. TODO

See branch u/jakobkroeker/ticket/17254 and some notes at https://github.com/jakobkroeker/jk_test_sage/issues/13

If a build get stuck before errors described above, then maybe a 'make distclean' is necessary. And of course, the Singular tarball http://boxen.math.washington.edu/home/jdemeyer/spkg/singular-4.0.1p1.tar.bz2 is required.

Any help appreciated.


New commits:

79c079fUpgrade to Singular-4-0-1
2fcaeb5Update Singular to 4.0.1
4c0bba3 singular 4.0.1 builds now, but sage does not due to changes in libsingular?
80a6b05Merge commit '4c0bba3' into ticket/17254
2ae243amessy fixes
ff2a9dcrequired changes for singular to build sage; should be fixed upstream
3b7877ehacking sage to build with Singular 4.0.1. needs more love for extension coefficient fields and a refactoring
f178dfcfixing nr2mMapZp call

comment:23 Changed 5 years ago by git

  • Commit changed from f178dfc5c45529826a973815b62ab5be2a7f7136 to 8ba17d8bc77cab7d3cffdda267dde132cbaff45e

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

8ba17d8messy fixes

comment:24 Changed 5 years ago by git

  • Commit changed from 8ba17d8bc77cab7d3cffdda267dde132cbaff45e to c2a21bd383e0f9d82dd409efbd4b48a4317be0c7

Branch pushed to git repo; I updated commit sha1. New commits:

2ae243amessy fixes
ff2a9dcrequired changes for singular to build sage; should be fixed upstream
3b7877ehacking sage to build with Singular 4.0.1. needs more love for extension coefficient fields and a refactoring
f178dfcfixing nr2mMapZp call
8e82387Merge branch 'u/jakobkroeker/jakobkroeker.ticket.17254' of git://trac.sagemath.org/sage into jakobkroeker.ticket.17254
c2a21bdfixed some ring creation

comment:25 Changed 5 years ago by jakobkroeker

  • Branch changed from u/jakobkroeker/ticket/17254 to trac/u/jakobkroeker/ticket.17254.squashed
  • Commit c2a21bd383e0f9d82dd409efbd4b48a4317be0c7 deleted

comment:26 Changed 5 years ago by jakobkroeker

  • Branch changed from trac/u/jakobkroeker/ticket.17254.squashed to u/jakobkroeker/ticket.17254.squashed
  • Commit set to 6384b9b8d22905e7dcc72b84df33effae9c8a517

New commits:

6384b9bUpgrade to Singular 4.0.1: incomplete, messy patch(first aproach)

comment:27 Changed 5 years ago by jakobkroeker

  • Description modified (diff)
Note: See TracTickets for help on using tickets.