-
-
Notifications
You must be signed in to change notification settings - Fork 227
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
Change semantics of optional dependencies #361
Comments
|
Ah, this was driving me crazy. Finding this issue #361 finally explains the strange behaviors I was seeing, which seemed to be bugs. For what it's worth, I "vote" for this issue, because removing local packages to prevent their use (e.g., unwanted used of vibe.d, resulting in an error that I have two main() functions) is quite user unfriendly. In any case, is this a bug? That is, I want to declare vibe.d a dependency, but only for configuration |
|
The correct package description looks like this:
|
If no dub.selections.json file exists yet, optional dependencies will stay deselected by default, unless the "default" flag is set. If dub.selections.json exists, optional dependencies will only be used if present in that file, independently of their local installation state.
If no dub.selections.json file exists yet, optional dependencies will stay deselected by default, unless the "default" flag is set. If dub.selections.json exists, optional dependencies will only be used if present in that file, independently of their local installation state.
If no dub.selections.json file exists yet, optional dependencies will stay deselected by default, unless the "default" flag is set. If dub.selections.json exists, optional dependencies will only be used if present in that file, independently of their local installation state.
If no dub.selections.json file exists yet, optional dependencies will stay deselected by default, unless the "default" flag is set. If dub.selections.json exists, optional dependencies will only be used if present in that file, independently of their local installation state.
If no dub.selections.json file exists yet, optional dependencies will stay deselected by default, unless the "default" flag is set. If dub.selections.json exists, optional dependencies will only be used if present in that file, independently of their local installation state.
…-dependencies Implement new optional dependency semantics. Fixes #361.
Currently, an optional dependency is satisfied once it is available locally. This doesn't allow the user to decide when to use an optional dependency on a per project basis, but rather will always be a per machine decision. The proposed new semantics are to satisfy an optional dependency iff:
dub.selections.jsonfileFor the second option, there will also need to be a way to achieve this using the CLI, maybe simply by doing an explicit
dub upgrade <name of optional dependency>within the project directory.The text was updated successfully, but these errors were encountered: