Opened 2 months ago

Last modified 4 days ago

#34537 needs_review enhancement

Upgrade to pari 2.15.1

Reported by: Vincent Delecroix Owned by:
Priority: critical Milestone: sage-9.8
Component: number theory Keywords:
Cc: Antonio Rojas, Mauricio Collares Merged in:
Authors: Bill Allombert, Vincent Delecroix, Antonio Rojas Reviewers: Dima Pasechnik
Report Upstream: Workaround found; Bug reported upstream. Work issues:
Branch: public/34537 (Commits, GitHub, GitLab) Commit: 1e86aa26790d84bf066eca67f98a60a8aa3d4d3a
Dependencies: #34496, #33878 Stopgaps:

Status badges

Description (last modified by Matthias Köppe)

PARI/GP 2.15 is out, and homebrew, gentoo, arch, debian-unstable already have the new version.

Attachments (2)

giac-1.9.0.15p0.log (56.3 KB) - added by Vincent Delecroix 2 months ago.
testall.log (1.7 MB) - added by Vincent Delecroix 2 months ago.

Download all attachments as: .zip

Change History (88)

Changed 2 months ago by Vincent Delecroix

Attachment: giac-1.9.0.15p0.log added

comment:1 Changed 2 months ago by Vincent Delecroix

Description: modified (diff)

comment:2 Changed 2 months ago by Vincent Delecroix

Indeed, according to Bill Allombert ANYARG is gone in PARI/GP 2.15.0.

comment:3 Changed 2 months ago by Vincent Delecroix

a solution

#ifdef __cplusplus
#  define ANYARG ...
#else
#  define ANYARG
#endif

comment:4 Changed 2 months ago by Vincent Delecroix

Authors: Bill Allombert, Vincent Delecroix
Branch: u/vdelecroix/34537
Commit: c9fec46d5a07aa12d37937a6193261e96558c1c5

New commits:

d3058fechange pari version
c9fec46ANYARG giac patch

Changed 2 months ago by Vincent Delecroix

Attachment: testall.log added

comment:5 Changed 2 months ago by Vincent Delecroix

For the complete log, see testall.log

geometry/polyhedron/backend_normaliz.py  # 1 doctest failed
geometry/polyhedron/backend_field.py  # 2 doctests failed
dynamics/arithmetic_dynamics/projective_ds.py  # 1 doctest failed
arith/misc.py  # 4 doctests failed
libs/pari/tests.py  # 2 doctests failed
doctest/forker.py  # 1 doctest failed
doctest/sources.py  # 1 doctest failed
modular/cusps_nf.py  # 1 doctest failed
modular/modform/l_series_gross_zagier.py  # 1 doctest failed
modular/modsym/p1list_nf.py  # 3 doctests failed
modular/modform_hecketriangle/hecke_triangle_group_element.py  # 1 doctest failed
interfaces/genus2reduction.py  # 15 doctests failed
plot/plot3d/index_face_set.pyx  # Timed out
modules/free_quadratic_module_integer_symmetric.py  # 6 doctests failed
lfunctions/pari.py  # 1 doctest failed
lfunctions/dokchitser.py  # 4 doctests failed
rings/qqbar.py  # 28 doctests failed
rings/function_field/function_field.py  # 1 doctest failed
rings/number_field/selmer_group.py  # 1 doctest failed
rings/number_field/class_group.py  # 3 doctests failed
rings/number_field/number_field_ideal_rel.py  # 3 doctests failed
rings/number_field/bdd_height.py  # 1 doctest failed
rings/number_field/order.py  # 1 doctest failed
rings/number_field/S_unit_solver.py  # 4 doctests failed
rings/number_field/number_field.py  # 20 doctests failed
rings/number_field/number_field_rel.py  # 2 doctests failed
rings/number_field/number_field_ideal.py  # 1 doctest failed
rings/number_field/number_field_element.pyx  # 3 doctests failed
rings/number_field/galois_group.py  # 1 doctest failed
rings/finite_rings/finite_field_prime_modn.py  # 1 doctest failed
rings/finite_rings/residue_field.pyx  # 12 doctests failed
rings/polynomial/polynomial_quotient_ring.py  # 1 doctest failed
rings/polynomial/polynomial_element.pyx  # 2 doctests failed
rings/polynomial/polynomial_number_field.pyx  # 1 doctest failed
groups/fqf_orthogonal.py  # 1 doctest failed
groups/matrix_gps/isometries.py  # 1 doctest failed
schemes/curves/affine_curve.py  # 3 doctests failed
schemes/plane_conics/con_rational_function_field.py  # 3 doctests failed
schemes/elliptic_curves/gal_reps_number_field.py  # 2 doctests failed
schemes/elliptic_curves/ell_rational_field.py  # 17 doctests failed
schemes/elliptic_curves/isogeny_small_degree.py  # 1 doctest failed
schemes/elliptic_curves/gp_simon.py  # 1 doctest failed
schemes/elliptic_curves/modular_parametrization.py  # 3 doctests failed
schemes/elliptic_curves/BSD.py  # 3 doctests failed
schemes/elliptic_curves/ell_generic.py  # 1 doctest failed
schemes/elliptic_curves/heegner.py  # 181 doctests failed
schemes/elliptic_curves/ell_field.py  # 1 doctest failed
schemes/elliptic_curves/ell_number_field.py  # 6 doctests failed
schemes/hyperelliptic_curves/jacobian_endomorphism_utils.py  # 4 doctests failed
schemes/hyperelliptic_curves/jacobian_generic.py  # 10 doctests failed
schemes/affine/affine_morphism.py  # 1 doctest failed
quadratic_forms/binary_qf.py  # 25 doctests failed
quadratic_forms/quadratic_form__automorphisms.py  # 1 doctest failed
quadratic_forms/qfsolve.py  # 1 doctest failed
quadratic_forms/genera/genus.py  # 5 doctests failed

comment:6 Changed 2 months ago by Antonio Rojas

Branch: u/vdelecroix/34537u/arojas/34537

comment:7 Changed 2 months ago by Antonio Rojas

Commit: c9fec46d5a07aa12d37937a6193261e96558c1c56a83955cd1c55ddac45539888df233a3c1a885c6

Pushed fixes for test failures caused by different choice of generators and syntax changes so we have a clear picture of the actual issues. Remaining failures:

sage -t --long /usr/lib/python3.10/site-packages/sage/quadratic_forms/qfsolve.py  # 1 doctest failed
sage -t --long /usr/lib/python3.10/site-packages/sage/quadratic_forms/binary_qf.py  # 25 doctests failed
sage -t --long /usr/lib/python3.10/site-packages/sage/quadratic_forms/genera/genus.py  # 4 doctests failed
sage -t --long /usr/lib/python3.10/site-packages/sage/modular/modform/l_series_gross_zagier.py  # 1 doctest failed
sage -t --long /usr/lib/python3.10/site-packages/sage/schemes/plane_conics/con_rational_function_field.py  # 3 doctests failed
sage -t --long /usr/lib/python3.10/site-packages/sage/schemes/curves/affine_curve.py  # 3 doctests failed
sage -t --long /usr/lib/python3.10/site-packages/sage/schemes/elliptic_curves/heegner.py  # 181 doctests failed
sage -t --long /usr/lib/python3.10/site-packages/sage/schemes/elliptic_curves/ell_rational_field.py  # 17 doctests failed
sage -t --long /usr/lib/python3.10/site-packages/sage/schemes/elliptic_curves/BSD.py  # 3 doctests failed
sage -t --long /usr/lib/python3.10/site-packages/sage/schemes/elliptic_curves/modular_parametrization.py  # 3 doctests failed
sage -t --long /usr/lib/python3.10/site-packages/sage/schemes/elliptic_curves/gp_simon.py  # 1 doctest failed
sage -t --long /usr/lib/python3.10/site-packages/sage/schemes/hyperelliptic_curves/jacobian_generic.py  # 10 doctests failed
sage -t --long /usr/lib/python3.10/site-packages/sage/schemes/hyperelliptic_curves/jacobian_endomorphism_utils.py  # 4 doctests failed
sage -t --long /usr/lib/python3.10/site-packages/sage/modules/free_quadratic_module_integer_symmetric.py  # 1 doctest failed
sage -t --long /usr/lib/python3.10/site-packages/sage/lfunctions/dokchitser.py  # 4 doctests failed
sage -t --long /usr/lib/python3.10/site-packages/sage/groups/fqf_orthogonal.py  # 1 doctest failed
sage -t --long /usr/lib/python3.10/site-packages/sage/rings/number_field/number_field.py  # 11 doctests failed
sage -t --long /usr/lib/python3.10/site-packages/sage/rings/number_field/number_field_element.pyx  # 1 doctest failed
sage -t --long /usr/lib/python3.10/site-packages/sage/rings/polynomial/polynomial_element.pyx  # 2 doctests failed
sage -t --long /usr/lib/python3.10/site-packages/sage/rings/polynomial/polynomial_number_field.pyx  # 1 doctest failed
sage -t --long /usr/lib/python3.10/site-packages/sage/rings/function_field/function_field.py  # 1 doctest failed

New commits:

6a83955Adjust tests for pari 2.15

comment:8 Changed 2 months ago by git

Commit: 6a83955cd1c55ddac45539888df233a3c1a885c624e9e51b1a8c4f0c08bc6bc675ec12aca19d705c

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

24e9e51Binary quadratic forms are of t_QFB type in pari 2.15

comment:9 Changed 2 months ago by git

Commit: 24e9e51b1a8c4f0c08bc6bc675ec12aca19d705ce9f6662798a513759747e46be5aacd064cd93ab7

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

e9f6662Remove qfminimize function from qfsolve.gp, it is unused and conflicts with the builtin qfminimize in gp 2.15

comment:10 Changed 2 months ago by git

Commit: e9f6662798a513759747e46be5aacd064cd93ab772ff8265647ee235dd13abfa4d849af477e1387b

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

72ff826Rename custom ellrank function as it conflicts with a native ellrank from gp 2.15

comment:11 Changed 2 months ago by Antonio Rojas

Report Upstream: N/AReported upstream. No feedback yet.

Upstream report for the failures in schemes.curves.affine_curve and rings.number_field.number_field:

https://pari.math.u-bordeaux.fr/cgi-bin/bugreport.cgi?bug=2414

comment:12 Changed 2 months ago by git

Commit: 72ff8265647ee235dd13abfa4d849af477e1387b330e7d7e4da66abb7249f8e91a3e36dced209cff

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

0e44b62Another test fix
330e7d7Update test in gp_simon.py

comment:13 Changed 2 months ago by git

Commit: 330e7d7e4da66abb7249f8e91a3e36dced209cffb1e967798b77a62b7ca926016ec1eee1b41937f2

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

b1e9677Update to 2.15.0 final

comment:14 Changed 2 months ago by git

Commit: b1e967798b77a62b7ca926016ec1eee1b41937f2da873261689a2dc05ccc8ddd0ed45f56f55962db

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

07020f0Merge remote-tracking branch 'origin/develop' into t/34537/34537
da87326Add workaround for PARI bug#2414

comment:15 Changed 2 months ago by git

Commit: da873261689a2dc05ccc8ddd0ed45f56f55962db9fbb8864ffef60eac5a8df28a365811c544fd239

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

cd0cac6Another workaround for PARI bug#2414
9fbb886Filter out gp warnings that break parsing output in dokchitser.py

comment:16 Changed 2 months ago by Antonio Rojas

Authors: Bill Allombert, Vincent DelecroixBill Allombert, Vincent Delecroix, Antonio Rojas
Summary: Prepare for pari 2.15Upgrade to pari 2.15

Only two remaining issues that are going to need more help from experts:

sage -t --long /usr/lib/python3.10/site-packages/sage/interfaces/genus2reduction.py  # 15 doctests failed
sage -t --long /usr/lib/python3.10/site-packages/sage/schemes/hyperelliptic_curves/jacobian_generic.py  # 10 doctests failed
sage -t --long /usr/lib/python3.10/site-packages/sage/schemes/hyperelliptic_curves/jacobian_endomorphism_utils.py  # 4 doctests failed

These are caused by the changes in gp's genus2red output from https://pari.math.u-bordeaux.fr/cgi-bin/gitweb.cgi?p=pari.git;a=commitdiff;h=a41e4fa95925eae42830217313583efc80628763

Sage's genus2reduction.py needs to be adapted to those changes.

sage -t --long /usr/lib/python3.10/site-packages/sage/groups/fqf_orthogonal.py  # 1 doctest failed

This is a weird issue that involves pari and gap code. Needs further investigation.

comment:17 Changed 2 months ago by git

Commit: 9fbb8864ffef60eac5a8df28a365811c544fd239328f04347598556e018ff8a861af1841c4ed294f

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

328f043Fix one more test in docs

comment:18 Changed 2 months ago by git

Commit: 328f04347598556e018ff8a861af1841c4ed294fa019adcdf47f92e66ff85863ff3f5674f0ca6f9d

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

a019adcRevert "Fix one more test in docs"

comment:19 in reply to:  11 Changed 2 months ago by Antonio Rojas

Replying to Antonio Rojas:

Upstream report for the failures in schemes.curves.affine_curve and rings.number_field.number_field:

https://pari.math.u-bordeaux.fr/cgi-bin/bugreport.cgi?bug=2414

The bug was fixed upstream, but we may want to keep the workaround. It's not particularly hackish and will allow to use an unpatched system pari 2.15.0

comment:20 Changed 2 months ago by Matthias Köppe

Description: modified (diff)
Priority: majorcritical

comment:21 Changed 2 months ago by Matthias Köppe

Is this ready to go, or should we put the giac build fix on a separate ticket?

comment:22 Changed 2 months ago by Antonio Rojas

Cc: Antonio Rojas added

It's not ready, see comment:16

comment:23 Changed 2 months ago by Matthias Köppe

Dependencies: #34586

comment:24 Changed 2 months ago by Matthias Köppe

That's now #34586

comment:25 Changed 2 months ago by Vincent Delecroix

Instead of using the ellQ_ellrank from Denis Simon script we should be using the ellrank from PARI/GP (available from version 2.15). Though, the latter only works over rational numbers.

comment:26 in reply to:  25 ; Changed 2 months ago by Antonio Rojas

Replying to Vincent Delecroix:

Instead of using the ellQ_ellrank from Denis Simon script we should be using the ellrank from PARI/GP (available from version 2.15). Though, the latter only works over rational numbers.

That should go in a follow-up ticket, I think. The branch is already big enough.

comment:27 in reply to:  26 Changed 2 months ago by Vincent Delecroix

Replying to Antonio Rojas:

Replying to Vincent Delecroix:

Instead of using the ellQ_ellrank from Denis Simon script we should be using the ellrank from PARI/GP (available from version 2.15). Though, the latter only works over rational numbers.

That should go in a follow-up ticket, I think. The branch is already big enough.

Sure: #34608

comment:28 Changed 2 months ago by Vincent Delecroix

I am with Bill. I will push a fix for the genus 2 reduction.

comment:29 Changed 2 months ago by Vincent Delecroix

Branch: u/arojas/34537public/34537
Commit: a019adcdf47f92e66ff85863ff3f5674f0ca6f9deb7db0d7db18cdc6fb0ef3671e99e8bf9fc1f3ff

New commits:

7c7d626fix call to pari genus2red
eb7db0dfix doc associated to genus 2 reduction

comment:30 Changed 2 months ago by Vincent Delecroix

The modifications I have done are incompatible with PARI < 2.15. I think it would be simpler to enforce PARI >= 2.15 in the next sage version.

comment:31 Changed 2 months ago by git

Commit: eb7db0d7db18cdc6fb0ef3671e99e8bf9fc1f3ff6b250d389f6eb7e13a1c3baa34cedcd12512a320

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

6b250d3Merge remote-tracking branch 'origin/develop' into t/34537/public/34537

comment:32 in reply to:  30 Changed 2 months ago by Lorenz Panny

Replying to Vincent Delecroix:

I think it would be simpler to enforce PARI >= 2.15 in the next sage version.

If done, this would simplify the patch at #33360, which currently chooses from two distinct implementations depending on the PARI version.

comment:33 Changed 2 months ago by Dima Pasechnik

Meanwhile, please see #34496 - to forbid system Pari 2.15 and newer, until we're done here.

comment:34 Changed 2 months ago by git

Commit: 6b250d389f6eb7e13a1c3baa34cedcd12512a32096efc900c50423bc37dad84c6da4e2afe9712785

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

96efc90Re-fix test that was moved to a different file in 9.8.beta1

comment:35 Changed 2 months ago by Antonio Rojas

This is almost ready, just needs someone to figure out the failure in sage/groups/fqf_orthogonal.py

comment:36 Changed 2 months ago by Vincent Delecroix

The test in fqf_orthogonal.py does not make much sense as Oq and OL are different groups.

comment:37 Changed 2 months ago by git

Commit: 96efc900c50423bc37dad84c6da4e2afe971278548ea610d2f4fca63dbeccd0ba575d458097267e2

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

48ea610fix doctest if fqf_orthogonal

comment:38 in reply to:  35 Changed 2 months ago by Antonio Rojas

Replying to Antonio Rojas:

This is almost ready, just needs someone to figure out the failure in sage/groups/fqf_orthogonal.py

OK, from a closer look it looks like this is just caused by a different choice of generators for the orthogonal group. Replacing

sage: assert Oq(OL.0) == Oq(OL.0.matrix())

with

sage: assert Oq(OL.1) == Oq(OL.1.matrix())

gives the same failure with pari 2.13. So, even though this looks like an actual issue, it is not a regression from the pari update, it just happened to work by chance before due to a different matrix being tested. I think we should just flag this as known bug and proceed with this.


New commits:

48ea610fix doctest if fqf_orthogonal

comment:39 Changed 2 months ago by Vincent Delecroix

I pushed a "fix" in 48ea610. I do not think there is anything deep about generators that is tested here. Otherwise this should have been documented!

comment:40 Changed 2 months ago by Vincent Delecroix

Dependencies: #34586
Status: newneeds_review

comment:41 Changed 2 months ago by Vincent Delecroix

Antonio, if you don't like my last commit feel free to replace with "known bug".

comment:42 Changed 2 months ago by Vincent Delecroix

Status: needs_reviewneeds_info

Should we enforce pari 2.15 at configure step?

comment:43 Changed 2 months ago by git

Commit: 48ea610d2f4fca63dbeccd0ba575d458097267e2b38f58826ab47308d6cf581ec16ec871439ea776

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

b38f588Require pari>=2.15, remove old bug test

comment:44 in reply to:  42 Changed 2 months ago by Antonio Rojas

Report Upstream: Reported upstream. No feedback yet.Workaround found; Bug reported upstream.
Status: needs_infoneeds_review

Replying to Vincent Delecroix:

Should we enforce pari 2.15 at configure step?

Was just doing that. Since there are backwards-incompatible changes, we should

comment:45 Changed 2 months ago by Dima Pasechnik

Dependencies: #34496

see the rationale for putting #34496 into dependencies in #34496

comment:46 Changed 2 months ago by Dima Pasechnik

Also m4_pushdef([SAGE_PARI_MINVER],["134912"]) is not right. This is pari 2.15.0, but without a patch it won't work. So this has to be a bigger value.

comment:47 Changed 2 months ago by git

Commit: b38f58826ab47308d6cf581ec16ec871439ea776b8ef29c1dd8f6e005e575d32bae4e58229cf3e42

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

8641cfeAdd workaround for PARI bug#2414
074848cAnother workaround for PARI bug#2414
fc53487Filter out gp warnings that break parsing output in dokchitser.py
6be8431Fix one more test in docs
281cf7bRevert "Fix one more test in docs"
51ea7c3fix call to pari genus2red
2112c7efix doc associated to genus 2 reduction
04a1730Re-fix test that was moved to a different file in 9.8.beta1
f0365f3fix doctest if fqf_orthogonal
b8ef29cRequire pari>=2.15, remove old bug test

comment:48 Changed 2 months ago by Dima Pasechnik

I've rebased over the branch of #34496 and bumped SAGE_PARI_MIN/MAXVER accordingly.

comment:49 in reply to:  46 Changed 2 months ago by Antonio Rojas

Replying to Dima Pasechnik:

Also m4_pushdef([SAGE_PARI_MINVER],["134912"]) is not right. This is pari 2.15.0, but without a patch it won't work. So this has to be a bigger value.

Which patch? This works fine with plain 2.15.0

comment:50 Changed 2 months ago by git

Commit: b8ef29c1dd8f6e005e575d32bae4e58229cf3e422823bff46e12d48226db0326e270f02336c005bc

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

2823bffcorrect minimal version of pari

comment:51 Changed 2 months ago by Dima Pasechnik

OK, right, I didn't pay attention. It's giac's patch, not pari's. Fixed.

comment:52 Changed 2 months ago by Antonio Rojas

Status: needs_reviewneeds_work

Looks like the force push reverted part of the 9.8.beta1 rebase. The changes in sage/geometry/polyhedron/backend_normaliz.py shouldn't be there, and the pycodestyle changes from #34522 in src/sage/lfunctions/pari.py are missing.

comment:53 Changed 2 months ago by git

Commit: 2823bff46e12d48226db0326e270f02336c005bc1e86aa26790d84bf066eca67f98a60a8aa3d4d3a

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

1e86aa2Fix 9.8.beta1 rebase

comment:54 Changed 2 months ago by Antonio Rojas

Status: needs_workneeds_review

comment:55 Changed 2 months ago by Dima Pasechnik

tests good on macOS with Homebrew's pari 2.15.0

comment:56 Changed 2 months ago by Dima Pasechnik

Reviewers: Dima Pasechnik

I suppose this needs a round of testing on GH Actions.

comment:57 Changed 2 months ago by Dima Pasechnik

I've started https://github.com/sagemath/sagetrac-mirror/actions/runs/3164081241 I see the CI has been refactored, not sure how to run more tests.

comment:59 Changed 2 months ago by Dima Pasechnik

started

https://github.com/sagemath/sagetrac-mirror/actions/runs/3167926282

and

https://github.com/sagemath/sagetrac-mirror/actions/runs/3167930205

By the way, with such urls as you provided, it's not sufficent to just push "Run workflow", as this widget still has "develop" as a branch to run - so the branch still had to manually selected.

comment:60 Changed 8 weeks ago by Dima Pasechnik

works on M1 mac with Homebrew, too.

comment:61 Changed 8 weeks ago by Dima Pasechnik

Status: needs_reviewpositive_review

there were errors with many CI runs on macOS, but I think it's not because of this. LGTM

comment:62 Changed 8 weeks ago by Dima Pasechnik

Status: positive_reviewneeds_info

I spoke too soon. While Sage tests all pass, some of giac's selftests fail (this is on macOS M1 machine)

[giac-1.9.0.15p0] make  check-TESTS
[giac-1.9.0.15p0] PASS: chk_partfrac
[giac-1.9.0.15p0] PASS: chk_factor
[giac-1.9.0.15p0] PASS: chk_integrate
[giac-1.9.0.15p0] PASS: chk_geo
[giac-1.9.0.15p0] FAIL: chk_fhan2
[giac-1.9.0.15p0] PASS: chk_cas
[giac-1.9.0.15p0] PASS: chk_fhan3
[giac-1.9.0.15p0] FAIL: chk_fhan4
[giac-1.9.0.15p0] PASS: chk_xavier
[giac-1.9.0.15p0] PASS: chk_morley_demo
[giac-1.9.0.15p0] FAIL: chk_fhan6
[giac-1.9.0.15p0] PASS: chk_limit
[giac-1.9.0.15p0] FAIL: chk_fhan8
[giac-1.9.0.15p0] PASS: chk_fhan5
[giac-1.9.0.15p0] PASS: chk_fhan0
[giac-1.9.0.15p0] PASS: chk_normalize
[giac-1.9.0.15p0] FAIL: chk_fhan13
[giac-1.9.0.15p0] FAIL: chk_fhan12
[giac-1.9.0.15p0] PASS: chk_fhan14
[giac-1.9.0.15p0] PASS: chk_fhan1
[giac-1.9.0.15p0] PASS: chk_fhan15
[giac-1.9.0.15p0] FAIL: chk_fhan11
[giac-1.9.0.15p0] PASS: chk_fhan17
[giac-1.9.0.15p0] PASS: chk_fhan16
[giac-1.9.0.15p0] PASS: chk_fhan20
[giac-1.9.0.15p0] PASS: chk_fhan19
[giac-1.9.0.15p0] PASS: chk_fhan21
[giac-1.9.0.15p0] FAIL: chk_fhan9
[giac-1.9.0.15p0] PASS: chk_fhan18
[giac-1.9.0.15p0] PASS: chk_fhan7
[giac-1.9.0.15p0] ============================================================================
[giac-1.9.0.15p0] Testsuite summary for giac 1.9.0
[giac-1.9.0.15p0] ============================================================================
[giac-1.9.0.15p0] # TOTAL: 30
[giac-1.9.0.15p0] # PASS:  22
[giac-1.9.0.15p0] # SKIP:  0
[giac-1.9.0.15p0] # XFAIL: 0
[giac-1.9.0.15p0] # FAIL:  8
[giac-1.9.0.15p0] # XPASS: 0

hopefully it's just formatting, but needs investigation

Last edited 8 weeks ago by Dima Pasechnik (previous) (diff)

comment:63 Changed 8 weeks ago by Antonio Rojas

I'm seeing just one failure, which is a segfault

  ***   the thread stack overflows !
  current stack size: 1024000 (0.977 Mbytes)
  [hint] set 'threadsizemax' to a nonzero value in your GPRC
  *** matdet: Warning: increasing stack size to 2048000.
  ***   at top-level: matdet([-10,-7,6,-7,1,4,-1,-2,-2,-5,1,7,-6,7,-
  ***                 ^----------------------------------------------
  *** matdet: the thread stack overflows !
  current stack size: 1024000 (0.977 Mbytes)
  [hint] set 'threadsizemax' to a nonzero value in your GPRC
Error in PARI subsystem
./chk_fhan4: line 3: 21708 Segmentation fault      (core dumped) ../src/icas TP04-sol.cas > TP04.tst

caused by the garbage collection changes in https://pari.math.u-bordeaux.fr/cgi-bin/gitweb.cgi?p=pari.git;a=commitdiff;h=259f62c17c101c380cfed56d303304a13e21ec1e

comment:64 Changed 8 weeks ago by Dima Pasechnik

I see this segfault too. Does setting threadsizemax in ~/.gprc help?

comment:65 Changed 8 weeks ago by John Palmieri

Dima, as noted at https://trac.sagemath.org/ticket/32785#comment:7, it is not new that giac fails its test suite, at least on OS X machines. On Intel (old version of giac and pari):

PASS: chk_partfrac
PASS: chk_fhan3
PASS: chk_factor
FAIL: chk_fhan2
PASS: chk_geo
PASS: chk_integrate
PASS: chk_fhan0
PASS: chk_cas
PASS: chk_fhan5
PASS: chk_fhan13
PASS: chk_fhan12
PASS: chk_fhan14
PASS: chk_fhan15
PASS: chk_fhan17
PASS: chk_fhan6
PASS: chk_fhan19
PASS: chk_fhan16
PASS: chk_fhan20
PASS: chk_fhan21
FAIL: chk_fhan9
PASS: chk_fhan18
PASS: chk_fhan7
PASS: chk_xavier
PASS: chk_morley_demo
PASS: chk_limit
PASS: chk_fhan11
PASS: chk_fhan8
PASS: chk_fhan4
PASS: chk_fhan1
PASS: chk_normalize

I'll try on an m2 machine later, to see what failures I get.

comment:66 Changed 8 weeks ago by Dima Pasechnik

ok, thus it is not much of a regression.

comment:67 Changed 8 weeks ago by John Palmieri

By the way, should #34496 really be a dependency, or is the point of this ticket to be able to bypass the problem of building with the newest pari?

comment:68 in reply to:  67 Changed 8 weeks ago by Dima Pasechnik

Replying to John Palmieri:

By the way, should #34496 really be a dependency, or is the point of this ticket to be able to bypass the problem of building with the newest pari?

#34496 added a useful tweak to spkg-configure of pari, and so we build up on it.

comment:69 Changed 8 weeks ago by John Palmieri

I'm not going to be able to check test suite failures with the old pari/giac on Apple M2 until Friday.

comment:70 Changed 8 weeks ago by Mauricio Collares

Cc: Mauricio Collares added

comment:71 Changed 7 weeks ago by John Palmieri

On Apple M2, the old pari and the old giac give these results in giac's test suite:

make  check-TESTS
PASS: chk_partfrac
PASS: chk_factor
PASS: chk_integrate
PASS: chk_geo
PASS: chk_cas
PASS: chk_limit
FAIL: chk_fhan2
PASS: chk_xavier
PASS: chk_morley_demo
PASS: chk_fhan3
PASS: chk_normalize
FAIL: chk_fhan4
FAIL: chk_fhan6
FAIL: chk_fhan8
PASS: chk_fhan5
PASS: chk_fhan0
FAIL: chk_fhan13
FAIL: chk_fhan12
PASS: chk_fhan1
PASS: chk_fhan14
PASS: chk_fhan15
FAIL: chk_fhan11
PASS: chk_fhan17
PASS: chk_fhan16
PASS: chk_fhan20
PASS: chk_fhan19
PASS: chk_fhan21
FAIL: chk_fhan9
PASS: chk_fhan18
PASS: chk_fhan7

comment:72 Changed 7 weeks ago by John Palmieri

Looks like the same failures that Dima saw, so not a regression. I don't think it should be an obstacle to this ticket.

comment:73 Changed 7 weeks ago by Dima Pasechnik

Status: needs_infopositive_review

OK, thanks. Back to positive.

comment:74 Changed 7 weeks ago by Volker Braun

Status: positive_reviewneeds_work

The cypari testsuite fails on OSX (intel), worked before

Successfully installed cypari2-2.1.2

real    1m45.872s
user    1m35.524s
sys     0m9.197s
Copying package files from temporary location /Users/buildbot-sage/worker/sage_git/build/local/var/lib/sage/venv-python3.10.5/var/tmp/sage/build/cypari-2.1.2/inst to /Users/buildbot-sage/worker/sage_git/build/local/var/lib/sage/venv-python3.10.5
Running the test suite for cypari-2.1.2...
ulimit -s 8192; python3 -u tests/rundoctest.py
================================================================================
Testing cypari2.closure
**********************************************************************
File "/Users/buildbot-sage/worker/sage_git/build/local/var/lib/sage/venv-python3.10.5/lib/python3.10/site-packages/cypari2/closure.cpython-310-darwin.so", line ?, in cypari2.closure.__test__.objtoclosure (line 145)
Failed example:
    mul([1], [2])
Differences (ndiff with -expected +actual):
      Traceback (most recent call last):
    - ...
    - PariError: call_python: forbidden multiplication t_VEC (1 elts) * t_VEC (1 elts)
    +   File "/Users/buildbot-sage/worker/sage_git/build/local/var/lib/sage/venv-python3.10.5/lib/python3.10/doctest.py", line 1350, in __run
    +     exec(compile(example.source, filename, "single",
    +   File "<doctest cypari2.closure.__test__.objtoclosure (line 145)[18]>", line 1, in <module>
    +     mul([1], [2])
    +   File "cypari2/gen.pyx", line 4110, in cypari2.gen.Gen.__call__
    +     sig_on()
    +   File "cypari2/handle_error.pyx", line 213, in cypari2.handle_error._pari_err_handle
    +     raise PariError(errnum, pari_error_string, clone_gen_noclear(E))
    + PariError: call_python: incorrect type in qfbcomp (t_VEC)
**********************************************************************
File "/Users/buildbot-sage/worker/sage_git/build/local/var/lib/sage/venv-python3.10.5/lib/python3.10/site-packages/cypari2/closure.cpython-310-darwin.so", line ?, in cypari2.closure.objtoclosure
Failed example:
    mul([1], [2])
Differences (ndiff with -expected +actual):
      Traceback (most recent call last):
    - ...
    - PariError: call_python: forbidden multiplication t_VEC (1 elts) * t_VEC (1 elts)
    +   File "/Users/buildbot-sage/worker/sage_git/build/local/var/lib/sage/venv-python3.10.5/lib/python3.10/doctest.py", line 1350, in __run
    +     exec(compile(example.source, filename, "single",
    +   File "<doctest cypari2.closure.objtoclosure[18]>", line 1, in <module>
    +     mul([1], [2])
    +   File "cypari2/gen.pyx", line 4110, in cypari2.gen.Gen.__call__
    +     sig_on()
    +   File "cypari2/handle_error.pyx", line 213, in cypari2.handle_error._pari_err_handle
    +     raise PariError(errnum, pari_error_string, clone_gen_noclear(E))
    + PariError: call_python: incorrect type in qfbcomp (t_VEC)
**********************************************************************

comment:75 in reply to:  74 Changed 7 weeks ago by Vincent Delecroix

Replying to Volker Braun:

The cypari testsuite fails on OSX (intel), worked before

...

The error message indeed changed in PARI 2.15. Should that really block this ticket? Otherwise, we do have to upgrade cypari2 at the same time.

comment:76 Changed 7 weeks ago by Volker Braun

The (cy)pari testsuite is generally pretty solid so I'd hate to have to permanently disable it on the buildbot

comment:77 Changed 6 weeks ago by Tobias Hansen

Here is an explanation for the cypari error: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1020456#10

comment:78 in reply to:  77 Changed 6 weeks ago by Dima Pasechnik

comment:79 Changed 4 weeks ago by Gonzalo Tornaría

I have cypari2 pass all tests on pari-2.15 using

comment:80 Changed 3 weeks ago by Dima Pasechnik

Summary: Upgrade to pari 2.15Upgrade to pari 2.15.1

comment:81 in reply to:  80 Changed 3 weeks ago by Gonzalo Tornaría

Replying to Dima Pasechnik:

pari 2.15.1 is out, see https://pari.math.u-bordeaux.fr/archives/pari-announce-22/msg00002.html

Pari 2.15.1 includes the fix I cherry picked in my last comment.

The current HEAD of cypari2 already fied testsuite passes on pari 2.15, and Vincent said he will do a release soon.

It would be very nice if this can be merged for 9.8.

comment:82 Changed 3 weeks ago by Antonio Rojas

Also, giac 1.9.0.29 builds fine against 2.15 without patching.

comment:83 in reply to:  82 ; Changed 2 weeks ago by Dima Pasechnik

Replying to Antonio Rojas:

Also, giac 1.9.0.29 builds fine against 2.15 without patching.

do you want giac updated here, or on another ticket?

comment:84 Changed 2 weeks ago by Matthias Köppe

Dependencies: #34496#34496, #33878

cypari2 upgrade in #33878

comment:85 in reply to:  83 Changed 4 days ago by Antonio Rojas

Replying to Dima Pasechnik:

do you want giac updated here, or on another ticket?

I don't personally mind, was just pointing out the possibility of updating giac instead of patching. Can this go back to needs_review now?

comment:86 Changed 4 days ago by Dima Pasechnik

Status: needs_workneeds_review
Note: See TracTickets for help on using tickets.