Dependency version ranges and protocols