Skip to content

Releases: prometheus/client_golang

v1.20.5 / 2024-10-15

15 Oct 10:05
48e12a1
Compare
Choose a tag to compare

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

17 Sep 08:01
05fcde9
Compare
Choose a tag to compare
  • [BUGFIX] histograms: Fix a possible data race when appending exemplars vs metrics gather. #1623

v1.20.3

05 Sep 12:31
ef2f87e
Compare
Choose a tag to compare
  • [BUGFIX] histograms: Fix possible data race when appending exemplars. #1608

v1.20.2

23 Aug 19:10
67121dc
Compare
Choose a tag to compare
  • [BUGFIX] promhttp: Unset Content-Encoding header when data is uncompressed. #1596

v1.20.1

20 Aug 11:47
2254d6c
Compare
Choose a tag to compare

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

14 Aug 14:16
73b811c
Compare
Choose a tag to compare

Thanks everyone for contributions!

⚠️ In this release we remove one (broken anyway, given Go runtime changes) metric and add three new (representing GOGC, GOMEMLIMIT and GOMAXPROCS flags) to the default collectors.NewGoCollector() collector. Given its popular usage, expect your binary to expose two additional metric.

Changes

  • [CHANGE] ⚠️ go-collector: Remove go_memstat_lookups_total metric 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_bytes and go_sched_gomaxprocs_threads as those are recommended by the Go team. #1559
  • [FEATURE] go-collector: Add more information to all metrics' HELP e.g. the exact runtime/metrics sourcing 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 zstd on scrape, controlled by the request Accept-Encoding header. #1496
  • [FEATURE] api/v1: Add WithLimit parameter 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_total and process_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 #1455
  • Bump github.com/prometheus/client_golang from 1.18.0 to 1.19.0 in /examples/middleware by @dependabot in #1457
  • Bump github.com/prometheus/client_model from 0.5.0 to 0.6.0 by @dependabot in #1458
  • Bump golang.org/x/sys from 0.16.0 to 0.17.0 by @dependabot in #1459
  • Bump github.com/prometheus/client_golang from 1.18.0 to 1.19.0 in /tutorial/whatsup by @dependabot in #1461
  • Merge Release 1.19 back to main by @ArthurSens in #1462
  • Bump the github-actions group with 2 updates by @dependabot in #1456
  • Bump google.golang.org/protobuf from 1.32.0 to 1.33.0 by @dependabot in #1466
  • Bump google.golang.org/protobuf from 1.32.0 to 1.33.0 in /examples/middleware by @dependabot in #1467
  • Bump google.golang.org/protobuf from 1.32.0 to 1.33.0 in /tutorial/whatsup by @dependabot in #1469
  • Add LintDuplicateMetric to promlint by @bboreham in #1472
  • Auto-update Go Collector Metrics for new Go versions by @SachinSahu431 in #1476
  • Implement Unwrap() for responseWriterDelegator by @igor-drozdov in #1480
  • Bump golang.org/x/sys from 0.17.0 to 0.18.0 by @dependabot in #1485
  • Bump github.com/prometheus/procfs from 0.12.0 to 0.13.0 by @dependabot in #1486
  • ci: Remove hardcoded supported Go versions from go.yml by @SachinSahu431 in #1489
  • feat: metrics generation workflow by @SachinSahu431 in #1481
  • fix: remove redundant go module in middleware example by @majolo in #1492
  • chore: Refactor how base metrics are added to Sched metrics by @ArthurSens in #1483
  • gocollector: Add regex option to allow collection of debug runtime metrics by @ArthurSens in #1389
  • Bump github.com/prometheus/common from 0.48.0 to 0.52.3 by @dependabot in #1498
  • chore: fix function name in comment by @oftenoccur in #1497
  • build(deps): bump golang.org/x/net from 0.20.0 to 0.23.0 in /tutorial/whatsup by @dependabot in #1501
  • build(deps): bump golang.org/x/net from 0.22.0 to 0.23.0 by @dependabot in #1502
  • feat(dependency): replace go-spew package by @dongjiang1989 in #1499
  • build(deps): bump github.com/prometheus/common from 0.52.3 to 0.53.0 by @dependabot in #1504
  • build(deps): bump github.com/cespare/xxhash/v2 from 2.2.0 to 2.3.0 by @dependabot in #1505
  • build(deps): bump google.golang.org/protobuf from 1.33.0 to 1.34.0 by @dependabot in #1506
  • build(deps): bump golang.org/x/sys from 0.18.0 to 0.19.0 by @dependabot in #1507
  • build(deps): bump github.com/prometheus/client_model from 0.6.0 to 0.6.1 by @dependabot in #1508
  • build(deps): bump github.com/prometheus/common from 0.48.0 to 0.53.0 in /tutorial/whatsup by @dependabot in #1509
  • improved code more clean by @lilijreey in #1511
  • build(deps): bump the github-actions group with 3 updates by @dependabot in #1510
  • [CI]: Add Concurrency Grouping to GitHub Workflows by @Ishani217 in #1444
  • Add CollectAndFormat to testutil, allowing caller to assert as they want to on the exported metric by @jcass8695 in #1503
  • testutil compareMetricFamilies: make less error-prone by @leonnicolas in #1424
  • improved code more clean use time.IsZero() replace t = time.Time{} by @lilijreey in #1515
  • add native histogram exemplar support by @fatsheep9146 in #1471
  • Synchronize common files from prometheus/prometheus by @prombot in #1514
  • build(deps): bump golang.org/x/sys from 0.19.0 to 0.20.0 by @dependabot in #1523
  • build(deps): bump google.golang.org/protobuf from 1.34.0 to 1.34.1 by @dependabot in #1522
  • Synchronize common files from prometheus/prometheus by @prombot in #1524
  • Add PR template for changelog automation by @SachinSahu431 in #1517
  • Auto label PRs by @SachinSahu431 in #1518
  • Fix: Auto label PRs #1518 by @SachinSahu431 in #1525
  • build(deps): bump github.com/prometheus/procfs from 0.13.0 to 0.15.1 by @dependabot in #1527
  • ci: Group all changelog-related CI jobs into single one by @ArthurSens in #1526
  • Synchronize common files from prometheus/prometheus by @prombot in #1530
  • Remove synchronize trigger from changelog workflow by @SachinSahu431 in #1532
  • feat: Support zstd compression by @mrueg in #1496
  • Fix golangci-lint config by @SuperQ in #1536
  • build(deps): bump github.com/prometheus/client_golang from 1.19.0 to 1.19.1 in /tutorial/whatsup by @dependabot in #1529
  • Synchronize common files from prometheus/prometheus by @prombot in #1531
  • Cleanup NOTICE file by @SuperQ in #1541
  • Remove inlined upstream code by @SuperQ in #1539
  • Synchronize common files from prometheus/prometheus by @prombot in #1545
  • client: Add Option to provide limit query param for APIs that support it by @abbyssoul in #1544
  • Allow creating constant histogram and summary metrics with a created timestamp by @swar8080 in #1537
  • Update README.md by @bwplotka in #1556
  • Temporarily remove required CI job for changelog. by @bwplotka in #1560
  • build(deps): bump github.com/prometheus/common from 0.53.0 to 0.55.0 in /tutorial/whatsup by @dependabot in #1549
  • build(deps): bump golang.org/x/sys from 0.20.0 to 0.21.0 by @dependabot in #1552
  • build(deps): bump github.com/kl...
Read more

v1.19.1

09 May 12:01
6e3f4b1
Compare
Choose a tag to compare

What's Changed

  • Security patches for golang.org/x/sys and google.golang.org/protobuf

New Contributors

Full Changelog: v1.19.0...v1.19.1

v1.19.0

27 Feb 18:44
77d4003
Compare
Choose a tag to compare

What's Changed

The module prometheus/common v0.48.0 introduced an incompatibility when used together with client_golang (See #1448 for more details). If your project uses client_golang and you want to use prometheus/common v0.48.0 or higher, please update client_golang to v1.19.0.

  • [CHANGE] Minimum required go version is now 1.20 (we also test client_golang against new 1.22 version). #1445 #1449
  • [FEATURE] collectors: Add version collector. #1422 #1427

New Contributors

Full Changelog: v1.18.0...v1.19.0

v1.18.0

27 Dec 23:13
Compare
Choose a tag to compare

What's Changed

  • [FEATURE] promlint: Allow creation of custom metric validations. #1311
  • [FEATURE] Go programs using client_golang can be built in wasip1 OS. #1350
  • [BUGFIX] histograms: Add timer to reset ASAP after bucket limiting has happened. #1367
  • [BUGFIX] testutil: Fix comparison of metrics with empty Help strings. #1378
  • [ENHANCEMENT] Improved performance of MetricVec.WithLabelValues(...). #1360

New Contributors

Full Changelog: v1.17.0...v1.18.0

v1.17.0

27 Sep 12:52
fa1408e
Compare
Choose a tag to compare

What's Changed

  • [CHANGE] Minimum required go version is now 1.19 (we also test client_golang against new 1.21 version). #1325
  • [FEATURE] Add support for Created Timestamps in Counters, Summaries and Historams. #1313
  • [ENHANCEMENT] Enable detection of a native histogram without observations. #1314
Commits
  • Merge v1.16.0 to main by @bwplotka in #1293
  • Synchronize common files from prometheus/prometheus by @prombot in #1297
  • ci: define minimal permissions to GitHub workflows by @diogoteles08 in #1295
  • Do not allocate memory when there's no constraints by @Okhoshi in #1296
  • Bump golang.org/x/sys from 0.8.0 to 0.9.0 by @dependabot in #1306
  • Bump google.golang.org/grpc from 1.45.0 to 1.53.0 in /tutorial/whatsup by @dependabot in #1307
  • histogram: Enable detection of a native histogram without observations by @beorn7 in #1314
  • Bump github.com/prometheus/procfs from 0.10.1 to 0.11.0 by @dependabot in #1305
  • Synchronize common files from prometheus/prometheus by @prombot in #1302
  • Fix data-race in metric without code and method but with WithLabelFromCtx by @tigrato in #1318
  • Add missing tick "`" in README by @ZiViZiViZ in #1321
  • Bump golang.org/x/sys from 0.9.0 to 0.10.0 by @dependabot in #1320
  • Bump github.com/prometheus/procfs from 0.11.0 to 0.11.1 by @dependabot in #1319
  • docs: trivial grammar fixes to improve readability in promauto Godoc by @sengi in #1322
  • Add Go 1.21 support by @kakkoyun in #1325
  • Bump client_model by @ArthurSens in #1323
  • histogram docs: Fixed minor nit. by @bwplotka in #1324
  • Update building by @SuperQ in #1326
  • Bump golang.org/x/sys from 0.10.0 to 0.11.0 by @dependabot in #1331
  • Bump github.com/prometheus/client_golang from 1.15.1-0.20230416215738-0963f595c689 to 1.16.0 in /tutorial/whatsup by @dependabot in #1329
  • Bump github.com/prometheus/client_golang from 1.13.1 to 1.16.0 in /examples/middleware by @dependabot in #1328
  • Bump github.com/prometheus/common from 0.42.0 to 0.44.0 by @dependabot in #1284
  • Bump github.com/prometheus/common from 0.42.0 to 0.44.0 in /tutorial/whatsup by @dependabot in #1330
  • Bump google.golang.org/protobuf from 1.30.0 to 1.31.0 by @dependabot in #1304
  • Synchronize common files from prometheus/prometheus by @prombot in #1332
  • Synchronize common files from prometheus/prometheus by @prombot in #1338
  • Cleanup golangci-lint errcheck by @SuperQ in #1339
  • Add go_godebug_non_default_behavior_tlsmaxrsasize_events_total by @alexandear in #1348
  • Extend Counters, Summaries and Histograms with creation timestamp by @ArthurSens in #1313
  • Fix typos in comments, tests, and errors by @alexandear in #1346
  • Deprecated comment should begin with "Deprecated:" by @alexandear in #1347
  • Add changelog entry for 1.17 by @ArthurSens in #1352

New Contributors

Full Changelog: v1.16.0...v1.17.0