Sage: Ticket #9274: do some cleanup of the deps file, as suggested by Carl Hansen
https://trac.sagemath.org/ticket/9274
<pre class="wiki">
Here is an excerpt from "deps" , the makefile in spkg/standard
$(INST)/$(FORTRAN):
$(SAGE_SPKG) $(FORTRAN) 2>&1
$(INST)/$(F2C): $(INST)/$(FORTRAN)
$(SAGE_SPKG) $(INST)/$(F2C) 2>&1
^^^^^^^ --------------------Notice that this is
wrong.
the INST is not needed
and is wrong.
$(INST)/$(PIL): $(INST)/$(PYTHON)
$(SAGE_SPKG) $(PIL) 2>&1
The only reason it works is that the script that reads it cleans it up
with
"basename".
But that's imperfect.
There are 3 instances, shown in this diff:
401c400
< $(SAGE_SPKG) $(F2C) 2>&1
---
> $(SAGE_SPKG) $(INST)/$(F2C) 2>&1
413c412
< $(SAGE_SPKG) $(LAPACK) 2>&1
---
> $(SAGE_SPKG) $(INST)/$(LAPACK) 2>&1
416c415
< $(SAGE_SPKG) $(BLAS) 2>&1
---
> $(SAGE_SPKG) $(INST)/$(BLAS) 2>&1
Also in deps there are references to TWISTEDWEB2 but that doesn't
seem to exist anymore.
I do not write access to the code. I hope someone who does will take
this
and do right thing with it.
************************************************
carlhansen1234
</pre>en-usSagehttps://trac.sagemath.org/chrome/site/logo_sagemath_trac.png
https://trac.sagemath.org/ticket/9274
Trac 1.1.6mpatelSat, 26 Jun 2010 08:08:42 GMT
https://trac.sagemath.org/ticket/9274#comment:1
https://trac.sagemath.org/ticket/9274#comment:1
<p>
Please see <a class="closed ticket" href="https://trac.sagemath.org/ticket/8306#comment:73" title="Comment 73 for Ticket #8306">John Palmieri's comment</a> (or <a class="attachment" href="https://trac.sagemath.org/attachment/ticket/8306/deps-deps-new.diff" title="Attachment 'deps-deps-new.diff' in Ticket #8306">this diff</a><a class="trac-rawlink" href="https://trac.sagemath.org/raw-attachment/ticket/8306/deps-deps-new.diff" title="Download"></a>) at <a class="closed ticket" href="https://trac.sagemath.org/ticket/8306" title="enhancement: Parallel inter/intra-spkg builds (closed: fixed)">#8306</a> for some other suggestions.
</p>
TicketmpatelWed, 30 Jun 2010 02:43:24 GMTattachment set
https://trac.sagemath.org/ticket/9274
https://trac.sagemath.org/ticket/9274
<ul>
<li><strong>attachment</strong>
set to <em>deps</em>
</li>
</ul>
<p>
Updated <code>spkg/install/deps</code> based on 4.5.alpha1.
</p>
TicketmpatelWed, 30 Jun 2010 02:43:53 GMTattachment set
https://trac.sagemath.org/ticket/9274
https://trac.sagemath.org/ticket/9274
<ul>
<li><strong>attachment</strong>
set to <em>deps.diff</em>
</li>
</ul>
<p>
Diff of <code>spkg/install/deps</code> vs. 4.5.alpha1.
</p>
TicketmpatelWed, 30 Jun 2010 03:14:48 GMTstatus, priority, milestone changed; cc set
https://trac.sagemath.org/ticket/9274#comment:2
https://trac.sagemath.org/ticket/9274#comment:2
<ul>
<li><strong>cc</strong>
<em>drkirkby</em> <em>jhpalmieri</em> added
</li>
<li><strong>status</strong>
changed from <em>new</em> to <em>needs_work</em>
</li>
<li><strong>priority</strong>
changed from <em>major</em> to <em>minor</em>
</li>
<li><strong>milestone</strong>
changed from <em>sage-4.5</em> to <em>sage-5.0</em>
</li>
</ul>
<p>
The attached <code>deps</code> incorporates suggestions from <a class="ext-link" href="http://groups.google.com/group/sage-devel/browse_thread/thread/d15b668609983181/268094db15092f85?#268094db15092f85"><span class="icon"></span>Carl Hansen</a>, <a class="ext-link" href="http://groups.google.com/group/sage-devel/browse_thread/thread/7763c990fdc1d5ac#"><span class="icon"></span>David Kirkby</a>, and <a class="closed ticket" href="https://trac.sagemath.org/ticket/8306#comment:73" title="Comment 73 for Ticket #8306">John Palmieri</a>.
</p>
<p>
Main changes:
</p>
<ul><li>Remove unnecessary <code>$(INST)/</code>'s.
</li><li>Make all non-<code>$(BASE)</code> packages depend explicitly on <code>$(BASE)</code>.
</li><li>Make the target <code>all</code> depend explicitly on all standard packages.
</li></ul><p>
With <code>SAGE_PARALLEL_SPKG_BUILD="yes"</code>: The long tests pass on bsd.math. They also pass on sage.math, if after building Sage, I reinstall Maxima via <code>sage -f</code>. I don't know why, but I'll keep testing.
</p>
TicketdrkirkbySat, 03 Jul 2010 19:45:43 GMT
https://trac.sagemath.org/ticket/9274#comment:3
https://trac.sagemath.org/ticket/9274#comment:3
<p>
<a class="closed ticket" href="https://trac.sagemath.org/ticket/9351" title="defect: deps for sagetex with SAGE_CHECK='yes' (closed: fixed)">#9351</a>, which has positive review, makes Sagetex dependant on both gap and Sage, since you need a working Sage in order that Sagetex can be tested with SAGE_CHECK=yes. So the 'deps' file attached to this ticket would need that dependency updating.
</p>
<p>
I've printed this on paper and looked though it fairly carefully, and can't see anything wrong with it. Everything looks logical to me. On a few occasions where things only depended on 'BASE', but I was slightly suspicious they might have other dependencies, I checked the packages more carefully by inspection of their contents. I can't see anything wrong.
</p>
<p>
I've used this 'deps' file to build Sage on my OpenSolaris machine, and found the 'deps' file appears OK, though since neither R or Maxima build on OpenSolaris, I'm unable to test this 'deps' file fully on OpenSolaris. Since you have a specific issue with Maxima, I can't provide convincing evidence this is OK. But it looks OK to me.
</p>
<p>
I would never be totally surprised by any failures of builds on the *.math.washington.edu network if an NFS-shared directory is used for building Sage - which includes the home directories. Most of the hard disks are attached to a server called 'disk.math.washington.edu' which is running OpenSolaris. But the ZFS intent Log (ZIL) has been disabled to increase NFS speed. This means that if you write something to disk, then try to read it, there is no guarantee it can be read. Hence (on t2), the system log shows things like
</p>
<pre class="wiki">Jun 30 19:06:03 t2 nfs: [ID 236337 kern.info] NOTICE: [NFS4][Server: disk][Mntpt: /home]NFS op OP_SETATTR got error NFS4ERR_DELAY causing recovery action NR_DELAY.
Jun 30 19:06:03 t2 last message repeated 2 times
Jun 30 19:06:03 t2 nfs: [ID 236337 kern.info] NOTICE: [NFS4][Server: disk][Mntpt: /home]NFS op OP_CLOSE got error NFS4ERR_STALE causing recovery action NR_STALE.
Jun 30 19:06:03 t2 nfs: [ID 286389 kern.info] NOTICE: [NFS4][Server: disk][Mntpt: /home]File configure (rnode_pt: 3000cdca018) was closed due to NFS recovery error on server disk(failed to recover from NFS4ERR_STALE NFS4ERR_STALE)
Jun 30 19:06:03 t2 nfs: [ID 941083 kern.info] NOTICE: NFS4 FACT SHEET:
Jun 30 19:06:03 t2 Action: NR_STALE
Jun 30 19:06:03 t2 NFS4 error: NFS4ERR_STALE
</pre><p>
So if you get strange behavior, I would try it on a scratch area, with local storage, since I would not 100% trust the way the ZFS pools are configured.
</p>
TicketrlmMon, 05 Jul 2010 21:15:47 GMTwork_issues set
https://trac.sagemath.org/ticket/9274#comment:4
https://trac.sagemath.org/ticket/9274#comment:4
<ul>
<li><strong>work_issues</strong>
set to <em>needs rebasing on top of not yet existing release</em>
</li>
</ul>
<p>
I really want sage-4.5 to be a better release, so I'm adding this to the blockers. Just like the issue that <a class="closed ticket" href="https://trac.sagemath.org/ticket/9431" title="defect: opencdk spkg should add $SAGE_LOCAL/lib to LDFLAGS (closed: fixed)">#9431</a> is exposing, this is too egregous to delay.
</p>
<p>
The GLPK alpha release is nearly ready, and will include <a class="closed ticket" href="https://trac.sagemath.org/ticket/9412" title="defect: some random crap coming from zodb *sometimes* (closed: fixed)">#9412</a> specifically so that this can be rebased on top and merged into the alpha release following that one.
</p>
<p>
What work is left for this to be ready, other than waiting for <a class="closed ticket" href="https://trac.sagemath.org/ticket/9412" title="defect: some random crap coming from zodb *sometimes* (closed: fixed)">#9412</a>?
</p>
TicketrlmMon, 05 Jul 2010 21:16:05 GMTpriority, milestone changed
https://trac.sagemath.org/ticket/9274#comment:5
https://trac.sagemath.org/ticket/9274#comment:5
<ul>
<li><strong>priority</strong>
changed from <em>minor</em> to <em>blocker</em>
</li>
<li><strong>milestone</strong>
changed from <em>sage-5.0</em> to <em>sage-4.5</em>
</li>
</ul>
TicketdrkirkbyMon, 05 Jul 2010 21:30:48 GMT
https://trac.sagemath.org/ticket/9274#comment:6
https://trac.sagemath.org/ticket/9274#comment:6
<p>
See the comment about Maxima needing to be reinstalled above.
</p>
<p>
I don't know if that is supposed to be related to what changes are on this ticket or not. At first, I interpreted the reasons this ticket was needing work was because of this Maxima problem. Perhaps it was put to 'needs work' for some other reason.
</p>
<p>
Dave
</p>
TicketjhpalmieriTue, 06 Jul 2010 00:09:05 GMT
https://trac.sagemath.org/ticket/9274#comment:7
https://trac.sagemath.org/ticket/9274#comment:7
<p>
Is this as good a place as any to work out dependencies for glpk? (See <a class="ext-link" href="http://trac.sagemath.org/sage_trac/ticket/9312#comment:24"><span class="icon"></span>http://trac.sagemath.org/sage_trac/ticket/9312#comment:24</a>.)
</p>
TicketrlmTue, 06 Jul 2010 03:23:28 GMTwork_issues changed
https://trac.sagemath.org/ticket/9274#comment:8
https://trac.sagemath.org/ticket/9274#comment:8
<ul>
<li><strong>work_issues</strong>
changed from <em>needs rebasing on top of not yet existing release</em> to <em>needs rebasing on sage-4.5.alpha3</em>
</li>
</ul>
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9274#comment:7" title="Comment 7">jhpalmieri</a>:
</p>
<blockquote class="citation">
<p>
Is this as good a place as any to work out dependencies for glpk?
</p>
</blockquote>
<p>
As you're probably aware, this made it into sage-4.5.alpha3:
</p>
<p>
<a class="ext-link" href="http://sage.math.washington.edu/home/rlmill/release/sage-4.5.alpha3.tar"><span class="icon"></span>http://sage.math.washington.edu/home/rlmill/release/sage-4.5.alpha3.tar</a>
</p>
<p>
Can the deps file here and the patch be rebased on top of alpha3? I promise this will be the last time.
</p>
TicketjhpalmieriTue, 06 Jul 2010 03:44:03 GMTattachment set
https://trac.sagemath.org/ticket/9274
https://trac.sagemath.org/ticket/9274
<ul>
<li><strong>attachment</strong>
set to <em>deps-new</em>
</li>
</ul>
<p>
rebased against 4.5.alpha3
</p>
TicketjhpalmieriTue, 06 Jul 2010 03:44:10 GMTattachment set
https://trac.sagemath.org/ticket/9274
https://trac.sagemath.org/ticket/9274
<ul>
<li><strong>attachment</strong>
set to <em>deps-new.diff</em>
</li>
</ul>
TicketjhpalmieriTue, 06 Jul 2010 03:45:07 GMT
https://trac.sagemath.org/ticket/9274#comment:9
https://trac.sagemath.org/ticket/9274#comment:9
<p>
Here are rebased versions, and they also include making cython a prerequisite for glpk.
</p>
TicketjhpalmieriTue, 06 Jul 2010 03:45:12 GMTstatus changed
https://trac.sagemath.org/ticket/9274#comment:10
https://trac.sagemath.org/ticket/9274#comment:10
<ul>
<li><strong>status</strong>
changed from <em>needs_work</em> to <em>needs_review</em>
</li>
</ul>
TicketrlmTue, 06 Jul 2010 03:53:21 GMTstatus changed; reviewer, author set
https://trac.sagemath.org/ticket/9274#comment:11
https://trac.sagemath.org/ticket/9274#comment:11
<ul>
<li><strong>status</strong>
changed from <em>needs_review</em> to <em>positive_review</em>
</li>
<li><strong>reviewer</strong>
set to <em>Robert Miller</em>
</li>
<li><strong>author</strong>
set to <em>Mitesh Patel, John Palmieri</em>
</li>
</ul>
TicketrlmTue, 06 Jul 2010 03:54:13 GMTstatus changed; resolution, merged set
https://trac.sagemath.org/ticket/9274#comment:12
https://trac.sagemath.org/ticket/9274#comment:12
<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-4.5.alpha4</em>
</li>
</ul>
TicketjhpalmieriTue, 06 Jul 2010 04:52:09 GMT
https://trac.sagemath.org/ticket/9274#comment:13
https://trac.sagemath.org/ticket/9274#comment:13
<p>
Make sure to merge "deps-new", not "deps".
</p>
TicketrlmTue, 06 Jul 2010 05:38:13 GMT
https://trac.sagemath.org/ticket/9274#comment:14
https://trac.sagemath.org/ticket/9274#comment:14
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9274#comment:13" title="Comment 13">jhpalmieri</a>:
</p>
<blockquote class="citation">
<p>
Make sure to merge "deps-new", not "deps".
</p>
</blockquote>
<p>
Yep, that's what I merged. Thanks for the extra care.
</p>
TicketncohenTue, 06 Jul 2010 06:28:24 GMT
https://trac.sagemath.org/ticket/9274#comment:15
https://trac.sagemath.org/ticket/9274#comment:15
<p>
Hmmmm :-/
</p>
<p>
I do not think it can hurt, though why should GLPK depend on Cython ? In the last version (the version embedded in alpha3), there is no setup.py file, no Cython code at all... Actually, there are only bash scripts and GLPK's own sources !!!
</p>
<p>
Sorry for not having brought this up earlier (I just woke up) :-/
</p>
<p>
Nathann
</p>
TicketdrkirkbyTue, 06 Jul 2010 06:59:37 GMT
https://trac.sagemath.org/ticket/9274#comment:16
https://trac.sagemath.org/ticket/9274#comment:16
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/9274#comment:15" title="Comment 15">ncohen</a>:
</p>
<blockquote class="citation">
<p>
Hmmmm :-/
</p>
<p>
I do not think it can hurt, though why should GLPK depend on Cython ? In the last version (the version embedded in alpha3), there is no setup.py file, no Cython code at all... Actually, there are only bash scripts and GLPK's own sources !!!
</p>
<p>
Sorry for not having brought this up earlier (I just woke up) :-/
</p>
<p>
Nathann
</p>
</blockquote>
<p>
An interesting point. It can hurt for two reasons
</p>
<ul><li>It will slow parallel builds unnecessarily, as GLPK has to wait until Cython has built. That's not a major issue, as GLPK takes very little time to build.
</li><li>The real reason people got a failure might be something else.
</li></ul><p>
That's worth investigating.
</p>
TicketmpatelTue, 06 Jul 2010 07:07:25 GMTwork_issues deleted
https://trac.sagemath.org/ticket/9274#comment:17
https://trac.sagemath.org/ticket/9274#comment:17
<ul>
<li><strong>work_issues</strong>
<em>needs rebasing on sage-4.5.alpha3</em> deleted
</li>
</ul>
<p>
I apologize for my late reply.
</p>
<ul><li>Off-topic, I admit: Robert, what do you think about making new releases available in <code>/home/release</code> on <code>sage.math</code>?
</li><li>I've been running test builds under <code>/scratch</code> on sage.math.
</li><li>For what it's worth, I later sometimes experienced the same Maxima reinstallation problem when building an <em>unmodified</em> 4.5.alpha1 on sage.math --- with 4, 6, or 12 parallel jobs.
</li><li>For the record, here are two errors representative of those fixed by reinstalling Maxima:
<div class="wiki-code"><div class="code"><pre>./sage -c <span class="s1">'print QQ[2^(1/3)]'</span>
Traceback <span class="o">(</span>most recent call last<span class="o">)</span>:
File <span class="s2">"/mnt/usb1/scratch/mpatel/tmp/sage-4.5.alpha1-j12-par/local/bin/sage-eval"</span>, line 15, in <module>
<span class="nb">eval</span><span class="o">(</span>compile<span class="o">(</span>s,<span class="s1">'<cmdline>'</span>,<span class="s1">'exec'</span><span class="o">))</span>
File <span class="s2">"<cmdline>"</span>, line 1, in <module>
File <span class="s2">"ring.pyx"</span>, line 205, in sage.rings.ring.Ring.__getitem__ <span class="o">(</span>sage/rings/ring.c:2550<span class="o">)</span>
File <span class="s2">"/mnt/usb1/scratch/mpatel/tmp/sage-4.5.alpha1-j12-par/local/lib/python2.6/site-packages/sage/rings/polynomial/polynomial_ring_constructor.py"</span>, line 343, in PolynomialRing
<span class="nv">R</span> <span class="o">=</span> _single_variate<span class="o">(</span>base_ring, name, sparse, implementation<span class="o">)</span>
File <span class="s2">"/mnt/usb1/scratch/mpatel/tmp/sage-4.5.alpha1-j12-par/local/lib/python2.6/site-packages/sage/rings/polynomial/polynomial_ring_constructor.py"</span>, line 395, in _single_variate
<span class="nv">name</span> <span class="o">=</span> normalize_names<span class="o">(</span>1, name<span class="o">)</span>
File <span class="s2">"parent_gens.pyx"</span>, line 204, in sage.structure.parent_gens.normalize_names <span class="o">(</span>sage/structure/parent_gens.c:2093<span class="o">)</span>
File <span class="s2">"parent_gens.pyx"</span>, line 145, in sage.structure.parent_gens._certify_names <span class="o">(</span>sage/structure/parent_gens.c:1650<span class="o">)</span>
ValueError: variable names must be alphanumeric, but one is <span class="s1">'2^(1/3)'</span> which is not.
</pre></div></div>and
<div class="wiki-code"><div class="code"><pre>./sage -c <span class="s2">"var('x'); print solve(x, x)"</span>
Traceback <span class="o">(</span>most recent call last<span class="o">)</span>:
File <span class="s2">"/mnt/usb1/scratch/mpatel/tmp/sage-4.5.alpha1-j12-par/local/bin/sage-eval"</span>, line 15, in <module>
<span class="nb">eval</span><span class="o">(</span>compile<span class="o">(</span>s,<span class="s1">'<cmdline>'</span>,<span class="s1">'exec'</span><span class="o">))</span>
File <span class="s2">"<cmdline>"</span>, line 1, in <module>
File <span class="s2">"/mnt/usb1/scratch/mpatel/tmp/sage-4.5.alpha1-j12-par/local/lib/python2.6/site-packages/sage/symbolic/relation.py"</span>, line 619, in solve
<span class="nv">ans</span> <span class="o">=</span> f.solve<span class="o">(</span>*args,**kwds<span class="o">)</span>
File <span class="s2">"expression.pyx"</span>, line 6735, in sage.symbolic.expression.Expression.solve <span class="o">(</span>sage/symbolic/expression.cpp:25171<span class="o">)</span>
File <span class="s2">"expression.pyx"</span>, line 433, in sage.symbolic.expression.Expression._maxima_ <span class="o">(</span>sage/symbolic/expression.cpp:3382<span class="o">)</span>
File <span class="s2">"sage_object.pyx"</span>, line 386, in sage.structure.sage_object.SageObject._interface_ <span class="o">(</span>sage/structure/sage_object.c:3501<span class="o">)</span>
File <span class="s2">"/mnt/usb1/scratch/mpatel/tmp/sage-4.5.alpha1-j12-par/local/lib/python2.6/site-packages/sage/interfaces/expect.py"</span>, line 1032, in __call__
<span class="k">return </span>cls<span class="o">(</span>self, x, <span class="nv">name</span><span class="o">=</span>name<span class="o">)</span>
File <span class="s2">"/mnt/usb1/scratch/mpatel/tmp/sage-4.5.alpha1-j12-par/local/lib/python2.6/site-packages/sage/interfaces/expect.py"</span>, line 1451, in __init__
raise TypeError, x
TypeError: error evaluating <span class="s2">"load(to_poly_solver)"</span>:
Error executing code in Maxima
CODE:
load<span class="o">(</span>to_poly_solver<span class="o">)</span>;
Maxima ERROR:
Could not find <span class="sb">`</span>to_poly_solver<span class="err">'</span> using paths in file_search_maxima,file_search_lisp.
-- an error. To debug this try: debugmode<span class="o">(</span><span class="nb">true</span><span class="o">)</span>;
</pre></div></div></li><li>Curiously: Moving the build tree (renaming <code>SAGE_ROOT</code>) also fixes the errors, possibly because this forces <code>sage-location</code> to run.
</li></ul>
Ticket