如何检查本地 JavaScript 包是否是 Semver?

How to check if local JavaScript packages are Semver?

在我的项目中,之前开发者在本地放置了各种JS包,如chart.jsjquery.block-ui.jsmodernizr.jsaxios.jsvue.js,等等。我正在尝试使用 NPM 来管理它们。问题是,它们都是旧版本。

问题 1:我如何知道它们是否 Semver 以便将它们升级到最新的次要版本是安全的?我对每个包裹都进行了研究,但逐一查看很麻烦,而且其中一些包裹的相关信息很少。是否有某处说明所有 Semvered JS 包?

Q2:对于jquery.block-ui.js,它被缩小了,在文件中,没有关于版本号的信息,这种情况下,是否可以找到它是什么版本,如果安全的话升级?

(注意:我会为未来有明智的前辈并正在寻求帮助的人保留这个答案。如果我想到可以帮助以前开发人员手动复制文件的人的东西,我会再次编辑)

  • 首先,使用npm outdated。这将检查任何过时的包。治病无益。

  • 其次,正如评论所说的关于 semvered 包,你永远不知道。也就是说,我找到了一个半有用的资源 here,它是一个 returns semvered version numbers as matches 的正则表达式。

  • 三、关于JQuery,npm outdated应该return一个table说明版本号。另请参阅 this 有关查找 JQuery 版本号的其他可能方法的问题。

这是他们为 npm outdated 提供的示例输出:

Package      Current   Wanted   Latest  Location
glob          5.0.15   5.0.15    6.0.1  test-outdated-output
nothingness    0.0.3      git      git  test-outdated-output
npm            3.5.1    3.5.2    3.5.1  test-outdated-output
local-dev      0.0.3   linked   linked  test-outdated-output
once           1.3.2    1.3.3    1.3.3  test-outdated-output

希望对您有所帮助。它可能不会。就像评论说的那样,你永远无法确定,所以最可靠的方法是一次一个地检查它们,看看有什么问题