Re: [討論] 請大家聊聊 JavaScript的缺陷

看板Soft_Job作者 (初音唱歌)時間3年前 (2021/01/07 22:43), 編輯推噓3(304)
留言7則, 4人參與, 3年前最新討論串19/19 (看更多)
※ 引述《brli7848 (星の妄想)》之銘言: : 先來看個實際存在的專案結構在 npm install 後 : zettlr/node_modules/archiver-utils/node_modules/readable-stream/node_modules/ : inherits/LICENSE : 三層啊!大大們!光是一個 lib 就埋了三層啊! npm 的問題,我試著安裝了一下 因為說是去年7月遇到的,所以我使用 2020/06/30 發佈的 node 12.18.2 搭配 npm 6.14.5 https://i.imgur.com/LMWcPMf.png
在只有裝 archiver-utils 的情況下,他很平,可能比我婆軟體還平 archiver-utils 底下沒有 node_modules , readable-stream 底下也沒有 當然 inherits 也在同一層 那麼問題出在哪裡呢? 為什麼 npm 去年發了瘋似的埋三層? 我試著去 google 了專案名,找到一個 github ,就先當作是這個專案好了 https://github.com/Zettlr/Zettlr 我們直接搜尋本應不存在的第二層 ─ readable-stream 呃...超多結果,這也裝太多種版本了吧 我們就看出問題的 archiver-utils 底下的吧 https://github.com/Zettlr/Zettlr/blob/develop/yarn.lock#L1073 https://i.imgur.com/2EBZzGv.png
我想問題就在這裡了 archiver-utils@2.1.0 想用 readable-stream@^2.0.0 archiver@5.1.0 想用 readable-stream@^3.6.0 一個要2一個要3,不多裝幾個恐怕還真的會爆炸啊...... 「一個專案引用同一個函式的兩個版本,這是工程師在雷的問題吧?」 看來這邊最雷的就是...... archiverjs 沒錯,明明是同一系列的東西,廠商明知依賴了同一個 package ,卻沒有好好同步版本 這顯然是廠商的疏失 走,我陪你一起控告那個黑...... 我是說發 issue 給那個廠商 替你的 npm 討回公道 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.34.163.138 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1610030631.A.E7A.html

01/07 23:24, 3年前 , 1F
推我婆軟體
01/07 23:24, 1F

01/08 10:54, 3年前 , 2F
所以我只敢在前端用npm,後端最多給React SPA搞SSR而已
01/08 10:54, 2F

01/08 10:55, 3年前 , 3F
,真正的後端我還是用別的語言的好,別用node.js了。
01/08 10:55, 3F

01/08 10:56, 3年前 , 4F
話說這些年用開源輪子還要留意黑心貨。
01/08 10:56, 4F

01/08 23:00, 3年前 , 5F
請教樓上,哪個套件管理工具可以避免第三方套件有雷 ..?
01/08 23:00, 5F

01/15 12:24, 3年前 , 6F
樓上可以用snyk去掃描專案使用的套件有沒有被回報有安全
01/15 12:24, 6F

01/15 12:24, 3年前 , 7F
性問題
01/15 12:24, 7F
文章代碼(AID): #1Vznudvw (Soft_Job)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 19 之 19 篇):
文章代碼(AID): #1Vznudvw (Soft_Job)