Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1332 commits
Select commit Hold shift + click to select a range
ffd0e1b
OTLP: Extend v1.AnyValue possible types in stringValueFromAnyValue (#…
AntoxaBarin Apr 6, 2026
d8ee7ad
test(retry): use synctest for deterministic hedging tests (#4975)
simonswine Apr 7, 2026
4a43a85
Add release notes for v1.20 (#4996)
marcsanmi Apr 7, 2026
741073e
chore(deps): update dependency vite to v8.0.5 [security] (#4994)
renovate-sh-app[bot] Apr 7, 2026
80d8cbe
chore(deps): update module github.com/go-jose/go-jose/v4 to v4.1.4 [s…
renovate-sh-app[bot] Apr 8, 2026
9dc65a8
chore(deps): bump rack-session in /examples/tracing/ruby (#5011)
dependabot[bot] Apr 8, 2026
c4cff3a
chore(deps): bump rack-session (#5003)
dependabot[bot] Apr 8, 2026
1ecd170
chore(deps): bump lodash from 4.17.23 to 4.18.1 in /ui (#4974)
dependabot[bot] Apr 8, 2026
fa655d4
chore: replace broken husky pre-commit hook with UI linter (#5000)
korniltsev-grafanista Apr 8, 2026
f82444b
ci: split integration tests into a separate CI job (#5009)
korniltsev-grafanista-yolo-vibecoder239 Apr 8, 2026
ad88b7e
docs: add security patch check to release process (#5012)
korniltsev-grafanista Apr 8, 2026
c7fe25e
docs: add v1.19.2 release notes (#5008)
korniltsev-grafanista Apr 8, 2026
865dfe3
docs: add v1.20.1 and v1.20.2 release notes (#5006)
korniltsev-grafanista Apr 8, 2026
55e4ca1
ci: add test runs without -race -cover to the matrix (#5004)
korniltsev-grafanista-yolo-vibecoder239 Apr 8, 2026
faac870
chore: bump Helm chart to v1.20.2 (#5013)
marcsanmi Apr 8, 2026
aadd515
chore: log HTTP protocol version in per-request logs (#5014)
korniltsev-grafanista Apr 8, 2026
77b39b1
chore: update Go toolchain to 1.25.9 (#5015)
marcsanmi Apr 8, 2026
08cbe93
docs: add v1.19.3 release notes (#5018)
marcsanmi Apr 8, 2026
0796657
docs: add v1.20.3 release notes (#5019)
marcsanmi Apr 8, 2026
846a339
chore: bump Helm chart to v1.20.3 (#5022)
marcsanmi Apr 8, 2026
0b317bd
fix(compactor): Indefinitely hanging within the blocks cleaner after …
aashah Apr 8, 2026
e2e01c0
fix(profilecli): preserve label name casing in table output (#4989)
simonswine Apr 8, 2026
9d24f59
feat(v2): move default storage paths under ./data/v2/ (#4978)
simonswine Apr 9, 2026
3ec501d
Cleanup dev/tools/v2 and references (#5040)
aleks-p Apr 9, 2026
6193166
chore(deps): bump go.opentelemetry.io/otel to v1.43.0 across all modu…
simonswine Apr 9, 2026
950f9ee
chore(deps): bump axios (#5045)
dependabot[bot] Apr 12, 2026
87ddf30
feat(query-frontend): log user_agent on query log lines (#5042)
marcsanmi Apr 13, 2026
0b0689b
helm: add HTTPRoute support (#4983)
kun98-liu Apr 13, 2026
15c7dba
fix(segmentwriter): tolerate ErrServerStopped in client test suite (#…
simonswine Apr 13, 2026
0427382
docs(proto): clarify HeatmapSlot timestamp semantics (#4986)
simonswine Apr 13, 2026
8dbabce
docs(v2): fix migration guide prereq check and port-forward race (#5044)
aleks-p Apr 13, 2026
5eb4b91
feat(debuginfo): rewrite upload API to work over HTTP/1.1 (#5046)
korniltsev-grafanista Apr 14, 2026
c626a69
feat(querier): add DOT format support to SelectMergeStacktraces Conne…
marcsanmi Apr 14, 2026
f223393
fix(ui): Align time series line graph with actual data points (#5041)
bryanhuhta Apr 15, 2026
6785ea8
fix(ui): Fix file naming collision when building UI on MacOS (#5055)
bryanhuhta Apr 15, 2026
6106082
helm(refactor): remove redundant adaptive-placement default (#5057)
alsoba13 Apr 16, 2026
ef8a801
chore: unblock bump for github.com/prometheus/prometheus (#5053)
aleks-p Apr 16, 2026
e264a03
fix(scheduler): replace bufconn with TCP listener to fix flaky test (…
marcsanmi Apr 16, 2026
be4dd48
fix pkg/test/integration.TestStatusCode (#5058)
simonswine Apr 16, 2026
ad35284
docs: fix Rust SDK documentation and examples for v2.0.0 (#4972)
korniltsev-grafanista Apr 16, 2026
49d94a5
Add per-request timeout for debug info upload handler (#5056)
korniltsev-grafanista Apr 17, 2026
804f590
chore(deps): bump protocol-buffers-schema from 3.6.0 to 3.6.1 in /ui …
dependabot[bot] Apr 17, 2026
ecd7045
chore(deps): bump protobufjs from 7.5.4 to 7.5.5 in /ui (#5062)
dependabot[bot] Apr 17, 2026
742a4a9
docs: add v1.20.4 release notes (#5065)
korniltsev-grafanista Apr 17, 2026
56b2bf9
chore(renovate): raise prConcurrentLimit to 239 (#5063)
korniltsev-grafanista Apr 17, 2026
5bcc1db
helm: add pyroscope.rbac.create toggle (#5067)
luweglarz Apr 17, 2026
9cd4ab0
fix(ui): bump dompurify, immutable, brace-expansion to fix Trivy CVEs…
simonswine Apr 17, 2026
d89fbf0
chore: Release helm chart for v1.21.0 (#5072)
simonswine Apr 17, 2026
3a68604
Pyroscope OSS v2.0 breaking changes (#5038)
simonswine Apr 17, 2026
d55b18e
Bump Go module path to github.com/grafana/pyroscope/v2 (#5073)
simonswine Apr 17, 2026
150cb32
feat(validation): error on startup when V2 storage layer has no backe…
simonswine Apr 17, 2026
df732c6
make: add frontend/build dependency to reference-help target (#5071)
simonswine Apr 17, 2026
171db75
Fix missed v1 import path in pyroscope_test.go after module bump to v…
simonswine Apr 17, 2026
b2127ab
helm: update chart for v2.0 breaking changes (#5076)
simonswine Apr 17, 2026
550a119
profilecli: add a debuginfo upload subcommand (#5080)
luweglarz Apr 19, 2026
5f41b54
docs: fix contributors grid layout in README (#5078)
marcsanmi Apr 19, 2026
f7f6cb3
docs: add v1.21 release notes (#5082)
marcsanmi Apr 20, 2026
2cc2762
docs(v2): improve v1->v2 migration docs (#5079)
aleks-p Apr 20, 2026
d7da633
docs: add v2.0 release notes (#5083)
marcsanmi Apr 20, 2026
c9fbe58
fix(goreleaser): stamp v2 module path in build ldflags (#5084)
marcsanmi Apr 20, 2026
dfdbb71
docs: add v2.0.1 release notes (#5087)
marcsanmi Apr 20, 2026
4c89585
chore: Release helm chart for v2.0.0 (#5089)
marcsanmi Apr 20, 2026
b2734f9
admin: bring back query diagnostics (#5091)
aleks-p Apr 20, 2026
65c0491
chore: Fix CVEs (#5095)
bryanhuhta Apr 23, 2026
d7fc278
chore(deps): update module golang.org/x/image to v0.39.0 [security] (…
renovate-sh-app[bot] Apr 23, 2026
56d290e
fix(helm): remove emoji from Chart.yaml description (#5099)
luweglarz Apr 24, 2026
ecea3b9
chore: Release helm chart for v2.0.1 (#5100)
marcsanmi Apr 24, 2026
f61326c
docs(dotnet): update supported .NET versions to 8/9/10 (#5096)
korniltsev-grafanista Apr 24, 2026
d8e1960
chore(deps): bump follow-redirects (#5054)
dependabot[bot] May 1, 2026
fecb832
Bump OpenTelemetry.Exporter.OpenTelemetryProtocol from 1.8.0 to 1.15.…
dependabot[bot] May 1, 2026
4813c00
chore(deps): bump postcss from 8.5.8 to 8.5.13 in /ui (#5105)
dependabot[bot] May 1, 2026
d1eee0c
docs: remove outdated v2 note (#5109)
aleks-p May 4, 2026
f1fdf94
ci: use shared dockerhub-login action for Docker Hub auth (#5102)
korniltsev-grafanista May 5, 2026
f310727
chore(deps): bump axios (#5111)
dependabot[bot] May 6, 2026
1e62bdd
docs: updates the list of contributors in README (#5104)
pyroscope-development-app[bot] May 6, 2026
2665125
chore(deps): bump ip-address from 10.1.0 to 10.2.0 in /ui (#5114)
dependabot[bot] May 6, 2026
96b9dd7
fix: clone label values to prevent buffer reuse-after-free (#5116)
simonswine May 6, 2026
35b2299
chore: disable npm/yarn lifecycle scripts (#5108)
korniltsev-grafanista May 7, 2026
6319e22
fix(deps): update module github.com/prometheus/prometheus to v0.311.3…
renovate-sh-app[bot] May 7, 2026
0ff3e06
fix: correct ingest aggregationType docs (#5118)
immanuwell May 7, 2026
8147350
fix(deps): bump uuid from 11.1.0 to 11.1.1 in /ui [security] (#5123)
simonswine May 7, 2026
87071f4
Add release notes for v1.21.1 (#5126)
aleks-p May 7, 2026
f0d5caf
Add release notes for v2.0.2 (#5127)
aleks-p May 7, 2026
930068f
chore: remove unused memdb/index Reader (#5119)
korniltsev-grafanista May 8, 2026
e59dc35
docs: fix broken Grafana Cloud Profiles link in SDK guides (#5132)
marcsanmi May 8, 2026
27a2ce2
fix(deps): update module golang.org/x/net to v0.53.0 [security] (#5131)
renovate-sh-app[bot] May 8, 2026
f4eef13
fix(store-gateway): Ring info route was set to /tenants, changing it …
pbailhache May 8, 2026
1f53950
fix: Nil check invalid matchers for recording rules Upsert (#5134)
alsoba13 May 11, 2026
d3ad9da
Update golang version to 1.25.10 (#5138)
aleks-p May 11, 2026
b54139d
fix(read path): do not allow sub-ms step parameter (#5137)
aleks-p May 11, 2026
2bdaa8c
fix(ci): ignore shared-workflows checkout dir so goreleaser doesn't s…
alsoba13 May 11, 2026
64d9fc3
feat(segmentwriter): build dataset index in segments (#5112)
aleks-p May 11, 2026
bbd8409
fix(speedscope): replace panic with error return for unknown unit val…
simonswine May 11, 2026
9c19be8
fix(deps): update gomod (#5136)
renovate-sh-app[bot] May 11, 2026
e35ea4f
Add readiness check for distributor (#5142)
aleks-p May 12, 2026
a97db04
chore(deps): bump @protobufjs/utf8 (#5147)
dependabot[bot] May 13, 2026
a6ac60b
chore(deps): bump @protobufjs/utf8 from 1.1.0 to 1.1.1 in /ui (#5146)
dependabot[bot] May 13, 2026
227a1cc
fix(deps): update jfr-parser to v0.17.0 (#5144)
simonswine May 13, 2026
8076c9a
chore(deps): bump protobufjs from 7.5.5 to 7.5.8 in /ui (#5152)
dependabot[bot] May 14, 2026
c1f5572
chore(deps): bump protobufjs (#5149)
dependabot[bot] May 14, 2026
611cedf
docs: update local V2 run command in AGENTS.md (#5150)
marcsanmi May 14, 2026
253d433
refactor(queryplan): Refactor `queryplan.Build` and add table-driven …
bryanhuhta May 14, 2026
79f62e3
feat(distributor): add parse duration histogram metric for /ingest (#…
korniltsev-grafanista May 15, 2026
331418c
refactor(tsdb/index): safe public API — no yoloStrings escaping the p…
simonswine May 15, 2026
e6bb0e8
refactor(tsdb/index): drop FormatV1 reader support (#5158)
simonswine May 15, 2026
2c3ab89
test(phlaredb): drain bidi streams instead of cancelling mid-flight (…
simonswine May 15, 2026
8cc8803
docs(config): add yaml-example doc-generator output and document V2 c…
simonswine May 15, 2026
5116072
fix: skip TestGoPclntabSelfExe on non-Linux platforms (#5120)
korniltsev-grafanista May 15, 2026
8c1d10c
perf(tsdb/index): allocation-free postings offset table scan (#5159)
simonswine May 15, 2026
417ba72
helm: add e2e integration tests for HTTPRoute (#5039)
simonswine May 15, 2026
bec6f7d
memdb index: remove use of yolo string from writePostingsOffsetTable …
korniltsev-grafanista May 18, 2026
146929e
memdb: remove unused tsdb symbols iterator (#5162)
korniltsev-grafanista May 18, 2026
8960565
cicd(update-contributors): Use GATB for update-contributors workflow …
alsoba13 May 19, 2026
80d1d32
docs: updates the list of contributors in README (#5167)
pyroscope-development-app[bot] May 19, 2026
ca7e7a2
ci(update-examples-cron.yml): migrate to GATB (#5168)
alsoba13 May 19, 2026
650e1ba
ci(release.yml): migrate to GATB (#5170)
alsoba13 May 19, 2026
943d87d
ci(backport.yml): migrate to GATB (#5169)
alsoba13 May 19, 2026
ea15902
Update helm-release.yaml workflow to use new update-helm-repo.yaml (#…
alsoba13 May 21, 2026
0eec012
fix(querybackend): restore original start time for RangeSeries bucket…
salamidrus May 21, 2026
7d049cc
chore(examples): bump rideshare_rails pyroscope-otel to ~> 0.2.0 (#5177)
alsoba13 May 22, 2026
b54437c
fix(ci): update helm-charts action version (#5178)
alsoba13 May 22, 2026
439cb16
helm: add extraObjects field for deploying extra k8s manifests alongs…
luweglarz May 22, 2026
106c257
helm: default to v2 storage architecture, bump chart to 2.0.1 (#5160)
simonswine May 22, 2026
33c7137
docs: remove public preview note from pyroscope.receive_http (#5176)
korniltsev-grafanista May 23, 2026
1b3ba68
fix(tools): drop obsolete pyroscope_pprofrs cargo adds from updateRus…
alsoba13 May 23, 2026
8e19397
chore(examples): update examples (#5182)
pyroscope-development-app[bot] May 25, 2026
9cc1555
fix(ui): patch CVE-2026-45149 and CVE-2026-46625 in yarn dependencies…
simonswine May 26, 2026
f86d4e1
feat: Add metrics to metastore cache hit/miss (#5156)
bryanhuhta May 26, 2026
796e00b
ui: reduce dependencies (#5190)
aleks-p May 26, 2026
cf730a8
fix: repair Go standard library package generator (#5184)
immanuwell May 27, 2026
dd5b8f9
fix: Validate tenantID in store-gateway (#5194)
simonswine May 28, 2026
0cf9300
chore(examples): update examples (#5192)
pyroscope-development-app[bot] May 28, 2026
6321988
chore(examples): update examples (#5200)
pyroscope-development-app[bot] May 28, 2026
4787b32
fix: don't panic on unknown QueryNode type (#5196)
simonswine May 28, 2026
409147e
fix: clean up zip-slip/tar-slip in archive extraction (#5195)
simonswine May 28, 2026
63f79d4
fix(metastore/index): version shard cache reads (#5189)
simonswine May 28, 2026
3c41e4f
fix(security/unknown): update module golang.org/x/crypto to v0.52.0 […
renovate-sh-app[bot] May 28, 2026
5fb9047
ci: publish docker images via GAR + gar-image-mirror (#5193)
marcsanmi May 28, 2026
b92a06f
fix(ci): run helm HTTPRoute e2e only in its workflow (#5202)
simonswine May 28, 2026
2a3dcf7
fix: close files properly in extractZip and extractTarGz (#5206)
immanuwell May 28, 2026
ba6ba21
fix(helm): add apiVersion and kind to volumeClaimTemplates (#5203)
slimes28 May 28, 2026
659c5a0
chore(examples): update examples (#5208)
pyroscope-development-app[bot] May 29, 2026
bb6caba
chore(examples): fix Test Examples CI failures (#5199)
simonswine May 29, 2026
3af0a5f
chore(ci): bump stale action pins in weekly-release to match release.…
marcsanmi May 29, 2026
e7c4a19
chore(ci): bump goreleaser/goreleaser-action to v7.2.2 (#5212)
marcsanmi May 29, 2026
969904e
chore(ci): drop redundant setup-gcloud step (login-to-gar installs gc…
marcsanmi May 29, 2026
7ef8d65
examples: bump to 2.0 otel-profiling-java for the wall profiling exam…
aleks-p May 29, 2026
cf7cacb
chore(examples): move TypeScript to devDependencies (#5207)
zeitlinger May 29, 2026
c345167
refactor: move HTTP utilities into pkg/util/http (#5205)
simonswine May 29, 2026
4b4df8d
fix(security/unknown): update module golang.org/x/image to v0.41.0 [s…
renovate-sh-app[bot] Jun 1, 2026
f67f756
docs: updates the list of contributors in README (#5219)
pyroscope-development-app[bot] Jun 1, 2026
dd4a8a8
examples: expanded ci checks (#5221)
aleks-p Jun 2, 2026
103def3
examples(java): fix wrong jar usage and outdated base image (#5224)
aleks-p Jun 2, 2026
eb3f754
fix: exclude trace_id from sample to series label promotion (#5220)
marcsanmi Jun 2, 2026
71ea8ee
chore: Remove Go dependencies (#5222)
bryanhuhta Jun 2, 2026
7adad7e
fix(compactionworker): correct time_to_compaction_seconds histogram b…
julienvey Jun 2, 2026
80e5c3b
examples(nodejs): fix express-pull misconfiguration (#5227)
aleks-p Jun 2, 2026
877355b
chore(examples): update examples (#5226)
pyroscope-development-app[bot] Jun 2, 2026
8589bc2
chore: Remove github.com/pkg/errors in favor of stdlib errors (#5223)
bryanhuhta Jun 2, 2026
7985af1
fix(security/unknown): update go toolchain directive to v1.25.11 [sec…
renovate-sh-app[bot] Jun 3, 2026
daa9666
Update golang version to 1.25.11 (#5230)
marcsanmi Jun 3, 2026
b3d2818
docs: add v2.0.3 release notes (#5235)
marcsanmi Jun 3, 2026
e5e9c3e
fix: nil dereference in embedded grafana download + drop deprecated i…
immanuwell Jun 3, 2026
20133b6
chore: Fixes bugs in rideshare examples (#5237)
bryanhuhta Jun 3, 2026
861b5da
feat(debuginfo): add list and delete APIs with profilecli support (#5…
luweglarz Jun 4, 2026
725c8d4
fix(tools): read python/ruby SDK versions from their own repos (#5240)
korniltsev-grafanista Jun 4, 2026
fb29a68
examples(dotnet): switch to GH releases, improve update script (#5225)
aleks-p Jun 4, 2026
b14feab
ci(release): open a PR for Homebrew formula updates instead of pushin…
marcsanmi Jun 4, 2026
fd86294
docs: refresh stale agent guides (ui v2 layout, Go version, tracing) …
o6ivp Jun 4, 2026
c546fb1
chore: Release helm chart for v2.0.3 (#5243)
marcsanmi Jun 4, 2026
680fa85
chore(deps): remove github.com/onsi/* (#5242)
korniltsev-grafanista Jun 5, 2026
637d8b1
chore(deps): remove github.com/dennwc/varint (#5244)
korniltsev-grafanista Jun 5, 2026
efd459c
fix: allow fixed delays in delayed bucket client (#5245)
immanuwell Jun 9, 2026
b36036e
docs: refresh readme file (#5246)
aleks-p Jun 9, 2026
f822541
monitoring: migrate dashboards to native histograms (#5048)
simonswine Jun 9, 2026
972191c
feat(rideshare): Add nodejs as a rideshare example (#5249)
bryanhuhta Jun 10, 2026
d14962d
feat(querybackend): per-tenant per-query bytes-fetched metrics (#5180)
simonswine Jun 10, 2026
5d44c53
feat(queryfrontend): add estimation accuracy histogram and log ratio …
simonswine Jun 11, 2026
5e935f8
feat: limit number of recording rules per tenant (#5247)
alsoba13 Jun 12, 2026
00c59e6
Remove deprecated technical-documentation publish workflows (#5258)
marcsanmi Jun 16, 2026
bc7cc6e
fix(security/high/ui): update security ui vite to v8.0.16 [security] …
renovate-sh-app[bot] Jun 16, 2026
afe01c2
fix OOB panic in clearAddresses (#5250)
simonswine Jun 16, 2026
a8fe1a9
chore: Update dashboards to their internal version (#5256)
simonswine Jun 17, 2026
3fca37a
fix(deps): bump tar, js-yaml, @babel/core in /ui [security] (#5263)
marcsanmi Jun 17, 2026
f5c7ba4
chore(deps): bump dskit to emit trace_id pprof label (#5261)
marcsanmi Jun 17, 2026
d34c47c
docs: add v2.0.4 release notes (#5268)
marcsanmi Jun 17, 2026
e463d5e
docs: add v2.1 release notes (#5266)
simonswine Jun 17, 2026
d7ad244
chore: bump Helm chart to v2.1.0 (#5267)
simonswine Jun 17, 2026
a70c936
chore: Ensure examples have consistent services (#5248)
simonswine Jun 18, 2026
3d08dbf
fix: reject non-positive ingest sample rates (#5253)
immanuwell Jun 19, 2026
19f8bcc
ci(examples): run example tests on same-repo PRs touching examples/ (…
simonswine Jun 19, 2026
f9fe9a5
fix(tree): add bounds checks to DeserializeNoDict (#5145)
simonswine Jun 19, 2026
506c6f3
fix(querybackend): forward and apply span selector in pprof and tree …
simonswine Jun 19, 2026
0a1f541
Add signed commits requirement for pull requests (#5277)
knylander-grafana Jun 23, 2026
5fa8702
fix: sample rate errors (#5276)
korniltsev-grafanista Jun 23, 2026
5f64687
fix: enable metastore retention cleanup by default (#5280)
simonswine Jun 23, 2026
3eb7f23
fix(helm): respect metastore raft extraArgs overrides (#5275)
immanuwell Jun 23, 2026
ddd724a
chore: enable renovate on release branches (#5282)
simonswine Jun 23, 2026
6b5747d
docs: add v2.0.5 release notes (#5283)
simonswine Jun 23, 2026
a732678
feat: add optional admin HTTP server on separate port (#5191)
simonswine Jun 24, 2026
01a56aa
fix: enforce tenant header extraction in auth interceptor (#5251)
simonswine Jun 24, 2026
f35082e
feat(experimental): support async query execution (#4995)
aleks-p Jun 25, 2026
8cb642c
docs: require signed release tags (#5287)
simonswine Jun 26, 2026
f6e417d
chore: fix spelling mistakes (#5294)
simonswine Jun 26, 2026
62e1c90
fix(debuginfo): improve ListDebugInfo performances for large tenants …
luweglarz Jun 28, 2026
c37faf2
feat(query): support trace_id_selector in the v2 read path (#5284)
marcsanmi Jun 30, 2026
24bf180
fix(debuginfo): decline empty build IDs during upload initiation (#5302)
korniltsev-grafanista Jul 2, 2026
ce3edc3
feat(profilecli): add --trace-id to filter query profile samples by t…
marcsanmi Jul 3, 2026
96e53a1
perf(validation): hoist per-label tenant limit lookups in ValidateLab…
marcsanmi Jul 8, 2026
e9cfdaf
perf(pprof): make language detection deterministic and ~40% faster (#…
marcsanmi Jul 8, 2026
380aa94
docs: add docs for supported platforms (#5316)
aleks-p Jul 8, 2026
bff1b6c
fix(pprof): treat two nil value types as compatible in ProfileMerge (…
jake-kramer Jul 8, 2026
4dc429e
fix(usagestats): guard MultiCounter/MultiStatistics total against dat…
jake-kramer Jul 8, 2026
7edf681
feat(distributor): add push_batch_series histogram (#5305)
jake-kramer Jul 8, 2026
faaa8c5
ci(backport): migrate to grafana-github-actions-go for signed commits…
aleks-p Jul 8, 2026
254c688
fix(distributor): bound PushBatch series fan-out with a per-tenant li…
jake-kramer Jul 9, 2026
abcc775
docs: Make clear what flags are v1 exclusive (#5308)
simonswine Jul 9, 2026
c5455a9
Update golang version to 1.25.12 (#5338)
aleks-p Jul 10, 2026
5acc2f1
fix(otlp): send all converted profiles in a single PushBatch per expo…
jake-kramer Jul 10, 2026
f156a4f
fix(symdb): preserve line-less locations when rewriting partitions wi…
jake-kramer Jul 10, 2026
277dc2f
docs: add v2.0.6 release notes (#5343)
aleks-p Jul 10, 2026
d9cc2e5
docs: add v2.1.1 release notes (#5342)
aleks-p Jul 10, 2026
10446dc
chore: bump Helm chart to v2.1.1 (#5346)
aleks-p Jul 10, 2026
af325ae
ci(release): create Homebrew formula commits via GitHub API so they a…
aleks-p Jul 10, 2026
e896d94
ci(helm): bump update-helm-repo workflow to pick up signed index.yaml…
aleks-p Jul 13, 2026
def8afc
chore(helm): improve chart description, re-triggering the 2.1.1 relea…
aleks-p Jul 13, 2026
12a3632
chore: Cleanup no longer used tool (#5357)
simonswine Jul 15, 2026
7f2def6
dx: upgrade devcontainer to Go 1.25 and add DinD support (#5288)
yicooo Jul 16, 2026
b9092a1
chore(deps): bump github.com/grafana/jfr-parser to v0.18.0 (#5355)
korniltsev-grafanista Jul 16, 2026
6d0f831
fix(query): return trace IDs in span heatmaps (#5353)
simonswine Jul 16, 2026
26eb6d4
feat(querier): unify merged profile query formats (#5358)
simonswine Jul 16, 2026
59a02ff
feature(ui): Add autocomplete to v2 embedded UI query bar (#5172)
bryanhuhta Jul 16, 2026
c47a33a
fix(examples): repair Django rideshare startup (#5363)
korniltsev-grafanista Jul 17, 2026
343959e
ci(examples): run all examples for harness changes (#5365)
korniltsev-grafanista Jul 17, 2026
560ae48
docs: document Python SDK fork safety (#5364)
korniltsev-grafanista Jul 17, 2026
b265cd2
feat: keep totals and labels of sampled-out profiles (#5354)
alsoba13 Jul 20, 2026
7820b85
fix(metastore): retain shards with recent data (#5360)
simonswine Jul 21, 2026
80c4d21
helm: add service_name relabel rule to alloy scrape config (#5262)
SLoeuillet Jul 21, 2026
0771f81
fix(ingester): return 429 for ingestion-limit rejections on OTLP and …
jake-kramer Jul 21, 2026
bbe8169
feat(symbolizer): expose address-level symbol resolution as a public …
jake-kramer Jul 21, 2026
6d16eb9
feat(query): add SymbolRefTable and symbol_refs tree fields to the qu…
jake-kramer Jul 21, 2026
8f5e03f
chore: Bump renovate baseBranchPatterns before releasing v2.2 (#5376)
bryanhuhta Jul 21, 2026
2a7113d
fix(security/unknown/): update module golang.org/x/net to v0.56.0 [se…
renovate-sh-app[bot] Jul 22, 2026
b8a5664
feat(model): add symbolref package for symbol-aware tree references (…
jake-kramer Jul 22, 2026
b82524b
build: remove go workspace and reduce Renovate to security-only updat…
aleks-p Jul 22, 2026
82d8680
chore: bump Helm chart to v2.2.0 (#5400)
bryanhuhta Jul 22, 2026
dfbe475
docs: add v2.2 release notes (#5399)
bryanhuhta Jul 22, 2026
8507cbc
fix(security/unknown/): update module golang.org/x/text to v0.39.0 [s…
renovate-sh-app[bot] Jul 23, 2026
2b10d62
fix(security/high/): update module google.golang.org/grpc to v1.82.1 …
renovate-sh-app[bot] Jul 23, 2026
54d0133
profilecli: exclude pre-window boundary point from query top totals (…
aleks-p Jul 23, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
1 change: 1 addition & 0 deletions .agents/skills
169 changes: 169 additions & 0 deletions .claude/skills/update-go-version/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,169 @@
---
name: update-go-version
description: Update Go version across the Pyroscope codebase (go.mod, go.work, CI workflows, Dockerfiles, goreleaser, examples). Use when bumping Go to a new patch or minor version.
argument-hint: <version, e.g. 1.25.7>
disable-model-invocation: true
allowed-tools: Bash, Read, Write, Edit, Grep, Glob, WebFetch
---

# Update Go Version

Updates the Go version across all relevant files in the Pyroscope codebase.

## Usage

```
/update-go-version 1.25.7
```

## Prerequisites

If no version argument is provided, do NOT guess. Instead:
1. Fetch the latest Go releases: `curl -s 'https://go.dev/dl/?mode=json' | jq -r '.[].version'`
2. Show the user the available versions and the current state (from go.mod)
3. Ask which version they want to target
4. Only proceed once they confirm

**Version validation:** The target version MUST be a full patch version (e.g. `1.25.7`), not just a minor version (e.g. `1.25` or `1.25.0`). If the user provides `X.Y.0` or `X.Y`, warn them that they should use the latest patch release for that minor (check go.dev for the latest). Using `.0` means missing security patches and will cause the `toolchain` directive to be dropped from go.mod files (Go removes it when it equals the `go` directive).

## Steps

### 0. Create a feature branch

Always create a new branch from the latest main before making any changes. Never commit directly to main.

```bash
git checkout main
git fetch origin
git pull origin main
git checkout -b update-go-X.Y.Z
```

Use the naming convention `update-go-X.Y.Z` where `X.Y.Z` is the target version.

### 1. Read current state

Extract the current versions from the codebase:
- `go` directive from `go.mod` (line 3, e.g. `go 1.24.6`)
- `toolchain` directive from `go.mod` (line 5, e.g. `toolchain go1.24.9`)
- `go-version` from `.github/workflows/ci.yml` (e.g. `1.24.13`)

Report these to the user before making changes.

### 2. Determine bump type

Compare the target version against the current `toolchain` directive in `go.mod`:

- **Same minor** (e.g. current `toolchain go1.25.3`, target `1.25.7`): **patch bump**. Only the `toolchain` directive and build/CI files need updating.
- **Different minor** (e.g. current `toolchain go1.24.9`, target `1.25.7`): **minor bump**. The `toolchain` directive and build/CI files need updating. Ask the user whether to also update the `go` directive (see step 4).

Tell the user which type was detected before proceeding.

### 3. Run the upgrade script

The `tools/upgrade-go-version.sh` script handles CI, Dockerfile, and release config updates. It also creates a git commit with those changes:

```bash
bash tools/upgrade-go-version.sh X.Y.Z
```

This updates and commits:
- `.github/workflows/*.yml` — `go-version:` values
- `.goreleaser.yaml` — version check hook
- `.pyroscope.yaml` — `ref:` for Go stdlib source linking and `GO_VERSION`
- `tools/update_examples.Dockerfile` — `GO_VERSION` ARG
- All Go Dockerfiles — `FROM golang:` base image tag (excluding ebpf testdata)

### 4. Update `toolchain` directive in go.mod files

Update the `toolchain` directive to `goX.Y.Z` in all go.mod files using `go mod edit`:

```bash
go mod edit -toolchain=goX.Y.Z <file>
```

**go.mod files:**
- `go.mod`
- `api/go.mod`
- `lidia/go.mod`
- `examples/golang-pgo/go.mod`
- `examples/tracing/golang-push/go.mod`
- `examples/language-sdk-instrumentation/golang-push/rideshare/go.mod`
- `examples/language-sdk-instrumentation/golang-push/rideshare-alloy/go.mod`
- `examples/language-sdk-instrumentation/golang-push/rideshare-k6/go.mod`
- `examples/language-sdk-instrumentation/golang-push/simple/go.mod`

#### Optional: update `go` directive (minor bump only)

The `go` directive sets the **minimum compatible Go version**. Only update it when:
- A dependency requires a newer Go version
- The codebase uses a Go language feature from the newer minor version
- The user explicitly requests it

If updating the `go` directive, the `go` and `toolchain` values MUST differ to prevent Go from dropping the `toolchain` line. Use two separate calls:

```bash
# For go.mod files:
go mod edit -go=X.Y.0 <file>
go mod edit -toolchain=goX.Y.Z <file>

# For go.work files (go mod edit does NOT work on .work files):
go work edit -go=X.Y.0 <file>
go work edit -toolchain=goX.Y.Z <file>
```

Also update the `go` directive in the examples' go.work files (use `go work edit`; the root repo has no go.work — modules are wired with replace directives):
- `examples/golang-pgo/go.work`
- `examples/tracing/golang-push/go.work`
- `examples/language-sdk-instrumentation/golang-push/rideshare/go.work`
- `examples/language-sdk-instrumentation/golang-push/rideshare-alloy/go.work`
- `examples/language-sdk-instrumentation/golang-push/rideshare-k6/go.work`
- `examples/language-sdk-instrumentation/golang-push/simple/go.work`

### 5. Synchronize Go modules

```bash
make go/mod
```

This runs `go mod tidy` across all modules. Required because CI runs `check/go/mod`.

Review the diff. Expected: `go.sum` changes, small indirect dependency bumps. Investigate anything unexpected.

### 6. Verify the build

```bash
make go/bin
```

If the build fails, investigate and fix before proceeding.

### 7. Commit remaining changes

The script already committed CI/Dockerfile/release changes. Now commit the go.mod/go.work/go.sum changes:

```bash
git add -u *.mod *.sum *.work api/ lidia/ examples/
```

Use a commit message that reflects what changed:
- Toolchain only: `"Update Go toolchain to goX.Y.Z"`
- Toolchain + go directive: `"Update Go to X.Y.Z (go directive + toolchain)"`

### 8. Summary

Show the user:
- Number of files modified
- Old -> New version for each category (go directive, toolchain, CI, Dockerfiles)
- Whether it was a minor or patch bump
- Build verification result
- Remind user to review commits and push when ready

## Version semantics reference

| Directive | Meaning | When to update |
|-----------|---------|---------------|
| `go X.Y.Z` | Minimum Go version for compatibility | Only when a dependency or language feature requires it |
| `toolchain goX.Y.Z` | Exact build version (bug fixes, security) | Every bump (patch and minor) |
| CI `go-version` | Exact version CI uses to build/test | Every bump (via script) |
| Dockerfile `golang:X.Y.Z` | Exact version for container builds | Every bump (via script) |
92 changes: 92 additions & 0 deletions .cursor/rules/development-workflow.mdc
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
---
description: Development workflow, commands, and commit guidelines for Pyroscope
globs:
alwaysApply: false
---

# Development Workflow

## Prerequisites

- Go 1.25 (see `go.mod`)
- Docker
- Node.js (recent LTS) + Yarn 4 (Berry) — only needed for frontend work in `ui/`
- All other tools auto-download to `.tmp/bin/`

## Build Commands

```bash
# Build backend
make go/bin

# Run Go tests
make go/test

# Frontend dev (run from ui/): Vite dev server on :5173, proxies API to :4040
cd ui && yarn install && yarn dev
# Production frontend build (Docker -> ui/dist; required before `make build`)
make frontend/build

# Docker image
make GOOS=linux GOARCH=amd64 docker-image/pyroscope/build
```

## Running Locally

```bash
# Run all components in monolithic mode with embedded Grafana
go run ./cmd/pyroscope --target all,embedded-grafana
# Pyroscope: http://localhost:4040
# Grafana: http://localhost:4041
```

## Code Generation

**CRITICAL**: After changing protobuf, configs, or flags:

```bash
make generate
```

Commit the generated files with your changes.

## Useful Make Targets

```bash
make help # Show all available targets
make lint # Run linters
make go/test # Run Go unit tests
make go/bin # Build binaries
make go/mod # Tidy go modules
make generate # Generate code (protobuf, mocks, etc.)
make docker-image/pyroscope/build # Build Docker image
```

## Commit Guidelines

1. **Atomic Commits**: Each commit should be a logical unit
2. **Commit Messages**: Focus on "why" not just "what"
3. **Generated Code**: Include generated files in the same commit as source changes
4. **Format**: Follow existing commit message style (see `git log --oneline -20`)

## When Working on Features

1. **Read Component Docs**: Check `docs/sources/reference-pyroscope-architecture/components/` for the component you're modifying
2. **Understand the Ring**: If working on write/read path, understand consistent hashing
3. **Multi-tenancy First**: Always consider multi-tenant implications
4. **Check for Similar Code**: Pyroscope is inspired by Cortex/Mimir - similar patterns apply
5. **Test Multi-tenancy**: Test with multiple tenants to catch isolation issues
6. **Profile Your Changes**: Use `go test -bench` and verify performance impact
7. **Update Documentation**: If changing user-facing behavior, update docs

## Documentation Locations

- **User Docs**: `docs/sources/` - Published to grafana.com
- **Contributing**: `docs/internal/contributing/README.md`
- **Component Docs**: `docs/sources/reference-pyroscope-architecture/components/`

## Getting Help

- **Contributing Guide**: `docs/internal/contributing/README.md`
- **Code Comments**: The codebase has extensive comments - read them
- **Git History**: Use `git blame` and `git log` to understand design decisions
Loading
Loading