#11666: Upgrade MPFR to 3.0.1 + upstream patches or later (3.1.0)
---------------------------+------------------------------------------------
   Reporter:  leif         |          Owner:  leif                   
       Type:  enhancement  |         Status:  new                    
   Priority:  major        |      Milestone:  sage-4.7.2             
  Component:  packages     |       Keywords:  sd32 MPFR spkg wishlist
Work_issues:               |       Upstream:  N/A                    
   Reviewer:               |         Author:                         
     Merged:               |   Dependencies:                         
---------------------------+------------------------------------------------

Old description:

> Our current MPFR spkg is fairly old (based on '''MPFR 2.4.2'''), and
> upgrading it to the latest [stable] upstream release is now on the
> [http://wiki.sagemath.org/days32/wishlist "high-priority wishlist"].
>
> `spkg-install` also needs a major rewrite, e.g. to make use of (some of)
> GMP's / MPIR's build flags.
>
> ''"I think I'll provide a new spkg in the next days (next weekend,
> say)."'' [This unfortunately became a moving target; still on my high
> priority list though...]
>
> ----
>
> '''MPFR 3.0.1''' was released on April 4th 2011; there are already some
> [http://www.mpfr.org/mpfr-current/allpatches additional upstream patches]
> for that version; see [http://www.mpfr.org/mpfr-current/].
>
> ----
>
> Yet '''MPFR 3.1.0''' is on the way, planned to be released September 30th
> (unless problems should occur).
>
>  == Changes from versions 3.0.* to version 3.1.0: ==
>
>    - The MPFR source has been reorganized.
>    - Dropped `ansi2knr` support.
>    - TLS support is now detected automatically. If TLS is supported, MPFR
> is built as thread safe by default. To disable TLS explicitly, configure
> MPFR with `--disable-thread-safe`.
>    - New `--enable-gmp-internals` `configure` option to use GMP's
> undocumented functions (not from the public API). Note that library
> versioning is not guaranteed to work if this option is used.
>    - The `mpfr_urandom()` and `mpfr_urandomb()` functions now return
> identical values on processors with different word size (assuming the
> same random seed, and since the GMP random generator does not depend
> itself on the word size, cf. [http://gmplib.org/list-archives/gmp-
> devel/2010-September/001642.html]).
>    - The `mpfr_add_one_ulp()` and `mpfr_sub_one_ulp()` macros (which are
> obsolete and no more documented) will be removed in a future release.
>    - Speed improvement for the `mpfr_sqr()` and `mpfr_div()` functions
> using Mulders' algorithm. As a consequence, other functions using those
> routines are also faster.
>    - Much faster formatted output (`mpfr_printf()`, etc.) with `%Rg` and
> similar.
>    - The `--with-gmp-build` `configure` option can now be used when the
> GMP source directory and the GMP build directory are different (without
> having to copy header files manually as before).
>    - New functions `mpfr_buildopt_tune_case()`, `mpfr_frexp()`,
> `mpfr_grandom()` and `mpfr_z_sub()`.
>    - New division-by-zero exception (flag) and associated functions.
>    - The `mpfr.h` header can be included several times, while still
> supporting optional functions (see Section "Headers and Libraries" in the
> manual).
>    - Updated tuning parameters.
>    - Improved MPFR manual.
>    - MPFR tests: `libtool` no longer generates wrapper scripts with `make
> check` (so that running the tests under `valgrind` or `gdb` is easier).
>    - Bug fixes.[[BR]]
>    Note: The `mpfr_subnormalize()` implementation up to MPFR 3.0.0 did
> not change the flags. In particular, it did not follow the generic rule
> concerning the inexact flag (and no special behavior was specified). The
> case of the underflow flag was more a lack of specification.
>

> Tarballs of the current '''release candidate''' (rc2) are available in
> various formats (regarding the compression method); a bzipped one can be
> found
> [http://boxen.math.washington.edu/home/leif/Sage/spkgs/upstream/mpfr-3.1.0-rc2.tar.bz2
> here] (`sage.math`) or
> [http://www.mpfr.org/mpfr-3.1.0/mpfr-3.1.0-rc2.tar.bz2 here] (upstream).

New description:

 Our current MPFR spkg is fairly old (based on '''MPFR 2.4.2'''), and
 upgrading it to the latest [stable] upstream release is now on the
 [http://wiki.sagemath.org/days32/wishlist "high-priority wishlist"].

 `spkg-install` also needs a major rewrite, e.g. to make use of (some of)
 GMP's / MPIR's build flags.

 ''"I think I'll provide a new spkg in the next days (next weekend,
 say)."'' [This unfortunately became a moving target; still on my high
 priority list though...]

 ----

 '''MPFR 3.0.1''' was released on April 4th 2011; there are already some
 [http://www.mpfr.org/mpfr-current/allpatches additional upstream patches]
 for that version; see [http://www.mpfr.org/mpfr-current/].

 ----

 '''MPFR 3.1.0''' [http://www.mpfr.org/mpfr-3.1.0/ has been released
 October 3rd 2011].

  == Changes from versions 3.0.* to version 3.1.0: ==

    - The MPFR source has been reorganized.
    - Dropped `ansi2knr` support.
    - TLS support is now detected automatically. If TLS is supported, MPFR
 is built as thread safe by default. To disable TLS explicitly, configure
 MPFR with `--disable-thread-safe`.
    - New `--enable-gmp-internals` `configure` option to use GMP's
 undocumented functions (not from the public API). Note that library
 versioning is not guaranteed to work if this option is used.
    - The `mpfr_urandom()` and `mpfr_urandomb()` functions now return
 identical values on processors with different word size (assuming the same
 random seed, and since the GMP random generator does not depend itself on
 the word size, cf. [http://gmplib.org/list-archives/gmp-
 devel/2010-September/001642.html]).
    - The `mpfr_add_one_ulp()` and `mpfr_sub_one_ulp()` macros (which are
 obsolete and no more documented) will be removed in a future release.
    - Speed improvement for the `mpfr_sqr()` and `mpfr_div()` functions
 using Mulders' algorithm. As a consequence, other functions using those
 routines are also faster.
    - Much faster formatted output (`mpfr_printf()`, etc.) with `%Rg` and
 similar.
    - The `--with-gmp-build` `configure` option can now be used when the
 GMP source directory and the GMP build directory are different (without
 having to copy header files manually as before).
    - New functions `mpfr_buildopt_tune_case()`, `mpfr_frexp()`,
 `mpfr_grandom()` and `mpfr_z_sub()`.
    - New division-by-zero exception (flag) and associated functions.
    - The `mpfr.h` header can be included several times, while still
 supporting optional functions (see Section "Headers and Libraries" in the
 manual).
    - Updated tuning parameters.
    - Improved MPFR manual.
    - MPFR tests: `libtool` no longer generates wrapper scripts with `make
 check` (so that running the tests under `valgrind` or `gdb` is easier).
    - Bug fixes.[[BR]]
    Note: The `mpfr_subnormalize()` implementation up to MPFR 3.0.0 did not
 change the flags. In particular, it did not follow the generic rule
 concerning the inexact flag (and no special behavior was specified). The
 case of the underflow flag was more a lack of specification.


 Tarballs are available in various formats (regarding the compression
 method); a bzipped one can be found
 [http://www.mpfr.org/mpfr-3.1.0/mpfr-3.1.0.tar.bz2 here] (upstream).

--

Comment(by leif):

 The final MPFR 3.1.0 has been released today.

 See the description for links.

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/11666#comment:5>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to