Skip to content

Commit 29a34f5

Browse files
authored
[Dependencies] Propagate compat of RuntimeDependency (#298)
1 parent 2a5a985 commit 29a34f5

File tree

2 files changed

+4
-3
lines changed

2 files changed

+4
-3
lines changed

src/Dependencies.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -339,7 +339,7 @@ version(d::Dependency) = __version(d.pkg.version)
339339

340340

341341
getcompat(d::AbstractDependency) = ""
342-
getcompat(d::Dependency) = d.compat
342+
getcompat(d::Union{Dependency,RuntimeDependency}) = d.compat
343343

344344
for (type, type_descr) in ((Dependency, "dependency"), (RuntimeDependency, "runtimedependency"), (BuildDependency, "builddependency"), (HostBuildDependency, "hostdependency"))
345345
JSON.lower(d::type) = Dict("type" => type_descr,

test/dependencies.jl

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ end
5555
# if build_version and compat don't match, an error should be thrown
5656
@test_throws ArgumentError Dependency(PackageSpec(; name = name), build_version; compat = "2.0")
5757

58-
run_dep = RuntimeDependency(PackageSpec(; name))
58+
run_dep = RuntimeDependency(PackageSpec(; name); compat="3.14")
5959
@test RuntimeDependency(name) == run_dep
6060
@test !is_host_dependency(run_dep)
6161
@test is_target_dependency(run_dep)
@@ -65,6 +65,7 @@ end
6565
@test getname(run_dep) == name
6666
@test getname(PackageSpec(; name)) == name
6767
@test getpkg(run_dep) == PackageSpec(; name)
68+
@test getcompat(run_dep) == "3.14"
6869
# We should be able to convert a `Vector{RuntimeDependency}` to `Vector{Dependency}`
6970
@test Dependency[RuntimeDependency(name; compat="~1.8", platforms=[Platform("aarch64", "macos"; cxxstring_abi="cxx03")])] ==
7071
[Dependency(name; compat="~1.8", platforms=[Platform("aarch64", "macos"; cxxstring_abi="cxx03")])]
@@ -115,7 +116,7 @@ end
115116
@test dependencify(jdep) == dep
116117

117118
jrun_dep = JSON.lower(run_dep)
118-
@test jrun_dep == Dict("type" => "runtimedependency", "name" => name, "uuid" => nothing, "compat" => "", "version-major" => 0x0, "version-minor" => 0x0, "version-patch" => 0x0, "platforms" => ["any"], "top_level" => false)
119+
@test jrun_dep == Dict("type" => "runtimedependency", "name" => name, "uuid" => nothing, "compat" => "3.14", "version-major" => 0x0, "version-minor" => 0x0, "version-patch" => 0x0, "platforms" => ["any"], "top_level" => false)
119120
@test dependencify(jrun_dep) == run_dep
120121

121122
jdep_buildver = JSON.lower(dep_buildver)

0 commit comments

Comments
 (0)