From: Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> Date: Mon, 3 Jan 2022 06:48:21 +0000 (-0800) Subject: bpo-40477: macOS Python Launcher app fixes for recent macOS releases (GH-30348) X-Git-Tag: v3.9.10~27 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=50da397be4f71e5c12759281446b06ce14b6a5c4;p=thirdparty%2FPython%2Fcpython.git bpo-40477: macOS Python Launcher app fixes for recent macOS releases (GH-30348) This change solves two problems encountered by users of the macOS Python Launcher app on recent macOS releases (10.14+): - The launcher app was no longer able to launch the macOS Terminal.app to run a script. - Even if Terminal.app was already launched, the launcher app was unable to send an Apple Event to Terminal.app to open and run Python with the desired .py file. (cherry picked from commit 549e62827262264cda30455e10e315602129da72) Co-authored-by: Ned Deily --- diff --git a/Mac/PythonLauncher/Info.plist.in b/Mac/PythonLauncher/Info.plist.in index 70f215d07249..dec0a2eaf5c5 100644 --- a/Mac/PythonLauncher/Info.plist.in +++ b/Mac/PythonLauncher/Info.plist.in @@ -3,7 +3,7 @@ CFBundleDevelopmentRegion - English + en CFBundleDocumentTypes @@ -39,6 +39,8 @@ CFBundleExecutable Python Launcher + NSHumanReadableCopyright + Copyright © 2001-2022 Python Software Foundation CFBundleGetInfoString %VERSION%, © 2001-2022 Python Software Foundation CFBundleIconFile @@ -61,5 +63,7 @@ MainMenu NSPrincipalClass NSApplication + NSAppleEventsUsageDescription + Python Launcher uses Apple events to launch your Python script in a Terminal window. diff --git a/Mac/PythonLauncher/doscript.m b/Mac/PythonLauncher/doscript.m index cbb783ba3e89..f07326bce46f 100644 --- a/Mac/PythonLauncher/doscript.m +++ b/Mac/PythonLauncher/doscript.m @@ -19,7 +19,7 @@ doscript(const char *command) AEDesc desc; OSStatus err; - [[NSWorkspace sharedWorkspace] launchApplication:@"/Applications/Utilities/Terminal.app/"]; + [[NSWorkspace sharedWorkspace] launchApplication:@"Terminal.app"]; // Build event err = AEBuildAppleEvent(kAECoreSuite, kAEDoScript, diff --git a/Misc/NEWS.d/next/macOS/2022-01-02-21-56-53.bpo-40477.W3nnM6.rst b/Misc/NEWS.d/next/macOS/2022-01-02-21-56-53.bpo-40477.W3nnM6.rst new file mode 100644 index 000000000000..fc953b85dcc2 --- /dev/null +++ b/Misc/NEWS.d/next/macOS/2022-01-02-21-56-53.bpo-40477.W3nnM6.rst @@ -0,0 +1,2 @@ +The Python Launcher app for macOS now properly launches scripts and, if +necessary, the Terminal app when running on recent macOS releases.