versioning - 执行包装器库的 semver(语义版本控制)的最佳做法是什么?

标签 versioning wrapper semantic-versioning

我正在考虑采用 semver对于另一个也遵循 semver 的库的包装器。最初我以为我会保持包装器的版本与原始库相同,因为理想情况下它们会一直完全匹配。

然而,这并不是那么简单,因为包装器本身可能存在与原始库无关的错误和补丁,更不用说包装器开发本身是增量的,并非所有功能都在一夜之间现成.

考虑到包装器引用的原始库的版本以及包装器本身的补丁和开发历史,建议使用什么方法对该包装器进行版本控制?

最佳答案

独立于库对包装器进行版本控制。您的版本号应指示对包装器代码的更改。该库是包装器的依赖项,就像任何其他库依赖项一样。维护一个表格,列出包装器版本和库版本之间的兼容性。

如果您不喜欢在库为 4.3.2 时使用 1.1.0 版本的包装器,请考虑向包装器添加“营销”版本号。您的包装器可以称为“Wrapper 4”以表明它与库的版本 4 兼容,但在内部您仍然可以将包装器的确切版本标识为 1.1.0。

关于versioning - 执行包装器库的 semver(语义版本控制)的最佳做法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16418183/

相关文章:

iOS 应用程序版本控制

scala - Scala 中隐式对象包装器的开销

spring - .RELEASE 在 Spring Framework 版本中是什么意思

versioning - 在版本号中使用句点的历史原因?

iphone - 检测 iPhone 应用程序版本更新?

c++ - 如何处理全局通用框架的不稳定 API

java - 如何在 Java 中包装 Collection 的每个对象?

c++ - 有没有办法为 fscanf 实现包装函数?

c# - WPF 项目中的语义版本控制

unit-testing - 我应该继续测试代码还是实现更多功能?