Upgrade to pynac-0.7.13
rwst opened this issue · 30 comments
There is:
- fix
ex.coefficients()bugs (#23545, #24147) - fix interface to Singular GCD (#23845)
- fix compiler warnings
asin/atanenhancements (#24211)set_of_all()function (#24176)- upgrade
ax_cxx_compile_stdcxx_11.m4
https://github.com/pynac/pynac/releases/download/pynac-0.7.13/pynac-0.7.13.tar.bz2
CC: @kiwifb
Component: packages: standard
Author: Ralf Stephan
Branch/Commit: u/rws/upgrade_to_pynac_0_7_13 @ 438816e
Reviewer: Emmanuel Charpentier
Issue created by migration from https://trac.sagemath.org/ticket/24262
Branch: u/rws/upgrade_to_pynac_0_7_13
No doctests need to be adapted for this release. Please review.
On Debian 8.1.rc2 + #24240, compiles without difficulty.
- fix ex.coefficients() bugs (#23545, #24147) : yes
- fix interface to Singular GCD (#23845) : yes. The planned doctest don't seem to have been added.
- fix compiler warnings : I still get :
charpent@asus16-ec:~$ cat /usr/local/sage-8/logs/pkgs/pynac-0.7.13.log | grep warn
/usr/local/sage-8/local/include/flint/fmpz.h:428:23: warning: declaration of 'mpz_ptr' shadows a global declaration [-Wshadow]
/usr/local/sage-8/local/include/flint/fmpz.h:428:23: warning: declaration of 'mpz_ptr' shadows a global declaration [-Wshadow]
/usr/local/sage-8/local/include/flint/fmpz.h:428:23: warning: declaration of 'mpz_ptr' shadows a global declaration [-Wshadow]
- asin/atan enhancements (#24211) : partial fix :
sage: [arcsin(t) for t in [0, 1/2, sqrt(2)/2, sqrt(3)/2, 1]] # Fixed
[0, 1/6*pi, 1/4*pi, 1/3*pi, 1/2*pi]
sage: [arctan(t) for t in [0, 1/sqrt(3), 1, sqrt(3)]] # Fixed
[0, 1/6*pi, 1/4*pi, 1/3*pi]
sage: [arccos(t) for t in [0, 1/2, sqrt(2)/2, sqrt(3)/2, 1]] # Partially fixed
[1/2*pi, 1/3*pi, arccos(1/2*sqrt(2)), arccos(1/2*sqrt(3)), 0]
sage: [arccot(t) for t in [0, 1/sqrt(3), 1, sqrt(3)]] # Partially fixed
[1/2*pi, arccot(1/3*sqrt(3)), 1/4*pi, arccot(sqrt(3))]
The simplifications are not fixed either (but I'm not sure they could be by pynac's upgrade...) :
sage: assume(-pi/2<x, x<pi/2)
sage: arctan(sin(x)/cos(x)).simplify() # Not fixed
arctan(sin(x)/cos(x))
sage: arctan(sin(x)/cos(x)).simplify_full() # Not fixed
arctan(sin(x)/cos(x))
- set_of_all() function (#24176) : can't test directly. Doctest ?
- upgrade ax_cxx_compile_stdcxx_11.m4 : I dont't know how to test. Doctest ?
- Your name needs to go in the
Authorsfield.
make ptestlong gives me one (non-transient) failure :
charpent@asus16-ec:/usr/local/sage-8$ sage -t --long src/sage/rings/asymptotic/asymptotics_multivariate_generating_functions.py
too many failed tests, not using stored timings
Running doctests with ID 2017-11-22-23-04-04-f8ba9318.
Git branch: tst24240_n_24262
Using --optional=database_gap,dot2tex,fricas,giacpy_sage,igraph,mpir,python2,python_igraph,sage
Doctesting 1 file.
sage -t --long src/sage/rings/asymptotic/asymptotics_multivariate_generating_functions.py
**********************************************************************
File "src/sage/rings/asymptotic/asymptotics_multivariate_generating_functions.py", line 1652, in sage.rings.asymptotic.asymptotics_multivariate_generating_functions.FractionWithFactoredDenominator.?
Failed example:
asy # long time
Expected:
(4/3*sqrt(3)*sqrt(r)/sqrt(pi) + 47/216*sqrt(3)/(sqrt(pi)*sqrt(r)),
1, 4/3*sqrt(3)*sqrt(r)/sqrt(pi) + 47/216*sqrt(3)/(sqrt(pi)*sqrt(r)))
Got:
(4/3*sqrt(3)*sqrt(r)/sqrt(pi) + 191/216*sqrt(3)/(sqrt(pi)*sqrt(r)),
1,
4/3*sqrt(3)*sqrt(r)/sqrt(pi) + 191/216*sqrt(3)/(sqrt(pi)*sqrt(r)))
**********************************************************************
File "src/sage/rings/asymptotic/asymptotics_multivariate_generating_functions.py", line 1655, in sage.rings.asymptotic.asymptotics_multivariate_generating_functions.FractionWithFactoredDenominator.?
Failed example:
F.relative_error(asy[0], alpha, [1, 2, 4, 8], asy[1]) # long time
Expected:
[((3, 3, 2), 0.9812164307, [1.515572606], [-0.54458543...]),
((6, 6, 4), 1.576181132, [1.992989399], [-0.26444185...]),
((12, 12, 8), 2.485286378, [2.712196351], [-0.091301338...]),
((24, 24, 16), 3.700576827, [3.760447895], [-0.016178847...])]
Got:
[((3, 3, 2), 0.9812164307, [2.167042622], [-1.208526635]),
((6, 6, 4), 1.576181132, [2.453648265], [-0.5567045026]),
((12, 12, 8), 2.485286378, [3.037931359], [-0.2223667203]),
((24, 24, 16), 3.700576827, [3.990777328], [-0.07842034220])]
**********************************************************************
1 item had failures:
2 of 104 in sage.rings.asymptotic.asymptotics_multivariate_generating_functions.FractionWithFactoredDenominator.?
[805 tests, 2 failures, 27.28 s]
----------------------------------------------------------------------
sage -t --long src/sage/rings/asymptotic/asymptotics_multivariate_generating_functions.py # 2 doctests failed
----------------------------------------------------------------------
Total time for all tests: 27.4 seconds
cpu time: 27.3 seconds
cumulative wall time: 27.3 seconds
==>needs_work.
Reviewer: Emmanuel Charpentier
Replying to @EmmanuelCharpentier:
- fix interface to Singular GCD (#23845) : yes. The planned doctest don't seem to have been added.
They are always added in the reporting tickets.
- fix compiler warnings : I still get :
charpent@asus16-ec:~$ cat /usr/local/sage-8/logs/pkgs/pynac-0.7.13.log | grep warn /usr/local/sage-8/local/include/flint/fmpz.h:428:23: warning: declaration of 'mpz_ptr' shadows a global declaration [-Wshadow] /usr/local/sage-8/local/include/flint/fmpz.h:428:23: warning: declaration of 'mpz_ptr' shadows a global declaration [-Wshadow] /usr/local/sage-8/local/include/flint/fmpz.h:428:23: warning: declaration of 'mpz_ptr' shadows a global declaration [-Wshadow]
They need to be fixed by updating Flint, as I have submitted the fix to Flint some time ago.
- asin/atan enhancements (#24211) : partial fix :
sage: [arccot(t) for t in [0, 1/sqrt(3), 1, sqrt(3)]] # Partially fixed [1/2*pi, arccot(1/3*sqrt(3)), 1/4*pi, arccot(sqrt(3))]
Sorry but you didn't report that. Of course I'll add it soon.
The simplifications are not fixed either (but I'm not sure they could be by pynac's upgrade...) :
I have pointed out already that simplify omissions are basically Maxima's.
- set_of_all() function (#24176) : can't test directly. Doctest ?
Well, see #24176.
- upgrade ax_cxx_compile_stdcxx_11.m4 : I dont't know how to test. Doctest ?
This is a Pynac build enhancement.
- Your name needs to go in the
Authorsfield.
Done.
make ptestlonggives me one (non-transient) failure :
What do you mean with "non-transient"? "non-transient using make ptestlong" or "non-transient using sage -t manually"? I cannot reproduce using sage -t on OpenSuSE, so this might be system-specific, or it might be make ptestlong-specific.
Author: Ralf Stephan
Replying to @rwst:
Replying to @EmmanuelCharpentier:
[ Snip... ]}
- asin/atan enhancements (#24211) : partial fix :
sage: [arccot(t) for t in [0, 1/sqrt(3), 1, sqrt(3)]] # Partially fixed [1/2*pi, arccot(1/3*sqrt(3)), 1/4*pi, arccot(sqrt(3))]Sorry but you didn't report that. Of course I'll add it soon.
I just did that.
Replying to @rwst:
Replying to @EmmanuelCharpentier:
[ Snip... ]
make ptestlonggives me one (non-transient) failure :What do you mean with "non-transient"? "non-transient using make ptestlong" or "non-transient using sage -t manually"? I cannot reproduce using sage -t on OpenSuSE, so this might be system-specific, or it might be make ptestlong-specific.
I get the failure during ptestlong, and I can reproduce at will by doing :
sage -t --long src/sage/rings/asymptotic/asymptotics_multivariate_generating_functions.py
Confirmed with --long.
Okay the reason is a regression in subs, minimal case: sage: (1+1/x).subs({x:1/x}) ... 1/x + 1. We try to add a patch here with doctest.
Replying to @rwst:
Okay the reason is a regression in
subs, minimal case:sage: (1+1/x).subs({x:1/x}) ... 1/x + 1. We try to add a patch here with doctest.
Hmmm... This a catastrophic one : subs is a basic method. IMHO, this deserves its own ticket, marked as blocker.
A blocker is a ticket that reports/fixes an existing bug in Sage. This is a ticket that potentially introduces a severe bug, but with the right patch, it becomes a normal ticket. The sky does not fall down.
Replying to @rwst:
A blocker is a ticket that reports/fixes an existing bug in Sage. This is a ticket that potentially introduces a severe bug, but with the right patch, it becomes a normal ticket. The sky does not fall down.
Ah ! You meant that this regression was introduced by the upgrade to pynac ? That was not obvious (at least to me...) ; I thought that you have found a pre-existing regression. And that was deserving a blocker ticket.
This fixes the issue. My ptestlong passes but you might want to test again too.
Note that the behaviour of this added doctest:
sage: (sqrt(x) + 1/sqrt(x)).subs({x: 1/x})
1/sqrt(x) + 1/1/sqrt(x)
is unchanged with respect to previous Sage versions but I have opened a Pynac issue: pynac/pynac#287
Doesn't smell good.. On top of 8.0.rc3+#24240, I get :
charpent@asus16-ec:/usr/local/sage-8$ sage -t --long src/sage/rings/asymptotic/asymptotics_multivariate_generating_functions.py
too many failed tests, not using stored timings
Running doctests with ID 2017-11-26-20-26-24-fdb78fa1.
Git branch: tst24240_n_24262
Using --optional=database_gap,dot2tex,fricas,giacpy_sage,igraph,mpir,python2,python_igraph,sage
Doctesting 1 file.
sage -t --long src/sage/rings/asymptotic/asymptotics_multivariate_generating_functions.py
**********************************************************************
File "src/sage/rings/asymptotic/asymptotics_multivariate_generating_functions.py", line 1652, in sage.rings.asymptotic.asymptotics_multivariate_generating_functions.FractionWithFactoredDenominator.?
Failed example:
asy # long time
Expected:
(4/3*sqrt(3)*sqrt(r)/sqrt(pi) + 47/216*sqrt(3)/(sqrt(pi)*sqrt(r)),
1, 4/3*sqrt(3)*sqrt(r)/sqrt(pi) + 47/216*sqrt(3)/(sqrt(pi)*sqrt(r)))
Got:
(4/3*sqrt(3)*sqrt(r)/sqrt(pi) + 191/216*sqrt(3)/(sqrt(pi)*sqrt(r)),
1,
4/3*sqrt(3)*sqrt(r)/sqrt(pi) + 191/216*sqrt(3)/(sqrt(pi)*sqrt(r)))
**********************************************************************
File "src/sage/rings/asymptotic/asymptotics_multivariate_generating_functions.py", line 1655, in sage.rings.asymptotic.asymptotics_multivariate_generating_functions.FractionWithFactoredDenominator.?
Failed example:
F.relative_error(asy[0], alpha, [1, 2, 4, 8], asy[1]) # long time
Expected:
[((3, 3, 2), 0.9812164307, [1.515572606], [-0.54458543...]),
((6, 6, 4), 1.576181132, [1.992989399], [-0.26444185...]),
((12, 12, 8), 2.485286378, [2.712196351], [-0.091301338...]),
((24, 24, 16), 3.700576827, [3.760447895], [-0.016178847...])]
Got:
[((3, 3, 2), 0.9812164307, [2.167042622], [-1.208526635]),
((6, 6, 4), 1.576181132, [2.453648265], [-0.5567045026]),
((12, 12, 8), 2.485286378, [3.037931359], [-0.2223667203]),
((24, 24, 16), 3.700576827, [3.990777328], [-0.07842034220])]
**********************************************************************
1 item had failures:
2 of 104 in sage.rings.asymptotic.asymptotics_multivariate_generating_functions.FractionWithFactoredDenominator.?
[805 tests, 2 failures, 27.18 s]
----------------------------------------------------------------------
sage -t --long src/sage/rings/asymptotic/asymptotics_multivariate_generating_functions.py # 2 doctests failed
----------------------------------------------------------------------
Total time for all tests: 27.3 seconds
cpu time: 27.2 seconds
cumulative wall time: 27.2 seconds
These errors don't seem to be cosmetic (i. e. space, printing order, etc...).
ptestlong underway to find other snags... In the interim, needs_work
Sorry...
Replying to @EmmanuelCharpentier:
Doesn't smell good.. On top of 8.0.rc3+#24240, I get :
[ Snip... ]
ptestlong gave another error, which is reproducible standalone :
sage -t --long src/sage/symbolic/expression.pyx
**********************************************************************
File "src/sage/symbolic/expression.pyx", line 5153, in sage.symbolic.expression.
Expression.substitute
Failed example:
(1 + 1/x).subs({x: 1/x})
Expected:
x + 1
Got:
1/x + 1
**********************************************************************
1 item had failures:
1 of 68 in sage.symbolic.expression.Expression.substitute
[2776 tests, 1 failure, 85.34 s]
Definitely needs_work.
It doesn't look like you updated your copy of the ticket branch, e.g.. git trac pull.24262.
Replying to @rwst:
It doesn't look like you updated your copy of the ticket branch, e.g.. git trac pull.24262.
From the top of my git log :
commit 7d9462cc8b91bc25f35559a17b2fce8a4efc8d5e
Merge: e885a67024 1782f910de
Author: Emmanuel Charpentier <emm.charpentier@free.fr>
Date: Sun Nov 26 20:18:24 2017 +0100
Merge branch 'u/rws/upgrade_to_pynac_0_7_13' of trac.sagemath.org:sage into tst24240_n_24262
commit 1782f910ded326252088dcd2c8169e0ffc471653
Author: Ralf Stephan <ralf@ark.in-berlin.de>
Date: Sun Nov 26 08:49:40 2017 +0100
24262: doctest last-minute-fix
commit 10a108dc41f6400dca0215e17cc5b57cb0d81a53
Author: Ralf Stephan <ralf@ark.in-berlin.de>
Date: Sun Nov 26 08:48:53 2017 +0100
24262: last-minute fix
commit e885a6702409e1bc1bdc1f5988057f2856655568
Merge: 7cde1424f3 46a7ebcbaa
Author: Emmanuel Charpentier <emm.charpentier@free.fr>
Date: Wed Nov 22 21:58:13 2017 +0100
Merge branch 'u/rws/upgrade_to_pynac_0_7_13' of trac.sagemath.org:sage into tst24240_n_24262
commit 46a7ebcbaa98ba7bcb61f1f5c8698489b0c9b9ca
Author: Ralf Stephan <ralf@ark.in-berlin.de>
Date: Tue Nov 21 17:35:03 2017 +0100
24262: pkg version/chksum
commit 7cde1424f39327192dfd72e7ca9ca0cb1db21895
Author: Emmanuel Charpentier <emm.charpentier@free.fr>
Date: Sun Nov 19 18:46:59 2017 +0100
24240 : Updated freetype to 2.8.1.
commit 92f95cef93000042532acbf8d84e4bede8e699ea
Author: Volker Braun <vbraun.name@gmail.com>
Date: Fri Nov 17 14:21:52 2017 +0100
Updated SageMath version to 8.1.rc2
commit 50a34e5f4378b9b4aba1ea972c57c4dd1e0eb8fb
Merge: e47ca9ea99 520fdab4f6
Author: Release Manager <release@sagemath.org>
I don't understand it, either...
The usual gotcha: I forgot to bump the patchlevel, so Pynac was not recompiled when you started make.
Branch pushed to git repo; I updated commit sha1. New commits:
438816e | 24262: patchlevel |
Smells better :
charpent@asus16-ec:/usr/local/sage-8$ sage -t --long src/sage/symbolic/expression.pyx
too many failed tests, not using stored timings
Running doctests with ID 2017-11-27-09-25-00-2de1e0c6.
Git branch: tst24240_n_24262
Using --optional=database_gap,dot2tex,fricas,giacpy_sage,igraph,mpir,python2,python_igraph,sage
Doctesting 1 file.
sage -t --long src/sage/symbolic/expression.pyx
[2776 tests, 21.99 s]
----------------------------------------------------------------------
All tests passed!
----------------------------------------------------------------------
Total time for all tests: 22.4 seconds
cpu time: 21.0 seconds
cumulative wall time: 22.0 seconds
charpent@asus16-ec:/usr/local/sage-8$ sage -t --long src/sage/rings/asymptotic/asymptotics_multivariate_generating_functions.py
too many failed tests, not using stored timings
Running doctests with ID 2017-11-27-09-26-14-fa0e402c.
Git branch: tst24240_n_24262
Using --optional=database_gap,dot2tex,fricas,giacpy_sage,igraph,mpir,python2,python_igraph,sage
Doctesting 1 file.
sage -t --long src/sage/rings/asymptotic/asymptotics_multivariate_generating_functions.py
[805 tests, 26.29 s]
----------------------------------------------------------------------
All tests passed!
----------------------------------------------------------------------
Total time for all tests: 26.4 seconds
cpu time: 26.3 seconds
cumulative wall time: 26.3 seconds
ptestlong underway...
Merge conflict