macOS 10.15 Catalina は UNIX スクリプト言語を廃止

macOS 10.15 Catalina は UNIX スクリプト言語を廃止
Pythonの注目の画像。

古いPython言語バージョン2.7は、macOS 10.15 Catalinaで非推奨となり、macOS 10.16には含まれません。他のUNIXスクリプト言語についても同様です。

バージョンの微妙な違いがあるので、まずは Python に焦点を当てましょう。

Pythonケース

これは思ったほど悪くはありません。Python 3.0は2008年12月にリリースされました。Python 3.0はPython 2.xのいくつかの不適切な設計から根本的に脱却し、バージョン2.7でその傾向が顕著になりました。そのため、多くの複雑なPython 2.xコードはPython 3.xでは動作せず、書き直す必要があります。

しかし、AppleはmacOSのデフォルトインストールを更新せず、長年の後方互換性を保つためPythonをバージョン2.7のままにしてきました。10年間、Python 3.x(2.7と同時インストール可能なバージョン)のインストールはユーザーに委ねられてきました。そして、ユーザーは環境を選択できるようになりました。詳細については、以下をご覧ください。

[Mac を Python 3 にアップグレードする方法 [2017 年更新]]

これを考察する一つの方法は、Python 3.xを必要とするユーザーが簡単にインストールできる限り、2009年以降、macOSの各リリースでAppleが新しいバージョンを継続的に管理する必要はなかったということです。[Pythonの最新バージョンは3.7.3です]

Appleの廃止声明

これらすべてがわかったので、Apple の 10.15 Catalina 開発者ノートを適切な視点で捉えることができるようになりました。

Python、Ruby、Perlなどのスクリプト言語ランタイムは、レガシーソフトウェアとの互換性を保つためにmacOSに含まれています。macOSの将来のバージョンでは、スクリプト言語ランタイムはデフォルトで含まれなくなり、追加パッケージのインストールが必要になる可能性があります。ソフトウェアがスクリプト言語に依存している場合は、ランタイムをアプリにバンドルすることをお勧めします。(49764202)

Python 2.7 の使用は推奨されません。このバージョンは、macOS に旧バージョンのソフトウェアとの互換性のために含まれています。macOS の将来のバージョンには Python 2.7 は含まれません。代わりに、ターミナルから python3 を実行することをお勧めします。(51097165)

つまり、Perl、Python、RubyといったUNIXスクリプトパッケージは、これまでと同様に、macOSの将来のバージョンにもインストールできます。ただし、macOS 10.16以降ではデフォルトで含まれなくなります。

これの利点は、ほとんどのMacユーザーがUNIXスクリプト言語を使うことはなく、ましてやUNIXシェルを使うことなどないということです。AppleはmacOSにこれらの言語の古いバージョンを搭載する必要がなくなります。これはセキュリティ上の配慮でもあるのでしょう。また、以下の点にもご注意ください。

[Bash の消滅: macOS Catalina では Z Shell がデフォルトのターミナルに設定される]

だから、それほど大きな問題ではありません。AppleはmacOSのUNIX基盤を放棄するわけではありません。経験豊富なUNIXユーザーであれば、必要なものをインストールできるでしょう。

しかし、2020年後半のある日、科学者が新しいMacを受け取り、ターミナルウィンドウを開くと、Python(… Perl … Ruby)が消えていることに気づくだろうと私は予測しています。嘆き悲しむ声が聞こえてくるでしょう。

彼/彼女をこの記事へ送ってください。

[編集者注: 幸運にも今後何年も開発が活発に続けられるようであれば、Homebrew にも送ってみてください。

Knowledge Network