Update module github.com/prometheus/client_golang to v1.21.0
This MR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| github.com/prometheus/client_golang | require | minor |
v1.19.0 -> v1.21.0
|
Release Notes
prometheus/client_golang (github.com/prometheus/client_golang)
v1.21.0: / 2025-02-19
github.com/prometheus/common to 0.62+ together with client_golang (and depend on the strict, legacy validation for the label names). New common version changes model.NameValidationScheme global variable, which relaxes the validation of label names and metric name, allowing all UTF-8 characters. Typically, this should not break any user, unless your test or usage expects strict certain names to panic/fail on client_golang metric registration, gathering or scrape. In case of problems change model.NameValidationScheme to old model.LegacyValidation value in your project init function.
- [BUGFIX] gocollector: Fix help message for runtime/metric metrics. #1583
- [BUGFIX] prometheus: Fix
Desc.String()method for no labels case. #1687 - [PERF] prometheus: Optimize popular
prometheus.BuildFQNamefunction; now up to 30% faster. #1665 - [PERF] prometheus: Optimize
Inc,AddandObservecumulative metrics; now up to 50% faster under high concurrent contention. #1661 - [CHANGE] Upgrade prometheus/common to 0.62.0 which changes
model.NameValidationSchemeglobal variable. #1712 - [CHANGE] Add support for Go 1.23. #1602
- [FEATURE] process_collector: Add support for Darwin systems. #1600 #1616 #1625 #1675 #1715
- [FEATURE] api: Add ability to invoke
CloseIdleConnectionson api.Client usingapi.Client.(CloseIdler).CloseIdleConnections()casting. #1513 - [FEATURE] promhttp: Add
promhttp.HandlerOpts.EnableOpenMetricsTextCreatedSamplesoption to create OpenMetrics _created lines. Not recommended unless you want to use opt-in Created Timestamp feature. Community works on OpenMetrics 2.0 format that should make those lines obsolete (they increase cardinality significantly). #1408 - [FEATURE] prometheus: Add
NewConstNativeHistogramfunction. #1654
All commits
* Merge release-1.20 to main by @bwplotka in https://github.com/prometheus/client_golang/pull/1582 * gocollector: Tiny fix for help message with runtime/metrics source. by @bwplotka in https://github.com/prometheus/client_golang/pull/1583 * ci: bump dagger to the latest version by @marcosnils in https://github.com/prometheus/client_golang/pull/1588 * Merge release-1.20 back to main by @ArthurSens in https://github.com/prometheus/client_golang/pull/1593 * Update linting by @SuperQ in https://github.com/prometheus/client_golang/pull/1603 * Update supported Go versions by @SuperQ in https://github.com/prometheus/client_golang/pull/1602 * build(deps): bump golang.org/x/sys from 0.22.0 to 0.24.0 by @dependabot in https://github.com/prometheus/client_golang/pull/1611 * build(deps): bump github.com/prometheus/common from 0.55.0 to 0.57.0 by @dependabot in https://github.com/prometheus/client_golang/pull/1612 * changed the name of all variables with min/max name by @parthlaw in https://github.com/prometheus/client_golang/pull/1606 * Update Dagger and build. by @SuperQ in https://github.com/prometheus/client_golang/pull/1610 * build(deps): bump github/codeql-action from 3.25.15 to 3.26.6 in the github-actions group across 1 directory by @dependabot in https://github.com/prometheus/client_golang/pull/1614 * examples: Improved GoCollector example. by @bwplotka in https://github.com/prometheus/client_golang/pull/1589 * Synchronize common files from prometheus/prometheus by @prombot in https://github.com/prometheus/client_golang/pull/1615 * process_collector: fill in most statistics on macOS by @mharbison72 in https://github.com/prometheus/client_golang/pull/1600 *New Contributors
- @parthlaw made their first contribution in https://github.com/prometheus/client_golang/pull/1606
- @mharbison72 made their first contribution in https://github.com/prometheus/client_golang/pull/1600
- @cuisongliu made their first contribution in https://github.com/prometheus/client_golang/pull/1513
- @ying-jeanne made their first contribution in https://github.com/prometheus/client_golang/pull/1626
- @Manask322 made their first contribution in https://github.com/prometheus/client_golang/pull/1657
- @jkroepke made their first contribution in https://github.com/prometheus/client_golang/pull/1665
- @imorph made their first contribution in https://github.com/prometheus/client_golang/pull/1672
- @mmorel-35 made their first contribution in https://github.com/prometheus/client_golang/pull/1676
- @shivanthzen made their first contribution in https://github.com/prometheus/client_golang/pull/1654
- @dashpole made their first contribution in https://github.com/prometheus/client_golang/pull/1699
Full Changelog: https://github.com/prometheus/client_golang/compare/v1.20.5...v1.21.0
v1.20.5: / 2024-10-15
We decided to revert the testutil change that made our util functions less error-prone, but created a lot of work for our downstream users. Apologies for the pain! This revert should not cause any major breaking change, even if you already did the work--unless you depend on the exact error message.
Going forward, we plan to reinforce our release testing strategy [1],[2] and deliver an enhanced testutil package/module with more flexible and safer APIs.
Thanks to @dashpole @dgrisonnet @kakkoyun @ArthurSens @vesari @logicalhan @krajorama @bwplotka who helped in this patch release!
Changelog
[BUGFIX] testutil: Reverted #1424; functions using compareMetricFamilies are (again) only failing if filtered metricNames are in the expected input. #1645
v1.20.4
- [BUGFIX] histograms: Fix a possible data race when appending exemplars vs metrics gather. #1623
v1.20.3
- [BUGFIX] histograms: Fix possible data race when appending exemplars. #1608
v1.20.2
- [BUGFIX] promhttp: Unset Content-Encoding header when data is uncompressed. #1596
v1.20.1
This release contains the critical fix for the issue. Thanks to @geberl, @CubicrootXYZ, @zetaab and @timofurrer for helping us with the investigation!
- [BUGFIX] process-collector: Fixed unregistered descriptor error when using process collector with PedanticRegistry on Linux machines. #1587
v1.20.0
Thanks everyone for contributions!
collectors.NewGoCollector() collector. Given its popular usage, expect your binary to expose two additional metric.
Changes
- [CHANGE]
⚠️ go-collector: Removego_memstat_lookups_totalmetric which was always 0; Go runtime stopped sharing pointer lookup statistics. #1577 - [FEATURE]
⚠️ go-collector: Add 3 default metrics:go_gc_gogc_percent,go_gc_gomemlimit_bytesandgo_sched_gomaxprocs_threadsas those are recommended by the Go team. #1559 - [FEATURE] go-collector: Add more information to all metrics' HELP e.g. the exact
runtime/metricssourcing each metric (if relevant). #1568 #1578 - [FEATURE] testutil: Add CollectAndFormat method. #1503
- [FEATURE] histograms: Add support for exemplars in native histograms. #1471
- [FEATURE] promhttp: Add experimental support for
zstdon scrape, controlled by the requestAccept-Encodingheader. #1496 - [FEATURE] api/v1: Add
WithLimitparameter to all API methods that supports it. #1544 - [FEATURE] prometheus: Add support for created timestamps in constant histograms and constant summaries. #1537
- [FEATURE] process-collectors: Add network usage metrics:
process_network_receive_bytes_totalandprocess_network_transmit_bytes_total. #1555 - [FEATURE] promlint: Add duplicated metric lint rule. #1472
- [BUGFIX] promlint: Relax metric type in name linter rule. #1455
- [BUGFIX] promhttp: Make sure server instrumentation wrapping supports new and future extra responseWriter methods. #1480
- [BUGFIX] testutil: Functions using compareMetricFamilies are now failing if filtered metricNames are not in the input. #1424
All commits
- feat(prometheus/testutil/promlint/validations): refine lintMetricType… by @foehammer127 in https://github.com/prometheus/client_golang/pull/1455
- Bump github.com/prometheus/client_golang from 1.18.0 to 1.19.0 in /examples/middleware by @dependabot in https://github.com/prometheus/client_golang/pull/1457
- Bump github.com/prometheus/client_model from 0.5.0 to 0.6.0 by @dependabot in https://github.com/prometheus/client_golang/pull/1458
- Bump golang.org/x/sys from 0.16.0 to 0.17.0 by @dependabot in https://github.com/prometheus/client_golang/pull/1459
- Bump github.com/prometheus/client_golang from 1.18.0 to 1.19.0 in /tutorial/whatsup by @dependabot in https://github.com/prometheus/client_golang/pull/1461
- Merge Release 1.19 back to main by @ArthurSens in https://github.com/prometheus/client_golang/pull/1462
- Bump the github-actions group with 2 updates by @dependabot in https://github.com/prometheus/client_golang/pull/1456
- Bump google.golang.org/protobuf from 1.32.0 to 1.33.0 by @dependabot in https://github.com/prometheus/client_golang/pull/1466
- Bump google.golang.org/protobuf from 1.32.0 to 1.33.0 in /examples/middleware by @dependabot in https://github.com/prometheus/client_golang/pull/1467
- Bump google.golang.org/protobuf from 1.32.0 to 1.33.0 in /tutorial/whatsup by @dependabot in https://github.com/prometheus/client_golang/pull/1469
- Add LintDuplicateMetric to promlint by @bboreham in https://github.com/prometheus/client_golang/pull/1472
- Auto-update Go Collector Metrics for new Go versions by @SachinSahu431 in https://github.com/prometheus/client_golang/pull/1476
- Implement Unwrap() for responseWriterDelegator by @igor-drozdov in https://github.com/prometheus/client_golang/pull/1480
- Bump golang.org/x/sys from 0.17.0 to 0.18.0 by @dependabot in https://github.com/prometheus/client_golang/pull/1485
- Bump github.com/prometheus/procfs from 0.12.0 to 0.13.0 by @dependabot in https://github.com/prometheus/client_golang/pull/1486
- ci: Remove hardcoded supported Go versions from go.yml by @SachinSahu431 in https://github.com/prometheus/client_golang/pull/1489
- feat: metrics generation workflow by @SachinSahu431 in https://github.com/prometheus/client_golang/pull/1481
- fix: remove redundant go module in middleware example by @majolo in https://github.com/prometheus/client_golang/pull/1492
- chore: Refactor how base metrics are added to Sched metrics by @ArthurSens in https://github.com/prometheus/client_golang/pull/1483
- gocollector: Add regex option to allow collection of debug runtime metrics by @ArthurSens in https://github.com/prometheus/client_golang/pull/1389
- Bump github.com/prometheus/common from 0.48.0 to 0.52.3 by @dependabot in https://github.com/prometheus/client_golang/pull/1498
- chore: fix function name in comment by @oftenoccur in https://github.com/prometheus/client_golang/pull/1497
- build(deps): bump golang.org/x/net from 0.20.0 to 0.23.0 in /tutorial/whatsup by @dependabot in https://github.com/prometheus/client_golang/pull/1501
- build(deps): bump golang.org/x/net from 0.22.0 to 0.23.0 by @dependabot in https://github.com/prometheus/client_golang/pull/1502
- feat(dependency): replace go-spew package by @dongjiang1989 in https://github.com/prometheus/client_golang/pull/1499
- build(deps): bump github.com/prometheus/common from 0.52.3 to 0.53.0 by @dependabot in https://github.com/prometheus/client_golang/pull/1504
- build(deps): bump github.com/cespare/xxhash/v2 from 2.2.0 to 2.3.0 by @dependabot in https://github.com/prometheus/client_golang/pull/1505
- build(deps): bump google.golang.org/protobuf from 1.33.0 to 1.34.0 by @dependabot in https://github.com/prometheus/client_golang/pull/1506
- build(deps): bump golang.org/x/sys from 0.18.0 to 0.19.0 by @dependabot in https://github.com/prometheus/client_golang/pull/1507
- build(deps): bump github.com/prometheus/client_model from 0.6.0 to 0.6.1 by @dependabot in https://github.com/prometheus/client_golang/pull/1508
- build(deps): bump github.com/prometheus/common from 0.48.0 to 0.53.0 in /tutorial/whatsup by @dependabot in https://github.com/prometheus/client_golang/pull/1509
- improved code more clean by @lilijreey in https://github.com/prometheus/client_golang/pull/1511
- build(deps): bump the github-actions group with 3 updates by @dependabot in https://github.com/prometheus/client_golang/pull/1510
- [CI]: Add Concurrency Grouping to GitHub Workflows by @Ishani217 in https://github.com/prometheus/client_golang/pull/1444
- Add CollectAndFormat to testutil, allowing caller to assert as they want to on the exported metric by @jcass8695 in https://github.com/prometheus/client_golang/pull/1503
- testutil compareMetricFamilies: make less error-prone by @leonnicolas in https://github.com/prometheus/client_golang/pull/1424
- improved code more clean use time.IsZero() replace t = time.Time{} by @lilijreey in https://github.com/prometheus/client_golang/pull/1515
- add native histogram exemplar support by @fatsheep9146 in https://github.com/prometheus/client_golang/pull/1471
- Synchronize common files from prometheus/prometheus by @prombot in https://github.com/prometheus/client_golang/pull/1514
- build(deps): bump golang.org/x/sys from 0.19.0 to 0.20.0 by @dependabot in https://github.com/prometheus/client_golang/pull/1523
- build(deps): bump google.golang.org/protobuf from 1.34.0 to 1.34.1 by @dependabot in https://github.com/prometheus/client_golang/pull/1522
- Synchronize common files from prometheus/prometheus by @prombot in https://github.com/prometheus/client_golang/pull/1524
- Add MR template for changelog automation by @SachinSahu431 in https://github.com/prometheus/client_golang/pull/1517
- Auto label MRs by @SachinSahu431 in https://github.com/prometheus/client_golang/pull/1518
- Fix: Auto label MRs #1518 by @SachinSahu431 in https://github.com/prometheus/client_golang/pull/1525
- build(deps): bump github.com/prometheus/procfs from 0.13.0 to 0.15.1 by @dependabot in https://github.com/prometheus/client_golang/pull/1527
- ci: Group all changelog-related CI jobs into single one by @ArthurSens in https://github.com/prometheus/client_golang/pull/1526
- Synchronize common files from prometheus/prometheus by @prombot in https://github.com/prometheus/client_golang/pull/1530
- Remove synchronize trigger from changelog workflow by @SachinSahu431 in https://github.com/prometheus/client_golang/pull/1532
- feat: Support zstd compression by @mrueg in https://github.com/prometheus/client_golang/pull/1496
- Fix golangci-lint config by @SuperQ in https://github.com/prometheus/client_golang/pull/1536
- build(deps): bump github.com/prometheus/client_golang from 1.19.0 to 1.19.1 in /tutorial/whatsup by @dependabot in https://github.com/prometheus/client_golang/pull/1529
- Synchronize common files from prometheus/prometheus by @prombot in https://github.com/prometheus/client_golang/pull/1531
- Cleanup NOTICE file by @SuperQ in https://github.com/prometheus/client_golang/pull/1541
- Remove inlined upstream code by @SuperQ in https://github.com/prometheus/client_golang/pull/1539
- Synchronize common files from prometheus/prometheus by @prombot in https://github.com/prometheus/client_golang/pull/1545
- client: Add Option to provide limit query param for APIs that support it by @abbyssoul in https://github.com/prometheus/client_golang/pull/1544
- Allow creating constant histogram and summary metrics with a created timestamp by @swar8080 in https://github.com/prometheus/client_golang/pull/1537
- Update README.md by @bwplotka in https://github.com/prometheus/client_golang/pull/1556
- Temporarily remove required CI job for changelog. by @bwplotka in https://github.com/prometheus/client_golang/pull/1560
- build(deps): bump github.com/prometheus/common from 0.53.0 to 0.55.0 in /tutorial/whatsup by @dependabot in https://github.com/prometheus/client_golang/pull/1549
- build(deps): bump golang.org/x/sys from 0.20.0 to 0.21.0 by @dependabot in https://github.com/prometheus/client_golang/pull/1552
- build(deps): bump github.com/klauspost/compress from 1.17.8 to 1.17.9 by @dependabot in https://github.com/prometheus/client_golang/pull/1553
- fix: Update Go tests by @SuperQ in https://github.com/prometheus/client_golang/pull/1562
- process_collector: collect received/transmitted bytes by @huwcbjones in https://github.com/prometheus/client_golang/pull/1555
- Synchronize common files from prometheus/prometheus by @prombot in https://github.com/prometheus/client_golang/pull/1561
- chore: Remove half-implemented changelog automation by @ArthurSens in https://github.com/prometheus/client_golang/pull/1564
- build(deps): bump the github-actions group across 1 directory with 3 updates by @dependabot in https://github.com/prometheus/client_golang/pull/1565
- Synchronize common files from prometheus/prometheus by @prombot in https://github.com/prometheus/client_golang/pull/1563
- build(deps): bump google.golang.org/protobuf from 1.34.1 to 1.34.2 by @dependabot in https://github.com/prometheus/client_golang/pull/1551
- deps: Updated to prometheus/common to 0.55 by @bwplotka in https://github.com/prometheus/client_golang/pull/1566
- Synchronize common files from prometheus/prometheus by @prombot in https://github.com/prometheus/client_golang/pull/1567
- tutorials: Renamed tutorial -> tutorials for consistency + fixed tutorial code. by @bwplotka in https://github.com/prometheus/client_golang/pull/1569
- go collector: add default metrics acceptance tests; adding more context to HELP by @bwplotka in https://github.com/prometheus/client_golang/pull/1568
- build(deps): bump golang.org/x/sys from 0.21.0 to 0.22.0 by @dependabot in https://github.com/prometheus/client_golang/pull/1570
- build(deps): bump the github-actions group with 3 updates by @dependabot in https://github.com/prometheus/client_golang/pull/1571
- Synchronize common files from prometheus/prometheus by @prombot in https://github.com/prometheus/client_golang/pull/1572
- ci: daggerize test and lint pipelines by @marcosnils in https://github.com/prometheus/client_golang/pull/1534
- Synchronize common files from prometheus/prometheus by @prombot in https://github.com/prometheus/client_golang/pull/1573
- Add default Go runtime metrics for /gc/gogc:percent, /gc/gomemlimit:bytes, /sched/gomaxprocs:threads by @vesari in https://github.com/prometheus/client_golang/pull/1559
- Synchronize common files from prometheus/prometheus by @prombot in https://github.com/prometheus/client_golang/pull/1576
- Remove go_memstat_lookups_total; added runtime/metrics calculation to memstat metric's help. by @bwplotka in https://github.com/prometheus/client_golang/pull/1577
- gocollector: Attach original runtime/metrics metric name to help. by @bwplotka in https://github.com/prometheus/client_golang/pull/1578
New Contributors
- @foehammer127 made their first contribution in https://github.com/prometheus/client_golang/pull/1455
- @SachinSahu431 made their first contribution in https://github.com/prometheus/client_golang/pull/1476
- @igor-drozdov made their first contribution in https://github.com/prometheus/client_golang/pull/1480
- @majolo made their first contribution in https://github.com/prometheus/client_golang/pull/1492
- @oftenoccur made their first contribution in https://github.com/prometheus/client_golang/pull/1497
- @dongjiang1989 made their first contribution in https://github.com/prometheus/client_golang/pull/1499
- @lilijreey made their first contribution in https://github.com/prometheus/client_golang/pull/1511
- @Ishani217 made their first contribution in https://github.com/prometheus/client_golang/pull/1444
- @jcass8695 made their first contribution in https://github.com/prometheus/client_golang/pull/1503
- @leonnicolas made their first contribution in https://github.com/prometheus/client_golang/pull/1424
- @fatsheep9146 made their first contribution in https://github.com/prometheus/client_golang/pull/1471
- @abbyssoul made their first contribution in https://github.com/prometheus/client_golang/pull/1544
- @swar8080 made their first contribution in https://github.com/prometheus/client_golang/pull/1537
- @huwcbjones made their first contribution in https://github.com/prometheus/client_golang/pull/1555
- @marcosnils made their first contribution in https://github.com/prometheus/client_golang/pull/1534
- @vesari made their first contribution in https://github.com/prometheus/client_golang/pull/1559
Full Changelog: https://github.com/prometheus/client_golang/compare/v1.19.1...v1.20.0
v1.19.1
What's Changed
- Security patches for
golang.org/x/sysandgoogle.golang.org/protobuf
New Contributors
- @lukasauk made their first contribution in https://github.com/prometheus/client_golang/pull/1494
Full Changelog: https://github.com/prometheus/client_golang/compare/v1.19.0...v1.19.1
Configuration
-
If you want to rebase/retry this MR, check this box
This MR has been generated by Renovate Bot.