我应该把JavaScript库的版本号放在文件名中吗?



我即将发布一个javascript库。

我想把文件保存为[library-name].1.0.0

然后随着库的发展,您将能够下载新版本,例如

  • [库名称].1.0.1.js
  • [库名称].1.0.2.js
  • [库名称].1.0.3.js
  • [库名称].1.1.0.js
  • [库名称].1.2.0.js
  • [库名称].2.0.0.js

我的问题是:是否有任何理由在文件名称中保存版本?

我正在使用其他第三方库和那些我不存储版本的库,我总是要弄清楚我是否需要升级。

例如,我使用codemror .js,我总是怀疑我使用的是否是最新版本。

如果您提供下载,那么将版本号作为文件名的一部分是一个好主意。另外,像jQuery那样在文件的开头添加版本号和许可证信息也是一个好主意

结帐- http://code.jquery.com/jquery-1.9.1.min.js

唯一不应该添加版本号的情况是当你在整个网站引用脚本文件时-因为你不想在更新脚本时更改所有引用

我自己从来没有发布过任何库,但是在文件名中加入版本号对我来说是个好主意。

在升级方面,我认为而不是将版本号放在文件名中用于那些作者不希望在未来版本中引入破坏性更改的库,而只是修复和添加不影响已经针对库编写的代码的错误。这意味着使用库但不自己托管库的人(即在公共CDN上指向库的人)会自动指向最新版本,从而无需做任何事情即可获得错误修复。

但是,正如你所说,对于那些下载库并自己托管它的人来说,这确实意味着他们必须打开库文件来检查版本号。

如果你想匹配其他一些图书馆出版商所做的,你可能想看看语义版本控制-它编纂了x.x.x版本编号系统。

如果你打算通过Github发布你的库(我相信这是最近很酷的孩子们所做的),你可能想使用Jonathan"Wolf"Rentzsch的系统来做语义版本控制。

如果您正在使用单元测试,您可以在发布库之前确保V1单元测试在V2上运行良好。

关于js单元测试的精彩文章

如果我正确理解了您的问题,不包含版本名的一个原因是,如果您托管使用cdn托管文件的脚本用户在升级时不必更改任何代码。

最新更新