Skip to content

[3.15] gh-151218: Replace sys.flags in PyConfig_Set() (GH-151402)#151552

Merged
vstinner merged 1 commit into
python:3.15from
miss-islington:backport-b16d23f-3.15
Jun 16, 2026
Merged

[3.15] gh-151218: Replace sys.flags in PyConfig_Set() (GH-151402)#151552
vstinner merged 1 commit into
python:3.15from
miss-islington:backport-b16d23f-3.15

Conversation

@miss-islington

@miss-islington miss-islington commented Jun 16, 2026

Copy link
Copy Markdown
Contributor

PyConfig_Set() and sys.set_int_max_str_digits() now replace
sys.flags (create a new object), instead of modifying sys.flags in-place.

Modifying sys.flags in-place can lead to data races when multiple
threads are reading or writing sys.flags in parallel.

Use _Py_atomic functions to get and set max_str_digits members.
(cherry picked from commit b16d23f)

Co-authored-by: Victor Stinner vstinner@python.org
Co-authored-by: Bénédikt Tran 10796600+picnixz@users.noreply.github.com

PyConfig_Set() and sys.set_int_max_str_digits() now replace
sys.flags (create a new object), instead of modifying sys.flags in-place.

Modifying sys.flags in-place can lead to data races when multiple
threads are reading or writing sys.flags in parallel.

Use _Py_atomic functions to get and set max_str_digits members.
(cherry picked from commit b16d23fc9fe9cb72fa15c8a3036753e5437b5b8c)

Co-authored-by: Victor Stinner <vstinner@python.org>
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
@vstinner vstinner enabled auto-merge (squash) June 16, 2026 16:19
@vstinner vstinner merged commit ff6e973 into python:3.15 Jun 16, 2026
55 checks passed
@miss-islington miss-islington deleted the backport-b16d23f-3.15 branch June 16, 2026 16:49
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.

2 participants