AppleはmacOS 13 VenturaからbcコマンドをGNU bcからBSDライセンスのbcへ移行したようです。詳細は以下から。
Appleが現地時間2024年03月07日にリリースした「macOS 14.4 Sonoma」では、USBハブが利用できなくなる不具合やJavaプロセスが予期せず終了してしまう不具合、PACE/iLokで保護されたAUプラグインによりLogic ProなどのDAWアプリがクラッシュする不具合など複数の不具合が報告されたため、25日になってHotfixとなる「macOS 14.4.1 Sonoma」がリリースされましたが、
このmacOS 14.4 Sonomaでは、不具合の他に、“airport“コマンドが非推奨となり、“fileproviderctl”コマンドから多くのオプションが削除されていたため、その他のコマンドも確認したところ、macOS 14.4では、任意精度の算術計算が可能なbcコマンド(Basic Calculator)が、バージョン4.0.2から6.5.0へアップデートされていました。
bcのバージョン情報にクレジットされていたWebサイトをチェックしてみたところ、このbcはGavin D. Howardさんが、2018年から開発している新しいbc(以下、gh-bc)で、確認したところAppleは2022年にリリースしたmacOS 13 Venturaからこのgh-bcを採用していたそうです。
Howardさんが昨年02月に公開したブログによると、Appleが更新したApple’s Open Sourceページを確認したところ、AppleはmacOS 12.x Montereyまで1991年にPhilip A. Nelsonさんが開発しメンテナンスが続けられていたGNU bcを採用していたものの、macOS 13.0 Venturaでは自身が開発しているBSDライセンスのgh-bcが採用されていたそうで、
My bc had previously been accepted into FreeBSD. It’s default or equal with the GNU bc in several small Linux distros and one major one (Gentoo).Getting shipped with Mac OSX is the next step toward conquering all platforms.This makes me so happy!
My Code Conquered Another OS! – Gavin D. Howard
はっきりとした理由はわかりませんが、Appleは2019年にリリースしたmacOS 10.15 Catalinaで、それまでデフォルトシェルとして採用してきたGPLv3ライセンスのBashをMITライセンスのZshへ移行し、その後もライセンス問題からいくつかのコマンドを削除/置き換えしているので、今回もライセンスの問題だと思われます。
AppleとGNUライセンス
- 2019年10月 : macOS 10.15 Catalina
- 2022年03月 : macOS 12.3 Monterey
- 2023年10月 : macOS 13 Ventura
- bcがGNU bcからBSDライセンスのgh-bcへ移行。
おまけ
なお、bcコマンドがGNU bcからgh-bcへ移行されたことで、MacではmacOS 13 Ventura以降bcコマンドのパフォーマンスが格段に改善されているので、これからmacOS 13 VenturaやmacOS 14 Sonomaへアップグレードされる方はチェックしてみてください。
- bc コマンドが新しくなる – Qiita
- My Code Conquered Another OS! – Gavin D. Howard
コメント