Dan*_*ler 2 c# nuget semantic-versioning
某些情况:我正在一个团队中工作,该团队产生6个不同的NuGet程序包,这些程序包直接或有时间接地相互依赖。简单地说,我们可以像一个情况p0 < p1 < p2,其中包p0依赖p1,而这又取决于p2。我们正在尝试对这些软件包使用语义版本控制,但不确定p0在p1或p2更改时如何处理的版本。
以下是一些具体示例:
p1进行重大更改(例如0.0.0→ 1.0.0)。我们要发布p0依赖于的版本1.0.0。这是主要版本还是次要版本p0?p1进行较小的更改(0.0.0→ 0.1.0)。这应该使次要版本/补丁版本生效p0吗?更重要的是,
关于依赖版本的更改应如何影响软件包版本的更改,是否存在任何标准/共识?
语义版本控制就是有关更改对该库用户的意义。所以如果变更p1不会造成重大变更,p0那么我不知道为什么会需要一个大版本p0。
基本上,使用任何版本的依赖库都可以工作(请记住,根据您的依赖规则,您的用户也可以使用不同的版本来覆盖它们!),版本控制应仅反映会影响用户的内容。
警告,基于意见的内容
在我看来,如果您直接使用传递性依赖项(即p1仅使用列表p0作为依赖项)作为库的客户端,则有很多“ caveat emptor” 。当您有很多依赖关系时(在大多数NPM软件包中),这些依赖关系会下降很多倍。我不希望那些库的作者跟踪所有可传递依赖项的所有版本更改,因此我知道要检查。
| 归档时间: |
|
| 查看次数: |
339 次 |
| 最近记录: |