Releases: grafana/pyroscope
v1.15.0
Enhancements
- Metastore auto-join (#4474)
- Bearer token support in profilecli (#4475)
- Helm support for v1/v2 storage (#4417)
- Sample type relabeling in distributor (#4376)
- Stacktrace selector support for SelectMergeStacktracesrequests (#4380)
- Metadata index retention policy (#4148)
- Azure ClientSecretCredential authentication support (#4477)
- Add --max-nodes flag to query profile command in profilecli (#4433)
- Allow to optionally enforce maxNodes through limits (#4436)
- Set querier.max-flamegraph-nodes-max default to 1,048,576 (#4370)
- Annotate sampled profiles (#4375)
- Improve request observability (#4400)
- Serve recording rules from config in tenant-settings (#4299)
- Add block list/inspect to profilecli (#4412)
- Extract signal correlation information from OTEL profiles (#4393)
- Distributor performance improvements: single profile series processing (#4342), new metrics (#4367), multi-stage receive metrics (#4384)
- Performance: Use stacktrace tree for adhoc uploads (#4438)
- Performance: Initialize dataset segment head lazily (#4274)
- Performance: Avoid merging single profiles (#4421)
- Performance: Add searchHint to getSeriesIndex (#4286)
- Reduce memory allocations when rendering diff flamegraphs (#4430)
- Improve distributor sampling rule evaluation (#4347)
Fixes
- Fix panic in query pprof path (#4429)
- Fix panic when handling error in metastore snapshot compaction (#4313)
- Fix JFR: merge EnhancerBySpringCGLIB classes (#4471)
- Fix issue in pprof split when using relabel.LabelDrop(#4365)
- Fix breaking change in ProfileTypes v2 (#4398)
- Fix GetTenantStats reports wrong stats (#4394)
- Fix goroutine leak in compaction-worker (#4409)
- Fix location with empty lines parquet roundtrip (#4407)
- Fix nil check for empty stacktrace filters (#4308)
- Fix revert unintended change in profile merge (#4410)
- Fix vcs.decodeToken can eat an error (#4336)
- Fix Docker ebpf-otel example matches k8s versions (#4386)
- Fix integration test data of partially symbolized profile (#4446)
- Reapply: Handle duplicate validation correctly when sanitizing (#4265)
- Revert: Correct HasFunctions flags for mixed symbolization profiles (#4457)
Documentation
- Update docs and examples for .NET to add LD_LIBRARY_PATH (#4456)
- Add doc for finding URL, password, and user in Cloud Profiles (#4352)
- Update architecture and OS requirements for .NET (#4334)
- Update ebpf supported languages content (#4338)
- Fix typo and update link for GitHub integration (#4374)
- Update ride share tutorial documentation (#4277)
- Mention the dependency on the compactor feature flag (#4302)
- Fix .NET naming (#4289)
Changelog
- c9dd613 Add missing bracket in profile-cli.md (#4369)
- 661762e Adds configuration option to enable external-dns integration and other ingress labeling use cases. (#4402)
- 11065c2 Cherry pick Aleksandar readpath patches (#4404)
- 2a4608e Fix panic in query pprof path (#4429)
- 73a5c80 Fix panic when handling error in metastore snapshot compaction (#4313)
- 0b02657 Improve distributor sampling rule evaluation (#4347)
- 6f8e0d3 Reapply "Fix: Handle duplicate validation correctly when sanitizing (#4238)" (#4265)
- 3b1c0ba Reduce memory allocations when rendering diff flamegraphs (#4430)
- 6fc5713 Remove frontend package typescript-plugin-css-modules to fix the build (#4312)
- 8d39c53 Replaced tags with hashes to prevent Zizmor complaining (#4479)
- 81e0e5f Revert "fix: correct HasFunctions flags for mixed symbolization profiles (#4413)" (#4457)
- 6da51c8 Update github.com/thanos-io/objstore (#4381)
- dec755e Update golang version to 1.23.11 (#4300)
- c67a176 Update golang version to 1.24.6 (#4382)
- a500e5a Update kubernetes.go (#4371)
- 1a30550 Update supported-languages-ebpf.md (#4363)
- 502d716 Update troubleshooting.md (#4364)
- dd0e10a Use larger agents for builds with strong CPU dependency (#4432)
- 037d7fc [DOC] Add doc for finding URL, password, and user in Cloud Profiles (#4352)
- ae56ec6 chore(.idea): add module (#4445)
- 85b4c07 chore(deps): Update OpenTelemetry protocol to 1.8.0 (#4439)
- 2cf80dd chore(deps): bump form-data (#4309)
- 86247e6 chore(deps): bump form-data from 4.0.2 to 4.0.4 (#4310)
- c1b2ce6 chore(deps): bump github.com/go-viper/mapstructure/v2 (#4319)
- cd02076 chore(deps): bump github.com/go-viper/mapstructure/v2 (#4387)
- 80b19cc chore(deps): bump node (#4460)
- 624ebc1 chore(deps): bump sinatra and thin in /examples/language-sdk-instrumentation/ruby/rideshare (#4306)
- 630dfe0 chore(deps): bump sinatra, thin and pyroscope-otel (#4279)
- 330f7f3 chore(deps): bump the github-actions group across 1 directory with 11 updates (#4462)
- ed432ba chore(deps): bump the github-actions group across 1 directory with 4 updates (#4478)
- 6b354c3 chore(deps): bump tmp from 0.2.1 to 0.2.4 (#4357)
- 0f75877 chore(docs): update docs and examples for .NET to add LD_LIBRARY_PATH… (#4456)
- 43b9032 chore(ebpf): remove ebpf module (#4324)
- f91bdd3 chore(examples): update examples (#4296)
- 88b2152 chore(examples): update examples (#4305)
- b12fb97 chore(examples): update examples (#4328)
- f9c4f2c chore(examples): update examples (#4330)
- 0061130 chore(examples): update examples (#4395)
- 9fb731f chore(examples): update examples (#4443)
- 6980023 chore(examples): update examples (#4468)
- 090f5f5 chore(jfr-parser): bump dependency (#4325)
- 0920249 chore(v2): refactor experimentpackage (#4281)
- 15478b3 chore: Add profilecli command to delete v1 blocks (#4320)
- 33e8239 chore: Add release notes and update helm release (#4396)
- 5ed601a chore: Add value for priorityClassName to helm chart (#4317)
- f7aba2a chore: Allow to configure subPaths for metastore and shared (#4476)
- 37c237c chore: Clean up collection rules store (#4341)
- a9646af chore: Ensure tenant gets logged during ingest validation errors (#4304)
- b201c2c chore: Fixes reference in grafana-alloy/ebp/setup-linux.md (#4362)
- afb0309 chore: Handle EOF as part of bidi streaming (#4428)
- c2e798e chore: Improve tracing visibility into distributor (#4361)
- c67b86e chore: Log details about each profile processed (#4401)
- 16eebf2 chore: Prepare for 1.14 release (#4269)
- 21b137e chore: Reactivate backport workflow action (#4343)
- 13a12bc chore: Reactivate update-contributors workflow (#4344)
- 21136ba chore: Remove oauth2-proxy (#4345)
- ddd5ca6 chore: Remove transporttrie.Merge (#4405)
- d41599a chore: Update cypress to latest version (#4346)
- 2b3ece0 chore: Update embedded grafana's verisons (#4297)
- 593479c chore: Update envVar configuration to support custom envs (#4272)
- 581575e chore: Update feature flags to show that functions are supported (#4288)
- 85c16f5 chore: Update golangci-lint and fix issues (#4303)
- 6d0f426 chore: Update prometheus dependency to 3.5.0 (#4301)
- 98427fd chore: Updated workflows to use self-hosted agents (#4427)
- ce9fde2 chore: Validate recording rule's metric name (expect prefix) (#4406)
- 2b36123 chore: add V2 integration test with symbolization support (#4444)
- ef21fb2 chore: add dependabot config (#4455)
- 76a701b chore: add ingest request body size limit (#4278)
- 5abd159 chore: add pyroscope_rule_id label to recording rules exported metrics (#4411)
- b1614a0 chore: cleanup og (#4420)
- 6a4ebf3 chore: include rule id in pyroscope_metrics_exporter_series_sent_total (#4454)
- 710c973 chore: log query params (#4294)
- 9b7d9db...
v1.14.1
Changelog
As always, feedbacks are more than welcome, feel free to open issues/discussions.
You can reach out to the team using:
Docker Images
  docker pull docker.io/grafana/pyroscope:1.14.1v1.13.6
Changelog
As always, feedbacks are more than welcome, feel free to open issues/discussions.
You can reach out to the team using:
Docker Images
  docker pull docker.io/grafana/pyroscope:1.13.6v1.14.0
Enhancements
- Profile throttling (#3956)
- Improve performance of *stacktraceTree.insert(#4033)
- Improve performance of *deduplicatingSlice.ingest(#4037)
- Symbolization support (#4093, #3799, #4173, #4259)
- Dynamically named usage groups (#4210, #4231)
- Mark storage.prefix as non experimental (#4086)
Fixes
- Validate query range that start <= end (#4229)
- Fix goroutine leaks (#4239, #4237)
- Fix panic in vcs getCommit when author empty (#4152)
- Storage prefix validation (#4044)
- Drop malformed locations (#4051)
- Fix object download error branch panic (#4102)
- Separate query and block context (#4122)
Documentation
- Add documentation about usage stats (#4104)
- Add OSS documentation on the Source Code GitHub integration (#4129)
- Add profiling instructions for MacOS (#4202)
Changelog
- 70a2dbd 397 Add doc for anonymous usage stats (#4104)
- dbdcd4e Add OSS documentation on the Source Code GitHub integration (#4129)
- 7514fb9 Add a default zizmor config (#4196)
- 3ff7247 Annotate throttled profiles (#3956)
- 5746aa8 Bump OTLP to v1.7.0and handle malformed OTLP profiles (#4226)
- 837db07 Bump go.opentelemetry.io/proto/otlptov1.7.0(#4212)
- 7021209 CODEOWNERS: add @alsoba13 to the write path (#4266)
- bcb4af2 Compare *stacktraceTree.insertagainst different initial sizes (#4033)
- d410cdf Fix: Handle duplicate validation correctly when sanitizing (#4238)
- 628930a Fix: Validate query range that start <= end (#4229)
- 8d06da7 Ignore cursor directory (#4258)
- fae1aa7 Improve *deduplicatingSlice.ingestperformance (#4037)
- a5dca66 Improve override name (#4247)
- 883d2a4 Merge middlewares the other way round (#4249)
- 81af7c6 Pin minio/mc cli (#4223)
- 08f3796 Redirect tag pushing error output (#4155)
- 4be952b Refactor github actions (#4157)
- 1f7ec2d Refactor workflows to streamline Go version update (#4101)
- 8f85605 Rename test workflow to ci (#4158)
- b31351a Revert "Bump go.opentelemetry.io/proto/otlptov1.7.0(#4212)" (#4218)
- 6cdda61 Revert "Fix: Handle duplicate validation correctly when sanitizing (#4238)" (#4264)
- 96974a7 Revert "Refactor workflows to streamline Go version update (#4101)" (#4103)
- d3139f6 Revert "chore: Update offsets for python 3.13.0 (stable)"
- 2869980 Revert "feat: add unsymbolized label on ingest path (#4147)" (#4166)
- 1f811a0 Revert "perf(v2): static parquet page buffer size (#4208)" (#4221)
- ac00ede Update make docsprocedure (#4082)
- 8ae71f3 Update golang version to 1.23.10 (#4245)
- 9f18d8f Update golang version to 1.23.7 (#4058)
- b0a4a4f Update golang version to 1.23.8 (#4106)
- f12fce4 Update helm chart version
- 7440ed7 Update helm release workflow (#4182)
- e6afa39 Update profile-cli.md (#4188)
- e7da795 [chore] Delete redundant test with network dependency (#4217)
- db0463f chore(deps): bump @babel/runtime from 7.22.6 to 7.26.10 (#3998)
- 61f51d4 chore(deps): bump github.com/golang-jwt/jwt/v5 from 5.2.1 to 5.2.2 (#4039)
- 6364f6c chore(deps): bump golang.org/x/net in /examples/tracing/golang-push (#4114)
- 2b8e08a chore(deps): bump rack (#4190)
- bd506ae chore(deps): bump rack from 2.2.13 to 2.2.14 in /examples/tracing/ruby (#4187)
- 1f08cf6 chore(examples): maybe fix examples cron (#4175)
- 7d1a0cd chore(examples): run examples cron every 8h (#4176)
- bd5490a chore(examples): update examples (#4043)
- 664cc9d chore(examples): update examples (#4055)
- b8ee591 chore(examples): update examples (#4071)
- c6af8a4 chore(examples): update examples (#4084)
- 7ba226e chore(examples): update examples (#4130)
- ae78fa3 chore(examples): update examples (#4134)
- 285c661 chore(examples): update examples (#4138)
- a3e705f chore(examples): update examples (#4179)
- d3928fb chore(examples): update examples (#4181)
- 95faeb6 chore(examples): update examples (#4197)
- 8c3737d chore(examples): update examples (#4225)
- 078ab1b chore(examples): update java examples (#4091)
- 95f4096 chore(helm): extra volume claim templates (#4132)
- 3793765 chore(v2): add option to specify raft fsm snapshot directory (#4123)
- b686397 chore(v2): add segment-writer metastore client options (#4081)
- 40b8440 chore(v2): add support for the ingestion_tenant_shard_size limit (#4131)
- 11425fa chore(v2): lighten metadata query test suite (#4073)
- 21a7700 chore(v2): lint /experimental (#4146)
- 2f7e308 chore(v2): make boltdb compaction configurable (#4105)
- 575f82a chore(v2): metrics exporter writen bytes metric (#4068)
- a1578c0 chore(v2): skip query-frontend initialization if it is not used (#4120)
- 676e7d6 chore: Add @bryanhuhta to CODEOWNERS (#4268)
- e788b9e chore: Add additional test for QueryMetadata (#4172)
- e56a274 chore: Add integration tests about tenant isolation (#4183)
- fc683c6 chore: Add release 1.13.1 to helm (#4062)
- da00f7b chore: Add v2 support for micro services integration test (#4194)
- 4ce793b chore: Bump Helm chart to v1.13.4 (#4191)
- 3ae47b4 chore: CI bring back deploy on main (#4171)
- 3b51386 chore: Divide up go packages to CODEOWNERS (#4242)
- 03f76ab chore: Enable helm release workflow and tag v1.31.2 (#4177)
- 8047e1b chore: Github actions weekly, remove actions: writefor git tag (#4159)
- 7b55fd9 chore: Improve observability of the ingest handler (#4228)
- 1f26314 chore: Refactor API handler registration (#4244)
- 77bd4b9 chore: Restrict network-dependent helper to integration tests (#4250)
- 9fdea3b chore: Revisit github action workflows (#4150)
- 93c7955 chore: Update @pyroscope/node-js (#4049)
- cd85f97 chore: Update esbuild, micromatch and @babel/helpers (#4054)
- 82122f7 chore: Update offsets for python 3.13.0 (stable)
- 5d502a1 chore: Update offsets for python 3.13.0 (stable) (#4256)
- c1a9c19 chore: Update prometheus to version v3 (#4094)
- 06df61f chore: Upgrade prismjs in old frontend (#4053)
- e80a3e4 chore: Use correct registry for rideshare images (#4088)
- 52e393f chore: Use in-memory connection for scheduler tests (#4233)
- 11b5729 chore: Use in-memory network connection for a gzip test (#4234)
- 701f887 chore: Use in-memory network connection for metastore client tests (#4235)
- 21e6e66 chore: add Lidia binary format module (#4093)
- 06bcfc6 chore: add korniltsev to codeowners (#4267)
- 423b76e chore: add v2 integration tests (#4168)
- 8d83761 chore: bump helm chart to v1.13.0 (#4041)
- 2a5a721 chore: mark GCS HTTP options advanced (#4007)
- bb8d879 chore: optimize metrics for discarded data in distributor (#4248)
- 1a6cdc3 chore: redirect stderr of git commands with gh token to /dev/null for consistency (#4167)
- 33cabd1 chore: remove og/.github (#4154)
- ea465d9 chore: rm og/go.{mod,sum} og/scripts (#4118)
- f93408d chore: update Java OTEL agent version in tracing example (#4189)
- df35b18...
v1.13.5
Changelog
- 73ae7cf Update golang version to 1.23.10 (#4245)
- 6b1bc00 chore: bump golang.org/x/net to v0.38.0 to address CVE-2025-22872
As always, feedbacks are more than welcome, feel free to open issues/discussions.
You can reach out to the team using:
Docker Images
  docker pull docker.io/grafana/pyroscope:1.13.5v1.13.4
Fixes
- Fix trace-profile correlation for newer versions of the Java SDKs (#4091)
Changelog
- 67a499c Redirect tag pushing error output (#4155)
- 1ecb123 Refactor github actions (#4157)
- 07b85af Rename test workflow to ci (#4158)
- 912968b Update helm release workflow (#4182)
- 0a1507e chore(examples): maybe fix examples cron (#4175)
- 483697c chore(examples): run examples cron every 8h (#4176)
- c223be2 chore(examples): update java examples (#4091)
- aa0e531 chore: Bump Helm chart to v1.13.4
- ea3ffea chore: CI bring back deploy on main (#4171)
- 1f5c2aa chore: Enable helm release workflow and tag v1.31.2 (#4177)
- 3221d7e chore: Github actions weekly, remove actions: writefor git tag (#4159)
- fb2aba4 chore: Revisit github action workflows (#4150)
- fd3cc92 chore: redirect stderr of git commands with gh token to /dev/null for consistency (#4167)
- b2ae922 doc: Update release notes for v1.13.2
- 9ea1169 reenable release workflow (#4161)
- bf9c5fa reenable some more workflows (#4162)
As always, feedbacks are more than welcome, feel free to open issues/discussions.
You can reach out to the team using:
Docker Images
  docker pull docker.io/grafana/pyroscope:1.13.4v1.13.2
Changelog
As always, feedbacks are more than welcome, feel free to open issues/discussions.
You can reach out to the team using:
Docker Images
  docker pull docker.io/grafana/pyroscope:1.13.2v1.12.2
Changelog
As always, feedbacks are more than welcome, feel free to open issues/discussions.
You can reach out to the team using:
Docker Images
  docker pull docker.io/grafana/pyroscope:1.12.2v1.13.1
Release Notes for Pyroscope 1.13.1
Fixes
Changelog
- 4797950 Update golang version to 1.23.7 (#4058) (#4060)
- 1ad0339 chore(deps): bump @babel/runtime from 7.22.6 to 7.26.10 (#3998)
- 6e69d91 chore(deps): bump github.com/golang-jwt/jwt/v5 from 5.2.1 to 5.2.2 (#4039)
- 74994bd chore: Update @pyroscope/node-js (#4049)
- 1a2ae21 chore: Update esbuild, micromatch and @babel/helpers (#4054)
- 34c22e4 chore: Upgrade prismjs in old frontend (#4053)
- f1b77e2 fix: Storage prefix validation (#4044) (#4048)
- 4997233 fix: Update minio-go to fix bug in AWS STS auth (#4056) (#4059)
As always, feedbacks are more than welcome, feel free to open issues/discussions.
You can reach out to the team using:
Docker Images
  docker pull docker.io/grafana/pyroscope:1.13.1v1.12.1
Release Notes for Pyroscope 1.12.1
Fixes
- Storage prefix validation (#4044)
Changes
- Update to golang 1.23.7 (necessary for a decendency upgrade)
Changelog
- 8da7ea8 Set GRAFANA_VERSION in front matter (#3971) (#3978)
- b867ea8 Update golang version to 1.23.7
- 2fe3645 Update receive_profiles.md (#4001) (#4021)
- a52cda4 [v1.12.x] Rename Explore Apps to App Drilldown (#3937)
- b25e007 [v1.12] Remove relref shortcodes (#3994)
- b8087eb bump cypress to 13.0.0 (#4034)
- 9b0f21b chore(deps): bump @babel/runtime from 7.22.6 to 7.26.10 (#3998)
- 29cdbf9 chore(deps): bump dompurify from 3.2.3 to 3.2.4 (#3932)
- b4588fb chore(deps): bump github.com/golang-jwt/jwt/v5 from 5.2.1 to 5.2.2 (#4039)
- b0111c1 chore(deps): bump serialize-javascript from 6.0.1 to 6.0.2 (#3911)
- 2b0e4b4 chore(npm): Remove unused dependcy size-limit (#3928)
- 9eea742 chore: Update @pyroscope/node-js (#4049)
- 935773b chore: Update esbuild, micromatch and @babel/helpers
- 3756344 chore: Upgrade prismjs in old frontend (#4053)
- 2ae332e chore: address CVE-2024-53382 (#4031)
- 501c5d4 chore: bump golang.org/x/net to v0.36.0 to address CVE-2025-22870 (#4035)
- 35d8f3d doc: fix configure-disk-storage.md default -pyroscopedb.max-block-duration value (#4023) (#4027)
- 1fb5fe3 docs: Add v1.12 release notes (#3845) (#3846)
- f3b9f5b docs: add missing Java profiling options (#3850) (#3851)
- f3a8809 docs: improve nodejs collectCpuTime option description (#3912) (#3913)
- 2aced0f docs: remove otel support misleading block (#3864) (#3866)
- 8e23bb9 fix pyroscope.java kubernetes example (#4022) (#4025)
- 445c20d fix: Storage prefix validation (#4044) (#4047)
As always, feedbacks are more than welcome, feel free to open issues/discussions.
You can reach out to the team using:
Docker Images
  docker pull docker.io/grafana/pyroscope:1.12.1