[Info-vax] macOS and scripting languages (was: Re: Is C++ good in scientific computation? Why did Fortran lose its popularity?)
Stephen Hoffman
seaohveh at hoffmanlabs.invalid
Mon Jan 25 13:47:37 EST 2021
On 2021-01-25 18:16:43 +0000, Mark Berryman said:
> It appears that Apple has decided that PHP is unsafe. You get the
> following message when invoking PHP in Big Sur:
>
> % /usr/bin/php -v
> WARNING: PHP is not recommended
> PHP is included in macOS for compatibility with legacy software.
> Future versions of macOS will not include PHP.
> PHP 7.3.24-(to be removed in future macOS) (cli) (built: Nov 23 2020
> 06:45:16) ( NTS )
> Copyright (c) 1997-2018 The PHP Group
> Zend Engine v3.3.24, Copyright (c) 1998-2018 Zend Technologies
>
> It makes me wonder if they will eventually also stop including Apache.
Apple are moving most of the scripting languages out of the base
install, and into app packages, and/or (eventually, as the removals
occur) into separately-installed dependencies.
Following quote per
https://developer.apple.com/documentation/macos-release-notes/macos-catalina-10_15-release-notes
> Scripting Language Runtimes
> Deprecations
> 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)
> Use of Python 2.7 isn’t recommended as this version is included in
> macOS for compatibility with legacy software. Future versions of macOS
> won’t include Python 2.7. Instead, it’s recommended that you run
> python3 from within Terminal. (51097165)
There are both business and technical reasons for following this path,
of course.
This offloads the scripting interpreter analogs of "DLL hell" onto each
app maintainer and from there into that app maintainer's app bundles,
and places the related dependency and update and security management
issues directly onto the app maintainer, and obviously also
incrementally increases storage usage across app bundles, and/or this
adds requirements for managing dependencies on installation as has long
happened for folks doing (for instance) command-line software builds in
addition to using what Xcode provides; the command-line development
tools.
Breaking changes with system-integrated dependencies are unpopular
around here in OpenVMS, too. q.v. SSL. And there are folks with OpenVMS
apps which prefer to avoid updating tooling absent dragging. And
they'll grumble about any dragging, and will ask (demand) that the old
dependencies be preserved. q.v. SSL.
OpenVMS doesn't have an install-on-demand mechanism—there's little like
Homebrew or the Mac App Store software installation support available,
or nix, apt-get, yum, pkg_add, or otherwise—though that'd be a nice
longer-term addition to OpenVMS. If you're building one of these, look
at nix. What OpenVMS offers is entirely manual, including acting (or
not acting) on email update notifications of patches, when those
notifications are even available.
q.v. https://nixos.org https://brew.sh etc.
In a review a while back, I found several dozen different copies of zip
and unzip on one OpenVMS server configuration, and nearly all of which
were badly stale. But I digress.
And this removal of scripting support from macOS means that the
inevitable malware for macOS has to haul along more run-time support,
or find some other means of executing its payload.
iOS and iPadOS don't embed much in the way of scripting language
support, what's necessary gets in-built into the apps.
Yes, both business and technical reasons for this deprecation and
removal are obvious.
--
Pure Personal Opinion | HoffmanLabs LLC
More information about the Info-vax
mailing list