標籤:模組 來源 讀者 項目 自己 維護 user strong nod
本文來源於我在InfoQ中文站翻譯的文章,原文地址是:http://www.infoq.com/cn/news/2015/06/angular-2-react-native-roadmap
近日,npm 3.0 Beta版公布了,該版本號碼差點兒全然重寫了安裝器,為在Windows上使用Node.js的使用者帶來了利好訊息。
Rebecca Turner在公布聲明中說到,npm團隊“非常高興且自豪地”公布了3.0 Beta版,而且“希望能與npm使用者社區合作以便儘快公布生產版本號碼”。
Turner是CLI程式猿,負責差點兒全部的變更,她說此次更新花費了大約8個月的時間。
npm最重要的變更之中的一個就是依賴的更新。藉助於水平依賴能夠解決太多依賴導致Windows檔案系統崩潰的問題,由於過深的路徑會造成Explorer和其它標準工具無法處理的難題。
Turner說到:
如今,依賴將會儘可能依照水平方式進行安裝,全部依賴,以及依賴的依賴都會安裝到項目的node_modules檔案夾中,而且不再嵌套。
假設兩個或多個模組的依賴存在衝突。那麼模組之間才會出現嵌套的情況。
此次更新還意味著安裝“從一開始”就是去重的,Git deps是去重的,甚至命令也是“去重”的。
Turner向InfoQ表示,作為一個使用者,她覺得最激動人心之處就是自己主動去重的deps,這會“極大降低安裝包的大小”。
其它命令的行為也會受到依賴更新的影響。在此次更新中,當使用npm uninstall
命令進行模組卸載時。系統會刪除該模組中不被其它模組須要的全部依賴,而過去則是刪除安裝在該模組下的依賴。
值得注意的是。npm自身的依賴也是“水平、去重。且打包的”,因此npm 3.0無法由npm 2.0公布或打包。
安裝器的其它一些變化還有改進了npm對於包的運行步驟。在之前的版本號碼中,安裝器在決定處理包時會立馬運行各項步驟。在3.0中,安裝器會同一時候對全部包運行各項步驟。在繼續之前會等待每個階段的完畢。對於開發人員來說,這麼做能夠消除非常多競態條件:讓代碼的編寫變得更加輕鬆。
從實際使用的角度來看,Turner說此次更新意味著諸如生命週期指令碼等將會變得更加可預測且出錯的可能性更低。同一時候也能更加輕鬆地實現諸如新的--dry-run
標誌等特性。Turner說這會讓開發人員在運行之前就能看到將要發生的事情。同一時候詳盡的日誌會展示出安裝器在進行改變前後的完整樹形結構。
總而言之,Turner希望npm 3.0 Beta版能夠降低Bug的出現,而且為開發人員提供一個更加穩定的平台。
不出所料的是,npm 3.0 Beta版將會持續一段時間,直到團隊“覺得它已足夠穩定,而且評估過它對社區造成的影響”之後才會公布正式版。
Turner還指出,由於此次差點兒是全然重寫,因此還會存在一些Bug,該Beta版僅僅能用於“每天使用的非關鍵的CI環境”。不能用於“產品維護或是持續部署”。
對於想要為npm貢獻力量的InfoQ讀者來說。方式有非常多:常規的pull requests、Bug報告、文檔與代碼變更的特性請求等,這些都是npm所歡迎的。能夠在其問題追蹤器上進行。除了直接的貢獻之外。npm團隊也非常歡迎大家編寫教程與文章。形式諸如“怎樣解決某個問題以及使用了哪些模組”,優秀的內容會被npm Weekly所引用。
查看英文原文:NPM 3 Beta Brings Good News for Windows Users
NPM 3 Beta為Windows使用者帶來利好訊息