Skip to content

Replace gopkg.in/yaml.v2 with go.yaml.in/yaml/v2#17151

Merged
aknuds1 merged 5 commits intoprometheus:mainfrom
aknuds1:arve/upgrade-client_golang
Sep 6, 2025
Merged

Replace gopkg.in/yaml.v2 with go.yaml.in/yaml/v2#17151
aknuds1 merged 5 commits intoprometheus:mainfrom
aknuds1:arve/upgrade-client_golang

Conversation

@aknuds1
Copy link
Contributor

@aknuds1 aknuds1 commented Sep 5, 2025

Replace gopkg.in/yaml.v2 with go.yaml.in/yaml/v2, as prometheus/client_golang and prometheus/common have already made the switch. go.yaml.in/yaml/v2 is a drop-in replacement for gopkg.in/yaml.v2, which is no longer maintained.

I'm also upgrading to prometheus/client_golang v1.23.2 and prometheus/common v0.66.1.

Fixes #16415

Does this PR introduce a user-facing change?

NONE

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
@aknuds1 aknuds1 force-pushed the arve/upgrade-client_golang branch 2 times, most recently from 9c66241 to cb19635 Compare September 6, 2025 09:29
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
@aknuds1 aknuds1 force-pushed the arve/upgrade-client_golang branch from cb19635 to 2140ad9 Compare September 6, 2025 09:45
Copy link
Member

@bwplotka bwplotka left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@aknuds1 aknuds1 merged commit 913cc8f into prometheus:main Sep 6, 2025
29 checks passed
Naman-B-Parlecha added a commit to Naman-B-Parlecha/prometheus that referenced this pull request Sep 17, 2025
Signed-off-by: Naman-B-Parlecha <namanparlecha@gmail.com>

feat(histogram): Refactor ConvertNHCBToClassicHistogram and add unit tests

Signed-off-by: Naman-B-Parlecha <namanparlecha@gmail.com>

feat(histogram): Add ConvertNHCBToClassic flag and refactor related types and tests

Signed-off-by: Naman-B-Parlecha <namanparlecha@gmail.com>

Replace gopkg.in/yaml.v2 with go.yaml.in/yaml/v2 (prometheus#17151)

* Replace gopkg.in/yaml.v2 with go.yaml.in/yaml/v2
* Upgrade to client_golang@v1.23.2

---------

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

OTLP to directly write to an interface which can hide storage details (prometheus#16951)

* OTLP writer writes directly to appender

Do not convert to Remote-Write 1.0 protocol. Convert to TSDB Appender interface instead.

For downstream projects that still convert OTLP to something else (e.g. Mimir using
its own RW 1.0+2.0 compatible protocol), introduce a compatibility layer between
OTLP decoding and TSDB Appender. This is the CombinedAppender that hides the
implementation. Name is subject to change.

---------

Signed-off-by: David Ashpole <dashpole@google.com>
Signed-off-by: György Krajcsovits <gyorgy.krajcsovits@grafana.com>
Signed-off-by: George Krajcsovits <krajorama@users.noreply.github.com>
Co-authored-by: David Ashpole <dashpole@google.com>
Co-authored-by: Jesus Vazquez <jesusvazquez@users.noreply.github.com>
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>

fix(textparse/protobuf): metric family name corrupted by NHCB parser (prometheus#17156)

* fix(textparse): implement NHCB parsing in ProtoBuf parser directly

The NHCB conversion does some validation, but we can only return error
from Parser.Next() not Parser.Histogram(). So the conversion needs to
happen in Next().

There are 2 cases:
1. "always_scrape_classic_histograms" is enabled, in which case we
convert after returning the classic series. This is to be consistent
with the PromParser text parser, which collects NHCB while spitting out
classic series; then returns the NHCB.
2. "always_scrape_classic_histograms" is disabled. In which case we never
return the classic series.

Signed-off-by: György Krajcsovits <gyorgy.krajcsovits@grafana.com>

* refactor(textparse): skip classic series instead of adding NHCB around

Do not return the first classic series from the EntryType state,
switch to EntrySeries. This means we need to start the histogram
field state from -3 , not -2.

In EntrySeries, skip classic series if needed.

Signed-off-by: György Krajcsovits <gyorgy.krajcsovits@grafana.com>

* reuse nhcb converter

Signed-off-by: György Krajcsovits <gyorgy.krajcsovits@grafana.com>

* test(textparse/nhcb): test corrupting metric family name

NHCB parse doesn't always copy the metric name from the underlying
parser. When called via HELP, UNIT, the string is directly referenced
which means that the read-ahead of NHCB can corrupt it.

Signed-off-by: György Krajcsovits <gyorgy.krajcsovits@grafana.com>

Handle error gracefully for the `desymbolizeLabels` function in prompb/io/prometheus/write/v2/symbols.go (prometheus#17160)

Signed-off-by: pipiland <user123@Minhs-Macbook.local>

---------

Signed-off-by: pipiland <user123@Minhs-Macbook.local>
Co-authored-by: pipiland <user123@Minhs-Macbook.local>

feat(histogram): Refactor NHCB to classic conversion with enhanced validation and update tests

Signed-off-by: Naman-B-Parlecha <namanparlecha@gmail.com>

feat(histogram): Update NHCB to classic conversion logic and remove tests

Signed-off-by: Naman-B-Parlecha <namanparlecha@gmail.com>

refactor(histogram): Update ConvertNHCBToClassicHistogram

Signed-off-by: Naman-B-Parlecha <namanparlecha@gmail.com>

test cases for new conversion

Signed-off-by: Naman-B-Parlecha <namanparlecha@gmail.com>

refactor(histogram): Simplify label building in ConvertNHCBToClassicHistogram

Signed-off-by: Naman-B-Parlecha <namanparlecha@gmail.com>
@aknuds1 aknuds1 deleted the arve/upgrade-client_golang branch January 22, 2026 12:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Switch from gopkg.in/yaml.*

2 participants