W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
你肯定希望 Angular 框架具有穩(wěn)定性(stability)。穩(wěn)定性可以確保組件與庫、教程、工具和現(xiàn)有實踐不會突然被棄用。穩(wěn)定性是讓基于 Angular 的生態(tài)系統(tǒng)變得繁榮的基石。
我們也和你一樣希望 Angular 能持續(xù)演進。我們會努力確保這些你用于構(gòu)建應(yīng)用的基礎(chǔ)能得到持續(xù)的改進,并讓你能及時同步到 Web 生態(tài)系統(tǒng)的其它部分的最新進展,用戶需求也是一樣。
本文檔包含一些我們所遵循的實踐,它讓我們能為你提供一個前沿的應(yīng)用開發(fā)平臺,同時兼顧穩(wěn)定性。我們會努力確保將來的變化總是以一種可預(yù)期的方式引入。我們希望每個 Angular 用戶都明白我們將在何時添加以及如何添加新特性,并且為那些將要移除的、準(zhǔn)備棄用的特性提前做好準(zhǔn)備。
Angular 的版本號表明本次發(fā)布中所引入的變更級別。它使用語義化版本號來幫助你理解升級到新版本時的潛在影響。
Angular 的版本號包括三個部分:?major.minor.patch
?。比如,版本 7.2.11 表示主版本號是 7,小版本號是 2,補丁版本號是 11。
版本號是根據(jù)本次發(fā)布中包含的變更的級別進行遞增的。
變更級別 |
詳情 |
---|---|
主版本 |
包含重要的新特性,其中的部分特性在升級時會需要由開發(fā)人員提供少量的協(xié)助才能完成。當(dāng)升級到新的主版本時,你可能需要運行升級腳本、重構(gòu)代碼、運行其它測試以及學(xué)習(xí)新的 API。 |
小版本 |
包含新的小型特性。小版本是完全向后兼容的,在升級期間,不需要開發(fā)人員提供協(xié)助,但是你可以(可選的)修改你的應(yīng)用和庫,來使用本次發(fā)布中新增的 API、特性和能力。我們會擴展庫的對等依賴(peer dependency)中的小版本號范圍來更新庫同級,但并不需要你的項目也更新那些依賴。 |
補丁版本 |
風(fēng)險最低的、修 BUG 的版本。在升級期間完全不需要開發(fā)人員的協(xié)助。 |
注意:
從 Angular 版本 7 開始,Angular Core 和 CLI 的主要版本已對齊。這意味著在開發(fā) Angular 應(yīng)用程序時使用的 ?@angular/core
? 和 CLI 的版本必須相同。
你可以 ?ng update
? 到任何版本的 Angular,前提是滿足以下條件:
比如,你可以從版本 11 更新到版本 12,前提是版本 12 仍受支持。如果要跨多個主要版本進行更新,請每次更新一個主要版本。比如,要從版本 10 更新到版本 12 時:
我們還會通過提供 Next 版和 RC(候選發(fā)布)版來讓你預(yù)覽每個即將到來的大版本和小版本。
預(yù)發(fā)布類型 |
詳情 |
---|---|
Next |
這是正在活躍開發(fā)和測試中的發(fā)布。Next 版的發(fā)布標(biāo)簽帶有 |
RC 候選發(fā)布版 |
一個特性已經(jīng)完成,正在進行最終測試的版本。RC 版的發(fā)布標(biāo)簽帶有 |
我們會定期發(fā)布新版本,以便隨著 Angular 的不斷演進,你可以提前計劃并協(xié)調(diào)這些升級工作。
這些日期僅供一般性參考,如有更改,恕不另行通知。
通常的發(fā)布周期如下:
next
?或 ?rc
?)的補丁版本這種發(fā)布的節(jié)奏能讓渴望新功能的開發(fā)者在這些功能開發(fā)開發(fā)完成并通過我們的代碼審查和集成測試流程后立即就可以使用,同時為那些喜歡在新功能經(jīng)過 Google 和其他使用預(yù)發(fā)布版本的開發(fā)人員的驗證后才采納的生產(chǎn)環(huán)境用戶,保持平臺的穩(wěn)定性和可靠性。
這些日期僅供一般性參考,如有更改,恕不另行通知。
所有主版本的典型支持周期都是 18 個月。
支持階段 |
支持時間 |
詳情 |
---|---|---|
活躍 |
6 個月 |
會定期發(fā)布更新和補丁 |
LTS 長期支持版 |
12 個月 |
只會發(fā)布關(guān)鍵性修復(fù)和安全補丁。 |
下表中提供了目前受支持的 Angular 版本的狀態(tài)。
版本 |
狀態(tài) |
發(fā)布 |
停止活躍 |
LTS 結(jié)束 |
---|---|---|---|---|
^14.0.0 |
活躍 |
2022-06-02 | 2022-12-02 | 2023-12-02 |
^13.0.0 |
活躍 |
2021-11-04 | 2022-06-02 | 2023-05-04 |
^12.0.0 | LTS | 2021-05-12 | 2021-11-12 | 2022-11-12 |
不再為 v2 到 v11 版提供支持。
作為一個通用的規(guī)則,如果解決了下列問題之一,就會考慮對 LTS 版本進行修復(fù):
"重大變更"(比如移除特定的 API 和特性)有時候是必須的,比如創(chuàng)新、讓最佳實踐與時俱進、變更依賴關(guān)系甚至來自 Web 平臺自身的變化。
要讓這些轉(zhuǎn)變盡可能的簡單,我們會給你下列保證:
為了保證你能有充足的時間和清晰的路徑進行升級,我們制定了如下棄用策略:
棄用階段 |
詳情 |
---|---|
宣布棄用 |
我們會在變更記錄中宣布要棄用的那些 API 和特性。啟用的 API 在文檔中會顯示成帶 |
棄用階段 |
當(dāng) API 或特性已棄用時,它在接下來的兩個主版本中仍然會存在。再往后,棄用的 API 和特性將會進入候選棄用狀態(tài)。可能會在任何一次發(fā)布中宣布棄用,但是只會在主版本中移除已棄用的 API 或特性。除非已棄用的 API 或特性已被移除,否則我們?nèi)匀粫鶕?jù) LTS 支持策略來維護它,也就是說,只會修復(fù)嚴(yán)重問題和安全問題。 |
npm 依賴 |
在主版本中,我們只會更新那些需要修改你的應(yīng)用的那些 npm 依賴項。在次要版本中,我們會通過擴展受支持版本范圍的方式來更新對等依賴(peerDependencies),但在下一個主版本到來之前,不會強制要求你升級它們。這意味著,在次要版本中,Angular 應(yīng)用和庫中,npm 依賴項的更新是可選的。 |
Angular 是很多包、子項目和工具的集合。為了防止你意外使用私有 API(這樣你才能更清楚的理解哪些 API 會被這里所說的實踐所覆蓋),我們對公開 API 包含以及不包含哪些 API 進行了文檔化。要了解詳情,參閱 Angular 的公共 API。
任何對公共 API 的修改都適用于上述這些版本、支持和棄用策略。
有時我們會在“開發(fā)者預(yù)覽”標(biāo)簽下介紹新的 API。這些是功能齊全且經(jīng)過優(yōu)化的 API,但我們還沒有準(zhǔn)備好根據(jù)正常的棄用政策來穩(wěn)定它們。
這可能是因為我們希望在穩(wěn)定之前從真實應(yīng)用程序收集反饋,或者因為相關(guān)的文檔或遷移工具不完全完整。
本文檔中描述的政策和實踐不適用于標(biāo)記為 Developer Preview 的 API。此類 API 可以隨時更改,即使在框架的新補丁版本中也是如此。團隊?wèi)?yīng)該自己決定使用開發(fā)者預(yù)覽版 API 的好處是否值得冒險破壞我們正常使用語義版本控制之外的更改。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: