【问题标题】:Default assembly revision number always 0 in F# assembliesF# 程序集中的默认程序集修订号始终为 0
【发布时间】:2013-08-08 11:30:55
【问题描述】:

如果我指定我想要默认的版本号和修订号,我输入

[<assembly: AssemblyVersion("0.0.*")>]

在 AssemblyInfo.fs 中(我基于 https://blogs.msdn.com/b/mcsuksoldev/archive/2011/06/01/f-assembly-information-file-template.aspx 的示例)。

出于某种原因,我总是在 F# DLL 中得到修订号 0(例如 0.0.4967.0),而它在 C# 中的工作方式与宣传的一样(例如 0.0.4967.21937)。

仅当内部版本号不是通配符 0.0.1.* 时,默认修订号才有效。

这是一个错误还是我错过了什么?

【问题讨论】:

  • 我刚刚验证了这个bug在VS2013中仍然存在。
  • ...但在 VS2015 中消失了。

标签: visual-studio visual-studio-2012 f# versioning


【解决方案1】:

这是一个错误。它的工作原理与 VS 2010(F# 2.0,该博客为其编写)中所宣传的一样,但在 VS 2012(F#3.0)和 VS 2013(F#3.1,仍为预发布版本)中被破坏。您应该向 fsbugs@microsoft.com 发送错误报告。

F# 2.0 的代码位于 il.fs here 的底部。寻找parseILVersion。

3.0对应的代码是here。

错误出现在新的条件句中 - 他们检查 versionComponents.Length &lt; 4,可能应该检查 version.Revision &lt; 0。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-01-05
    • 1970-01-01
    • 1970-01-01
    • 2013-07-16
    • 2020-01-25
    • 2010-09-05
    相关资源
    最近更新 更多