名為"-"的nmp包是空的,卻有超過700,000次下載

banq發表於2022-03-08

自 2020 年以來,一個名為“-”的神祕的單字母 npm 包位於登錄檔中,已獲得超過 700,000 次下載。

更重要的是?該軟體包不包含任何功能程式碼,那麼是什麼讓它獲得瞭如此多的下載量?

該軟體包只有一個版本:0.0.1,它包含三個檔案:

tar tvf 0.0.1/--0.0.1.tgz

package/dist/index.js
package/package.json
package/README.md

在這些檔案中——主要是清單 (package.json) 和 index.js,沒有什麼特別有趣的東西。

清單確實引入了一堆開發依賴項(devDependencies)並在“ ts-node ”元件 上呼叫了一些命令,但僅此而已。它實際上是死程式碼。

實際上無用的包“-”作為超過 50 個 npm 包的依賴項,沒有明確的解釋。

 

那麼,“-”是如何獲得近 720,000 次下載的呢?

當有人從終端執行 npm 命令併產生輸入打字錯誤時,該軟體包可能會被拉入。

如果您指定了一些標誌,但犯了錯誤:

npm i - someFlag somepackage

“-”和 someFlag之間的空格可能會導致 npm 引入“-”,因為具有該名稱的包確實存在。

因此,該軟體包的千倍下載計數是開發人員拼寫錯誤的結果,這似乎是合理的。

 

包“-”的作者 Dmitry Parzhitsky  強調該包在建立時完全符合 npm 的命名規則,並作為測試建立,對任何人都沒有任何傷害。

 

開發人員在終端中鍵入 npm 命令時應小心謹慎,尤其是在使用標誌時。檢查為什麼你的包 依賴 於這個神祕的包也是一個好主意。

 

相關文章