Sergey B Kirpichev
4420cf4dc9
gh-124040: Adjust few tests in testHypot/testDist to get exactly computed results (GH-124042)
2024-09-19 11:11:03 +03:00
Sergey B Kirpichev
28aea5d07d
gh-123836: Check zero signs in math_testcases.txt ( #123854 )
...
Just like cmath_testcases.txt. These tests require IEEE 754 anyway.
Correct zero sign for sqrt tests to match math.h convention.
2024-09-17 10:22:40 +02:00
algonell
9017b95ff2
Fix typos ( #123775 )
2024-09-09 14:58:26 +02:00
Serhiy Storchaka
32c7dbb2bc
gh-121485: Always use 64-bit integers for integers bits count (GH-121486)
...
Use 64-bit integers instead of platform specific size_t or Py_ssize_t
to represent the number of bits in Python integer.
2024-08-30 08:13:24 +03:00
trag1c
c4f9823be2
gh-118671: Updated dead ActiveState links ( #118730 )
...
Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
Co-authored-by: Kirill Podoprigora <kirill.bast9@mail.ru>
2024-05-08 01:06:38 -06:00
Malcolm Smith
1d3225ae05
gh-116622: Test updates for Android ( #117299 )
...
- re-enable test_fcntl_64_bit on Linux aarch64, but disable it on all
Android ABIs
- use support.setswitchinterval in all relevant tests
- skip test_fma_zero_result on Android x86_64
- accept EACCES when calling os.get_terminal_size on Android
2024-04-05 20:57:36 +00:00
Victor Stinner
8e3c953b3a
gh-73468: Add math.fma() function ( #116667 )
...
Added new math.fma() function, wrapping C99's ``fma()`` operation:
fused multiply-add function.
Co-authored-by: Mark Dickinson <mdickinson@enthought.com>
2024-03-17 13:58:26 +00:00
Sergey B Kirpichev
c61de456db
gh-102837: more tests for the math module (GH-111930)
...
Add tests to improve coverage:
* fsum: L1369, L1379, L1383, L1412
* trunc: L2081
* log: L2267
* dist: L2577, L2579
* hypot: L2632
* sumprod: L2744, L2754, L2774, L2778, L2781, L2785, L2831, L2835, L2838
* pow: L2982
* prod: L3294, L3308, L3318-3330
// line numbers wrt to 9dc4fb8204
2023-11-13 10:57:57 +01:00
Sergey B Kirpichev
9dc4fb8204
gh-111342: fix typo in math.sumprod (GH-111416)
2023-10-27 23:52:04 -05:00
Nikita Sobolev
ed587be0d0
gh-108303: Move all math files to `Lib/test/mathdata/` ( #109512 )
2023-09-21 21:14:41 +02:00
Sergey B Kirpichev
9c995abd78
gh-102837: improve test coverage for math module ( #102523 )
...
- input checks for math_1(L989), math_1a(L1023), math_2(L1064,L1071), hypot(L2682), log(L2307), ldexp(L2168), ceil(L1165), floor(L1236,L1239) and dist(L2587,L2588,L2628).
- drop inaccessible "if" branch (L3518) in perm_comb_small()
- improve fsum coverage for exceptional cases (L1433,L1438,L1451,L1497), ditto fmod(L2378)
- rewrite modf to fix inaccessible case(L2229), ditto for pow(L2988)
(all line numbers are wrt the main branch at 5e6661bce9
)
2023-09-03 01:48:47 -07:00
Matthias Görgens
6e39fa1955
gh-94906: Support multiple steps in math.nextafter ( #103881 )
...
This PR updates `math.nextafter` to add a new `steps` argument. The behaviour is as though `math.nextafter` had been called `steps` times in succession.
---------
Co-authored-by: Mark Dickinson <mdickinson@enthought.com>
2023-05-19 21:03:49 +01:00
Sebastian Berg
7a3b03509e
gh-104263: Rely on Py_NAN and introduce Py_INFINITY (GH-104202)
...
This PR removes `_Py_dg_stdnan` and `_Py_dg_infinity` in favour of
using the standard `NAN` and `INFINITY` macros provided by C99.
This change has the side-effect of fixing a bug on MIPS where the
hard-coded value used by `_Py_dg_stdnan` gave a signalling NaN
rather than a quiet NaN.
---------
Co-authored-by: Mark Dickinson <dickinsm@gmail.com>
2023-05-10 17:44:52 +01:00
Mark Dickinson
0672a6c23b
Revert "gh-89381: Fix invalid signatures of math/cmath.log ( #101404 )" ( #101580 )
...
This reverts commit 0ef92d9793
.
2023-02-05 16:36:33 +00:00
Raymond Hettinger
5a2b984568
GH-100485: Create an alternative code path when an accurate fma() implementation is not available ( #101567 )
2023-02-04 17:54:44 -06:00
Sergey B Kirpichev
0ef92d9793
gh-89381: Fix invalid signatures of math/cmath.log ( #101404 )
2023-01-29 11:50:10 -08:00
Raymond Hettinger
84483aacc0
GH-100485: Add extended accuracy test. Switch to faster fma() based variant. GH-101383)
2023-01-28 06:29:21 -06:00
Raymond Hettinger
b139bcd892
GH-100485: Tweaks to sumprod() (GH-100857)
2023-01-08 13:38:24 -06:00
Raymond Hettinger
47b9f83a83
GH-100485: Add math.sumprod() (GH-100677)
2023-01-07 12:46:35 -06:00
Kumar Aditya
ab57505070
GH-98897: fix memory leak if `math.dist` raises exception (GH-98898)
2022-10-31 21:18:32 -05:00
Serhiy Storchaka
2d787971c6
bpo-37295: Use constant-time comb() and perm() for larger n depending on k (GH-30305)
2022-01-09 15:32:25 +02:00
Gideon
6266e4af87
bpo-45917: Add math.exp2() method - return 2 raised to the power of x (GH-29829)
...
Co-authored-by: Mark Dickinson <dickinsm@gmail.com>
2021-11-29 18:55:43 +00:00
Pablo Galindo Salgado
84975146a7
bpo-35606: Fix math.prod tests using 'start' as keyword parameter (GH-28595)
2021-09-28 13:32:43 +01:00
Serhiy Storchaka
851811f577
bpo-5846: Do not use obsolete unittest functions. (GH-28303)
...
Get rid of use of makeSuite() and findTestCases().
Also make test_math and test_threading_local discoverable.
2021-09-13 10:49:53 +03:00
Mark Dickinson
4a42cebf6d
bpo-44339: Fix math.pow corner case to comply with IEEE 754 (GH-26606)
...
Change the behaviour of `math.pow(0.0, -math.inf)` and `math.pow(-0.0, -math.inf)` to return positive infinity instead of raising `ValueError`. This makes `math.pow` consistent with the built-in `pow` (and the `**` operator) for this particular special case, and brings the `math.pow` special-case handling into compliance with IEEE 754.
2021-06-12 10:23:02 +01:00
Ajith Ramachandran
ac867f10b4
bpo-44357:Add `math.cbrt()` function: Cube Root (GH-26622)
...
* Add math.cbrt() function: Cube Root
Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
Co-authored-by: Mark Dickinson <dickinsm@gmail.com>
2021-06-10 17:42:09 +01:00
Ajith Ramachandran
90cd433032
bpo-44364:Add non integral tests for `sqrt()` ( #26625 )
...
* Add non integral tests for `sqrt()`
Co-authored-by: Mark Dickinson <dickinsm@gmail.com>
2021-06-10 17:27:26 +01:00
Inada Naoki
35715d1e72
bpo-43651: PEP 597: Fix EncodingWarning in some tests (GH-25145)
...
* test_asyncio
* test_bz2
* test_math
* test_cmath
* test_cmd_line
* test_cmd_line_script
* test_compile
* test_contextlib
* test_profile
* ctypes/test/test_find
* test_multiprocessing
* test_configparser
* test_csv
* test_dbm_dumb
* test_decimal
* test_difflib
* os.fdopen() calls io.text_encoding() to emit EncodingWarning for right place.
2021-04-04 09:01:23 +09:00
Andre Delfino
e8a2076e14
Revert "Fix all Python Cookbook links ( #22205 )" (GH-22424)
...
This commit reverts commit ac0333e1e1
as the original links are working again and they provide extended features such as comments and alternative versions.
2020-09-27 01:47:25 +01:00
Raymond Hettinger
bc6b7fa6d7
bpo-41513: Add accuracy tests for math.hypot() (GH-22327)
2020-09-20 21:47:56 -07:00
Andre Delfino
ac0333e1e1
Fix all Python Cookbook links ( #22205 )
2020-09-15 21:13:26 +01:00
Raymond Hettinger
95a8a0e01d
bpo-41513: Remove broken tests that fail on Gentoo (GH-22249)
2020-09-14 17:13:49 -07:00
Raymond Hettinger
457d4e97de
bpo-41513: Add docs and tests for hypot() (GH-22238)
2020-09-13 23:33:41 -07:00
Raymond Hettinger
fff3c28052
bpo-41513: Improve speed and accuracy of math.hypot() (GH-21803)
2020-08-15 19:38:19 -07:00
Serhiy Storchaka
578c3955e0
bpo-37999: No longer use __int__ in implicit integer conversions. (GH-15636)
...
Only __index__ should be used to make integer conversions lossless.
2020-05-26 18:43:38 +03:00
Zackery Spytz
5208b4b379
bpo-39871: Fix possible SystemError in atan2, copysign and remainder (GH-18806)
...
In math_2(), the first PyFloat_AsDouble() call should be checked
for failure before the second call.
Co-authored-by: Mark Dickinson <dickinsm@gmail.com>
2020-03-14 10:45:32 +00:00
Serhiy Storchaka
559e7f165a
bpo-39648: Expand math.gcd() and math.lcm() to handle multiple arguments. (GH-18604)
...
* bpo-39648: Expand math.gcd() and math.lcm() to handle multiple arguments.
* Simplify fast path.
* Difine lcm() without arguments returning 1.
* Apply suggestions from code review
Co-Authored-By: Mark Dickinson <dickinsm@gmail.com>
Co-authored-by: Mark Dickinson <dickinsm@gmail.com>
2020-02-23 11:21:29 +00:00
ananthan-123
f2ee21d858
bpo-39479:Add math.lcm() function: Least Common Multiple ( #18547 )
...
* Update math.rst
* Update math.rst
* updated whats new
* Update test_math.py
* Update mathmodule.c
* Update mathmodule.c.h
* Update ACKS
* 📜 🤖 Added by blurb_it.
* Update 3.9.rst
* Update 2020-02-18-12-37-16.bpo-39479.j3UcCq.rst
* Update math.rst
* Update 2020-02-18-12-37-16.bpo-39479.j3UcCq.rst
* Update test_math.py
* Update ACKS
* Update mathmodule.c.h
* Update mathmodule.c
* Update mathmodule.c.h
* Update mathmodule.c.h
Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
2020-02-19 18:21:37 +00:00
Victor Stinner
59e2d26b25
Move test_math tests (GH-18098)
...
testPerm() and testComb() belong to MathTests, not to IsCloseTests().
test_nextafter() and test_ulp() now use assertIsNaN().
2020-01-21 12:48:16 +01:00
Victor Stinner
85ead4fc62
bpo-39396: Fix math.nextafter(-0.0, +0.0) on AIX 7.1 (GH-18094)
...
Move also math.nextafter() on math.ulp() tests from IsCloseTests to
MathTests.
2020-01-21 11:14:10 +01:00
Victor Stinner
0b2ab21956
bpo-39310: Add math.ulp(x) (GH-17965)
...
Add math.ulp(): return the value of the least significant bit
of a float.
2020-01-13 12:44:35 +01:00
Victor Stinner
100fafcf20
bpo-39288: Add math.nextafter(x, y) (GH-17937)
...
Return the next floating-point value after x towards y.
2020-01-12 02:15:42 +01:00
Mark Dickinson
bba873e633
bpo-38992: avoid fsum test failure from constant-folding (GH-17513)
...
* Issue 38992: avoid fsum test failure
* Add NEWS entry
2019-12-09 08:36:34 -06:00
Serhiy Storchaka
5fd5cb8d85
bpo-38639: Optimize floor(), ceil() and trunc() for floats. (GH-16991)
2019-11-16 18:00:57 +02:00
Raymond Hettinger
6b5f1b496f
bpo-37691: Let math.dist() accept sequences and iterables for coordinates (GH-14975)
2019-07-27 14:04:29 -07:00
Min ho Kim
96e12d5f4f
Fix typos in docs, comments and test assert messages ( #14872 )
2019-07-21 16:12:33 -04:00
Victor Stinner
8f4ef3b019
Remove unused imports in tests (GH-14518)
2019-07-01 18:28:25 +02:00
Paul Monson
f355069a33
bpo-36511: Add buildbot scripts and fix tests for Windows ARM32 buildbot (GH-13454)
2019-06-19 13:09:54 -07:00
Serhiy Storchaka
1b8a46d597
bpo-35431: Test math.comb() and math.perm() for OverflowError only on CPython. (GH-14146)
...
Other implementation can raise MemoryError, but it can takes hours.
2019-06-17 16:58:32 +03:00
Serhiy Storchaka
231aad3849
bpo-37315: Deprecate accepting floats in math.factorial(). (GH-14147)
2019-06-17 16:57:27 +03:00