On Wed, Jul 10, 2013 at 5:21 AM, Stefan Krastanov <[email protected]> wrote: > The issue is that `mpmath.whatever` and `sympy.mpmath.whatever` are > considered by the interpreter to be different classes even if the same > versions of mpmath are used, hence methods like `__add__` raise > NotImplementedError. I have heard this issue to be raised occasionally > before.
Right. But again, playing the devil's advocate, this would be an argument for removing mpmath from sympy completely. There is also another option (unfortunately not perfect either, see below), if we choose to depend on mpmath --- we can use git submodules. The sympy master hash then contains the exact hash of all submodules. If we update mpmath in sympy, all we need to do is to pull in more patches for mpmath from its own repo, and then we need to create a new commit in sympy. Then when you checkout any previous commit in sympy, and do "git submodule update" (unfortunately you have to do this by hand), it will checkout the *exact* mpmath that was known to work with that particular commit of sympy. So we would still only support and test exactly one exact version (commit) of mpmath for each commit of sympy. In other words, almost no change to what we do now. We would need to do something like: rm -rf sympy/mpmath git submodule add https://github.com/sympy/mpmath sympy/mpmath where the https://github.com/sympy/mpmath repository would unfortunately only contain the "mpmath" directory of the mpmath repo (this point is not very satisfactory though). So for this last point I am now happy with this solution either, but at least it's good to know that git submodules fix the problem of what exact version of mpmath we depend on as time goes. Ondrej -- You received this message because you are subscribed to the Google Groups "sympy" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/sympy. For more options, visit https://groups.google.com/groups/opt_out.
