We've released Sage 4.6.rc0.
Source archive:
http://sage.math.washington.edu/home/release/sage-4.6.rc0/sage-4.6.rc0.tar
Upgrade path:
http://sage.math.washington.edu/home/release/sage-4.6.rc0/sage-4.6.rc0/
Please build, test, and report! We'd love to hear about your
experiences with this release.
== Notes ==
* The 4.6 cycle is still in feature freeze.
* We've merged #9896 into this release so it gets more widely tested,
but it still needs a review.
* Jeroen Demeyer will manage the 4.6.1 cycle.
== Tickets ==
Closed:
#9926: Doctest error in sage/schemes/generic/toric_divisor.py on OS X
#10081: Another doctest failure in sage/graphs/graphs.py
Merged in sage-4.6.rc0:
#6235: John Palmieri: set MPLCONFIGDIR environment variable when Sage
starts up [Reviewed by Leif Leonhardy]
#8677: Volker Braun, William Stein: Race condition creating dirs during
Sage build [Reviewed by Volker Braun, Mitesh Patel]
#9210: Jason Grout: pkg-config's prefix statements in
SAGE_LOCAL/lib/pkgconfig not changed upon Sage move [Reviewed by David
Kirkby, Karl-Dieter Crisman]
#9422: Nathann Cohen: Slightly improving is_forest [Reviewed by Leonardo
Sampaio]
#9798: Volker Braun: Accelerate Polyhedron constructor and fix cddlib
output ordering [Reviewed by Dmitrii Pasechnik, Marshall Hampton]
#9896: Leif Leonhardy: Upgrading from 4.5.3 to 4.6.alpha* can fail (not
limited to MacOS X) [Reviewed by ???]
#9959: Jeroen Demeyer: Get PARI/GP to stop starting automatically
[Reviewed by John Cremona]
#10041: Joris Vankerschaver: Doctest failure in
sage/tensor/differential_forms.py [Reviewed by Niles Johnson]
#10042: Dima Pasechnik: Doctest failure in
sage/rings/polynomial/polynomial_element.pyx [Reviewed by Leif Leonhardy]
#10053: Joris Vankerschaver: Equality testing instead of comparisons in
differential forms code [Reviewed by Niles Johnson]
#10098: Volker Braun: Flaky doctest in sage/interfaces/expect.py
[Reviewed by Mitesh Patel]
#10104: Mike Hansen: #9920 breaks bdisted binaries [Reviewed by Mitesh
Patel]
Fedora 11, gcc 4.4.1
Fails with the issue already reported for Sage 4.6.alpha3
http://groups.google.com/group/sage-release/browse_thread/thread/a72cd417c5312470
Fedora 12, gcc 4.4.4
Appears to build with no serious problems
Fedora 13, gcc 4.4.4
ATLAS won't build, same issue reported on 'asksage'
http://ask.sagemath.org/question/107/building-atlas
(This is on a very low-powered "netbook" but it was able
to build sage up until I put Fedora 13 on it.)
If any of the logs of these builds are of interest, I'll
make them available.
-Mike
Does anyone else see this or know why this could happen?
Here are Sage Buildbot reports for bsd.math (OS X 10.6):
32-bit
http://build.sagemath.org/sage/builders/bsd%20full/builds/20
64-bit
http://build.sagemath.org/sage/builders/bsd%2064%20full/builds/4
Running
./sage -t "devel/sage/sage/interfaces/sage0.py"
about 10 times with each of these builds doesn't give any failures.
> Ave Sage user-developers!
>
> We've released Sage 4.6.rc0.
>
> Source archive:
>
> http://sage.math.washington.edu/home/release/sage-4.6.rc0/sage-4.6.rc0.tar
>
> Upgrade path:
>
> http://sage.math.washington.edu/home/release/sage-4.6.rc0/sage-4.6.rc0/
Built as upgrade, Mac OS X, 10.6.4, tested using 'ptestlong':
Dual Quad Xeon, upgraded from "a0 -> a1 -> a2 -> a3", no problems.
Five failures during testing (sage -t -long -force_lib):
devel/sage/doc/en/constructions/plotting.rst # 1 doctests failed
devel/sage/sage/calculus/desolvers.py # 1 doctests failed
devel/sage/sage/misc/trace.py # 1 doctests failed
devel/sage/sage/plot/plot3d/base.pyx # 4 doctests failed
devel/sage/sage/symbolic/assumptions.py # 2 doctests failed
ptestlong log at sage.math.washington.edu:~justin/logs/4.6.rc0-DQX.log
Core i7, upgraded from "a3", no problems.
One failure during testing (sage -t -long -force_lib):
devel/sage/sage/misc/trace.py # 1 doctests failed
ptestlong log a sage.math.washington.edu:~justin/logs/4.6.rc0-i7.log
Justin
--
Justin C. Walker, Curmudgeon at Large
Director
Institute for the Enhancement of the Director's income
-----------
Question 43:
What if the hokey pokey
really *is* what it’s all about?
--
http://sage.math.washington.edu/home/justin/logs/4.6.rc0-DQX.log
> Core i7, upgraded from "a3", no problems.
> One failure during testing (sage -t -long -force_lib):
> devel/sage/sage/misc/trace.py # 1 doctests failed
> ptestlong log a sage.math.washington.edu:~justin/logs/4.6.rc0-i7.log
http://sage.math.washington.edu/home/justin/logs/4.6.rc0-i7.log
The base.pyx (#10059) and trace.py (#10138) errors are known. The
plotting.rst error is
OSError: [Errno 17] File exists:
'/Users/justin/.sage//matplotlib-1.0.0/tex.cache'
and may stem from the recent matplotlib upgrade (#9221, #6235). I think
the others relate to Maxima.
http://trac.sagemath.org/sage_trac/ticket/6235
http://trac.sagemath.org/sage_trac/ticket/9221
http://trac.sagemath.org/sage_trac/ticket/10059
http://trac.sagemath.org/sage_trac/ticket/10138
This is likely to be a GCC bug.
http://trac.sagemath.org/sage_trac/ticket/10120
What happens if you build from scratch with
export SAGE_DEBUG=yes
make
? This skips the -O3 GCC optimization flag for at least PARI.
It should be sufficient to just continue the build with SAGE_DEBUG (or
CFLAGS appropriately) set, or - if the Sage scripts are already
installed - do
env SAGE_DEBUG=yes ./sage -i pari-2.4.3.svn-12577.p9
make # continue normal build
-Leif
Amen.
Note that upgrading (the rebuild process, not the downloads) will
probably now take longer than it used to, because now all packages that
depend on new ones will get rebuilt.
To reduce the number of (unfortunately unnecessarily) rebuilt packages,
one could do the following *before* upgrading on any system other than
SunOS/Solaris, Cygwin and HP-UX:
touch spkg/installed/iconv-1.13.1.p3
(This package is in fact only required/used on the above platforms, but
"installing" it triggers the rebuild of *many* other packages on *every*
platform. There's currently no other way to avoid this, sorry.)
I'm quite glad to report that upgrading from Sage 4.4.4 (!) worked out
of the box on Ubuntu 9.04 x86_64 (Core2, gcc 4.3.3; MAKE="make -j16" and
SAGE_PARALLEL_SPKG_BUILD=yes set before running the upgrade; directory
renamed before upgrading).
make ptestlong also passed without any errors.
Sage 4.6.rc0pre1 (which I assume is almost identical to the "final" rc0)
built without errors and ptestlong also passed on Ubuntu 10.04 x86_64
(Core2, gcc 4.4.3; built from scratch in parallel with 32 jobs).
-Leif
> What happens if you build from scratch with
>
> export SAGE_DEBUG=yes
> make
That appears to work.
-Mike
You could also (re)try
unset SAGE_DEBUG
env CFLAGS="-O2 -fno-strict-aliasing -fomit-frame-pointer" ./sage -f
pari-2.4.3.svn-12577.p9
(which just forces reinstallation of the PARI spkg).
-Leif
If that will yield any information that might improve the release
(or would be otherwise useful to anyone) I'll be happy to try it.
-Mike
It would be nice if you could, and report at #10120.
-Leif
P.S.: Building Sage with SAGE_DEBUG=yes isn't very good for "production"
use, since this (completely) disables optimization in a number of packages.
P.P.S.:
If the above works for you, you can afterwards trigger a rebuild *with*
optimization (of the packages that were built with SAGE_DEBUG set in the
first place) by doing
unset SAGE_DEBUG # if not already done
env SAGE_UPGRADING=yes make # rebuilds all packages that depend on PARI
(assuming you had built Sage in parallel, i.e. all packages that do
*not* depend on PARI were built in the first run of 'make', without
SAGE_DEBUG set).
-Leif
John
> --
> You received this message because you are subscribed to the Google Groups "sage-release" group.
> To post to this group, send email to sage-r...@googlegroups.com.
> To unsubscribe from this group, send email to sage-release...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/sage-release?hl=en.
>
>
I'm a little uneasy about getting involved with the bug tracking
system right now, since I don't really have time to learn how it
works. Perhaps down the road a bit.
I realize that makes my reports less useful. Sorry about that.
-Mike
Same again for 32-bit SUSE linux: no build problems, ptestlong all passed.
>
> John
Oh, sorry, I didn't notice you're not (yet) "on trac", Sage's bug
tracking system. (I did not even post a link to the ticket [1], which I
certainly should have done.)
> I realize that makes my reports less useful. Sorry about that.
No, any reports are welcome, on the Sage trac as well as the discussion
groups (sage-release, sage-devel, sage-support).
We usually copy (excerpts from) posts to the tickets, or at least link
to the respective threads. It's just usually more convenient to continue
a discussion at /some/ point on the ticket.
Also, "trac" supports more fancy posts than the Google groups do. ;-)
-Leif
Well, that was with the *old* PARI (Sage 4.5.3).
-Leif
I've also successfully upgraded from a copy of Sage 4.5.3 (i.e., a
"moved" installation) with the above (faking the new iconv spkg was
already installed) on Ubuntu 9.04 x86 (Pentium4 Prescott, gcc 4.3.3;
parallel build with 8 jobs).
ptestlong passed without any errors.
-Leif
Oh, I just noticed that one would have to run "make build" *after*
touching spkg/installed/iconv-1.13.1.p3 and *before* running "sage
-upgrade ..." to make this (fully) work... :/
(Running "make build" just touches all packages that depend on iconv,
with the message "... is already installed", i.e. no [re]compilation
takes place.)
Sorry.
-Leif
OK, thanks for the encouraging comments. I'm a bit ambivalent
about how far a "non-developer" should get into the development
process. But this isn't the place to get into that :-)
In any event, I do want to make any reports that will be useful.
So ... I went into the directory in which I'd previously done
the make with SAGE_DEBUG=yes. Then I did the two commands above.
It was clearly going to run out of memory again, at this point:
ict-aliasing -fomit-frame-pointer -I. -I../src/headers -fPIC -o
base3.o ../src/basemath/base3.c
It just hung there allocating memory. I killed it before I
ran completely out.
-Mike
Ok, thanks.
So compiling PARI with "-O2" (instead of "-O3") is still too much for
Fedora's broken gcc 4.4.1. (I didn't expect that, but the GCC developers
tend to put more and more sophisticated optimizations into the usual
default "O2" level.)
In case you have nothing else to do, you could retry the above with
"-O1" instead of "-O2" again... ;-)
-Leif
Justin, are the plotting.rst, desolvers.py, and assumptions.py errors
reproducible?
No problem. I still have the window open. That one DID work.
-Mike
> On 10/22/2010 02:00 AM, Mitesh Patel wrote:
>> On 10/22/2010 01:27 AM, Justin C. Walker wrote:
>>> Built as upgrade, Mac OS X, 10.6.4, tested using 'ptestlong':
>>>
>>> Dual Quad Xeon, upgraded from "a0 -> a1 -> a2 -> a3", no problems.
>>> Five failures during testing (sage -t -long -force_lib):
>>> devel/sage/doc/en/constructions/plotting.rst # 1 doctests failed
>>> devel/sage/sage/calculus/desolvers.py # 1 doctests failed
>>> devel/sage/sage/misc/trace.py # 1 doctests failed
>>> devel/sage/sage/plot/plot3d/base.pyx # 4 doctests failed
>>> devel/sage/sage/symbolic/assumptions.py # 2 doctests failed
>>> ptestlong log at sage.math.washington.edu:~justin/logs/4.6.rc0-DQX.log
[snip]
> Justin, are the plotting.rst, desolvers.py, and assumptions.py errors
> reproducible?
I am trying this on the system where the failures occurred. If I run them individually, all three pass. I am rerunning the full test exactly as I did before now, and I will let you know what transpires.
Justin
--
Justin C. Walker, Curmudgeon-At-Large
Institute for the Absorption of Federal Funds
--------
If you're not confused,
You're not paying attention
--------
That's suboptimal; the actual error should be checked, too (everywhere!):
try;
os.mkdir(foo)
except OSError, err:
if err.errno == 17:
pass
else:
raise
(#8677, patch version 4 does similar; I think other instances do not yet?)
2ct,
-Leif
Please forget that post! ;-)
It works as originally stated, by simply touching iconv-1.13.1.p3, the
'make build' isn't necessary (but doesn't hurt either).
Just lack of sleep I hope.
Sorry for the noise.
-Leif
>
> On Oct 22, 2010, at 15:04 , Mitesh Patel wrote:
>
>> On 10/22/2010 02:00 AM, Mitesh Patel wrote:
>>> On 10/22/2010 01:27 AM, Justin C. Walker wrote:
>>>> Built as upgrade, Mac OS X, 10.6.4, tested using 'ptestlong':
>>>>
>>>> Dual Quad Xeon, upgraded from "a0 -> a1 -> a2 -> a3", no problems.
>>>> Five failures during testing (sage -t -long -force_lib):
>>>> devel/sage/doc/en/constructions/plotting.rst # 1 doctests failed
>>>> devel/sage/sage/calculus/desolvers.py # 1 doctests failed
>>>> devel/sage/sage/misc/trace.py # 1 doctests failed
>>>> devel/sage/sage/plot/plot3d/base.pyx # 4 doctests failed
>>>> devel/sage/sage/symbolic/assumptions.py # 2 doctests failed
> [snip]
>> Justin, are the plotting.rst, desolvers.py, and assumptions.py errors
>> reproducible?
>
> I am trying this on the system where the failures occurred. If I run them individually, all three pass. I am rerunning the full test exactly as I did before now, and I will let you know what transpires.
Here is the result of rerunning the full 'ptestlong' suite:
devel/sage/sage/misc/trace.py # 1 doctests failed
devel/sage/sage/modules/free_module_element.pyx # 1 doctests failed
devel/sage/sage/plot/plot3d/base.pyx # 4 doctests failed
I feel like I'm in a maze of twisty little passages, all subtly different :-}
Let me know if you want the log for this run, or if there is anything else I can provide.
Justin
--
Justin C. Walker, Curmudgeon at Large
Director
Institute for the Enhancement of the Director's income
-----------
Question 43:
What if the hokey pokey
really *is* what it’s all about?
--
I doubt that these errno numbers are portable. I'm not sure whether we
have access to the symbolic constants like EEXIST from Python.
These are available in the errno module:
http://docs.python.org/library/errno.html#errno.EEXIST
Should we instead report the problem to the matplotlib developers?
Thanks, Justin. Could you give us a link to the new log or paste the
error from free_module_element.pyx?
I doubt that the number differs on the supported platforms, but it's of
course better to use symbolic constants.
The code was just meant to illustrate /what/ to check, not /how/ ;-)
(I sometimes remember the numbers better than the names).
> These are available in the errno module:
>
> http://docs.python.org/library/errno.html#errno.EEXIST
Yep. Cf. #8677.
> Should we instead report the problem to the matplotlib developers?
Not instead, but also I think.
-Leif
Yep. My comment referred to Jan Groenewald's post about a "mysterious
libpari segfault" Rob mentioned, which he reported for Sage 4.5.3 / PARI
2.3.5, but I see you could reproduce it with Sage 4.6.alpha3 / PARI
2.4.3.svn-12577, too.
-Leif
Here's the location of the new log file:
sage.math.washington.edu:~justin/logs/4.6.rc0-DQX-2.log
Justin
--
Justin C. Walker, Curmudgeon-At-Large
Institute for the Absorption of Federal Funds
--------
Men are from Earth.
Women are from Earth.
Deal with it.
--------
This is a Maxima error similar to one of the previous, unreproducible
errors:
sage -t -long -force_lib devel/sage/sage/modules/free_module_element.pyx
**********************************************************************
File
"/Users/Sage/sage-4.6.alpha0/devel/sage-main/sage/modules/free_module_element.pyx",
line 2102:
sage: integrate(r,t)
[...]
TypeError: Error executing code in Maxima
CODE:
sage102 : t$
Maxima ERROR:
sage102 : t$
stdin:44907:Incorrect syntax: Too many )'s
(%i719)
stdin:44960:Incorrect syntax: Illegal use of delimiter )
(%i720)
stdin:45027:Incorrect syntax: Premature termination of input at ;.
(%i721)
**********************************************************************
Please see
http://sage.math.washington.edu/home/justin/logs/4.6.rc0-DQX-2.log
for the full traceback.
We've updated alpha.sagenb.org to 4.6.rc0. Let us know if there are
problems.
Why should they be ignored? I suspect its probably the usual problem that
parallel testing is unreliable.
Dave
This is probably #10059. Ticket #9864 may be related.
http://trac.sagemath.org/sage_trac/ticket/10059
http://trac.sagemath.org/sage_trac/ticket/9864
> Amen.
>
> Note that upgrading (the rebuild process, not the downloads) will
> probably now take longer than it used to, because now all packages that
> depend on new ones will get rebuilt.
>
> To reduce the number of (unfortunately unnecessarily) rebuilt packages,
> one could do the following *before* upgrading on any system other than
> SunOS/Solaris, Cygwin and HP-UX:
>
> touch spkg/installed/iconv-1.13.1.p3
>
> (This package is in fact only required/used on the above platforms, but
> "installing" it triggers the rebuild of *many* other packages on *every*
> platform. There's currently no other way to avoid this, sorry.)
> -Leif
That sounds sensible, but it should be relatively easy to integrate
that into the Sage upgrade process, so it is not necessary to manually
do this.
Dave
If it was, I would have done it. ;-)
Of course one could do the "touch" (depending on the platform we build
on) inside the downloaded / newly installed $SAGE_ROOT/spkg/install, but
since such "unnecessary" packages (and their versions) change with every
release, I didn't want to mess up the script with temporary ad-hoc code.
(We're going to put $SAGE_ROOT/spkg/install under revision control, see
#9433.)
Unfortunately the current build process is not very suited to address
platform-specific packages, i.e. the decision to actually install a
package is made inside its spkg-install, so 'make' will assume dependent
packages need to be rebuilt even if the spkg-install does effectively
nothing but "exit 0" (or the changes in a package only affect /some/
architecture, cf. #9530).
The situation is worse with packages like Fortran (and perhaps ATLAS);
the former makes up more than 11% (33 MB) of the "source" tarball
because it contains various Apple Darwin *binaries*, which of course
aren't used on any other platform, while e.g. the ATLAS package is afaik
not built on MacOS X (it uses different BLAS libraries). The Cephes
package is smaller, but also only used on Cygwin.
Note that the necessity to upgrade a package might also depend on the
version currently installed (not just the platform), so implementing a
"smart" upgrade gets even more complicated, and we currently have no
formal package descriptions which would simplify such.
I think in the long run, the "real" Makefile (spkg/standard/deps) should
be *generated*, and we should have platform-specific spkgs in separate
directories (also to be part of a /different/ tarball or separately
downloaded, which could be automated as well, though we currently don't
want downloads / internet access during the "real" build process). Our
current "configure" e.g. checks for prerequisites like gfortran on Linux
(giving instructions to install it if it isn't), so why not handle other
packages that way, too?
5ct
-Leif