Sage: Ticket #9958: Upgrade python to 2.7.x
https://trac.sagemath.org/ticket/9958
<p>
From the release notes:
</p>
<p>
Python 2.7.2 was released on June 11th, 2011.
</p>
<p>
The Python 2.7 series is scheduled to be the last major version in the 2.x series before 2.x moves into an extended maintenance period. The 2.7 series contains many of the features that were first released in Python 3.1. Improvements in this release include:
</p>
<ul><li>An ordered dictionary type
</li><li>New unittest features including test skipping, new assert methods, and test discovery
</li><li>A much faster io module
</li><li>Automatic numbering of fields in the str.format() method
</li><li>Float repr improvements backported from 3.x
</li><li>Tile support for Tkinter
</li><li>A backport of the memoryview object from 3.x
</li><li>Set literals
</li><li>Set and dictionary comprehensions
</li><li>Dictionary views
</li><li>New syntax for nested with statements
</li><li>The sysconfig module
</li></ul><p>
Fixes <a class="closed ticket" href="https://trac.sagemath.org/ticket/1159" title="defect: [reported upstream] Bug in python range (closed: duplicate)">#1159</a>
</p>
<p>
<strong>New spkg</strong>: <a class="ext-link" href="http://boxen.math.washington.edu/home/jdemeyer/spkg/python-2.7.2.p1.spkg"><span class="icon"></span>http://boxen.math.washington.edu/home/jdemeyer/spkg/python-2.7.2.p1.spkg</a> (diffs for reviewing (without deleted files): <a class="attachment" href="https://trac.sagemath.org/attachment/ticket/9958/python-2.7.2.p0.diff" title="Attachment 'python-2.7.2.p0.diff' in Ticket #9958">python-2.7.2.p0.diff</a><a class="trac-rawlink" href="https://trac.sagemath.org/raw-attachment/ticket/9958/python-2.7.2.p0.diff" title="Download"></a> and <a class="attachment" href="https://trac.sagemath.org/attachment/ticket/9958/python-2.7.2.p0-p1.diff" title="Attachment 'python-2.7.2.p0-p1.diff' in Ticket #9958">python-2.7.2.p0-p1.diff</a><a class="trac-rawlink" href="https://trac.sagemath.org/raw-attachment/ticket/9958/python-2.7.2.p0-p1.diff" title="Download"></a>)
</p>
<p>
<strong>Apply</strong>:
</p>
<ul><li><a class="attachment" href="https://trac.sagemath.org/attachment/ticket/9958/9958_float_printing.patch" title="Attachment '9958_float_printing.patch' in Ticket #9958">9958_float_printing.patch</a><a class="trac-rawlink" href="https://trac.sagemath.org/raw-attachment/ticket/9958/9958_float_printing.patch" title="Download"></a>
</li><li><a class="attachment" href="https://trac.sagemath.org/attachment/ticket/9958/9958_exceptions.patch" title="Attachment '9958_exceptions.patch' in Ticket #9958">9958_exceptions.patch</a><a class="trac-rawlink" href="https://trac.sagemath.org/raw-attachment/ticket/9958/9958_exceptions.patch" title="Download"></a>
</li><li><a class="attachment" href="https://trac.sagemath.org/attachment/ticket/9958/9958_combinat.patch" title="Attachment '9958_combinat.patch' in Ticket #9958">9958_combinat.patch</a><a class="trac-rawlink" href="https://trac.sagemath.org/raw-attachment/ticket/9958/9958_combinat.patch" title="Download"></a>
</li><li><a class="attachment" href="https://trac.sagemath.org/attachment/ticket/9958/9958_misc.patch" title="Attachment '9958_misc.patch' in Ticket #9958">9958_misc.patch</a><a class="trac-rawlink" href="https://trac.sagemath.org/raw-attachment/ticket/9958/9958_misc.patch" title="Download"></a>
</li></ul>en-usSagehttps://trac.sagemath.org/chrome/site/logo_sagemath_trac.png
https://trac.sagemath.org/ticket/9958
Trac 1.1.6mhamptonMon, 20 Sep 2010 20:09:34 GMT
https://trac.sagemath.org/ticket/9958#comment:1
https://trac.sagemath.org/ticket/9958#comment:1
<p>
First attempt is at:
<a class="ext-link" href="http://sage.math.washington.edu/home/palmieri/SPKG/python-2.7.p0.spkg"><span class="icon"></span>http://sage.math.washington.edu/home/palmieri/SPKG/python-2.7.p0.spkg</a>
</p>
<p>
John (jhpalmieri) reports that this builds but Sage does not on sage.math, and "packages for
twisted, zodb, pygments, and numpy don't build correctly."
</p>
<p>
Apparently the fix for <a class="ext-link" href="http://bugs.python.org/issue7491"><span class="icon"></span>http://bugs.python.org/issue7491</a> causes some of these problems.
</p>
<p>
On the numpy/scipy lists Ralf Gommers says "Numpy 1.5 should work with Python 2.7 and 3.1 and not be too far off. In August hopefully".
</p>
<p>
So it looks like <a class="ext-link" href="http://trac.sagemath.org/sage_trac/ticket/9808"><span class="icon"></span>http://trac.sagemath.org/sage_trac/ticket/9808</a> should fix the numpy issues.
</p>
TicketjhpalmieriMon, 20 Sep 2010 20:17:18 GMTcomponent changed; cc set
https://trac.sagemath.org/ticket/9958#comment:2
https://trac.sagemath.org/ticket/9958#comment:2
<ul>
<li><strong>cc</strong>
<em>jhpalmieri</em> added
</li>
<li><strong>component</strong>
changed from <em>PLEASE CHANGE</em> to <em>packages</em>
</li>
</ul>
TicketleifFri, 24 Sep 2010 12:27:41 GMTcc changed
https://trac.sagemath.org/ticket/9958#comment:3
https://trac.sagemath.org/ticket/9958#comment:3
<ul>
<li><strong>cc</strong>
<em>leif</em> added
</li>
</ul>
TicketleifFri, 24 Sep 2010 12:28:07 GMTtype changed
https://trac.sagemath.org/ticket/9958#comment:4
https://trac.sagemath.org/ticket/9958#comment:4
<ul>
<li><strong>type</strong>
changed from <em>defect</em> to <em>enhancement</em>
</li>
</ul>
TicketfbisseyMon, 04 Oct 2010 00:03:27 GMT
https://trac.sagemath.org/ticket/9958#comment:5
https://trac.sagemath.org/ticket/9958#comment:5
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:1" title="Comment 1">mhampton</a>:
</p>
<blockquote class="citation">
<p>
First attempt is at:
<a class="ext-link" href="http://sage.math.washington.edu/home/palmieri/SPKG/python-2.7.p0.spkg"><span class="icon"></span>http://sage.math.washington.edu/home/palmieri/SPKG/python-2.7.p0.spkg</a>
</p>
<p>
John (jhpalmieri) reports that this builds but Sage does not on sage.math, and "packages for
twisted, zodb, pygments, and numpy don't build correctly."
</p>
<p>
Apparently the fix for <a class="ext-link" href="http://bugs.python.org/issue7491"><span class="icon"></span>http://bugs.python.org/issue7491</a> causes some of these problems.
</p>
</blockquote>
<p>
This fix has been included in python-2.6.5 onwards. We are using 2.6.5 which includes this fix and everything builds (haven't tried 2.7 yet). The only problem we have is with <a class="ext-link" href="http://github.com/cschwan/sage-on-gentoo/issues#issue/1"><span class="icon"></span>http://github.com/cschwan/sage-on-gentoo/issues#issue/1</a> so I think it is unfair to single out this issue as the source of problems.
</p>
TicketnovoseltSun, 27 Feb 2011 21:19:50 GMT
https://trac.sagemath.org/ticket/9958#comment:6
https://trac.sagemath.org/ticket/9958#comment:6
<p>
Is there still any interest in this upgrade? I wanted to use ordered dictionaries, which require 2.7. Unfortunately, active participation in this ticket is beyond my current capabilities...
</p>
TicketfbisseySun, 27 Feb 2011 21:27:59 GMT
https://trac.sagemath.org/ticket/9958#comment:7
https://trac.sagemath.org/ticket/9958#comment:7
<p>
It will happen at least in sage-on-gentoo as we are following the system python.
I have a couple of things in our tree to fix problems with python-2.6.5 and 2.6.6
we are looking into 2.7 now. I should post any patch to have it working here.
</p>
<p>
We are not talking about using the new capabilities just porting, I imagine my
counterpart in Mandriva does the same.
</p>
TicketfbisseyMon, 28 Feb 2011 09:30:05 GMTstatus changed
https://trac.sagemath.org/ticket/9958#comment:8
https://trac.sagemath.org/ticket/9958#comment:8
<ul>
<li><strong>status</strong>
changed from <em>new</em> to <em>needs_work</em>
</li>
</ul>
<p>
I just attached a patch that is needed for python 2.6.5 and later.
</p>
TicketjasonTue, 01 Mar 2011 02:49:09 GMTcc changed
https://trac.sagemath.org/ticket/9958#comment:9
https://trac.sagemath.org/ticket/9958#comment:9
<ul>
<li><strong>cc</strong>
<em>jason</em> added
</li>
</ul>
TicketfbisseyFri, 11 Mar 2011 03:44:37 GMT
https://trac.sagemath.org/ticket/9958#comment:10
https://trac.sagemath.org/ticket/9958#comment:10
<p>
Build sage-4.6.2 (and dependency) against python-2.7.1 on OS X. I get a lot of the following
</p>
<pre class="wiki">Expected nothing
Got:
Failure in _test_pickling:
Traceback (most recent call last):
File "/Users/frb15/Desktop/Gentoo/usr/lib/python2.7/site-packages/sage/misc/sage_unittest.py", line 275, in run
test_method(tester = tester)
File "/Users/frb15/Desktop/Gentoo/usr/lib/python2.7/site-packages/sage/misc/sage_unittest.py", line 498, in _test_pickling
tester.assertEqual(loads(dumps(self._instance)), self._instance)
File "/Users/frb15/Desktop/Gentoo/usr/lib/python2.7/unittest/case.py", line 493, in assertEqual
assertion_func = self._getAssertEqualityFunc(first, second)
File "/Users/frb15/Desktop/Gentoo/usr/lib/python2.7/unittest/case.py", line 476, in _getAssertEqualityFunc
asserter = self._type_equality_funcs.get(type(first))
AttributeError: 'InstanceTester' object has no attribute '_type_equality_funcs'
------------------------------------------------------------
</pre><p>
I patched python with the cpickle patch. Any ideas?
</p>
TicketfbisseyFri, 11 Mar 2011 03:48:39 GMT
https://trac.sagemath.org/ticket/9958#comment:11
https://trac.sagemath.org/ticket/9958#comment:11
<p>
A lot of "doctest... <a class="missing wiki">DeprecationWarning?</a>: ..." lines that were expected are just gone. Which fails the test.
</p>
TicketfbisseyFri, 11 Mar 2011 03:50:36 GMT
https://trac.sagemath.org/ticket/9958#comment:12
https://trac.sagemath.org/ticket/9958#comment:12
<p>
Lots of numerical and a little bit of formatting noise.
</p>
TicketfbisseySun, 27 Mar 2011 03:47:53 GMT
https://trac.sagemath.org/ticket/9958#comment:13
https://trac.sagemath.org/ticket/9958#comment:13
<p>
Ok so now I understand the differences between unittest and unittest2 which is shipped with python-2.7. This will require a massive number of non-backward compatible changes. I am starting to experiment with a few sage components but that promise to be long and boring.
</p>
TicketkcrismanMon, 28 Mar 2011 18:46:26 GMTcc changed
https://trac.sagemath.org/ticket/9958#comment:14
https://trac.sagemath.org/ticket/9958#comment:14
<ul>
<li><strong>cc</strong>
<em>kcrisman</em> added
</li>
</ul>
TicketfbisseyFri, 08 Apr 2011 02:41:11 GMT
https://trac.sagemath.org/ticket/9958#comment:15
https://trac.sagemath.org/ticket/9958#comment:15
<p>
I have attached a log of sage -testall. This is a sage-on-gentoo install a few tests are expected to fail <a class="ext-link" href="https://github.com/cschwan/sage-on-gentoo/wiki/Known-test-failures"><span class="icon"></span>https://github.com/cschwan/sage-on-gentoo/wiki/Known-test-failures</a> but it should give you an idea of the problems we face.
</p>
TicketfbisseyFri, 08 Apr 2011 09:37:49 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:16
https://trac.sagemath.org/ticket/9958#comment:16
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=16">diff</a>)
</li>
</ul>
TicketfbisseyThu, 14 Apr 2011 09:21:16 GMT
https://trac.sagemath.org/ticket/9958#comment:17
https://trac.sagemath.org/ticket/9958#comment:17
<p>
I attached a log of test failures with 4.7.alpha4 (+ <a class="closed ticket" href="https://trac.sagemath.org/ticket/7377" title="enhancement: Symbolic Ring to Maxima via EclObject (closed: fixed)">#7377</a>). It is mostly number of decimals and messages. I added PYTHONWARNINGS=default to sage-env so I collected extra messages. The most important one being the deprecations of "sets".
</p>
<p>
There are 3 tests killed reason currently unknown. And a few that may need special attention.
</p>
TicketfbisseyThu, 14 Apr 2011 23:27:53 GMT
https://trac.sagemath.org/ticket/9958#comment:18
https://trac.sagemath.org/ticket/9958#comment:18
<p>
A little bit more details, these are curious:
</p>
<pre class="wiki">sage -t -long -force_lib devel/sage-main/sage/rings/padics/padic_capped_relative_element.pyx
**********************************************************************
File "/usr/share/sage/devel/sage-main/sage/rings/padics/padic_capped_relative_element.pyx", line 2297:
sage: hash(R(-1))
Expected:
95367431640624
Got:
1977800240
</pre><pre class="wiki">sage -t -long -force_lib devel/sage-main/sage/combinat/words/suffix_trees.py
**********************************************************************
File "/usr/share/sage/devel/sage-main/sage/combinat/words/suffix_trees.py", line 1345:
sage: t.trie_type_dict() == dict([[(0, W("a")), 4], [(0, W("b")), 3], [(3, W("a")), 2], [(4, W("b")), 5], [(5, W("a")), 1]])
Expected:
True
Got:
False
**********************************************************************
sage -t -long -force_lib devel/sage-main/sage/combinat/words/suffix_trees.py
**********************************************************************
File "/usr/share/sage/devel/sage-main/sage/combinat/words/suffix_trees.py", line 1345:
sage: t.trie_type_dict() == dict([[(0, W("a")), 4], [(0, W("b")), 3], [(3, W("a")), 2], [(4, W("b")), 5], [(5, W("a")), 1]])
Expected:
True
Got:
False
**********************************************************************
</pre><p>
This one doesn't worry me as much but should be looked at
</p>
<pre class="wiki">sage -t -long -force_lib devel/sage-main/sage/combinat/words/nfactor_enumerable_word.py
**********************************************************************
File "/usr/share/sage/devel/sage-main/sage/combinat/words/nfactor_enumerable_word.py", line 22:
sage: it.next()
Expected:
word: 5645
Got:
word: 4564
**********************************************************************
File "/usr/share/sage/devel/sage-main/sage/combinat/words/nfactor_enumerable_word.py", line 24:
sage: it.next()
Expected:
word: 4564
Got:
word: 5645
**********************************************************************
</pre><pre class="wiki">sage -t -long -force_lib devel/sage-main/sage/structure/parent.pyx
**********************************************************************
File "/usr/share/sage/devel/sage-main/sage/structure/parent.pyx", line 634:
sage: CCls()._test_eq()
Expected:
Traceback (most recent call last):
...
AssertionError: <class '__main__.CCls'> == None
Got nothing
</pre><p>
The following were killed:
</p>
<pre class="wiki">sage -t -long -force_lib devel/sage-main/sage/rings/homset.py # Killed/crashed
sage -t -long -force_lib devel/sage-main/sage/schemes/generic/scheme.py # Killed/crashed
</pre><p>
In my original run
</p>
<pre class="wiki">sage -t -long -force_lib "devel/sage-main/sage/rings/morphism.pyx"
</pre><p>
also got killed but not in a subsequent run after I adopted a small change in sage-doctest to get rid of PYTHONWARNINGS=default in sage-env.
</p>
<p>
Example of killed test:
</p>
<pre class="wiki">sage -t -long -verbose -force_lib "devel/sage-main/sage/rings/homset.py"
...
Trying:
phi = S.hom([b,a])###line 141:_sage_ >>> phi = S.hom([b,a])
Expecting nothing
ok
Trying:
phi == loads(dumps(phi))###line 142:_sage_ >>> phi == loads(dumps(phi))
Expecting:
True
/usr/lib64/libcsage.so(print_backtrace+0x24)[0x7f83de940534]
/usr/lib64/libcsage.so(sigdie+0x1d)[0x7f83de9405cd]
/usr/lib64/libcsage.so(sage_signal_handler+0x131)[0x7f83de940741]
/lib64/libpthread.so.0(+0xfae0)[0x7f83e2385ae0]
/usr/lib64/libsingular.so.3(_Z9id_DeletePP10sip_sidealP9sip_sring+0x53)[0x7f83c5c48383]
/usr/lib64/python2.7/site-packages/sage/libs/singular/groebner_strategy.so(+0x388d)[0x7f83ad27488d]
/usr/lib64/libpython2.7.so.1.0(PyDict_Clear+0xfc)[0x7f83e261597c]
/usr/lib64/libpython2.7.so.1.0(+0x82a09)[0x7f83e2615a09]
/usr/lib64/libpython2.7.so.1.0(+0x112e7e)[0x7f83e26a5e7e]
/usr/lib64/libpython2.7.so.1.0(_PyObject_GC_Malloc+0x11c)[0x7f83e26a684c]
/usr/lib64/libpython2.7.so.1.0(_PyObject_GC_New+0xd)[0x7f83e26a685d]
/usr/lib64/libpython2.7.so.1.0(+0x7fe11)[0x7f83e2612e11]
/usr/lib64/libpython2.7.so.1.0(PyObject_Call+0x53)[0x7f83e25de453]
/usr/lib64/python2.7/site-packages/sage/rings/polynomial/polydict.so(+0x168c3)[0x7f83c8f378c3]
/usr/lib64/libpython2.7.so.1.0(+0xa0468)[0x7f83e2633468]
/usr/lib64/libpython2.7.so.1.0(PyObject_Call+0x53)[0x7f83e25de453]
/usr/lib64/python2.7/site-packages/sage/rings/polynomial/polydict.so(+0xa451)[0x7f83c8f2b451]
/usr/lib64/libpython2.7.so.1.0(PyObject_Call+0x53)[0x7f83e25de453]
/usr/lib64/libpython2.7.so.1.0(PyEval_CallObjectWithKeywords+0x47)[0x7f83e2670ca7]
/usr/lib64/python2.7/lib-dynload/cPickle.so(+0x5f06)[0x7f83dcb2df06]
/usr/lib64/python2.7/lib-dynload/cPickle.so(+0xaf47)[0x7f83dcb32f47]
/usr/lib64/libpython2.7.so.1.0(PyObject_Call+0x53)[0x7f83e25de453]
/usr/lib64/python2.7/site-packages/sage/structure/sage_object.so(+0x152fc)[0x7f83dc7012fc]
/usr/lib64/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x56bc)[0x7f83e267692c]
/usr/lib64/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x88d)[0x7f83e26781dd]
/usr/lib64/libpython2.7.so.1.0(PyEval_EvalCode+0x32)[0x7f83e26782f2]
/usr/lib64/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x5a78)[0x7f83e2676ce8]
/usr/lib64/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x88d)[0x7f83e26781dd]
/usr/lib64/libpython2.7.so.1.0(+0x71282)[0x7f83e2604282]
/usr/lib64/libpython2.7.so.1.0(PyObject_Call+0x53)[0x7f83e25de453]
/usr/lib64/libpython2.7.so.1.0(+0x5a24f)[0x7f83e25ed24f]
/usr/lib64/libpython2.7.so.1.0(PyObject_Call+0x53)[0x7f83e25de453]
/usr/lib64/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x491d)[0x7f83e2675b8d]
/usr/lib64/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x88d)[0x7f83e26781dd]
/usr/lib64/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x522e)[0x7f83e267649e]
/usr/lib64/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x88d)[0x7f83e26781dd]
/usr/lib64/libpython2.7.so.1.0(+0x71282)[0x7f83e2604282]
/usr/lib64/libpython2.7.so.1.0(PyObject_Call+0x53)[0x7f83e25de453]
/usr/lib64/libpython2.7.so.1.0(+0x5a24f)[0x7f83e25ed24f]
/usr/lib64/libpython2.7.so.1.0(PyObject_Call+0x53)[0x7f83e25de453]
/usr/lib64/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x491d)[0x7f83e2675b8d]
/usr/lib64/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x88d)[0x7f83e26781dd]
/usr/lib64/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x522e)[0x7f83e267649e]
/usr/lib64/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x88d)[0x7f83e26781dd]
/usr/lib64/libpython2.7.so.1.0(+0x7138b)[0x7f83e260438b]
/usr/lib64/libpython2.7.so.1.0(PyObject_Call+0x53)[0x7f83e25de453]
/usr/lib64/libpython2.7.so.1.0(+0x5a24f)[0x7f83e25ed24f]
/usr/lib64/libpython2.7.so.1.0(PyObject_Call+0x53)[0x7f83e25de453]
/usr/lib64/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x491d)[0x7f83e2675b8d]
/usr/lib64/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x88d)[0x7f83e26781dd]
/usr/lib64/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x522e)[0x7f83e267649e]
/usr/lib64/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x88d)[0x7f83e26781dd]
/usr/lib64/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x522e)[0x7f83e267649e]
/usr/lib64/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x88d)[0x7f83e26781dd]
/usr/lib64/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x522e)[0x7f83e267649e]
/usr/lib64/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x88d)[0x7f83e26781dd]
/usr/lib64/libpython2.7.so.1.0(PyEval_EvalCode+0x32)[0x7f83e26782f2]
/usr/lib64/libpython2.7.so.1.0(+0xff25c)[0x7f83e269225c]
/usr/lib64/libpython2.7.so.1.0(PyRun_FileExFlags+0x90)[0x7f83e2693090]
/usr/lib64/libpython2.7.so.1.0(PyRun_SimpleFileExFlags+0x1ff)[0x7f83e2693c6f]
/usr/lib64/libpython2.7.so.1.0(Py_Main+0xb53)[0x7f83e26a4fc3]
/lib64/libc.so.6(__libc_start_main+0xfd)[0x7f83e201cb6d]
/usr/bin/python2.7[0x4008a9]
------------------------------------------------------------------------
Unhandled SIGSEGV: A segmentation fault occurred in Sage.
This probably occurred because a *compiled* component of Sage has a bug
in it and is not properly wrapped with sig_on(), sig_off(). You might
want to run Sage under gdb with 'sage -gdb' to debug this.
Sage will now terminate.
------------------------------------------------------------------------
The doctested process was killed by signal 11
[2.5 s]
</pre>
TicketfbisseyFri, 15 Apr 2011 00:10:53 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-reenable-sage-deprecationwarnings.patch</em>
</li>
</ul>
<p>
small patch to sage-doctest in sage_script to reenable sage's deprecation warnings. Idea by my friend Steve Trogdon.
</p>
TicketfbisseyFri, 15 Apr 2011 00:16:32 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-fix_cmp.patch</em>
</li>
</ul>
<p>
this form of comparison is removed in python 2.6.5 and later, refreshed using --git.
</p>
TicketfbisseyFri, 15 Apr 2011 02:42:22 GMT
https://trac.sagemath.org/ticket/9958#comment:19
https://trac.sagemath.org/ticket/9958#comment:19
<p>
It looks like the crash problems originates somewhere in libsingular
</p>
<pre class="wiki">sage: f = Zmod(6).cover()
sage: f.kernel()
Principal ideal (6) of Integer Ring
sage: R.<x,y> = PolynomialRing(QQ, 2)
sage: S.<a,b> = R.quo(x^2 + y^2)
sage: phi = S.cover()
sage: phi == loads(dumps(phi))
True
sage: phi == R.quo(x^2 + y^3).cover()
Program received signal SIGSEGV, Segmentation fault.
id_Delete (h=0x50687d8, r=0x0) at ideals.cc:127
127 ideals.cc: No such file or directory.
in ideals.cc
(gdb) bt
#0 id_Delete (h=0x50687d8, r=0x0) at ideals.cc:127
#1 0x00007fffb9670b49 in __pyx_pf_4sage_4libs_8singular_17groebner_strategy_16GroebnerStrategy_1__dealloc__ (
o=<value optimized out>) at sage/libs/singular/groebner_strategy.cpp:2570
#2 __pyx_tp_dealloc_4sage_4libs_8singular_17groebner_strategy_GroebnerStrategy (o=<value optimized out>)
at sage/libs/singular/groebner_strategy.cpp:3190
#3 0x00007ffff7aa98c7 in PyDict_Clear (op=<value optimized out>) at Objects/dictobject.c:891
#4 0x00007ffff7aa990f in dict_tp_clear (op=<value optimized out>) at Objects/dictobject.c:2088
#5 0x00007ffff7b32f27 in delete_garbage (generation=0) at Modules/gcmodule.c:769
#6 collect (generation=0) at Modules/gcmodule.c:930
#7 0x00007ffff7b33616 in collect_generations (basicsize=<value optimized out>) at Modules/gcmodule.c:996
#8 _PyObject_GC_Malloc (basicsize=<value optimized out>) at Modules/gcmodule.c:1457
#9 0x00007ffff7ac4a96 in PyType_GenericAlloc (type=0x7ffff7d9ad40, nitems=0) at Objects/typeobject.c:744
#10 0x00007ffff7a8d256 in BaseException_new (type=<value optimized out>, args=<value optimized out>, kwds=<value optimized out>)
at Objects/exceptions.c:34
#11 0x00007ffff7ac57b5 in type_call (type=0x7ffff7d9ad40, args=0x4ae46d0, kwds=0x0) at Objects/typeobject.c:712
#12 0x00007ffff7a77539 in PyObject_Call (func=0x7ffff7d9ad40, arg=0x4ae46d0, kw=0x0) at Objects/abstract.c:2529
#13 0x00007ffff7b00b45 in PyEval_CallObjectWithKeywords (func=0x7ffff7d9ad40, arg=0x4ae46d0, kw=0x0) at Python/ceval.c:3881
#14 0x00007ffff7b10443 in PyErr_NormalizeException (exc=0x7fffffffa778, val=0x7fffffffa770, tb=0x7fffffffa768)
at Python/errors.c:190
#15 0x00007fffe433021c in __Pyx_GetException (type=0x7fffffffa7c0, value=0x7fffffffa7b8, tb=0x7fffffffa7c8)
at sage/structure/parent.c:20909
#16 0x00007fffe433e4d1 in __pyx_pf_4sage_9structure_6parent_6Parent_2element_class (__pyx_v_self=0x4aea500,
unused=<value optimized out>) at sage/structure/parent.c:4251
#17 0x00007ffff7aac1e2 in PyCFunction_Call (func=0x504ebd8, arg=0x7ffff7f81050, kw=<value optimized out>)
at Objects/methodobject.c:90
#18 0x00007ffff7a77539 in PyObject_Call (func=0x504ebd8, arg=0x7ffff7f81050, kw=0x0) at Objects/abstract.c:2529
#19 0x00007ffff7b00b45 in PyEval_CallObjectWithKeywords (func=0x504ebd8, arg=0x7ffff7f81050, kw=0x0) at Python/ceval.c:3881
#20 0x00007ffff7a8b51f in methoddescr_call (descr=<value optimized out>, args=0x7ffff7f81050, kwds=0x0)
at Objects/descrobject.c:246
#21 0x00007ffff7a77539 in PyObject_Call (func=0x138e950, arg=0x7ffff7e9c050, kw=0x0) at Objects/abstract.c:2529
#22 0x00007ffff7b05efe in do_call (f=<value optimized out>, throwflag=<value optimized out>) at Python/ceval.c:4230
#23 call_function (f=<value optimized out>, throwflag=<value optimized out>) at Python/ceval.c:4035
#24 PyEval_EvalFrameEx (f=<value optimized out>, throwflag=<value optimized out>) at Python/ceval.c:2665
#25 0x00007ffff7b07b65 in PyEval_EvalCodeEx (co=0x1159e30, globals=<value optimized out>, locals=<value optimized out>,
args=<value optimized out>, argcount=3, kws=0x0, kwcount=0, defs=0x0, defcount=0, closure=0x0) at Python/ceval.c:3252
#26 0x00007ffff7a99a97 in function_call (func=0x115d5f0, arg=0xfadeb0, kw=0x0) at Objects/funcobject.c:526
#27 0x00007ffff7a77539 in PyObject_Call (func=0x115d5f0, arg=0xfadeb0, kw=0x0) at Objects/abstract.c:2529
#28 0x00007ffff7a77cca in PyObject_CallFunctionObjArgs (callable=0x115d5f0) at Objects/abstract.c:2760
#29 0x00007ffff7ac8a8e in slot_tp_descr_get (self=0x13179d0, obj=0x4aea500, type=0x19e91f0) at Objects/typeobject.c:5621
#30 0x00007ffff7aae433 in _PyObject_GenericGetAttrWithDict (obj=0x4aea500, name=0x13c5a78, dict=0x5068fb0) at Objects/object.c:1432
#31 0x00007ffff7aae4d1 in PyObject_GenericGetAttr (obj=<value optimized out>, name=<value optimized out>) at Objects/object.c:1454
#32 0x00007fffe434ed62 in __pyx_tp_getattro_4sage_9structure_6parent_Parent (o=0x4aea500, n=0x13c5a78)
at sage/structure/parent.c:18702
#33 0x00007ffff7aad8f4 in PyObject_GetAttr (v=0x4aea500, name=<value optimized out>) at Objects/object.c:1189
#34 0x00007ffff7afdbab in builtin_hasattr (self=<value optimized out>, args=<value optimized out>) at Python/bltinmodule.c:885
#35 0x00007ffff7aac1a0 in PyCFunction_Call (func=0x7ffff7fae3b0, arg=0x503d680, kw=<value optimized out>)
at Objects/methodobject.c:81
#36 0x00007ffff7b05ba3 in call_function (f=<value optimized out>, throwflag=<value optimized out>) at Python/ceval.c:4012
#37 PyEval_EvalFrameEx (f=<value optimized out>, throwflag=<value optimized out>) at Python/ceval.c:2665
#38 0x00007ffff7b05cfa in fast_function (f=<value optimized out>, throwflag=<value optimized out>) at Python/ceval.c:4098
#39 call_function (f=<value optimized out>, throwflag=<value optimized out>) at Python/ceval.c:4033
#40 PyEval_EvalFrameEx (f=<value optimized out>, throwflag=<value optimized out>) at Python/ceval.c:2665
#41 0x00007ffff7b07b65 in PyEval_EvalCodeEx (co=0x1159e30, globals=<value optimized out>, locals=<value optimized out>,
args=<value optimized out>, argcount=3, kws=0x0, kwcount=0, defs=0x0, defcount=0, closure=0x0) at Python/ceval.c:3252
#42 0x00007ffff7a99a97 in function_call (func=0x115d5f0, arg=0xfadbe0, kw=0x0) at Objects/funcobject.c:526
</pre>
TicketfbisseyWed, 20 Apr 2011 23:30:42 GMT
https://trac.sagemath.org/ticket/9958#comment:20
https://trac.sagemath.org/ticket/9958#comment:20
<p>
Same two doctests killed after upgrade to alpha5.
</p>
TicketfbisseyThu, 21 Apr 2011 00:42:11 GMT
https://trac.sagemath.org/ticket/9958#comment:21
https://trac.sagemath.org/ticket/9958#comment:21
<p>
Over-eager garbage collection in python-2.7.1! Preceding the sequence by
</p>
<pre class="wiki">sage: import gc
sage: gc.disable()
</pre><p>
Makes everything go smoothly.
</p>
TicketfbisseyFri, 22 Apr 2011 03:52:42 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:22
https://trac.sagemath.org/ticket/9958#comment:22
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=22">diff</a>)
</li>
</ul>
TicketnthieryFri, 22 Apr 2011 13:43:24 GMT
https://trac.sagemath.org/ticket/9958#comment:23
https://trac.sagemath.org/ticket/9958#comment:23
<p>
trac_9958-fix_cmp.patch is perfectly reasonable, since this is the idiom used everywhere else in similar situations. I don't have enough background to judge on the warning patch.
</p>
TicketfbisseySun, 24 Apr 2011 02:16:05 GMT
https://trac.sagemath.org/ticket/9958#comment:24
https://trac.sagemath.org/ticket/9958#comment:24
<p>
Put an updated list of tests failing with 4.7.alpha5 and the latest patches from Nicolas M. Thiery.
I think the next area do need some work is the problem of garbage collection in polynomial rings that leads to "random" failures in libsingular. See:
<a class="ext-link" href="http://groups.google.com/group/sage-devel/browse_thread/thread/8c165c887d6b9e54"><span class="icon"></span>http://groups.google.com/group/sage-devel/browse_thread/thread/8c165c887d6b9e54</a>
</p>
TicketfbisseySun, 24 Apr 2011 03:48:43 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:25
https://trac.sagemath.org/ticket/9958#comment:25
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=25">diff</a>)
</li>
</ul>
<p>
Split the deprecation issue in its own ticket in <a class="closed ticket" href="https://trac.sagemath.org/ticket/11244" title="defect: In python-2.7 deprecation warnings are not shown to the user by default (closed: fixed)">#11244</a> - this is a different patch.
</p>
TicketfbisseyWed, 27 Apr 2011 01:59:47 GMT
https://trac.sagemath.org/ticket/9958#comment:26
https://trac.sagemath.org/ticket/9958#comment:26
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:23" title="Comment 23">nthiery</a>:
</p>
<blockquote class="citation">
<p>
trac_9958-fix_cmp.patch is perfectly reasonable, since this is the idiom used everywhere else in similar situations. I don't have enough background to judge on the warning patch.
</p>
</blockquote>
<p>
I will put the cmp patch in its own ticket would you review it?
</p>
TicketfbisseyThu, 28 Apr 2011 03:19:06 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-fixing_numericalnoise-part1.patch</em>
</li>
</ul>
<p>
fix numerical noise part 1
</p>
TicketfbisseyThu, 28 Apr 2011 03:19:37 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-fixing_numericalnoise-part3.patch</em>
</li>
</ul>
<p>
fix numerical noise part 3
</p>
TicketfbisseyThu, 28 Apr 2011 03:19:58 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-fixing_numericalnoise-part4.patch</em>
</li>
</ul>
<p>
fix numerical noise part 4: the forgotten bits
</p>
TicketfbisseyThu, 28 Apr 2011 03:20:37 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-fixing_colorspy.patch</em>
</li>
</ul>
<p>
49 failures in colors.py, numerical noise except one.
</p>
TicketfbisseyThu, 28 Apr 2011 03:21:13 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-fix-list_index.patch</em>
</li>
</ul>
<p>
fix the element reported by list index
</p>
TicketfbisseyThu, 28 Apr 2011 03:22:54 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-mixedfix.patch</em>
</li>
</ul>
<p>
odds and ends missed in the other patches
</p>
TicketfbisseyThu, 28 Apr 2011 03:33:17 GMT
https://trac.sagemath.org/ticket/9958#comment:27
https://trac.sagemath.org/ticket/9958#comment:27
<p>
I have attached some patches to fix all the noise for numerics and formatting changes. What's left should be looked at before patching.
</p>
<p>
There are several failures because hashes have changed but I cannot say it is allright to just change the doctest:
</p>
<pre class="wiki">sage -t -long -force_lib "devel/sage-main/sage/rings/padics/padic_capped_relative_element.pyx"
**********************************************************************
File "/usr/share/sage/devel/sage-main/sage/rings/padics/padic_capped_relative_element.pyx", line 2339:
sage: hash(R(-1))
Expected:
95367431640624
Got:
1977800240
**********************************************************************
</pre><pre class="wiki">sage -t -long -force_lib "devel/sage-main/sage/rings/integer.pyx"
**********************************************************************
File "/usr/share/sage/devel/sage-main/sage/rings/integer.pyx", line 2995:
sage: n = -920390823904823094890238490238484; n.__hash__()
Expected:
6874330978542788722
Got:
-2623069716
**********************************************************************
File "/usr/share/sage/devel/sage-main/sage/rings/integer.pyx", line 3010:
sage: hash(n)
Expected:
-9223372036854767616
Got:
8192
**********************************************************************
File "/usr/share/sage/devel/sage-main/sage/rings/integer.pyx", line 3013:
sage: hash(n) == hash(int(n))
Expected:
True
Got:
False
**********************************************************************
</pre><p>
That hash(n) == hash(int(n)) is now false should be looked into carefully.
</p>
<pre class="wiki">sage -t -long -force_lib "devel/sage-main/sage/combinat/words/nfactor_enumerable_word.py"
**********************************************************************
File "/usr/share/sage/devel/sage-main/sage/combinat/words/nfactor_enumerable_word.py", line 20:
sage: it.next()
Expected:
word: 6456
Got:
word: 5645
**********************************************************************
File "/usr/share/sage/devel/sage-main/sage/combinat/words/nfactor_enumerable_word.py", line 22:
sage: it.next()
Expected:
word: 5645
Got:
word: 6456
**********************************************************************
</pre><p>
I think that one is OK, just a change of order but a second opinion would be nice.
</p>
<p>
Finally there are still three tests killed in libsingular's id_delete because a ring has been garbage collected even so there are some precautions in place for it:
<a class="ext-link" href="http://groups.google.com/group/sage-devel/browse_thread/thread/8c165c887d6b9e54"><span class="icon"></span>http://groups.google.com/group/sage-devel/browse_thread/thread/8c165c887d6b9e54</a>
</p>
<p>
Next we need an updated python spkg so that more people can play and even try the patchbot on it.
</p>
TicketfbisseyThu, 28 Apr 2011 03:48:54 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:28
https://trac.sagemath.org/ticket/9958#comment:28
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=28">diff</a>)
</li>
</ul>
<p>
The replacement of type.<span class="underline">cmp</span> by cmp in strata.py is now in its own ticket <a class="closed ticket" href="https://trac.sagemath.org/ticket/11264" title="defect: sage/combinat/iet/strata.py is the last place in sage to use the ... (closed: fixed)">#11264</a> as it can be applied independently of a python upgrade.
</p>
TicketfbisseyThu, 28 Apr 2011 09:31:20 GMT
https://trac.sagemath.org/ticket/9958#comment:29
https://trac.sagemath.org/ticket/9958#comment:29
<p>
I forgot because I build on sage-on-gentoo but I'll post some patch to build against python-2.7 a little bit later.
</p>
TicketfbisseyMon, 02 May 2011 23:37:47 GMT
https://trac.sagemath.org/ticket/9958#comment:30
https://trac.sagemath.org/ticket/9958#comment:30
<p>
Unless someone steps in I'll make a new python-2.7.1 spkg by the end of the week. I'll have to figure out if the latest change going in for sage-4.7 will be needed for that one.
</p>
TicketfbisseyThu, 05 May 2011 22:32:05 GMT
https://trac.sagemath.org/ticket/9958#comment:31
https://trac.sagemath.org/ticket/9958#comment:31
<p>
I won't be able to do that this week.
</p>
TicketfbisseyMon, 16 May 2011 21:47:11 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:32
https://trac.sagemath.org/ticket/9958#comment:32
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=32">diff</a>)
</li>
</ul>
<p>
Our lead sage-on-gentoo debugger Martin tracked down the segfault problem to cython, this is now <a class="closed ticket" href="https://trac.sagemath.org/ticket/11339" title="defect: Refcounting for Singular rings (closed: fixed)">#11339</a>
</p>
TicketkcrismanWed, 18 May 2011 16:01:39 GMT
https://trac.sagemath.org/ticket/9958#comment:33
https://trac.sagemath.org/ticket/9958#comment:33
<p>
I'd like to try this but don't have time to figure out exactly what patches are needed in what order - can someone update the description with this? Also, is it the same spkg that Marshall originally posted that one should try?
</p>
TicketkcrismanWed, 18 May 2011 16:24:58 GMT
https://trac.sagemath.org/ticket/9958#comment:34
https://trac.sagemath.org/ticket/9958#comment:34
<p>
Also, is it possible to test this by ./sage -f something, or would one have to take a fresh tarball and replace the Python spkg?
</p>
TicketfbisseyWed, 18 May 2011 21:41:17 GMT
https://trac.sagemath.org/ticket/9958#comment:35
https://trac.sagemath.org/ticket/9958#comment:35
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:34" title="Comment 34">kcrisman</a>:
</p>
<blockquote class="citation">
<p>
Also, is it possible to test this by ./sage -f something, or would one have to take a fresh tarball and replace the Python spkg?
</p>
</blockquote>
<p>
Hi Karl,
</p>
<p>
I am mainly developing from sage-on-gentoo at the moment. I need to make a current python-2.7.1 spkg to match. I will update the description and give the patch order when there is a spkg (feel free to make one). The patch have initially been made against 4.7.1.alpha0 and the current version works against 4.7.1.alpha1. You would get failures against a 4.7 because <a class="closed ticket" href="https://trac.sagemath.org/ticket/7377" title="enhancement: Symbolic Ring to Maxima via EclObject (closed: fixed)">#7377</a> finally landed.
</p>
<p>
I think the best course of action will be to start from scratch, it may even be useful to host an alternative tarball somewhere because the change in python version will be extremely messy. I don't know if we can do it without breaking sage -upgrade or being overly complicated.
</p>
<p>
In the meantime you could have a look at <a class="closed ticket" href="https://trac.sagemath.org/ticket/11244" title="defect: In python-2.7 deprecation warnings are not shown to the user by default (closed: fixed)">#11244</a> (which I need to update for 4.7.1.alpha1 because of <a class="closed ticket" href="https://trac.sagemath.org/ticket/10334" title="enhancement: miscellaneous cleanup in perm_gps preparing for domains (closed: fixed)">#10334</a>).
</p>
<p>
Francois
</p>
TicketfbisseyWed, 18 May 2011 23:29:46 GMT
https://trac.sagemath.org/ticket/9958#comment:36
https://trac.sagemath.org/ticket/9958#comment:36
<p>
OK if you want to look at <a class="closed ticket" href="https://trac.sagemath.org/ticket/11244" title="defect: In python-2.7 deprecation warnings are not shown to the user by default (closed: fixed)">#11244</a> it can be tested against either the latest 4.7 or 4.7.1.alpha1 now.
</p>
TicketkcrismanThu, 19 May 2011 00:33:11 GMT
https://trac.sagemath.org/ticket/9958#comment:37
https://trac.sagemath.org/ticket/9958#comment:37
<p>
I see. Well, I just want to make sure that it all works fine on older Macs, of course. I definitely don't have time to make an spkg now, though I do have time to do ./sage -f and slap a few patches on it :) Just let me know when you get around to it; I don't think there is a huge rush.
</p>
<p>
I should probably test 4.7.1.alpha1 on my box. I'm amazed at Jeroen's stamina on this, especially with several different versions simultaneously existing.
</p>
TicketfbisseyThu, 19 May 2011 00:49:57 GMT
https://trac.sagemath.org/ticket/9958#comment:38
https://trac.sagemath.org/ticket/9958#comment:38
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:37" title="Comment 37">kcrisman</a>:
</p>
<blockquote class="citation">
<p>
I see. Well, I just want to make sure that it all works fine on older Macs, of course. I definitely don't have time to make an spkg now, though I do have time to do ./sage -f and slap a few patches on it :) Just let me know when you get around to it; I don't think there is a huge rush.
</p>
<p>
I should probably test 4.7.1.alpha1 on my box. I'm amazed at Jeroen's stamina on this, especially with several different versions simultaneously existing.
</p>
</blockquote>
<p>
That's why I asked about <a class="closed ticket" href="https://trac.sagemath.org/ticket/11244" title="defect: In python-2.7 deprecation warnings are not shown to the user by default (closed: fixed)">#11244</a> it is an issue I split from this ticket because it should apply on a sage running python-2.6 without side effects. So it could be in place when we come around to the upgrade. Any ideas on <a class="closed ticket" href="https://trac.sagemath.org/ticket/11339" title="defect: Refcounting for Singular rings (closed: fixed)">#11339</a> which was recently split from this ticket is also welcome.
</p>
TicketfbisseyFri, 20 May 2011 20:49:09 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:39
https://trac.sagemath.org/ticket/9958#comment:39
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=39">diff</a>)
</li>
</ul>
<p>
My friend Steven Trogdon made some quick and dirty spkgs. His early tests indicate that setuptools needs to be updated. This is now <a class="closed ticket" href="https://trac.sagemath.org/ticket/11363" title="task: Update setuptools to a newer version (closed: fixed)">#11363</a> it also revealed that I missed something in misc/cython.py watch out for an updated patch sometimes this weekend.
There were also a few things that needed to be done in two other patches which I refreshed yesterday.
I have a python-2.7.1 spkg ready to be uploaded probably sometimes today.
If you want fun before that you can always use Steve's spkg (they are not in a reviewable state) at:
<a class="ext-link" href="http://www.d.umn.edu/~strogdon/sage/"><span class="icon"></span>http://www.d.umn.edu/~strogdon/sage/</a>
</p>
TicketfbisseyFri, 20 May 2011 21:09:43 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:40
https://trac.sagemath.org/ticket/9958#comment:40
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=40">diff</a>)
</li>
</ul>
<p>
Didn't take long. I have been naughty and committed two changes to patches that needed touching after my first commit of python-2.7.1 so the log will show 3 entries for just the one SPKG.txt entry. They were minor changes.
I dropped a number of patches because they were applied upstream. However in the case of two patches I dropped them because the upstream has changed in a way they don't apply anymore but I don't know if patching is still necessary for the underlying issues. If so new patches will need to be developed. The issues are
</p>
<ul><li>readline on itanium
</li><li>multiprocessing on solaris
</li></ul><p>
As promised I will give a patch order. The next to last one needs updating as stated earlier and the last one is really optional. The patches do not have to be taken n that order as they don't overlap.
</p>
TicketfbisseyFri, 20 May 2011 21:11:26 GMT
https://trac.sagemath.org/ticket/9958#comment:41
https://trac.sagemath.org/ticket/9958#comment:41
<p>
I forgot apply the patches on 4.7.1.alpha1, there may be rejection on 4.7.rcX.
</p>
TicketfbisseySat, 21 May 2011 12:23:43 GMT
https://trac.sagemath.org/ticket/9958#comment:42
https://trac.sagemath.org/ticket/9958#comment:42
<p>
misc/cython.py patch updated for people who want to test it.
</p>
TicketfbisseySat, 21 May 2011 19:45:40 GMT
https://trac.sagemath.org/ticket/9958#comment:43
https://trac.sagemath.org/ticket/9958#comment:43
<p>
corrected a syntax error in the last patch.
</p>
TicketfbisseySun, 22 May 2011 12:32:34 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-build_module_listpy.patch</em>
</li>
</ul>
<p>
Not strictly necessary but this file needed a scrub. (refreshed for syntax errors)
</p>
TicketfbisseySun, 22 May 2011 12:33:24 GMT
https://trac.sagemath.org/ticket/9958#comment:44
https://trac.sagemath.org/ticket/9958#comment:44
<p>
Had to redo trac_9958-build_module_listpy.patch again as I messed up the syntax of one bit.
</p>
TicketfbisseySun, 22 May 2011 18:44:32 GMT
https://trac.sagemath.org/ticket/9958#comment:45
https://trac.sagemath.org/ticket/9958#comment:45
<p>
My friend Steve Trogdon made a prepatched sage-4.7.1.alpha1 spkg (4.7.1.alpha1.p0 we named it) available to make testing easier, find it with hos own test.log here
<a class="ext-link" href="http://www.d.umn.edu/~strogdon/sage/"><span class="icon"></span>http://www.d.umn.edu/~strogdon/sage/</a>
It has all the necessary patches from <a class="closed ticket" href="https://trac.sagemath.org/ticket/11244" title="defect: In python-2.7 deprecation warnings are not shown to the user by default (closed: fixed)">#11244</a> and this this ticket.
We are a bit puzzled by the cause of failure in sage/misc/cython.py, white spaces?
</p>
TicketkcrismanMon, 23 May 2011 12:54:59 GMT
https://trac.sagemath.org/ticket/9958#comment:46
https://trac.sagemath.org/ticket/9958#comment:46
<p>
I am getting the twisted install fail that jhpalmieri refers to. So my guess is that the Gentoo system has some updated things along those lines that vanilla 4.7.1.alpha1 does not. Is that possible?
</p>
TicketfbisseyMon, 23 May 2011 13:59:36 GMT
https://trac.sagemath.org/ticket/9958#comment:47
https://trac.sagemath.org/ticket/9958#comment:47
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:46" title="Comment 46">kcrisman</a>:
</p>
<blockquote class="citation">
<p>
I am getting the twisted install fail that jhpalmieri refers to. So my guess is that the Gentoo system has some updated things along those lines that vanilla 4.7.1.alpha1 does not. Is that possible?
</p>
</blockquote>
<p>
Well sage-on-gentoo uses a newer twisted. On the other I and Steve have build twisted in vanilla sage with python-2.7.1. Did you get the new setuptools spkg from <a class="closed ticket" href="https://trac.sagemath.org/ticket/11363" title="task: Update setuptools to a newer version (closed: fixed)">#11363</a>? It is necessary to build twisted with python-2.7.1.
</p>
TicketkcrismanMon, 23 May 2011 15:01:49 GMT
https://trac.sagemath.org/ticket/9958#comment:48
https://trac.sagemath.org/ticket/9958#comment:48
<p>
No, I didn't realize there was an spkg involved with that. I installed that first, and it seems to be working now.
</p>
TicketfbisseyMon, 23 May 2011 19:21:12 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:49
https://trac.sagemath.org/ticket/9958#comment:49
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=49">diff</a>)
</li>
</ul>
TicketkcrismanMon, 23 May 2011 19:51:48 GMT
https://trac.sagemath.org/ticket/9958#comment:50
https://trac.sagemath.org/ticket/9958#comment:50
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:45" title="Comment 45">fbissey</a>:
</p>
<blockquote class="citation">
<p>
My friend Steve Trogdon made a prepatched sage-4.7.1.alpha1 spkg (4.7.1.alpha1.p0 we named it) available to make testing easier, find it with hos own test.log here
<a class="ext-link" href="http://www.d.umn.edu/~strogdon/sage/"><span class="icon"></span>http://www.d.umn.edu/~strogdon/sage/</a>
It has all the necessary patches from <a class="closed ticket" href="https://trac.sagemath.org/ticket/11244" title="defect: In python-2.7 deprecation warnings are not shown to the user by default (closed: fixed)">#11244</a> and this this ticket.
</p>
</blockquote>
<p>
Is one of these patches needed <em>before</em> doing the Sage spkg itself? I get an immediate failure
</p>
<pre class="wiki">gcc -o src/convert.os -c -fPIC -I/Users/student/Desktop/sage-4.7.1.alpha1/local/include -I/Users/student/Desktop/sage-4.7.1.alpha1/local/include/python2.6 -I/Users/student/Desktop/sage-4.7.1.alpha1/local/include/NTL -Iinclude src/convert.c
In file included from include/memory.h:23,
from /Users/student/Desktop/sage-4.7.1.alpha1/local/include/pari/pari.h:42,
from include/convert.h:12,
from src/convert.c:14:
include/interrupt.h:32:20: error: Python.h: No such file or directory
scons: *** [src/convert.os] Error 1
*** TOUCHING ALL CYTHON (.pyx) FILES ***
gcc -o src/convert.os -c -fPIC -I/Users/student/Desktop/sage-4.7.1.alpha1/local/include -I/Users/student/Desktop/sage-4.7.1.alpha1/local/include/python2.6 -I/Users/student/Desktop/sage-4.7.1.alpha1/local/include/NTL -Iinclude src/convert.c
In file included from include/memory.h:23,
from /Users/student/Desktop/sage-4.7.1.alpha1/local/include/pari/pari.h:42,
from include/convert.h:12,
from src/convert.c:14:
include/interrupt.h:32:20: error: Python.h: No such file or directory
scons: *** [src/convert.os] Error 1
----------------------------------------------------------
sage: Building and installing modified Sage library files.
Installing c_lib
gcc -o src/convert.os -c -fPIC -I/Users/student/Desktop/sage-4.7.1.alpha1/local/include -I/Users/student/Desktop/sage-4.7.1.alpha1/local/include/python2.6 -I/Users/student/Desktop/sage-4.7.1.alpha1/local/include/NTL -Iinclude src/convert.c
In file included from include/memory.h:23,
from /Users/student/Desktop/sage-4.7.1.alpha1/local/include/pari/pari.h:42,
from include/convert.h:12,
from src/convert.c:14:
include/interrupt.h:32:20: error: Python.h: No such file or directory
scons: *** [src/convert.os] Error 1
ERROR: There was an error building c_lib.
</pre><p>
which I assume is related to one of the patches involved here, though I couldn't say which one...
</p>
TicketfbisseyMon, 23 May 2011 20:04:42 GMT
https://trac.sagemath.org/ticket/9958#comment:51
https://trac.sagemath.org/ticket/9958#comment:51
<p>
Did you rebuild cython after the python upgrade? In fact I have now added a list of package that needs to be rebuild after the python upgrade. Not all of them are necessary for building sage (scipy could be done after) but cython, numpy, matplotlib and pynac really need to be rebuilt.
</p>
<p>
Once you have done that apply all the patches with build in their names:
</p>
<ul><li><a class="attachment" href="https://trac.sagemath.org/attachment/ticket/9958/trac_9958-build_setuppy.patch" title="Attachment 'trac_9958-build_setuppy.patch' in Ticket #9958">trac_9958-build_setuppy.patch</a><a class="trac-rawlink" href="https://trac.sagemath.org/raw-attachment/ticket/9958/trac_9958-build_setuppy.patch" title="Download"></a>
</li><li><a class="attachment" href="https://trac.sagemath.org/attachment/ticket/9958/trac_9958-build-sage_clib.patch" title="Attachment 'trac_9958-build-sage_clib.patch' in Ticket #9958">trac_9958-build-sage_clib.patch</a><a class="trac-rawlink" href="https://trac.sagemath.org/raw-attachment/ticket/9958/trac_9958-build-sage_clib.patch" title="Download"></a>
</li><li><a class="attachment" href="https://trac.sagemath.org/attachment/ticket/9958/trac_9958-build_misc_cythonpy.patch" title="Attachment 'trac_9958-build_misc_cythonpy.patch' in Ticket #9958">trac_9958-build_misc_cythonpy.patch</a><a class="trac-rawlink" href="https://trac.sagemath.org/raw-attachment/ticket/9958/trac_9958-build_misc_cythonpy.patch" title="Download"></a>
</li><li><a class="attachment" href="https://trac.sagemath.org/attachment/ticket/9958/trac_9958-build_module_listpy.patch" title="Attachment 'trac_9958-build_module_listpy.patch' in Ticket #9958">trac_9958-build_module_listpy.patch</a><a class="trac-rawlink" href="https://trac.sagemath.org/raw-attachment/ticket/9958/trac_9958-build_module_listpy.patch" title="Download"></a> (actually optional)
</li></ul><p>
That should help sage build but will not correct many of the doctests. To fix most of the doctests apply the patches in <a class="closed ticket" href="https://trac.sagemath.org/ticket/11244" title="defect: In python-2.7 deprecation warnings are not shown to the user by default (closed: fixed)">#11244</a> as well as the one in the description of this bug. I have made a list now, have you seen it?
</p>
TicketkcrismanMon, 23 May 2011 20:17:06 GMT
https://trac.sagemath.org/ticket/9958#comment:52
https://trac.sagemath.org/ticket/9958#comment:52
<p>
Well, I'm building from scratch, so that shouldn't affect it from that side.
</p>
<p>
Are you saying that before I build the Sage library, I have to apply these patches? That's a little tricky in a scratch build (for me, at least).
</p>
<p>
Yes, I saw the lists, but I thought they were only relevant for an upgrade/after actually building Sage. My apologies. I may not be able to finish testing this properly for a while now.
</p>
TicketfbisseyMon, 23 May 2011 20:24:03 GMT
https://trac.sagemath.org/ticket/9958#comment:53
https://trac.sagemath.org/ticket/9958#comment:53
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:52" title="Comment 52">kcrisman</a>:
</p>
<blockquote class="citation">
<p>
Well, I'm building from scratch, so that shouldn't affect it from that side.
</p>
<p>
Are you saying that before I build the Sage library, I have to apply these patches? That's a little tricky in a scratch build (for me, at least).
</p>
<p>
Yes, I saw the lists, but I thought they were only relevant for an upgrade/after actually building Sage. My apologies. I may not be able to finish testing this properly for a while now.
</p>
</blockquote>
<p>
That's all right there are still things to sort out. But you could use the sage spkg prepared by Steve with all patches included rather than patch yourself:
<a class="ext-link" href="http://www.d.umn.edu/~strogdon/sage/sage-4.7.1.alpha1.p0.spkg"><span class="icon"></span>http://www.d.umn.edu/~strogdon/sage/sage-4.7.1.alpha1.p0.spkg</a>
</p>
<p>
And yes it is tricky from scratch unless you have a premade spkg.
</p>
TicketjhpalmieriTue, 24 May 2011 01:01:47 GMT
https://trac.sagemath.org/ticket/9958#comment:54
https://trac.sagemath.org/ticket/9958#comment:54
<p>
I may have made mistakes, but I tried to do this, starting with sage-4.7.rc4:
</p>
<ul><li>install the new python spkg
</li><li>install the new setuptools spkg (from <a class="closed ticket" href="https://trac.sagemath.org/ticket/11363" title="task: Update setuptools to a newer version (closed: fixed)">#11363</a>)
</li><li>apply the patches from <a class="closed ticket" href="https://trac.sagemath.org/ticket/11244" title="defect: In python-2.7 deprecation warnings are not shown to the user by default (closed: fixed)">#11244</a> to the main Sage library
</li><li>apply the patches from this ticket with "build" in their name -- some of these didn't apply cleanly, so I had to work around that.
</li></ul><p>
I used that to build a new version of Sage (using "sage -sdist ..."). The tar file is here:
</p>
<ul><li><a class="ext-link" href="http://sage.math.washington.edu/home/palmieri/misc/python2.7/sage-4.7.rc4-python2.7.tar"><span class="icon"></span>http://sage.math.washington.edu/home/palmieri/misc/python2.7/sage-4.7.rc4-python2.7.tar</a>
</li></ul><p>
On sage.math, I've been able to untar this and build Sage, although tests haven't run yet. You can also try upgrading, although I haven't tested this at all: run
</p>
<pre class="wiki">$ sage -upgrade http://sage.math.washington.edu/home/palmieri/misc/python2.7/sage-4.7.rc4-python2.7/
</pre>
TicketfbisseyTue, 24 May 2011 02:13:19 GMT
https://trac.sagemath.org/ticket/9958#comment:55
https://trac.sagemath.org/ticket/9958#comment:55
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:54" title="Comment 54">jhpalmieri</a>:
</p>
<blockquote class="citation">
<p>
I may have made mistakes, but I tried to do this, starting with sage-4.7.rc4:
</p>
<ul><li>install the new python spkg
</li><li>install the new setuptools spkg (from <a class="closed ticket" href="https://trac.sagemath.org/ticket/11363" title="task: Update setuptools to a newer version (closed: fixed)">#11363</a>)
</li><li>apply the patches from <a class="closed ticket" href="https://trac.sagemath.org/ticket/11244" title="defect: In python-2.7 deprecation warnings are not shown to the user by default (closed: fixed)">#11244</a> to the main Sage library
</li><li>apply the patches from this ticket with "build" in their name -- some of these didn't apply cleanly, so I had to work around that.
</li></ul><p>
I used that to build a new version of Sage (using "sage -sdist ..."). The tar file is here:
</p>
<ul><li><a class="ext-link" href="http://sage.math.washington.edu/home/palmieri/misc/python2.7/sage-4.7.rc4-python2.7.tar"><span class="icon"></span>http://sage.math.washington.edu/home/palmieri/misc/python2.7/sage-4.7.rc4-python2.7.tar</a>
</li></ul><p>
On sage.math, I've been able to untar this and build Sage, although tests haven't run yet. You can also try upgrading, although I haven't tested this at all: run
</p>
<pre class="wiki">$ sage -upgrade http://sage.math.washington.edu/home/palmieri/misc/python2.7/sage-4.7.rc4-python2.7/
</pre></blockquote>
<p>
I have tried to keep abreast of everything so the patches are based on 4.7.1.alpha1 there are enough differences that a lot of patches for 4.7 would need rebasing.
</p>
<p>
So I decided to go straight for the bleeding edge. I am doing some more work on the "build" patches, I am trying to do something smarter with the python version number so some change could be applied independently of this ticket. The module_list,py patch definitely won't apply cleanly on 4.7.rc mainly because of <a class="closed ticket" href="https://trac.sagemath.org/ticket/10334" title="enhancement: miscellaneous cleanup in perm_gps preparing for domains (closed: fixed)">#10334</a>. What's more <a class="closed ticket" href="https://trac.sagemath.org/ticket/11264" title="defect: sage/combinat/iet/strata.py is the last place in sage to use the ... (closed: fixed)">#11264</a> and <a class="closed ticket" href="https://trac.sagemath.org/ticket/11236" title="defect: Fix _test_eq for Python 2.7 (closed: fixed)">#11236</a> which are needed here are merged in 4.7.1.alpha0.
</p>
<p>
That's all a bit of hassle to start from 4.7.1.alpha, but I would have to start again if I was starting from 4.7.rc.
</p>
TicketfbisseyTue, 24 May 2011 03:31:06 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-build-sage_clib.patch</em>
</li>
</ul>
<p>
let's not forget the hardcoded version of python in SConstruct for sage_clib
</p>
TicketfbisseyTue, 24 May 2011 03:34:43 GMT
https://trac.sagemath.org/ticket/9958#comment:56
https://trac.sagemath.org/ticket/9958#comment:56
<p>
I have updated trac_9958-build-sage_clib.patch it could now be splited in its own ticket. It enables sage-clib to be smarter about the python version used. It would figure it on its own. I am looking at doing the same for setup.py, anyone would review that in its own ticket? Once in, we could at least build sage against python2.6 or 2.7 without changes.
</p>
TicketfbisseyTue, 24 May 2011 03:44:43 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-build_setuppy.patch</em>
</li>
</ul>
<p>
change needed in setup.py made it python version smart. I also scrubbed the debian stuff
</p>
TicketfbisseyTue, 24 May 2011 03:45:38 GMT
https://trac.sagemath.org/ticket/9958#comment:57
https://trac.sagemath.org/ticket/9958#comment:57
<p>
OK I also made setup.py python version smart any volunteer to review a separate ticket?
</p>
TicketkcrismanTue, 24 May 2011 12:50:05 GMT
https://trac.sagemath.org/ticket/9958#comment:58
https://trac.sagemath.org/ticket/9958#comment:58
<pre class="wiki">g++ -o libcsage.dylib -single_module -flat_namespace -undefined dynamic_lookup -dynamiclib src/convert.os src/interrupt.os src/memory.os src/mpn_pylong.os src/mpz_pylong.os src/mpz_longlong.os src/stdsage.os src/gmp_globals.os src/ZZ_pylong.os src/ntl_wrap.os -L/Users/student/Desktop/sage-4.7.1.alpha1/local/lib -L/Users/student/Desktop/sage-4.7.1.alpha1/local/lib/python/config -lntl -lpari -lgmp -lpython2.7
Traceback (most recent call last):
File "setup.py", line 18, in <module>
from module_list import ext_modules
File "/Users/student/Desktop/sage-4.7.1.alpha1/devel/sage-main/module_list.py", line 1529, in <module>
flint_depends],
TypeError: cannot concatenate 'str' and 'list' objects
sage: There was an error installing modified sage library code.
real 0m34.577s
user 0m19.519s
sys 0m6.901s
Error building new version of SAGE.
You might try typing 'sage -ba' or write to sage-support with as much information as possible.
real 2m42.066s
user 0m52.903s
sys 0m25.133s
sage: An error occurred while installing sage-4.7.1.alpha1.p0
</pre><p>
Note this is the p0 package referred to above.
</p>
TicketstrogdonTue, 24 May 2011 14:15:56 GMT
https://trac.sagemath.org/ticket/9958#comment:59
https://trac.sagemath.org/ticket/9958#comment:59
<p>
Well, there was a problem with this but it was corrected. I've checked the present sage-4.7.1.alpha.p0 and this problem should not be there. The md5sum (md5sum sage-4.7.1.alpha1.p0.spkg) should be
</p>
<p>
b54da7bee966eaf15942964a05a8b6b1 sage-4.7.1.alpha1.p0.spkg
</p>
<p>
If the spkg you have is not this could you download again and see if that fixed things.
</p>
TicketfbisseyWed, 25 May 2011 01:01:06 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-build_misc_cythonpy.patch</em>
</li>
</ul>
<p>
Some minor changes. The biggest change is to the doctest which explicitly refereed to python2.6 also we have extra include folders in a doctest apparently. [updated 20110525]
</p>
TicketfbisseyWed, 25 May 2011 01:33:22 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:60
https://trac.sagemath.org/ticket/9958#comment:60
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=60">diff</a>)
</li>
</ul>
<p>
I am splitting the ticket again: in <a class="closed ticket" href="https://trac.sagemath.org/ticket/11376" title="enhancement: Remove the hardcoding of python version in setup.py and SConstruct to ... (closed: fixed)">#11376</a> we make sage building system smart and work out the python version by itself. If we get this in the next alpha that will make testing easier as you won't need a patched sage spkg to build against python-2.7.1. One will still need to patch the doctests afterwards and any other issues but it will build.
</p>
<p>
In <a class="closed ticket" href="https://trac.sagemath.org/ticket/11377" title="enhancement: Clean and harmonize module_list.py (closed: fixed)">#11377</a> I put the clean up of module_list.py this is not necessary for python-2.7.1 per see but it would be a huge favour to me if it was going in (it makes work on sage-on-gentoo and sage-prefix much easier).
</p>
TicketkcrismanWed, 01 Jun 2011 16:02:29 GMT
https://trac.sagemath.org/ticket/9958#comment:61
https://trac.sagemath.org/ticket/9958#comment:61
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:59" title="Comment 59">strogdon</a>:
</p>
<blockquote class="citation">
<p>
Well, there was a problem with this but it was corrected. I've checked the present sage-4.7.1.alpha.p0 and this problem should not be there. The md5sum (md5sum sage-4.7.1.alpha1.p0.spkg) should be
</p>
<p>
b54da7bee966eaf15942964a05a8b6b1 sage-4.7.1.alpha1.p0.spkg
</p>
<p>
If the spkg you have is not this could you download again and see if that fixed things.
</p>
</blockquote>
<p>
It didn't seem to fix things (and I did check the md5 sum). I'm now starting a build from scratch, having replaced the python and sage spkgs.
</p>
<p>
By the way, now that 4.7.1.alpha1 is "official", one may have to upgrade the drop-in spkg.
</p>
TicketstrogdonWed, 01 Jun 2011 17:59:01 GMT
https://trac.sagemath.org/ticket/9958#comment:62
https://trac.sagemath.org/ticket/9958#comment:62
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:61" title="Comment 61">kcrisman</a>:
</p>
<blockquote class="citation">
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:59" title="Comment 59">strogdon</a>:
</p>
<blockquote class="citation">
<p>
Well, there was a problem with this but it was corrected. I've checked the present sage-4.7.1.alpha.p0 and this problem should not be there. The md5sum (md5sum sage-4.7.1.alpha1.p0.spkg) should be b54da7bee966eaf15942964a05a8b6b1 sage-4.7.1.alpha1.p0.spkg If the spkg you have is not this could you download again and see if that fixed things.
</p>
</blockquote>
<p>
It didn't seem to fix things (and I did check the md5 sum). I'm now starting a build from scratch, having replaced the python and sage spkgs. By the way, now that 4.7.1.alpha1 is "official", one may have to upgrade the drop-in spkg.
</p>
</blockquote>
<p>
OK, for those interested I have a new drop-in spkg based on the released 4.7.1.alpha1. This spkg includes the patches from this ticket as well as the patches from tickets <a class="closed ticket" href="https://trac.sagemath.org/ticket/11244" title="defect: In python-2.7 deprecation warnings are not shown to the user by default (closed: fixed)">#11244</a>, <a class="closed ticket" href="https://trac.sagemath.org/ticket/11373" title="enhancement: Allow global extra_link_args just like extra_compile_args in setup.py (closed: fixed)">#11373</a>, <a class="closed ticket" href="https://trac.sagemath.org/ticket/11376" title="enhancement: Remove the hardcoding of python version in setup.py and SConstruct to ... (closed: fixed)">#11376</a> and <a class="closed ticket" href="https://trac.sagemath.org/ticket/11377" title="enhancement: Clean and harmonize module_list.py (closed: fixed)">#11377</a> . I'm presently building Sage to make sure everything is as it should be. If successful, I'll post links to the drop-in spkg later today.
</p>
TicketfbisseyWed, 01 Jun 2011 19:18:07 GMT
https://trac.sagemath.org/ticket/9958#comment:63
https://trac.sagemath.org/ticket/9958#comment:63
<p>
I was hoping that <a class="closed ticket" href="https://trac.sagemath.org/ticket/11376" title="enhancement: Remove the hardcoding of python version in setup.py and SConstruct to ... (closed: fixed)">#11376</a> and <a class="closed ticket" href="https://trac.sagemath.org/ticket/11363" title="task: Update setuptools to a newer version (closed: fixed)">#11363</a> would have made it in alpha2 which would have made things easier. But I think Jeroen has closed alpha2 and is starting on alpha3. We should try to have at least these two in 4.7.1 to make testing easier.
</p>
TicketstrogdonWed, 01 Jun 2011 20:44:27 GMT
https://trac.sagemath.org/ticket/9958#comment:64
https://trac.sagemath.org/ticket/9958#comment:64
<p>
The following have been uploaded:
</p>
<p>
<a class="ext-link" href="http://www.d.umn.edu/~strogdon/sage/install.log-4.7.1.alpha1"><span class="icon"></span>http://www.d.umn.edu/~strogdon/sage/install.log-4.7.1.alpha1</a>
</p>
<p>
<a class="ext-link" href="http://www.d.umn.edu/~strogdon/sage/test.log-4.7.1.alpha1"><span class="icon"></span>http://www.d.umn.edu/~strogdon/sage/test.log-4.7.1.alpha1</a>
</p>
<p>
<a class="ext-link" href="http://www.d.umn.edu/~strogdon/sage/sage-4.7.1.alpha1.p0.spkg"><span class="icon"></span>http://www.d.umn.edu/~strogdon/sage/sage-4.7.1.alpha1.p0.spkg</a>
</p>
<p>
<a class="ext-link" href="http://www.d.umn.edu/~strogdon/sage/sage-4.7.1.alpha1.p0.spkg.md5"><span class="icon"></span>http://www.d.umn.edu/~strogdon/sage/sage-4.7.1.alpha1.p0.spkg.md5</a>
</p>
<p>
for comparisons, perhaps just under the wire for alpha2. Note, the drop-in sage spkg has the same revision .p0 extension, so I've provided the md5 sum for the spkg.
</p>
TicketfbisseyThu, 02 Jun 2011 00:41:01 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:65
https://trac.sagemath.org/ticket/9958#comment:65
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=65">diff</a>)
</li>
</ul>
<p>
Changed the cython.py patch in the list to accommodate new changes made in <a class="closed ticket" href="https://trac.sagemath.org/ticket/11376" title="enhancement: Remove the hardcoding of python version in setup.py and SConstruct to ... (closed: fixed)">#11376</a>.
</p>
TicketkcrismanMon, 06 Jun 2011 15:11:46 GMT
https://trac.sagemath.org/ticket/9958#comment:66
https://trac.sagemath.org/ticket/9958#comment:66
<p>
End of a looong traceback while building from scratch on PPC 10.4 with the spkgs dropped in (though not the absolute most recent alpha1.p0 spkg, but that hasn't even been gotten to yet, so it shouldn't matter). Just FYI in case that helps.
</p>
<pre class="wiki"> File "/Users/student/Desktop/sage-4.7.1.alpha1-python/local/lib/python/os.py", line 284, in walk
if isdir(join(top, name)):
File "/Users/student/Desktop/sage-4.7.1.alpha1-python/local/lib/python/genericpath.py", line 44, in isdir
return stat.S_ISDIR(st.st_mode)
File "/Users/student/Desktop/sage-4.7.1.alpha1-python/local/lib/python/stat.py", line 41, in S_ISDIR
return S_IFMT(mode) == S_IFDIR
RuntimeError: maximum recursion depth exceeded
Error installing Zope/Twisted interface.
real 0m16.055s
user 0m3.349s
sys 0m4.671s
sage: An error occurred while installing twisted-9.0.p2
</pre>
TicketfbisseyMon, 06 Jun 2011 19:38:59 GMT
https://trac.sagemath.org/ticket/9958#comment:67
https://trac.sagemath.org/ticket/9958#comment:67
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:66" title="Comment 66">kcrisman</a>:
</p>
<blockquote class="citation">
<p>
End of a looong traceback while building from scratch on PPC 10.4 with the spkgs dropped in (though not the absolute most recent alpha1.p0 spkg, but that hasn't even been gotten to yet, so it shouldn't matter). Just FYI in case that helps.
</p>
<pre class="wiki"> File "/Users/student/Desktop/sage-4.7.1.alpha1-python/local/lib/python/os.py", line 284, in walk
if isdir(join(top, name)):
File "/Users/student/Desktop/sage-4.7.1.alpha1-python/local/lib/python/genericpath.py", line 44, in isdir
return stat.S_ISDIR(st.st_mode)
File "/Users/student/Desktop/sage-4.7.1.alpha1-python/local/lib/python/stat.py", line 41, in S_ISDIR
return S_IFMT(mode) == S_IFDIR
RuntimeError: maximum recursion depth exceeded
Error installing Zope/Twisted interface.
real 0m16.055s
user 0m3.349s
sys 0m4.671s
sage: An error occurred while installing twisted-9.0.p2
</pre></blockquote>
<p>
Were you using the new setuptools from <a class="closed ticket" href="https://trac.sagemath.org/ticket/11363" title="task: Update setuptools to a newer version (closed: fixed)">#11363</a>? If so it may be worth trying a newer twisted from <a class="closed ticket" href="https://trac.sagemath.org/ticket/8741" title="defect: Upgrade Twisted to 11.0 (closed: invalid)">#8741</a>.
</p>
TicketfbisseyThu, 09 Jun 2011 12:29:08 GMTdependencies set
https://trac.sagemath.org/ticket/9958#comment:68
https://trac.sagemath.org/ticket/9958#comment:68
<ul>
<li><strong>dependencies</strong>
set to <em>#11156 #11236 #11244 #11264 #11339 #11363 #11376</em>
</li>
</ul>
TicketfbisseyTue, 14 Jun 2011 13:33:36 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-fix-misc_cythonpy.patch</em>
</li>
</ul>
<p>
fix doctest in sage/misc/cython.py, needs to be applied after <a class="closed ticket" href="https://trac.sagemath.org/ticket/11376" title="enhancement: Remove the hardcoding of python version in setup.py and SConstruct to ... (closed: fixed)">#11376</a>.
</p>
TicketfbisseyTue, 14 Jun 2011 13:36:27 GMT
https://trac.sagemath.org/ticket/9958#comment:69
https://trac.sagemath.org/ticket/9958#comment:69
<p>
Updated trac_9958-fix-misc_cythonpy.patch to take into account changes in <a class="closed ticket" href="https://trac.sagemath.org/ticket/11376" title="enhancement: Remove the hardcoding of python version in setup.py and SConstruct to ... (closed: fixed)">#11376</a>. For some reason the numpy include line appears after the application of the other patches over there. Why it didn't appear before is a mistery.
</p>
TicketjhpalmieriMon, 20 Jun 2011 18:40:47 GMT
https://trac.sagemath.org/ticket/9958#comment:70
https://trac.sagemath.org/ticket/9958#comment:70
<p>
By the way, I don't know how feasible this is, but it would be very nice if the new python spkg passed self-tests: set SAGE_CHECK to "yes" and install the spkg. Previous versions of Python have failed the self-tests, but it's perhaps the only standard spkg for which this is true. With the spkg here, on an OS X box:
</p>
<pre class="wiki">344 tests OK.
4 tests failed:
test__locale test_ctypes test_distutils test_locale
38 tests skipped:
test_aepack test_al test_applesingle test_bsddb test_bsddb3
test_cd test_cl test_codecmaps_cn test_codecmaps_hk
test_codecmaps_jp test_codecmaps_kr test_codecmaps_tw test_curses
test_dl test_epoll test_gdb test_gdbm test_gl test_imageop
test_imgfile test_largefile test_linuxaudiodev test_macos
test_macostools test_ossaudiodev test_scriptpackages test_smtpnet
test_socketserver test_startfile test_sunaudiodev test_timeout
test_tk test_ttk_guionly test_urllib2net test_urllibnet
test_winreg test_winsound test_zipfile64
5 skips unexpected on darwin:
test_aepack test_applesingle test_dl test_macos
test_scriptpackages
make: *** [test] Error 1
An error occurred while testing Python
</pre><p>
On sage.math:
</p>
<pre class="wiki">346 tests OK.
1 test failed:
test_distutils
39 tests skipped:
test_aepack test_al test_applesingle test_bsddb test_bsddb185
test_bsddb3 test_cd test_cl test_codecmaps_cn test_codecmaps_hk
test_codecmaps_jp test_codecmaps_kr test_codecmaps_tw test_curses
test_dbm test_dl test_gdb test_gdbm test_gl test_imageop
test_imgfile test_kqueue test_linuxaudiodev test_macos
test_macostools test_ossaudiodev test_scriptpackages test_smtpnet
test_socketserver test_startfile test_sunaudiodev test_timeout
test_tk test_ttk_guionly test_urllib2net test_urllibnet
test_winreg test_winsound test_zipfile64
7 skips unexpected on linux2:
test_bsddb test_bsddb3 test_dbm test_gdb test_gdbm test_tk
test_ttk_guionly
make: *** [test] Error 1
An error occurred while testing Python
</pre><p>
(I didn't upgrade the distutils package or anything else, just ran "sage -f python-2.7.1.spkg", so some of these may go away.)
</p>
TicketkiniMon, 20 Jun 2011 20:08:45 GMTcc changed
https://trac.sagemath.org/ticket/9958#comment:71
https://trac.sagemath.org/ticket/9958#comment:71
<ul>
<li><strong>cc</strong>
<em>kini</em> added
</li>
</ul>
TicketfbisseyMon, 20 Jun 2011 20:25:14 GMT
https://trac.sagemath.org/ticket/9958#comment:72
https://trac.sagemath.org/ticket/9958#comment:72
<p>
python testing is difficult. Even in gentoo the procedure is complicated. I'll have a look at it but I cannot make promise. There may be modules that we shouldn't build in the first place (nothing useful to sage, don't worry).
</p>
<p>
We have this for example in the ebuild:
</p>
<pre class="wiki"> if use berkdb; then
ewarn "\"bsddb\" module is out-of-date and no longer maintained inside dev-lang/python. It has"
ewarn "been additionally removed in Python 3. You should use external, still maintained \"bsddb3\""
ewarn "module provided by dev-python/bsddb3 which supports both Python 2 and Python 3."
fi
</pre><p>
gdb, gdm, dbm and tk require extra things on the host system so they may very well fail without. Actually according to the ebuild distutils and gdm are known to fail.
</p>
TicketleifFri, 24 Jun 2011 22:55:06 GMT
https://trac.sagemath.org/ticket/9958#comment:73
https://trac.sagemath.org/ticket/9958#comment:73
<p>
Just for the record:
</p>
<p>
<a class="ext-link" href="http://trac.sagemath.org/sage_trac/ticket/8664#comment:33"><span class="icon"></span>http://trac.sagemath.org/sage_trac/ticket/8664#comment:33</a> gives an example on how to automatically rebuild packages that depend on a newly added spkg (here: Python).
</p>
<p>
(Artificial version bumps aren't necessary, and simply <code>touch</code>ing <code>spkg/installed/<spkg-that-others-depend-on></code> alone doesn't work.)
</p>
<p>
In general:
</p>
<ol><li>Copy the new spkg(s) to <code>$SAGE_ROOT/spkg/standard/</code>.
</li><li><code>export SAGE_UPGRADING=yes</code>
</li><li>(Optionally set <code>MAKE</code> and <code>SAGE_PARALLEL_SPKG_BUILD</code>, perhaps <code>SAGE_CHECK</code>.)
</li><li>Run <code>make</code> (or better <code>make build</code>) rather than doing <code>./sage -f ...</code>
</li><li>Apply patches to the Sage library.
</li><li>Run <code>./sage -b</code> (or <code>./sage -ba-force</code> in case not all dependencies are covered by <code>module_list.py</code>, which in general I'd consider a bug, but this might be necessary upon a Python upgrade)
</li><li>Run tests or whatever.
</li></ol><p>
Note that Sage switches to the "main" branch whenever the Sage spkg gets reinstalled.
</p>
<p>
Of course patches to the build system are usually a bit trickier, but as far as I can see Francois already sorted these out.
</p>
TicketfbisseyFri, 24 Jun 2011 23:13:27 GMT
https://trac.sagemath.org/ticket/9958#comment:74
https://trac.sagemath.org/ticket/9958#comment:74
<p>
Thanks for the pointer, it will make testing easier for everyone. The bad news is that all the bits that makes testing easier won't be in 4.7.1. The good news is that everything is merged in 4.7.2.alpha0 at the moment. So once the next release cycle begins things will get easier. No patch will be needed to the build system. All that will remain will be doctest fix and issues like <a class="closed ticket" href="https://trac.sagemath.org/ticket/11339" title="defect: Refcounting for Singular rings (closed: fixed)">#11339</a>.
</p>
<p>
I will update trac_9958-fixing_numericalnoise-part2.patch shortly as <a class="closed ticket" href="https://trac.sagemath.org/ticket/11255" title="enhancement: Enhance the e_one_star.Patch class (closed: fixed)">#11255</a> broke it. Which means an extra patch may appear later once I have put all the pieces back together.
</p>
TicketfbisseyFri, 24 Jun 2011 23:15:14 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-fixing_numericalnoise-part2.patch</em>
</li>
</ul>
<p>
fix numerical noise part 2 (refreshed against 4.7.1.alpha3 -20110625)
</p>
TicketfbisseyTue, 23 Aug 2011 22:04:02 GMT
https://trac.sagemath.org/ticket/9958#comment:75
https://trac.sagemath.org/ticket/9958#comment:75
<p>
OK. There are a few more patches needed for numerical and formatting noise in 4.7.2.alpha1 but now anyone should be able to upgrade python without a premade sage spkg. All fixes to be able to build sage against python-2.7 out of the box are in!
</p>
TicketkcrismanTue, 23 Aug 2011 23:58:15 GMT
https://trac.sagemath.org/ticket/9958#comment:76
https://trac.sagemath.org/ticket/9958#comment:76
<blockquote class="citation">
<p>
(Artificial version bumps aren't necessary, and simply <code>touch</code>ing <code>spkg/installed/<spkg-that-others-depend-on></code> alone doesn't work.)
</p>
<p>
In general:
</p>
<ol><li>Copy the new spkg(s) to <code>$SAGE_ROOT/spkg/standard/</code>.
</li><li><code>export SAGE_UPGRADING=yes</code>
</li></ol></blockquote>
<p>
Huh, I didn't know about that, and it would be quite useful. I can't find it in either the installation guide or the developer guide, though - is this documented yet? Just curious.
</p>
<p>
Francois, I'll try to give this a test run on PPC OS X and/or Cygwin if you like.
</p>
TicketfbisseyWed, 24 Aug 2011 00:03:05 GMT
https://trac.sagemath.org/ticket/9958#comment:77
https://trac.sagemath.org/ticket/9958#comment:77
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:76" title="Comment 76">kcrisman</a>:
</p>
<blockquote class="citation">
<p>
Francois, I'll try to give this a test run on PPC OS X and/or Cygwin if you like.
</p>
</blockquote>
<p>
Be my guest, I thought that the fact things just became easier warranted an announcement.
</p>
TicketkiniWed, 24 Aug 2011 01:33:52 GMT
https://trac.sagemath.org/ticket/9958#comment:78
https://trac.sagemath.org/ticket/9958#comment:78
<p>
Wonderful, this is great news! :) Thanks!
</p>
TicketkcrismanWed, 24 Aug 2011 17:43:32 GMT
https://trac.sagemath.org/ticket/9958#comment:79
https://trac.sagemath.org/ticket/9958#comment:79
<p>
So far Mac PPC is doing fine (I just swapped out the spkgs in a source tar). Numpy, mercurial, various other python-related spkgs apparently built ok, though it isn't at Scipy or Sage yet. I did NOT check with <code>SAGE_CHECK=yes</code> since I didn't want to have to watch the build and turn that off during the Python build... Anyway, looks good so far. If it finishes I'll apply all the patches :)
</p>
TicketjhpalmieriThu, 25 Aug 2011 02:00:54 GMT
https://trac.sagemath.org/ticket/9958#comment:80
https://trac.sagemath.org/ticket/9958#comment:80
<p>
I tried this (new python spkg plus all of the patches, then built from scratch) and I'm seeing a bunch of doctest failures. Are some of these due to <a class="closed ticket" href="https://trac.sagemath.org/ticket/11339" title="defect: Refcounting for Singular rings (closed: fixed)">#11339</a>?
</p>
<pre class="wiki">The following tests failed:
sage -t -long -force_lib devel/sage/sage/categories/finite_crystals.py # 1 doctests failed
sage -t -long -force_lib devel/sage/sage/rings/morphism.pyx # 0 doctests failed
sage -t -long -force_lib devel/sage/sage/rings/integer.pyx # 3 doctests failed
sage -t -long -force_lib devel/sage/sage/rings/homset.py # 0 doctests failed
sage -t -long -force_lib devel/sage/sage/rings/padics/padic_capped_relative_element.pyx # 1 doctests failed
sage -t -long -force_lib devel/sage/sage/combinat/e_one_star.py # 1 doctests failed
sage -t -long -force_lib devel/sage/sage/combinat/words/nfactor_enumerable_word.py # 2 doctests failed
sage -t -long -force_lib devel/sage/sage/geometry/polyhedra.py # 1 doctests failed
sage -t -long -force_lib devel/sage/sage/schemes/generic/scheme.py # 0 doctests failed
sage -t -long -force_lib devel/sage/sage/symbolic/callable.py # 5 doctests failed
</pre><p>
I think I did everything right. I put together a Sage distribution with the python spkg and the patches, based on 4.7.2.alpha1:
</p>
<ul><li><a class="ext-link" href="http://sage.math.washington.edu/home/palmieri/misc/9958/sage-4.7.2.9958.tar"><span class="icon"></span>http://sage.math.washington.edu/home/palmieri/misc/9958/sage-4.7.2.9958.tar</a>
</li></ul><p>
Upgrade path:
</p>
<ul><li><a class="ext-link" href="http://sage.math.washington.edu/home/palmieri/misc/9958/sage-4.7.2.9958/"><span class="icon"></span>http://sage.math.washington.edu/home/palmieri/misc/9958/sage-4.7.2.9958/</a>
</li></ul>
TicketfbisseyThu, 25 Aug 2011 03:44:28 GMT
https://trac.sagemath.org/ticket/9958#comment:81
https://trac.sagemath.org/ticket/9958#comment:81
<p>
Any failures from <a class="closed ticket" href="https://trac.sagemath.org/ticket/11339" title="defect: Refcounting for Singular rings (closed: fixed)">#11339</a> gives you a killed doctest, so
</p>
<pre class="wiki">sage -t -long -force_lib devel/sage/sage/rings/morphism.pyx
sage -t -long -force_lib devel/sage/sage/rings/homset.py
sage -t -long -force_lib devel/sage/sage/schemes/generic/scheme.py
</pre><p>
could all be, a verbose run would help figure it out. By nature <a class="closed ticket" href="https://trac.sagemath.org/ticket/11339" title="defect: Refcounting for Singular rings (closed: fixed)">#11339</a> is somewhat random, not everyone see the same failures but all these are familiar.
</p>
<p>
Just checking the others with my current list.
</p>
<ul><li>sage/categories/finite_crystals.py is a new one introduced in 4.7.2 where the error message has changed slightly when using python-2.7.
</li><li>sage/rings/integer.pyx is definitely python-2.7 related but not patched yet because I am not sure what should be done there.
</li><li>sage/rings/padics/padic_capped_relative_element.pyx same thing
</li><li>sage/combinat/e_one_star.py I had a patch but it became to fuzzy haven't done a new one.
</li><li>sage/combinat/words/nfactor_enumerable_word.py python-2.7 two successive results are inverted, I want someone else to look at that one to make sure we can just do the obvious thing.
</li><li>sage/symbolic/callable.py new in 4.7.2 change in the error message because we are running python-2.7
</li><li>sage/geometry/polyhedra.py never seen that one before, can you re-run it and give more info on the failure?
</li></ul><p>
As you can see a few more patches are needed and apart from <a class="closed ticket" href="https://trac.sagemath.org/ticket/11339" title="defect: Refcounting for Singular rings (closed: fixed)">#11339</a> which is a big show stopper because of the crashes at least two other tests point to some potential problems that should be looked at.
</p>
TicketstrogdonThu, 25 Aug 2011 04:50:39 GMT
https://trac.sagemath.org/ticket/9958#comment:82
https://trac.sagemath.org/ticket/9958#comment:82
<p>
Here are the failures I get on x86:
</p>
<pre class="wiki">sage -t -long -force_lib devel/sage-main/sage/libs/cremona/newforms.pyx # 1 doctests failed
sage -t -long -force_lib devel/sage-main/sage/misc/sageinspect.py # 1 doctests failed
sage -t -long -force_lib devel/sage-main/sage/misc/randstate.pyx # 1 doctests failed
sage -t -long -force_lib devel/sage-main/sage/rings/real_mpfr.pyx # 1 doctests failed
sage -t -long -force_lib devel/sage-main/sage/stats/intlist.pyx # 1 doctests failed
sage -t -long -force_lib devel/sage-main/sage/schemes/hyperelliptic_curves/hyperelliptic_finite_field.py # 1 doctests failed
sage -t -long -force_lib devel/sage-main/sage/combinat/e_one_star.py # 1 doctests failed
sage -t -long -force_lib devel/sage-main/sage/geometry/polyhedra.py # 1 doctests failed
sage -t -long -force_lib devel/sage-main/sage/crypto/mq/mpolynomialsystem.py # Killed/crashed
sage -t -long -force_lib devel/sage-main/sage/symbolic/callable.py # 5 doctests failed
sage -t -long -force_lib devel/sage-main/sage/functions/transcendental.py # 1 doctests failed
sage -t -long -force_lib devel/sage-main/sage/categories/finite_crystals.py # 1 doctests failed
</pre><p>
The failures newforms.pyx, real_mpfr.pyx and intlist.pyx are all of the form:
</p>
<pre class="wiki">File "/storage/sage/sage-4.7.2.alpha1/devel/sage-main/sage/libs/cremona/newforms.pyx", line 53:
sage: ECModularSymbol(E)
Expected:
Traceback (most recent call last):
...
OverflowError: long int too large to convert to int
Got:
Traceback (most recent call last):
File "/storage/sage/sage-4.7.2.alpha1/local/bin/ncadoctest.py", line 1231, in run_one_test
self.run_one_example(test, example, filename, compileflags)
File "/storage/sage/sage-4.7.2.alpha1/local/bin/sagedoctest.py", line 38, in run_one_example
OrigDocTestRunner.run_one_example(self, test, example, filename, compileflags)
File "/storage/sage/sage-4.7.2.alpha1/local/bin/ncadoctest.py", line 1172, in run_one_example
compileflags, 1) in test.globs
File "<doctest __main__.example_1[11]>", line 1, in <module>
ECModularSymbol(E)###line 53:
sage: ECModularSymbol(E)
File "newforms.pyx", line 69, in sage.libs.cremona.newforms.ECModularSymbol.__init__ (sage/libs/cremona/newforms.cpp:1820)
a6 = new_bigint(int(E.a6()))
OverflowError: Python int too large to convert to C long
</pre><p>
These tests do not fail on amd64 because "long int too large to convert to int" is returned as the <a class="missing wiki">OverflowError?</a> instead of "Python int too large to convert to C long".
</p>
TicketfbisseyThu, 25 Aug 2011 05:00:17 GMT
https://trac.sagemath.org/ticket/9958#comment:83
https://trac.sagemath.org/ticket/9958#comment:83
<p>
I had forgotten about these. We need different test results for 32 and 64 bits for these.
</p>
TicketjhpalmieriThu, 25 Aug 2011 17:30:20 GMT
https://trac.sagemath.org/ticket/9958#comment:84
https://trac.sagemath.org/ticket/9958#comment:84
<p>
Here's the failure for <code>sage/geometry/polyhedra.py</code>:
</p>
<pre class="wiki">sage -t -long -force_lib "devel/sage/sage/geometry/polyhedra.py"
**********************************************************************
File "/mnt/usb1/scratch/palmieri/9958/sage-4.7.2.9958/devel/sage/sage/geometry/polyhedra.py", line 4948:
sage: ppoints[0]
Expected:
(-1.92296268638e-15, -1.92296268638e-15)
Got:
(0.0, 0.0)
**********************************************************************
</pre><p>
It looks like numerical noise, but is it an acceptable level of accuracy?
</p>
TicketfbisseyFri, 26 Aug 2011 01:19:29 GMT
https://trac.sagemath.org/ticket/9958#comment:85
https://trac.sagemath.org/ticket/9958#comment:85
<p>
Now I remember that test, it is even in the log <a class="missing attachment">sage-4.7.alpha5-test.log.bz2</a> I produced a while ago. Strangely enough it doesn't happen anymore on my sage-on-gentoo install. I also have pari-2.5.0 and maxima-5.25.0 on this install, I suspect one of them may be responsible for the disparition of that failure
</p>
TicketfbisseyFri, 26 Aug 2011 01:35:02 GMT
https://trac.sagemath.org/ticket/9958#comment:86
https://trac.sagemath.org/ticket/9958#comment:86
<p>
I am wrong! Not maxima or pari, there is a patch for it in <a class="attachment" href="https://trac.sagemath.org/attachment/ticket/9958/trac_9958-fixing_numericalnoise-part1.patch" title="Attachment 'trac_9958-fixing_numericalnoise-part1.patch' in Ticket #9958">trac_9958-fixing_numericalnoise-part1.patch</a><a class="trac-rawlink" href="https://trac.sagemath.org/raw-attachment/ticket/9958/trac_9958-fixing_numericalnoise-part1.patch" title="Download"></a>. So it looks like that bit may not be applied properly.
</p>
TicketfbisseyFri, 26 Aug 2011 03:22:20 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-e_one_star.patch</em>
</li>
</ul>
<p>
fix numerical noise in e_one_star.py
</p>
TicketfbisseyFri, 26 Aug 2011 03:22:48 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-finite_crystals.patch</em>
</li>
</ul>
<p>
fix error message in finite_crystals.py
</p>
TicketfbisseyFri, 26 Aug 2011 03:23:18 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-symbolic_callable.patch</em>
</li>
</ul>
<p>
fix error message in symbolics/callable.py
</p>
TicketfbisseyFri, 26 Aug 2011 03:25:46 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:87
https://trac.sagemath.org/ticket/9958#comment:87
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=87">diff</a>)
</li>
</ul>
<p>
Added three new patches. I will rework the patches that need adjusting between 32 and 64 bits next.
</p>
TicketfbisseyFri, 26 Aug 2011 03:37:03 GMT
https://trac.sagemath.org/ticket/9958#comment:88
https://trac.sagemath.org/ticket/9958#comment:88
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:82" title="Comment 82">strogdon</a>:
</p>
<blockquote class="citation">
<p>
Here are the failures I get on x86:
</p>
<pre class="wiki">sage -t -long -force_lib devel/sage-main/sage/libs/cremona/newforms.pyx # 1 doctests failed
sage -t -long -force_lib devel/sage-main/sage/misc/sageinspect.py # 1 doctests failed
sage -t -long -force_lib devel/sage-main/sage/misc/randstate.pyx # 1 doctests failed
sage -t -long -force_lib devel/sage-main/sage/rings/real_mpfr.pyx # 1 doctests failed
sage -t -long -force_lib devel/sage-main/sage/stats/intlist.pyx # 1 doctests failed
sage -t -long -force_lib devel/sage-main/sage/schemes/hyperelliptic_curves/hyperelliptic_finite_field.py # 1 doctests failed
sage -t -long -force_lib devel/sage-main/sage/combinat/e_one_star.py # 1 doctests failed
sage -t -long -force_lib devel/sage-main/sage/geometry/polyhedra.py # 1 doctests failed
sage -t -long -force_lib devel/sage-main/sage/crypto/mq/mpolynomialsystem.py # Killed/crashed
sage -t -long -force_lib devel/sage-main/sage/symbolic/callable.py # 5 doctests failed
sage -t -long -force_lib devel/sage-main/sage/functions/transcendental.py # 1 doctests failed
sage -t -long -force_lib devel/sage-main/sage/categories/finite_crystals.py # 1 doctests failed
</pre><p>
The failures newforms.pyx, real_mpfr.pyx and intlist.pyx are all of the form:
</p>
<pre class="wiki">File "/storage/sage/sage-4.7.2.alpha1/devel/sage-main/sage/libs/cremona/newforms.pyx", line 53:
sage: ECModularSymbol(E)
Expected:
Traceback (most recent call last):
...
OverflowError: long int too large to convert to int
Got:
Traceback (most recent call last):
File "/storage/sage/sage-4.7.2.alpha1/local/bin/ncadoctest.py", line 1231, in run_one_test
self.run_one_example(test, example, filename, compileflags)
File "/storage/sage/sage-4.7.2.alpha1/local/bin/sagedoctest.py", line 38, in run_one_example
OrigDocTestRunner.run_one_example(self, test, example, filename, compileflags)
File "/storage/sage/sage-4.7.2.alpha1/local/bin/ncadoctest.py", line 1172, in run_one_example
compileflags, 1) in test.globs
File "<doctest __main__.example_1[11]>", line 1, in <module>
ECModularSymbol(E)###line 53:
sage: ECModularSymbol(E)
File "newforms.pyx", line 69, in sage.libs.cremona.newforms.ECModularSymbol.__init__ (sage/libs/cremona/newforms.cpp:1820)
a6 = new_bigint(int(E.a6()))
OverflowError: Python int too large to convert to C long
</pre><p>
These tests do not fail on amd64 because "long int too large to convert to int" is returned as the <a class="missing wiki">OverflowError?</a> instead of "Python int too large to convert to C long".
</p>
</blockquote>
<p>
Steve, what about
</p>
<pre class="wiki">sage -t -long -force_lib devel/sage-main/sage/rings/polynomial/polynomial_rational_flint.pyx
</pre>
TicketstrogdonFri, 26 Aug 2011 03:53:30 GMT
https://trac.sagemath.org/ticket/9958#comment:89
https://trac.sagemath.org/ticket/9958#comment:89
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:88" title="Comment 88">fbissey</a>:
</p>
<blockquote class="citation">
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:82" title="Comment 82">strogdon</a>:
</p>
<p>
Steve, what about
</p>
<pre class="wiki">sage -t -long -force_lib devel/sage-main/sage/rings/polynomial/polynomial_rational_flint.pyx
</pre></blockquote>
<p>
Here on x86 and amd64 the test passes. So, there seems to be some sort of inconsistency, doesn't it?
</p>
TicketfbisseyFri, 26 Aug 2011 03:58:09 GMT
https://trac.sagemath.org/ticket/9958#comment:90
https://trac.sagemath.org/ticket/9958#comment:90
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:89" title="Comment 89">strogdon</a>:
</p>
<blockquote class="citation">
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:88" title="Comment 88">fbissey</a>:
</p>
<blockquote class="citation">
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:82" title="Comment 82">strogdon</a>:
</p>
<p>
Steve, what about
</p>
<pre class="wiki">sage -t -long -force_lib devel/sage-main/sage/rings/polynomial/polynomial_rational_flint.pyx
</pre></blockquote>
<p>
Here on x86 and amd64 the test passes. So, there seems to be some sort of inconsistency, doesn't it?
</p>
</blockquote>
<p>
Yes! I'll fix it but it should be investigated. Gut feeling is on variation in cython definitions.
</p>
TicketleifFri, 26 Aug 2011 04:00:31 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:91
https://trac.sagemath.org/ticket/9958#comment:91
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=91">diff</a>)
</li>
</ul>
TicketkcrismanFri, 26 Aug 2011 19:45:09 GMT
https://trac.sagemath.org/ticket/9958#comment:92
https://trac.sagemath.org/ticket/9958#comment:92
<p>
I've tried to remove the failures known above here. Note that I didn't get the last few patches in time, but I removed those failures as well, assuming they were the same. The timeouts/killed are <em>probably</em> unrelated - my computer is < 1 GHz, so I get a lot of timeouts and I forgot to set <code>SAGE_TIMEOUT_LONG</code> before I ran the tests - but at any rate I hope this will be useful. After the hurricane I'll start this up again and run the remaining tests.
</p>
<pre class="wiki"> sage -t -long "devel/sage/sage/crypto/mq/mpolynomialsystem.py" # Killed/crashed
sage -t -long "devel/sage/sage/functions/transcendental.py"
sage -t -long "devel/sage/sage/groups/generic.py" # Killed/crashed
sage -t -long "devel/sage/sage/interfaces/maxima.py" # Time out
sage -t -long "devel/sage/sage/interfaces/singular.py" # Killed/crashed
sage -t -long "devel/sage/sage/libs/cremona/newforms.pyx"
sage -t -long "devel/sage/sage/libs/ppl.pyx" # Time out
sage -t -long "devel/sage/sage/libs/singular/ring.pyx" # Killed/crashed
sage -t -long "devel/sage/sage/misc/randstate.pyx"
sage -t -long "devel/sage/sage/misc/sageinspect.py"
sage -t -long "devel/sage/sage/rings/multi_power_series_ring_element.py" # Killed/crashed
sage -t -long "devel/sage/sage/rings/polynomial/multi_polynomial_ideal.py" # Killed/crashed
sage -t -long "devel/sage/sage/rings/polynomial/multi_polynomial_libsingular.pyx" # Killed/crashed
sage -t -long "devel/sage/sage/rings/polynomial/polynomial_singular_interface.py" # Killed/crashed
sage -t -long "devel/sage/sage/rings/real_mpfr.pyx"
sage -t -long "devel/sage/sage/rings/tests.py" # Killed/crashed
sage -t -long "devel/sage/sage/schemes/elliptic_curves/BSD.py" # Killed/crashed
sage -t -long "devel/sage/sage/schemes/elliptic_curves/ell_curve_isogeny.py" # Killed/crashed
sage -t -long "devel/sage/sage/schemes/elliptic_curves/ell_field.py" # Killed/crashed
sage -t -long "devel/sage/sage/schemes/elliptic_curves/ell_finite_field.py" # Killed/crashed
sage -t -long "devel/sage/sage/schemes/elliptic_curves/ell_generic.py" # Killed/crashed
sage -t -long "devel/sage/sage/schemes/elliptic_curves/ell_local_data.py" # Killed/crashed
sage -t -long "devel/sage/sage/schemes/elliptic_curves/ell_number_field.py" # Killed/crashed
sage -t -long "devel/sage/sage/schemes/elliptic_curves/ell_point.py" # Killed/crashed
sage -t -long "devel/sage/sage/schemes/elliptic_curves/ell_rational_field.py" # Time out
sage -t -long "devel/sage/sage/schemes/elliptic_curves/gal_reps.py" # Killed/crashed
sage -t -long "devel/sage/sage/schemes/elliptic_curves/heegner.py" # Killed/crashed
sage -t -long "devel/sage/sage/schemes/elliptic_curves/period_lattice.py" # Killed/crashed
sage -t -long "devel/sage/sage/schemes/generic/scheme.py" # Killed/crashed
sage -t -long "devel/sage/sage/schemes/plane_conics/con_finite_field.py" # Killed/crashed
sage -t -long "devel/sage/sage/schemes/plane_curves/projective_curve.py" # Killed/crashed
sage -t -long "devel/sage/sage/stats/intlist.pyx"
sage -t -long "devel/sage/sage/structure/sage_object.pyx" # Killed/crashed
</pre>
TicketkcrismanFri, 26 Aug 2011 20:14:00 GMT
https://trac.sagemath.org/ticket/9958#comment:93
https://trac.sagemath.org/ticket/9958#comment:93
<p>
Here is one example.
</p>
<pre class="wiki">sage -t -long "devel/sage/sage/functions/transcendental.py"
**********************************************************************
File "/Users/student/Desktop/sage-4.7.2.alpha1/devel/sage/sage/functions/transcendental.py", line 83:
sage: w = exponential_integral_1(2,4); w
Expected:
[0.04890051070806112, 0.0037793524098489067, 0.00036008245216265873, 3.7665622843924751e-05]
Got:
[0.04890051070806112, 0.0037793524098489067, 0.00036008245216265873, 3.766562284392475e-05]
**********************************************************************
</pre><p>
Here is one of the killed ones (not a timeout, I'm surprised):
</p>
<pre class="wiki">sage -t -long "devel/sage/sage/crypto/mq/mpolynomialsystem.py"
The doctested process was killed by signal 10
[352.0 s]
</pre><p>
Could this be an unrelated 4.7.2.alpha1 issue on my platform?
</p>
TicketfbisseyFri, 26 Aug 2011 21:22:40 GMT
https://trac.sagemath.org/ticket/9958#comment:94
https://trac.sagemath.org/ticket/9958#comment:94
<p>
I am particularly interested in the killed/crashed tests. And also those for which there is already a patch.
</p>
<pre class="wiki">sage -t -long "devel/sage/sage/libs/cremona/newforms.pyx"
sage -t -long "devel/sage/sage/rings/real_mpfr.pyx"
sage -t -long "devel/sage/sage/stats/intlist.pyx"
</pre><p>
are the 32/64 bits message difference already mentioned by Steve.
</p>
<p>
The timeouts are the regular suspect on ppc if I am not mistaken.
</p>
<p>
The transcendental.py doctest you are quoting is worrying me. It is patched in <a class="attachment" href="https://trac.sagemath.org/attachment/ticket/9958/trac_9958-fixing_numericalnoise-part1.patch" title="Attachment 'trac_9958-fixing_numericalnoise-part1.patch' in Ticket #9958">trac_9958-fixing_numericalnoise-part1.patch</a><a class="trac-rawlink" href="https://trac.sagemath.org/raw-attachment/ticket/9958/trac_9958-fixing_numericalnoise-part1.patch" title="Download"></a> but you have a slightly different result again (one less digit on the last number). We may have to consider
a different patch.
</p>
<p>
All killed/crashed doctest are candidates for <a class="closed ticket" href="https://trac.sagemath.org/ticket/11339" title="defect: Refcounting for Singular rings (closed: fixed)">#11339</a> but you'll have to run sage -gdb on them to be sure.
</p>
TicketleifFri, 26 Aug 2011 23:32:33 GMT
https://trac.sagemath.org/ticket/9958#comment:95
https://trac.sagemath.org/ticket/9958#comment:95
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:93" title="Comment 93">kcrisman</a>:
</p>
<blockquote class="citation">
<p>
Here is one of the killed ones (not a timeout, I'm surprised):
</p>
</blockquote>
<pre class="wiki">sage -t -long "devel/sage/sage/crypto/mq/mpolynomialsystem.py"
The doctested process was killed by signal 10
[352.0 s]
</pre><blockquote class="citation">
<p>
Could this be an unrelated 4.7.2.alpha1 issue on my platform?
</p>
</blockquote>
<p>
Does <code>SIGUSR1</code> (#10) have a special meaning on Darwin?
</p>
TicketfbisseyFri, 26 Aug 2011 23:52:44 GMT
https://trac.sagemath.org/ticket/9958#comment:96
https://trac.sagemath.org/ticket/9958#comment:96
<p>
Almost anything with "polynomial" in its name is likely to use singular (and crypto/mq/mpolynomialsystem.py is no exception), signal 10 is apparently a user defined signal so it could be anything.
</p>
<p>
We'll have to wait for the hurricane to move on before Karl can answer us on any of this points.
</p>
<p>
Looking back at you list Karl I am also very curious about
</p>
<pre class="wiki">sage -t -long "devel/sage/sage/structure/sage_object.pyx
sage -t -long "devel/sage/sage/misc/sageinspect.py"
sage -t -long "devel/sage/sage/misc/randstate.pyx"
</pre><p>
two of these have already been patched (sage_object and randstate) in this ticket so I am quite curious about what's wrong with them.
</p>
TicketkcrismanSat, 27 Aug 2011 00:47:01 GMT
https://trac.sagemath.org/ticket/9958#comment:97
https://trac.sagemath.org/ticket/9958#comment:97
<p>
Yeah, I'm sorry I couldn't provide more information. The tests only just finished after classes, and I had one hour to copy/paste the above, restart just doing the failed tests, write a lecture, check email, and then turn off and unplug my PPC machine. I just couldn't do any more. I certainly wasn't taking an eMac home on the bike/train with me!
</p>
<p>
But we are just due for heavy rain and wind, so hopefully Monday I can get back on it and tell you more, save an extended power outage. Much better than an earthquake, I think fbissey would heartily agree. I wish I'd had a chance to run tests after <a class="closed ticket" href="https://trac.sagemath.org/ticket/11339" title="defect: Refcounting for Singular rings (closed: fixed)">#11339</a>, but I just knew it would take eons. I'd do it on one of my home PPC machines (believe it or not, I have two more) but one I can no longer get !XCode for, and the other is also slow enough it wouldn't be ready by the time we have to unplug <em>it</em>... sigh.
</p>
<p>
Anyway, I'll keep this ticket on the priority list for the machine I did these tests on.
</p>
TicketleifMon, 29 Aug 2011 02:59:44 GMT
https://trac.sagemath.org/ticket/9958#comment:98
https://trac.sagemath.org/ticket/9958#comment:98
<p>
So, I did test this with Sage 4.7.2.alpha2 on my "last" 32-bit machine, a Pentium4 Prescott (which has SSE3) running Ubuntu 9.04; my other Pentium4 (Northwood, without SSE3 / PNI) recently died, and I won't revive it in the near future.
</p>
<p>
The good news are: The patches all still apply to 4.7.2.alpha2, though many hunks with partially large offsets, but no fuzz.
</p>
<p>
The bad news: I expected some numerical noise because of 32-bit architecture with (there rather rare) SSE3 (<code>-mfpmath=sse</code>), but also experienced at least one segfault (in <code>sage/rings/homset.py</code>). I'll have to investigate the rest, for now just:
</p>
<pre class="wiki">...
sage -t -long -force_lib "devel/sage/sage/geometry/polyhedra.py"
**********************************************************************
File "/media/H-1TB-P6-linux2/Sage/sage-4.7.2.alpha2-gcc-4.5.1/devel/sage/sage/geometry/polyhedra.py", line 4948:
sage: ppoints[0]
Expected:
(-1.92296268638e-15, -1.92296268638e-15)
Got:
(0.0, 0.0)
**********************************************************************
1 items had failures:
1 of 8 in __main__.example_171
***Test Failed*** 1 failures.
For whitespace errors, see the file /home/leif/.sage//tmp/.doctest_polyhedra.py
[166.0 s]
----------------------------------------------------------------------
The following tests failed:
sage -t -long -force_lib "devel/sage/sage/libs/cremona/newforms.pyx"
sage -t -long -force_lib "devel/sage/sage/functions/transcendental.py"
sage -t -long -force_lib "devel/sage/sage/misc/randstate.pyx"
sage -t -long -force_lib "devel/sage/sage/combinat/words/suffix_trees.py"
sage -t -long -force_lib "devel/sage/sage/combinat/words/nfactor_enumerable_word.py"
sage -t -long -force_lib "devel/sage/sage/rings/morphism.pyx"
sage -t -long -force_lib "devel/sage/sage/rings/real_mpfr.pyx"
sage -t -long -force_lib "devel/sage/sage/rings/homset.py"
sage -t -long -force_lib "devel/sage/sage/stats/intlist.pyx"
sage -t -long -force_lib "devel/sage/sage/schemes/generic/scheme.py"
sage -t -long -force_lib "devel/sage/sage/geometry/polyhedra.py"
Total time for all tests: 26263.8 seconds
make: *** [testlong] Error 128
real 439m23.357s
user 393m40.644s
sys 31m7.485s
leif@californication:~/Sage/sage-4.7.2.alpha2-gcc-4.5.1$
</pre><p>
(The tail of the log. More to come later.)
</p>
<p>
Note that I didn't test in parallel, although with some other CPU-greedy process running, but time-outs are unlikely. Vanilla 4.7.2.alpha2 passed all tests in exactly the same setting (and I did rebuild all dependent packages when installing the Python 2.7 spkg, modulo missing extension module dependencies in <code>module_list.py</code>).
</p>
TicketleifMon, 29 Aug 2011 03:32:28 GMT
https://trac.sagemath.org/ticket/9958#comment:99
https://trac.sagemath.org/ticket/9958#comment:99
<p>
Ok, <strong>three</strong> segfaults (two of them without backtrace / Sage message, for whatever reason), some Python ints too large ("as usual" I guess), some numerical noise, the rest apparently related to dictionaries / hashing(?).
</p>
<p>
Attaching short logs of rerun tests (all reproducable)...
</p>
TicketleifMon, 29 Aug 2011 03:42:04 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>Doctest_failures_Sage-4.7.2.alpha2_Linux_x86_SSE3-individual_tests_rerun.log</em>
</li>
</ul>
<p>
Pentium4 Prescott (SSE3 / PNI, 32-bit), GCC 4.5.1, native code, <code>-mfpmath=sse</code>, Ubuntu 9.04 x86
</p>
TicketleifMon, 29 Aug 2011 04:20:12 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>Doctest_failures_Sage-4.7.2.alpha2_Linux_x86_SSE3-individual_tests_rerun-segfaults-verbose.log</em>
</li>
</ul>
<p>
Pentium4 Prescott (SSE3 / PNI, 32-bit), GCC 4.5.1, native code, -mfpmath=sse, Ubuntu 9.04 x86 (The three segfaulting files tested in verbose mode.)
</p>
TicketleifMon, 29 Aug 2011 04:35:45 GMT
https://trac.sagemath.org/ticket/9958#comment:100
https://trac.sagemath.org/ticket/9958#comment:100
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:99" title="Comment 99">leif</a>:
</p>
<blockquote class="citation">
<p>
Attaching short logs of rerun tests (all reproducable)...
</p>
</blockquote>
<p>
Done.
</p>
<p>
Haha, the first segfault is an especially nice one:
</p>
<pre class="wiki">...
10 tests in __main__.example_7
6 tests in __main__.example_8
7 tests in __main__.example_9
511 tests in 55 items.
511 passed and 0 failed.
Test passed.
Segmentation fault
[9.8 s]
----------------------------------------------------------------------
The following tests failed:
sage -t -long -verbose "devel/sage/sage/rings/morphism.pyx"
Total time for all tests: 9.8 seconds
real 0m10.013s
user 0m6.980s
sys 0m1.068s
</pre>
TicketfbisseyMon, 29 Aug 2011 05:05:40 GMT
https://trac.sagemath.org/ticket/9958#comment:101
https://trac.sagemath.org/ticket/9958#comment:101
<p>
Thanks leif. Nothing worrying there. There is a patch for sage/geometry/polyhedra.py but obviously it doesn't apply properly anymore. transcendantal.py, randstate.pyx and intlist.pyx are all already patched but may need more tweaking, I'd be grateful for the output of these.
</p>
<pre class="wiki">sage -t -long -force_lib "devel/sage/sage/combinat/words/nfactor_enumerable_word.py"
</pre><p>
is known to fail but is probably a minor adjustment.
</p>
<pre class="wiki">sage -t -long -force_lib "devel/sage/sage/combinat/words/suffix_trees.py"
</pre><p>
is new. The rest look like <a class="closed ticket" href="https://trac.sagemath.org/ticket/11339" title="defect: Refcounting for Singular rings (closed: fixed)">#11339</a> material.
</p>
TicketleifMon, 29 Aug 2011 05:48:12 GMT
https://trac.sagemath.org/ticket/9958#comment:102
https://trac.sagemath.org/ticket/9958#comment:102
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:101" title="Comment 101">fbissey</a>:
</p>
<blockquote class="citation">
<p>
Thanks leif. Nothing worrying there. There is a patch for sage/geometry/polyhedra.py but obviously it doesn't apply properly anymore. transcendantal.py, randstate.pyx and intlist.pyx are all already patched but may need more tweaking, I'd be grateful for the output of these.
</p>
</blockquote>
<p>
The failing doctests are all in <a class="attachment" href="https://trac.sagemath.org/attachment/ticket/9958/Doctest_failures_Sage-4.7.2.alpha2_Linux_x86_SSE3-individual_tests_rerun.log" title="Attachment 'Doctest_failures_Sage-4.7.2.alpha2_Linux_x86_SSE3-individual_tests_rerun.log' in Ticket #9958">Doctest_failures_Sage-4.7.2.alpha2_Linux_x86_SSE3-individual_tests_rerun.log</a><a class="trac-rawlink" href="https://trac.sagemath.org/raw-attachment/ticket/9958/Doctest_failures_Sage-4.7.2.alpha2_Linux_x86_SSE3-individual_tests_rerun.log" title="Download"></a>.
</p>
<blockquote class="citation">
<p>
[...] The rest look like <a class="closed ticket" href="https://trac.sagemath.org/ticket/11339" title="defect: Refcounting for Singular rings (closed: fixed)">#11339</a> material.
</p>
</blockquote>
<p>
I'm just to apply the patches from there; the machine is dead slow, doing a <code>./sage -ba-force</code> atm to exclude missing extension module dependencies, as I've not built from scratch.
</p>
TicketfbisseyMon, 29 Aug 2011 06:50:48 GMT
https://trac.sagemath.org/ticket/9958#comment:103
https://trac.sagemath.org/ticket/9958#comment:103
<p>
I was too fast. Some of the failures are already reported by Steve. I may try to update the patch set a bit tonight.
</p>
TicketleifMon, 29 Aug 2011 07:00:33 GMT
https://trac.sagemath.org/ticket/9958#comment:104
https://trac.sagemath.org/ticket/9958#comment:104
<p>
Just experienced some new(?) error when cloning the Sage library for <a class="closed ticket" href="https://trac.sagemath.org/ticket/11339" title="defect: Refcounting for Singular rings (closed: fixed)">#11339</a>:
</p>
<pre class="wiki">...
byte-compiling /home/leif/Sage/sage-4.7.2.alpha2-gcc-4.5.1/local/lib/python2.7/site-packages/sage/misc/copying.py to copying.pyc
byte-compiling /home/leif/Sage/sage-4.7.2.alpha2-gcc-4.5.1/local/lib/python2.7/site-packages/sage/version.py to version.pyc
running install_egg_info
Removing /home/leif/Sage/sage-4.7.2.alpha2-gcc-4.5.1/local/lib/python2.7/site-packages/sage-0.0.0-py2.7.egg-info
Writing /home/leif/Sage/sage-4.7.2.alpha2-gcc-4.5.1/local/lib/python2.7/site-packages/sage-0.0.0-py2.7.egg-info
Exception in thread Thread-4 (most likely raised during interpreter shutdown):
Traceback (most recent call last):
File "/home/leif/Sage/sage-4.7.2.alpha2-gcc-4.5.1/local/lib/python/threading.py", line 530, in __bootstrap_inner
File "/home/leif/Sage/sage-4.7.2.alpha2-gcc-4.5.1/local/lib/python/threading.py", line 483, in run
File "/home/leif/Sage/sage-4.7.2.alpha2-gcc-4.5.1/local/lib/python/multiprocessing/pool.py", line 272, in _handle_workers
<type 'exceptions.TypeError'>: 'NoneType' object is not callable
Exception in thread Thread-1 (most likely raised during interpreter shutdown):
Traceback (most recent call last):
File "/home/leif/Sage/sage-4.7.2.alpha2-gcc-4.5.1/local/lib/python/threading.py", line 530, in __bootstrap_inner
File "/home/leif/Sage/sage-4.7.2.alpha2-gcc-4.5.1/local/lib/python/threading.py", line 483, in run
File "/home/leif/Sage/sage-4.7.2.alpha2-gcc-4.5.1/local/lib/python/multiprocessing/pool.py", line 272, in _handle_workers
<type 'exceptions.TypeError'>: 'NoneType' object is not callable
real 1m35.816s
user 1m35.794s
sys 0m5.648s
After cloning, if you change any Sage library files and want to rebuild
the html version of the reference manual, use the command
sage -docbuild reference html
(after running 'sage -b').
...
</pre>
TicketleifMon, 29 Aug 2011 07:09:55 GMT
https://trac.sagemath.org/ticket/9958#comment:105
https://trac.sagemath.org/ticket/9958#comment:105
<p>
Waaaaaah!
</p>
<pre class="wiki">leif@californication:~/Sage/sage-4.7.2.alpha2-gcc-4.5.1/devel/sage-9958-11339$ ../../sage -hg import -v ~/Sage/patches/trac_11339_refcount_singular_polynomials.patch
applying /home/leif/Sage/patches/trac_11339_refcount_singular_polynomials.patch
patching file sage/rings/polynomial/multi_polynomial_libsingular.pxd
patching file sage/rings/polynomial/multi_polynomial_libsingular.pyx
Hunk #13 FAILED at 727
Hunk #14 FAILED at 741
Hunk #15 FAILED at 763
Hunk #16 FAILED at 773
Hunk #17 FAILED at 825
Hunk #18 succeeded at 910 with fuzz 2 (offset 72 lines).
Hunk #19 FAILED at 875
Hunk #20 succeeded at 961 (offset 75 lines).
Hunk #21 succeeded at 980 (offset 75 lines).
Hunk #22 succeeded at 1006 (offset 75 lines).
...
</pre><p>
(The first patch still applies, with offsets.)
</p>
<p>
I'm not going to fix that...
</p>
TicketstrogdonMon, 29 Aug 2011 13:26:15 GMT
https://trac.sagemath.org/ticket/9958#comment:106
https://trac.sagemath.org/ticket/9958#comment:106
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:101" title="Comment 101">fbissey</a>:
</p>
<blockquote class="citation">
<p>
Thanks leif. Nothing worrying there. There is a patch for sage/geometry/polyhedra.py but obviously it doesn't apply properly anymore. transcendantal.py, randstate.pyx and intlist.pyx are all already patched but may need more tweaking, I'd be grateful for the output of these.
</p>
</blockquote>
<p>
I'm sure the polyhedra.py patch was needed at one time but it now (?) appears that
</p>
<pre class="wiki">
@@ -4946,7 +4946,7 @@
sage: proj = ProjectionFuncStereographic([1.1,1.1,1.1])
sage: ppoints = [proj(vector(x)) for x in cube]
sage: ppoints[0]
- (0.0, 0.0)
+ (-1.92296268638e-15, -1.92296268638e-15)
"""
def __init__(self, projection_point):
"""
</pre><p>
from trac_9958-fixing_numericalnoise-part1.patch is no longer needed.
</p>
TicketfbisseyMon, 29 Aug 2011 13:39:00 GMT
https://trac.sagemath.org/ticket/9958#comment:107
https://trac.sagemath.org/ticket/9958#comment:107
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:106" title="Comment 106">strogdon</a>:
</p>
<blockquote class="citation">
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:101" title="Comment 101">fbissey</a>:
</p>
<blockquote class="citation">
<p>
Thanks leif. Nothing worrying there. There is a patch for sage/geometry/polyhedra.py but obviously it doesn't apply properly anymore. transcendantal.py, randstate.pyx and intlist.pyx are all already patched but may need more tweaking, I'd be grateful for the output of these.
</p>
</blockquote>
<p>
I'm sure the polyhedra.py patch was needed at one time but it now (?) appears that
</p>
<pre class="wiki">
@@ -4946,7 +4946,7 @@
sage: proj = ProjectionFuncStereographic([1.1,1.1,1.1])
sage: ppoints = [proj(vector(x)) for x in cube]
sage: ppoints[0]
- (0.0, 0.0)
+ (-1.92296268638e-15, -1.92296268638e-15)
"""
def __init__(self, projection_point):
"""
</pre><p>
from trac_9958-fixing_numericalnoise-part1.patch is no longer needed.
</p>
</blockquote>
<p>
You are right I am reading the test results backwards. It now seems to go to 0 properly. One less patch in the patch and one less worry.
</p>
TicketkcrismanMon, 29 Aug 2011 19:37:16 GMT
https://trac.sagemath.org/ticket/9958#comment:108
https://trac.sagemath.org/ticket/9958#comment:108
<p>
Okay, you can get a full list of current failure and what they looked like at <a class="ext-link" href="http://sage.math.washington.edu/home/kcrisman/Failures.txt"><span class="icon"></span>this link</a>. Some are definitely known above, but others may be unknown. The timeouts are probably just due to this machine (and the Maxima one), but others I don't know whether they are here or <a class="closed ticket" href="https://trac.sagemath.org/ticket/11339" title="defect: Refcounting for Singular rings (closed: fixed)">#11339</a>.
</p>
TicketfbisseyMon, 29 Aug 2011 19:54:27 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-fixing_numericalnoise-part1_p1.patch</em>
</li>
</ul>
<p>
fixing numerical noise part 1 - updated 20110830
</p>
TicketfbisseyMon, 29 Aug 2011 19:59:36 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:109
https://trac.sagemath.org/ticket/9958#comment:109
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=109">diff</a>)
</li>
</ul>
<p>
Updated the first patch for polyhedra.py, split transcendental.py in its own patch. I lowered the precision tested in the last numbers so that results from 32 and 64 bits are not different.
</p>
TicketfbisseyMon, 29 Aug 2011 20:10:36 GMT
https://trac.sagemath.org/ticket/9958#comment:110
https://trac.sagemath.org/ticket/9958#comment:110
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:108" title="Comment 108">kcrisman</a>:
</p>
<blockquote class="citation">
<p>
Okay, you can get a full list of current failure and what they looked like at <a class="ext-link" href="http://sage.math.washington.edu/home/kcrisman/Failures.txt"><span class="icon"></span>this link</a>. Some are definitely known above, but others may be unknown. The timeouts are probably just due to this machine (and the Maxima one), but others I don't know whether they are here or <a class="closed ticket" href="https://trac.sagemath.org/ticket/11339" title="defect: Refcounting for Singular rings (closed: fixed)">#11339</a>.
</p>
</blockquote>
<p>
You have some nasty stuff in polyhedra.py
</p>
<pre class="wiki">File "/Users/student/Desktop/sage-4.7.2.alpha1/devel/sage/sage/geometry/polyhedra.py", line 5250:
sage: _.show()
Exception raised:
Traceback (most recent call last):
File "/Users/student/Desktop/sage-4.7.2.alpha1/local/bin/ncadoctest.py", line 1231, in run_one_test
self.run_one_example(test, example, filename, compileflags)
File "/Users/student/Desktop/sage-4.7.2.alpha1/local/bin/sagedoctest.py", line 38, in run_one_example
OrigDocTestRunner.run_one_example(self, test, example, filename, compileflags)
File "/Users/student/Desktop/sage-4.7.2.alpha1/local/bin/ncadoctest.py", line 1172, in run_one_example
compileflags, 1) in test.globs
File "<doctest __main__.example_183[5]>", line 1, in <module>
_.show()###line 5250:
sage: _.show()
File "/Users/student/Desktop/sage-4.7.2.alpha1/local/lib/python/site-packages/sage/misc/displayhook.py", line 174, in displayhook
print_obj(sys.stdout, obj)
File "/Users/student/Desktop/sage-4.7.2.alpha1/local/lib/python/site-packages/sage/misc/displayhook.py", line 142, in print_obj
print >>out_stream, `obj`
File "base.pyx", line 80, in sage.plot.plot3d.base.Graphics3d.__repr__ (sage/plot/plot3d/base.c:2526)
File "base.pyx", line 1124, in sage.plot.plot3d.base.Graphics3d.show (sage/plot/plot3d/base.c:10344)
File "base.pyx", line 663, in sage.plot.plot3d.base.Graphics3d.export_jmol (sage/plot/plot3d/base.c:5867)
File "/Users/student/Desktop/sage-4.7.2.alpha1/local/lib/python2.7/zipfile.py", line 1138, in writestr
self.fp.write(zinfo.FileHeader())
File "/Users/student/Desktop/sage-4.7.2.alpha1/local/lib/python2.7/zipfile.py", line 348, in FileHeader
len(filename), len(extra))
error: integer out of range for 'H' format code
</pre><p>
You get an extra digit in randstate compared to x86 :( [note to self it is in numerical_noise_part4].
</p>
<p>
sage-inspect looks bad :( but not hopeless. The message is just overly long. I will have to postpone the rest for later.
</p>
TicketfbisseyMon, 29 Aug 2011 22:17:57 GMT
https://trac.sagemath.org/ticket/9958#comment:111
https://trac.sagemath.org/ticket/9958#comment:111
<p>
sage-inspect is actually an example merged in 4.7.2.alpha1 from <a class="closed ticket" href="https://trac.sagemath.org/ticket/11298" title="defect: Extend the capabilities of Sage's introspection (closed: fixed)">#11298</a> it may not be a python2.7 problems unless you already tested that ticket. I wonder if <a class="closed ticket" href="https://trac.sagemath.org/ticket/11734" title="defect: sage_wraps should only read the sources of wrapped functions when needed. (closed: fixed)">#11734</a> would help, the result should be python code but you have cython code instead.
</p>
TicketfbisseyMon, 29 Aug 2011 22:26:29 GMT
https://trac.sagemath.org/ticket/9958#comment:112
https://trac.sagemath.org/ticket/9958#comment:112
<p>
In polyhedra.py it looks like you have a problem with jmol printing 3D images to file. It involves zip, looking at the pyx there is an instance of testing zip. Could you paste the cython code that produced sage/plot/plot3d/base.c:5867 ?
</p>
TicketfbisseyMon, 29 Aug 2011 23:04:30 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-32_64bit_messages.patch</em>
</li>
</ul>
<p>
fix some 32/64 bits messages
</p>
TicketfbisseyMon, 29 Aug 2011 23:05:01 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-fix-real_mpfr.patch</em>
</li>
</ul>
<p>
all fixes to real_mpfr.pyx split from everything else
</p>
TicketfbisseyMon, 29 Aug 2011 23:05:49 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-mixedfix_p1.patch</em>
</li>
</ul>
<p>
split real_mpfr.pyx from the mixed fixes patch
</p>
TicketfbisseyMon, 29 Aug 2011 23:09:33 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:113
https://trac.sagemath.org/ticket/9958#comment:113
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=113">diff</a>)
</li>
</ul>
<p>
Updated the patch set again. split real_mpfr.pyx from the mixedfix patch. The 32/64 bits issues reported is separate from the message that was already patched. Added a patch to fix 32/64 bit messages.
</p>
TicketkcrismanTue, 30 Aug 2011 16:04:03 GMT
https://trac.sagemath.org/ticket/9958#comment:114
https://trac.sagemath.org/ticket/9958#comment:114
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:112" title="Comment 112">fbissey</a>:
</p>
<blockquote class="citation">
<p>
In polyhedra.py it looks like you have a problem with jmol printing 3D images to file. It involves zip, looking at the pyx there is an instance of testing zip. Could you paste the cython code that produced sage/plot/plot3d/base.c:5867 ?
</p>
</blockquote>
<pre class="wiki"> /* "sage/plot/plot3d/base.pyx":663
* f.write("isosurface fullylit; pmesh o* fullylit; set antialiasdisplay on;\n")
*
* render_params.output_archive.writestr('SCRIPT', f.getvalue()) # <<<<<<<<<<<<<<
* render_params.output_archive.close()
*
*/
__pyx_t_3 = PyObject_GetAttr(__pyx_v_render_params, __pyx_n_s__output_archive); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 663; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_2 = PyObject_GetAttr(__pyx_t_3, __pyx_n_s__writestr); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 663; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_2);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_3 = PyObject_GetAttr(__pyx_v_f, __pyx_n_s__getvalue); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 663; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_3);
__pyx_t_4 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 663; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
__pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 663; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(((PyObject *)__pyx_t_3));
__Pyx_INCREF(((PyObject *)__pyx_n_s__SCRIPT));
PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__SCRIPT));
__Pyx_GIVEREF(((PyObject *)__pyx_n_s__SCRIPT));
PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_4);
__Pyx_GIVEREF(__pyx_t_4);
__pyx_t_4 = 0;
__pyx_t_4 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 663; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
</pre><p>
5867 is
</p>
<pre class="wiki"> __pyx_t_4 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 663; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
</pre><hr />
<p>
I was also surprised by the polyhedra.py additional weirdness. Anything I can do to help identify it? Warning: I'm planning on building and testing alpha2 <em>without</em> Python 2.7 now, which will tie up most resources on this machine for a couple days.
</p>
TicketstrogdonWed, 31 Aug 2011 02:10:06 GMT
https://trac.sagemath.org/ticket/9958#comment:115
https://trac.sagemath.org/ticket/9958#comment:115
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:109" title="Comment 109">fbissey</a>:
</p>
<blockquote class="citation">
<p>
Updated the first patch for polyhedra.py, split transcendental.py in its own patch. I lowered the precision tested in the last numbers so that results from 32 and 64 bits are not different.
</p>
</blockquote>
<p>
Here the fix_transcendental patch fixed the associated test on x86 but now the test fails on amd64:
</p>
<pre class="wiki">sage -t -long -force_lib devel/sage-main/sage/functions/transcendental.py
**********************************************************************
File "/storage/sage/sage-4.7.2.alpha2/devel/sage-main/sage/functions/transcendental.p
y", line 83:
sage: w = exponential_integral_1(2,4); w
Expected:
[0.04890051070806112, 0.0037793524098489067, 0.00036008245216265873, 3.7665622843
924...e-05]
Got:
[0.04890051070806112, 0.0037793524098489063, 0.00036008245216265873, 3.7665622843
924534e-05]
**********************************************************************
</pre><p>
This is odd! I wonder what changed? Previously this test must have returned ...67 and not ...63 for it to pass.
</p>
TicketfbisseyWed, 31 Aug 2011 02:42:02 GMT
https://trac.sagemath.org/ticket/9958#comment:116
https://trac.sagemath.org/ticket/9958#comment:116
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:115" title="Comment 115">strogdon</a>:
</p>
<blockquote class="citation">
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:109" title="Comment 109">fbissey</a>:
</p>
<blockquote class="citation">
<p>
Updated the first patch for polyhedra.py, split transcendental.py in its own patch. I lowered the precision tested in the last numbers so that results from 32 and 64 bits are not different.
</p>
</blockquote>
<p>
Here the fix_transcendental patch fixed the associated test on x86 but now the test fails on amd64:
</p>
<pre class="wiki">sage -t -long -force_lib devel/sage-main/sage/functions/transcendental.py
**********************************************************************
File "/storage/sage/sage-4.7.2.alpha2/devel/sage-main/sage/functions/transcendental.p
y", line 83:
sage: w = exponential_integral_1(2,4); w
Expected:
[0.04890051070806112, 0.0037793524098489067, 0.00036008245216265873, 3.7665622843
924...e-05]
Got:
[0.04890051070806112, 0.0037793524098489063, 0.00036008245216265873, 3.7665622843
924534e-05]
**********************************************************************
</pre><p>
This is odd! I wonder what changed? Previously this test must have returned ...67 and not ...63 for it to pass.
</p>
</blockquote>
<p>
It's my fault for not noticing this difference between 32 and 64 bit results. It was there before but I didn't notice it. I thought the last number was the only thing different so when I truncated the last number to the common digits I dropped the difference between 32 and 64 bit. So it is entirely my fault.
</p>
TicketfbisseyThu, 01 Sep 2011 23:36:57 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-fix_transcendental.patch</em>
</li>
</ul>
<p>
fixing numerical noise in transcendental.py- split from numerical noise pt1 - updated 2011092
</p>
TicketfbisseyThu, 01 Sep 2011 23:37:35 GMT
https://trac.sagemath.org/ticket/9958#comment:117
https://trac.sagemath.org/ticket/9958#comment:117
<p>
transcendental patch updated.
</p>
TicketleifFri, 02 Sep 2011 01:15:48 GMT
https://trac.sagemath.org/ticket/9958#comment:118
https://trac.sagemath.org/ticket/9958#comment:118
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:117" title="Comment 117">fbissey</a>:
</p>
<blockquote class="citation">
<p>
transcendental patch updated.
</p>
</blockquote>
<p>
Literally?
</p>
TicketfbisseyFri, 02 Sep 2011 01:33:50 GMT
https://trac.sagemath.org/ticket/9958#comment:119
https://trac.sagemath.org/ticket/9958#comment:119
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:118" title="Comment 118">leif</a>:
</p>
<blockquote class="citation">
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:117" title="Comment 117">fbissey</a>:
</p>
<blockquote class="citation">
<p>
transcendental patch updated.
</p>
</blockquote>
<p>
Literally?
</p>
</blockquote>
<p>
Literally.
</p>
TicketkcrismanFri, 02 Sep 2011 12:04:43 GMT
https://trac.sagemath.org/ticket/9958#comment:120
https://trac.sagemath.org/ticket/9958#comment:120
<p>
Just for reference, on the PPC machine all tests pass with alpha2 except three timeouts which are long-standing (I didn't bother to set <code>SAGE_TIMEOUT_LONG</code> but I've seen these many times).
</p>
<p>
So all the rest are due to this ticket or <a class="closed ticket" href="https://trac.sagemath.org/ticket/11339" title="defect: Refcounting for Singular rings (closed: fixed)">#11339</a>.
</p>
<p>
Would it be helpful for me to do <a class="closed ticket" href="https://trac.sagemath.org/ticket/11339" title="defect: Refcounting for Singular rings (closed: fixed)">#11339</a> on this new build (without Python 2.7), or is that in limbo right now anyway? Alternately, is there any way to decouple this ticket from that one?
</p>
TicketfbisseyFri, 02 Sep 2011 12:57:55 GMT
https://trac.sagemath.org/ticket/9958#comment:121
https://trac.sagemath.org/ticket/9958#comment:121
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:120" title="Comment 120">kcrisman</a>:
</p>
<blockquote class="citation">
<p>
Just for reference, on the PPC machine all tests pass with alpha2 except three timeouts which are long-standing (I didn't bother to set <code>SAGE_TIMEOUT_LONG</code> but I've seen these many times).
</p>
<p>
So all the rest are due to this ticket or <a class="closed ticket" href="https://trac.sagemath.org/ticket/11339" title="defect: Refcounting for Singular rings (closed: fixed)">#11339</a>.
</p>
</blockquote>
<p>
That's a very useful point of reference. Thank you for providing it.
</p>
<blockquote class="citation">
<p>
Would it be helpful for me to do <a class="closed ticket" href="https://trac.sagemath.org/ticket/11339" title="defect: Refcounting for Singular rings (closed: fixed)">#11339</a> on this new build (without Python 2.7), or is that in limbo right now anyway? Alternately, is there any way to decouple this ticket from that one?
</p>
</blockquote>
<p>
Technically you can apply <a class="closed ticket" href="https://trac.sagemath.org/ticket/11339" title="defect: Refcounting for Singular rings (closed: fixed)">#11339</a> without python 2.7 - the behavior we want to correct is only revealed when we use python 2.7 but I guess it would be useful to know if there are any side effects if you apply the patch on a python 2.6 install. Bear in mind that the current patch are not necessarily the best solution to the problem, what's more they are a whack a mole game. Fix something here and some new fault appears in a completely unexpected location.
</p>
TicketfbisseyTue, 04 Oct 2011 21:14:01 GMT
https://trac.sagemath.org/ticket/9958#comment:122
https://trac.sagemath.org/ticket/9958#comment:122
<p>
I will update the python spkg to 2.7.3 when it will be released. 2.7.3 will include the patch to python that we have been carrying in sage for the longest time. See:
<a class="ext-link" href="http://bugs.python.org/issue7689"><span class="icon"></span>http://bugs.python.org/issue7689</a>
</p>
<p>
Does anyone know if the apocalypse is about to happen?
</p>
TicketjasonTue, 18 Oct 2011 18:28:02 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:123
https://trac.sagemath.org/ticket/9958#comment:123
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=123">diff</a>)
</li>
</ul>
<p>
Fixes <a class="closed ticket" href="https://trac.sagemath.org/ticket/1159" title="defect: [reported upstream] Bug in python range (closed: duplicate)">#1159</a>, according to that ticket.
</p>
TicketfbisseyTue, 01 Nov 2011 23:18:48 GMT
https://trac.sagemath.org/ticket/9958#comment:124
https://trac.sagemath.org/ticket/9958#comment:124
<p>
That's really weird. Some of the hashing problems I encounter with python 2.7 are almost the same as reported in <a class="ext-link" href="http://trac.sagemath.org/sage_trac/ticket/4957#comment:3"><span class="icon"></span>http://trac.sagemath.org/sage_trac/ticket/4957#comment:3</a>
</p>
<pre class="wiki">sage -t -long -force_lib "devel/sage-main/sage/rings/integer.pyx"
**********************************************************************
File "/usr/share/sage/devel/sage-main/sage/rings/integer.pyx", line 3046:
sage: n = -920390823904823094890238490238484; n.__hash__()
Expected:
6874330978542788722
Got:
-2623069716
**********************************************************************
File "/usr/share/sage/devel/sage-main/sage/rings/integer.pyx", line 3061:
sage: hash(n)
Expected:
-9223372036854767616
Got:
8192
**********************************************************************
File "/usr/share/sage/devel/sage-main/sage/rings/integer.pyx", line 3064:
sage: hash(n) == hash(int(n))
Expected:
True
Got:
False
**********************************************************************
</pre>
TicketfbisseyWed, 02 Nov 2011 01:48:48 GMT
https://trac.sagemath.org/ticket/9958#comment:125
https://trac.sagemath.org/ticket/9958#comment:125
<p>
With python-2.6:
</p>
<pre class="wiki">sage: n=2^63+2^13
sage: n
9223372036854784000
sage: int(n)
9223372036854784000L
sage: hash(n)
-9223372036854767616
sage: hash(int(n))
-9223372036854767616
</pre><p>
with python-2.7
</p>
<pre class="wiki">sage: n=2^63+2^13
sage: n
9223372036854784000
sage: hash(n)
8192
sage: int(n)
9223372036854784000L
sage: hash(int(n))
-9223372036854767616
</pre><p>
Furthermore in both case:
</p>
<pre class="wiki">sage: type(n)
<type 'sage.rings.integer.Integer'>
sage: type(int(n))
<type 'long'>
</pre><p>
So I would expect different hashes naively.
</p>
TicketfbisseyWed, 02 Nov 2011 02:02:57 GMT
https://trac.sagemath.org/ticket/9958#comment:126
https://trac.sagemath.org/ticket/9958#comment:126
<p>
Regarding
</p>
<pre class="wiki">sage -t -long -force_lib "devel/sage-main/sage/combinat/words/nfactor_enumerable_word.py"
**********************************************************************
File "/usr/share/sage/devel/sage-main/sage/combinat/words/nfactor_enumerable_word.py", line 20:
sage: it.next()
Expected:
word: 6456
Got:
word: 5645
**********************************************************************
File "/usr/share/sage/devel/sage-main/sage/combinat/words/nfactor_enumerable_word.py", line 22:
sage: it.next()
Expected:
word: 5645
Got:
word: 6456
**********************************************************************
</pre><p>
With python-2.7
</p>
<pre class="wiki">sage: w = Word([4,5,6])^7
sage: w
word: 456456456456456456456
sage: it = w.factor_iterator(4)
sage: it.next()
word: 5645
sage: it.next()
word: 6456
sage: it.next()
word: 4564
</pre><p>
with python-2.6
</p>
<pre class="wiki">sage: w = Word([4,5,6])^7
sage: w
word: 456456456456456456456
sage: it = w.factor_iterator(4)
sage: it.next()
word: 6456
sage: it.next()
word: 5645
sage: it.next()
word: 4564
</pre><p>
So it looks like with python 2.6 we where moving in the series of number with a stride 2 while python 2.7 works through the sequence with a stride 1.
</p>
TicketstrogdonWed, 02 Nov 2011 05:01:46 GMT
https://trac.sagemath.org/ticket/9958#comment:127
https://trac.sagemath.org/ticket/9958#comment:127
<p>
Here on x86 I get only two failures:
</p>
<pre class="wiki">
sage -t -long -force_lib devel/sage-main/sage/misc/randstate.pyx
**********************************************************************
File "/storage/sage/sage-4.7.2.rc0/devel/sage-main/sage/misc/randstate.pyx", line 61:
sage: rtest()
Expected:
(978, 0.184109262667515, -3*x^2 - 1/12, (4,5), [ 0, 1, 1, 0, 0 ], 1161603091, 603
59, 0.83350776541997362)
Got:
(978, 0.184109262667515, -3*x^2 - 1/12, (4,5), [ 0, 1, 1, 0, 0 ], 1161603091, 603
59, 0.8335077654199736)
**********************************************************************
</pre><p>
and
</p>
<pre class="wiki">sage -t -long -force_lib devel/sage-main/sage/matrix/matrix_double_dense.pyx
**********************************************************************
File "/storage/sage/sage-4.7.2.rc0/devel/sage-main/sage/matrix/matrix_double_dense.py
x", line 1046:
sage: A.singular_values(eps='junk')
Expected:
Traceback (most recent call last):
...
ValueError: invalid literal for float(): junk
Got:
Traceback (most recent call last):
File "/storage/sage/sage-4.7.2.rc0/local/bin/ncadoctest.py", line 1231, in run_
one_test
self.run_one_example(test, example, filename, compileflags)
File "/storage/sage/sage-4.7.2.rc0/local/bin/sagedoctest.py", line 38, in run_o
ne_example
OrigDocTestRunner.run_one_example(self, test, example, filename, compileflags
)
File "/storage/sage/sage-4.7.2.rc0/local/bin/ncadoctest.py", line 1172, in run_
one_example
compileflags, 1) in test.globs
File "<doctest __main__.example_19[37]>", line 1, in <module>
A.singular_values(eps='junk')###line 1046:
sage: A.singular_values(eps='junk')
File "matrix_double_dense.pyx", line 1075, in sage.matrix.matrix_double_dense.M
atrix_double_dense.singular_values (sage/matrix/matrix_double_dense.c:6338)
eps = RDF(eps)
File "parent.pyx", line 988, in sage.structure.parent.Parent.__call__ (sage/str
ucture/parent.c:7326)
File "coerce_maps.pyx", line 82, in sage.structure.coerce_maps.DefaultConvertMa
p_unique._call_ (sage/structure/coerce_maps.c:3268)
File "coerce_maps.pyx", line 77, in sage.structure.coerce_maps.DefaultConvertMa
p_unique._call_ (sage/structure/coerce_maps.c:3171)
File "real_double.pyx", line 548, in sage.rings.real_double.RealDoubleElement._
_init__ (sage/rings/real_double.c:5567)
ValueError: could not convert string to float: junk
**********************************************************************
</pre><p>
The latter also fails here the same way on amd64 and is documented on sage-devel
</p>
<p>
<a class="ext-link" href="http://groups.google.com/group/sage-devel/browse_thread/thread/8e1d7f665ac5be37"><span class="icon"></span>http://groups.google.com/group/sage-devel/browse_thread/thread/8e1d7f665ac5be37</a>
</p>
<p>
but with some slight differences.
</p>
TicketfbisseyWed, 02 Nov 2011 11:41:04 GMT
https://trac.sagemath.org/ticket/9958#comment:128
https://trac.sagemath.org/ticket/9958#comment:128
<p>
OK Steve, I got the matrix_double_dense but you don't get the numerical noise. I believe the noise may come from python-2.7.2. Interesting that the hashing and enumeration problem are 64bit only. I'll check on the mac.
</p>
TicketfbisseyWed, 02 Nov 2011 22:37:12 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958_junk_valueerror.patch</em>
</li>
</ul>
<p>
Fix doctest in matrix_double_dense.pyx about junk
</p>
TicketfbisseyWed, 02 Nov 2011 22:38:55 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:129
https://trac.sagemath.org/ticket/9958#comment:129
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=129">diff</a>)
</li>
</ul>
<p>
New patch to fix the message about junk.
</p>
TicketfbisseyThu, 03 Nov 2011 01:52:16 GMTdependencies changed
https://trac.sagemath.org/ticket/9958#comment:130
https://trac.sagemath.org/ticket/9958#comment:130
<ul>
<li><strong>dependencies</strong>
changed from <em>#11156 #11236 #11244 #11264 #11339 #11363 #11376</em> to <em>#11156 #11236 #11244 #11264 #11339 #11363 #11376 #11986</em>
</li>
</ul>
<p>
I have now split the hashing issue in <a class="closed ticket" href="https://trac.sagemath.org/ticket/11986" title="defect: inconsistent integer hashing on 64bit systems with python 2.7 (closed: fixed)">#11986</a>
</p>
TicketfbisseyThu, 03 Nov 2011 02:13:15 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958_enumerate64bit.patch</em>
</li>
</ul>
<p>
fix the doctest on enumeration order for 64bit system
</p>
TicketfbisseyThu, 03 Nov 2011 02:15:25 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:131
https://trac.sagemath.org/ticket/9958#comment:131
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=131">diff</a>)
</li>
</ul>
<p>
One more patch added to fix combinat/words/nfactor_enumerable_word.py on 64 bit system. I believe is output is equivalent in both case so it is not important.
</p>
TicketjdemeyerThu, 03 Nov 2011 21:16:30 GMTdependencies, description changed
https://trac.sagemath.org/ticket/9958#comment:132
https://trac.sagemath.org/ticket/9958#comment:132
<ul>
<li><strong>dependencies</strong>
changed from <em>#11156 #11236 #11244 #11264 #11339 #11363 #11376 #11986</em> to <em>#11986</em>
</li>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=132">diff</a>)
</li>
</ul>
<p>
Removed old dependencies.
</p>
TicketjdemeyerThu, 03 Nov 2011 21:24:31 GMTmilestone set
https://trac.sagemath.org/ticket/9958#comment:133
https://trac.sagemath.org/ticket/9958#comment:133
<ul>
<li><strong>milestone</strong>
set to <em>sage-4.8</em>
</li>
</ul>
<p>
The spkg needs to be rebased to <a class="closed ticket" href="https://trac.sagemath.org/ticket/11447" title="defect: python spkg build fails on various Debian systems (closed: fixed)">#11447</a>.
</p>
TicketjdemeyerThu, 03 Nov 2011 21:26:35 GMT
https://trac.sagemath.org/ticket/9958#comment:134
https://trac.sagemath.org/ticket/9958#comment:134
<p>
Permissions is the spkg should be 0644 (or 0755 for executables), currently many files are 0640 or 0750.
</p>
TicketfbisseyFri, 04 Nov 2011 01:12:44 GMT
https://trac.sagemath.org/ticket/9958#comment:135
https://trac.sagemath.org/ticket/9958#comment:135
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:133" title="Comment 133">jdemeyer</a>:
</p>
<blockquote class="citation">
<p>
The spkg needs to be rebased to <a class="closed ticket" href="https://trac.sagemath.org/ticket/11447" title="defect: python spkg build fails on various Debian systems (closed: fixed)">#11447</a>.
</p>
</blockquote>
<p>
I looked at that before making my spkg. I believe the strategy used in <a class="closed ticket" href="https://trac.sagemath.org/ticket/11447" title="defect: python spkg build fails on various Debian systems (closed: fixed)">#11447</a> is in python-2.7. Someone with a debian system proves me wrong but I think that works out of the box.
</p>
TicketleifFri, 04 Nov 2011 01:48:05 GMT
https://trac.sagemath.org/ticket/9958#comment:136
https://trac.sagemath.org/ticket/9958#comment:136
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:135" title="Comment 135">fbissey</a>:
</p>
<blockquote class="citation">
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:133" title="Comment 133">jdemeyer</a>:
</p>
<blockquote class="citation">
<p>
The spkg needs to be rebased to <a class="closed ticket" href="https://trac.sagemath.org/ticket/11447" title="defect: python spkg build fails on various Debian systems (closed: fixed)">#11447</a>.
</p>
</blockquote>
<p>
I looked at that before making my spkg. I believe the strategy used in <a class="closed ticket" href="https://trac.sagemath.org/ticket/11447" title="defect: python spkg build fails on various Debian systems (closed: fixed)">#11447</a> is in python-2.7. Someone with a debian system proves me wrong but I think that works out of the box.
</p>
</blockquote>
<p>
Well, we did take the patch from Python upstream, but IIRC there are further changes to <code>spkg-install</code>, and the new spkg needs the previous one to be mentioned in <code>SPKG.txt</code> anyway (to pass the merger's sanity check).
</p>
TicketleifFri, 04 Nov 2011 02:03:06 GMT
https://trac.sagemath.org/ticket/9958#comment:137
https://trac.sagemath.org/ticket/9958#comment:137
<p>
Indeed, there've been <strong>a lot of</strong> changes inbetween:
</p>
<div class="wiki-code"><div xmlns="http://www.w3.org/1999/xhtml" class="diff">
<ul class="entries">
<li class="entry">
<h2>
<a>spkg-install</a>
</h2>
<pre>diff -Nu python-2.7.1/spkg-install python-2.6.4.p11/spkg-install</pre>
<table class="trac-diff inline" summary="Differences" cellspacing="0">
<colgroup><col class="lineno" /><col class="lineno" /><col class="content" /></colgroup>
<thead>
<tr>
<th title="File python-2.7.1/spkg-install 2011-05-20 05:41:41.000000000 +0200">
old
</th>
<th title="File python-2.6.4.p11/spkg-install 2011-07-05 10:46:40.000000000 +0200">
new
</th>
<td><em></em> </td>
</tr>
</thead>
<tbody class="unmod">
<tr>
<th>5</th><th>5</th><td class="l"><span></span></td>
</tr><tr>
<th>6</th><th>6</th><td class="l"><span>CUR=`pwd`</span></td>
</tr><tr>
<th>7</th><th>7</th><td class="l"><span></span></td>
</tr>
</tbody><tbody class="mod">
<tr class="first">
<th>8</th><th> </th><td class="l"><span>if [ <del>"$SAGE_LOCAL" = "</del>" ]; then</span></td>
</tr><tr>
<th>9</th><th> </th><td class="l"><span> <del>echo "SAGE_LOCAL undefined ... exiting";</del></span></td>
</tr><tr>
<th>10</th><th> </th><td class="l"><span> <del>echo</del> "Maybe run 'sage -sh'?"</span></td>
</tr><tr>
<th>11</th><th> </th><td class="l"><span> <del></del>exit 1</span></td>
</tr>
<tr>
<th> </th><th>8</th><td class="r"><span>if [ <ins>-z "$SAGE_LOCAL</ins>" ]; then</span></td>
</tr><tr>
<th> </th><th>9</th><td class="r"><span> <ins> echo >&2 "SAGE_LOCAL undefined ... exiting"</ins></span></td>
</tr><tr>
<th> </th><th>10</th><td class="r"><span> <ins> echo >&2</ins> "Maybe run 'sage -sh'?"</span></td>
</tr><tr class="last">
<th> </th><th>11</th><td class="r"><span> <ins> </ins>exit 1</span></td>
</tr>
</tbody><tbody class="unmod">
<tr>
<th>12</th><th>12</th><td class="l"><span>fi</span></td>
</tr><tr>
<th>13</th><th>13</th><td class="l"><span></span></td>
</tr><tr>
<th>14</th><th>14</th><td class="l"><span># PATCH</span></td>
</tr><tr>
<th>15</th><th>15</th><td class="l"><span></span></td>
</tr>
</tbody><tbody class="mod">
<tr class="first">
<th>16</th><th> </th><td class="l"><span># Due to issues building Python on Ubuntu 11.04, a file is patched</span></td>
</tr><tr>
<th>17</th><th> </th><td class="l"><span># on these systems. </span></td>
</tr>
<tr>
<th> </th><th>16</th><td class="r"><span># When building Python 2.6 on Debian and derivatives with multiarch,</span></td>
</tr><tr>
<th> </th><th>17</th><td class="r"><span># system library directories are not correctly setup. This patch</span></td>
</tr><tr>
<th> </th><th>18</th><td class="r"><span># fixes this, with no-op on other systems.</span></td>
</tr><tr>
<th> </th><th>19</th><td class="r"><span># The fix requires 'dpkg-architecture' to be installed there though</span></td>
</tr><tr>
<th> </th><th>20</th><td class="r"><span># (see below).</span></td>
</tr><tr>
<th> </th><th>21</th><td class="r"><span>echo "Patching src/setup.py for multiarch."</span></td>
</tr><tr>
<th> </th><th>22</th><td class="r"><span>patch -p0 < patches/setup.py.multiarch.patch</span></td>
</tr><tr>
<th> </th><th>23</th><td class="r"><span>if [ $? -ne 0 ]; then</span></td>
</tr><tr>
<th> </th><th>24</th><td class="r"><span> echo >&2 "Error patching src/setup.py"</span></td>
</tr><tr>
<th> </th><th>25</th><td class="r"><span> exit 1</span></td>
</tr><tr class="last">
<th> </th><th>26</th><td class="r"><span>fi</span></td>
</tr>
</tbody><tbody class="unmod">
<tr>
<th>18</th><th>27</th><td class="l"><span></span></td>
</tr>
</tbody><tbody class="mod">
<tr class="first">
<th>19</th><th> </th><td class="l"><span>if [ -f /etc/issue ] && grep "Ubuntu 11.04" /etc/issue ; then</span></td>
</tr><tr>
<th>20</th><th> </th><td class="l"><span> echo "Patching src/Modules/Setup.dist as this is Ubuntu 11.04"</span></td>
</tr><tr>
<th>21</th><th> </th><td class="l"><span> patch -p0 < patches/Modules.Setup.dist.patch</span></td>
</tr>
<tr>
<th> </th><th>28</th><td class="r"><span># Due to a python bug with Solaris </span></td>
</tr><tr>
<th> </th><th>29</th><td class="r"><span># see http://bugs.python.org/issue1759169</span></td>
</tr><tr>
<th> </th><th>30</th><td class="r"><span># it is necessary to apply a patch to configure.in</span></td>
</tr><tr>
<th> </th><th>31</th><td class="r"><span># then run autoconf. This not only generates a</span></td>
</tr><tr>
<th> </th><th>32</th><td class="r"><span># new 'configure' script, but some subdirectories too</span></td>
</tr><tr>
<th> </th><th>33</th><td class="r"><span># so these will be copied. </span></td>
</tr><tr>
<th> </th><th>34</th><td class="r"><span></span></td>
</tr><tr>
<th> </th><th>35</th><td class="r"><span>if [ "x`uname`" = xSunOS ] ; then</span></td>
</tr><tr>
<th> </th><th>36</th><td class="r"><span> echo "Applying a revised 'configure' script for Solaris"</span></td>
</tr><tr>
<th> </th><th>37</th><td class="r"><span> echo "See http://bugs.python.org/issue1759169"</span></td>
</tr><tr>
<th> </th><th>38</th><td class="r"><span> echo "http://trac.sagemath.org/sage_trac/ticket/7867"</span></td>
</tr><tr class="last">
<th> </th><th>39</th><td class="r"><span> cp -r patches/autom4te.cache patches/configure patches/configure.in src</span></td>
</tr>
</tbody><tbody class="unmod">
<tr>
<th>22</th><th>40</th><td class="l"><span> if [ $? -ne 0 ]; then</span></td>
</tr>
</tbody><tbody class="mod">
<tr class="first">
<th>23</th><th> </th><td class="l"><span> echo "Error patching src/Modules/Setup.dist"</span></td>
</tr>
<tr>
<th> </th><th>41</th><td class="r"><span> echo >&2 "Failed to apply the Solaris patches needed for"</span></td>
</tr><tr>
<th> </th><th>42</th><td class="r"><span> echo >&2 "http://bugs.python.org/issue1759169"</span></td>
</tr><tr class="last">
<th> </th><th>43</th><td class="r"><span> echo >&2 "http://trac.sagemath.org/sage_trac/ticket/7867"</span></td>
</tr>
</tbody><tbody class="unmod">
<tr>
<th>24</th><th>44</th><td class="l"><span> exit 1</span></td>
</tr><tr>
<th>25</th><th>45</th><td class="l"><span> fi</span></td>
</tr>
</tbody><tbody class="add">
<tr class="first">
<th> </th><th>46</th><td class="r"><ins> echo "Setting HAVE_FD_TRANSFER=0 for Solaris to allow"</ins></td>
</tr><tr>
<th> </th><th>47</th><td class="r"><ins> echo "the python module '_multiprocessing' to build" </ins></td>
</tr><tr>
<th> </th><th>48</th><td class="r"><ins> echo "See: http://trac.sagemath.org/sage_trac/ticket/8440"</ins></td>
</tr><tr>
<th> </th><th>49</th><td class="r"><ins> cp patches/setup.py src</ins></td>
</tr><tr>
<th> </th><th>50</th><td class="r"><ins> if [ $? -ne 0 ]; then</ins></td>
</tr><tr>
<th> </th><th>51</th><td class="r"><ins> echo >&2 "Failed to apply the Solaris patch needed for"</ins></td>
</tr><tr>
<th> </th><th>52</th><td class="r"><ins> echo >&2 "http://trac.sagemath.org/sage_trac/ticket/8440"</ins></td>
</tr><tr>
<th> </th><th>53</th><td class="r"><ins> exit 1</ins></td>
</tr><tr>
<th> </th><th>54</th><td class="r"><ins> fi</ins></td>
</tr><tr>
<th> </th><th>55</th><td class="r"><ins>fi </ins></td>
</tr><tr>
<th> </th><th>56</th><td class="r"><ins></ins></td>
</tr><tr>
<th> </th><th>57</th><td class="r"><ins></ins></td>
</tr><tr>
<th> </th><th>58</th><td class="r"><ins>cp patches/locale.py src/Lib/locale.py</ins></td>
</tr><tr>
<th> </th><th>59</th><td class="r"><ins>if [ $? -ne 0 ]; then</ins></td>
</tr><tr>
<th> </th><th>60</th><td class="r"><ins> echo >&2 "Error copying patched locale.py"</ins></td>
</tr><tr class="last">
<th> </th><th>61</th><td class="r"><ins> exit 1</ins></td>
</tr>
</tbody><tbody class="unmod">
<tr>
<th>26</th><th>62</th><td class="l"><span>fi</span></td>
</tr><tr>
<th>27</th><th>63</th><td class="l"><span></span></td>
</tr>
</tbody><tbody class="mod">
<tr class="first">
<th>28</th><th> </th><td class="l"><span>patch -p0 < patches/Lib.distutils.command.sdist.patch</span></td>
</tr>
<tr class="last">
<th> </th><th>64</th><td class="r"><span>cp patches/Makefile.pre.in src/Makefile.pre.in</span></td>
</tr>
</tbody><tbody class="unmod">
<tr>
<th>29</th><th>65</th><td class="l"><span>if [ $? -ne 0 ]; then</span></td>
</tr>
</tbody><tbody class="mod">
<tr class="first">
<th>30</th><th> </th><td class="l"><span> echo <del>"Error copying patched sdist.py</del>"</span></td>
</tr>
<tr class="last">
<th> </th><th>66</th><td class="r"><span> echo <ins>>&2 "Error copying patched Makefile.pre.in</ins>"</span></td>
</tr>
</tbody><tbody class="unmod">
<tr>
<th>31</th><th>67</th><td class="l"><span> exit 1</span></td>
</tr><tr>
<th>32</th><th>68</th><td class="l"><span>fi</span></td>
</tr><tr>
<th>33</th><th>69</th><td class="l"><span></span></td>
</tr>
</tbody><tbody class="mod">
<tr class="first">
<th>34</th><th> </th><td class="l"><span>patch -p0 < patches/Lib.socket.patch</span></td>
</tr>
<tr class="last">
<th> </th><th>70</th><td class="r"><span>cp patches/sdist.py src/Lib/distutils/command/sdist.py</span></td>
</tr>
</tbody><tbody class="unmod">
<tr>
<th>35</th><th>71</th><td class="l"><span>if [ $? -ne 0 ]; then</span></td>
</tr>
</tbody><tbody class="mod">
<tr class="first">
<th>36</th><th> </th><td class="l"><span> echo <del>"Error copying patched socke</del>t.py"</span></td>
</tr>
<tr class="last">
<th> </th><th>72</th><td class="r"><span> echo <ins>>&2 "Error copying patched sdis</ins>t.py"</span></td>
</tr>
</tbody><tbody class="unmod">
<tr>
<th>37</th><th>73</th><td class="l"><span> exit 1</span></td>
</tr><tr>
<th>38</th><th>74</th><td class="l"><span>fi</span></td>
</tr><tr>
<th>39</th><th>75</th><td class="l"><span></span></td>
</tr>
</tbody><tbody class="mod">
<tr class="first">
<th>40</th><th> </th><td class="l"><span>patch -p0 < patches/dynamic_class_copyreg_py.patch</span></td>
</tr>
<tr class="last">
<th> </th><th>76</th><td class="r"><span>cp patches/socket.py src/Lib/socket.py</span></td>
</tr>
</tbody><tbody class="unmod">
<tr>
<th>41</th><th>77</th><td class="l"><span>if [ $? -ne 0 ]; then</span></td>
</tr>
</tbody><tbody class="mod">
<tr class="first">
<th>42</th><th> </th><td class="l"><span> echo <del>"Error copying patched pickle</del>.py"</span></td>
</tr>
<tr class="last">
<th> </th><th>78</th><td class="r"><span> echo <ins>>&2 "Error copying patched socket</ins>.py"</span></td>
</tr>
</tbody><tbody class="unmod">
<tr>
<th>43</th><th>79</th><td class="l"><span> exit 1</span></td>
</tr><tr>
<th>44</th><th>80</th><td class="l"><span>fi</span></td>
</tr><tr>
<th>45</th><th>81</th><td class="l"><span></span></td>
</tr>
</tbody><tbody class="mod">
<tr class="first">
<th>46</th><th> </th><td class="l"><span>patch -p0 < patches/dynamic_class_copyreg_c.patch</span></td>
</tr>
<tr class="last">
<th> </th><th>82</th><td class="r"><span>cp patches/pickle.py src/Lib/pickle.py</span></td>
</tr>
</tbody><tbody class="unmod">
<tr>
<th>47</th><th>83</th><td class="l"><span>if [ $? -ne 0 ]; then</span></td>
</tr>
</tbody><tbody class="mod">
<tr class="first">
<th>48</th><th> </th><td class="l"><span> echo <del>"Error copying patched cPickle.c</del>"</span></td>
</tr>
<tr class="last">
<th> </th><th>84</th><td class="r"><span> echo <ins>>&2 "Error copying patched pickle.py</ins>"</span></td>
</tr>
</tbody><tbody class="unmod">
<tr>
<th>49</th><th>85</th><td class="l"><span> exit 1</span></td>
</tr><tr>
<th>50</th><th>86</th><td class="l"><span>fi</span></td>
</tr><tr>
<th>51</th><th>87</th><td class="l"><span></span></td>
</tr>
</tbody><tbody class="add">
<tr class="first">
<th> </th><th>88</th><td class="r"><ins>cp patches/cPickle.c src/Modules/cPickle.c</ins></td>
</tr><tr>
<th> </th><th>89</th><td class="r"><ins>if [ $? -ne 0 ]; then</ins></td>
</tr><tr>
<th> </th><th>90</th><td class="r"><ins> echo >&2 "Error copying patched cPickle.c"</ins></td>
</tr><tr>
<th> </th><th>91</th><td class="r"><ins> exit 1</ins></td>
</tr><tr>
<th> </th><th>92</th><td class="r"><ins>fi</ins></td>
</tr><tr>
<th> </th><th>93</th><td class="r"><ins></ins></td>
</tr><tr>
<th> </th><th>94</th><td class="r"><ins># Due to a problem with _socket not building on OpenSolaris on x64</ins></td>
</tr><tr>
<th> </th><th>95</th><td class="r"><ins># see http://bugs.python.org/issue8852</ins></td>
</tr><tr>
<th> </th><th>96</th><td class="r"><ins># http://trac.sagemath.org/sage_trac/ticket/9041</ins></td>
</tr><tr>
<th> </th><th>97</th><td class="r"><ins># http://trac.sagemath.org/sage_trac/ticket/9022</ins></td>
</tr><tr>
<th> </th><th>98</th><td class="r"><ins># Modules/socketmodule.c needs patching. The patch consists of </ins></td>
</tr><tr>
<th> </th><th>99</th><td class="r"><ins># only checking if things are defined before trying to build with them</ins></td>
</tr><tr>
<th> </th><th>100</th><td class="r"><ins># so it is safe (and desirable) on any platform. </ins></td>
</tr><tr>
<th> </th><th>101</th><td class="r"><ins></ins></td>
</tr><tr>
<th> </th><th>102</th><td class="r"><ins>cp patches/Modules.socketmodule.c src/Modules/socketmodule.c</ins></td>
</tr><tr>
<th> </th><th>103</th><td class="r"><ins>if [ $? -ne 0 ]; then</ins></td>
</tr><tr>
<th> </th><th>104</th><td class="r"><ins> echo >&2 "Error copying patched socketmodule.c"</ins></td>
</tr><tr>
<th> </th><th>105</th><td class="r"><ins> exit 1</ins></td>
</tr><tr>
<th> </th><th>106</th><td class="r"><ins>fi</ins></td>
</tr><tr>
<th> </th><th>107</th><td class="r"><ins></ins></td>
</tr><tr>
<th> </th><th>108</th><td class="r"><ins># The following patch for fixing broken readline behavior on Itanium</ins></td>
</tr><tr>
<th> </th><th>109</th><td class="r"><ins># Linux definitely does *not* work on anything else.</ins></td>
</tr><tr>
<th> </th><th>110</th><td class="r"><ins>if [ "`uname -m`" = "ia64" -a "`uname`" = "Linux" ]; then</ins></td>
</tr><tr>
<th> </th><th>111</th><td class="r"><ins> echo "Updating readline.c for Linux/Itanium"</ins></td>
</tr><tr>
<th> </th><th>112</th><td class="r"><ins> cp patches/readline.c-Itanium-fix src/Modules/readline.c</ins></td>
</tr><tr>
<th> </th><th>113</th><td class="r"><ins>else</ins></td>
</tr><tr>
<th> </th><th>114</th><td class="r"><ins> # Readline patch: http://bugs.python.org/file14599/python-2.6-readline.patch</ins></td>
</tr><tr>
<th> </th><th>115</th><td class="r"><ins> # Associated bug: http://bugs.python.org/issue5833</ins></td>
</tr><tr>
<th> </th><th>116</th><td class="r"><ins> #</ins></td>
</tr><tr>
<th> </th><th>117</th><td class="r"><ins> # Committed to Python as r75747 in the py26-maint branch, but not</ins></td>
</tr><tr>
<th> </th><th>118</th><td class="r"><ins> # in time for 2.6.4 -- so we can remove this patch the next time</ins></td>
</tr><tr>
<th> </th><th>119</th><td class="r"><ins> # we update Python in Sage.</ins></td>
</tr><tr>
<th> </th><th>120</th><td class="r"><ins> cp patches/readline.c-spacebug src/Modules/readline.c</ins></td>
</tr><tr>
<th> </th><th>121</th><td class="r"><ins>fi</ins></td>
</tr><tr>
<th> </th><th>122</th><td class="r"><ins></ins></td>
</tr><tr>
<th> </th><th>123</th><td class="r"><ins>if [ $? -ne 0 ]; then</ins></td>
</tr><tr>
<th> </th><th>124</th><td class="r"><ins> echo >&2 "Error copying patched readline.c"</ins></td>
</tr><tr>
<th> </th><th>125</th><td class="r"><ins> exit 1</ins></td>
</tr><tr>
<th> </th><th>126</th><td class="r"><ins>fi</ins></td>
</tr><tr>
<th> </th><th>127</th><td class="r"><ins></ins></td>
</tr><tr class="last">
<th> </th><th>128</th><td class="r"><ins></ins></td>
</tr>
</tbody><tbody class="unmod">
<tr>
<th>52</th><th>129</th><td class="l"><span># We are setting LDFLAGS and CPPFLAGS so that we pick up Sage's readline</span></td>
</tr><tr>
<th>53</th><th>130</th><td class="l"><span>LDFLAGS="-L$SAGE_LOCAL/lib $LDFLAGS"</span></td>
</tr><tr>
<th>54</th><th>131</th><td class="l"><span>export LDFLAGS</span></td>
</tr>
</tbody>
<tbody class="skipped">
<tr>
<th><a href="#L62">…</a></th>
<th><a href="#L139">…</a></th>
<td><em></em> </td>
</tr>
</tbody>
<tbody class="unmod">
<tr>
<th>62</th><th>139</th><td class="l"><span> EXTRAFLAGS="--without-pymalloc"; export EXTRAFLAGS</span></td>
</tr><tr>
<th>63</th><th>140</th><td class="l"><span>fi</span></td>
</tr><tr>
<th>64</th><th>141</th><td class="l"><span></span></td>
</tr>
</tbody><tbody class="add">
<tr class="first">
<th> </th><th>142</th><td class="r"><ins># Program around weird bug in build process:</ins></td>
</tr><tr>
<th> </th><th>143</th><td class="r"><ins># Apparently if you have this:</ins></td>
</tr><tr>
<th> </th><th>144</th><td class="r"><ins># export DISTUTILS_DEBUG=1</ins></td>
</tr><tr>
<th> </th><th>145</th><td class="r"><ins># in your environment variables, the build craps out. No idea why this</ins></td>
</tr><tr>
<th> </th><th>146</th><td class="r"><ins># is.</ins></td>
</tr><tr>
<th> </th><th>147</th><td class="r"><ins># -- Yi Qiang</ins></td>
</tr><tr>
<th> </th><th>148</th><td class="r"><ins>#</ins></td>
</tr><tr>
<th> </th><th>149</th><td class="r"><ins># This bug was fixed in Python, but not yet in Python 2.6.4. So this fix</ins></td>
</tr><tr>
<th> </th><th>150</th><td class="r"><ins># can be removed the next time we upgrade our version of Python. See</ins></td>
</tr><tr>
<th> </th><th>151</th><td class="r"><ins>#</ins></td>
</tr><tr>
<th> </th><th>152</th><td class="r"><ins># http://bugs.python.org/issue6954</ins></td>
</tr><tr>
<th> </th><th>153</th><td class="r"><ins>#</ins></td>
</tr><tr>
<th> </th><th>154</th><td class="r"><ins># for the fix.</ins></td>
</tr><tr>
<th> </th><th>155</th><td class="r"><ins>#</ins></td>
</tr><tr>
<th> </th><th>156</th><td class="r"><ins>unset DISTUTILS_DEBUG</ins></td>
</tr><tr>
<th> </th><th>157</th><td class="r"><ins></ins></td>
</tr><tr class="last">
<th> </th><th>158</th><td class="r"><ins></ins></td>
</tr>
</tbody><tbody class="unmod">
<tr>
<th>65</th><th>159</th><td class="l"><span>cd src</span></td>
</tr><tr>
<th>66</th><th>160</th><td class="l"><span></span></td>
</tr><tr>
<th>67</th><th>161</th><td class="l"><span>touch Include/*</span></td>
</tr>
</tbody>
<tbody class="skipped">
<tr>
<th><a href="#L93">…</a></th>
<th><a href="#L187">…</a></th>
<td><em></em> </td>
</tr>
</tbody>
<tbody class="unmod">
<tr>
<th>93</th><th>187</th><td class="l"><span> --enable-unicode=ucs4</span></td>
</tr><tr>
<th>94</th><th>188</th><td class="l"><span> fi</span></td>
</tr><tr>
<th>95</th><th>189</th><td class="l"><span> else</span></td>
</tr>
</tbody><tbody class="mod">
<tr class="first">
<th>96</th><th> </th><td class="l"><span> ./configure $EXTRAFLAGS --prefix="$SAGE_LOCAL" --enable-unicode=ucs4 CC="$CC $CFLAGS" CXX="$CXX $CXXFLAGS"</span></td>
</tr>
<tr>
<th> </th><th>190</th><td class="r"><span> ./configure $EXTRAFLAGS --prefix="$SAGE_LOCAL" --enable-unicode=ucs4 \</span></td>
</tr><tr class="last">
<th> </th><th>191</th><td class="r"><span> CC="$CC $CFLAGS" CXX="$CXX $CXXFLAGS"</span></td>
</tr>
</tbody><tbody class="unmod">
<tr>
<th>97</th><th>192</th><td class="l"><span> fi</span></td>
</tr><tr>
<th>98</th><th>193</th><td class="l"><span></span></td>
</tr><tr>
<th>99</th><th>194</th><td class="l"><span></span></td>
</tr><tr>
<th>100</th><th>195</th><td class="l"><span> if [ $? -ne 0 ]; then</span></td>
</tr>
</tbody><tbody class="mod">
<tr class="first">
<th>101</th><th> </th><td class="l"><span> echo <del></del>"Error configuring Python."</span></td>
</tr>
<tr class="last">
<th> </th><th>196</th><td class="r"><span> echo <ins>>&2 </ins>"Error configuring Python."</span></td>
</tr>
</tbody><tbody class="unmod">
<tr>
<th>102</th><th>197</th><td class="l"><span> exit 1</span></td>
</tr><tr>
<th>103</th><th>198</th><td class="l"><span> fi</span></td>
</tr><tr>
<th>104</th><th>199</th><td class="l"><span></span></td>
</tr><tr>
<th>105</th><th>200</th><td class="l"><span> $MAKE</span></td>
</tr><tr>
<th>106</th><th>201</th><td class="l"><span> if [ $? -ne 0 ]; then</span></td>
</tr>
</tbody><tbody class="mod">
<tr class="first">
<th>107</th><th> </th><td class="l"><span> echo <del></del>"Error building Python."</span></td>
</tr>
<tr class="last">
<th> </th><th>202</th><td class="r"><span> echo <ins>>&2 </ins>"Error building Python."</span></td>
</tr>
</tbody><tbody class="unmod">
<tr>
<th>108</th><th>203</th><td class="l"><span> exit 1</span></td>
</tr><tr>
<th>109</th><th>204</th><td class="l"><span> fi</span></td>
</tr><tr>
<th>110</th><th>205</th><td class="l"><span></span></td>
</tr><tr>
<th>111</th><th>206</th><td class="l"><span> # running 'make install' in parallel is a bad, bad idea</span></td>
</tr>
</tbody><tbody class="add">
<tr class="first">
<th> </th><th>207</th><td class="r"><ins> # FIXME: The proper way to disable parallel make is to use</ins></td>
</tr><tr class="last">
<th> </th><th>208</th><td class="r"><ins> # $MAKE -j1 ... (We rely on GNU make anyway).</ins></td>
</tr>
</tbody><tbody class="unmod">
<tr>
<th>112</th><th>209</th><td class="l"><span> MAKE=make; export MAKE</span></td>
</tr><tr>
<th>113</th><th>210</th><td class="l"><span> # the "-i" is crucial, esp. in the case of a major upgrade</span></td>
</tr><tr>
<th>114</th><th>211</th><td class="l"><span> make -i install</span></td>
</tr><tr>
<th>115</th><th>212</th><td class="l"><span> if [ $? -ne 0 ]; then</span></td>
</tr>
</tbody><tbody class="mod">
<tr class="first">
<th>116</th><th> </th><td class="l"><span> echo <del></del>"Error installing Python."</span></td>
</tr>
<tr class="last">
<th> </th><th>213</th><td class="r"><span> echo <ins>>&2 </ins>"Error installing Python."</span></td>
</tr>
</tbody><tbody class="unmod">
<tr>
<th>117</th><th>214</th><td class="l"><span> exit 1</span></td>
</tr><tr>
<th>118</th><th>215</th><td class="l"><span> fi</span></td>
</tr><tr>
<th>119</th><th>216</th><td class="l"><span>}</span></td>
</tr>
</tbody>
<tbody class="skipped">
<tr>
<th><a href="#L122">…</a></th>
<th><a href="#L219">…</a></th>
<td><em></em> </td>
</tr>
</tbody>
<tbody class="unmod">
<tr>
<th>122</th><th>219</th><td class="l"><span># informative error message. This is helps in determining why the</span></td>
</tr><tr>
<th>123</th><th>220</th><td class="l"><span># configuration, compilation or installation failed. So put this before the</span></td>
</tr><tr>
<th>124</th><th>221</th><td class="l"><span># build() function.</span></td>
</tr>
</tbody><tbody class="mod">
<tr class="first">
<th>125</th><th> </th><td class="l"><span>set +e<del></del></span></td>
</tr>
<tr class="last">
<th> </th><th>222</th><td class="r"><span>set +e<ins> # This is redundant here, but doesn't hurt to keep it... ;-)</ins></span></td>
</tr>
</tbody><tbody class="unmod">
<tr>
<th>126</th><th>223</th><td class="l"><span></span></td>
</tr><tr>
<th>127</th><th>224</th><td class="l"><span>build</span></td>
</tr><tr>
<th>128</th><th>225</th><td class="l"><span></span></td>
</tr>
</tbody><tbody class="mod">
<tr class="first">
<th>129</th><th> </th><td class="l"><span>cd <del>$SAGE_LOCAL/lib</del></span></td>
</tr>
<tr class="last">
<th> </th><th>226</th><td class="r"><span>cd <ins>"$SAGE_LOCAL/lib"</ins></span></td>
</tr>
</tbody><tbody class="unmod">
<tr>
<th>130</th><th>227</th><td class="l"><span></span></td>
</tr><tr>
<th>131</th><th>228</th><td class="l"><span># move the python directory if we're upgrading from a version</span></td>
</tr>
</tbody><tbody class="mod">
<tr class="first">
<th>132</th><th> </th><td class="l"><span># of sage with python 2.<del>6</del></span></td>
</tr><tr>
<th>133</th><th> </th><td class="l"><span>if [ -d python2.<del>6</del>/site-packages ]; then</span></td>
</tr><tr>
<th>134</th><th> </th><td class="l"><span> mv python2.<del>6/site-packages python2.7</del>/site-packages-old</span></td>
</tr>
<tr>
<th> </th><th>229</th><td class="r"><span># of sage with python 2.<ins>5</ins></span></td>
</tr><tr>
<th> </th><th>230</th><td class="r"><span>if [ -d python2.<ins>5</ins>/site-packages ]; then</span></td>
</tr><tr class="last">
<th> </th><th>231</th><td class="r"><span> mv python2.<ins>5/site-packages python2.6</ins>/site-packages-old</span></td>
</tr>
</tbody><tbody class="unmod">
<tr>
<th>135</th><th>232</th><td class="l"><span>fi</span></td>
</tr><tr>
<th>136</th><th>233</th><td class="l"><span></span></td>
</tr>
</tbody><tbody class="mod">
<tr class="first">
<th>137</th><th> </th><td class="l"><span>rm -rf python/python2.<del>7 python/python2.</del>6 python/python2.5 python/python python python2.4 python2.5</span></td>
</tr><tr>
<th>138</th><th> </th><td class="l"><span>ln -s python2.<del>7</del> python</span></td>
</tr>
<tr>
<th> </th><th>234</th><td class="r"><span>rm -rf python/python2.<ins></ins>6 python/python2.5 python/python python python2.4 python2.5</span></td>
</tr><tr class="last">
<th> </th><th>235</th><td class="r"><span>ln -s python2.<ins>6</ins> python</span></td>
</tr>
</tbody><tbody class="unmod">
<tr>
<th>139</th><th>236</th><td class="l"><span>if [ $? -ne 0 ]; then</span></td>
</tr>
</tbody><tbody class="mod">
<tr class="first">
<th>140</th><th> </th><td class="l"><span> echo <del></del>"Error creating symbolic link"</span></td>
</tr>
<tr class="last">
<th> </th><th>237</th><td class="r"><span> echo <ins>>&2 </ins>"Error creating symbolic link"</span></td>
</tr>
</tbody><tbody class="unmod">
<tr>
<th>141</th><th>238</th><td class="l"><span> exit 1</span></td>
</tr><tr>
<th>142</th><th>239</th><td class="l"><span>fi</span></td>
</tr><tr>
<th>143</th><th>240</th><td class="l"><span></span></td>
</tr><tr>
<th>144</th><th>241</th><td class="l"><span># Sleeping for three seconds so that parallel 'make install' catches up</span></td>
</tr><tr>
<th>145</th><th>242</th><td class="l"><span># with the following test.</span></td>
</tr>
</tbody><tbody class="add">
<tr class="last first">
<th> </th><th>243</th><td class="r"><ins># XXX We have disabled parallel 'make install' above, but never mind.</ins></td>
</tr>
</tbody><tbody class="unmod">
<tr>
<th>146</th><th>244</th><td class="l"><span>echo "Sleeping for three seconds before testing python"</span></td>
</tr><tr>
<th>147</th><th>245</th><td class="l"><span>sleep 3</span></td>
</tr><tr>
<th>148</th><th>246</th><td class="l"><span></span></td>
</tr>
</tbody>
<tbody class="skipped">
<tr>
<th><a href="#L150">…</a></th>
<th><a href="#L248">…</a></th>
<td><em></em> </td>
</tr>
</tbody>
<tbody class="unmod">
<tr>
<th>150</th><th>248</th><td class="l"><span># All these modules are important and if any one </span></td>
</tr><tr>
<th>151</th><th>249</th><td class="l"><span># fails to build, Sage will not work. </span></td>
</tr><tr>
<th>152</th><th>250</th><td class="l"><span></span></td>
</tr>
</tbody><tbody class="add">
<tr class="last first">
<th> </th><th>251</th><td class="r"><ins>import_errors=false</ins></td>
</tr>
</tbody><tbody class="unmod">
<tr>
<th>153</th><th>252</th><td class="l"><span>for module in math hashlib crypt ; do </span></td>
</tr><tr>
<th>154</th><th>253</th><td class="l"><span> "$SAGE_LOCAL/bin/python" -c "import $module"</span></td>
</tr><tr>
<th>155</th><th>254</th><td class="l"><span> if [ $? -eq 0 ] ; then</span></td>
</tr><tr>
<th>156</th><th>255</th><td class="l"><span> echo "$module module imported OK"</span></td>
</tr><tr>
<th>157</th><th>256</th><td class="l"><span> else</span></td>
</tr>
</tbody><tbody class="mod">
<tr class="first">
<th>158</th><th> </th><td class="l"><span> echo "$module module failed to import"</span></td>
</tr><tr>
<th>159</th><th> </th><td class="l"><span> exit 1</span></td>
</tr>
<tr>
<th> </th><th>257</th><td class="r"><span> echo >&2 "$module module failed to import"</span></td>
</tr><tr>
<th> </th><th>258</th><td class="r"><span> import_errors=true</span></td>
</tr><tr class="last">
<th> </th><th>259</th><td class="r"><span> # exit 1 # not yet</span></td>
</tr>
</tbody><tbody class="unmod">
<tr>
<th>160</th><th>260</th><td class="l"><span> fi</span></td>
</tr><tr>
<th>161</th><th>261</th><td class="l"><span>done</span></td>
</tr>
</tbody><tbody class="add">
<tr class="first">
<th> </th><th>262</th><td class="r"><ins></ins></td>
</tr><tr>
<th> </th><th>263</th><td class="r"><ins>if $import_errors; then</ins></td>
</tr><tr>
<th> </th><th>264</th><td class="r"><ins> echo >&2 "Error: One or more modules failed to import."</ins></td>
</tr><tr>
<th> </th><th>265</th><td class="r"><ins> # Check if we are on Debian or one of its derivatives:</ins></td>
</tr><tr>
<th> </th><th>266</th><td class="r"><ins> if command -v dpkg && ! command -v dpkg-architecture >/dev/null; then</ins></td>
</tr><tr>
<th> </th><th>267</th><td class="r"><ins> echo >&2 "You may have to install 'dpkg-architecture'"</ins></td>
</tr><tr>
<th> </th><th>268</th><td class="r"><ins> echo >&2 "which is part of the Debian package 'dpkg-dev'."</ins></td>
</tr><tr>
<th> </th><th>269</th><td class="r"><ins> echo >&2 "Try installing it by typing"</ins></td>
</tr><tr>
<th> </th><th>270</th><td class="r"><ins> echo >&2 " sudo apt-get install dpkg-dev"</ins></td>
</tr><tr>
<th> </th><th>271</th><td class="r"><ins> echo >&2 "and rerun 'make'."</ins></td>
</tr><tr>
<th> </th><th>272</th><td class="r"><ins> fi</ins></td>
</tr><tr>
<th> </th><th>273</th><td class="r"><ins> exit 1</ins></td>
</tr><tr>
<th> </th><th>274</th><td class="r"><ins>fi</ins></td>
</tr><tr class="last">
<th> </th><th>275</th><td class="r"><ins></ins></td>
</tr>
</tbody>
</table>
</li>
</ul>
</div></div>
TicketfbisseyFri, 04 Nov 2011 02:07:13 GMT
https://trac.sagemath.org/ticket/9958#comment:138
https://trac.sagemath.org/ticket/9958#comment:138
<p>
OK that's not a biggy while I had a look at <a class="closed ticket" href="https://trac.sagemath.org/ticket/11447" title="defect: python spkg build fails on various Debian systems (closed: fixed)">#11447</a> I made my spkg before it was closed and possibly before it had reached its final shape. I wanted to wait for 2.7.3 but I will probably cut a 2.7.2 in which I will add this then.
</p>
<p>
I am keen to have this landing ASAP but I would understand if the release manager only wants to do it in a alpha0. That's both a big change and a big patch set. My concern is that my last patch may not be adequate. Steve tested a number of configurations and the order this comes out are all over the place. I may have to make it random which is not nice.
</p>
<p>
The other concern is <a class="closed ticket" href="https://trac.sagemath.org/ticket/11986" title="defect: inconsistent integer hashing on 64bit systems with python 2.7 (closed: fixed)">#11986</a> which looks like a blast from the past and I have no clues on either of them.
</p>
TicketjdemeyerFri, 04 Nov 2011 09:24:20 GMT
https://trac.sagemath.org/ticket/9958#comment:139
https://trac.sagemath.org/ticket/9958#comment:139
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:138" title="Comment 138">fbissey</a>:
</p>
<blockquote class="citation">
<p>
OK that's not a biggy while I had a look at <a class="closed ticket" href="https://trac.sagemath.org/ticket/11447" title="defect: python spkg build fails on various Debian systems (closed: fixed)">#11447</a> I made my spkg before it was closed and possibly before it had reached its final shape. I wanted to wait for 2.7.3 but I will probably cut a 2.7.2 in which I will add this then.
</p>
<p>
I am keen to have this landing ASAP but I would understand if the release manager only wants to do it in a alpha0. That's both a big change and a big patch set.
</p>
</blockquote>
<p>
If you can finish it, I'd be happy to merge it. But to be realistic, I don't think this ticket is close to being finished. There is a huge amount of patches which needs to be reviewed, there is still <a class="closed ticket" href="https://trac.sagemath.org/ticket/11986" title="defect: inconsistent integer hashing on 64bit systems with python 2.7 (closed: fixed)">#11986</a>, there is the rebasing to <a class="closed ticket" href="https://trac.sagemath.org/ticket/11447" title="defect: python spkg build fails on various Debian systems (closed: fixed)">#11447</a>, maybe testing will reveal breakage on some systems...
</p>
TicketjdemeyerFri, 04 Nov 2011 10:10:57 GMT
https://trac.sagemath.org/ticket/9958#comment:140
https://trac.sagemath.org/ticket/9958#comment:140
<p>
There is a warning when building the reference manual:
</p>
<pre class="wiki">docstring of sage.crypto.boolean_function:3: (WARNING/2) Block quote ends without a blank line; unexpected unindent.
</pre>
TicketjdemeyerSat, 05 Nov 2011 21:41:43 GMT
https://trac.sagemath.org/ticket/9958#comment:141
https://trac.sagemath.org/ticket/9958#comment:141
<p>
Another minor comment: please use UTF8 in <code>SPKG.txt</code>. Currently, "François" is encoded as latin1.
</p>
TicketjdemeyerSat, 05 Nov 2011 21:43:38 GMTauthor set
https://trac.sagemath.org/ticket/9958#comment:142
https://trac.sagemath.org/ticket/9958#comment:142
<ul>
<li><strong>author</strong>
set to <em>François Bissey</em>
</li>
</ul>
TicketjdemeyerSat, 05 Nov 2011 22:11:30 GMTmilestone changed
https://trac.sagemath.org/ticket/9958#comment:143
https://trac.sagemath.org/ticket/9958#comment:143
<ul>
<li><strong>milestone</strong>
changed from <em>sage-4.8</em> to <em>sage-5.0</em>
</li>
</ul>
TicketjdemeyerSat, 05 Nov 2011 22:14:54 GMTdescription, summary changed
https://trac.sagemath.org/ticket/9958#comment:144
https://trac.sagemath.org/ticket/9958#comment:144
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=144">diff</a>)
</li>
<li><strong>summary</strong>
changed from <em>Upgrade python to 2.7</em> to <em>Upgrade python to 2.7.x</em>
</li>
</ul>
<p>
By the way: Python 2.7.2 was released on June 11th, 2011 so you might as well go for that.
</p>
TicketfbisseySat, 05 Nov 2011 22:25:24 GMT
https://trac.sagemath.org/ticket/9958#comment:145
https://trac.sagemath.org/ticket/9958#comment:145
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:144" title="Comment 144">jdemeyer</a>:
</p>
<blockquote class="citation">
<p>
By the way: Python 2.7.2 was released on June 11th, 2011 so you might as well go for that.
</p>
</blockquote>
<p>
sage-5.0 is probably more realistic. Thanks for the useful comments, I hadn't seen the warnings in the documentation, this probably could be spun out of this ticket as it is probably a problem in the existing doc - just silent with the current python. I really would like to go to 2.7.3 when it comes out but I'll make a stop 2.7.2. I have a heavy workload this week but I'll try to put the spkg together. I know from sage-on-gentto that there will be some more patching to be done unfortunately although in some case I think that would be just a band aid. So more dependencies may appear :(
</p>
<p>
I am surprised at the "latin-1" encoding I am defaulting to UTF-8 and even my Changelogs now come correct everywhere.
</p>
<p>
We need someone with the know how to look at <a class="closed ticket" href="https://trac.sagemath.org/ticket/11986" title="defect: inconsistent integer hashing on 64bit systems with python 2.7 (closed: fixed)">#11986</a>.
</p>
TicketjdemeyerWed, 09 Nov 2011 08:39:10 GMT
https://trac.sagemath.org/ticket/9958#comment:146
https://trac.sagemath.org/ticket/9958#comment:146
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:145" title="Comment 145">fbissey</a>:
</p>
<blockquote class="citation">
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:144" title="Comment 144">jdemeyer</a>:
</p>
<blockquote class="citation">
<p>
By the way: Python 2.7.2 was released on June 11th, 2011 so you might as well go for that.
</p>
</blockquote>
<p>
sage-5.0 is probably more realistic.
</p>
</blockquote>
<p>
Especially since William essentially <em>defined</em> sage-5.0 as the release which will contain this ticket.
</p>
<blockquote class="citation">
<p>
I hadn't seen the warnings in the documentation, this probably could be spun out of this ticket as it is probably a problem in the existing doc - just silent with the current python.
</p>
</blockquote>
<p>
True, but I have no idea how Python 2.7 has changed this particular doctest. It could also be that something changed inside Sphinx or Cython because of Python 2.7.
</p>
<blockquote class="citation">
<p>
I am surprised at the "latin-1" encoding I am defaulting to UTF-8 and even my Changelogs now come correct everywhere.
</p>
</blockquote>
<p>
And now you're punished for the rest of your live as a developer because your name is not ASCII (and please don't write "Francois", that just looks very wrong).
</p>
<blockquote class="citation">
<p>
We need someone with the know how to look at <a class="closed ticket" href="https://trac.sagemath.org/ticket/11986" title="defect: inconsistent integer hashing on 64bit systems with python 2.7 (closed: fixed)">#11986</a>.
</p>
</blockquote>
<p>
I <em>might</em> have a look, but I don't want to promise anything. In any case, once <a class="closed ticket" href="https://trac.sagemath.org/ticket/11986" title="defect: inconsistent integer hashing on 64bit systems with python 2.7 (closed: fixed)">#11986</a> is really the only remaining issue, it will certainly get fixed.
</p>
TicketfbisseyThu, 10 Nov 2011 02:53:04 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:147
https://trac.sagemath.org/ticket/9958#comment:147
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=147">diff</a>)
</li>
</ul>
<p>
All right. Very busy week so far. I am removing the last patch and will spin it in a separate ticket because Steve did more testing and it appears that the test is somewhat random and was only working everywhere the same with python 2.6 by sheer luck.
</p>
<p>
Steve had a few interesting suggestions for replacing the test but that's clearly another ticket on which we'll forward people who touched that file for comments.
</p>
TicketfbisseyMon, 21 Nov 2011 00:55:23 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:148
https://trac.sagemath.org/ticket/9958#comment:148
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=148">diff</a>)
</li>
</ul>
<p>
I finished updating the spkg to 2.7.2 in a moment of freedom. I called it 2.7.2.p0 as it has some patches in it. Hope all the permissions are right this time. And SPKG.txt is UTF-8 now.
</p>
<p>
I will need to update one patch and I think add a new one. At least relative to 4.7.2, I am so bogged down in work that I haven't been working at all on 4.8.0 which may require new patches.
</p>
TicketfbisseyThu, 24 Nov 2011 21:33:39 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-fix-pureAssertError.patch</em>
</li>
</ul>
<p>
fix pure assertErrors failures - updated for python-2.7.2
</p>
TicketfbisseyThu, 24 Nov 2011 21:34:44 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-sage_unittest.patch</em>
</li>
</ul>
<p>
fix sage_unittest.py failures - updated for python-2.7.2
</p>
TicketfbisseyThu, 24 Nov 2011 21:35:26 GMT
https://trac.sagemath.org/ticket/9958#comment:149
https://trac.sagemath.org/ticket/9958#comment:149
<p>
Patch set updated for python-2.7.2.
</p>
TicketjdemeyerFri, 25 Nov 2011 22:23:28 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:150
https://trac.sagemath.org/ticket/9958#comment:150
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=150">diff</a>)
</li>
</ul>
TicketjdemeyerFri, 25 Nov 2011 22:51:12 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:151
https://trac.sagemath.org/ticket/9958#comment:151
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=151">diff</a>)
</li>
</ul>
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:148" title="Comment 148">fbissey</a>:
</p>
<blockquote class="citation">
<p>
I finished updating the spkg to 2.7.2 in a moment of freedom. I called it 2.7.2.p0 as it has some patches in it. Hope all the permissions are right this time.
</p>
</blockquote>
<p>
Unfortunately, they are not. I fixed this in <a class="ext-link" href="http://boxen.math.washington.edu/home/jdemeyer/spkg/python-2.7.2.p0.spkg"><span class="icon"></span>http://boxen.math.washington.edu/home/jdemeyer/spkg/python-2.7.2.p0.spkg</a>
</p>
TicketjdemeyerFri, 25 Nov 2011 22:55:20 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:152
https://trac.sagemath.org/ticket/9958#comment:152
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=152">diff</a>)
</li>
</ul>
TicketfbisseyFri, 25 Nov 2011 23:19:25 GMT
https://trac.sagemath.org/ticket/9958#comment:153
https://trac.sagemath.org/ticket/9958#comment:153
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:151" title="Comment 151">jdemeyer</a>:
</p>
<blockquote class="citation">
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:148" title="Comment 148">fbissey</a>:
</p>
<blockquote class="citation">
<p>
I finished updating the spkg to 2.7.2 in a moment of freedom. I called it 2.7.2.p0 as it has some patches in it. Hope all the permissions are right this time.
</p>
</blockquote>
<p>
Unfortunately, they are not. I fixed this in <a class="ext-link" href="http://boxen.math.washington.edu/home/jdemeyer/spkg/python-2.7.2.p0.spkg"><span class="icon"></span>http://boxen.math.washington.edu/home/jdemeyer/spkg/python-2.7.2.p0.spkg</a>
</p>
</blockquote>
<p>
OK. Was it the src folder and its content? Or did I forget something else in the spkg root folder?
</p>
TicketjdemeyerFri, 25 Nov 2011 23:24:38 GMT
https://trac.sagemath.org/ticket/9958#comment:154
https://trac.sagemath.org/ticket/9958#comment:154
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:153" title="Comment 153">fbissey</a>:
</p>
<blockquote class="citation">
<p>
OK. Was it the src folder and its content?
</p>
</blockquote>
<p>
Yes. I solved this by doing <code>chmod ugo+rX -R .</code>
</p>
<blockquote class="citation">
<p>
Or did I forget something else in the spkg root folder?
</p>
</blockquote>
<p>
Also, yes. spkg-check should be executable.
</p>
TicketjdemeyerFri, 25 Nov 2011 23:36:05 GMT
https://trac.sagemath.org/ticket/9958#comment:155
https://trac.sagemath.org/ticket/9958#comment:155
<p>
This fails to build from scratch with sage-4.8.alpha2 on sage.math:
</p>
<pre class="wiki">gcc -pthread -DNDEBUG -g -O3 -Wall -Wstrict-prototypes -L/scratch/jdemeyer/merger/sage-5.0/local/lib Parser/acceler.o Parser/grammar1.
o Parser/listnode.o Parser/node.o Parser/parser.o Parser/parsetok.o Parser/bitset.o Parser/metagrammar.o Parser/firstsets.o Parser/grammar
.o Parser/pgen.o Objects/obmalloc.o Python/mysnprintf.o Python/pyctype.o Parser/tokenizer_pgen.o Parser/printgrammar.o Parser/pgenmain.o -
lpthread -ldl -lutil -o Parser/pgen
Parser/pgen ./Grammar/Grammar ./Include/graminit.h ./Python/graminit.c
touch Parser/pgen.stamp
gcc -pthread -c -fno-strict-aliasing -g -O2 -DNDEBUG -g -O3 -Wall -Wstrict-prototypes -I. -IInclude -I./Include -I/scratch/jdemeyer/mer
ger/sage-5.0/local/include -fPIC -DPy_BUILD_CORE -o Python/ast.o Python/ast.c
gcc -pthread -c -fno-strict-aliasing -g -O2 -DNDEBUG -g -O3 -Wall -Wstrict-prototypes -I. -IInclude -I./Include -I/scratch/jdemeyer/mer
ger/sage-5.0/local/include -fPIC -DPy_BUILD_CORE -o Python/compile.o Python/compile.c
gcc -pthread -c -fno-strict-aliasing -g -O2 -DNDEBUG -g -O3 -Wall -Wstrict-prototypes -I. -IInclude -I./Include -I/scratch/jdemeyer/mer
ger/sage-5.0/local/include -fPIC -DPy_BUILD_CORE -o Python/graminit.o Python/graminit.c
gcc -pthread -c -fno-strict-aliasing -g -O2 -DNDEBUG -g -O3 -Wall -Wstrict-prototypes -I. -IInclude -I./Include -I/scratch/jdemeyer/mer
ger/sage-5.0/local/include -fPIC -DPy_BUILD_CORE -o Python/symtable.o Python/symtable.c
gcc -pthread -c -fno-strict-aliasing -g -O2 -DNDEBUG -g -O3 -Wall -Wstrict-prototypes -I. -IInclude -I./Include -I/scratch/jdemeyer/mer
ger/sage-5.0/local/include -fPIC -DPy_BUILD_CORE \
-DSVNVERSION="\"`LC_ALL=C svnversion .`\"" \
-DHGVERSION="\"`LC_ALL=C hg id -i .`\"" \
-DHGTAG="\"`LC_ALL=C hg id -t .`\"" \
-DHGBRANCH="\"`LC_ALL=C hg id -b .`\"" \
-o Modules/getbuildinfo.o ./Modules/getbuildinfo.c
You must compile Sage first using 'make' in the Sage root directory.
You must compile Sage first using 'make' in the Sage root directory.
You must compile Sage first using 'make' in the Sage root directory.
<command-line>: warning: missing terminating " character
<command-line>:1:7: warning: missing terminating " character
<command-line>:2:10: warning: missing terminating " character
./Modules/getbuildinfo.c: In function 'Py_GetBuildInfo':
./Modules/getbuildinfo.c:45: error: missing terminating " character
./Modules/getbuildinfo.c:45: error: expected expression before ')' token
./Modules/getbuildinfo.c:46: error: missing terminating " character
./Modules/getbuildinfo.c:46: error: missing terminating " character
./Modules/getbuildinfo.c:47: error: missing terminating " character
./Modules/getbuildinfo.c:47: error: missing terminating " character
./Modules/getbuildinfo.c:53: error: 'buildinfo' undeclared (first use in this function)
./Modules/getbuildinfo.c:53: error: (Each undeclared identifier is reported only once
./Modules/getbuildinfo.c:53: error: for each function it appears in.)
./Modules/getbuildinfo.c: In function '_Py_hgversion':
./Modules/getbuildinfo.c:72: error: missing terminating " character
./Modules/getbuildinfo.c:72: warning: 'return' with no value, in function returning non-void
./Modules/getbuildinfo.c: In function '_Py_hgidentifier':
./Modules/getbuildinfo.c:79: error: missing terminating " character
./Modules/getbuildinfo.c:79: error: expected expression before ';' token
./Modules/getbuildinfo.c:83: error: missing terminating " character
./Modules/getbuildinfo.c:83: error: expected expression before ';' token
make[2]: *** [Modules/getbuildinfo.o] Error 1
make[2]: Leaving directory `/mnt/usb1/scratch/jdemeyer/merger/sage-5.0/spkg/build/python-2.7.2.p0/src'
Error building Python.
</pre><p>
Mhy guess would be that <code>spkg-install</code> is trying to run Mercurial or something, which obviously fails because Mercurial has not been compiled yet (and it can't since it depends on Python).
</p>
TicketjdemeyerFri, 25 Nov 2011 23:50:15 GMT
https://trac.sagemath.org/ticket/9958#comment:156
https://trac.sagemath.org/ticket/9958#comment:156
<p>
The error above might be fixed by <a class="closed ticket" href="https://trac.sagemath.org/ticket/5852" title="defect: Properly canonicalize $SAGE_ROOT (closed: fixed)">#5852</a>...
</p>
TicketjhpalmieriSat, 26 Nov 2011 00:23:04 GMT
https://trac.sagemath.org/ticket/9958#comment:157
https://trac.sagemath.org/ticket/9958#comment:157
<p>
The current spkg installs fine on OS X 10.6 and 10.7, at least when I do "sage -f ..." in an existing Sage installation. I haven't tried building from scratch, and I haven't tried doctests or the patches yet. Would it be possible to provide a single large patch in addition to the individual small ones? That would be easier to apply for testing, while the small ones are easier to review.
</p>
TicketfbisseySat, 26 Nov 2011 00:33:04 GMT
https://trac.sagemath.org/ticket/9958#comment:158
https://trac.sagemath.org/ticket/9958#comment:158
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:154" title="Comment 154">jdemeyer</a>:
</p>
<blockquote class="citation">
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:153" title="Comment 153">fbissey</a>:
</p>
<blockquote class="citation">
<p>
OK. Was it the src folder and its content?
</p>
</blockquote>
<p>
Yes. I solved this by doing <code>chmod ugo+rX -R .</code>
</p>
<blockquote class="citation">
<p>
Or did I forget something else in the spkg root folder?
</p>
</blockquote>
<p>
Also, yes. spkg-check should be executable.
</p>
</blockquote>
<p>
Never used symbolic mode of chmod, always octal. But this looks like it is more effective to get the directory permissions right. Darn spkg-check.
</p>
<p>
Thanks for the tips. Sorry for being a pest at times.
</p>
<p>
I haven't tested the spkg from scratch on OSX I did on linux x86_64 and 4.8.alpha2.
I will see what happens on my 10.5 machine later. 2.7.1 worked from scratch there i am sure. That looks very strange, can you link the full python building log?
</p>
TicketjhpalmieriSat, 26 Nov 2011 03:28:00 GMT
https://trac.sagemath.org/ticket/9958#comment:159
https://trac.sagemath.org/ticket/9958#comment:159
<p>
A build from scratch on OS X 10.6 worked just fine, by the way.
</p>
TicketjdemeyerSat, 26 Nov 2011 09:32:44 GMT
https://trac.sagemath.org/ticket/9958#comment:160
https://trac.sagemath.org/ticket/9958#comment:160
<p>
There is still the docbuild warning:
</p>
<pre class="wiki">docstring of sage.crypto.boolean_function:3: WARNING: Block quote ends without a blank line; unexpected unindent.
</pre><p>
I am investigating.
</p>
TicketjdemeyerSat, 26 Nov 2011 10:07:15 GMT
https://trac.sagemath.org/ticket/9958#comment:161
https://trac.sagemath.org/ticket/9958#comment:161
<p>
I absolutely do not understand the docbuild warning but created a ticket at <a class="closed ticket" href="https://trac.sagemath.org/ticket/12085" title="defect: Fix docstring in sage/crypto/boolean_function.pyx (closed: fixed)">#12085</a>.
</p>
TicketjdemeyerSat, 26 Nov 2011 10:31:17 GMTdependencies changed
https://trac.sagemath.org/ticket/9958#comment:162
https://trac.sagemath.org/ticket/9958#comment:162
<ul>
<li><strong>dependencies</strong>
changed from <em>#11986</em> to <em>#5852, #11986, #12085</em>
</li>
</ul>
TicketfbisseySat, 26 Nov 2011 18:50:52 GMT
https://trac.sagemath.org/ticket/9958#comment:163
https://trac.sagemath.org/ticket/9958#comment:163
<p>
Just an idea! This is because it wants to execute some mercurial commands to find if there are tags in the source. If we were to set
</p>
<pre class="wiki">DHGVERSION
DHGTAG
DHGBRANCH
</pre><p>
To something or even nothing we may not have this problem. A normal run with a system mercurial installed looks like:
</p>
<pre class="wiki">x86_64-pc-linux-gnu-gcc -pthread -c -fno-strict-aliasing -O2 -pipe -march=native -fwrapv -DNDEBUG -I. -IInclude -I./Include -fPIC -DPy_BUILD_CORE \
-DSVNVERSION="\"`LC_ALL=C svnversion .`\"" \
-DHGVERSION="\"`LC_ALL=C hg id -i .`\"" \
-DHGTAG="\"`LC_ALL=C hg id -t .`\"" \
-DHGBRANCH="\"`LC_ALL=C hg id -b .`\"" \
-o Modules/getbuildinfo.o ./Modules/getbuildinfo.c
abort: repository . not found!
abort: repository . not found!
abort: repository . not found!
</pre><p>
I will try to see if I can fit that in the spkg.
</p>
TicketjdemeyerSat, 26 Nov 2011 18:55:47 GMT
https://trac.sagemath.org/ticket/9958#comment:164
https://trac.sagemath.org/ticket/9958#comment:164
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:163" title="Comment 163">fbissey</a>:
</p>
<blockquote class="citation">
<p>
I will try to see if I can fit that in the spkg.
</p>
</blockquote>
<p>
No, I would leave that alone. With <a class="closed ticket" href="https://trac.sagemath.org/ticket/5852" title="defect: Properly canonicalize $SAGE_ROOT (closed: fixed)">#5852</a>, it will build properly. Since you get errors anyway with the system Mercurial, apparently it's not a problem that <code>hg</code> fails.
</p>
TicketfbisseySat, 26 Nov 2011 19:03:41 GMT
https://trac.sagemath.org/ticket/9958#comment:165
https://trac.sagemath.org/ticket/9958#comment:165
<p>
If you insist but it would be easy to path Makefile.pre.in to prevent this from happening. It is mainly used to get pre-release version info if you checked out python source from hg. It is supposed to fail if you are using a properly released tarball.
</p>
TicketjdemeyerSat, 26 Nov 2011 19:53:06 GMT
https://trac.sagemath.org/ticket/9958#comment:166
https://trac.sagemath.org/ticket/9958#comment:166
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:165" title="Comment 165">fbissey</a>:
</p>
<blockquote class="citation">
<p>
If you insist
</p>
</blockquote>
<p>
I will <strong>not</strong> insist: if you want to make the patch, go ahead.
</p>
TicketfbisseySat, 26 Nov 2011 20:51:59 GMT
https://trac.sagemath.org/ticket/9958#comment:167
https://trac.sagemath.org/ticket/9958#comment:167
<p>
I may try something more subtle first. Makefile.pre.in has
</p>
<pre class="wiki">SVNVERSION= @SVNVERSION@
HGVERSION= @HGVERSION@
HGTAG= @HGTAG@
HGBRANCH= @HGBRANCH@
</pre><p>
and
</p>
<pre class="wiki"> $(CC) -c $(PY_CFLAGS) \
-DSVNVERSION="\"`LC_ALL=C $(SVNVERSION)`\"" \
-DHGVERSION="\"`LC_ALL=C $(HGVERSION)`\"" \
-DHGTAG="\"`LC_ALL=C $(HGTAG)`\"" \
-DHGBRANCH="\"`LC_ALL=C $(HGBRANCH)`\"" \
-o $@ $(srcdir)/Modules/getbuildinfo.c
</pre><p>
later so exporting HG* to something like /bin/true on non-windows OS would presumably solve the problem. But just patching to pass empty strings in the later would probably be safe everywhere.
</p>
TicketfbisseyMon, 05 Dec 2011 02:18:31 GMT
https://trac.sagemath.org/ticket/9958#comment:168
https://trac.sagemath.org/ticket/9958#comment:168
<p>
The first patch doesn't apply in 4.8.alpha3 because of the changes in <a class="closed ticket" href="https://trac.sagemath.org/ticket/12047" title="defect: numerical_integral(f, a, a) should always be zero (closed: fixed)">#12047</a>. New patches will come some. There may be other surprises.
</p>
TicketfbisseyMon, 05 Dec 2011 11:04:50 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:169
https://trac.sagemath.org/ticket/9958#comment:169
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=169">diff</a>)
</li>
</ul>
<p>
Updated the first patch. Haven't been able to test things to find any new problems yet.
</p>
TicketjdemeyerMon, 05 Dec 2011 11:25:12 GMT
https://trac.sagemath.org/ticket/9958#comment:170
https://trac.sagemath.org/ticket/9958#comment:170
<p>
There are a few test failures on a Pentium 4 32-bit Linux system with sage-4.8.alpha2 + <a class="closed ticket" href="https://trac.sagemath.org/ticket/9958" title="enhancement: Upgrade python to 2.7.x (closed: fixed)">#9958</a> + <a class="closed ticket" href="https://trac.sagemath.org/ticket/11986" title="defect: inconsistent integer hashing on 64bit systems with python 2.7 (closed: fixed)">#11986</a>:
</p>
<pre class="wiki">sage -t --long -force_lib devel/sage/sage/combinat/words/suffix_trees.py
**********************************************************************
File "/home/jdemeyer/sage-5.0/devel/sage-main/sage/combinat/words/suffix_trees.py", line 1323:
sage: t.trie_type_dict() == dict([[(0, W("a")), 4], [(0, W("b")), 3], [(3, W("a")), 2], [(4, W("b")), 5], [(5, W("a")), 1]])
Expected:
True
Got:
False
**********************************************************************
sage -t --long -force_lib devel/sage/sage/misc/randstate.pyx
**********************************************************************
File "/home/jdemeyer/sage-5.0/devel/sage-main/sage/misc/randstate.pyx", line 61:
sage: rtest()
Expected:
(978, 0.184109262667515, -3*x^2 - 1/12, (4,5), [ 0, 1, 1, 0, 0 ], 1161603091, 60359, 0.83350776541997362)
Got:
(978, 0.184109262667515, -3*x^2 - 1/12, (4,5), [ 0, 1, 1, 0, 0 ], 1161603091, 60359, 0.8335077654199736)
**********************************************************************
sage -t --long -force_lib devel/sage/sage/combinat/words/nfactor_enumerable_word.py
**********************************************************************
File "/home/jdemeyer/sage-5.0/devel/sage-main/sage/combinat/words/nfactor_enumerable_word.py", line 20:
sage: it.next()
Expected:
word: 6456
Got:
word: 4564
**********************************************************************
File "/home/jdemeyer/sage-5.0/devel/sage-main/sage/combinat/words/nfactor_enumerable_word.py", line 23:
sage: it.next()
Expected:
word: 5645
Got:
word: 6456
**********************************************************************
File "/home/jdemeyer/sage-5.0/devel/sage-main/sage/combinat/words/nfactor_enumerable_word.py", line 26:
sage: it.next()
Expected:
word: 4564
Got:
word: 5645
**********************************************************************
</pre>
TicketjdemeyerMon, 05 Dec 2011 11:26:37 GMT
https://trac.sagemath.org/ticket/9958#comment:171
https://trac.sagemath.org/ticket/9958#comment:171
<p>
I have made a patch for the Integer hashing, see <a class="closed ticket" href="https://trac.sagemath.org/ticket/11986" title="defect: inconsistent integer hashing on 64bit systems with python 2.7 (closed: fixed)">#11986</a>.
</p>
TicketfbisseyMon, 05 Dec 2011 11:48:50 GMT
https://trac.sagemath.org/ticket/9958#comment:172
https://trac.sagemath.org/ticket/9958#comment:172
<p>
I have seen your patch in <a class="closed ticket" href="https://trac.sagemath.org/ticket/11986" title="defect: inconsistent integer hashing on 64bit systems with python 2.7 (closed: fixed)">#11986</a> that's a good rewrite of the hashing in question, the -1 bit is particularly tricky. I mentioned it before but we probably need a different approach for combinat/words/nfactor_enumerable_word.py, the sequence is pretty much random depending on arch and other factors it seems. The randstate.pyx must have escaped <a class="ext-link" href="http://trac.sagemath.org/sage_trac/attachment/ticket/9958/trac_9958-fixing_numericalnoise-part4.patch"><span class="icon"></span>http://trac.sagemath.org/sage_trac/attachment/ticket/9958/trac_9958-fixing_numericalnoise-part4.patch</a> because the test results are identical to some performed later in the same file. I'll correct that shortly.
</p>
<p>
The suffix_trees.pyx rings a bell but I cannot remember where and when.
</p>
TicketfbisseyMon, 05 Dec 2011 11:51:17 GMT
https://trac.sagemath.org/ticket/9958#comment:173
https://trac.sagemath.org/ticket/9958#comment:173
<p>
ha <a class="ext-link" href="http://trac.sagemath.org/sage_trac/ticket/9958#comment:18"><span class="icon"></span>http://trac.sagemath.org/sage_trac/ticket/9958#comment:18</a> is where I had suffix_trees.pyx before. I don't have a 32 bit linux box anymore so it is more difficult. I note they were two you only see one now.
</p>
TicketjdemeyerMon, 05 Dec 2011 13:17:38 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:174
https://trac.sagemath.org/ticket/9958#comment:174
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=174">diff</a>)
</li>
</ul>
TicketjdemeyerMon, 05 Dec 2011 13:18:06 GMTdependencies changed
https://trac.sagemath.org/ticket/9958#comment:175
https://trac.sagemath.org/ticket/9958#comment:175
<ul>
<li><strong>dependencies</strong>
changed from <em>#5852, #11986, #12085</em> to <em>#5852, #11986, #12085, #12096</em>
</li>
</ul>
TicketfbisseyMon, 05 Dec 2011 21:18:00 GMT
https://trac.sagemath.org/ticket/9958#comment:176
https://trac.sagemath.org/ticket/9958#comment:176
<p>
I need a kind soul with 32 bit linux system to explore the suffix tree issue, the doctest is as follow:
</p>
<pre class="wiki"> sage: from sage.combinat.words.suffix_trees import ImplicitSuffixTree, SuffixTrie
sage: W = Words("ab")
sage: t = ImplicitSuffixTree(W("aba"))
sage: t.trie_type_dict() == dict([[(0, W("a")), 4], [(0, W("b")), 3], [(3, W("a")), 2], [(4, W("b")), 5], [(5, W("a")), 1]])
True
</pre><p>
It would be helpful to get the values of "W", "t" and "t.trie_type_dict()" on python-2.6 and 2.7. Then we can make a decision on whether the answer we get with python-2.7 is equivalent to the current output or not.
</p>
TicketstrogdonMon, 05 Dec 2011 21:57:54 GMT
https://trac.sagemath.org/ticket/9958#comment:177
https://trac.sagemath.org/ticket/9958#comment:177
<p>
Here (x86) with sage-4.8.alpha3 + <a class="closed ticket" href="https://trac.sagemath.org/ticket/9958" title="enhancement: Upgrade python to 2.7.x (closed: fixed)">#9958</a> + <a class="closed ticket" href="https://trac.sagemath.org/ticket/11986" title="defect: inconsistent integer hashing on 64bit systems with python 2.7 (closed: fixed)">#11986</a> the suffix_trees test passes:
</p>
<pre class="wiki">./sage -t -long -force_lib devel/sage/sage/combinat/words/suffix_trees.py
sage -t -long -force_lib "devel/sage/sage/combinat/words/suffix_trees.py"
[5.1 s]
----------------------------------------------------------------------
All tests passed!
</pre><p>
The requested values are:
</p>
<pre class="wiki">sage: W
Words over Ordered Alphabet ['a', 'b']
sage: t
Implicit Suffix Tree of the word: aba
sage: t.trie_type_dict()
{(4, word: b): 5, (0, word: a): 4, (0, word: b): 3, (5, word: a): 1, (3, word: a): 2}
</pre><p>
FWIW, on amd64 the test fails with the same sage-4.8.alpha3 + <a class="closed ticket" href="https://trac.sagemath.org/ticket/9958" title="enhancement: Upgrade python to 2.7.x (closed: fixed)">#9958</a> + <a class="closed ticket" href="https://trac.sagemath.org/ticket/11986" title="defect: inconsistent integer hashing on 64bit systems with python 2.7 (closed: fixed)">#11986</a>
</p>
TicketjdemeyerMon, 05 Dec 2011 22:20:33 GMT
https://trac.sagemath.org/ticket/9958#comment:178
https://trac.sagemath.org/ticket/9958#comment:178
<p>
On sage.math (x86_64 Linux), sage-4.8.alpha3 + <a class="closed ticket" href="https://trac.sagemath.org/ticket/12106" title="enhancement: Implement sage --rsyncdist (closed: fixed)">#12106</a> (unrelated) + <a class="closed ticket" href="https://trac.sagemath.org/ticket/9958" title="enhancement: Upgrade python to 2.7.x (closed: fixed)">#9958</a> + <a class="closed ticket" href="https://trac.sagemath.org/ticket/11986" title="defect: inconsistent integer hashing on 64bit systems with python 2.7 (closed: fixed)">#11986</a> gives errors in two files:
</p>
<pre class="wiki">sage -t -force_lib devel/sage/sage/matrix/matrix_mod2e_dense.pyx
**********************************************************************
File "/mnt/usb1/scratch/jdemeyer/merger/sage-5.0/devel/sage-main/sage/matrix/matrix_mod2e_dense.pyx", line 790:
sage: float(A.density())
Expected:
0.099738...
Got:
0.099739
**********************************************************************
File "/mnt/usb1/scratch/jdemeyer/merger/sage-5.0/devel/sage-main/sage/matrix/matrix_mod2e_dense.pyx", line 798:
sage: float(A.density())
Expected:
0.499759...
Got:
0.49976
**********************************************************************
</pre><p>
(related ticket: <a class="closed ticket" href="https://trac.sagemath.org/ticket/9562" title="enhancement: Add M4RIE to Sage (closed: fixed)">#9562</a>)
and
</p>
<pre class="wiki">sage -t -force_lib devel/sage/sage/gsl/integration.pyx
**********************************************************************
File "/mnt/usb1/scratch/jdemeyer/merger/sage-5.0/devel/sage-main/sage/gsl/integration.pyx", line 110:
sage: numerical_integral(x^2, 0, 1, max_points=100)
Expected:
(0.33333333333333331, 3.7007434154171879e-15)
Got:
(0.3333333333333333, 3.700743415417188e-15)
**********************************************************************
File "/mnt/usb1/scratch/jdemeyer/merger/sage-5.0/devel/sage-main/sage/gsl/integration.pyx", line 115:
sage: numerical_integral(sin(x)^3 + sin(x), 0, pi)
Expected:
(3.333333333333333, 3.7007434154171883e-14)
Got:
(3.333333333333333, 3.700743415417188e-14)
**********************************************************************
File "/mnt/usb1/scratch/jdemeyer/merger/sage-5.0/devel/sage-main/sage/gsl/integration.pyx", line 120:
sage: numerical_integral(lambda x: sin(x)^3 + sin(x), 0, pi)
Expected:
(3.333333333333333, 3.7007434154171883e-14)
Got:
(3.333333333333333, 3.700743415417188e-14)
**********************************************************************
File "/mnt/usb1/scratch/jdemeyer/merger/sage-5.0/devel/sage-main/sage/gsl/integration.pyx", line 131:
sage: numerical_integral(f, 0, 1, max_points=200, eps_abs=1e-7, eps_rel=1e-7, rule=4)
Expected:
(0.33333333333333331, 3.7007434154171879e-15)
Got:
(0.3333333333333333, 3.700743415417188e-15)
**********************************************************************
File "/mnt/usb1/scratch/jdemeyer/merger/sage-5.0/devel/sage-main/sage/gsl/integration.pyx", line 172:
sage: exp(-1/x).nintegral(x, 1, 2) # via maxima
Expected:
(0.50479221787318396, 5.6043194293440752e-15, 21, 0)
Got:
(0.504792217873184, 5.604319429344075e-15, 21, 0)
**********************************************************************
</pre><p>
(related ticket: <a class="closed ticket" href="https://trac.sagemath.org/ticket/12047" title="defect: numerical_integral(f, a, a) should always be zero (closed: fixed)">#12047</a>)
</p>
<p>
Also, the spkg should be rebased to <a class="closed ticket" href="https://trac.sagemath.org/ticket/12096" title="defect: Disable parallel "make install" in Python spkg (closed: fixed)">#12096</a>.
</p>
TicketjdemeyerMon, 05 Dec 2011 22:24:02 GMT
https://trac.sagemath.org/ticket/9958#comment:179
https://trac.sagemath.org/ticket/9958#comment:179
<p>
I get on 32-bit i386 Linux with sage-4.8.alpha2 + various patches including <a class="closed ticket" href="https://trac.sagemath.org/ticket/9958" title="enhancement: Upgrade python to 2.7.x (closed: fixed)">#9958</a>:
</p>
<pre class="wiki">sage: from sage.combinat.words.suffix_trees import ImplicitSuffixTree, SuffixTrie
sage: W = Words("ab")
sage: t = ImplicitSuffixTree(W("aba"))
sage: W
Words over Ordered Alphabet ['a', 'b']
sage: t
Implicit Suffix Tree of the word: aba
sage: t.trie_type_dict()
{(4, word: a): 1, (0, word: b): 5, (0, word: a): 3, (5, word: a): 2, (3, word: b): 4}
</pre>
TicketfbisseyMon, 05 Dec 2011 22:52:27 GMT
https://trac.sagemath.org/ticket/9958#comment:180
https://trac.sagemath.org/ticket/9958#comment:180
<p>
thanks for all that feedback. I knew there would be new stuff. I unfortunately (like all of us) not enough time to do things in a speedy fashion. I am bogged down as well with the sage-on-gentoo version of alpha3 not wanting to play nice with <a class="closed ticket" href="https://trac.sagemath.org/ticket/4260" title="enhancement: use LinBox as native matrix representation for dense matrices over GF(p) (closed: fixed)">#4260</a> <a class="ext-link" href="https://github.com/cschwan/sage-on-gentoo/issues/108"><span class="icon"></span>https://github.com/cschwan/sage-on-gentoo/issues/108</a> and it annoys me.
</p>
TicketjdemeyerMon, 05 Dec 2011 22:59:35 GMT
https://trac.sagemath.org/ticket/9958#comment:181
https://trac.sagemath.org/ticket/9958#comment:181
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:180" title="Comment 180">fbissey</a>:
</p>
<blockquote class="citation">
<p>
I am bogged down as well with the sage-on-gentoo version of alpha3 not wanting to play nice with <a class="closed ticket" href="https://trac.sagemath.org/ticket/4260" title="enhancement: use LinBox as native matrix representation for dense matrices over GF(p) (closed: fixed)">#4260</a> <a class="ext-link" href="https://github.com/cschwan/sage-on-gentoo/issues/108"><span class="icon"></span>https://github.com/cschwan/sage-on-gentoo/issues/108</a> and it annoys me.
</p>
</blockquote>
<p>
Does vanilla Sage build and run on that same machine with the same compiler? Be sure to try a different gcc version, Linbox seems to be sensitive to that.
</p>
TicketstrogdonMon, 05 Dec 2011 23:09:44 GMT
https://trac.sagemath.org/ticket/9958#comment:182
https://trac.sagemath.org/ticket/9958#comment:182
<p>
On x86 with sage-4.8.alpha3 + <a class="closed ticket" href="https://trac.sagemath.org/ticket/9958" title="enhancement: Upgrade python to 2.7.x (closed: fixed)">#9958</a> + <a class="closed ticket" href="https://trac.sagemath.org/ticket/11986" title="defect: inconsistent integer hashing on 64bit systems with python 2.7 (closed: fixed)">#11986</a> I have the following failures:
</p>
<pre class="wiki">sage -t -long -force_lib devel/sage-main/sage/gsl/integration.pyx
**********************************************************************
File "/storage/sage/sage-4.8.alpha3/devel/sage-main/sage/gsl/integration.pyx", line 110:
sage: numerical_integral(x^2, 0, 1, max_points=100)
Expected:
(0.33333333333333331, 3.7007434154171879e-15)
Got:
(0.3333333333333333, 3.700743415417188e-15)
**********************************************************************
File "/storage/sage/sage-4.8.alpha3/devel/sage-main/sage/gsl/integration.pyx", line 115:
sage: numerical_integral(sin(x)^3 + sin(x), 0, pi)
Expected:
(3.333333333333333, 3.7007434154171883e-14)
Got:
(3.333333333333333, 3.700743415417188e-14)
**********************************************************************
File "/storage/sage/sage-4.8.alpha3/devel/sage-main/sage/gsl/integration.pyx", line 120:
sage: numerical_integral(lambda x: sin(x)^3 + sin(x), 0, pi)
Expected:
(3.333333333333333, 3.7007434154171883e-14)
Got:
(3.333333333333333, 3.700743415417188e-14)
**********************************************************************
File "/storage/sage/sage-4.8.alpha3/devel/sage-main/sage/gsl/integration.pyx", line 131:
sage: numerical_integral(f, 0, 1, max_points=200, eps_abs=1e-7, eps_rel=1e-7, rule=4)
Expected:
(0.33333333333333331, 3.7007434154171879e-15)
Got:
(0.3333333333333333, 3.700743415417188e-15)
**********************************************************************
File "/storage/sage/sage-4.8.alpha3/devel/sage-main/sage/gsl/integration.pyx", line 172:
sage: exp(-1/x).nintegral(x, 1, 2) # via maxima
Expected:
(0.50479221787318396, 5.6043194293440752e-15, 21, 0)
Got:
(0.504792217873184, 5.604319429344075e-15, 21, 0)
**********************************************************************
</pre><pre class="wiki">sage -t -long -force_lib devel/sage-main/sage/misc/randstate.pyx
**********************************************************************
File "/storage/sage/sage-4.8.alpha3/devel/sage-main/sage/misc/randstate.pyx", line 61:
sage: rtest()
Expected:
(978, 0.184109262667515, -3*x^2 - 1/12, (4,5), [ 0, 1, 1, 0, 0 ], 1161603091, 60359, 0.83350776541997362)
Got:
(978, 0.184109262667515, -3*x^2 - 1/12, (4,5), [ 0, 1, 1, 0, 0 ], 1161603091, 60359, 0.8335077654199736)
**********************************************************************
</pre><pre class="wiki">sage -t -long -force_lib devel/sage-main/sage/matrix/matrix_mod2e_dense.pyx
**********************************************************************
File "/storage/sage/sage-4.8.alpha3/devel/sage-main/sage/matrix/matrix_mod2e_dense.pyx", line 790:
sage: float(A.density())
Expected:
0.099738...
Got:
0.099739
**********************************************************************
File "/storage/sage/sage-4.8.alpha3/devel/sage-main/sage/matrix/matrix_mod2e_dense.pyx", line 798:
sage: float(A.density())
Expected:
0.499759...
Got:
0.49976
**********************************************************************
</pre><pre class="wiki">sage -t -long -force_lib devel/sage-main/sage/functions/transcendental.py
**********************************************************************
File "/storage/sage/sage-4.8.alpha3/devel/sage-main/sage/functions/transcendental.py", line 80:
sage: w = exponential_integral_1(2,4); w
Expected:
[0.04890051070806112, 0.0037793524098489067, 0.00036008245216265873, 3.7665622843924751e-05]
Got:
[0.04890051070806112, 0.0037793524098489067, 0.00036008245216265873, 3.766562284392475e-05]
**********************************************************************
</pre>
TicketfbisseyTue, 06 Dec 2011 00:43:17 GMT
https://trac.sagemath.org/ticket/9958#comment:183
https://trac.sagemath.org/ticket/9958#comment:183
<p>
I now understand why you removed the transcendental patch Jereon some bits ended in my revised trac_9958-fixing_numericalnoise-part1_p2.patch when they shouldn't have. That's what is happening to Steve. I will rectify that.
</p>
<p>
I removed the gsl bits because of <a class="closed ticket" href="https://trac.sagemath.org/ticket/12047" title="defect: numerical_integral(f, a, a) should always be zero (closed: fixed)">#12047</a> so that has to be redone.
</p>
<p>
And I haven't had time to try vanilla yet but it is on my TODO list and I suspect g++ too.
</p>
TicketfbisseyTue, 06 Dec 2011 00:53:36 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-fixing_numericalnoise-part1_p2.patch</em>
</li>
</ul>
<p>
fixing numerical noise part 1 - updated for 4.8.alpha3
</p>
TicketfbisseyTue, 06 Dec 2011 00:55:47 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:184
https://trac.sagemath.org/ticket/9958#comment:184
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=184">diff</a>)
</li>
</ul>
<p>
updated the first patch and readded the transcendental patch to the list.
</p>
TicketfbisseyTue, 06 Dec 2011 01:35:48 GMT
https://trac.sagemath.org/ticket/9958#comment:185
https://trac.sagemath.org/ticket/9958#comment:185
<p>
For suffix_tree it looks like your two values don't agree:
</p>
<pre class="wiki">{(4, word: a): 1, (0, word: b): 5, (0, word: a): 3, (5, word: a): 2, (3, word: b): 4}
{(4, word: b): 5, (0, word: a): 4, (0, word: b): 3, (5, word: a): 1, (3, word: a): 2}
</pre><p>
If we add that I don't see it on OS X x86 that looks bad. I also have an x86_64 machine where the value is the same as Jeroen and the test fails. Steve get the right value on the other hand so there is something going there.
</p>
TicketfbisseyTue, 06 Dec 2011 01:37:15 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-gsl_integration.patch</em>
</li>
</ul>
<p>
fix numerical noise in gsl/integration.pyx
</p>
TicketfbisseyTue, 06 Dec 2011 01:38:34 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-matrix_mod2e_dense.patch</em>
</li>
</ul>
<p>
fix numerical noise introduced by m4rie
</p>
TicketfbisseyTue, 06 Dec 2011 01:40:27 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:186
https://trac.sagemath.org/ticket/9958#comment:186
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=186">diff</a>)
</li>
</ul>
<p>
Added two new patches for gsl integration and m4rie tickets merged in 4.8.alpha3.
</p>
TicketfbisseyTue, 06 Dec 2011 03:41:00 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:187
https://trac.sagemath.org/ticket/9958#comment:187
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=187">diff</a>)
</li>
</ul>
<p>
Rebased the spkg against <a class="closed ticket" href="https://trac.sagemath.org/ticket/12096" title="defect: Disable parallel "make install" in Python spkg (closed: fixed)">#12096</a>.
</p>
TicketjdemeyerTue, 06 Dec 2011 08:43:21 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>python-2.6.4.p12-2.7.2.p0.diff</em>
</li>
</ul>
<p>
Diff for the Python spkg, for review only
</p>
TicketjdemeyerTue, 06 Dec 2011 17:19:36 GMT
https://trac.sagemath.org/ticket/9958#comment:188
https://trac.sagemath.org/ticket/9958#comment:188
<p>
Everything passes against sage-4.8.alpha3 on 64bit. Yay!
</p>
TicketfbisseyTue, 06 Dec 2011 19:45:41 GMT
https://trac.sagemath.org/ticket/9958#comment:189
https://trac.sagemath.org/ticket/9958#comment:189
<p>
I forgot to add a new bit for randstate.pyx on 32 bit. I'll do that later but I know it is missing. Should we involve someone from combinatronics to get to the bottom of suffix_tree and nfactor_enumerate_word?
</p>
TicketjdemeyerTue, 06 Dec 2011 19:55:47 GMT
https://trac.sagemath.org/ticket/9958#comment:190
https://trac.sagemath.org/ticket/9958#comment:190
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:189" title="Comment 189">fbissey</a>:
</p>
<blockquote class="citation">
<p>
Should we involve someone from combinatronics to get to the bottom of suffix_tree and nfactor_enumerate_word?
</p>
</blockquote>
<p>
Sounds good, try to send an email to sage-devel.
</p>
TicketstrogdonTue, 06 Dec 2011 20:21:24 GMT
https://trac.sagemath.org/ticket/9958#comment:191
https://trac.sagemath.org/ticket/9958#comment:191
<p>
For the sake of completeness, I now have
</p>
<p>
32bit: one failure
</p>
<pre class="wiki">sage -t -long -force_lib devel/sage-main/sage/misc/randstate.pyx
</pre><p>
which was mentioned above.
</p>
<p>
64bit: two failures
</p>
<pre class="wiki">
sage -t -long -force_lib devel/sage-main/sage/combinat/words/nfactor_enumerable_word.py
**********************************************************************
File "/storage/sage/sage-4.8.alpha3/devel/sage-main/sage/combinat/words/nfactor_enumerable
_word.py", line 20:
sage: it.next()
Expected:
word: 5645
Got:
word: 4564
**********************************************************************
File "/storage/sage/sage-4.8.alpha3/devel/sage-main/sage/combinat/words/nfactor_enumerable
_word.py", line 23:
sage: it.next()
Expected:
word: 6456
Got:
word: 5645
**********************************************************************
File "/storage/sage/sage-4.8.alpha3/devel/sage-main/sage/combinat/words/nfactor_enumerable
_word.py", line 26:
sage: it.next()
Expected:
word: 4564
Got:
word: 6456
**********************************************************************
sage -t -long -force_lib devel/sage-main/sage/combinat/words/suffix_trees.py
**********************************************************************
File "/storage/sage/sage-4.8.alpha3/devel/sage-main/sage/combinat/words/suffix_trees.py",
line 1323:
sage: t.trie_type_dict() == dict([[(0, W("a")), 4], [(0, W("b")), 3], [(3, W("a")), 2]
, [(4, W("b")), 5], [(5, W("a")), 1]])
Expected:
True
Got:
False
**********************************************************************
</pre><p>
which have been mentioned previously.
</p>
TicketjdemeyerTue, 06 Dec 2011 20:53:53 GMT
https://trac.sagemath.org/ticket/9958#comment:192
https://trac.sagemath.org/ticket/9958#comment:192
<p>
This ticket made me notice a bug with the L-series of Eisenstein series: <a class="closed ticket" href="https://trac.sagemath.org/ticket/12124" title="defect: Fix Eisenstein L-series precision (closed: fixed)">#12124</a>. With that ticket applied, the patch to <code>sage/modular/modform/eis_series.py</code> here can be removed.
</p>
TickethivertWed, 07 Dec 2011 22:27:56 GMT
https://trac.sagemath.org/ticket/9958#comment:193
https://trac.sagemath.org/ticket/9958#comment:193
<p>
First of all, I'm not an expert of combinatorics on word. So I'd rather
Sebastien Labbe to jump in the discussion. I just trying to help.
</p>
<blockquote class="citation">
<p>
64bit: two failures
</p>
</blockquote>
<pre class="wiki">sage -t -long -force_lib devel/sage-main/sage/combinat/words/nfactor_enumerable_word.py
**********************************************************************
File "/storage/sage/sage-4.8.alpha3/devel/sage-main/sage/combinat/words/nfactor_enumerable
_word.py", line 20:
sage: it.next()
Expected:
word: 5645
Got:
word: 4564
**********************************************************************
File "/storage/sage/sage-4.8.alpha3/devel/sage-main/sage/combinat/words/nfactor_enumerable
_word.py", line 23:
sage: it.next()
Expected:
word: 6456
Got:
word: 5645
**********************************************************************
File "/storage/sage/sage-4.8.alpha3/devel/sage-main/sage/combinat/words/nfactor_enumerable
_word.py", line 26:
sage: it.next()
Expected:
word: 4564
Got:
word: 6456
**********************************************************************
</pre><p>
This first failure is not a problem. The iterator here is extracted from a
dict of dict so it is not unexpected to have a random order. Fixing the test
of marking it at random should be ok. This test is an explanation for the
user, the real feature is tested further in the file.
</p>
<blockquote class="citation">
<p>
which have been mentioned previously.
</p>
</blockquote>
<pre class="wiki">{(4, word: a): 1, (0, word: b): 5, (0, word: a): 3, (5, word: a): 2, (3, word: b): 4}
{(4, word: b): 5, (0, word: a): 4, (0, word: b): 3, (5, word: a): 1, (3, word: a): 2}
</pre><p>
This one is more tricky: As far as I understand, both result are perfectly
legible: the second is the same as the first after applying the following
cyclic permutation (3,4,5). The numbering is random. So (again as far as I
understand), the problem in only created by the cross-platform non-determinism
of the set/dict data structure. I'm not sure here what is the best fix.
</p>
<p>
Cheers,
</p>
<p>
Florent
</p>
TicketfbisseyThu, 08 Dec 2011 00:52:06 GMT
https://trac.sagemath.org/ticket/9958#comment:194
https://trac.sagemath.org/ticket/9958#comment:194
<p>
Thank you Florent, that is helpful. We kind of worked out that word was OK but we thought we could have a better test. If you think that's ok to mark it random I think we'll do that with some explanation.
</p>
<p>
The fact that both output in suffix_tree are legit is good to know. We can probably work around that. We may even have a complete patch set by Monday, cross fingers.
</p>
TicketjdemeyerFri, 09 Dec 2011 21:42:14 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:195
https://trac.sagemath.org/ticket/9958#comment:195
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=195">diff</a>)
</li>
</ul>
<p>
Upgraded succesfully from sage-4.6.2, all tests pass except for the known problematic tests.
</p>
TicketfbisseySat, 10 Dec 2011 11:21:16 GMT
https://trac.sagemath.org/ticket/9958#comment:196
https://trac.sagemath.org/ticket/9958#comment:196
<p>
I'll work on the remaining tests tomorrow, I hope. I will remove the eis_series.py and see if I can review <a class="closed ticket" href="https://trac.sagemath.org/ticket/12124" title="defect: Fix Eisenstein L-series precision (closed: fixed)">#12124</a> as well. I looks like the python spkg will need rebasing again with <a class="closed ticket" href="https://trac.sagemath.org/ticket/12131" title="defect: $SAGE_LOCAL/lib and lib64 (closed: fixed)">#12131</a>.
</p>
TicketjdemeyerSat, 10 Dec 2011 20:27:46 GMT
https://trac.sagemath.org/ticket/9958#comment:197
https://trac.sagemath.org/ticket/9958#comment:197
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:196" title="Comment 196">fbissey</a>:
</p>
<blockquote class="citation">
<p>
I'll work on the remaining tests tomorrow, I hope.
</p>
</blockquote>
<p>
That would be great! I would love to see this finished in time, such that the next release can really be sage-5.0.
</p>
TicketfbisseySat, 10 Dec 2011 22:12:56 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-suffix_trees-variations.patch</em>
</li>
</ul>
<p>
test against more valid dictionaries in suffix_trees
</p>
TicketfbisseySat, 10 Dec 2011 22:13:27 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-fix_randstate.pyx</em>
</li>
</ul>
<p>
fix all numerical noise in randstate
</p>
TicketfbisseySat, 10 Dec 2011 22:14:55 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-fixing_numericalnoise-part1_p3.patch</em>
</li>
</ul>
<p>
fixing numerical noise part 1 - updated 20111211: separate randstate and eis_modn_series
</p>
TicketfbisseySat, 10 Dec 2011 22:22:11 GMTstatus, description changed
https://trac.sagemath.org/ticket/9958#comment:198
https://trac.sagemath.org/ticket/9958#comment:198
<ul>
<li><strong>status</strong>
changed from <em>needs_work</em> to <em>needs_review</em>
</li>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=198">diff</a>)
</li>
</ul>
<p>
updating the patch set with a tentative solution for suffix_trees. It may not be exhaustive of all possible answers though. If we are going for it for the next release I can redo the python spkg to fix the lib/lib64 from <a class="closed ticket" href="https://trac.sagemath.org/ticket/12131" title="defect: $SAGE_LOCAL/lib and lib64 (closed: fixed)">#12131</a>.
</p>
<p>
Putting to need review :)
</p>
TicketslabbeSat, 10 Dec 2011 22:54:59 GMT
https://trac.sagemath.org/ticket/9958#comment:199
https://trac.sagemath.org/ticket/9958#comment:199
<p>
Hi,
</p>
<p>
I just read randomly sage-devel (I was away from sage development for several weeks) and saw that the discussion about upgrading to 2.7 was having problem with some files I am related with (suffix_tree.py nfactor_enumerable_word.py). I still don't understand the dict problem for suffix tree (one minute was not enough). I will look into that to avoid similar problem in the future. If something else pops up in those file, I can do the fix next time.
</p>
<p>
Sébastien
</p>
TicketfbisseySat, 10 Dec 2011 23:03:54 GMT
https://trac.sagemath.org/ticket/9958#comment:200
https://trac.sagemath.org/ticket/9958#comment:200
<p>
Your input on the matter is welcome. According to Florent, the problem in suffix_trees is that there are several equivalent answers and some platforms now give a different one than the one you originally tested for. Note that we don't know what the trigger is for having a different answer it is not a 32/64 bit separation as we have seen both answers on the two kinds of systems.
</p>
TicketfbisseySun, 11 Dec 2011 00:51:33 GMT
https://trac.sagemath.org/ticket/9958#comment:201
https://trac.sagemath.org/ticket/9958#comment:201
<p>
Actually, you should have a look at what I did for both of these in <a class="attachment" href="https://trac.sagemath.org/attachment/ticket/9958/trac_9958-nfactor_enumerable_word-randomness.patch" title="Attachment 'trac_9958-nfactor_enumerable_word-randomness.patch' in Ticket #9958">trac_9958-nfactor_enumerable_word-randomness.patch</a><a class="trac-rawlink" href="https://trac.sagemath.org/raw-attachment/ticket/9958/trac_9958-nfactor_enumerable_word-randomness.patch" title="Download"></a> and <a class="attachment" href="https://trac.sagemath.org/attachment/ticket/9958/trac_9958-suffix_trees-variations.patch" title="Attachment 'trac_9958-suffix_trees-variations.patch' in Ticket #9958">trac_9958-suffix_trees-variations.patch</a><a class="trac-rawlink" href="https://trac.sagemath.org/raw-attachment/ticket/9958/trac_9958-suffix_trees-variations.patch" title="Download"></a>. If you could give your opinion on the patches or if you want to submit patches of your own it would be appreciated.
</p>
TicketstrogdonSun, 11 Dec 2011 07:07:13 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:202
https://trac.sagemath.org/ticket/9958#comment:202
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=202">diff</a>)
</li>
</ul>
<p>
With the current update I have the following failures:
</p>
<pre class="wiki">32bit
sage -t -long -force_lib devel/sage-9958/sage/combinat/words/nfactor_enumerable_word
.py
**********************************************************************
File "/storage/sage/sage-4.8.alpha3/devel/sage-9958/sage/combinat/words/nfactor_enume
rable_word.py", line 23:
sage: it.next()
Expected:
word: 6456 # random
Got:
word: 6456
**********************************************************************
File "/storage/sage/sage-4.8.alpha3/devel/sage-9958/sage/combinat/words/nfactor_enume
rable_word.py", line 25:
sage: it.next()
Expected:
word: 5645 # random
Got:
word: 5645
**********************************************************************
File "/storage/sage/sage-4.8.alpha3/devel/sage-9958/sage/combinat/words/nfactor_enume
rable_word.py", line 27:
sage: it.next()
Expected:
word: 4564 # random
Got:
word: 4564
**********************************************************************
64bit
sage -t -long -force_lib devel/sage-9958/sage/combinat/words/nfactor_enumerable_word
.py
**********************************************************************
File "/storage/sage/sage-4.8.alpha3/devel/sage-9958/sage/combinat/words/nfactor_enume
rable_word.py", line 23:
sage: it.next()
Expected:
word: 6456 # random
Got:
word: 4564
**********************************************************************
File "/storage/sage/sage-4.8.alpha3/devel/sage-9958/sage/combinat/words/nfactor_enume
rable_word.py", line 25:
sage: it.next()
Expected:
word: 5645 # random
Got:
word: 5645
**********************************************************************
File "/storage/sage/sage-4.8.alpha3/devel/sage-9958/sage/combinat/words/nfactor_enume
rable_word.py", line 27:
sage: it.next()
Expected:
word: 4564 # random
Got:
word: 6456
**********************************************************************
</pre><p>
and on 32bit and 64bit
</p>
<pre class="wiki">
sage -t -long -force_lib devel/sage-9958/sage/misc/randstate.pyx
**********************************************************************
File "/storage/sage/sage-4.8.alpha3/devel/sage-9958/sage/misc/randstate.pyx", line 15
3:
sage: random(), getrandbits(20), uniform(5.0, 10.0), normalvariate(0, 1)
Expected:
(0.82940228518742587, 624859L, 5.77894484361117, -0.42013668263087578)
Got:
(0.8294022851874259, 624859L, 5.77894484361117, -0.4201366826308758)
**********************************************************************
</pre><p>
I don't recall previously seeing this particular randstate.pyx failure. Perhaps I've missed something.
</p>
TicketjdemeyerSun, 11 Dec 2011 09:59:18 GMTstatus changed
https://trac.sagemath.org/ticket/9958#comment:203
https://trac.sagemath.org/ticket/9958#comment:203
<ul>
<li><strong>status</strong>
changed from <em>needs_review</em> to <em>needs_work</em>
</li>
</ul>
<p>
Yeah, the <code>#random</code> should be on the line with the command to execute, not the result.
</p>
TicketfbisseySun, 11 Dec 2011 11:28:07 GMT
https://trac.sagemath.org/ticket/9958#comment:204
https://trac.sagemath.org/ticket/9958#comment:204
<p>
I had to make that mistake :(
</p>
<p>
The last randstate.pyx one is definitely new, I am sure it didn't happen before.
</p>
TicketfbisseySun, 11 Dec 2011 11:32:22 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-nfactor_enumerable_word-randomness.patch</em>
</li>
</ul>
<p>
take into account the randomness of it.next sequence of call - put random in the right place this time.
</p>
TicketfbisseySun, 11 Dec 2011 11:34:48 GMT
https://trac.sagemath.org/ticket/9958#comment:205
https://trac.sagemath.org/ticket/9958#comment:205
<p>
OK I replaced the trac_9958-nfactor_enumerable_word-randomness.patch in place. So random should be in the right place now. I am looking to see if I can reproduce this particular randstate.pyx problem.
</p>
TicketfbisseySun, 11 Dec 2011 11:43:13 GMT
https://trac.sagemath.org/ticket/9958#comment:206
https://trac.sagemath.org/ticket/9958#comment:206
<p>
I missed a line in randstate! And you cut the last digit of the line number Steve, now that caused me some confusion. Updating shortly.
</p>
TicketfbisseySun, 11 Dec 2011 11:50:22 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-fix_randstate.patch</em>
</li>
</ul>
<p>
fix all numerical noise in randstate
</p>
TicketfbisseySun, 11 Dec 2011 11:51:57 GMTstatus, description changed
https://trac.sagemath.org/ticket/9958#comment:207
https://trac.sagemath.org/ticket/9958#comment:207
<ul>
<li><strong>status</strong>
changed from <em>needs_work</em> to <em>needs_review</em>
</li>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=207">diff</a>)
</li>
</ul>
<p>
OK new randstate patch, this time it is even a .patch instead of .pyx. Thanks for pointing out those mistakes.
</p>
TicketstrogdonSun, 11 Dec 2011 19:00:06 GMT
https://trac.sagemath.org/ticket/9958#comment:208
https://trac.sagemath.org/ticket/9958#comment:208
<p>
OK, <a class="closed ticket" href="https://trac.sagemath.org/ticket/9958" title="enhancement: Upgrade python to 2.7.x (closed: fixed)">#9958</a> + <a class="closed ticket" href="https://trac.sagemath.org/ticket/11986" title="defect: inconsistent integer hashing on 64bit systems with python 2.7 (closed: fixed)">#11986</a> + <a class="closed ticket" href="https://trac.sagemath.org/ticket/12124" title="defect: Fix Eisenstein L-series precision (closed: fixed)">#12124</a>, all tests pass here on 32bit and 64bit machines. Is it too early for champagne?
</p>
TicketfbisseySun, 11 Dec 2011 21:08:16 GMT
https://trac.sagemath.org/ticket/9958#comment:209
https://trac.sagemath.org/ticket/9958#comment:209
<p>
Unfortunately, I'd say it is too early. We need Karl to test it on his old ppc OS X 10.4 mac and a run on solaris is also in order. I removed a patch for ia64 that didn't obviously port to python-2.7 so a look at that platform is also in order. In the mean time we can review <a class="closed ticket" href="https://trac.sagemath.org/ticket/11986" title="defect: inconsistent integer hashing on 64bit systems with python 2.7 (closed: fixed)">#11986</a> and <a class="closed ticket" href="https://trac.sagemath.org/ticket/12124" title="defect: Fix Eisenstein L-series precision (closed: fixed)">#12124</a> which I think can be done independently.
</p>
<p>
We could even split the combinat patches as they should work with python-2.6. It just there is nothing obvious to fix there.
</p>
TicketjdemeyerSun, 11 Dec 2011 21:18:47 GMT
https://trac.sagemath.org/ticket/9958#comment:210
https://trac.sagemath.org/ticket/9958#comment:210
<p>
As I have said before, testing is easy. I am currently running tests for the upcoming sage-4.8.alpha4, but after that, I could test the new Python on various systems.
</p>
<p>
But still, somebody needs to actually <em>look</em> at the patches and verify that they make sense.
</p>
TicketfbisseySun, 11 Dec 2011 21:33:50 GMT
https://trac.sagemath.org/ticket/9958#comment:211
https://trac.sagemath.org/ticket/9958#comment:211
<p>
OK Jeroen, that's a boring task for someone most of them are of the form:
</p>
<pre class="wiki">diff --git a/sage/misc/sage_unittest.py b/sage/misc/sage_unittest.py
--- a/sage/misc/sage_unittest.py
+++ b/sage/misc/sage_unittest.py
@@ -201,12 +201,12 @@
Failure in _test_b:
Traceback (most recent call last):
...
- AssertionError
+ AssertionError: None
------------------------------------------------------------
Failure in _test_d:
Traceback (most recent call last):
...
- AssertionError
+ AssertionError: None
------------------------------------------------------------
Failure in _test_pickling:
Traceback (most recent call last):
@@ -220,14 +220,14 @@
running ._test_b() . . . fail
Traceback (most recent call last):
...
- AssertionError
+ AssertionError: None
------------------------------------------------------------
running ._test_c() . . . pass
running ._test_category() . . . pass
running ._test_d() . . . fail
Traceback (most recent call last):
...
- AssertionError
+ AssertionError: None
------------------------------------------------------------
running ._test_not_implemented_methods() . . . pass
running ._test_pickling() . . . fail
@@ -249,7 +249,7 @@
File ..., in _test_b
def _test_b(self, tester): tester.fail()
...
- AssertionError
+ AssertionError: None
In conjonction with ``%pdb on``, this allows for the debbuger
to jump directly to the first failure location.
@@ -311,7 +311,7 @@
sage: tester.assert_(1 == 0)
Traceback (most recent call last):
...
- AssertionError
+ AssertionError: False is not true
sage: tester.assert_(1 == 0, "this is expected to fail")
Traceback (most recent call last):
...
</pre><p>
and other numerical noise niceties cutting one digit and sometimes the rounding makes a lot of digits disappear (and it looks better actually), for example in plot/colors.py
</p>
<pre class="wiki">@@ -290,23 +290,23 @@
sage: from sage.plot.colors import rgbcolor
sage: rgbcolor(Color(0.25, 0.4, 0.9))
- (0.25, 0.40000000000000002, 0.90000000000000002)
+ (0.25, 0.4, 0.9)
sage: rgbcolor('purple')
</pre><p>
Only the two combinat patches are a bit more subtle.
</p>
TicketkcrismanMon, 12 Dec 2011 13:55:59 GMT
https://trac.sagemath.org/ticket/9958#comment:212
https://trac.sagemath.org/ticket/9958#comment:212
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:209" title="Comment 209">fbissey</a>:
</p>
<blockquote class="citation">
<p>
Unfortunately, I'd say it is too early. We need Karl to test it on his old ppc OS X 10.4 mac and a run on solaris is also in order.
</p>
</blockquote>
<p>
Is this all based on 4.8.alpha3? I can try to do this starting today. Jeroen might be done before me, though :) at least by the time I finish applying ALL of these patches.
</p>
TicketfbisseyMon, 12 Dec 2011 20:27:27 GMT
https://trac.sagemath.org/ticket/9958#comment:213
https://trac.sagemath.org/ticket/9958#comment:213
<p>
It should apply to 4.8.alpha3, apply <a class="closed ticket" href="https://trac.sagemath.org/ticket/11986" title="defect: inconsistent integer hashing on 64bit systems with python 2.7 (closed: fixed)">#11986</a> + <a class="closed ticket" href="https://trac.sagemath.org/ticket/12124" title="defect: Fix Eisenstein L-series precision (closed: fixed)">#12124</a> also.
</p>
TicketjdemeyerTue, 13 Dec 2011 08:16:16 GMT
https://trac.sagemath.org/ticket/9958#comment:214
https://trac.sagemath.org/ticket/9958#comment:214
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:212" title="Comment 212">kcrisman</a>:
</p>
<blockquote class="citation">
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:209" title="Comment 209">fbissey</a>:
</p>
<blockquote class="citation">
<p>
Unfortunately, I'd say it is too early. We need Karl to test it on his old ppc OS X 10.4 mac and a run on solaris is also in order.
</p>
</blockquote>
<p>
Is this all based on 4.8.alpha3? I can try to do this starting today. Jeroen might be done before me, though :)
</p>
</blockquote>
<p>
Go ahead, I'm currently tackling other beasts...
</p>
TicketjdemeyerTue, 13 Dec 2011 12:51:47 GMTdependencies changed
https://trac.sagemath.org/ticket/9958#comment:215
https://trac.sagemath.org/ticket/9958#comment:215
<ul>
<li><strong>dependencies</strong>
changed from <em>#5852, #11986, #12085, #12096</em> to <em>#5852, #11986, #12085, #12096, #12124</em>
</li>
</ul>
TicketslabbeTue, 13 Dec 2011 17:20:08 GMT
https://trac.sagemath.org/ticket/9958#comment:216
https://trac.sagemath.org/ticket/9958#comment:216
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:201" title="Comment 201">fbissey</a>:
</p>
<blockquote class="citation">
<p>
Actually, you should have a look at what I did for both of these in <a class="attachment" href="https://trac.sagemath.org/attachment/ticket/9958/trac_9958-nfactor_enumerable_word-randomness.patch" title="Attachment 'trac_9958-nfactor_enumerable_word-randomness.patch' in Ticket #9958">trac_9958-nfactor_enumerable_word-randomness.patch</a><a class="trac-rawlink" href="https://trac.sagemath.org/raw-attachment/ticket/9958/trac_9958-nfactor_enumerable_word-randomness.patch" title="Download"></a> and <a class="attachment" href="https://trac.sagemath.org/attachment/ticket/9958/trac_9958-suffix_trees-variations.patch" title="Attachment 'trac_9958-suffix_trees-variations.patch' in Ticket #9958">trac_9958-suffix_trees-variations.patch</a><a class="trac-rawlink" href="https://trac.sagemath.org/raw-attachment/ticket/9958/trac_9958-suffix_trees-variations.patch" title="Download"></a>. If you could give your opinion on the patches or if you want to submit patches of your own it would be appreciated.
</p>
</blockquote>
<p>
Hi,
</p>
<p>
I just look at the suffix tree code (written not by me but by Franco Saliola). The method <code>trie_type_dict</code> is not used anywhere in the file neither in <code>sage/combinat/words</code> neither in all Sage I would guess. So, it's kind of difficult to guess what the result should be (input and output blocks are absent in documentation). I think that method was used by Franco to compare the implementation of <code>ImplicitSuffixTree</code> with that of <code>SuffixTrie</code> but not seriously because the output is not practical (one can't create a <code>DiGraph</code> out of it).
</p>
<p>
Anyway, there are two loops in that method that both go through <code>.iteritems()</code> of a dictionary... Integer indexes present in the result depends on the ordering of those two loops. So, it is possible that a third different result is obtained in some other machine or system today or later. I just made a patch which should be more durable in the long term.
</p>
<p>
For the nfactor enumerable file, the fix is perfect.
</p>
TicketslabbeTue, 13 Dec 2011 17:23:09 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-suffix_trees-variations-sl.patch</em>
</li>
</ul>
<p>
Fix machine dependant doctest in suffix tree
</p>
TicketkcrismanTue, 13 Dec 2011 18:23:56 GMT
https://trac.sagemath.org/ticket/9958#comment:217
https://trac.sagemath.org/ticket/9958#comment:217
<blockquote class="citation">
<blockquote class="citation">
<blockquote class="citation">
<p>
Unfortunately, I'd say it is too early. We need Karl to test it on his old ppc OS X 10.4 mac and a run on solaris is also in order.
</p>
</blockquote>
<p>
Is this all based on 4.8.alpha3? I can try to do this starting today. Jeroen might be done before me, though :)
</p>
</blockquote>
<p>
Go ahead, I'm currently tackling other beasts...
</p>
</blockquote>
<p>
Okay, at least everything applies and builds from this and the two other tickets. (Note that <a class="closed ticket" href="https://trac.sagemath.org/ticket/11986" title="defect: inconsistent integer hashing on 64bit systems with python 2.7 (closed: fixed)">#11986</a> is listed as a dependency of <strong>and</strong> for <a class="closed ticket" href="https://trac.sagemath.org/ticket/9958" title="enhancement: Upgrade python to 2.7.x (closed: fixed)">#9958</a>.)
</p>
<p>
So presumably sometime tomorrow I can report back. So far six files having tested well...
</p>
TicketfbisseyTue, 13 Dec 2011 18:32:14 GMT
https://trac.sagemath.org/ticket/9958#comment:218
https://trac.sagemath.org/ticket/9958#comment:218
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:216" title="Comment 216">slabbe</a>:
</p>
<blockquote class="citation">
<p>
Anyway, there are two loops in that method that both go through <code>.iteritems()</code> of a dictionary... Integer indexes present in the result depends on the ordering of those two loops. So, it is possible that a third different result is obtained in some other machine or system today or later. I just made a patch which should be more durable in the long term.
</p>
<p>
For the nfactor enumerable file, the fix is perfect.
</p>
</blockquote>
<p>
Thanks. I thought there could be a third possible results from Florent's comments (permutation (3,4,5)) but couldn't figure what it would look like. Happy to have some serious review for that bit.
</p>
TicketfbisseyTue, 13 Dec 2011 21:08:09 GMT
https://trac.sagemath.org/ticket/9958#comment:219
https://trac.sagemath.org/ticket/9958#comment:219
<p>
OK the upgrade of R in <a class="closed ticket" href="https://trac.sagemath.org/ticket/12057" title="enhancement: Upgrade R (r-project.org) (closed: fixed)">#12057</a> shipped with 4.8.alpha4 makes a small bit of patch for r.py obsolete. Updating it shortly.
</p>
TicketfbisseyTue, 13 Dec 2011 21:11:18 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958-fixing_numericalnoise-part1_p4.patch</em>
</li>
</ul>
<p>
fixing numerical noise part 1 - updated 20111214 for 4.8.alpha4
</p>
TicketfbisseyTue, 13 Dec 2011 21:12:15 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:220
https://trac.sagemath.org/ticket/9958#comment:220
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=220">diff</a>)
</li>
</ul>
<p>
First patch updated. I don't think there will be any more changes because of 4.8.alpha4 but I could be wrong.
</p>
TicketstrogdonWed, 14 Dec 2011 02:08:21 GMT
https://trac.sagemath.org/ticket/9958#comment:221
https://trac.sagemath.org/ticket/9958#comment:221
<p>
It looks like a slight modification is still needed in interfaces/r.py. On both x86 and amd64 I get
</p>
<pre class="wiki">sage -t -long -force_lib devel/sage-main/sage/interfaces/r.py
**********************************************************************
File "/storage/sage/sage-4.8.alpha4/devel/sage-main/sage/interfaces/r.py", line 173:
sage: sum(rr._sage_())
Expected:
9.97721251689810...
Got:
9.97721251689811
**********************************************************************
</pre><p>
<a class="attachment" href="https://trac.sagemath.org/attachment/ticket/9958/trac_9958-suffix_trees-variations-sl.patch" title="Attachment 'trac_9958-suffix_trees-variations-sl.patch' in Ticket #9958">attachment:trac_9958-suffix_trees-variations-sl.patch:ticket:9958</a><a class="trac-rawlink" href="https://trac.sagemath.org/raw-attachment/ticket/9958/trac_9958-suffix_trees-variations-sl.patch" title="Download"></a> was used in the tests.
</p>
TicketfbisseyWed, 14 Dec 2011 02:22:05 GMT
https://trac.sagemath.org/ticket/9958#comment:222
https://trac.sagemath.org/ticket/9958#comment:222
<p>
I have seen it on my sage-on-gentoo test run but I hadn't tried yet on a vanilla to check if it was caused by other gentoo stuff. I will add a small patch ASAP.
</p>
TicketfbisseyWed, 14 Dec 2011 03:20:50 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>trac_9958_fix_rpy.patch</em>
</li>
</ul>
<p>
numerical noise in interface/r.py updated for R-2.14.0
</p>
TicketfbisseyWed, 14 Dec 2011 03:22:05 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:223
https://trac.sagemath.org/ticket/9958#comment:223
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=223">diff</a>)
</li>
</ul>
<p>
New patch included for interface/r.py in 4.8.alpha4.
</p>
TicketjasonWed, 14 Dec 2011 10:02:02 GMT
https://trac.sagemath.org/ticket/9958#comment:224
https://trac.sagemath.org/ticket/9958#comment:224
<p>
How do we test this ticket? Is it enough to untar a fresh tarball of the 4.8.alpha4 source, replace the existing python spkg with the one from this ticket, and do a normal make? Then apply the patches to the sage library and run doctests?
</p>
<p>
On OSX 10.6.8, I tried downloading a fresh copy of 4.8.alpha4, putting this python spkg in the spkg/standard directory and deleting the old python spkg. I ended up getting a build error, seemingly right after I finished building scipy (even though scipy said it was built succesfully, but I was also building spkgs in parallel). I typed "make" again to restart the process and the same thing happened after rpy built---it said rpy was built successfully, but then it stopped the build, saying "Error building Sage".
</p>
TicketfbisseyWed, 14 Dec 2011 11:51:11 GMT
https://trac.sagemath.org/ticket/9958#comment:225
https://trac.sagemath.org/ticket/9958#comment:225
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:224" title="Comment 224">jason</a>:
</p>
<blockquote class="citation">
<p>
How do we test this ticket? Is it enough to untar a fresh tarball of the 4.8.alpha4 source, replace the existing python spkg with the one from this ticket, and do a normal make? Then apply the patches to the sage library and run doctests?
</p>
</blockquote>
<p>
Yes that's how you should do it.
</p>
<blockquote class="citation">
<p>
On OSX 10.6.8, I tried downloading a fresh copy of 4.8.alpha4, putting this python spkg in the spkg/standard directory and deleting the old python spkg. I ended up getting a build error, seemingly right after I finished building scipy (even though scipy said it was built succesfully, but I was also building spkgs in parallel). I typed "make" again to restart the process and the same thing happened after rpy built---it said rpy was built successfully, but then it stopped the build, saying "Error building Sage".
</p>
</blockquote>
<p>
Could you post the log for the build of python somewhere? scipy and rpy are built after sage (or at least they can be since they are runtime and not buildtime dependencies) so it is possible you were building sage itself at the same time. Is there a log for the sage spkg (in spkg/log)?
</p>
TicketjasonWed, 14 Dec 2011 14:20:39 GMT
https://trac.sagemath.org/ticket/9958#comment:226
https://trac.sagemath.org/ticket/9958#comment:226
<p>
I posted the install.log here: <a class="ext-link" href="http://sage.math.washington.edu/home/jason/sage-4.8.alpha4-python2.7-install.log.bz2"><span class="icon"></span>http://sage.math.washington.edu/home/jason/sage-4.8.alpha4-python2.7-install.log.bz2</a>
</p>
<p>
If you search for "Error building Sage", you'll see the multiple times I restarted the build (that message appeared after each time I restarted the build).
</p>
<p>
Here's the list of spkg logs I have:
</p>
<pre class="wiki">
sage-4.8.alpha4newpython/spkg/logs% ls
atlas-3.8.4.log gdmodule-0.56.p7.log moin-1.9.1.p2.log ratpoints-2.1.3.p1.log
blas-20070724.log genus2reduction-0.3.p8.log mpfi-1.3.4-cvs20071125.p8.log readline-6.2.p1.log
boehm_gc-7.2.alpha6.p1.log gfan-0.4plus.p1.log mpfr-2.4.2.log rpy2-2.0.8.log
boost-cropped-1.34.1.log givaro-3.2.13rc2.p2.log mpir-2.1.3.p8.log rubiks-20070912.p17.log
bzip2-1.0.5.log glpk-4.44.log mpmath-0.17.log sage_root-4.8.alpha4.log
cddlib-094f.p8.log gnutls-2.2.1.p5.log networkx-1.2.p1.log sage_scripts-4.8.alpha4.log
cephes-2.8.log graphs-20070722.p1.log ntl-5.5.2.log sagenb-0.8.25.log
cliquer-1.2.p10.log gsl-1.15.log numpy-1.5.1.log scipy-0.9.p1.log
conway_polynomials-0.2.log iconv-1.13.1.p3.log opencdk-0.6.6.p5.log scons-1.2.0.log
cvxopt-1.1.3.log iml-1.0.1.p13.log palp-1.1.p3.log setuptools-0.6.16.log
cython-0.15.1.log ipython-0.10.2.p0.log pari-2.5.0.p2.log singular-3-1-3-3.p2.log
dir-0.1.log jinja2-2.5.5.log patch-2.5.9.p2.log sphinx-1.1.2.p0.log
docutils-0.7.p0.log lapack-20071123.p2.log pexpect-2.0.p4.log sqlalchemy-0.5.8.log
ecl-11.1.2.cvs20111120.p0.log lcalc-1.23.p9.log pil-1.1.6.p4.log sqlite-3.7.5.log
eclib-20100711.p0.log libfplll-3.0.12.p1.log polybori-0.7.1.p6.log symmetrica-2.0.p7.log
ecm-6.3.p2.log libgcrypt-1.4.4.p3.log polytopes_db-20100210.log sympow-1.018.1.p9.log
elliptic_curves-0.3.log libgpg_error-1.6.p3.log ppl-0.11.2.log sympy-0.7.1.log
extcode-4.8.alpha4.log libm4ri-20111004.log prereq-0.9.log tachyon-0.98.9.p5.log
f2c-20070816.p2.log libm4rie-20111004.log pycrypto-2.1.0.log termcap-1.3.1.p1.log
flint-1.5.0.p10.log libpng-1.2.35.p3.log pygments-1.3.1.p0.log twisted-9.0.p2.log
flintqs-20070817.p6.log linbox-1.1.6.p5.log pynac-0.2.3.log zlib-1.2.5.p0.log
fortran-20100629.log matplotlib-1.0.1.p0.log python-2.7.2.p0.log zn_poly-0.9.p5.log
freetype-2.3.5.p3.log maxima-5.23.2.p2.log python_gnutls-1.1.4.p7.log zodb3-3.7.0.p4.log
gd-2.0.35.p5.log mercurial-1.8.4.log r-2.14.0.p0.log
</pre>
TicketkcrismanWed, 14 Dec 2011 21:15:10 GMT
https://trac.sagemath.org/ticket/9958#comment:227
https://trac.sagemath.org/ticket/9958#comment:227
<p>
All is well on the PPC OS X front, even with the r.py, amazingly; it failed the first time but passed on a rerun.
</p>
TicketfbisseyWed, 14 Dec 2011 22:46:02 GMT
https://trac.sagemath.org/ticket/9958#comment:228
https://trac.sagemath.org/ticket/9958#comment:228
<p>
Jason the log you sent is not very useful, at least I cannot easily find something interesting. Could you provide the following:
</p>
<ul><li>python-2.7.2.p0.log
</li><li>polybori-0.7.1.p6.log
</li><li>ppl-0.11.2.log
</li><li>pynac-0.2.3.log
</li></ul><p>
That's a shot in the dark so far. But the building of sage never started as there is no log for sage itself.
</p>
<p>
I digged a little bit more before posting it looks like R fails to build so I want to see r-2.14.0.p0.log but that may be a separate issue from python. matplotlib seems to fail to build too so I want matplotlib-1.0.1.p0.log and now we are talking real potential python trouble.
</p>
TicketkcrismanThu, 15 Dec 2011 01:30:56 GMT
https://trac.sagemath.org/ticket/9958#comment:229
https://trac.sagemath.org/ticket/9958#comment:229
<p>
I'm going to try this with
</p>
<pre class="wiki">export MAKE="make -j2"
</pre><p>
on the same platform and report back.
</p>
TicketjasonThu, 15 Dec 2011 02:49:03 GMT
https://trac.sagemath.org/ticket/9958#comment:230
https://trac.sagemath.org/ticket/9958#comment:230
<p>
First, here are my standard build environment settings:
</p>
<pre class="wiki">export SAGE_MATPLOTLIB_GUI=yes
export SAGE_PARALLEL_SPKG_BUILD=yes
export MAKE="make -j6"
export SAGE_SPKG_INSTALL_DOCS=yes
</pre><p>
All the requested logs are tarred up at <a class="ext-link" href="http://sage.math.washington.edu/home/jason/newpython-spkg-logs.tar.gz"><span class="icon"></span>http://sage.math.washington.edu/home/jason/newpython-spkg-logs.tar.gz</a>
</p>
TicketjasonThu, 15 Dec 2011 02:51:08 GMT
https://trac.sagemath.org/ticket/9958#comment:231
https://trac.sagemath.org/ticket/9958#comment:231
<p>
Tonight, I'll try building again without setting any of those environment variables to see if it succeeds with a "stock" build.
</p>
TicketkcrismanThu, 15 Dec 2011 02:56:44 GMT
https://trac.sagemath.org/ticket/9958#comment:232
https://trac.sagemath.org/ticket/9958#comment:232
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:229" title="Comment 229">kcrisman</a>:
</p>
<blockquote class="citation">
<p>
I'm going to try this with
</p>
</blockquote>
<pre class="wiki">> export MAKE="make -j2"
</pre><blockquote class="citation">
<p>
on the same platform and report back.
</p>
</blockquote>
<p>
Interestingly, Scipy and R are definitely (right now) building before Sage. And they usually do not, for sure not Scipy, on my ancient older Mac.
</p>
<p>
Scipy has successfully installed, as has matplotlib. R takes forever but so far is fine. Maybe it was "just a race condition"?
</p>
TicketjasonThu, 15 Dec 2011 03:02:05 GMT
https://trac.sagemath.org/ticket/9958#comment:233
https://trac.sagemath.org/ticket/9958#comment:233
<p>
I bet the matplotlib error shows up for me because I define SAGE_MATPLOTLIB_GUI (so that matplotlib tries to build the GUI backends).
</p>
TicketfbisseyThu, 15 Dec 2011 03:04:25 GMT
https://trac.sagemath.org/ticket/9958#comment:234
https://trac.sagemath.org/ticket/9958#comment:234
<p>
It is quite possibly something broken with the GUI from what I can see of your original log. scipy can build whenever after numpy independently of sage so I don't see a problem there.
</p>
TicketfbisseyThu, 15 Dec 2011 03:06:16 GMT
https://trac.sagemath.org/ticket/9958#comment:235
https://trac.sagemath.org/ticket/9958#comment:235
<p>
Yes I think matplotlib cannot find tk. We may want to look at this in depth on OS X.
</p>
TicketjasonThu, 15 Dec 2011 03:12:45 GMT
https://trac.sagemath.org/ticket/9958#comment:236
https://trac.sagemath.org/ticket/9958#comment:236
<p>
The matplotlib error is fixed upstream: <a class="ext-link" href="https://github.com/matplotlib/matplotlib/issues/139"><span class="icon"></span>https://github.com/matplotlib/matplotlib/issues/139</a>
</p>
TicketfbisseyThu, 15 Dec 2011 03:22:13 GMT
https://trac.sagemath.org/ticket/9958#comment:237
https://trac.sagemath.org/ticket/9958#comment:237
<p>
Very good, we may want to bump the spkg to 1.1.0 then. From my sage-on-gentoo experience there is just one minor doctest failure from matplotli-1.1.0
</p>
<pre class="wiki">sage -t -long -force_lib "devel/sage/sage/plot/colors.py"
**********************************************************************
File "/usr/share/sage/devel/sage/sage/plot/colors.py", line 1241:
sage: len(maps.maps)
Expected:
134
Got:
138
**********************************************************************
File "/usr/share/sage/devel/sage/sage/plot/colors.py", line 1285:
sage: len(maps)
Expected:
134
Got:
138
**********************************************************************
</pre><p>
Fairly standard each time we bump matplotlib or almost.
</p>
<p>
You R package definitely broke the first time around. I am fairly sure this is a parallel make issue. I have seen at least one instance that I suspect is parallel make on Gentoo. Of course given that it stop because of
</p>
<pre class="wiki">make[6]: gcc: Resource temporarily unavailable
</pre><p>
I think, we may have something else altogether. It should go into a separate ticket.
</p>
TicketjasonThu, 15 Dec 2011 03:24:13 GMT
https://trac.sagemath.org/ticket/9958#comment:238
https://trac.sagemath.org/ticket/9958#comment:238
<p>
Do you already have a 1.1.0 spkg? I'm working on one right now, but you already have one...
</p>
TicketkcrismanThu, 15 Dec 2011 03:29:14 GMT
https://trac.sagemath.org/ticket/9958#comment:239
https://trac.sagemath.org/ticket/9958#comment:239
<blockquote class="citation">
<p>
Scipy has successfully installed, as has matplotlib. R takes forever but so far is fine. Maybe it was "just a race condition"?
</p>
</blockquote>
<p>
<em>Everything</em> built before the Sage library except Gap and SageTeX. No problems. I say this shouldn't keep the Python upgrade out, or?
</p>
TicketfbisseyThu, 15 Dec 2011 03:31:41 GMT
https://trac.sagemath.org/ticket/9958#comment:240
https://trac.sagemath.org/ticket/9958#comment:240
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:238" title="Comment 238">jason</a>:
</p>
<blockquote class="citation">
<p>
Do you already have a 1.1.0 spkg? I'm working on one right now, but you already have one...
</p>
</blockquote>
<p>
I don't have one. I don't need one for sage-on-gentoo as I am using system packages. You go ahead and create a ticket to upgrade matplotlib. I say it is a show stopper because it would happen on other platforms. Hopefully we can review it quickly.
</p>
TicketkcrismanThu, 15 Dec 2011 03:47:02 GMT
https://trac.sagemath.org/ticket/9958#comment:241
https://trac.sagemath.org/ticket/9958#comment:241
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:240" title="Comment 240">fbissey</a>:
</p>
<blockquote class="citation">
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:238" title="Comment 238">jason</a>:
</p>
<blockquote class="citation">
<p>
Do you already have a 1.1.0 spkg? I'm working on one right now, but you already have one...
</p>
</blockquote>
<p>
I don't have one. I don't need one for sage-on-gentoo as I am using system packages. You go ahead and create a ticket to upgrade matplotlib. I say it is a show stopper because it would happen on other platforms. Hopefully we can review it quickly.
</p>
</blockquote>
<p>
What about just making a patch upgrade with <a class="ext-link" href="https://github.com/matplotlib/matplotlib/commit/e4a34df93f6"><span class="icon"></span>the 1.5-liner</a> rather than making a whole new package which would require even MORE testing? Plus, then you don't have to worry about getting those four extra colormaps :) Anyway, I feel this is easier and more reasonable just to get this in 5.0.alpha0 (or whatever release is next for such a big spkg change as this ticket).
</p>
TicketkcrismanThu, 15 Dec 2011 03:53:12 GMTauthor changed; reviewer set
https://trac.sagemath.org/ticket/9958#comment:242
https://trac.sagemath.org/ticket/9958#comment:242
<ul>
<li><strong>reviewer</strong>
set to <em>John Palmieri, Karl-Dieter Crisman, Jason Grout, Jeroen Demeyer, Steven Trogdon, Leif Leonhardy, Sébastien Labbé</em>
</li>
<li><strong>author</strong>
changed from <em>François Bissey</em> to <em>François Bissey, Steven Trogdon</em>
</li>
</ul>
TicketfbisseyThu, 15 Dec 2011 03:54:36 GMT
https://trac.sagemath.org/ticket/9958#comment:243
https://trac.sagemath.org/ticket/9958#comment:243
<p>
I have no objections to that. Faster is better in that case because we really want to land this quickly because every other moves of the tree makes me rewrite stuff. It start to be hard to manage.
</p>
TicketfbisseyThu, 15 Dec 2011 03:57:01 GMTauthor changed
https://trac.sagemath.org/ticket/9958#comment:244
https://trac.sagemath.org/ticket/9958#comment:244
<ul>
<li><strong>author</strong>
changed from <em>François Bissey, Steven Trogdon</em> to <em>François Bissey, Steven Trogdon, Sébastien Labbé</em>
</li>
</ul>
TicketjasonThu, 15 Dec 2011 06:24:50 GMT
https://trac.sagemath.org/ticket/9958#comment:245
https://trac.sagemath.org/ticket/9958#comment:245
<p>
I added a link to a patched version of the current matplotlib spkg. I also added the diff as an information-only patch above. Independent from this fix, I've also made a matplotlib 1.1.0 spkg, which also fixes the problem, but may need more testing than this very slight change to the existing matplotlib spkg.
</p>
TicketjasonThu, 15 Dec 2011 06:25:37 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:246
https://trac.sagemath.org/ticket/9958#comment:246
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=246">diff</a>)
</li>
</ul>
TicketjasonThu, 15 Dec 2011 06:26:15 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:247
https://trac.sagemath.org/ticket/9958#comment:247
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=247">diff</a>)
</li>
</ul>
TicketjasonThu, 15 Dec 2011 06:49:55 GMT
https://trac.sagemath.org/ticket/9958#comment:248
https://trac.sagemath.org/ticket/9958#comment:248
<p>
By the way, the matplotlib 1.1.0 spkg is at <a class="closed ticket" href="https://trac.sagemath.org/ticket/11915" title="enhancement: upgrade matplotlib to 1.1.0 (closed: fixed)">#11915</a>, but the spkg here should be sufficient.
</p>
TicketfbisseyThu, 15 Dec 2011 11:50:07 GMT
https://trac.sagemath.org/ticket/9958#comment:249
https://trac.sagemath.org/ticket/9958#comment:249
<p>
<a class="closed ticket" href="https://trac.sagemath.org/ticket/12131" title="defect: $SAGE_LOCAL/lib and lib64 (closed: fixed)">#12131</a> has been merged, I'll rebase the python spkg by next Monday hopefully.
</p>
TicketjasonThu, 15 Dec 2011 13:36:43 GMT
https://trac.sagemath.org/ticket/9958#comment:250
https://trac.sagemath.org/ticket/9958#comment:250
<p>
Using the new matplotlib-1.0.1.p1.spkg above, and my standard build environment variables:
</p>
<pre class="wiki">export SAGE_MATPLOTLIB_GUI=yes
export SAGE_PARALLEL_SPKG_BUILD=yes
export MAKE="make -j6"
export SAGE_SPKG_INSTALL_DOCS=yes
</pre><p>
Everything except R builds nicely. R still has that message about resources not being available (something about fork). I then changed MAKE to "make -j2" and restarted the make and everything finished just fine. Again, on OSX 10.6.8 (4G of memory).
</p>
<p>
That's a bummer that make -j6 doesn't work. Regular old 4.8.alpha4 built fine, so I don't think it's just the new R spkg. I'll try building fresh one more time, but with MAKE=make -j4 just to check things out.
</p>
TicketjasonThu, 15 Dec 2011 18:18:10 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:251
https://trac.sagemath.org/ticket/9958#comment:251
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=251">diff</a>)
</li>
</ul>
<p>
The matplotlib spkg at <a class="closed ticket" href="https://trac.sagemath.org/ticket/11915" title="enhancement: upgrade matplotlib to 1.1.0 (closed: fixed)">#11915</a> is ready for review (and depends on the <a class="closed ticket" href="https://trac.sagemath.org/ticket/11976" title="enhancement: matrix plot colorbars (closed: fixed)">#11976</a>, also ready for review). Instead of using the matplotlib-1.0.1.p1.spkg above, it would be preferable to review and merge <a class="closed ticket" href="https://trac.sagemath.org/ticket/11976" title="enhancement: matrix plot colorbars (closed: fixed)">#11976</a> and <a class="closed ticket" href="https://trac.sagemath.org/ticket/11915" title="enhancement: upgrade matplotlib to 1.1.0 (closed: fixed)">#11915</a>.
</p>
TicketjhpalmieriThu, 15 Dec 2011 19:49:35 GMT
https://trac.sagemath.org/ticket/9958#comment:252
https://trac.sagemath.org/ticket/9958#comment:252
<p>
Okay, I started with 4.8.alpha4, added the new python spkg from this ticket, the new matplotlib spkg from <a class="closed ticket" href="https://trac.sagemath.org/ticket/11915" title="enhancement: upgrade matplotlib to 1.1.0 (closed: fixed)">#11915</a>, applied all of the patches from this ticket, <a class="closed ticket" href="https://trac.sagemath.org/ticket/11976" title="enhancement: matrix plot colorbars (closed: fixed)">#11976</a>, <a class="closed ticket" href="https://trac.sagemath.org/ticket/11986" title="defect: inconsistent integer hashing on 64bit systems with python 2.7 (closed: fixed)">#11986</a>, and <a class="closed ticket" href="https://trac.sagemath.org/ticket/12124" title="defect: Fix Eisenstein L-series precision (closed: fixed)">#12124</a>. I have a tarball with all of these:
</p>
<p>
<a class="ext-link" href="http://sage.math.washington.edu/home/palmieri/misc/9958/sage-4.8.alpha4-9958.tar"><span class="icon"></span>http://sage.math.washington.edu/home/palmieri/misc/9958/sage-4.8.alpha4-9958.tar</a>
</p>
<p>
along with an upgrade path:
</p>
<p>
<a class="ext-link" href="http://sage.math.washington.edu/home/palmieri/misc/9958/sage-4.8.alpha4-9958/"><span class="icon"></span>http://sage.math.washington.edu/home/palmieri/misc/9958/sage-4.8.alpha4-9958/</a>
</p>
<p>
for testing.
</p>
TicketjasonThu, 15 Dec 2011 21:39:34 GMT
https://trac.sagemath.org/ticket/9958#comment:253
https://trac.sagemath.org/ticket/9958#comment:253
<p>
Did you also apply the patch from <a class="closed ticket" href="https://trac.sagemath.org/ticket/11915" title="enhancement: upgrade matplotlib to 1.1.0 (closed: fixed)">#11915</a>?
</p>
TicketjhpalmieriThu, 15 Dec 2011 22:59:13 GMT
https://trac.sagemath.org/ticket/9958#comment:254
https://trac.sagemath.org/ticket/9958#comment:254
<p>
No, looks like I missed that one.
</p>
TicketjhpalmieriFri, 16 Dec 2011 00:50:28 GMT
https://trac.sagemath.org/ticket/9958#comment:255
https://trac.sagemath.org/ticket/9958#comment:255
<p>
Okay, here are versions including the patch from <a class="closed ticket" href="https://trac.sagemath.org/ticket/11915" title="enhancement: upgrade matplotlib to 1.1.0 (closed: fixed)">#11915</a>:
</p>
<ul><li><a class="ext-link" href="http://sage.math.washington.edu/home/palmieri/misc/9958/sage-4.8.a4-9958.tar"><span class="icon"></span>http://sage.math.washington.edu/home/palmieri/misc/9958/sage-4.8.a4-9958.tar</a>
</li><li><a class="ext-link" href="http://sage.math.washington.edu/home/palmieri/misc/9958/sage-4.8.a4-9958/"><span class="icon"></span>http://sage.math.washington.edu/home/palmieri/misc/9958/sage-4.8.a4-9958/</a>
</li></ul>
TicketjdemeyerFri, 16 Dec 2011 08:50:17 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:256
https://trac.sagemath.org/ticket/9958#comment:256
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=256">diff</a>)
</li>
</ul>
TicketjasonFri, 16 Dec 2011 16:14:12 GMT
https://trac.sagemath.org/ticket/9958#comment:257
https://trac.sagemath.org/ticket/9958#comment:257
<p>
I took jhpalmieri's original tarball, applied the patch from <a class="closed ticket" href="https://trac.sagemath.org/ticket/11915" title="enhancement: upgrade matplotlib to 1.1.0 (closed: fixed)">#11915</a> myself, built it with these settings:
</p>
<pre class="wiki">SAGE_MATPLOTLIB_GUI=yes
SAGE_PARALLEL_SPKG_BUILD=yes
MAKE=make -j12
SAGE_SPKG_INSTALL_DOCS=yes
</pre><p>
on Ubuntu 10.04. Everything built fine, and make ptestlong passed all tests. Yeah!
</p>
TicketkcrismanTue, 20 Dec 2011 02:33:49 GMT
https://trac.sagemath.org/ticket/9958#comment:258
https://trac.sagemath.org/ticket/9958#comment:258
<p>
What remains to be done here for positive review?
</p>
TicketfbisseyTue, 20 Dec 2011 02:43:45 GMT
https://trac.sagemath.org/ticket/9958#comment:259
https://trac.sagemath.org/ticket/9958#comment:259
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:258" title="Comment 258">kcrisman</a>:
</p>
<blockquote class="citation">
<p>
What remains to be done here for positive review?
</p>
</blockquote>
<p>
First I have to rebase the python spkg to <a class="closed ticket" href="https://trac.sagemath.org/ticket/12131" title="defect: $SAGE_LOCAL/lib and lib64 (closed: fixed)">#12131</a>. Second there is a new matplotlib spkg currently merged in 4.8.alpha5 (unreleased) that needs review in <a class="closed ticket" href="https://trac.sagemath.org/ticket/11915" title="enhancement: upgrade matplotlib to 1.1.0 (closed: fixed)">#11915</a>. Then someone has to look at the patches to make sure they are not completely stupid (long tiedous job).
</p>
<p>
Then we can move this to a positive review. I was hoping to be able to to rebase the spkg on Sunday but it didn't happen. I am busy doing a bit of code for my paid work but once it is done. I'll go for it, that may be tomorrow in my time zone.
</p>
TicketfbisseyTue, 20 Dec 2011 21:28:22 GMT
https://trac.sagemath.org/ticket/9958#comment:260
https://trac.sagemath.org/ticket/9958#comment:260
<p>
python-2.7.2.p0 spkg rebased and available.
</p>
TicketfbisseyTue, 20 Dec 2011 22:16:22 GMT
https://trac.sagemath.org/ticket/9958#comment:261
https://trac.sagemath.org/ticket/9958#comment:261
<blockquote>
<p>
<a class="closed ticket" href="https://trac.sagemath.org/ticket/11986" title="defect: inconsistent integer hashing on 64bit systems with python 2.7 (closed: fixed)">#11986</a> also needs review. It looks like it may need to go at the same time as python 2.7 as my own testing with python 2.6 on linux amd64 was not positive but everything is smooth with python 2.7.
</p>
</blockquote>
TicketstrogdonWed, 21 Dec 2011 01:14:50 GMT
https://trac.sagemath.org/ticket/9958#comment:262
https://trac.sagemath.org/ticket/9958#comment:262
<p>
For sage-4.8.alpha4 with tickets <a class="closed ticket" href="https://trac.sagemath.org/ticket/9958" title="enhancement: Upgrade python to 2.7.x (closed: fixed)">#9958</a> + <a class="closed ticket" href="https://trac.sagemath.org/ticket/11986" title="defect: inconsistent integer hashing on 64bit systems with python 2.7 (closed: fixed)">#11986</a> + <a class="closed ticket" href="https://trac.sagemath.org/ticket/12124" title="defect: Fix Eisenstein L-series precision (closed: fixed)">#12124</a> + <a class="closed ticket" href="https://trac.sagemath.org/ticket/11976" title="enhancement: matrix plot colorbars (closed: fixed)">#11976</a> + <a class="closed ticket" href="https://trac.sagemath.org/ticket/11915" title="enhancement: upgrade matplotlib to 1.1.0 (closed: fixed)">#11915</a> all tests pass on x86 and on amd64 there is one TIME OUT
</p>
<pre class="wiki">sage -t -long -force_lib devel/sage-matplotlib-1.1.0/sage/interfaces/ecm.py
*** *** Error: TIMED OUT! PROCESS KILLED! *** ***
[1800.2 s]
</pre><p>
The test did pass when run individually. I'm sure this is due to running the tests in parallel. I've seen it before, not with this ticket, but with sage-on-gentoo builds.
</p>
TicketfbisseyWed, 21 Dec 2011 01:26:36 GMT
https://trac.sagemath.org/ticket/9958#comment:263
https://trac.sagemath.org/ticket/9958#comment:263
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:262" title="Comment 262">strogdon</a>:
</p>
<blockquote class="citation">
<p>
For sage-4.8.alpha4 with tickets <a class="closed ticket" href="https://trac.sagemath.org/ticket/9958" title="enhancement: Upgrade python to 2.7.x (closed: fixed)">#9958</a> + <a class="closed ticket" href="https://trac.sagemath.org/ticket/11986" title="defect: inconsistent integer hashing on 64bit systems with python 2.7 (closed: fixed)">#11986</a> + <a class="closed ticket" href="https://trac.sagemath.org/ticket/12124" title="defect: Fix Eisenstein L-series precision (closed: fixed)">#12124</a> + <a class="closed ticket" href="https://trac.sagemath.org/ticket/11976" title="enhancement: matrix plot colorbars (closed: fixed)">#11976</a> + <a class="closed ticket" href="https://trac.sagemath.org/ticket/11915" title="enhancement: upgrade matplotlib to 1.1.0 (closed: fixed)">#11915</a> all tests pass on x86 and on amd64 there is one TIME OUT
</p>
<pre class="wiki">sage -t -long -force_lib devel/sage-matplotlib-1.1.0/sage/interfaces/ecm.py
*** *** Error: TIMED OUT! PROCESS KILLED! *** ***
[1800.2 s]
</pre><p>
The test did pass when run individually. I'm sure this is due to running the tests in parallel. I've seen it before, not with this ticket, but with sage-on-gentoo builds.
</p>
</blockquote>
<p>
I have seen it before too - in parallel tests as well. It seems that ecm can be a bad boy, not sure what to do about it but that would be outside of the scope of this ticket in my opinion.
</p>
<p>
Steve, did you do any test of <a class="closed ticket" href="https://trac.sagemath.org/ticket/11986" title="defect: inconsistent integer hashing on 64bit systems with python 2.7 (closed: fixed)">#11986</a> with python-2.6?
</p>
TicketstrogdonWed, 21 Dec 2011 01:48:03 GMT
https://trac.sagemath.org/ticket/9958#comment:264
https://trac.sagemath.org/ticket/9958#comment:264
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:263" title="Comment 263">fbissey</a>:
</p>
<blockquote class="citation">
<p>
Steve, did you do any test of <a class="closed ticket" href="https://trac.sagemath.org/ticket/11986" title="defect: inconsistent integer hashing on 64bit systems with python 2.7 (closed: fixed)">#11986</a> with python-2.6?
</p>
</blockquote>
<p>
No, I haven't done that with python-2.6. I will do it, but hopefully someone beats me to it.
</p>
TicketjdemeyerTue, 03 Jan 2012 13:17:23 GMT
https://trac.sagemath.org/ticket/9958#comment:265
https://trac.sagemath.org/ticket/9958#comment:265
<p>
Upgrading from sage-4.5 fails with:
</p>
<pre class="wiki">Testing that Sage starts...
[2012-01-03 13:47:34]
Traceback (most recent call last):
File "/mnt/usb1/scratch/jdemeyer/sage-4.5-python27/local/bin/sage-eval", line 4, in <module>
from sage.all import *
File "/mnt/usb1/scratch/jdemeyer/sage-4.5-python27/local/lib/python2.7/site-packages/sage/all.py", line 75, in <module>
from sage.matrix.all import *
File "/mnt/usb1/scratch/jdemeyer/sage-4.5-python27/local/lib/python2.7/site-packages/sage/matrix/all.py", line 1, in <module>
from matrix_space import MatrixSpace, is_MatrixSpace
File "/mnt/usb1/scratch/jdemeyer/sage-4.5-python27/local/lib/python2.7/site-packages/sage/matrix/matrix_space.py", line 37, in <module>
import matrix_modn_dense
File "matrix_modn_dense.pyx", line 1, in init sage.matrix.matrix_modn_dense (sage/matrix/matrix_modn_dense.c:15026)
AttributeError: 'module' object has no attribute 'Matrix_dense'
Sage failed to start up.
Please email sage-devel (http://groups.google.com/group/sage-devel)
explaining the problem and send the log file
/mnt/usb1/scratch/jdemeyer/sage-4.5-python27/start.log
Describe your computer, operating system, etc.
</pre><p>
After <code>sage -ba-force</code>, it works again.
</p>
TicketfbisseyWed, 04 Jan 2012 01:35:47 GMT
https://trac.sagemath.org/ticket/9958#comment:266
https://trac.sagemath.org/ticket/9958#comment:266
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:265" title="Comment 265">jdemeyer</a>:
</p>
<blockquote class="citation">
<p>
Upgrading from sage-4.5 fails with:
</p>
<pre class="wiki">Testing that Sage starts...
[2012-01-03 13:47:34]
Traceback (most recent call last):
File "/mnt/usb1/scratch/jdemeyer/sage-4.5-python27/local/bin/sage-eval", line 4, in <module>
from sage.all import *
File "/mnt/usb1/scratch/jdemeyer/sage-4.5-python27/local/lib/python2.7/site-packages/sage/all.py", line 75, in <module>
from sage.matrix.all import *
File "/mnt/usb1/scratch/jdemeyer/sage-4.5-python27/local/lib/python2.7/site-packages/sage/matrix/all.py", line 1, in <module>
from matrix_space import MatrixSpace, is_MatrixSpace
File "/mnt/usb1/scratch/jdemeyer/sage-4.5-python27/local/lib/python2.7/site-packages/sage/matrix/matrix_space.py", line 37, in <module>
import matrix_modn_dense
File "matrix_modn_dense.pyx", line 1, in init sage.matrix.matrix_modn_dense (sage/matrix/matrix_modn_dense.c:15026)
AttributeError: 'module' object has no attribute 'Matrix_dense'
Sage failed to start up.
Please email sage-devel (http://groups.google.com/group/sage-devel)
explaining the problem and send the log file
/mnt/usb1/scratch/jdemeyer/sage-4.5-python27/start.log
Describe your computer, operating system, etc.
</pre><p>
After <code>sage -ba-force</code>, it works again.
</p>
</blockquote>
<p>
Quite weird. You would think those particular libraries would have been rebuilt already after the linbox upgrade at least. Shouldn't a complete rebuild of sage occur after a python upgrade? In any case that seems mild for upgrading from 4.5 which was released on June 2010 many versions away.
</p>
TicketjdemeyerWed, 04 Jan 2012 07:31:59 GMTstatus changed; work_issues set
https://trac.sagemath.org/ticket/9958#comment:267
https://trac.sagemath.org/ticket/9958#comment:267
<ul>
<li><strong>status</strong>
changed from <em>needs_review</em> to <em>needs_work</em>
</li>
<li><strong>work_issues</strong>
set to <em>Fix upgrading</em>
</li>
</ul>
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:266" title="Comment 266">fbissey</a>:
</p>
<blockquote class="citation">
<p>
Shouldn't a complete rebuild of sage occur after a python upgrade?
</p>
</blockquote>
<p>
I guess it should. Do you know how to make this happen?
</p>
TicketjdemeyerWed, 04 Jan 2012 10:36:39 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:268
https://trac.sagemath.org/ticket/9958#comment:268
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=268">diff</a>)
</li>
</ul>
TicketjdemeyerWed, 04 Jan 2012 10:40:54 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>python-2.7.2.p0.diff</em>
</li>
</ul>
<p>
Diff for the Python spkg (without deleted files), for review only
</p>
TicketjdemeyerWed, 04 Jan 2012 10:41:17 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:269
https://trac.sagemath.org/ticket/9958#comment:269
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=269">diff</a>)
</li>
</ul>
TicketjdemeyerWed, 04 Jan 2012 19:06:38 GMTstatus, dependencies, description changed; work_issues deleted
https://trac.sagemath.org/ticket/9958#comment:270
https://trac.sagemath.org/ticket/9958#comment:270
<ul>
<li><strong>status</strong>
changed from <em>needs_work</em> to <em>needs_review</em>
</li>
<li><strong>dependencies</strong>
changed from <em>#5852, #11986, #12085, #12096, #12124</em> to <em>#5852, #11986, #12085, #12096, #12124, #11915</em>
</li>
<li><strong>work_issues</strong>
<em>Fix upgrading</em> deleted
</li>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=270">diff</a>)
</li>
</ul>
<p>
Upgrading fixed by deleting
</p>
<pre class="wiki">$SAGE_ROOT/devel/sage-*/build
</pre><p>
when an old version of Python is detected.
</p>
<p>
New spkg: <a class="ext-link" href="http://boxen.math.washington.edu/home/jdemeyer/spkg/python-2.7.2.p1.spkg"><span class="icon"></span>http://boxen.math.washington.edu/home/jdemeyer/spkg/python-2.7.2.p1.spkg</a>
</p>
TicketjdemeyerWed, 04 Jan 2012 19:07:16 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>python-2.7.2.p0-p1.diff</em>
</li>
</ul>
<p>
Diff for the Python spkg 2.7.2.p0 -> 2.7.2.p1, for review only
</p>
TicketjdemeyerWed, 04 Jan 2012 19:08:56 GMTauthor changed
https://trac.sagemath.org/ticket/9958#comment:271
https://trac.sagemath.org/ticket/9958#comment:271
<ul>
<li><strong>author</strong>
changed from <em>François Bissey, Steven Trogdon, Sébastien Labbé</em> to <em>François Bissey, Steven Trogdon, Sébastien Labbé, Jeroen Demeyer</em>
</li>
</ul>
<p>
<strong>positive_review</strong> to the spkg, modulo my changes in the 2.7.2.p1 package.
</p>
TicketfbisseyThu, 05 Jan 2012 02:52:18 GMT
https://trac.sagemath.org/ticket/9958#comment:272
https://trac.sagemath.org/ticket/9958#comment:272
<p>
Looks good to me. I didn't notice I missed a patch in the stuff I removed. Anyway I'll be on low activity because my home computer has given up the ghost (writing from an old box cobbled together running puppy 4.00 from a _1_GB hard drive) and I am on leave.
</p>
TicketjdemeyerThu, 05 Jan 2012 15:13:10 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>9958_float_printing.patch</em>
</li>
</ul>
TicketjdemeyerThu, 05 Jan 2012 15:13:20 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>9958_exceptions.patch</em>
</li>
</ul>
TicketjdemeyerThu, 05 Jan 2012 15:13:41 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>9958_misc.patch</em>
</li>
</ul>
TicketjdemeyerThu, 05 Jan 2012 15:15:49 GMTdescription changed
https://trac.sagemath.org/ticket/9958#comment:273
https://trac.sagemath.org/ticket/9958#comment:273
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/9958?action=diff&version=273">diff</a>)
</li>
</ul>
<p>
Folded all the patches into only four patches.
</p>
TicketjdemeyerThu, 05 Jan 2012 16:09:20 GMT
https://trac.sagemath.org/ticket/9958#comment:274
https://trac.sagemath.org/ticket/9958#comment:274
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:272" title="Comment 272">fbissey</a>:
</p>
<blockquote class="citation">
<p>
Looks good to me.
</p>
</blockquote>
<p>
Meaning "positive review"? :-)
</p>
TicketfbisseyThu, 05 Jan 2012 21:36:15 GMTstatus, reviewer changed
https://trac.sagemath.org/ticket/9958#comment:275
https://trac.sagemath.org/ticket/9958#comment:275
<ul>
<li><strong>status</strong>
changed from <em>needs_review</em> to <em>positive_review</em>
</li>
<li><strong>reviewer</strong>
changed from <em>John Palmieri, Karl-Dieter Crisman, Jason Grout, Jeroen Demeyer, Steven Trogdon, Leif Leonhardy, Sébastien Labbé</em> to <em>John Palmieri, Karl-Dieter Crisman, Jason Grout, Jeroen Demeyer, Steven Trogdon, Leif Leonhardy, Sébastien Labbé, François Bissey</em>
</li>
</ul>
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:274" title="Comment 274">jdemeyer</a>:
</p>
<blockquote class="citation">
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:272" title="Comment 272">fbissey</a>:
</p>
<blockquote class="citation">
<p>
Looks good to me.
</p>
</blockquote>
<p>
Meaning "positive review"? :-)
</p>
</blockquote>
<p>
Absolutely positive! Hopefully nothing will happen to make us break or add to those 4 megapatches.
</p>
TicketjdemeyerThu, 05 Jan 2012 22:09:05 GMT
https://trac.sagemath.org/ticket/9958#comment:276
https://trac.sagemath.org/ticket/9958#comment:276
<p>
<a class="attachment" href="https://trac.sagemath.org/attachment/ticket/9958/9958_combinat.patch" title="Attachment '9958_combinat.patch' in Ticket #9958">9958_combinat.patch</a><a class="trac-rawlink" href="https://trac.sagemath.org/raw-attachment/ticket/9958/9958_combinat.patch" title="Download"></a> is the only non-trivial change I guess, but has been discussed well in the comments on this ticket. Potentially, the <code>trie_type_dict()</code> test might yield other results, but we can still change the test in that case. Anyway, that method is nowhere called in the Sage library.
</p>
TicketfbisseyThu, 05 Jan 2012 22:18:27 GMT
https://trac.sagemath.org/ticket/9958#comment:277
https://trac.sagemath.org/ticket/9958#comment:277
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:276" title="Comment 276">jdemeyer</a>:
</p>
<blockquote class="citation">
<p>
<a class="attachment" href="https://trac.sagemath.org/attachment/ticket/9958/9958_combinat.patch" title="Attachment '9958_combinat.patch' in Ticket #9958">9958_combinat.patch</a><a class="trac-rawlink" href="https://trac.sagemath.org/raw-attachment/ticket/9958/9958_combinat.patch" title="Download"></a> is the only non-trivial change I guess, but has been discussed well in the comments on this ticket. Potentially, the <code>trie_type_dict()</code> test might yield other results, but we can still change the test in that case. Anyway, that method is nowhere called in the Sage library.
</p>
</blockquote>
<p>
I didn't notice you had listed this particular patch. Why not use <a class="attachment" href="https://trac.sagemath.org/attachment/ticket/9958/trac_9958-suffix_trees-variations-sl.patch" title="Attachment 'trac_9958-suffix_trees-variations-sl.patch' in Ticket #9958">trac_9958-suffix_trees-variations-sl.patch</a><a class="trac-rawlink" href="https://trac.sagemath.org/raw-attachment/ticket/9958/trac_9958-suffix_trees-variations-sl.patch" title="Download"></a> from Sébastien Labbé instead? It is more foolproof.
</p>
TicketfbisseyThu, 05 Jan 2012 22:25:13 GMT
https://trac.sagemath.org/ticket/9958#comment:278
https://trac.sagemath.org/ticket/9958#comment:278
<p>
I obviously meant to use Sébastien Labbé's patch for suffix_tree, we can still use the other patch for nfactor_enumerable_word.py, Sébastien think that patch is perfect which I count as a positive review of it.
</p>
TicketjdemeyerThu, 05 Jan 2012 22:39:10 GMT
https://trac.sagemath.org/ticket/9958#comment:279
https://trac.sagemath.org/ticket/9958#comment:279
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:277" title="Comment 277">fbissey</a>:
</p>
<blockquote class="citation">
<p>
I didn't notice you had listed this particular patch. Why not use <a class="attachment" href="https://trac.sagemath.org/attachment/ticket/9958/trac_9958-suffix_trees-variations-sl.patch" title="Attachment 'trac_9958-suffix_trees-variations-sl.patch' in Ticket #9958">trac_9958-suffix_trees-variations-sl.patch</a><a class="trac-rawlink" href="https://trac.sagemath.org/raw-attachment/ticket/9958/trac_9958-suffix_trees-variations-sl.patch" title="Download"></a> from Sébastien Labbé instead? It is more foolproof.
</p>
</blockquote>
<p>
I overlooked that patch, it was not in the list of patches to be applied. I agree it is better.
</p>
TicketjdemeyerThu, 05 Jan 2012 22:40:26 GMTattachment set
https://trac.sagemath.org/ticket/9958
https://trac.sagemath.org/ticket/9958
<ul>
<li><strong>attachment</strong>
set to <em>9958_combinat.patch</em>
</li>
</ul>
TicketfbisseyThu, 05 Jan 2012 22:45:32 GMT
https://trac.sagemath.org/ticket/9958#comment:280
https://trac.sagemath.org/ticket/9958#comment:280
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:279" title="Comment 279">jdemeyer</a>:
</p>
<blockquote class="citation">
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:277" title="Comment 277">fbissey</a>:
</p>
<blockquote class="citation">
<p>
I didn't notice you had listed this particular patch. Why not use <a class="attachment" href="https://trac.sagemath.org/attachment/ticket/9958/trac_9958-suffix_trees-variations-sl.patch" title="Attachment 'trac_9958-suffix_trees-variations-sl.patch' in Ticket #9958">trac_9958-suffix_trees-variations-sl.patch</a><a class="trac-rawlink" href="https://trac.sagemath.org/raw-attachment/ticket/9958/trac_9958-suffix_trees-variations-sl.patch" title="Download"></a> from Sébastien Labbé instead? It is more foolproof.
</p>
</blockquote>
<p>
I overlooked that patch, it was not in the list of patches to be applied. I agree it is better.
</p>
</blockquote>
<p>
It was <a class="ext-link" href="http://trac.sagemath.org/sage_trac/ticket/9958?action=diff&version=273"><span class="icon"></span>http://trac.sagemath.org/sage_trac/ticket/9958?action=diff&version=273</a> but never mind we have it now.
</p>
TicketjdemeyerThu, 05 Jan 2012 22:49:13 GMT
https://trac.sagemath.org/ticket/9958#comment:281
https://trac.sagemath.org/ticket/9958#comment:281
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:280" title="Comment 280">fbissey</a>:
</p>
<blockquote class="citation">
<p>
It was <a class="ext-link" href="http://trac.sagemath.org/sage_trac/ticket/9958?action=diff&version=273"><span class="icon"></span>http://trac.sagemath.org/sage_trac/ticket/9958?action=diff&version=273</a> but never mind we have it now.
</p>
</blockquote>
<p>
Look more carefully, it wasn't :-)
</p>
TicketfbisseyThu, 05 Jan 2012 23:33:23 GMT
https://trac.sagemath.org/ticket/9958#comment:282
https://trac.sagemath.org/ticket/9958#comment:282
<p>
You are right I put the wrong patch in the list actually I never updated the list to include the right one, complete oversight. It's good that we are getting this merged now before more confusion arise from the number of patches attached.
</p>
TicketjhpalmieriThu, 05 Jan 2012 23:59:53 GMT
https://trac.sagemath.org/ticket/9958#comment:283
https://trac.sagemath.org/ticket/9958#comment:283
<p>
François and others: thank you for all of the work you did on this ticket.
</p>
TicketslabbeMon, 09 Jan 2012 03:51:55 GMTauthor changed
https://trac.sagemath.org/ticket/9958#comment:284
https://trac.sagemath.org/ticket/9958#comment:284
<ul>
<li><strong>author</strong>
changed from <em>François Bissey, Steven Trogdon, Sébastien Labbé, Jeroen Demeyer</em> to <em>François Bissey, Steven Trogdon, Jeroen Demeyer</em>
</li>
</ul>
<p>
Hi,
</p>
<p>
I am removing my name from the authors list. For three lines of code I wrote, I don't feel as an author at all for such an important ticket. Being a reviewer of the small combinat part is enough and more appropriate.
</p>
<p>
Sébastien
</p>
TicketjdemeyerSun, 15 Jan 2012 21:55:53 GMTstatus changed; resolution, merged set
https://trac.sagemath.org/ticket/9958#comment:285
https://trac.sagemath.org/ticket/9958#comment:285
<ul>
<li><strong>status</strong>
changed from <em>positive_review</em> to <em>closed</em>
</li>
<li><strong>resolution</strong>
set to <em>fixed</em>
</li>
<li><strong>merged</strong>
set to <em>sage-5.0.beta0</em>
</li>
</ul>
TicketkcrismanThu, 19 Jan 2012 01:40:59 GMT
https://trac.sagemath.org/ticket/9958#comment:286
https://trac.sagemath.org/ticket/9958#comment:286
<p>
Just as FYI, though I doubt it matters since the patch still applies, I get
</p>
<pre class="wiki">patching file Lib/distutils/command/sdist.py
Hunk #1 succeeded at 327 (offset 3 lines).
Hunk #2 succeeded at 342 (offset 3 lines).
</pre><p>
before the other patches and configuration.
</p>
TicketfbisseyThu, 19 Jan 2012 01:58:29 GMT
https://trac.sagemath.org/ticket/9958#comment:287
https://trac.sagemath.org/ticket/9958#comment:287
<p>
Doesn't matter anymore indeed, we have it merged in 5.0.beta0 finally. I am personally moving to <a class="closed ticket" href="https://trac.sagemath.org/ticket/11705" title="enhancement: Port Sage to SUSE Linux Power 7 (ppc64). (closed: fixed)">#11705</a> and <a class="closed ticket" href="https://trac.sagemath.org/ticket/11334" title="task: Update numpy to 1.7.0 (closed: fixed)">#11334</a> unless something very bad happen.
</p>
TicketjdemeyerThu, 19 Jan 2012 08:10:47 GMT
https://trac.sagemath.org/ticket/9958#comment:288
https://trac.sagemath.org/ticket/9958#comment:288
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9958#comment:286" title="Comment 286">kcrisman</a>:
</p>
<blockquote class="citation">
<p>
Just as FYI, though I doubt it matters since the patch still applies, I get
</p>
<pre class="wiki">patching file Lib/distutils/command/sdist.py
Hunk #1 succeeded at 327 (offset 3 lines).
Hunk #2 succeeded at 342 (offset 3 lines).
</pre></blockquote>
<p>
Not a big deal. The patch still applies perfectly.
</p>
Ticket