Skip to content

mips: EncodeCounterValue implementation missing for u32? #172

@brocaar

Description

@brocaar

Code that compiles fine for ARMv7 and AMD64, fails when compiling for MIPS (mipsel-unknown-linux-musl):

...
the trait `EncodeCounterValue` is not implemented for `u32`
   |
   = help: the following other types implement trait `EncodeCounterValue`:
             u64
             f64
   = note: required for `prometheus_client::metrics::counter::Counter` to implement `EncodeMetric`
   = note: 1 redundant requirement hidden
...

It looks like that mips targets are using u32 instead of u64 for counter values:

https://github.com/prometheus/client_rust/blob/master/src/metrics/counter.rs#L51

And indeed there is no EncodeCounterValue implementation for u32:

https://github.com/prometheus/client_rust/blob/master/src/encoding.rs#L537

Edit: This issue might apply to other types as well, e.g. Gauge. I have not tested this.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions