ClojureScript

1.11.132 版本發佈

2024 年 1 月 24 日
ClojureScript 團隊

我們很高興宣布 ClojureScript 的新版本發佈。如果您是 ClojureScript 的現有使用者,請仔細閱讀以下版本說明。

這主要是錯誤修復版本。

如需 ClojureScript 的完整修正、變更和增強列表,請參閱此處

Google Closure Compiler & Java 8

這可能是最後一個支援 Java 8 的 ClojureScript 版本,因為 Google Closure Compiler 現在需要 Java 11。

Google Closure Library 維護模式 & ClojureScript

Google 已經停止開發 Google Closure Library。這對 ClojureScript 的未來意味著什麼?並不是很多。Google Closure Library 是一個與 Compiler 不同的專案,它提供了一大組可重複使用的、經過實戰考驗的函式庫,這些函式庫與 Closure 相容。隨著瀏覽器和 JavaScript 生態系統的發展,這個專案對 Google 的重要性降低了。

Google 不會移除 Google Closure Library (GCL)、移除 API 文件,或做出任何對 ClojureScript 不利的事情。請注意,Google 多年前就停止提供定期版本 - ClojureScript 使用我們自己發佈的 Artifact。即使 Google 將 GCL 從網際網路移除,我們仍然可以繼續提供 Artifact 和文件。

標準函式庫 cljs.core 以相對簡單的方式使用 GCL,其中大部分都可以輕鬆替換。這可能會隨著時間的推移而發生,並且歡迎社群成員為此做出貢獻。

各種內建的 REPL(瀏覽器、Node)使用更多 GCL 功能,並且也可以隨著時間的推移逐步發展。

以上任何變更都不會改變我們產生與 Google Closure Compiler 相容的 JavaScript,並且我們將會繼續這樣做。Google 本身擁抱了更廣泛的 JavaScript 生態系統,但他們也將所有內容轉譯為與 Google Closure Compiler 相容的 JS(透過tsickle),然後再使用 Google Closure Compiler 進行最後的處理。

與往常一樣,我們不相信為使用者製造無意義的變動。您可以在未來幾年繼續以目前的形式依賴 GCL。您可以期望各種基礎 GCL 命名空間(goog.stringgoog.object 等)像以前一樣可用。

展望未來,值得評估 Google 使用 tsickle 的方法,以獲得 Closure 進階編譯的好處,而不會失去 JavaScript 生態系統提供的便利性。

貢獻者

感謝所有為 ClojureScript 1.11.132 做出貢獻的社群成員

  • Will Cohen

  • Michiel Borkent

  • John Newman

  • Enzzo Cavallo

  • Allen Rohner

  • Adam Kalisz

  • Erik Assum

  • Nikita Prokopov