Opened 2 years ago

Closed 2 years ago

#23544 closed enhancement (fixed)

Upgrade PARI/GP to git master version

Reported by: jdemeyer Owned by:
Priority: major Milestone: sage-8.1
Component: packages: standard Keywords:
Cc: Merged in:
Authors: Jeroen Demeyer Reviewers: François Bissey
Report Upstream: Fixed upstream, but not in a stable release. Work issues:
Branch: 6896cc7 (Commits) Commit: 6896cc7f0e5d41822a6a4480d0f108434b02caee
Dependencies: #23796 Stopgaps:

Description (last modified by jdemeyer)

No changes to the Sage build system or Sage library are needed, so there is full build compatibility with the stable version.

There are some doctest failures though, which need to be fixed.

Tarball: http://sage.ugent.be/www/jdemeyer/sage/pari-2.10-1280-g88fb5b3.tar.gz (copied from https://pari.math.u-bordeaux.fr/pub/pari/snapshots/)

Upstream bugs found:

Change History (35)

comment:1 Changed 2 years ago by jdemeyer

  • Branch set to u/jdemeyer/ticket/23544

comment:2 Changed 2 years ago by git

  • Commit set to 476bbe280a454744efb76074e3a394db13a6d112

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

e7068f9Upgrade PARI to git master version
476bbe2Fix doctests for PARI upgrade

comment:3 Changed 2 years ago by jdemeyer

  • Description modified (diff)

New commits:

e7068f9Upgrade PARI to git master version
476bbe2Fix doctests for PARI upgrade

comment:4 Changed 2 years ago by jdemeyer

  • Description modified (diff)
  • Summary changed from Upgrade PARI to git master version to Upgrade PARI/GP to git master version

comment:5 Changed 2 years ago by jdemeyer

  • Description modified (diff)

comment:6 Changed 2 years ago by git

  • Commit changed from 476bbe280a454744efb76074e3a394db13a6d112 to 7f7dbb29258a9c7d03271f839fa7ea146dfcf8a3

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

938fc1dDon't use undocumented nf[7] in Simon's scripts
5e7022bPARI private header anal.h is no longer needed
848a9cdUpgrade PARI to git master version
14829feFix doctests for PARI upgrade
7f7dbb2Fix elliptic_exponential()

comment:7 Changed 2 years ago by git

  • Commit changed from 7f7dbb29258a9c7d03271f839fa7ea146dfcf8a3 to 85f51b48a14caa15b3c928aab0fd8e57374ed482

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

a668387Fix elliptic_exponential()
3d582ecDon't use undocumented nf[7] in Simon's scripts
108ff2eUse "abs tol" for clarity
e34d791PARI private header anal.h is no longer needed
3b3886dUpgrade PARI to git master version
85f51b4Fix doctests for PARI upgrade

comment:8 Changed 2 years ago by jdemeyer

  • Dependencies changed from #23543 to #23796

comment:9 Changed 2 years ago by jdemeyer

  • Description modified (diff)

comment:10 Changed 2 years ago by fbissey

Shouldn't the tarball be pari-2.10.0-xxx rather than 2.9.0?

comment:11 Changed 2 years ago by jdemeyer

  • Status changed from new to needs_review

comment:12 follow-ups: Changed 2 years ago by fbissey

  • Status changed from needs_review to needs_work

OK, can you explain to me how sage will know to upgrade from 2.9.3 to 2.9.0-xxxxxx? Am I missing something there about the build system.

Even if the version number doesn't matter so much, because sage builds and rebuilds stuff on version change, whatever they are, my sanity says the version number should be higher. Even upstream pari name their snapshot pari-2.10 https://pari.math.u-bordeaux.fr/pub/pari/snapshots/ and of course all the pari-2.9 releases have the same soname but this one will have different one.

Please change the version name.

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

Replying to fbissey:

OK, can you explain to me how sage will know to upgrade from 2.9.3 to 2.9.0-xxxxxx?

It just does. Sage doesn't have a concept of lower/higher version numbers, only of changed version numbers.

Even upstream pari name their snapshot pari-2.10 https://pari.math.u-bordeaux.fr/pub/pari/snapshots/

I wonder how they do that. I am doing as documented to create a PARI tarball (make distrib) and the version number pari-2.9.0-1234-gd1d0c49 is what comes out of the official upstream script.

So I would argue that the bug is upstream then.

comment:14 in reply to: ↑ 12 Changed 2 years ago by jdemeyer

Replying to fbissey:

Please change the version name.

OK, I will take a copy of the snapshot in https://pari.math.u-bordeaux.fr/pub/pari/snapshots/ then

comment:15 Changed 2 years ago by jdemeyer

  • Description modified (diff)

comment:16 Changed 2 years ago by git

  • Commit changed from 85f51b48a14caa15b3c928aab0fd8e57374ed482 to b15871276fd0444d115ad2c73bb19c60c741a420

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

a3563d0Upgrade PARI to git master version
b158712Fix doctests for PARI upgrade

comment:17 in reply to: ↑ 13 Changed 2 years ago by fbissey

Replying to jdemeyer:

Replying to fbissey:

OK, can you explain to me how sage will know to upgrade from 2.9.3 to 2.9.0-xxxxxx?

It just does. Sage doesn't have a concept of lower/higher version numbers, only of changed version numbers.

Even upstream pari name their snapshot pari-2.10 https://pari.math.u-bordeaux.fr/pub/pari/snapshots/

I wonder how they do that. I am doing as documented to create a PARI tarball (make distrib) and the version number pari-2.9.0-1234-gd1d0c49 is what comes out of the official upstream script.

So I would argue that the bug is upstream then.

OK, so that's why there is not an spkg-src either. Yes, sounds like a bug upstream then. Now that you have changed to an "official" upstream snapshot I will have to revise my own ebuild to be on the same level.

comment:18 Changed 2 years ago by jdemeyer

  • Description modified (diff)
  • Report Upstream changed from N/A to Reported upstream. No feedback yet.

comment:19 Changed 2 years ago by fbissey

Ok so upstream has a nice explanation for the 2.9.0/2.10 thing. Do we need to wait for upstream answer to the other bug?

comment:20 Changed 2 years ago by jdemeyer

  • Description modified (diff)
  • Report Upstream changed from Reported upstream. No feedback yet. to Fixed upstream, but not in a stable release.

comment:21 Changed 2 years ago by jdemeyer

  • Description modified (diff)

comment:22 Changed 2 years ago by git

  • Commit changed from b15871276fd0444d115ad2c73bb19c60c741a420 to ee09527a201962e2caa245e7e7ee0cb12b5f624a

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

48567d2Upgrade PARI to git master version
ee09527Fix doctests for PARI upgrade

comment:23 Changed 2 years ago by jdemeyer

  • Status changed from needs_work to needs_review

comment:24 Changed 2 years ago by fbissey

  • Reviewers set to François Bissey
  • Status changed from needs_review to positive_review

Let's move on with this.

comment:25 Changed 2 years ago by vbraun

  • Status changed from positive_review to needs_work
sage -t --long --warn-long 69.1 src/sage/tests/books/judson-abstract-algebra/fields-sage.py
**********************************************************************
File "src/sage/tests/books/judson-abstract-algebra/fields-sage.py", line 276, in sage.tests.books.judson-abstract-algebra.fields-sage
Failed example:
    r1.as_number_field_element()
Expected:
    (Number Field in a with defining polynomial y^4 + y^2 - 1, a, Ring morphism:
        From: Number Field in a with defining polynomial y^4 + y^2 - 1
        To:   Algebraic Real Field
        Defn: a |--> -0.7861513777574233?)
Got:
    (Number Field in a with defining polynomial y^4 - y^2 - 1,
     a^3 - a,
     Ring morphism:
       From: Number Field in a with defining polynomial y^4 - y^2 - 1
       To:   Algebraic Real Field
       Defn: a |--> -1.272019649514069?)
**********************************************************************
1 item had failures:
   1 of  69 in sage.tests.books.judson-abstract-algebra.fields-sage
    [68 tests, 1 failure, 1.92 s]
----------------------------------------------------------------------
sage -t --long --warn-long 69.1 src/sage/tests/books/judson-abstract-algebra/fields-sage.py  # 1 doctest failed
----------------------------------------------------------------------
Total time for all tests: 2.3 seconds

comment:26 Changed 2 years ago by jdemeyer

That is a new doctest which didn't exist when this ticket was created.

comment:27 Changed 2 years ago by git

  • Commit changed from ee09527a201962e2caa245e7e7ee0cb12b5f624a to 6896cc7f0e5d41822a6a4480d0f108434b02caee

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

1a13169PARI private header anal.h is no longer needed
8304843Upgrade PARI to git master version
6896cc7Fix doctests for PARI upgrade

comment:28 Changed 2 years ago by jdemeyer

  • Status changed from needs_work to positive_review

Obvious fix changing the doctest output.

comment:29 Changed 2 years ago by rbeezer

Thanks for the notice on the Judson book fix. I'll tidy it up when the book is updated, but for now the fix is fine.

comment:30 Changed 2 years ago by vbraun

  • Status changed from positive_review to needs_work

I'm getting random failures here

sage -t --long --warn-long 66.2 src/sage/schemes/elliptic_curves/sha_tate.py
**********************************************************************
File "src/sage/schemes/elliptic_curves/sha_tate.py", line 915, in sage.schemes.elliptic_curves.sha_tate.Sha.two_selmer_bound
Failed example:
    sh.two_selmer_bound()
Exception raised:
    Traceback (most recent call last):
      File "/mnt/disk/home/release/Sage/local/lib/python2.7/site-packages/sage/doctest/forker.py", line 515, in _run
        self.compile_and_execute(example, compiler, test.globs)
      File "/mnt/disk/home/release/Sage/local/lib/python2.7/site-packages/sage/doctest/forker.py", line 885, in compile_and_execute
        exec(compiled, globs)
      File "<doctest sage.schemes.elliptic_curves.sha_tate.Sha.two_selmer_bound[1]>", line 1, in <module>
        sh.two_selmer_bound()
      File "/mnt/disk/home/release/Sage/local/lib/python2.7/site-packages/sage/schemes/elliptic_curves/sha_tate.py", line 934, in two_selmer_bound
        r = E.rank()
      File "/mnt/disk/home/release/Sage/local/lib/python2.7/site-packages/sage/schemes/elliptic_curves/ell_rational_field.py", line 2121, in rank
        raise RuntimeError('Rank not provably correct.')
    RuntimeError: Rank not provably correct.
**********************************************************************
1 item had failures:
   1 of  10 in sage.schemes.elliptic_curves.sha_tate.Sha.two_selmer_bound
    [155 tests, 1 failure, 69.61 s]

comment:31 Changed 2 years ago by tscrim

Volker, are you sure this is from this ticket? See #23962 (which was first noticed on #23881).

comment:32 Changed 2 years ago by vbraun

Well the failure is random so its hard to be 100% sure, but I saw it twice with this ticket and never without.

comment:33 Changed 2 years ago by jdemeyer

In any case, it is plausible that it's because of this ticket since PARI/GP is used in that computation.

comment:34 Changed 2 years ago by jdemeyer

  • Status changed from needs_work to positive_review

I know how to reproduce #23962 and it is unrelated to PARI/GP.

comment:35 Changed 2 years ago by vbraun

  • Branch changed from u/jdemeyer/ticket/23544 to 6896cc7f0e5d41822a6a4480d0f108434b02caee
  • Resolution set to fixed
  • Status changed from positive_review to closed
Note: See TracTickets for help on using tickets.