Skip to content

Conversation

@ghost
Copy link

@ghost ghost commented Jan 9, 2018

This PR provides documentation on correct handling of multiphase initialized modules' traversing.
It also contains a check that, in a debug build (--with-pydebug), does a sanity check for m_traverse handling the m_state==NULL case early.

https://bugs.python.org/issue32374

@encukou
Copy link
Member

encukou commented Mar 15, 2018

Anything I can do to help move this forward?
ping @ncoghlan

@ncoghlan
Copy link
Contributor

Commenting and tagging me worked :)

@ncoghlan ncoghlan merged commit c2b0b12 into python:master Mar 17, 2018
@miss-islington
Copy link
Contributor

Thanks @Traceur759 for the PR, and @ncoghlan for merging it 🌮🎉.. I'm working now to backport this PR to: 3.6, 3.7.
🐍🍒⛏🤖

@bedevere-bot
Copy link

GH-6128 is a backport of this pull request to the 3.7 branch.

miss-islington pushed a commit to miss-islington/cpython that referenced this pull request Mar 17, 2018
Multi-phase initialized modules allow m_traverse to be called while the
module is still being initialized, so module authors may need to account
for that.
(cherry picked from commit c2b0b12)

Co-authored-by: Marcel Plch <[email protected]>
miss-islington pushed a commit to miss-islington/cpython that referenced this pull request Mar 17, 2018
Multi-phase initialized modules allow m_traverse to be called while the
module is still being initialized, so module authors may need to account
for that.
(cherry picked from commit c2b0b12)

Co-authored-by: Marcel Plch <[email protected]>
@bedevere-bot
Copy link

GH-6129 is a backport of this pull request to the 3.6 branch.

miss-islington added a commit that referenced this pull request Mar 17, 2018
Multi-phase initialized modules allow m_traverse to be called while the
module is still being initialized, so module authors may need to account
for that.
(cherry picked from commit c2b0b12)

Co-authored-by: Marcel Plch <[email protected]>
miss-islington added a commit that referenced this pull request Mar 17, 2018
Multi-phase initialized modules allow m_traverse to be called while the
module is still being initialized, so module authors may need to account
for that.
(cherry picked from commit c2b0b12)

Co-authored-by: Marcel Plch <[email protected]>
jo2y pushed a commit to jo2y/cpython that referenced this pull request Mar 23, 2018
Multi-phase initialized modules allow m_traverse to be called while the
module is still being initialized, so module authors may need to account
for that.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants