版本号

Julia 有一个通过 VersionNumber 类型公开的内置语义版本实现。

要将 VersionNumber 构造为文字,可以使用 @v_str 字符串宏

julia> vers = v"1.2.0"
v"1.2.0"

或者,可以调用 VersionNumber 构造函数; 请注意,构造函数最多接受五个参数,但除第一个参数之外的所有参数都是可选的。

julia> vers2 = VersionNumber(1, 1)
v"1.1.0"

可以使用比较运算符比较版本号,因此可以对其进行排序:

julia> vers2 < vers
true

julia> v"1" < v"0"
false

julia> sort([v"1.0.0", v"1.0.0-dev.100", v"1.0.1"])
3-element Array{VersionNumber,1}:
 v"1.0.0-dev.100"
 v"1.0.0"
 v"1.0.1"

Julia 的几个地方都使用了版本号。例如,VERSION 常量是 VersionNumber

julia> VERSION
v"0.5.0"

这通常用于条件代码评估,具体取决于 Julia 版本。例如,要在 v0.4 和 v0.5 上运行不同的代码,可以做到

if VERSION < v"0.5"
    println("v0.5 prerelease, v0.4 or older")
else
    println("v0.5 or newer")
end

每个已安装的软件包还与当前版本号相关联:

julia> Pkg.installed("StatsBase")
v"0.9.0"