By default mpmath uses python's builtin long integers which are very
slow. Installing python3-gmpy2 makes it use gmp, mpfr, mpc for that,
which is asymptotically faster.
After a discussion in #33481 it was decided to add it to depends.
Also:
- remove INSTALL.msg; for plotting, mpmath itself gives a warning.
- Adopt.
Upstream 2.1.0rc1 builds on python3.10, last official version does not.
This package is used by python3-mpmath for multiprecission arithmetic.
If not installed, mpmath defaults to python bigints which are very slow.
For example: compute 1M digits of pi using sympy:
$ isympy # without python3-gmpy2
In [1]: %time a=pi.n(1_000_000)
CPU times: user 49.4 s, sys: 2.96 ms, total: 49.4 s
Wall time: 49.4 s
vs.
$ isympy # with python3-gmpy2
In [1]: %time a=pi.n(1_000_000)
CPU times: user 632 ms, sys: 5.99 ms, total: 638 ms
Wall time: 639 ms
Note that just installing python3-gmpy2 brings this improvement.
Arguably python3-gmpy2 could be made a dependency of python3-mpmath.
This reverts commit f91cea99dd.
Also:
- fix hostmakedepends
- make tests work
- adopt
Package will not build with new protobuf, upstream hasn't seen a commit
since Feb 2016, a release hasn't been cut since Sep 2015, and issues/PRs
have sat for years without maintainer feedback or other activity.
This project is dead.
In a discussion a year ago [1], I proposed dropping versioned libs
subpackages and the consensus was that the versioning should be kept.
Since then, protobuf has been updated several times and we've always
been able to migrate all dependants, so there's no need to keep the
versioned packages around just in case that can't happen some day.
Let's drop the versioned packages to make upgrades easier and avoid
polluting repo indexes with old packages that don't get cleaned. Users
who need old versions of the libs for un-packaged software may need to
build those old versions by hand, but this is just one of the pitfalls
of using a rolling Linux distribution.
[1]: https://github.com/void-linux/void-packages/pull/18691