Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Stop bypassing Pkg resolution for version numbers #328

Open
Keno opened this issue Sep 24, 2023 · 2 comments
Open

Stop bypassing Pkg resolution for version numbers #328

Keno opened this issue Sep 24, 2023 · 2 comments

Comments

@Keno
Copy link
Contributor

Keno commented Sep 24, 2023

The version selection here:

if build_version === nothing
# Since we usually want to build against the oldest compatible
# version, if `build_version` isn't set but `compat` is, make it
# default to the minimum compatible version.
build_version = minimum(VersionNumber(rng.lower.t) for rng in spec.ranges)
end

is problematic, because it doesn't consider whether the minimum selected version is feasible. Instead, the full compat should be passed to Pkg's version resolution (if possible with a request to resolve the minimum feasible version).

This came up in JuliaPackaging/Yggdrasil#7411 which has complicated dependencies and it turns out the minimum compatible MPI version was incompatible with other dependencies.

@giordano
Copy link
Member

You can pass the exact version number to use for the build as second argument to Dependency if that helps.

@Keno
Copy link
Contributor Author

Keno commented Sep 24, 2023

Yes, I fixed it that way, but this compat was selected by platforms/mpi.jl, so it was a bit of a pain.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants