Apple Finally Removing Python 2 in macOS 12.3 - MacRumors
Skip to Content

Apple Finally Removing Python 2 in macOS 12.3

Apple will no longer bundle Python 2.7 with macOS 12.3, according to developer release notes for the upcoming software update. Python 2 has not been supported since January 1, 2020 and no longer receives any bug fixes, security patches, or other changes.

macOS Monterey Python
Apple says that developers should use an alternative scripting language going forward, such as Python 3, but it's worth noting that Python 3 also does not come preinstalled on macOS. Developers can run the stub /usr/bin/python3 in Terminal, but it prompts users to install Xcode developer tools, which includes Python 3.

Apple warned that future versions of macOS would not include Python 2.7 in macOS Catalina's developer release notes back in 2019. At the time, Apple said Python 2.7 was included in macOS for compatibility with legacy software.

"If your software depends on scripting languages, it's recommended that you bundle the runtime within the app," said Apple.

Related Forum: macOS Monterey

Popular Stories

All Screen iPhone 2030 Feature Sans Text

iPhone 18 Pro: Nine Reasons Not to Upgrade This Year

Monday September 7, 2026 5:01 am PDT by
Apple is set to unveil new iPhone 18 Pro and iPhone 18 Pro Max models on Wednesday, September 9, and the devices are expected to feature a design that's largely similar to the iPhone 17 Pro models, with a peppering of enhancements inside. Major changes are not expected until next year, when Apple is expected to introduce a radically redesigned 20th-anniversary iPhone. If you're thinking of...
iPhone 18 Pro Dark Cherry Feature

iPhone 18 Pro Reportedly Starts With 256GB of Storage

Thursday September 3, 2026 9:22 am PDT by
While the iPhone 17 Pro has double the base storage compared to the iPhone 16 Pro, there will apparently be no further increase this year. Taiwanese research firm TrendForce today again reported that the iPhone 18 Pro models will start with 256GB of storage, like the iPhone 17 Pro models. Minimum storage capacities by model:iPhone 16 Pro: 128GB iPhone 17 Pro: 256GB iPhone 18 Pro...
apple watch series 12

Leak Hints at Four New Features for Apple Watch Series 12 and Ultra 4

Monday September 7, 2026 8:57 am PDT by
Ahead of the announcement of the Apple Watch Series 12 and Ultra 4 later this week, code in the watchOS 27 and iOS 27 betas points to a series of new features for the product line. The information comes from a new post from MacRumors forums member "pdfu." The findings include: New "Readiness" app: An all-new separate Watch app referred to in code as "Readiness," distinct from the...

Top Rated Comments

60 months ago

I think the warning is only displayed if you don’t have developer tools installed. Any non-developers affected should know by now and developers should be able to easily switch to a semvar friendly version.
You might want to try clicking on the link to find out what "semver" actually refers to. :)

The point is that changes like this, which break existing code, should happen at major releases, when reasonable people expect to have to do the research and deal with some disruption to their work - not snuck in with a point release alongside essential bug fixes and security updates. Adequate warning was given that it would disappear sometime but that's only so much use without giving a clue about when it would be removed, and then vanishing it overnight. Getting rid of legacy software dependencies isn't always straightforward and people need clarity about when things will be removed.
Score: 27 Votes (Like | Disagree)
60 months ago
Apple is not really working towards being semver ('https://semver.org') friendly this week. Removing Python 2.7 in a dot release and also making older cloud storage apps read-only. I don't care they do this (it's for the greater good), but they shouldn't do it in a point release, especially ones you can't skip as they contain security fixes.

Fortunately I'm not affected by any of the changes, but it's just bad business.
Score: 26 Votes (Like | Disagree)
averagenerd81 Avatar
60 months ago

Apple is not really working towards being semver ('https://semver.org') friendly this week. Removing Python 2.7 in a dot release and also making older cloud storage apps read-only. I don't care they do this (it's for the greater good), but they shouldn't do it in a point release, especially ones you can't skip as they contain security fixes.

Fortunately I'm not affected by any of the changes, but it's just bad business.
Since security updates have not been provided in two years for 2.x, it is time to get rid of it with anyone desiring it can install it on their own. I am sick of being hampered because people refuse to move on, it's two years with no updates. It's dead Jim, move on and make us more secure.
Score: 21 Votes (Like | Disagree)
ArrayDecay Avatar
60 months ago
Excellent news.
Score: 16 Votes (Like | Disagree)
60 months ago

Apple is not really working towards being semver ('https://semver.org') friendly this week.
Semver works for libraries not for consumer products. Otherwise we'd be using macOS 75.0.0 it this point.
Score: 12 Votes (Like | Disagree)
averagenerd81 Avatar
60 months ago

MacOS is becoming a bag full of hurt.o_O
I see you haven't used Windows before. Just this month I had to refrain from patching my domain controllers because the cumulative update for January sent them into a boot loop. The update to fix that is only available via manual install (it isn't advertised in WSUS or SCCM), but the patch that breaks things still is! So you have to install the broken patch and then the fix for the broken patch.

Removing a 2 year unpatched version of Python that people have been notified about repeatedly being a "bag full of hurt"? Only if you can't read the basic text when you launch python from the CLI:

[ICODE]WARNING: Python 2.7 is not recommended.
This version is included in macOS for compatibility with legacy software.
Future versions of macOS will not include Python 2.7.
Instead, it is recommended that you transition to using 'python3' from within Terminal.
[/ICODE]

So yeah, totally a "bag full of hurt" ..... totally.
Score: 10 Votes (Like | Disagree)