GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — gh-118761: Improve import time of `subprocess` by hukkin · Pull Request #129427 · python/cpython

Conversation

@hukkin

@hukkin hukkin commented Jan 29, 2025 •
edited by bedevere-app Bot
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Contributor

This makes import subprocess lazy import locale and signal. As a result, also re (imported by locale) and enum (imported by signal) imports are skipped.

Benchmark import time

main branch

$ hyperfine --warmup 11 "./python -c 'import subprocess'" "./python -c 'pass'"
Benchmark 1: ./python -c 'import subprocess'
  Time (mean ± σ):      24.6 ms ±   0.9 ms    [User: 20.8 ms, System: 4.0 ms]
  Range (min … max):    23.5 ms …  28.0 ms    108 runs
 
Benchmark 2: ./python -c 'pass'
  Time (mean ± σ):      10.8 ms ±   0.6 ms    [User: 8.9 ms, System: 2.3 ms]
  Range (min … max):    10.1 ms …  14.2 ms    190 runs
 
Summary
  './python -c 'pass'' ran
    2.28 ± 0.16 times faster than './python -c 'import subprocess''

PR branch

$ hyperfine --warmup 11 "./python -c 'import subprocess'" "./python -c 'pass'"
Benchmark 1: ./python -c 'import subprocess'
  Time (mean ± σ):      18.7 ms ±   0.8 ms    [User: 16.1 ms, System: 3.2 ms]
  Range (min … max):    17.6 ms …  21.7 ms    139 runs
 
Benchmark 2: ./python -c 'pass'
  Time (mean ± σ):      10.4 ms ±   0.5 ms    [User: 9.4 ms, System: 1.8 ms]
  Range (min … max):     9.7 ms …  12.9 ms    226 runs
 
Summary
  './python -c 'pass'' ran
    1.80 ± 0.11 times faster than './python -c 'import subprocess''

Benchmark subprocess.run call

In fact, this not only has an effect on import time, but simple subprocess.run calls, too:

main branch

$ hyperfine --warmup 11 "./python -c 'import subprocess; subprocess.run([\"sleep\", \"0\"])'" "./python -c 'pass'"
Benchmark 1: ./python -c 'import subprocess; subprocess.run(["sleep", "0"])'
  Time (mean ± σ):      26.7 ms ±   1.1 ms    [User: 23.4 ms, System: 3.4 ms]
  Range (min … max):    25.5 ms …  31.7 ms    103 runs
 
Benchmark 2: ./python -c 'pass'
  Time (mean ± σ):      11.7 ms ±   0.8 ms    [User: 9.5 ms, System: 2.4 ms]
  Range (min … max):    10.9 ms …  15.4 ms    235 runs
 
Summary
  './python -c 'pass'' ran
    2.28 ± 0.18 times faster than './python -c 'import subprocess; subprocess.run(["sleep", "0"])''

PR branch

$ hyperfine --warmup 11 "./python -c 'import subprocess; subprocess.run([\"sleep\", \"0\"])'" "./python -c 'pass'"
Benchmark 1: ./python -c 'import subprocess; subprocess.run(["sleep", "0"])'
  Time (mean ± σ):      22.0 ms ±   1.3 ms    [User: 18.1 ms, System: 3.9 ms]
  Range (min … max):    20.3 ms …  27.2 ms    119 runs
 
Benchmark 2: ./python -c 'pass'
  Time (mean ± σ):      12.0 ms ±   0.4 ms    [User: 9.8 ms, System: 2.3 ms]
  Range (min … max):    11.5 ms …  13.6 ms    224 runs
 
Summary
  './python -c 'pass'' ran
    1.84 ± 0.12 times faster than './python -c 'import subprocess; subprocess.run(["sleep", "0"])''
  • Issue: Improve import time of various stdlib modules #118761

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
hukkin added 2 commits January 29, 2025 10:33
@hukkin
subprocess: lazy import signal and locale to improve module import time
f3bf08f
@hukkin
Add NEWS
95a80f8
@hukkin
hukkin requested a review from gpshead as a code owner January 29, 2025 09:07
@bedevere-app bedevere-app Bot added the awaiting review label Jan 29, 2025
@bedevere-app bedevere-app Bot mentioned this pull request Jan 29, 2025
Improve import time of various stdlib modules #118761
Closed
AA-Turner
AA-Turner approved these changes Jan 29, 2025
View reviewed changes
@bedevere-app bedevere-app Bot added awaiting merge and removed awaiting review labels Jan 29, 2025
gpshead
gpshead approved these changes Jan 29, 2025
View reviewed changes

@gpshead gpshead left a comment

Copy link
Copy Markdown
Member

There was a problem hiding this comment.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thanks for including the comments in the code as to why. as much as a dislike it from a style perspective, this is the right way to get faster import times in Python today.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

hukkin reacted with thumbs up emoji
All reactions
  • 👍 1 reaction
@gpshead gpshead added needs backport to 3.12 only security fixes needs backport to 3.13 only security fixes labels Jan 29, 2025
@gpshead
gpshead merged commit 49f2465 into python:main Jan 29, 2025
@miss-islington-app

miss-islington-app Bot commented Jan 29, 2025

Copy link
Copy Markdown

Thanks @hukkin for the PR, and @gpshead for merging it 🌮🎉.. I'm working now to backport this PR to: 3.12, 3.13.
🐍🍒⛏🤖

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@bedevere-app bedevere-app Bot removed the awaiting merge label Jan 29, 2025
miss-islington pushed a commit to miss-islington/cpython that referenced this pull request Jan 29, 2025
@hukkin @miss-islington
pythongh-118761: Improve import time of subprocess (pythonGH-129427)
62140f7
* subprocess: lazy import signal and locale to improve module import time
(cherry picked from commit 49f2465)

Co-authored-by: Taneli Hukkinen <[email protected]>
@bedevere-app

bedevere-app Bot commented Jan 29, 2025

Copy link
Copy Markdown

GH-129447 is a backport of this pull request to the 3.13 branch.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@bedevere-app bedevere-app Bot removed the needs backport to 3.13 only security fixes label Jan 29, 2025
miss-islington pushed a commit to miss-islington/cpython that referenced this pull request Jan 29, 2025
@hukkin @miss-islington
pythongh-118761: Improve import time of subprocess (pythonGH-129427)
202ee4c
* subprocess: lazy import signal and locale to improve module import time
(cherry picked from commit 49f2465)

Co-authored-by: Taneli Hukkinen <[email protected]>
@bedevere-app

bedevere-app Bot commented Jan 29, 2025

Copy link
Copy Markdown

GH-129448 is a backport of this pull request to the 3.12 branch.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@bedevere-app bedevere-app Bot removed the needs backport to 3.12 only security fixes label Jan 29, 2025
@hukkin
hukkin deleted the subprocess-importtime branch January 29, 2025 16:45
gpshead pushed a commit that referenced this pull request Jan 29, 2025
@miss-islington @hukkin
[3.12] gh-118761: Improve import time of subprocess (GH-129427) (#1…
f65aa0d
…29448)

gh-118761: Improve import time of `subprocess` (GH-129427)

* subprocess: lazy import signal and locale to improve module import time
(cherry picked from commit 49f2465)

Co-authored-by: Taneli Hukkinen <[email protected]>
@bedevere-bot

bedevere-bot commented Jan 29, 2025

Copy link
Copy Markdown

⚠️⚠️⚠️ Buildbot failure ⚠️⚠️⚠️

Hi! The buildbot iOS ARM64 Simulator 3.x has failed when building commit 49f2465.

What do you need to do:

  1. Don't panic.
  2. Check the buildbot page in the devguide if you don't know what the buildbots are or how they work.
  3. Go to the page of the buildbot that failed (https://buildbot.python.org/#/builders/1380/builds/2481) and take a look at the build logs.
  4. Check if the failure is related to this commit (49f2465) or if it is a false positive.
  5. If the failure is related to this commit, please, reflect that on the issue and make a new Pull Request with a fix.

You can take a look at the buildbot page here:

https://buildbot.python.org/#/builders/1380/builds/2481

Summary of the results of the build (if available):

==

Click to see traceback logs
Traceback (most recent call last):
  File "/Users/buildbot/Library/Developer/XCTestDevices/97D3A17A-DA4C-4604-9518-E15ACEF024F7/data/Containers/Bundle/Application/8DBA6A7C-D7C1-4CFB-8A88-E61850C12AD4/iOSTestbed.app/python/lib/python3.14/threading.py", line 1054, in _bootstrap_inner
    self.run()
    ~~~~~~~~^^
  File "/Users/buildbot/Library/Developer/XCTestDevices/97D3A17A-DA4C-4604-9518-E15ACEF024F7/data/Containers/Bundle/Application/8DBA6A7C-D7C1-4CFB-8A88-E61850C12AD4/iOSTestbed.app/python/lib/python3.14/threading.py", line 996, in run
    self._target(*self._args, **self._kwargs)
    ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/buildbot/Library/Developer/XCTestDevices/97D3A17A-DA4C-4604-9518-E15ACEF024F7/data/Containers/Bundle/Application/8DBA6A7C-D7C1-4CFB-8A88-E61850C12AD4/iOSTestbed.app/python/lib/python3.14/test/test_interpreters/test_stress.py", line 47, in run
    interp = interpreters.create()
  File "/Users/buildbot/Library/Developer/XCTestDevices/97D3A17A-DA4C-4604-9518-E15ACEF024F7/data/Containers/Bundle/Application/8DBA6A7C-D7C1-4CFB-8A88-E61850C12AD4/iOSTestbed.app/python/lib/python3.14/test/support/interpreters/__init__.py", line 76, in create
    id = _interpreters.create(reqrefs=True)
interpreters.InterpreterError: interpreter creation failed
k


Traceback (most recent call last):
  File "/Users/buildbot/Library/Developer/XCTestDevices/97D3A17A-DA4C-4604-9518-E15ACEF024F7/data/Containers/Bundle/Application/8DBA6A7C-D7C1-4CFB-8A88-E61850C12AD4/iOSTestbed.app/python/lib/python3.14/threading.py", line 1054, in _bootstrap_inner
    self.run()
    ~~~~~~~~^^
  File "/Users/buildbot/Library/Developer/XCTestDevices/97D3A17A-DA4C-4604-9518-E15ACEF024F7/data/Containers/Bundle/Application/8DBA6A7C-D7C1-4CFB-8A88-E61850C12AD4/iOSTestbed.app/python/lib/python3.14/threading.py", line 996, in run
    self._target(*self._args, **self._kwargs)
    ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/buildbot/Library/Developer/XCTestDevices/97D3A17A-DA4C-4604-9518-E15ACEF024F7/data/Containers/Bundle/Application/8DBA6A7C-D7C1-4CFB-8A88-E61850C12AD4/iOSTestbed.app/python/lib/python3.14/test/test_interpreters/test_stress.py", line 30, in task
    interp = interpreters.create()
  File "/Users/buildbot/Library/Developer/XCTestDevices/97D3A17A-DA4C-4604-9518-E15ACEF024F7/data/Containers/Bundle/Application/8DBA6A7C-D7C1-4CFB-8A88-E61850C12AD4/iOSTestbed.app/python/lib/python3.14/test/support/interpreters/__init__.py", line 76, in create
    id = _interpreters.create(reqrefs=True)
interpreters.InterpreterError: interpreter creation failed
k
All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

gpshead pushed a commit that referenced this pull request Jan 29, 2025
@miss-islington @hukkin
[3.13] gh-118761: Improve import time of subprocess (GH-129427) (#1…
f502c8f
…29447)

gh-118761: Improve import time of `subprocess` (GH-129427)

* subprocess: lazy import signal and locale to improve module import time
(cherry picked from commit 49f2465)

Co-authored-by: Taneli Hukkinen <[email protected]>
@bedevere-bot

bedevere-bot commented Jan 29, 2025

Copy link
Copy Markdown

⚠️⚠️⚠️ Buildbot failure ⚠️⚠️⚠️

Hi! The buildbot x86-64 MacOS Intel ASAN NoGIL 3.x has failed when building commit 49f2465.

What do you need to do:

  1. Don't panic.
  2. Check the buildbot page in the devguide if you don't know what the buildbots are or how they work.
  3. Go to the page of the buildbot that failed (https://buildbot.python.org/#/builders/1366/builds/3167) and take a look at the build logs.
  4. Check if the failure is related to this commit (49f2465) or if it is a false positive.
  5. If the failure is related to this commit, please, reflect that on the issue and make a new Pull Request with a fix.

You can take a look at the buildbot page here:

https://buildbot.python.org/#/builders/1366/builds/3167

Failed tests:

  • test_external_inspection

Summary of the results of the build (if available):

==

Click to see traceback logs
remote: Enumerating objects: 16, done.        
remote: Counting objects:   6% (1/16)        
remote: Counting objects:  12% (2/16)        
remote: Counting objects:  18% (3/16)        
remote: Counting objects:  25% (4/16)        
remote: Counting objects:  31% (5/16)        
remote: Counting objects:  37% (6/16)        
remote: Counting objects:  43% (7/16)        
remote: Counting objects:  50% (8/16)        
remote: Counting objects:  56% (9/16)        
remote: Counting objects:  62% (10/16)        
remote: Counting objects:  68% (11/16)        
remote: Counting objects:  75% (12/16)        
remote: Counting objects:  81% (13/16)        
remote: Counting objects:  87% (14/16)        
remote: Counting objects:  93% (15/16)        
remote: Counting objects: 100% (16/16)        
remote: Counting objects: 100% (16/16), done.        
remote: Compressing objects:  11% (1/9)        
remote: Compressing objects:  22% (2/9)        
remote: Compressing objects:  33% (3/9)        
remote: Compressing objects:  44% (4/9)        
remote: Compressing objects:  55% (5/9)        
remote: Compressing objects:  66% (6/9)        
remote: Compressing objects:  77% (7/9)        
remote: Compressing objects:  88% (8/9)        
remote: Compressing objects: 100% (9/9)        
remote: Compressing objects: 100% (9/9), done.        
remote: Total 9 (delta 7), reused 1 (delta 0), pack-reused 0 (from 0)        
From https://github.com/python/cpython
 * branch                    main       -> FETCH_HEAD
Note: switching to '49f24650e4541456872490ec2b59d6d186204891'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by switching back to a branch.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -c with the switch command. Example:

  git switch -c <new-branch-name>

Or undo this operation with:

  git switch -

Turn off this advice by setting config variable advice.detachedHead to false

HEAD is now at 49f24650e45 gh-118761: Improve import time of `subprocess` (GH-129427)
Switched to and reset branch 'main'

Parser/string_parser.c:146:17: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                sprintf(p, "\\U%08x", chr);
                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
1 warning generated.
Objects/bytesobject.c:290:17: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                sprintf(buffer, "%ld", va_arg(vargs, long));
                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/bytesobject.c:293:17: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                sprintf(buffer, "%zd", va_arg(vargs, Py_ssize_t));
                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/bytesobject.c:296:17: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                sprintf(buffer, "%d", va_arg(vargs, int));
                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/bytesobject.c:304:17: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                sprintf(buffer, "%lu", va_arg(vargs, unsigned long));
                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/bytesobject.c:307:17: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                sprintf(buffer, "%zu", va_arg(vargs, size_t));
                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/bytesobject.c:310:17: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                sprintf(buffer, "%u", va_arg(vargs, unsigned int));
                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/bytesobject.c:317:13: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            sprintf(buffer, "%i", va_arg(vargs, int));
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/bytesobject.c:323:13: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            sprintf(buffer, "%x", va_arg(vargs, int));
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/bytesobject.c:349:13: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            sprintf(buffer, "%p", va_arg(vargs, void*));
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
9 warnings generated.
Objects/typeobject.c:6328:9: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
        sprintf(msg, "type_traverse() called on non-heap type '%.100s'",
        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:946:16: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
        size = sprintf(str, "&#%d;", PyUnicode_READ(kind, data, i));
               ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2931:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            case F_LONG:     DO_SPRINTS("l", long, unsigned long); break;
                             ^
Objects/unicodeobject.c:2922:33: note: expanded from macro 'DO_SPRINTS'
                case 'o': len = SPRINT(SIZE_SPEC, "o", UNSIGNED_TYPE); break; \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2931:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            case F_LONG:     DO_SPRINTS("l", long, unsigned long); break;
                             ^
Objects/unicodeobject.c:2923:33: note: expanded from macro 'DO_SPRINTS'
                case 'u': len = SPRINT(SIZE_SPEC, "u", UNSIGNED_TYPE); break; \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2931:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            case F_LONG:     DO_SPRINTS("l", long, unsigned long); break;
                             ^
Objects/unicodeobject.c:2924:33: note: expanded from macro 'DO_SPRINTS'
                case 'x': len = SPRINT(SIZE_SPEC, "x", UNSIGNED_TYPE); break; \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2931:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            case F_LONG:     DO_SPRINTS("l", long, unsigned long); break;
                             ^
Objects/unicodeobject.c:2925:33: note: expanded from macro 'DO_SPRINTS'
                case 'X': len = SPRINT(SIZE_SPEC, "X", UNSIGNED_TYPE); break; \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2931:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            case F_LONG:     DO_SPRINTS("l", long, unsigned long); break;
                             ^
Objects/unicodeobject.c:2926:33: note: expanded from macro 'DO_SPRINTS'
                default:  len = SPRINT(SIZE_SPEC, "d", SIGNED_TYPE); break;   \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2932:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            case F_LONGLONG: DO_SPRINTS("ll", long long, unsigned long long); break;
                             ^
Objects/unicodeobject.c:2922:33: note: expanded from macro 'DO_SPRINTS'
                case 'o': len = SPRINT(SIZE_SPEC, "o", UNSIGNED_TYPE); break; \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2932:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            case F_LONGLONG: DO_SPRINTS("ll", long long, unsigned long long); break;
                             ^
Objects/unicodeobject.c:2923:33: note: expanded from macro 'DO_SPRINTS'
                case 'u': len = SPRINT(SIZE_SPEC, "u", UNSIGNED_TYPE); break; \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2932:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            case F_LONGLONG: DO_SPRINTS("ll", long long, unsigned long long); break;
                             ^
Objects/unicodeobject.c:2924:33: note: expanded from macro 'DO_SPRINTS'
                case 'x': len = SPRINT(SIZE_SPEC, "x", UNSIGNED_TYPE); break; \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2932:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            case F_LONGLONG: DO_SPRINTS("ll", long long, unsigned long long); break;
                             ^
Objects/unicodeobject.c:2925:33: note: expanded from macro 'DO_SPRINTS'
                case 'X': len = SPRINT(SIZE_SPEC, "X", UNSIGNED_TYPE); break; \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2932:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            case F_LONGLONG: DO_SPRINTS("ll", long long, unsigned long long); break;
                             ^
Objects/unicodeobject.c:2926:33: note: expanded from macro 'DO_SPRINTS'
                default:  len = SPRINT(SIZE_SPEC, "d", SIGNED_TYPE); break;   \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2933:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            case F_SIZE:     DO_SPRINTS("z", Py_ssize_t, size_t); break;
                             ^
Objects/unicodeobject.c:2922:33: note: expanded from macro 'DO_SPRINTS'
                case 'o': len = SPRINT(SIZE_SPEC, "o", UNSIGNED_TYPE); break; \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2933:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            case F_SIZE:     DO_SPRINTS("z", Py_ssize_t, size_t); break;
                             ^
Objects/unicodeobject.c:2923:33: note: expanded from macro 'DO_SPRINTS'
                case 'u': len = SPRINT(SIZE_SPEC, "u", UNSIGNED_TYPE); break; \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2933:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            case F_SIZE:     DO_SPRINTS("z", Py_ssize_t, size_t); break;
                             ^
Objects/unicodeobject.c:2924:33: note: expanded from macro 'DO_SPRINTS'
                case 'x': len = SPRINT(SIZE_SPEC, "x", UNSIGNED_TYPE); break; \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2933:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            case F_SIZE:     DO_SPRINTS("z", Py_ssize_t, size_t); break;
                             ^
Objects/unicodeobject.c:2925:33: note: expanded from macro 'DO_SPRINTS'
                case 'X': len = SPRINT(SIZE_SPEC, "X", UNSIGNED_TYPE); break; \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2933:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            case F_SIZE:     DO_SPRINTS("z", Py_ssize_t, size_t); break;
                             ^
Objects/unicodeobject.c:2926:33: note: expanded from macro 'DO_SPRINTS'
                default:  len = SPRINT(SIZE_SPEC, "d", SIGNED_TYPE); break;   \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2934:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            case F_PTRDIFF:  DO_SPRINTS("t", ptrdiff_t, ptrdiff_t); break;
                             ^
Objects/unicodeobject.c:2922:33: note: expanded from macro 'DO_SPRINTS'
                case 'o': len = SPRINT(SIZE_SPEC, "o", UNSIGNED_TYPE); break; \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2934:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            case F_PTRDIFF:  DO_SPRINTS("t", ptrdiff_t, ptrdiff_t); break;
                             ^
Objects/unicodeobject.c:2923:33: note: expanded from macro 'DO_SPRINTS'
                case 'u': len = SPRINT(SIZE_SPEC, "u", UNSIGNED_TYPE); break; \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2934:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            case F_PTRDIFF:  DO_SPRINTS("t", ptrdiff_t, ptrdiff_t); break;
                             ^
Objects/unicodeobject.c:2924:33: note: expanded from macro 'DO_SPRINTS'
                case 'x': len = SPRINT(SIZE_SPEC, "x", UNSIGNED_TYPE); break; \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2934:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            case F_PTRDIFF:  DO_SPRINTS("t", ptrdiff_t, ptrdiff_t); break;
                             ^
Objects/unicodeobject.c:2925:33: note: expanded from macro 'DO_SPRINTS'
                case 'X': len = SPRINT(SIZE_SPEC, "X", UNSIGNED_TYPE); break; \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2934:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            case F_PTRDIFF:  DO_SPRINTS("t", ptrdiff_t, ptrdiff_t); break;
                             ^
Objects/unicodeobject.c:2926:33: note: expanded from macro 'DO_SPRINTS'
                default:  len = SPRINT(SIZE_SPEC, "d", SIGNED_TYPE); break;   \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2935:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            case F_INTMAX:   DO_SPRINTS("j", intmax_t, uintmax_t); break;
                             ^
Objects/unicodeobject.c:2922:33: note: expanded from macro 'DO_SPRINTS'
                case 'o': len = SPRINT(SIZE_SPEC, "o", UNSIGNED_TYPE); break; \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2935:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            case F_INTMAX:   DO_SPRINTS("j", intmax_t, uintmax_t); break;
                             ^
Objects/unicodeobject.c:2923:33: note: expanded from macro 'DO_SPRINTS'
                case 'u': len = SPRINT(SIZE_SPEC, "u", UNSIGNED_TYPE); break; \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2935:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            case F_INTMAX:   DO_SPRINTS("j", intmax_t, uintmax_t); break;
                             ^
Objects/unicodeobject.c:2924:33: note: expanded from macro 'DO_SPRINTS'
                case 'x': len = SPRINT(SIZE_SPEC, "x", UNSIGNED_TYPE); break; \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2935:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            case F_INTMAX:   DO_SPRINTS("j", intmax_t, uintmax_t); break;
                             ^
Objects/unicodeobject.c:2925:33: note: expanded from macro 'DO_SPRINTS'
                case 'X': len = SPRINT(SIZE_SPEC, "X", UNSIGNED_TYPE); break; \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2935:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            case F_INTMAX:   DO_SPRINTS("j", intmax_t, uintmax_t); break;
                             ^
Objects/unicodeobject.c:2926:33: note: expanded from macro 'DO_SPRINTS'
                default:  len = SPRINT(SIZE_SPEC, "d", SIGNED_TYPE); break;   \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2936:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            default:         DO_SPRINTS("", int, unsigned int); break;
                             ^
Objects/unicodeobject.c:2922:33: note: expanded from macro 'DO_SPRINTS'
                case 'o': len = SPRINT(SIZE_SPEC, "o", UNSIGNED_TYPE); break; \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2936:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            default:         DO_SPRINTS("", int, unsigned int); break;
                             ^
Objects/unicodeobject.c:2923:33: note: expanded from macro 'DO_SPRINTS'
                case 'u': len = SPRINT(SIZE_SPEC, "u", UNSIGNED_TYPE); break; \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2936:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            default:         DO_SPRINTS("", int, unsigned int); break;
                             ^
Objects/unicodeobject.c:2924:33: note: expanded from macro 'DO_SPRINTS'
                case 'x': len = SPRINT(SIZE_SPEC, "x", UNSIGNED_TYPE); break; \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2936:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            default:         DO_SPRINTS("", int, unsigned int); break;
                             ^
Objects/unicodeobject.c:2925:33: note: expanded from macro 'DO_SPRINTS'
                case 'X': len = SPRINT(SIZE_SPEC, "X", UNSIGNED_TYPE); break; \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2936:30: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            default:         DO_SPRINTS("", int, unsigned int); break;
                             ^
Objects/unicodeobject.c:2926:33: note: expanded from macro 'DO_SPRINTS'
                default:  len = SPRINT(SIZE_SPEC, "d", SIGNED_TYPE); break;   \
                                ^
Objects/unicodeobject.c:2917:13: note: expanded from macro 'SPRINT'
            sprintf(buffer, "%" SIZE_SPEC FMT_CHAR, va_arg(*vargs, TYPE))
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:2990:15: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
        len = sprintf(number, "%p", va_arg(*vargs, void*));
              ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Objects/unicodeobject.c:9018:13: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            sprintf(buffer, "&#%d;", (int)PyUnicode_READ_CHAR(unicode, collpos));
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
Python/ceval_gil.c:81:24: warning: code will never be executed [-Wunreachable-code]
    int32_t npending = _Py_atomic_load_int32_relaxed(
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
1 warning generated.
Python/pystrtod.c:1204:19: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
        exp_len = sprintf(p, "%+.02d", exp);
                  ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
1 warning generated.
Programs/_freeze_module.c:116:5: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
    sprintf(filename, "<frozen %s>", name);
    ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
1 warning generated.
33 warnings generated.
./Modules/_pickle.c:2145:13: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
            sprintf(pdata, "%c%ld\n", INT,  val);
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
./Modules/_datetimemodule.c:1812:9: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
        sprintf(freplacement, "%06d", TIME_GET_MICROSECOND(object));
        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
./Modules/_datetimemodule.c:1814:9: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
        sprintf(freplacement, "%06d", DATE_GET_MICROSECOND(object));
        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
./Modules/_datetimemodule.c:1816:9: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
        sprintf(freplacement, "%06d", 0);
        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
3 warnings generated.
1 warning generated.
./Modules/unicodedata.c:1329:9: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
        sprintf(buffer, "CJK UNIFIED IDEOGRAPH-%X", code);
        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
./Modules/_ctypes/_ctypes.c:385:17: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                sprintf(buf, "%zd,", shape[k]);
                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
./Modules/_ctypes/_ctypes.c:387:17: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                sprintf(buf, "%zd)", shape[k]);
                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
./Modules/_ctypes/_ctypes.c:2813:11: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
    cp += sprintf(cp, "%x", Py_SAFE_DOWNCAST(index, Py_ssize_t, int));
          ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
./Modules/_ctypes/_ctypes.c:2822:15: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
        cp += sprintf(cp, ":%x", Py_SAFE_DOWNCAST(target->b_index, Py_ssize_t, int));
              ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
./Modules/_ctypes/_ctypes.c:5137:5: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
    sprintf(name, "%.200s_Array_%ld",
    ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
1 warning generated.
In file included from ./Modules/tkappinit.c:17:
In file included from /usr/local/Cellar/tcl-tk/8.6.13_5/include/tcl-tk/tk.h:99:
/usr/local/Cellar/tcl-tk/8.6.13_5/include/tcl-tk/X11/Xlib.h:131:21: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]
        int (*free_private)();  /* called to free private storage */
                           ^
                            void
/usr/local/Cellar/tcl-tk/8.6.13_5/include/tcl-tk/X11/Xlib.h:334:33: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]
        struct _XImage *(*create_image)();
                                       ^
                                        void
/usr/local/Cellar/tcl-tk/8.6.13_5/include/tcl-tk/X11/Xlib.h:453:23: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]
        XID (*resource_alloc)(); /* allocator function */
                             ^
                              void
/usr/local/Cellar/tcl-tk/8.6.13_5/include/tcl-tk/X11/Xlib.h:471:20: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]
        int (*synchandler)();   /* Synchronization handler */
                          ^
                           void
/usr/local/Cellar/tcl-tk/8.6.13_5/include/tcl-tk/X11/Xlib.h:496:24: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]
        Bool (*event_vec[128])();  /* vector for wire to event */
                              ^
                               void
/usr/local/Cellar/tcl-tk/8.6.13_5/include/tcl-tk/X11/Xlib.h:497:25: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]
        Status (*wire_vec[128])(); /* vector for event to wire */
                               ^
                                void
/usr/local/Cellar/tcl-tk/8.6.13_5/include/tcl-tk/X11/Xlib.h:509:20: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]
        Bool (**error_vec)();      /* vector for wire to error */
                          ^
                           void
/usr/local/Cellar/tcl-tk/8.6.13_5/include/tcl-tk/X11/Xlib.h:522:25: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]
        int (*savedsynchandler)(); /* user synchandler when Xlib usurps */
                               ^
                                void
/usr/local/Cellar/tcl-tk/8.6.13_5/include/tcl-tk/X11/Xlib.h:1053:24: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]
typedef void (*XIMProc)();
                       ^
                        void
9 warnings generated.
In file included from ./Modules/_tkinter.c:52:
In file included from /usr/local/Cellar/tcl-tk/8.6.13_5/include/tcl-tk/tk.h:99:
/usr/local/Cellar/tcl-tk/8.6.13_5/include/tcl-tk/X11/Xlib.h:131:21: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]
        int (*free_private)();  /* called to free private storage */
                           ^
                            void
/usr/local/Cellar/tcl-tk/8.6.13_5/include/tcl-tk/X11/Xlib.h:334:33: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]
        struct _XImage *(*create_image)();
                                       ^
                                        void
/usr/local/Cellar/tcl-tk/8.6.13_5/include/tcl-tk/X11/Xlib.h:453:23: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]
        XID (*resource_alloc)(); /* allocator function */
                             ^
                              void
/usr/local/Cellar/tcl-tk/8.6.13_5/include/tcl-tk/X11/Xlib.h:471:20: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]
        int (*synchandler)();   /* Synchronization handler */
                          ^
                           void
/usr/local/Cellar/tcl-tk/8.6.13_5/include/tcl-tk/X11/Xlib.h:496:24: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]
        Bool (*event_vec[128])();  /* vector for wire to event */
                              ^
                               void
/usr/local/Cellar/tcl-tk/8.6.13_5/include/tcl-tk/X11/Xlib.h:497:25: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]
        Status (*wire_vec[128])(); /* vector for event to wire */
                               ^
                                void
/usr/local/Cellar/tcl-tk/8.6.13_5/include/tcl-tk/X11/Xlib.h:509:20: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]
        Bool (**error_vec)();      /* vector for wire to error */
                          ^
                           void
/usr/local/Cellar/tcl-tk/8.6.13_5/include/tcl-tk/X11/Xlib.h:522:25: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]
        int (*savedsynchandler)(); /* user synchandler when Xlib usurps */
                               ^
                                void
/usr/local/Cellar/tcl-tk/8.6.13_5/include/tcl-tk/X11/Xlib.h:1053:24: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]
typedef void (*XIMProc)();
                       ^
                        void
./Modules/_testcapimodule.c:1059:17: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                FAIL("PyCapsule_GetPointer returned NULL unexpectedly!");
                ^
./Modules/_testcapimodule.c:1048:13: note: expanded from macro 'FAIL'
            sprintf(buffer, "%s module: \"%s\" attribute: \"%s\"", \
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
./Modules/_testcapimodule.c:1071:17: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                FAIL("PyCapsule_GetPointer should have failed but did not!");
                ^
./Modules/_testcapimodule.c:1048:13: note: expanded from macro 'FAIL'
            sprintf(buffer, "%s module: \"%s\" attribute: \"%s\"", \
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
./Modules/_testcapimodule.c:1078:21: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                    FAIL("PyCapsule_GetPointer should not have"
                    ^
./Modules/_testcapimodule.c:1048:13: note: expanded from macro 'FAIL'
            sprintf(buffer, "%s module: \"%s\" attribute: \"%s\"", \
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
./Modules/_testcapimodule.c:1081:21: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                    FAIL("PyCapsule_GetPointer should have"
                    ^
./Modules/_testcapimodule.c:1048:13: note: expanded from macro 'FAIL'
            sprintf(buffer, "%s module: \"%s\" attribute: \"%s\"", \
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
5 warnings generated.
9 warnings generated.
4 warnings generated.
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'ld: warning: ld: warning: directory not found for option '-L/opt/homebrew/lib'directory not found for option '-L/opt/homebrew/lib'


ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: directory not found for option '-L/opt/homebrew/lib'
ld: warning: ld: warning: directory not found for option '-L/opt/homebrew/lib'directory not found for option '-L/opt/homebrew/lib'


make: *** [buildbottest] Error 2
All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@freakboy3742

freakboy3742 commented Jan 29, 2025

Copy link
Copy Markdown
Contributor

The iOS test failure is weird - yes, it failed in a stress test... but it then passed on a re-run. Not sure why it's reported as a fail (and a fail without identifying the failing test...)

It doesn't look like a problem though.

gpshead reacted with thumbs up emoji
All reactions
  • 👍 1 reaction

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

srinivasreddy pushed a commit to srinivasreddy/cpython that referenced this pull request Feb 7, 2025
@hukkin @srinivasreddy
pythongh-118761: Improve import time of subprocess (pythonGH-129427)
2254ba5
* subprocess: lazy import signal and locale to improve module import time
@ziyao233 ziyao233 mentioned this pull request Feb 16, 2025
AutoInterrupt is broken with Python 3.12.9 gitpython-developers/GitPython#2003
Closed
gpshead added a commit to gpshead/cpython that referenced this pull request Feb 16, 2025
@gpshead
Revert "pythongh-118761: Improve import time of subprocess (pythonG…
030d357
…H-129427)"

This reverts commit 49f2465.

This caused bugs in the `__del__` finalizer:
 python#118761 (comment)
gpshead added a commit that referenced this pull request Feb 16, 2025
@gpshead @picnixz
gh-118761: Revert "Improve import time of subprocess (GH-129427)" (#…
ae30646
…130201)

* Revert "gh-118761: Improve import time of `subprocess` (GH-129427)"

This reverts commit 49f2465.
Also known as f502c8f in 3.13 (PR #129447)
Also known as f65aa0d in 3.12 (PR #129448)

This caused bugs in the `__del__` finalizer:
 #118761 (comment)

---------

Co-authored-by: Bénédikt Tran <[email protected]>
miss-islington pushed a commit to miss-islington/cpython that referenced this pull request Feb 16, 2025
@gpshead @picnixz @miss-islington
pythongh-118761: Revert "Improve import time of subprocess (pythonG…
c1e1e1d
…H-129427)" (pythonGH-130201)

* Revert "pythongh-118761: Improve import time of `subprocess` (pythonGH-129427)"

This reverts commit 49f2465.
Also known as f502c8f in 3.13 (PR pythonGH-129447)
Also known as f65aa0d in 3.12 (PR pythonGH-129448)

This caused bugs in the `__del__` finalizer:
 python#118761 (comment)

---------
(cherry picked from commit ae30646)

Co-authored-by: Gregory P. Smith <[email protected]>
Co-authored-by: Bénédikt Tran <[email protected]>
@miss-islington miss-islington mentioned this pull request Feb 16, 2025
[3.13] gh-118761: Revert "Improve import time of subprocess (GH-129427)" (GH-130201) #130204
Merged
miss-islington pushed a commit to miss-islington/cpython that referenced this pull request Feb 16, 2025
@gpshead @picnixz @miss-islington
pythongh-118761: Revert "Improve import time of subprocess (pythonG…
7147657
…H-129427)" (pythonGH-130201)

* Revert "pythongh-118761: Improve import time of `subprocess` (pythonGH-129427)"

This reverts commit 49f2465.
Also known as f502c8f in 3.13 (PR pythonGH-129447)
Also known as f65aa0d in 3.12 (PR pythonGH-129448)

This caused bugs in the `__del__` finalizer:
 python#118761 (comment)

---------
(cherry picked from commit ae30646)

Co-authored-by: Gregory P. Smith <[email protected]>
Co-authored-by: Bénédikt Tran <[email protected]>
@miss-islington miss-islington mentioned this pull request Feb 16, 2025
[3.12] gh-118761: Revert "Improve import time of subprocess (GH-129427)" (GH-130201) #130205
Merged
gpshead added a commit that referenced this pull request Feb 16, 2025
@miss-islington @gpshead @picnixz
[3.12] gh-118761: Revert "Improve import time of subprocess (GH-129427
042b492
)" (GH-130201) (#130205)

gh-118761: Revert "Improve import time of `subprocess` (GH-129427)" (GH-130201)

* Revert "gh-118761: Improve import time of `subprocess` (GH-129427)"

This reverts commit 49f2465.
Also known as f502c8f in 3.13 (PR GH-129447)
Also known as f65aa0d in 3.12 (PR GH-129448)

This caused bugs in the `__del__` finalizer:
 #118761 (comment)

---------
(cherry picked from commit ae30646)

Co-authored-by: Gregory P. Smith <[email protected]>
Co-authored-by: Bénédikt Tran <[email protected]>
gpshead added a commit that referenced this pull request Feb 16, 2025
@miss-islington @gpshead @picnixz
[3.13] gh-118761: Revert "Improve import time of subprocess (GH-129427
831695b
)" (GH-130201) (#130204)

gh-118761: Revert "Improve import time of `subprocess` (GH-129427)" (GH-130201)

* Revert "gh-118761: Improve import time of `subprocess` (GH-129427)"

This reverts commit 49f2465.
Also known as f502c8f in 3.13 (PR GH-129447)
Also known as f65aa0d in 3.12 (PR GH-129448)

This caused bugs in the `__del__` finalizer:
 #118761 (comment)

---------
(cherry picked from commit ae30646)

Co-authored-by: Gregory P. Smith <[email protected]>
Co-authored-by: Bénédikt Tran <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@gpshead gpshead gpshead approved these changes
@AA-Turner AA-Turner AA-Turner approved these changes

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Uh oh!

There was an error while loading. Please reload this page.

5 participants

@hukkin @bedevere-bot @freakboy3742 @gpshead @AA-Turner
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.