All dependency types can have `version` constraints... they are not used for picking a different git revision or different path :D But they will produce an solver conflict..