Changelog
- 0a1f541 Add signed commits requirement for pull requests (#5277)
- c5455a9 Update golang version to 1.25.12 (#5338)
- b9092a1 chore(deps): bump github.com/grafana/jfr-parser to v0.18.0 (#5355)
- def8afc chore(helm): improve chart description, re-triggering the 2.1.1 release (#5352)
- 8f5e03f chore: Bump renovate baseBranchPatterns before releasing v2.2 (#5376)
- 12a3632 chore: Cleanup no longer used tool (#5357)
- a70c936 chore: Ensure examples have consistent services (#5248)
- d7ad244 chore: bump Helm chart to v2.1.0 (#5267)
- 10446dc chore: bump Helm chart to v2.1.1 (#5346)
- ddd724a chore: enable renovate on release branches (#5282)
- f6e417d chore: fix spelling mistakes (#5294)
- faaa8c5 ci(backport): migrate to grafana-github-actions-go for signed commits (#5320)
- 343959e ci(examples): run all examples for harness changes (#5365)
- 19f8bcc ci(examples): run example tests on same-repo PRs touching examples/ (#5272)
- e896d94 ci(helm): bump update-helm-repo workflow to pick up signed index.yaml commits (#5351)
- af325ae ci(release): create Homebrew formula commits via GitHub API so they are signed (#5347)
- abcc775 docs: Make clear what flags are v1 exclusive (#5308)
- 380aa94 docs: add docs for supported platforms (#5316)
- d34c47c docs: add v2.0.4 release notes (#5268)
- 6b5747d docs: add v2.0.5 release notes (#5283)
- 277dc2f docs: add v2.0.6 release notes (#5343)
- e463d5e docs: add v2.1 release notes (#5266)
- d9cc2e5 docs: add v2.1.1 release notes (#5342)
- 560ae48 docs: document Python SDK fork safety (#5364)
- 8cb642c docs: require signed release tags (#5287)
- 7f2def6 dx: upgrade devcontainer to Go 1.25 and add DinD support (#5288)
- 7edf681 feat(distributor): add push_batch_series histogram (#5305)
- f35082e feat(experimental): support async query execution (#4995)
- ce3edc3 feat(profilecli): add --trace-id to filter query profile samples by trace (#5300)
- 26eb6d4 feat(querier): unify merged profile query formats (#5358)
- 6d16eb9 feat(query): add SymbolRefTable and symbol_refs tree fields to the query API (#5318)
- c37faf2 feat(query): support trace_id_selector in the v2 read path (#5284)
- bbe8169 feat(symbolizer): expose address-level symbol resolution as a public API (#5317)
- a732678 feat: add optional admin HTTP server on separate port (#5191)
- b265cd2 feat: keep totals and labels of sampled-out profiles (#5354)
- 59a02ff feature(ui): Add autocomplete to v2 embedded UI query bar (#5172)
- 24bf180 fix(debuginfo): decline empty build IDs during upload initiation (#5302)
- 62e1c90 fix(debuginfo): improve ListDebugInfo performances for large tenants (#5286)
- 254c688 fix(distributor): bound PushBatch series fan-out with a per-tenant limit (#5306)
- c47a33a fix(examples): repair Django rideshare startup (#5363)
- 3eb7f23 fix(helm): respect metastore raft extraArgs overrides (#5275)
- 0771f81 fix(ingester): return 429 for ingestion-limit rejections on OTLP and /ingest paths (#5372)
- 7820b85 fix(metastore): retain shards with recent data (#5360)
- 5acc2f1 fix(otlp): send all converted profiles in a single PushBatch per export (#5339)
- bff1b6c fix(pprof): treat two nil value types as compatible in ProfileMerge (#5315)
- 6d0f831 fix(query): return trace IDs in span heatmaps (#5353)
- 506c6f3 fix(querybackend): forward and apply span selector in pprof and tree query paths (#5273)
- f156a4f fix(symdb): preserve line-less locations when rewriting partitions without functions (#5337)
- f9fe9a5 fix(tree): add bounds checks to DeserializeNoDict (#5145)
- 4dc429e fix(usagestats): guard MultiCounter/MultiStatistics total against data race (#5303)
- 5f64687 fix: enable metastore retention cleanup by default (#5280)
- 01a56aa fix: enforce tenant header extraction in auth interceptor (#5251)
- 3d08dbf fix: reject non-positive ingest sample rates (#5253)
- 5fa8702 fix: sample rate errors (#5276)
- 80c4d21 helm: add service_name relabel rule to alloy scrape config (#5262)
- e9cfdaf perf(pprof): make language detection deterministic and ~40% faster (#5309)
- 96e53a1 perf(validation): hoist per-label tenant limit lookups in ValidateLabels (#5313)
As always, feedback is more than welcome, feel free to open issues/discussions.
You can reach out to the team using:
Docker Images
docker pull grafana/pyroscope:2.2.0