誕生20年的FishShell正式釋出4.0:近6萬行核心C++程式碼被Rust重寫

OSCHINA
↑點選藍字 關注我們
Fish Shell 4.0 已正式釋出,最大變化就是用 Rust 重寫了核心 C++ 程式碼,這意味著依賴關係和構建方式的鉅變,但對終端使用者沒有直接影響。
其它變化包括:
  • 新的 bind 鍵符號
  • 相同種子將生成與之前版本不同的隨機值
  • Ctrl-C 將預設清除命令列
  • Windows Subsystem for Linux 調整
  • Fish 能作為自安裝二進位制檔案構建,等等
fish 是適用於 Linux、macOS 的命令列 Shell,已有 20 年曆史,其名字取於 "the friendly interactive shell" 的首字母簡稱,最大特點就是方便易用、功能強大、智慧並且使用者友好。很多其他 Shell 需要配置才有的功能,fish 預設提供,不需要任何配置。
2023 年初,fish 作者宣佈採用 Rust 重寫 Fish Shell 專案。
重寫原因包括:
  • 沒有人真正喜歡 C++ 或 CMake,也沒有擺脫舊工具鏈的明確途徑。每年的“開發痛苦”都會加重。
  • C++ 正在成為一種“遺留語言”,未來尋找貢獻者將變得困難,而 Rust 擁有一個活躍且不斷發展的社群。
  • Rust 是實現併發函式執行所需要的語言。
  • 用 Rust 編寫將有助於 fish 繼續被認為是現代和有價值的。
時隔兩年多,Fish Shell 終於正式釋出了 4.0 版本,從相關資料來看這是一項巨大工程:
  • 檔案變更數 1185 個,111221 次新增(+)、89168 次刪除(-)
  • 200 多位貢獻者共提交 2731 次
  • 500+ issues
  • 2 年多的開發週期
  • 將 57000 行 C++ 程式碼重寫為 75000 行 Rust(外加 400 行 C)
  • 徹底清理 C++ 程式碼
閱讀更多
Fish Shell採用Rust重寫會導致效能下降
Fish Shell計劃採用Rust重寫
用Rust重寫近6萬行C++程式碼是怎樣的體驗?
相關來源:https://fishshell.com/blog/new-in-40/
END
熱門文章
分享在看點贊~Orz

相關文章