Future versions of macOS won’t include scripting language runtimes by default

19 points by latexr ↗ HN
From the macOS 10.15 Beta Release Notes:

> Scripting language runtimes such as Python, Ruby, and Perl are included in macOS for compatibility with legacy software. Future versions of macOS won’t include scripting language runtimes by default, and might require you to install additional packages. If your software depends on scripting languages, it’s recommended that you bundle the runtime within the app. (49764202)

[1]: https://developer.apple.com/documentation/macos_release_notes/macos_10_15_beta_release_notes

13 comments

[ 3.5 ms ] story [ 39.8 ms ] thread
One really nice thing about Linux is that Perl, Awk, and Python are installed on most versions and I can script without thinking about it.
And that is also awful in so many other ways.
How so? Other than being when all you have are scripting languages everything looks like a nail.
From the list of 'OMG they're doing what?!' that comes up on apple, this is probably the least heinous, the runtimes they bundle are so horribly out of date no-one really depends on them being present for anything more significant than 1-2 line scripts, which could probably be rewritten in AppleScript or Bash anyway. Pretty much anything of worth always says 'First, get python from ...'
True, but it's aggrevating that Apple never bothered to do this properly themselves. Plenty of developers have macbooks and I would think it's enough market share for them to ship newer versions or at least heavily support homebrew.
Anyone I know who does serious development work never uses the default runtimes anyway. It's always best to just install RVM/rbenv, anaconda etc and configure it yourself.
You’re right, but this is a bit irritating. Whenever I’m in need of a calculator on someone’s Mac I just start python in a terminal and type in expressions to be evaluated. It was nice to be able to find it on any Mac and so much nicer than clicking on a calculator’s GUI buttons.

I can use the bc command instead (it’s an old Unix command) but it’s far less handy. See it’s man page.

There’s also dc, the even less used reverse Polish notation calculator. It is a standard Unix command that predates bc.

The dc “language” is older than the C, Awk, Perl, or any other programming language still found on Unix systems. It is written in C’s predecessor, the language B.

You can tell that bc and dc are early Unix commands from their names, just two characters long.

Spotlight search is pretty neat as a calculator. Command-Space then type your expression.
Anyone every use a little package manager called Homebrew? It is completely dependent on the system ruby runtime.
Only the installation is. Homebrew uses its own Ruby now.
As near as I can tell, only if it's a default install. In my `brew config` it always defaults to: ... Homebrew Ruby: 2.3.7 => /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/ruby
Annoyingly, Homebrew installation (one of the best ways to get these scripting languages installed) assumes you already have Ruby installed. I wonder if they’ll finally rewrite the install script in pure Bash.
I think this is a great idea, security-wise. I prefer my installations to have as few attack vectors as possible. So having as few things enabled/installed by default is awesome.