2013-01-09 63 views
26

我正在使用作曲家(在Symfony2項目中),並經常更新庫的錯誤。composer.json的dev-master,這是瘋了嗎?

許多庫(大部分都是我的經驗)使用dev-master作爲它們的依賴版本(或者更糟糕的是它們使用*)。

無論何時提交給主分支的東西都會更新庫,並且隨着時間的推移API更改的機會會更高。今天掌握的版本是1.2.1版本,明天可能是1.2.7,沒有任何傷害,並且會變得更遲1.7或2.x,肯定不兼容。

我的問題是

  1. 我們是如何走到這一步?這是從高調來源建議的做法嗎?
  2. 我/我們能做些什麼來增強作者對這個主題的敏感度?

或 我瘋了嗎?

+2

你問還是咆哮? –

+0

如果維護人員沒有在監聽,真誠地並積極地詢問 –

+0

@RiccardoGalli,那麼你可以分叉依賴並自己標記它們,並使自定義包成爲依賴;當你不得不處理多個級別的依賴關係時,這當然不起作用 – Manquer

回答

33

你不生氣。

  1. 這是一個雞和雞蛋的問題,直到人們標記更多,其他人不能要求標籤發佈。
  2. 納克每個人都沒有標籤或沒有在六個月內標記任何東西(如果項目正在積極開發的話)。本週早些時候,我努力標記所有捆綁包,因爲我讀了類似的咆哮,並且提醒我們大多數人仍然只有開發主版本。

解決方案確實是教育,我會盡力幫助推動作曲家文檔中的最佳實踐。並不是每個人都有很多包管理的經驗,許多人都沒有意識到這種方法會有多大的問題(直到太晚),所以每個人都需要通過提醒他們來幫助他們。

+1

我正在編寫一個庫來重新分發。一些依賴關係沒有版本標籤。我如何處理它們?我可以開發主人嗎?當我之前嘗試過時,由於dev-master的依賴關係,該庫不能安裝在其他項目上。 – CMCDragonkai

+0

您應該嘮叨您的依賴關係的作者,以便它們儘快標記發佈。如果您工作的整個生態系統仍然不穩定,那麼可以依賴dev-master,但不應該使用dev-master依賴項IMO創建標記,因爲從長遠來看這真的很糟糕。 – Seldaek