如果仅参考版本更改,我是否应该更新程序集版本?

Should I update version of assembly if only reference version changed?

我有版本为 1.0.0 的 AssemblyA 和版本为 1.0.0 的 AssemblyB。 AssemblyB 引用 AssemblyA,我创建了两个程序集的 NuGet 包。

现在,我修复了 AssemblyA 中的错误,它获得了 1.0.1 版。我现在是否应该将 AssemblyB 也更新为 1.0.1,因为引用已更改,还是应该仅在代码发生更改时才更新版本?

NuGet 包仅在本地提要(公司范围内)中使用。

两种解决方案的优缺点是什么? 我的优点是,我没有引用旧的、有问题的包,当我在 ApplicationC 中使用两个程序集时,我只需要引用和更新 AssemblyB。但是更新一个版本号而不修改任何代码,感觉很尴尬。

鉴于 MyCoolPackage 1.0.0 依赖于 MyPoorDependency 1.0.0,并且您已将 MyPoorDependency 错误修复为 1.0.1,那么是的,更新的包依赖性意味着该包的新版本。

如果您只发布依赖项更新,MyCoolPackage 1.0.0 的元数据仍将指向 MyPoorDependency 1.0.0。您的包的用户不会知道它的依赖项有更新。他们可以将包管理器设置为只安装最低公分母的依赖项,甚至可以将版本固定为 MyPoorDependency 1.0.0。因为毕竟,这就是您的 MyCoolPackage 1.0.0 所说的可以使用的内容。

为此,包管理器会查看所有用户的项目依赖项,会发现它需要 MyCoolPackage 1.0.0,它依赖于 MyPoorDependency 1.0.0,并且它 不会更新.

所以是的,更新 MyCoolPackage 以要求 MyPoorDependency 1.0.1 并发布一个新版本,可能也是 1.0.1。