As it is now, it simply uses the last gathered value, which is the one from the source with the highest hierarchy/level.
We should validate all gathered values, and choose the best one according to the validation result, or the last gathered one, if there are multiple best ones.
NOTE: For this we also want to have differently graded sub-optimal values (yet to be implemented). Think for example of the Version property, where "0.1.0-12-g37f98ea" should be better then "37f98ea" alone, even though both are not optimal.
... or in this case, we should maybe make the first one optimal, as we do not want "0.1.0" to be preferred over "0.1.0-12-g37f98ea", as it is most likely less accurate.
As it is now, it simply uses the last gathered value, which is the one from the source with the highest hierarchy/level.
We should validate all gathered values, and choose the best one according to the validation result, or the last gathered one, if there are multiple best ones.
NOTE: For this we also want to have differently graded sub-optimal values (yet to be implemented). Think for example of the Version property, where "0.1.0-12-g37f98ea" should be better then "37f98ea" alone, even though both are not optimal.
... or in this case, we should maybe make the first one optimal, as we do not want "0.1.0" to be preferred over "0.1.0-12-g37f98ea", as it is most likely less accurate.