幾天前 Composer 2.0新版本宣布發布,這是一個在 PHP 項目中安裝依賴項的管理器。
作曲家,突出允許 給用戶的 確定需要哪些函數庫 讓項目正常運行,然後它接管安裝缺少的依賴項和更新新版本的工作。
可用於安裝的庫位於 Packagist 存儲庫中,其中包含超過 287 個軟件包。
關於作曲家
Composer定位為依賴安裝系統 使用 npm 和捆綁包管理器設計 Node.js 和 Ruby 社區中牢記這一點。
系統 運營與特定項目相關的包 並被設計為在本地項目目錄中安裝依賴項(作為一個選項,還有系統範圍的全局安裝模式)。
默認情況下,建議安裝穩定庫,但也可以使用實驗性(alpha/beta)和快照更新(開發代碼庫的快照),這對於在持續集成系統中進行測試構建非常有用。
Composer 代碼是用 PHP 編寫的,並根據 MIT 許可證分發。
關於新版本Composer 2.0
在新版本中 進行了重大性能優化 並且內存消耗也減少了。 從調用 packagist.org 的協議來看,已經進行了大量的返工 確定依賴性的方法。
上傳以多個元流和 zip 文件形式提供,另外 實現了並行包安裝模式。 添加了計算代碼的優化。 通過僅加載包元數據,要求和/或刪除操作以及部分更新的速度顯著加快。 在一些項目中觀察到高達 50% 的加速。
更新依賴關係的機制已被重新設計,它與本地文件系統上的目錄狀態無關。 完成更新後,安裝過程現在會自動啟動,並初步執行需要網絡訪問的所有操作。
在實際安裝開始之前執行網絡操作可以避免在安裝過程中出現網絡故障時出現目錄更新不完全的情況。 只要有可能,網絡下載都會在多個線程中執行。
默認, 添加了額外的平台驗證階段 初始化vendor/autoload.php時到運行時,其中 檢查 PHP 和擴展的版本 使用的版本與依賴項中支持的版本相匹配。 如果存在差異,則會顯示錯誤。
驗證是使用新的 Composer\InstalledVersions 類完成的,該類為每個項目加載,以確定項目中可用的包和版本。
此外,還提到重新設計了與依賴性檢測問題相關的錯誤消息。 這些消息更短、更清晰且重複內容更少。
要在更新期間臨時限製版本,請使用“Composer 更新供應商/包:1.0”。 *”,這不會更改“composer.json”中塊的內容,也不會將被阻止的文件標記為已過時。
在此新版本中突出的其他更改包括:
- 添加了對有時間限制的部分更新的支持,當您需要臨時更新或回滾包的版本以測試或等待錯誤修復時,可以使用該支持。 已實現自動刪除不再需要的包。
- 僅新選項、排除選項和規範選項已添加到存儲庫中。
- 在操作、執行、預池創建和文件下載後添加了新事件。
- 添加了大量新標誌。
最後,如果您有興趣了解更多關於這個新版本的信息,可以查閱詳情 在下面的鏈接中。
另一方面,如果你想查閱文檔,你可以這樣做 從這個鏈接。