sympy / sympy

A computer algebra system written in pure Python
https://sympy.org/
Other
12.97k stars 4.43k forks source link

SymPy 0.5.14 + Python2.4 = problem #3918

Closed navytux closed 16 years ago

navytux commented 16 years ago

bc.. consider this:

kirr@evo:~/src/sympy/sympy-official$ hg up sympy-0.5.14 5 files updated, 0 files merged, 0 files removed, 0 files unresolved kirr@evo:~/src/sympy/sympy-official$ ./setup.py clean running clean inserting into sys.path: /home/kirr/src/tools/py/py-0.9.0 cleaning path /home/kirr/src/sympy/sympy-official kirr@evo:~/src/sympy/sympy-official$ ./setup.py test running test

========================================= test process starts

executable: /usr/bin/python (2.4.4-final-0) using py lib: /home/kirr/src/tools/py/py-0.9.0/py

sympy/concrete/tests/test_gosper.py[2] .. sympy/concrete/tests/test_products.py[3] ... sympy/concrete/tests/test_sums_products.py[9] ......fff sympy/core/tests/test_arit.py[35] .................................ff sympy/core/tests/test_assumptions.py[18] ................ff sympy/core/tests/test_basic.py[25] ......................... sympy/core/tests/test_complex.py[10] .......... sympy/core/tests/test_count_ops.py[1] . sympy/core/tests/test_diff.py[4] .... sympy/core/tests/test_equal.py[4] .... sympy/core/tests/test_eval.py[8] .......f sympy/core/tests/test_eval_power.py[7] ....... sympy/core/tests/test_functions.py[21] .................fff. sympy/core/tests/test_match.py[24] .......................f sympy/core/tests/test_numbers.py[21] ..................... sympy/core/tests/test_relational.py[3] ... sympy/core/tests/test_str.py[9] ......... sympy/core/tests/test_subs.py[14] .............. sympy/core/tests/test_symbol.py[3] ... sympy/core/tests/test_sympify.py[12] ............ sympy/core/tests/test_truediv.py[3] ... sympy/core/tests/test_var.py[2] .. sympy/functions/combinatorial/tests/test_comb_factorials.py[4] .... sympy/functions/combinatorial/tests/test_comb_numbers.py[4] .... sympy/functions/elementary/tests/test_complexes.py[6] ...... sympy/functions/elementary/tests/test_exponential.py[6] .....f sympy/functions/elementary/tests/test_hyperbolic.py[7] ......f sympy/functions/elementary/tests/test_integers.py[2] .. sympy/functions/elementary/tests/test_interface.py[3] ... sympy/functions/elementary/tests/test_miscellaneous.py[2] .. sympy/functions/elementary/tests/test_trigonometric.py[10] .......... sympy/functions/special/tests/test_error_functions.py[3] ... sympy/functions/special/tests/test_gamma_functions.py[6] ...... sympy/functions/special/tests/test_spec_polynomials.py[4] .... sympy/functions/special/tests/test_spherical_harmonics.py[5] ..... sympy/functions/special/tests/test_zeta_functions.py[2] .. sympy/geometry/tests/test_geometry.py[6] ...... sympy/integrals/tests/test_integrals.py[21] ...................ff sympy/integrals/tests/test_risch.py[17] .............ssss sympy/integrals/tests/test_trigonometry.py[2] .. sympy/matrices/tests/test_matrices.py[26] .......................... sympy/ntheory/tests/test_ntheory.py[10] .......... sympy/numerics/tests/test_constants.py[2] .. sympy/numerics/tests/testevalf.py[2] .f sympy/numerics/tests/testfloat.py[15] ...........ffff sympy/numerics/tests/test_functions2.py[3] ... sympy/numerics/tests/test_numeric_functions.py[7] ......f sympy/numerics/tests/test_numerics.py[1] . sympy/numerics/tests/test_optimize.py[3] ..f sympy/numerics/tests/test_quad.py[3] ... sympy/parsing/tests/test_mathematica.py[1] . sympy/parsing/tests/test_maxima.py[3] ... sympy/physics/tests/test_paulialgebra.py[1] . sympy/physics/tests/test_physics_matrices.py[2] .. sympy/physics/tests/test_units.py[1] . sympy/plotting/tests/test_plotting.py[10] .......... sympy/polynomials/tests/test_polynomials.py[24] .........F...........fff sympy/polynomials/tests/test_polynomials_fast.py[3] ... sympy/polys/tests/test_polynomial.py[34] .................................. sympy/printing/pretty/tests/test_pretty.py[13] ............. sympy/printing/pretty/tests/test_pretty_unicode.py[16] ................ sympy/printing/tests/test_gtk.py[1] f sympy/printing/tests/test_latex.py[8] .......f sympy/printing/tests/test_mathml.py[6] .....f sympy/printing/tests/test_python.py[6] ...... sympy/series/tests/test_demidovich.py[15] ..........fffff sympy/series/tests/test_gruntz.py[20] ..................ff sympy/series/tests/test_limit_series.py[39] ....................................... sympy/series/tests/test_limits.py[5] ..... sympy/series/tests/test_nseries.py[11] ..........f sympy/series/tests/test_order.py[21] ..................fff sympy/series/tests/test_oseries.py[10] .........f sympy/series/tests/test_series.py[38] ...........................fffffffffff sympy/simplify/tests/test_rewrite.py[7] ......f sympy/simplify/tests/test_rootof.py[1] . sympy/simplify/tests/test_simplify.py[16] ..........ffffff sympy/simplify/tests/test_sqrtdenest.py[2] .f sympy/solvers/tests/test_ode.py[12] ............ sympy/solvers/tests/test_recurr.py[38] ...................................... sympy/solvers/tests/test_solvers.py[8] ........ sympy/specfun/tests/test_factorials.py[10] .........f sympy/statistics/tests/test_statistics.py[3] ... sympy/test_external/test_numpy.py[11] ........... sympy/utilities/tests/test_code_quality.py[1] . sympy/utilities/tests/test_lambdify.py[9] ......... sympy/utilities/tests/test_tests_names.py[1] .

__ reasons for skipped tests


Skipped in /home/kirr/src/sympy/sympy-official/sympy/integrals/tests/test_risch.py:140 Skipped in /home/kirr/src/sympy/sympy-official/sympy/integrals/tests/test_risch.py:149 Skipped in /home/kirr/src/sympy/sympy-official/sympy/integrals/tests/test_risch.py:131 Skipped in /home/kirr/src/sympy/sympy-official/sympy/integrals/tests/test_risch.py:158 reason: Skipped: takes too much time


___ entrypoint: test_roots


def test_roots():
    a = Symbol("a")
    b = Symbol("b")
    c = Symbol("c")
    x = Symbol("x")
    assert roots(x**2-3*x+2) == [1, 2]
    assert roots(x**2-3*x/2+Rational(1,2)) == [Rational(1,2), 1]
    assert roots(2*x**2-3*x+1) == [Rational(1,2), 1]
    assert roots(x**2-1) == [1, -1]
    assert roots(x**2+1) == [I, -I]
    assert roots(x**3-1) == [1,
                             Rational(-1,2) +

I_Rational(1,2)_3Rational(1,2), Rational(-1,2) - I_Rational(1,2)_3Rational(1,2)] assert roots(x3) == [0, 0, 0] assert roots(x3-x) == [-1, 0, 1] assert roots(Rational(2),x) == [] E assert roots(a_x2 + b_x + c, var=[x]) == \ [-b/(a_2)+(((b/a)2-4_c/a)*Rational(1,2))/2, -b/(a2)-(((b/a)*2-4c/a)Rational(1,2))/2]

         assert [-1/2*(-4*c/a + a**(-2)*b**2)**(1/2) - 1/2*b/a,

(1/2)_(-4_c/a + a(-2)b2)(1 /2) - 1/2b/a] == [(1/2)(-4c/a + a(-2)_b2)(1/2) - 1/2b/a, -1/2(-4_c/a + a*(-2)b2)(1/2)

  • 1/2_b/a]
    • where [-1/2_(-4_c/a + a(-2)_b2)(1/2) - 1/2b/a, (1/2)(-4_c/a + a(-2)_b2) _(1/2) - 1/2_b/a] = roots((((a * (x * 2)) + (b * x)) + c), var=[x])

[/home/kirr/src/sympy/sympy-official/sympy/polynomials/tests/test_polynomials.py:284]


============= tests finished: 761 passed, 61 xfail, 1 failed, 4 skipped in 401.61 seconds ============= DO NOT COMMIT!

I.e. we have one failing test.

On the other hand

$ python2.5 setup.py test

succeds.

I consider this being critical. Also, after fixing this we maybe could release 0.5.14.1 ?

p. Original issue for "#3918":https://github.com/sympy/sympy/issues/3918: "http://code.google.com/p/sympy/issues/detail?id=819":http://code.google.com/p/sympy/issues/detail?id=819

p. Original author: "https://code.google.com/u/111152560333599832822/":https://code.google.com/u/111152560333599832822/

certik commented 16 years ago

bc.. I did test it in python2.4 before the release and all tests passed.

I just test it again in a clean pbuilder environment and I am not able to reproduce it:

root@fuji:/tmp/sympy# hg up sympy-0.5.14 5 files updated, 0 files merged, 0 files removed, 0 files unresolved root@fuji:/tmp/sympy# ./setup.py clean running clean cleaning path /tmp/sympy root@fuji:/tmp/sympy# python2.4 setup.py test running test ============================= test process starts ============================== executable: /usr/bin/python2.4 (2.4.5-final-0) using py lib: /usr/lib/python2.4/site-packages/py

sympy/concrete/tests/test_gosper.py[2] .. sympy/concrete/tests/test_products.py[3] ... sympy/concrete/tests/test_sums_products.py[9] ......fff sympy/core/tests/test_arit.py[35] .................................ff sympy/core/tests/test_assumptions.py[18] ................ff sympy/core/tests/test_basic.py[25] ......................... sympy/core/tests/test_complex.py[10] .......... sympy/core/tests/test_count_ops.py[1] . sympy/core/tests/test_diff.py[4] .... sympy/core/tests/test_equal.py[4] .... sympy/core/tests/test_eval.py[8] .......f sympy/core/tests/test_eval_power.py[7] ....... sympy/core/tests/test_functions.py[21] .................fff. sympy/core/tests/test_match.py[24] .......................f sympy/core/tests/test_numbers.py[21] ..................... sympy/core/tests/test_relational.py[3] ... sympy/core/tests/test_str.py[9] ......... sympy/core/tests/test_subs.py[14] .............. sympy/core/tests/test_symbol.py[3] ... sympy/core/tests/test_sympify.py[12] ............ sympy/core/tests/test_truediv.py[3] ... sympy/core/tests/test_var.py[2] .. sympy/functions/combinatorial/tests/test_comb_factorials.py[4] .... sympy/functions/combinatorial/tests/test_comb_numbers.py[4] .... sympy/functions/elementary/tests/test_complexes.py[6] ...... sympy/functions/elementary/tests/test_exponential.py[6] .....f sympy/functions/elementary/tests/test_hyperbolic.py[7] ......f sympy/functions/elementary/tests/test_integers.py[2] .. sympy/functions/elementary/tests/test_interface.py[3] ... sympy/functions/elementary/tests/test_miscellaneous.py[2] .. sympy/functions/elementary/tests/test_trigonometric.py[10] .......... sympy/functions/special/tests/test_error_functions.py[3] ... sympy/functions/special/tests/test_gamma_functions.py[6] ...... sympy/functions/special/tests/test_spec_polynomials.py[4] .... sympy/functions/special/tests/test_spherical_harmonics.py[5] ..... sympy/functions/special/tests/test_zeta_functions.py[2] .. sympy/geometry/tests/test_geometry.py[6] ...... sympy/integrals/tests/test_integrals.py[21] ...................ff sympy/integrals/tests/test_risch.py[17] .............ssss sympy/integrals/tests/test_trigonometry.py[2] .. sympy/matrices/tests/test_matrices.py[26] .......................... sympy/ntheory/tests/test_ntheory.py[10] .......... sympy/numerics/tests/test_constants.py[2] .. sympy/numerics/tests/testevalf.py[2] .f sympy/numerics/tests/testfloat.py[15] ...........ffff sympy/numerics/tests/test_functions2.py[3] ... sympy/numerics/tests/test_numeric_functions.py[7] ......f sympy/numerics/tests/test_numerics.py[1] . sympy/numerics/tests/test_optimize.py[3] ..f sympy/numerics/tests/test_quad.py[3] ... sympy/parsing/tests/test_mathematica.py[1] . sympy/parsing/tests/test_maxima.py[3] ... sympy/physics/tests/test_paulialgebra.py[1] . sympy/physics/tests/test_physics_matrices.py[2] .. sympy/physics/tests/test_units.py[1] . sympy/plotting/tests/test_plotting.py[0] sympy/polynomials/tests/test_polynomials.py[24] .....................fff sympy/polynomials/tests/test_polynomials_fast.py[3] ... sympy/polys/tests/test_polynomial.py[34] .................................. sympy/printing/pretty/tests/test_pretty.py[13] ............. sympy/printing/pretty/tests/test_pretty_unicode.py[16] ................ sympy/printing/tests/test_gtk.py[1] f sympy/printing/tests/test_latex.py[8] .......f sympy/printing/tests/test_mathml.py[6] .....f sympy/printing/tests/test_python.py[6] ...... sympy/series/tests/test_demidovich.py[15] ..........fffff sympy/series/tests/test_gruntz.py[20] ..................ff sympy/series/tests/test_limit_series.py[39] ....................................... sympy/series/tests/test_limits.py[5] ..... sympy/series/tests/test_nseries.py[11] ..........f sympy/series/tests/test_order.py[21] ..................fff sympy/series/tests/test_oseries.py[10] .........f sympy/series/tests/test_series.py[38] ...........................fffffffffff sympy/simplify/tests/test_rewrite.py[7] ......f sympy/simplify/tests/test_rootof.py[1] . sympy/simplify/tests/test_simplify.py[16] ..........ffffff sympy/simplify/tests/test_sqrtdenest.py[2] .f sympy/solvers/tests/test_ode.py[12] ............ sympy/solvers/tests/test_recurr.py[38] ...................................... sympy/solvers/tests/test_solvers.py[8] ........ sympy/specfun/tests/test_factorials.py[10] .........f sympy/statistics/tests/test_statistics.py[3] ... sympy/test_external/test_numpy.py[0] sympy/utilities/tests/test_code_quality.py[1] . sympy/utilities/tests/test_lambdify.py[9] ......... sympy/utilities/tests/test_tests_names.py[1] .

__ reasons for skipped tests ___ Skipped in /tmp/sympy/sympy/integrals/tests/test_risch.py:158 Skipped in /tmp/sympy/sympy/integrals/tests/test_risch.py:131 Skipped in /tmp/sympy/sympy/integrals/tests/test_risch.py:149 Skipped in /tmp/sympy/sympy/integrals/tests/test_risch.py:140 reason: Skipped: 'takes too much time'

======= tests finished: 741 passed, 61 xfail, 4 skipped in 75.07 seconds ======= Testing docstrings.

.....................................................................................................................................................................

Ran 165 tests in 10.335s

OK

Notice however the different number of tests picked up and run...

p. Original comment: "http://code.google.com/p/sympy/issues/detail?id=819#c1":http://code.google.com/p/sympy/issues/detail?id=819#c1

p. Original author: "https://code.google.com/u/104039945248245758823/":https://code.google.com/u/104039945248245758823/

navytux commented 16 years ago

bc.. Indeed, something was wrong on my side:

kirr@evo:~/src/sympy$ hg clone -r sympy-0.5.14 sympy-official sympy-py2.4 requesting all changes adding changesets adding manifests adding file changes added 1165 changesets with 4423 changes to 887 files updating working directory .hgtags@b70f06c94319, line 3: tag 'sympy-0.4.3' refers to unknown node .hgtags@b70f06c94319, line 5: tag 'sympy-0.4.1' refers to unknown node 435 files updated, 0 files merged, 0 files removed, 0 files unresolved kirr@evo:~/src/sympy$ cd sympy-py2.4/ kirr@evo:~/src/sympy/sympy-py2.4$ hg glog -l 4 .hgtags@b70f06c94319, line 3: tag 'sympy-0.4.3' refers to unknown node .hgtags@b70f06c94319, line 5: tag 'sympy-0.4.1' refers to unknown node @ changeset: 1164:2c385f793eb5 tag: tip user: Ondrej Certik ondrej@certik.cz date: Sat Apr 26 22:49:18 2008 +0200 summary: v0.5.14
o changeset: 1163:6f933f1b7f14 user: Ondrej Certik ondrej@certik.cz date: Sat Apr 26 22:40:46 2008 +0200 summary: Fixes the bug in factorials so that all test pass now.
o changeset: 1162:ba7ec7bca162 user: Ondrej Certik ondrej@certik.cz date: Sat Apr 26 22:15:13 2008 +0200 summary: Renames all duplicate tests that were before ignored (!) by py.test.
o changeset: 1161:898140d73187 user: Ondrej Certik ondrej@certik.cz date: Sat Apr 26 22:27:44 2008 +0200 summary: A test for duplicate tests added.

kirr@evo:~/src/sympy/sympy-py2.4$ sync kirr@evo:~/src/sympy/sympy-py2.4$ python2.4 ./setup.py test running test

========================================= test process starts

executable: /usr/bin/python2.4 (2.4.5-final-0) using py lib: /home/kirr/src/tools/py/py-0.9.0/py

sympy/concrete/tests/test_gosper.py[2] .. sympy/concrete/tests/test_products.py[3] ... sympy/concrete/tests/test_sums_products.py[9] ......fff sympy/core/tests/test_arit.py[35] .................................ff sympy/core/tests/test_assumptions.py[18] ................ff sympy/core/tests/test_basic.py[25] ......................... sympy/core/tests/test_complex.py[10] .......... sympy/core/tests/test_count_ops.py[1] . sympy/core/tests/test_diff.py[4] .... sympy/core/tests/test_equal.py[4] .... sympy/core/tests/test_eval.py[8] .......f sympy/core/tests/test_eval_power.py[7] ....... sympy/core/tests/test_functions.py[21] .................fff. sympy/core/tests/test_match.py[24] .......................f sympy/core/tests/test_numbers.py[21] ..................... sympy/core/tests/test_relational.py[3] ... sympy/core/tests/test_str.py[9] ......... sympy/core/tests/test_subs.py[14] .............. sympy/core/tests/test_symbol.py[3] ... sympy/core/tests/test_sympify.py[12] ............ sympy/core/tests/test_truediv.py[3] ... sympy/core/tests/test_var.py[2] .. sympy/functions/combinatorial/tests/test_comb_factorials.py[4] .... sympy/functions/combinatorial/tests/test_comb_numbers.py[4] .... sympy/functions/elementary/tests/test_complexes.py[6] ...... sympy/functions/elementary/tests/test_exponential.py[6] .....f sympy/functions/elementary/tests/test_hyperbolic.py[7] ......f sympy/functions/elementary/tests/test_integers.py[2] .. sympy/functions/elementary/tests/test_interface.py[3] ... sympy/functions/elementary/tests/test_miscellaneous.py[2] .. sympy/functions/elementary/tests/test_trigonometric.py[10] .......... sympy/functions/special/tests/test_error_functions.py[3] ... sympy/functions/special/tests/test_gamma_functions.py[6] ...... sympy/functions/special/tests/test_spec_polynomials.py[4] .... sympy/functions/special/tests/test_spherical_harmonics.py[5] ..... sympy/functions/special/tests/test_zeta_functions.py[2] .. sympy/geometry/tests/test_geometry.py[6] ...... sympy/integrals/tests/test_integrals.py[21] ...................ff sympy/integrals/tests/test_risch.py[17] .............ssss sympy/integrals/tests/test_trigonometry.py[2] .. sympy/matrices/tests/test_matrices.py[26] .......................... sympy/ntheory/tests/test_ntheory.py[10] .......... sympy/numerics/tests/test_constants.py[2] .. sympy/numerics/tests/testevalf.py[2] .f sympy/numerics/tests/testfloat.py[15] ...........ffff sympy/numerics/tests/test_functions2.py[3] ... sympy/numerics/tests/test_numeric_functions.py[7] ......f sympy/numerics/tests/test_numerics.py[1] . sympy/numerics/tests/test_optimize.py[3] ..f sympy/numerics/tests/test_quad.py[3] ... sympy/parsing/tests/test_mathematica.py[1] . sympy/parsing/tests/test_maxima.py[3] ... sympy/physics/tests/test_paulialgebra.py[1] . sympy/physics/tests/test_physics_matrices.py[2] .. sympy/physics/tests/test_units.py[1] . sympy/plotting/tests/test_plotting.py[10] .......... sympy/polynomials/tests/test_polynomials.py[24] .....................fff sympy/polynomials/tests/test_polynomials_fast.py[3] ... sympy/polys/tests/test_polynomial.py[34] .................................. sympy/printing/pretty/tests/test_pretty.py[13] ............. sympy/printing/pretty/tests/test_pretty_unicode.py[16] ................ sympy/printing/tests/test_gtk.py[1] f sympy/printing/tests/test_latex.py[8] .......f sympy/printing/tests/test_mathml.py[6] .....f sympy/printing/tests/test_python.py[6] ...... sympy/series/tests/test_demidovich.py[15] ..........fffff sympy/series/tests/test_gruntz.py[20] ..................ff sympy/series/tests/test_limit_series.py[39] ....................................... sympy/series/tests/test_limits.py[5] ..... sympy/series/tests/test_nseries.py[11] ..........f sympy/series/tests/test_order.py[21] ..................fff sympy/series/tests/test_oseries.py[10] .........f sympy/series/tests/test_series.py[38] ...........................fffffffffff sympy/simplify/tests/test_rewrite.py[7] ......f sympy/simplify/tests/test_rootof.py[1] . sympy/simplify/tests/test_simplify.py[16] ..........ffffff sympy/simplify/tests/test_sqrtdenest.py[2] .f sympy/solvers/tests/test_ode.py[12] ............ sympy/solvers/tests/test_recurr.py[38] ...................................... sympy/solvers/tests/test_solvers.py[8] ........ sympy/specfun/tests/test_factorials.py[10] .........f sympy/statistics/tests/test_statistics.py[3] ... sympy/test_external/test_numpy.py[11] ........... sympy/utilities/tests/test_code_quality.py[1] . sympy/utilities/tests/test_lambdify.py[9] ......... sympy/utilities/tests/test_tests_names.py[1] .

__ reasons for skipped tests


Skipped in /home/kirr/src/sympy/sympy-py2.4/sympy/integrals/tests/test_risch.py:149 Skipped in /home/kirr/src/sympy/sympy-py2.4/sympy/integrals/tests/test_risch.py:140 Skipped in /home/kirr/src/sympy/sympy-py2.4/sympy/integrals/tests/test_risch.py:158 Skipped in /home/kirr/src/sympy/sympy-py2.4/sympy/integrals/tests/test_risch.py:131 reason: Skipped: takes too much time

================== tests finished: 762 passed, 61 xfail, 4 skipped in 522.02 seconds

Testing docstrings.

Need to investigate further (in the evening, hopefully).

p. Original comment: "http://code.google.com/p/sympy/issues/detail?id=819#c2":http://code.google.com/p/sympy/issues/detail?id=819#c2

p. Original author: "https://code.google.com/u/111152560333599832822/":https://code.google.com/u/111152560333599832822/

certik commented 16 years ago

bc.. OK. Close the issue then please if all is ok.

p. Original comment: "http://code.google.com/p/sympy/issues/detail?id=819#c3":http://code.google.com/p/sympy/issues/detail?id=819#c3

p. Original author: "https://code.google.com/u/104039945248245758823/":https://code.google.com/u/104039945248245758823/

navytux commented 16 years ago

bc.. I did 'hg up null', then manually removed all those *.pyc, then 'hg up' and all tests pass.

Unfortunately don't have time to investigate it :(

Status: Fixed

p. Original comment: "http://code.google.com/p/sympy/issues/detail?id=819#c4":http://code.google.com/p/sympy/issues/detail?id=819#c4

p. Original author: "https://code.google.com/u/111152560333599832822/":https://code.google.com/u/111152560333599832822/