Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

[3.13] gh-120782: Update internal type cache when reloading datetime (GH-120829) #120855

Merged
merged 7 commits into from
Jul 3, 2024
Merged

Conversation

neonene
Copy link
Contributor

@neonene neonene commented Jun 21, 2024

When reloading _datetime module, the single-phase version did not invoke the PyInit__datetime function, whereas the current multi-phase version updates the static types through the module init. The outdated static type cache in the interpreter state needs to be invalidated at the end of reloading the multi-phase module.

This PR is a manual backport of a81d434, adding assert statements to the test case.
This also backports e6076d1 (gh-120180) manually.

When reloading _datetime module, the single-phase version did not invoke the PyInit__datetime function, whereas the current multi-phase version updates the static types through the module init. The outdated static type cache in the interpreter state needs to be invalidated at the end of reloading the multi-phase module.
@neonene
Copy link
Contributor Author

neonene commented Jun 21, 2024

@neonene
Copy link
Contributor Author

neonene commented Jun 22, 2024

@ericsnowcurrently I backported e6076d1 as well. (I can take back the change: 09ec032)

@kumaraditya303 kumaraditya303 merged commit 2c3aa52 into python:3.13 Jul 3, 2024
34 checks passed
@neonene
Copy link
Contributor Author

neonene commented Jul 3, 2024

Thanks.

@neonene neonene deleted the reload313 branch July 3, 2024 12:34
@freakboy3742
Copy link
Contributor

This backport appears to have broken the iOS buildbot. I’m AFK for the next week; I’ll take a look when I’m back at my desk.

@neonene
Copy link
Contributor Author

neonene commented Jul 10, 2024

This backport appears to have broken the iOS buildbot.

#121561 should be effective for fixing it.

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants