This repository has been archived by the owner on Dec 4, 2023. It is now read-only.
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix dependency declaration of Prometheus - I ❤️ Cargo and Rust so much!
This is battle between Golang authors and Prometheus authors (probably some others as well). Golang requires semantic versioning, and Prometheus doesn't want submit to those rules: * With Go 1.13 can no longer flag versions as incompatible, if the have a 'go.mod' file in their repository: golang/go#35732 * Dropping the '+incompatible' suffix is not possible, because the module author (Prometheus) would need to add the suffix '/v2' to their module. Otherwise you run into: golang/go#35732 (comment) * Prometheus doesn't care about Golang's idea of versioning and simply ignores it: prometheus/prometheus#6048 (comment) You can still put a commit has into the go.mod file as version, but that gets translated to into a version from the past (for 2.15.2 prometheus this will resolve into 2.3.x or 1.8.x). The solution to all of this insanity is, to declare the version you had in mind in the "requires" section. And then add a mapping entry into the "replace" section, pointing to the actual version, using a commit hash and the "v0.0.0" version.
- Loading branch information