Nuget 这是否构成了对语义版本控制API的突破性更改

Nuget 这是否构成了对语义版本控制API的突破性更改,nuget,semantic-versioning,Nuget,Semantic Versioning,如果这个问题被贴到了错误的地方,我表示歉意-我觉得这样做不太合适,但我不知道还有更好的地方 我有一个公共nuget包(…plug,plug-plug),我正在对它进行更改 更改不会更改API签名-旧代码仍将编译。但它确实会更改边缘情况下的行为-主要结果是以前生成异常的用法现在执行不同的默认行为。还有一个TryParse()调用,它将(在本例中)将(非异常)失败案例更改为成功案例 edge案例是“您使用此库的方式并非真正打算使用”。i、 我稍微增加了图书馆的预期使用范围 这是一个突破性的变化吗?它

如果这个问题被贴到了错误的地方,我表示歉意-我觉得这样做不太合适,但我不知道还有更好的地方

我有一个公共nuget包(…plug,plug-plug),我正在对它进行更改

更改不会更改API签名-旧代码仍将编译。但它确实会更改边缘情况下的行为-主要结果是以前生成异常的用法现在执行不同的默认行为。还有一个TryParse()调用,它将(在本例中)将(非异常)失败案例更改为成功案例

edge案例是“您使用此库的方式并非真正打算使用”。i、 我稍微增加了图书馆的预期使用范围

这是一个突破性的变化吗?它是否因此需要一个新的解决方案? 还是仅仅是一个“向后兼容”的小变化

我的第一反应是,这是对现有呼叫行为的改变,因此是一个突破性的改变。 思考?

给出以下内容

  • 进行不兼容的API更改时的主版本
  • 以向后兼容的方式添加功能时的次要版本
  • 修复向后兼容的错误时的修补程序版本
  • 我想说,您的更改不向后兼容。属于您的edge案例组的人员将因您的新软件包而更改其预期功能。鉴于此,我认为这是一个新的主要版本