From 549e62827262264cda30455e10e315602129da72 Mon Sep 17 00:00:00 2001 From: Ned Deily Date: Mon, 3 Jan 2022 01:19:59 -0500 Subject: [PATCH] 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. --- Mac/PythonLauncher/Info.plist.in | 6 +++++- Mac/PythonLauncher/doscript.m | 2 +- .../next/macOS/2022-01-02-21-56-53.bpo-40477.W3nnM6.rst | 2 ++ 3 files changed, 8 insertions(+), 2 deletions(-) create mode 100644 Misc/NEWS.d/next/macOS/2022-01-02-21-56-53.bpo-40477.W3nnM6.rst diff --git a/Mac/PythonLauncher/Info.plist.in b/Mac/PythonLauncher/Info.plist.in index 70f215d0724..dec0a2eaf5c 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 cbb783ba3e8..f07326bce46 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 00000000000..fc953b85dcc --- /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.