give thorough examples of all different dependency syntaxes
just a version
"*" version
~>a.b.c
~>a.b
>=a, >=a <b, <b
~gitbranch (discouraged because of it not updating)
version + optional (also link to effects on Have_ version identifiers)
version + optional + default=false
path-based dependency
note how this is best used in sub-packages, avoid going outside of repository bounds for public projects
git repository based
show how dflags (and in the future other build options) can be applied to dependencies
tell about how dub.selections.json affects them, link to DUB Guide/selections
tell about how dub add-path affects them
tell about how dub add-override affects them
tell about how dub add-local affects them
(one of these three above here is going to be obsolete, need to search through the dub github again to check which one, or ask @Geod24)
link to repositories page, mention how maven can be used as format and registry
describe how dependency resolution / version resolution takes place (dub upgrade, dub build with missing dependencies)
mention that currently per-configuration dependencies are not supported / are always fetched, even if not using the configuration, because of the selections file (which will require new syntax)
mention how Have_xyz naming works
See also: #55
@Geod24
Overrides are deprecated.
I also would not document ~branch, we want to get rid of it, it's better to have support in the git repository anyway.
"*"
version~>a.b.c
~>a.b
>=a
,>=a <b
,<b
~gitbranch
(discouraged because of it not updating)dub add-path
affects themdub add-override
affects themdub add-local
affects themHave_xyz
naming worksSee also: #55
@Geod24
Overrides are deprecated.
I also would not document
~branch
, we want to get rid of it, it's better to have support in the git repository anyway.