Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Some tests are broken for SymPy 1.4 #31

Closed
2 tasks done
utensil opened this issue Apr 12, 2019 · 6 comments
Closed
2 tasks done

Some tests are broken for SymPy 1.4 #31

utensil opened this issue Apr 12, 2019 · 6 comments
Labels
Milestone

Comments

@utensil
Copy link
Member

utensil commented Apr 12, 2019

SymPy 1.4 has just released and some tests are broken for SymPy 1.4, see build https://circleci.com/workflow-run/dcbd3c98-45c3-4c89-abd6-2ea97fa07b2c .

Freeze SymPy version to 1.3 to keep CI green for now.

Tasks:

@utensil
Copy link
Member Author

utensil commented Apr 12, 2019

Errors are due to:

@utensil utensil added the bug label Apr 12, 2019
@utensil utensil added this to the 0.4.4 milestone Apr 12, 2019
@oscargus
Copy link

I'll see if I can update the printing tests for Galgebra correspondingly. (I did not find any instances of \quad in the tests files I found though.)

@utensil
Copy link
Member Author

utensil commented Apr 12, 2019

I did not find any instances of \quad in the tests files I found though.

That's because we are using nbval to verify LaTeX or enhanced console output for galgebra by the Jupyter Notebooks in examples/ipython. It's an effective way to write tests for a symbolic library that has multiple output formats, but it's also sensitive to subtle changes between versions.

I'll see if I can update the printing tests for Galgebra correspondingly.

Thanks!

The \quad and \left issue can be fixed by modifying https://github.com/pygae/galgebra/blob/15-print-pow/test/.nbval_sanitize.cfg to ignore this kind of differences.

The real difficulty is the collect() issue. Currently galgebra use collect() in quite some places to collect the bases of multivectors, probably should do it in another way, like manually collect the bases. It's correct for SymPy to raise exceptions if the symbols to be collected has no certain order in the expression, but in the case of the bases, they are always at the rightmost position so there's no confusion here.

The collect() issue must be fixed before we can change SymPy version in CI to 1.4. And It's non-trivial, so I'll not fix it in #17 but will fix it before 0.4.4 release.

The fix for order change issue also needs to be delayed until the explicitly change to use SymPy 1.4 in CI after the collect() issue is addressed.

@asmeurer
Copy link

Once you get this fixed I would suggest adding a CI build for SymPy master so these issues can be detected sooner. We also plan to do a 1.5 release soon, so if you can test SymPy master now that would help.

@utensil
Copy link
Member Author

utensil commented Sep 27, 2019

Good idea, this was also brought up in sympy/sympy#8365 (comment) and I forgot it.

Added to the task list in the main thread of this issue.

@utensil
Copy link
Member Author

utensil commented Dec 18, 2019

The tasks in this issue are either done or tracked by separate issues, as reflected in the updated main thread. Closing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants