GeezerVisonThe World Wide Web, restored to 800 pixels of glory. | |||||||||||||||||||||||
| Home|About|Gaming cabinet|Archives|How it works|Starter sites | |||||||||||||||||||||||
GeezerVison is showing github.com — gh-103092: Isolate `_decimal` by CharlieZhao95 · Pull Request #103381 · python/cpython Conversation
|
I'm not sure I follow;
Can you please spell this out? We cannot guess what you mean by this :) |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Background When I executed Traceback (most recent call last): File "F:\CPython\github\cpython\Lib\test\test_decimal.py", line 5900, in <module> test_main(arith=True, verbose=True) File "F:\CPython\github\cpython\Lib\test\test_decimal.py", line 5840, in test_main init(C) File "F:\CPython\github\cpython\Lib\test\test_decimal.py", line 110, in init DefaultTestContext = m.Context( ^^^^^^^^^^ KeyError: 'invalid signal dict' I found that the place where the error occurs is PyDict_GetItemWithError(val, cm->ex) in So I guess I'm not sure if these works are necessary, please correct me if I'm wrong :)
Of course, there is currently some unclean code. For example, |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Is this code added by this PR, or code that is already there? For the latter, please do not include such changes in this PR. Instead, create an issue (unless there already is one), explain what you intend to do, and create a separate PR. This PR should focus on isolating |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
Sorry for not being clear. I mean the code added by this PR. I like to leave "FIXME" in my code to remind myself of potential work :) |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
I tested the reference counts using erlend's script and they look well. $./python measure.py before=90491, after=93999 before=94000, after=94000 before=94000, after=94000 before=94000, after=94000 before=94000, after=94000 Also, I compared the execution time of the |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
The code that I can think of that may need to be improved is as follows:
|
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Co-authored-by: Kumar Aditya <[email protected]>
|
🤖 New build scheduled with the buildbot fleet by @kumaraditya303 for commit 58f0049 🤖 If you want to schedule another build, you need to add the 🔨 test-with-refleak-buildbots label again. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
I'm sorry, but I don't have the bandwidth to review this in the near future. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
| int n, mem; | ||
|
|
||
| assert(PyDecContext_Check(self)); | ||
| decimal_state *state = get_module_state_by_def(Py_TYPE(self)); |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
guard with Py_DEBUG
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
IMO, we should break this up into multiple PRs, like we did with |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
Thanks. This PR made a lot of changes at the same time, which might make it difficult to review. But the I plan to break the PR into the following parts:
Potential work: Add Argument Clinic (It might be worth opening a new issue) And I noticed that @kumaraditya303 has already done some review work, what do you think? |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
SGTM, ping me when you are done, |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Successfully merging this pull request may close these issues.
There was an error while loading. Please reload this page.