Differences between revisions 48 and 53 (spanning 5 versions)
Revision 48 as of 2010-09-10 08:22:24
Size: 6036
Editor: leif
Comment: Title of old PARI update ticket corrected.
Revision 53 as of 2017-03-22 01:21:32
Size: 0
Editor: mrennekamp
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= New version of PARI/GP: 2.4.3 svn-12577 =

== Relevant tickets ==
 * [[http://trac.sagemath.org/sage_trac/ticket/9343|9343]]: PARI upgrade
 * [[http://trac.sagemath.org/sage_trac/ticket/9591|9591]]: genus2reduction
 * [[http://trac.sagemath.org/sage_trac/ticket/9592|9592]]: lcalc (see also [[http://trac.sagemath.org/sage_trac/ticket/9845|#9845]] for a later lcalc spkg based on this one)
 * [[http://trac.sagemath.org/sage_trac/ticket/9756|9756]]: Document SAGE_TUNE_pari in the Sage Installation Guide
 * [[http://trac.sagemath.org/sage_trac/ticket/9860|9860]]: Port changes in PARI 2.3.5.p4 ([[http://trac.sagemath.org/sage_trac/ticket/9722|#9722]]) to current 2.4.3

== Tickets which can be closed after #9343 is merged ==
The following lists tickets which seem to be fixed by the new version of PARI/GP:
 * [[http://trac.sagemath.org/sage_trac/ticket/4794|4794]]: [with spkg, needs work] Update pari to 2.4.3-svn
 * [[http://trac.sagemath.org/sage_trac/ticket/4835|4835]]: pari starts up without initializing enough primes?
 * [[http://trac.sagemath.org/sage_trac/ticket/7736|7736]]: factor returns a reducible factor
 * [[http://trac.sagemath.org/sage_trac/ticket/9175|9175]]: cygwin: pari's sea.gp program segfaults on Cygwin
 * [[http://trac.sagemath.org/sage_trac/ticket/9518|9518]]: Add an spkg-check file for Pari

== Files ==
If you want to upgrade an existing Sage, you have to install 3 spkgs and apply 2 patches.
Do this in order as in the list below. In particular, the genus2reduction spkg will not install without the new PARI spkg.
 * PARI spkg: http://sage.math.washington.edu/home/jdemeyer/spkg/pari-2.4.3.svn-12577.p5.spkg
 * genus2reduction spkg: http://sage.math.washington.edu/home/mpatel/trac/9591/genus2reduction-0.3.p8.spkg
 * lcalc spkg: http://sage.math.washington.edu/home/jdemeyer/spkg/lcalc-20100428-1.23.p2.spkg
   (or alternatively the lastest, http://sage.math.washington.edu/home/mhansen/lcalc-20100428-1.23.p4.spkg)
 * Patch for {{{data/extcode}}}: [[http://trac.sagemath.org/sage_trac/raw-attachment/ticket/9343/extcode_9343_combined4.patch|extcode_9343_combined4.patch]]
 * Patch for {{{devel/sage}}}: [[http://trac.sagemath.org/sage_trac/raw-attachment/ticket/9343/sagelib_9343_combined7.patch|sagelib_9343_combined7.patch]]

== For reviewers ==
 * Download [[http://sage.math.washington.edu/home/jdemeyer/dist/sage-4.6.prealpha4.tar|sage-4.6.prealpha4.tar]], which is a complete Sage distribution based on [[http://sage.math.washington.edu/home/release/sage-4.5.3.rc0/|sage-4.5.3.rc0]]. Just extract it, and type {{{make}}}. In this file, the following tickets have been merged:
   * [[http://trac.sagemath.org/sage_trac/ticket/9343|9343]] (positive_review): PARI upgrade
   * [[http://trac.sagemath.org/sage_trac/ticket/9860|9860]] (positive_review): Port changes in PARI 2.3.5.p4 (#9722) to current 2.4.3
   * [[http://trac.sagemath.org/sage_trac/ticket/9591|9591]] (positive_review): genus2reduction
   * [[http://trac.sagemath.org/sage_trac/ticket/9592|9592]] (needs_review): lcalc
   * [[http://trac.sagemath.org/sage_trac/ticket/9845|9845]] (needs_review): lcalc doesn't build on cygwin due to missing time.h include
   * [[http://trac.sagemath.org/sage_trac/ticket/9750|9750]] (positive_review): Document that PARI no longer assumes more than GRH.
   * [[http://trac.sagemath.org/sage_trac/ticket/9636|9636]] (positive_review): Catch output from PARI in Sage.
   * [[http://trac.sagemath.org/sage_trac/ticket/9400|9400]] (needs_review): Modify the {{{NumberField}}} constructor to pass in optional integer B such that all the internal PARI routines will replace the discriminant by its gcd with B, making some things massively faster.
     * This ticket is not strictly related to the PARI upgrade, but it changes a lot of code using PARI. It also fixes an issue with {{{nfinit()}}} and wraps some additional functions in {{{sage/libs/pari/gen.pyx}}}.
 * If it compiles, you can run the '''PARI/GP test suite''' and '''test PARI's self-tuning capability''' by doing
     {{{
     env SAGE_CHECK=yes SAGE_TUNE_pari=yes ./sage -f pari-2.4.3.svn-12577.p5.spkg
     }}}
     (To keep the spkg's build directory {{{$SAGE_ROOT/spkg/build/pari-2.4.3.svn-12577.p5/}}}, use {{{... ./sage -f -s ...}}} instead. This way you'll be able to inspect PARI's logs of eventual self-test failures.)
 * For reference, these are the patches for the spkgs:
   * PARI: [[http://trac.sagemath.org/sage_trac/attachment/ticket/9343/pari_spkg.patch|part 1]], [[http://trac.sagemath.org/sage_trac/attachment/ticket/9860/trac_9860-pari-2.4.3.svn-12577.p4-p5.spkg.patch|part 2]], [[http://trac.sagemath.org/sage_trac/attachment/ticket/9860/pari.p5.patch|part 3]]
   * [[http://trac.sagemath.org/sage_trac/attachment/ticket/9591/genus2reduction-spkg.2.patch|genus2reduction]] (Note that the old {{{genus2reduction.c}}} file was '''not''' under revision control, unfortunately.)
   * [[http://trac.sagemath.org/sage_trac/attachment/ticket/9592/lcalc-spkg.patch|lcalc]]

== Debugging PARI/GP build errors ==
If the new PARI spkg doesn't build, you should try building PARI/GP stand-alone (i.e. outside of Sage).
You should download [[http://sage.math.washington.edu/home/jdemeyer/spkg/pari-2.4.3.svn-12577.p5.spkg|pari-2.4.3.svn-12577.p5.spkg]]
and then type the following in a shell:
{{{
tar xjf pari-2.4.3.svn-12577.p5.spkg
cd pari-2.4.3.svn-12577.p5/src
./Configure --graphic=none
make gp
}}}
If this works, there is a bug in Sage's build process for PARI/GP.
If this gives errors, this indicates an upstream issue with PARI/GP.
In any case, any errors should be reported on the Sage trac.

== Known issues ==
 * Tuning has problems on some systems. Since tuning is disabled by default, this is not essential for this ticket.
 * [[http://trac.sagemath.org/sage_trac/ticket/9876|9876]]: Building PARI/GP with SAGE_CHECK=yes fails on rnfkummer on a PPC Mac OS X 10.4 and on a Solaris SPARC. This looks like an '''upstream problem''' with PARI/GP.