-
-
Notifications
You must be signed in to change notification settings - Fork 228
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
Configuration-only dependencies should not take part in version resolution #1217
Comments
A successful workaround for this issue is to use a sub-project for your tests and have the test dependencies only in that sub-project. |
It's especially not easy to fix since the main issue is that |
Honestly, this is an oversimplification of the matter. This is not just about the file format or how the dependency resolution is set up. Having a set of dependencies/versions per configuration will make the whole feature useless or impractical in many cases. You'd have to maintain/upgrade dependencies for all configurations and all supported platforms separately, which may work with a lot of automation and a proper CI infrastructure, but otherwise doesn't seem like a sane approach. What could be solved without much issues would be the download problematic, by making package downloads lazier where possible. I don't have a solution at hand for the original issue with mutually exclusive version ranges, other than supporting to build against multiple versions of the same package at once (I just remember there was a SAoC project idea for that or something similar). I don't like that idea for multiple reasons, though. Maybe we can find some middleground between the current approach and the free one-selection-set-per-configuration-and-platform combination... |
Currently, if package
foo
has:And package
bar
has:Then
foo
will fail to build due to version mismatches, even thoughbar
is using thedefault
configuration, notunittest
.The fix would be to only consider
bar
dependencies applicable to the configuration actually being built (usuallydefault
but could be something else ifsubConfiguration
is used).The text was updated successfully, but these errors were encountered: