]> git.ipfire.org Git - thirdparty/Python/cpython.git/commit
gh-118164: str(10**10000) hangs if the C _decimal module is missing (#118503)
authorTim Peters <tim.peters@gmail.com>
Sat, 4 May 2024 23:22:33 +0000 (18:22 -0500)
committerGitHub <noreply@github.com>
Sat, 4 May 2024 23:22:33 +0000 (18:22 -0500)
commit999f0c512281995fb61a0d9eda075fd846e8c505
tree3d3d201d041fab5800f7f8df3597fb03ea0a3ec0
parent08d169f14a715ceaae3d563ced2ff1633d009359
gh-118164: str(10**10000) hangs if the C _decimal module is missing (#118503)

* Initial stab.

* Test the tentative fix. Hangs "forever" without this change.

* Move the new test to a better spot.

* New comment to explain why _convert_to_str allows any poewr of 10.

* Fixed a comment, and fleshed out an existing test that appeared unfinished.

* Added temporary asserts. Or maybe permanent ;-)

* Update Lib/_pydecimal.py

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
* Remove the new _convert_to_str().

Serhiy and I independently concluded that exact powers of 10
aren't possible in these contexts, so just checking the
string length is sufficient.

* At least for now, add the asserts to the other block too.

* ðŸ“œðŸ¤– Added by blurb_it.

---------

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
Lib/_pydecimal.py
Lib/test/test_decimal.py
Misc/NEWS.d/next/Library/2024-05-04-20-22-59.gh-issue-118164.9D02MQ.rst [new file with mode: 0644]