Skip to content

Commit

Permalink
allow stdlibs to change in the resolve if manifest came from a simila…
Browse files Browse the repository at this point in the history
…r julia version
  • Loading branch information
IanButterworth committed Oct 24, 2021
1 parent b3344eb commit dfb5e02
Showing 1 changed file with 11 additions and 1 deletion.
12 changes: 11 additions & 1 deletion src/Operations.jl
Original file line number Diff line number Diff line change
Expand Up @@ -337,7 +337,17 @@ function resolve_versions!(env::EnvCache, registries::Vector{Registry.RegistryIn
for pkg in pkgs
names[pkg.uuid] = pkg.name
end
reqs = Resolve.Requires(pkg.uuid => VersionSpec(pkg.version) for pkg in pkgs)

pkgs_to_require = if env.manifest.julia_version.major == VERSION.major && env.manifest.julia_version.minor == VERSION.minor
# if the manifest was previously resolved by the same major-minor julia version, don't require stdlib versions
# to remain the same. This allows manifests that were generated on nightly julia versions, where stdlibs may change version
# to be updated
filter(pkg -> !is_stdlib(pkg.uuid), pkgs)
else
pkgs
end

reqs = Resolve.Requires(pkg.uuid => VersionSpec(pkg.version) for pkg in pkgs_to_require)
graph, compat_map = deps_graph(env, registries, names, reqs, fixed, julia_version)
Resolve.simplify_graph!(graph)
vers = Resolve.resolve(graph)
Expand Down

0 comments on commit dfb5e02

Please sign in to comment.