世界觀熱點(diǎn):軟件包存在"Manifest混淆"問(wèn)題,新Python工具可解決

2023-07-06 06:02:16來(lái)源:中關(guān)村在線(xiàn)  


【資料圖】

近日,GitHub和NPM的前工程經(jīng)理Darcy Clarke警告,NPM包存在"Manifest混淆"問(wèn)題。為了應(yīng)對(duì)這種情況,系統(tǒng)管理員Felix Pankratz推出了一款基于Python的工具,以幫助軟件開(kāi)發(fā)人員檢查NPM包的一致性。 NPM是JavaScript編程語(yǔ)言的程序包管理器,也是Node.js環(huán)境的默認(rèn)配置。該程序包管理器可以幫助項(xiàng)目管理員自動(dòng)化安裝、升級(jí)以及配置軟件包,這些軟件包都被托管在npmjs.com上的NPM注冊(cè)表數(shù)據(jù)庫(kù)。 所謂 "Manifest混淆"問(wèn)題,指的是當(dāng)程序包在NPM注冊(cè)表上顯示的Manifest信息與安裝該程序包時(shí),發(fā)布的NPM包tarball中的實(shí)際“package.json”文件不一致的情況。 公開(kāi)發(fā)布的Python工具可以幫助用戶(hù)完善這個(gè)問(wèn)題。用戶(hù)可以通過(guò)安裝相關(guān)組件來(lái)使用該工具。只需要在腳本的末尾添加具體的包名,就可以看到Manifest和實(shí)際的"package.json"文件中任何不匹配的信息,包括版本、依賴(lài)項(xiàng)、腳本以及包的名稱(chēng)。 為了檢測(cè)多個(gè)包,用戶(hù)可以先把這些包名添加到"packages.list"文件中,然后利用"check_packages.sh"包裝器腳本進(jìn)行檢查。這款工具已經(jīng)公開(kāi),有需要的用戶(hù)可以前往下載。

標(biāo)簽:

相關(guān)閱讀

精彩推薦

相關(guān)詞

推薦閱讀