移动到便携式类库是一个重大改变?

时间:2012-04-27 00:28:14

标签: .net versioning portable-class-library semantic-versioning

目前我正在构建单独的二进制文件以定位每个运行时

  • .net 4
  • Windows Phone
  • Silverlight的

现在,如果我将库移动到单个Portable Class Library,并且我没有更改功能,那么这被认为是一个重大变化吗?

或者在SemVer条款中,它是主要版本,次要版本还是补丁版本?

4 个答案:

答案 0 :(得分:1)

我想说这是一个次要的版本更改,因为链接到您的库的代码现在受some specific whims of the PCL的限制:

  

部署引用可移植类库程序集的.NET Framework 4应用程序时,必须指定对.NET Framework 4更新的依赖关系。通过指定此依赖关系,您可以确保随应用程序一起安装更新。

此外,如果您已公开certain Framework types,则代码的使用者可能需要更改。

答案 1 :(得分:1)

是和否。当六个变量被调用时,如果之前的目标是4.0,是的,移动到可移植是一个重大变化,因为您现在依赖于以前没有的.NET Framework更新。使用其他平台(或者如果是针对.NET 4.0.3或更高版本),不,这不是一个重大改变。

答案 2 :(得分:1)

虽然理论上这应该是现实中的一个小变化,但它有点复杂。

说到表单体验我将程序集升级到Portable类库时遇到了一些问题。其中包括:

这些很可能是未来将要解决的问题。但请注意可能导致您图书馆消费者的上游问题。

答案 3 :(得分:0)

我想说如果您可以简单地删除新的程序集,并且所有内容都像以前一样继续工作而不进行任何代码修改,那么这不是一个重大改变。

从图书馆消费者的角度来看,切换到PCL是一项相当中立的操作。它仍然只是他们的一个类库。

在semver术语中,我认为它会算作次要版本。