1575 Commits

Author SHA1 Message Date
Sergey B Kirpichev 629daff497 Add a workaround for test on s390x
Closes #1046

(cherry picked from commit 1108318e0f)
2026-03-11 15:16:06 +03:00
flurin4 e12948020f Test frozen package version (#1055)
Add bash script to test package version in a frozen application version and a separate CI job to run it.  Closes #1044.

Co-authored-by: Sergey B Kirpichev <skirpichev@gmail.com>
(cherry picked from commit 45f5adbb37)
2026-03-10 05:34:02 +03:00
Sergey B Kirpichev 1ef88b4fa4 Amend docstring for round_digits()
(cherry picked from commit 9677a2a939)
2026-03-04 07:24:15 +03:00
Sergey B Kirpichev 650520b3c2 Use version_file option of setuptools-scm to keep version info
Closes #1044

(cherry picked from commit ed57d4034d)
2026-03-04 05:09:38 +03:00
Sergey B Kirpichev 501af4a7c7 Keep forever deprecated aliases for mpc/mpf_log() 2026-03-04 05:09:37 +03:00
Doug Torrance 6887127ae9 Set argtypes for sprintf from ctypes
Needed on some architectures (see the "Calling variadic functions" in
the ctypes documentation).

closes #1047

(cherry picked from commit d74dff7e48)
2026-03-01 08:33:57 +03:00
Sergey B Kirpichev 2933f42ad5 Merge branch 'master' into release-v1.4 2026-02-23 04:26:21 +03:00
Sergey B Kirpichev 7cf16b7828 Revert "Add isspecial() method for mp/fp contexts, deprecate isnormal()"
This reverts commit e6aa3b46b1.

Subnormals are properly handled by fp.isnormal().  Deprecate
fp.is_special() method.

Fixes #946
2026-02-23 04:08:07 +03:00
Sergey B Kirpichev 1e0dc7b307 Merge branch 'master' into release-v1.4 2026-02-22 13:56:05 +03:00
Sergey B Kirpichev c7128a6ac5 Merge pull request #1041 from skirpichev/fix-459
polylog(n, nan) -> nan
2026-02-22 13:55:04 +03:00
Sergey B Kirpichev d7b9ddb23c polylog(n, nan) -> nan
closes #459
2026-02-22 08:28:04 +03:00
Sergey B Kirpichev 3c8119eeb2 Use pretty-printing in det() docstring 2026-02-22 08:08:10 +03:00
Sergey B Kirpichev 7c3252b14c Add option --int-limits for CLI
This enables *default* Python mechanism for integer string
conversion length limitation:
https://docs.python.org/3/library/stdtypes.html#integer-string-conversion-length-limitation

For the mpmath CLI it will be *off* by default.  Usually, it doesn't
matter, as these limits not affect the gmpy2/gmp backends and working
with mpmath's types (mpf/mpc).  Though, sometimes you want to play with
integers in the mpmath console and these limits are really annoying.

I consider this as a bugfix, despite it adds a new option.
2026-02-22 08:01:03 +03:00
Sergey B Kirpichev e95bf2a22a Fix some found formatting issues with docs 2026-02-22 07:42:46 +03:00
Sergey B Kirpichev 454ee97a83 Merge branch 'master' into release-v1.4 2026-02-22 04:44:37 +03:00
Sergey B Kirpichev 932ed68c1f Use pytest.skip() in test_axes() 2026-02-21 16:19:22 +03:00
Sergey B Kirpichev c5437d880b Get rid off debug print's 2026-02-21 16:19:17 +03:00
Sergey B Kirpichev c4176127b0 Use erfc(z) to compute erf(z) with re(z) of large magnitude
closes #545
2026-02-21 15:45:34 +03:00
Sergey B Kirpichev ccb21aa6b4 Merge pull request #1038 from skirpichev/fix-486
Properly handle nan's elliprj()
2026-02-21 06:16:37 +03:00
Sergey B Kirpichev c8e1d276c7 Merge pull request #1017 from baranwalayush/fix/logm_zero_matrix_bug
Fix #1002: Raise ValueError when zero matrix is passed to logm()
2026-02-21 06:14:46 +03:00
Sergey B Kirpichev 69f9e55489 Properly handle nan's elliprj()
Closes #486
2026-02-21 05:40:37 +03:00
Sergey B Kirpichev d94ac5eeb3 Fix special caze for +inf in polylog_continuation()
See https://functions.wolfram.com/ZetaFunctionsandPolylogarithms/PolyLog/17/02/01/01/0008/

Closes #1033
2026-02-21 03:39:53 +03:00
Sergey B Kirpichev 90ccd8c40e Amend beb5029
Closes #1035
2026-02-21 01:50:50 +03:00
Colin B. Macdonald 2aad193ce0 polylog: z to positive infinity should return nan
Fixes #1033.
2026-02-19 22:10:14 -08:00
Sergey B Kirpichev eefdb4d0c4 Add tests for demo scripts
Closes #1029
2026-02-19 16:17:27 +03:00
Sergey B Kirpichev bfe0ffdb52 Change behavior of 'b' formatting type to mimic 'a'
This behavior is compatible with the gmpy2.

Closes #1027
2026-02-01 04:03:19 +03:00
Sergey B Kirpichev bd46aacf5d Correct mpc.__format__() docstring 2026-01-21 04:34:23 +03:00
Sergey B Kirpichev 510d3c8617 Don't require double_fac/fib from backend 2025-12-29 11:38:41 +03:00
Sergey B Kirpichev 4b35ad317f Quickly filter warning in CI for CPython v3.9
@pytest.mark.filterwarnings("ignore:datetime.datetime.utc.*:DeprecationWarning")
    def test_axes():
        try:
>           import matplotlib

mpmath/tests/test_visualization.py:15:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/opt/hostedtoolcache/Python/3.9.25/x64/lib/python3.9/site-packages/matplotlib/__init__.py:970: in <module>
    rcParamsDefault = _rc_params_in_file(
/opt/hostedtoolcache/Python/3.9.25/x64/lib/python3.9/site-packages/matplotlib/__init__.py:904: in _rc_params_in_file
    config[key] = val  # try to convert to proper type or raise
/opt/hostedtoolcache/Python/3.9.25/x64/lib/python3.9/site-packages/matplotlib/__init__.py:739: in __setitem__
    cval = self.validate[key](val)
/opt/hostedtoolcache/Python/3.9.25/x64/lib/python3.9/site-packages/matplotlib/rcsetup.py:427: in validate_font_properties
    parse_fontconfig_pattern(s)
/opt/hostedtoolcache/Python/3.9.25/x64/lib/python3.9/site-packages/matplotlib/_fontconfig_pattern.py:83: in parse_fontconfig_pattern
    parser = _make_fontconfig_parser()
/opt/hostedtoolcache/Python/3.9.25/x64/lib/python3.9/site-packages/matplotlib/_fontconfig_pattern.py:64: in _make_fontconfig_parser
    prop = Group((name + Suppress("=") + comma_separated(value)) | oneOf(_CONSTANTS))
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

args = ({'black': ('weight', 'black'), 'bold': ('weight', 'bold'), 'book': ('weight', 'book'), 'condensed': ('width', 'condensed'), ...},)
kwargs = {}

    @wraps(fn)
    def _inner(*args, **kwargs):
>       warnings.warn(
            f"{compat_name!r} deprecated - use {fn.__name__!r}",
            DeprecationWarning,
            stacklevel=2,
        )
E       DeprecationWarning: 'oneOf' deprecated - use 'one_of'

/opt/hostedtoolcache/Python/3.9.25/x64/lib/python3.9/site-packages/pyparsing/util.py:445: DeprecationWarning
2025-12-23 10:49:38 +03:00
Sergey B Kirpichev 2fe20a3c83 Amend 6c51c9d8 (restore default context's mp.pretty behavior) 2025-10-29 09:25:05 +03:00
baranwalayush e8aa7a0bd9 Fix infinite loop in case of zero matrix in logm function 2025-10-22 15:14:30 +05:30
Ayush Baranwal 0d8b0e0b8c Fix #1003: sinm and cosm can accept list as arguments, similar to expm and other functions (#1006) 2025-10-08 11:04:34 +03:00
baranwalayush de1e15d49f Fix matrix should raise ValueError and Add unit tests 2025-10-03 19:21:30 +05:30
Sergey B Kirpichev 57147a724a Workaround support for multiple statements in CLI
Closes #996
2025-10-02 07:44:36 +03:00
Warren Weckesser 82e72a72d7 Ensure exp, sin, tan, etc have a correct __name__ attribute 2025-09-06 16:32:42 -04:00
hnb22 baaccb59aa Switch logarithm implementation to taylor series when input is close to 1 (#957)
This modifies the logarithm implementation for cases where taylor series
is more optimal (cancellation >= working precision), providing a faster
path for low precision cases depending on how close input is to 1.
2025-09-03 05:31:22 +03:00
Sergey B Kirpichev ad91359172 Use threading.local storage for global caches 2025-09-01 06:21:07 +03:00
Sergey B Kirpichev 8042d8eb95 Document support for free-threading builds
Closes #975
2025-09-01 05:24:36 +03:00
Ferrangelo d9587127d5 Correct implementation of spherical bessel functions (#992)
Closes #991
2025-08-17 13:11:22 +03:00
Sergey B Kirpichev 1ad7c87381 Fix "citation not referenced" warnings
Closes #979
2025-08-06 07:15:09 +03:00
Sergey B Kirpichev 8870f1d258 Add aliases for mpf/mpc_log() as mpf/mpc_ln()
Closes #988
2025-08-06 06:02:12 +03:00
Sergey B Kirpichev 2a89521f0d Fix typo (im -> conj)
Closes #987
2025-08-06 05:26:42 +03:00
Sergey B Kirpichev b6af936582 Make mpc_hash() compatible with complex hash
Closes #985
2025-08-06 05:26:42 +03:00
Hongren Zheng 9ac078ca7c Add Fox H-function with rational A and B parameters (#982)
Closes #980
2025-07-27 19:03:23 +03:00
Sergey B Kirpichev 5d66b10f53 Use Fraction's with the python-gmp 2025-07-03 22:16:18 +03:00
David Walker 9b98a71476 Switch to anderson method to speed up zetazero (#959)
test / docs (push) Failing after 0s
test / coverage (push) Failing after 0s
test / linter (push) Failing after 0s
test / tests (false, 3.9) (push) Has been skipped
test / tests (false, pypy3.10) (push) Has been skipped
test / tests (false, pypy3.11) (push) Has been skipped
test / tests (false, 3.10) (push) Has been skipped
test / tests (false, 3.11) (push) Has been skipped
test / tests (false, 3.12) (push) Has been skipped
test / tests (false, 3.13) (push) Has been skipped
test / tests (false, 3.14) (push) Has been skipped
test / tests (true, 3.13) (push) Has been skipped
Publish on PyPI / Build distributions (push) Has been cancelled
Publish on PyPI / Publish distributions to PyPI (push) Has been cancelled
Closes #958
2025-06-20 05:44:34 +03:00
Sergey B Kirpichev 027bfd36ed Merge pull request #973 from skirpichev/references/224
Move references to docs/references.rst
2025-06-19 19:10:24 +03:00
Sergey B Kirpichev 2cad89428e Move references to docs/references.rst
Closes #224
2025-06-18 18:03:46 +03:00
That's ¬a problem d5f370a68a Fix typo in mpf_gamma() docstring 2025-06-18 07:53:03 +03:00
Sergey B Kirpichev cd52b6da6b Cleanup ctx_mp_python.py (consistent argument naming) 2025-06-18 07:53:01 +03:00