Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
135 commits
Select commit Hold shift + click to select a range
29dedba
apply security patch: release-11.6.3/431-202505231801.patch
github-actions[bot] Jun 17, 2025
d45fd63
[release-11.6.4] CloudMigrations: Skip default contact point from sna…
grafana-delivery-bot[bot] Jun 18, 2025
ef4a9e5
[release-11.6.4] Azure: Fix legend formatting (#106934)
grafana-delivery-bot[bot] Jun 18, 2025
964c7a3
[release-11.6.4] Graphite: Fix annotation queries (#106940)
grafana-delivery-bot[bot] Jun 18, 2025
c590753
[release-11.6.4] Azure: Fix resource name determination in template v…
grafana-delivery-bot[bot] Jun 18, 2025
dd39e90
[release-11.6.4] Dashboards: Fix timezone change issue in dashboards …
mdvictor Jun 20, 2025
7307a2b
[release-11.6.4] E2E: Fix icons not loading consistently in e2e tests…
grafana-delivery-bot[bot] Jun 25, 2025
a113d04
Fix all the old usage of admonition syntax (#107098)
jdbaldry Jun 27, 2025
60cc653
[release-11.6.4] Table: Fix cell border visibility (#107301)
Sergej-Vlasov Jun 27, 2025
7799d4b
[release-11.6.4] [Docs] Panel embedding not available in Cloud (#107258)
grafana-delivery-bot[bot] Jun 27, 2025
b2f9e13
[release-11.6.4] InfluxDB: Fix variable interpolation on adhoc filter…
alyssajoyner Jun 27, 2025
e850356
[release-11.6.4] InfluxDB: Fix regex for finding regexes in frontend …
aangelisc Jun 27, 2025
0acf632
[release-11.6.4] Docs: Fix graph styles and axis options content (#10…
grafana-delivery-bot[bot] Jun 30, 2025
5475b41
[release-11.6.4] Docs: Replace refs with full URLs in shared files (#…
grafana-delivery-bot[bot] Jun 30, 2025
75ad767
[release-11.6.4] ConvertFieldType: Handle undefined values in joinWit…
grafana-delivery-bot[bot] Jun 30, 2025
d373178
[release-11.6.4] Dependencies: Bump github.com/go-viper/mapstructure/…
macabu Jul 3, 2025
34f8915
[release-11.6.4] Graphite: Fix date mutation (#107523)
grafana-delivery-bot[bot] Jul 3, 2025
5a06879
[release-11.6.4] Graphite: Fix nested variable interpolation for repe…
grafana-delivery-bot[bot] Jul 3, 2025
49176ae
[release-11.6.4] Graphite: Fix recursion (#107567)
grafana-delivery-bot[bot] Jul 3, 2025
9df3093
[release-11.6.4] Unified storage: Respect GF_DATABASE_URL override (#…
pstibrany Jul 3, 2025
3a4bda5
[release-11.6.4] Auth: fix role_attribute_path when using ID tokens i…
grafana-delivery-bot[bot] Jul 7, 2025
3b95e22
[release-11.6.4] Alerting: Fix group interval override when adding ne…
konrad147 Jul 7, 2025
5854ed6
[release-11.6.4] StateTimeline: Add endTime to tooltip (#107605)
leeoniya Jul 8, 2025
806a624
[release-11.6.4] IAM: Return 401 if identity type is not valid in Get…
grafana-delivery-bot[bot] Jul 9, 2025
aca3326
[release-11.6.4]Docs: Updating team sync availability (#107721) (#107…
jtvdez Jul 9, 2025
50c6f19
[release-11.6.4] fix: percentage-based heights were not applied in up…
fastfrwrd Jul 10, 2025
01e78b5
[release-11.6.4] PanelEdit: Adapt panel data error view CTAs to scene…
mdvictor Jul 17, 2025
10ff272
[release-11.6.4] Docs: Updated the Graphite data source docs (#107431)
grafana-delivery-bot[bot] Jul 17, 2025
0567ef2
Security: Fixes for CVE-2025-6197 and CVE-2025-6023 (#108281)
baldm0mma Jul 17, 2025
c6e2023
Release: 11.6.4 (#108545)
github-actions[bot] Jul 23, 2025
5335f51
[release-11.6.5] Docs: Document cell options by cell type (#108634)
grafana-delivery-bot[bot] Jul 24, 2025
a34e88d
Chore: Migrate new infra to `release-11.6.5` (#108728)
baldm0mma Jul 28, 2025
5c55bc3
Chore: Remove backup linter test file (#108810)
baldm0mma Jul 28, 2025
4919cc3
Alerting: Bump alerting package to include change to NewTLSClient (#1…
rwwiv Jul 30, 2025
8ff62f1
[release-11.6.5] docs: Adding clarification to branding docs (#109197)
grafana-delivery-bot[bot] Aug 5, 2025
2c475b6
11.6.5 update release build (#109301)
kminehart Aug 6, 2025
4aef006
[release-11.6.5] Go: Update to 1.24.6 (#109314)
Proximyst Aug 7, 2025
2dbf020
[release-11.6.5] CloudMigrations: Report on prem event with grafana v…
grafana-delivery-bot[bot] Aug 7, 2025
2d2d6d1
[release-11.6.5] Update npm build in daggerbuild & revert some script…
kminehart Aug 7, 2025
3fce556
[release-11.6.5] DOCS: Updates to help with UI improvement work (#10…
grafana-delivery-bot[bot] Aug 7, 2025
7d067d3
[release-11.6.5] update nx (#109400)
kminehart Aug 8, 2025
82e922a
Release: 11.6.5 (#109577)
github-actions[bot] Aug 13, 2025
a67ed6f
[release-11.6.6] Dashboard: Resume tracking changes after save from J…
mdvictor Aug 18, 2025
f065949
[release-11.6.6] Build: Add -buildvcs=false flag to go build (#109671)
macabu Aug 18, 2025
bfb4a56
[release-11.6.6] Auditing: Document new options for recording datasou…
macabu Aug 21, 2025
2f04ebc
[release-11.6.6] Alerting: Update alerting module (#110001)
yuri-tceretian Aug 25, 2025
e23e8bf
[release-11.6.6] Geomap: Tooltip for multiple features same coord (#1…
drew08t Aug 25, 2025
f41a567
[release-11.6.6] Dependencies(js): Update sha.js to 2.4.12 (#110169)
macabu Aug 26, 2025
aff798d
[release-11.6.6] Dependencies: Bump github.com/go-viper/mapstructure/…
macabu Aug 27, 2025
301ce7d
[release-11.6.6] Fix link to site which is no longer relevant (#110285)
grafana-delivery-bot[bot] Aug 29, 2025
106c216
[release-11.6.6] Forbid more redirect patterns (#110505)
grafana-delivery-bot[bot] Sep 3, 2025
f85ce13
Alerting: Fix copying of recording rule fields
moustafab Aug 28, 2025
b62fb74
[release-11.6.6] CI: pin dagger version to match go.mod (#110646)
alexjonspencer1 Sep 5, 2025
231c726
[release-11.6.6] Fix: Fix redirection after login when Grafana is ser…
mgyongyosi Sep 16, 2025
e30e6cc
[release-11.6.6] Chore: Improve short url redirection (#111179)
grafana-delivery-bot[bot] Sep 16, 2025
7763afd
[release-11.6.6] backport bump-version.yml and release-build.yml (#11…
kminehart Sep 18, 2025
be76c67
[release-11.6.6] CI: Fix NPM workflow inputs (#111347)
grafana-delivery-bot[bot] Sep 18, 2025
72f8fdb
[release-11.6.6] Datasources: Backport aws-sdk-go-v2 update and subs…
njvrzm Sep 19, 2025
33e4a72
[release-11.6.6] Page limit config for dashboards with visible annota…
grafana-delivery-bot[bot] Sep 19, 2025
6fceb71
[release-11.6.6] CI: Backport release-npm.yml (#111392)
joshhunt Sep 19, 2025
748f193
[release-11.6.6] Add permission role_id action index (#111410)
grafana-delivery-bot[bot] Sep 19, 2025
cfda836
[release-11.6.6] search: Force index IDX_dashboard_title when searchi…
grafana-delivery-bot[bot] Sep 19, 2025
d3a178e
update release-npm and validate script
kminehart Sep 23, 2025
f816bfe
update missing npm publish scripts
kminehart Sep 23, 2025
f2a8649
Update release workflow
joshhunt Sep 23, 2025
0323d10
Release: 11.6.6 (#111509)
github-actions[bot] Sep 23, 2025
406687a
[release-11.6.7] Add index IDX_folder_org_id_parent_uid_uid (#111684)
grafana-delivery-bot[bot] Sep 30, 2025
7add63f
[release-11.6.7] Plugins: Dependencies do not inherit parent URL for …
wbrowne Sep 30, 2025
1b03a70
[release-11.6.7] LDAP Authentication: Fix URL to propagate username c…
grafana-delivery-bot[bot] Sep 30, 2025
c2410c1
[release-11.6.7] URLParams: Stringify true values as key=true always …
oscarkilhed Oct 6, 2025
9047705
[release-11.6.7] NPM: Backport NPM publishing from main (#111983)
joshhunt Oct 6, 2025
909087a
[release-11.6.7] Go: Update to 1.25.2 + golangci-lint v2.5.0 + golang…
macabu Oct 8, 2025
34db3b9
[11.6.x] Fix interpolation in panel repeats (#112164)
bfmatei Oct 8, 2025
e4eecd4
[release-11.6.7] Auth: Fix render user OAuth passthrough (#112094)
mgyongyosi Oct 9, 2025
597e1af
[release-11.6.7] GenAI: Fix uncaught error when panel title is missin…
grafana-delivery-bot[bot] Oct 10, 2025
f07198b
[release-11.6.7] Go: Update to 1.25.3 (#112365)
macabu Oct 14, 2025
af4cee5
[release-11.6.7] Chore: Update Redis library to v9 (#112370)
Proximyst Oct 14, 2025
c9eb0c7
[release-11.6.7] Docs: Add batch_wait_duration and batch_size_bytes t…
grafana-delivery-bot[bot] Oct 15, 2025
abdfe11
[release-11.6.7] CI: Remove OIDC debug step from npm publish (#112654)
joshhunt Oct 20, 2025
64a8007
Release: 11.6.7 (#112722)
github-actions[bot] Oct 21, 2025
a599222
[release-11.6.7] Include author in patch creation (#112693)
grafana-delivery-bot[bot] Oct 21, 2025
784bd3e
[release-11.6.8] Alerting: Fix unmarshalling of GettableStatus to inc…
grafana-delivery-bot[bot] Oct 21, 2025
0b928b9
[release-11.6.8] Dashboards: Return the correct model in openapi spec…
grafana-delivery-bot[bot] Oct 23, 2025
74248bb
[release-11.6.8] pkg/build: Add nocgo option (#112891)
kminehart Oct 23, 2025
3f28229
[release-11.6.8] CI: Windows builds with CGO cross-compiler toolchain…
kminehart Oct 24, 2025
46b9094
[release-11.6.8] Dashboards: Disable saving while title is validating…
harisrozajac Oct 28, 2025
0e676de
[release-11.6.8] Log TLS handshake EOF error as DEBUG instead INFO (#…
grafana-delivery-bot[bot] Oct 28, 2025
9e20a72
[release-11.6.8] Dashboard Save: Fix the issue of clicking Save butto…
harisrozajac Oct 30, 2025
b0a0880
[release-11.6.8] Annotations: Honor dashboardUID on dashboardsWithVis…
filewalkwithme Oct 30, 2025
40fc660
[release-11.6.8] fix: file and file_meta migrations (#113280)
grafana-delivery-bot[bot] Nov 12, 2025
d4fcd25
[release-11.6.8] Stricter validation for redirect URLs (#113863)
grafana-delivery-bot[bot] Nov 13, 2025
a58aee6
[release-11.6.8] CI: Make notify-pr workflow optional (#113900)
kminehart Nov 14, 2025
c3e3431
[release-11.6.8] CI: release-build.yml missing pipe (#113919)
grafana-delivery-bot[bot] Nov 14, 2025
7cdd92e
Release: 11.6.8 (#114159)
github-actions[bot] Nov 19, 2025
b49ded4
[release-11.6.9] Docs: Document font_min_text_size setting in reporti…
grafana-delivery-bot[bot] Nov 20, 2025
f23a843
[release-11.6.9] Alerting: Update alerting dependency (#114249)
moustafab Nov 20, 2025
76ee518
[release-11.6.9] Docs: Remove image renderer docs (#114300)
Proximyst Nov 21, 2025
47a3db9
[release-11.6.9] Dependencies: Bump golang.org/x/crypto to v0.45.0 (#…
macabu Nov 25, 2025
1bfc980
[release-11.6.9] Dependencies: Bump Go to v1.25.5 (#114757)
macabu Dec 3, 2025
18655e2
[release-11.6.9] Plugins: Add PluginContext to plugins when scenes is…
hugohaggmark Dec 10, 2025
7e6a84e
[release-11.6.9] deps(docker): bump alpine from 3.22.2 to 3.23.0 (#11…
grafana-delivery-bot[bot] Dec 10, 2025
ebfd9e8
[release-11.6.9] Update PR Patch check to work on forks (#115388)
grafana-delivery-bot[bot] Dec 16, 2025
723a164
[release-11.6.9] Alerting: Fix contacts point issues (#115409)
kminehart Dec 16, 2025
b652569
Release: 11.6.9 (#115426)
github-actions[bot] Dec 16, 2025
7356df3
[release-11.6.10] Fix tables without PKs (including tables from curre…
pstibrany Dec 18, 2025
133c3a3
[release-11.6.10] CI: Remove the default alpine & ubuntu versions so …
grafana-delivery-bot[bot] Dec 18, 2025
b7c6a26
Backport DB snapshot for MySQL into release-11.6.10 (#115558)
pstibrany Dec 18, 2025
f554cc5
[release-11.6.10] Alerting: Fix a race condition panic in ResetStateB…
grafana-delivery-bot[bot] Dec 24, 2025
555cb5c
[release-11.6.10] auth: Protect from empty session token panic (#115732)
grafana-delivery-bot[bot] Dec 30, 2025
b2ad23f
[release-11.6.10] InspectJsonTab: Force render the layout after chang…
Sergej-Vlasov Jan 13, 2026
beb66de
[release-11.6.10] Data Source: Proxy fallback routes must match all i…
grafana-delivery-bot[bot] Jan 15, 2026
6d90a0b
[release-11.6.10] Go: Update to 1.25.6 (#116402)
macabu Jan 16, 2026
02b9dab
[release-11.6.10] Bump scenes version (#116554)
Sergej-Vlasov Jan 21, 2026
0de00bf
[release-11.6.10] Avatar: Require sign-in, remove queue, respect time…
macabu Jan 27, 2026
b0865c0
[release-11.6.10] API: Add missing scope check on dashboards (#116894)
Proximyst Jan 27, 2026
50d7ff9
Release: 11.6.10 (#116927)
github-actions[bot] Jan 27, 2026
4010ee3
[release-11.6.11] Correlations: Remove support for org_id=0 (#116936)
gelicia Jan 28, 2026
04072d4
[release-11.6.11] Build: Update alpine version to 3.23.3 (#117374)
macabu Feb 4, 2026
1d50a9f
[release-11.6.11] Go: Update to 1.25.7 (#117476)
macabu Feb 5, 2026
f5492da
[release-11.6.11] Plugins: externalise jsx-runtime (#117500)
grafana-delivery-bot[bot] Feb 6, 2026
45b6d65
Dashboard Export: Fix datasource variable templating in dashboard exp…
kristinademeshchik Feb 9, 2026
be636dd
[release-11.6.11] Alerting: Add limits for the size of expanded notif…
yuri-tceretian Feb 9, 2026
623ccb0
[release-11.6.11] Security(Public dashboards annotations): use dashbo…
Proximyst Feb 11, 2026
57fb233
Chore: [11.6.x] Update dependency diff to v8.0.3 (#117878)
eledobleefe Feb 11, 2026
7e1c042
Chore: [11.6.x] Update `lodash` to 4.17.23 (#117912)
eledobleefe Feb 12, 2026
72c5569
[release-11.6.11] CI: Disable verify pipeline in release-11.6.11 (#11…
kminehart Feb 12, 2026
0b91fef
Chore: [11.6.x] Update `webpack` to `5.105.1` (#117892)
eledobleefe Feb 12, 2026
0d5d564
Release: 11.6.11 (#118003)
github-actions[bot] Feb 12, 2026
d8b926a
Chore: [11.6.x] Update axios to 1.13.5 (#118190)
eledobleefe Feb 16, 2026
d464efe
[release-11.6.12] Rendering: Fix single panel render with variable re…
macabu Feb 17, 2026
975d615
Merge branch 'grafana-upstream/release-11.6.12'
matejkubinec Feb 18, 2026
3faf1d6
PMM-14829 Revert yarn.lock
matejkubinec Feb 18, 2026
b2cbf8d
Merge branch 'main' into PMM-14829-grafana-11.6.x
matejkubinec Feb 20, 2026
c35b53b
Merge branch 'main' into PMM-14829-grafana-11.6.x
matejkubinec Feb 26, 2026
c1b996f
Merge branch 'main' into PMM-14829-grafana-11.6.x
matejkubinec Feb 26, 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
  •  
  •  
  •  
58 changes: 15 additions & 43 deletions .betterer.results
Original file line number Diff line number Diff line change
Expand Up @@ -1870,11 +1870,6 @@ exports[`better eslint`] = {
[0, 0, 0, "No untranslated strings. Wrap text with <Trans />", "5"],
[0, 0, 0, "No untranslated strings. Wrap text with <Trans />", "6"]
],
"public/app/features/alerting/unified/components/receivers/GlobalConfigForm.tsx:5381": [
[0, 0, 0, "No untranslated strings in text props. Wrap text with <Trans /> or use t()", "0"],
[0, 0, 0, "No untranslated strings. Wrap text with <Trans />", "1"],
[0, 0, 0, "No untranslated strings. Wrap text with <Trans />", "2"]
],
"public/app/features/alerting/unified/components/receivers/PayloadEditor.tsx:5381": [
[0, 0, 0, "No untranslated strings in text props. Wrap text with <Trans /> or use t()", "0"],
[0, 0, 0, "No untranslated strings in text props. Wrap text with <Trans /> or use t()", "1"],
Expand Down Expand Up @@ -1927,17 +1922,7 @@ exports[`better eslint`] = {
[0, 0, 0, "No untranslated strings. Wrap text with <Trans />", "7"]
],
"public/app/features/alerting/unified/components/receivers/form/ChannelOptions.tsx:5381": [
[0, 0, 0, "Do not use any type assertions.", "0"],
[0, 0, 0, "Unexpected any. Specify a different type.", "1"],
[0, 0, 0, "Unexpected any. Specify a different type.", "2"]
],
"public/app/features/alerting/unified/components/receivers/form/ChannelSubForm.tsx:5381": [
[0, 0, 0, "No untranslated strings in text props. Wrap text with <Trans /> or use t()", "0"],
[0, 0, 0, "No untranslated strings in text props. Wrap text with <Trans /> or use t()", "1"],
[0, 0, 0, "No untranslated strings in text props. Wrap text with <Trans /> or use t()", "2"],
[0, 0, 0, "No untranslated strings. Wrap text with <Trans />", "3"],
[0, 0, 0, "No untranslated strings. Wrap text with <Trans />", "4"],
[0, 0, 0, "No untranslated strings. Wrap text with <Trans />", "5"]
[0, 0, 0, "Do not use any type assertions.", "0"]
],
"public/app/features/alerting/unified/components/receivers/form/CloudCommonChannelSettings.tsx:5381": [
[0, 0, 0, "No untranslated strings in text props. Wrap text with <Trans /> or use t()", "0"],
Expand All @@ -1963,17 +1948,13 @@ exports[`better eslint`] = {
[0, 0, 0, "No untranslated strings. Wrap text with <Trans />", "2"]
],
"public/app/features/alerting/unified/components/receivers/form/ReceiverForm.tsx:5381": [
[0, 0, 0, "Do not use any type assertions.", "0"],
[0, 0, 0, "Do not use any type assertions.", "1"],
[0, 0, 0, "No untranslated strings in text props. Wrap text with <Trans /> or use t()", "0"],
[0, 0, 0, "No untranslated strings in text props. Wrap text with <Trans /> or use t()", "1"],
[0, 0, 0, "No untranslated strings in text props. Wrap text with <Trans /> or use t()", "2"],
[0, 0, 0, "No untranslated strings in text props. Wrap text with <Trans /> or use t()", "3"],
[0, 0, 0, "No untranslated strings in text props. Wrap text with <Trans /> or use t()", "4"],
[0, 0, 0, "No untranslated strings in text props. Wrap text with <Trans /> or use t()", "5"],
[0, 0, 0, "No untranslated strings. Wrap text with <Trans />", "6"],
[0, 0, 0, "No untranslated strings. Wrap text with <Trans />", "7"],
[0, 0, 0, "No untranslated strings. Wrap text with <Trans />", "8"],
[0, 0, 0, "No untranslated strings. Wrap text with <Trans />", "9"],
[0, 0, 0, "Unexpected any. Specify a different type.", "10"]
[0, 0, 0, "No untranslated strings. Wrap text with <Trans />", "3"],
[0, 0, 0, "No untranslated strings. Wrap text with <Trans />", "4"],
[0, 0, 0, "No untranslated strings. Wrap text with <Trans />", "5"],
[0, 0, 0, "No untranslated strings. Wrap text with <Trans />", "6"]
],
"public/app/features/alerting/unified/components/receivers/form/TestContactPointModal.tsx:5381": [
[0, 0, 0, "No untranslated strings in text props. Wrap text with <Trans /> or use t()", "0"],
Expand All @@ -1992,26 +1973,20 @@ exports[`better eslint`] = {
[0, 0, 0, "Do not use any type assertions.", "0"],
[0, 0, 0, "Unexpected any. Specify a different type.", "1"],
[0, 0, 0, "Unexpected any. Specify a different type.", "2"],
[0, 0, 0, "Unexpected any. Specify a different type.", "3"],
[0, 0, 0, "Unexpected any. Specify a different type.", "4"],
[0, 0, 0, "Unexpected any. Specify a different type.", "5"]
[0, 0, 0, "Unexpected any. Specify a different type.", "3"]
],
"public/app/features/alerting/unified/components/receivers/form/fields/StringArrayInput.tsx:5381": [
[0, 0, 0, "No untranslated strings in text props. Wrap text with <Trans /> or use t()", "0"],
[0, 0, 0, "No untranslated strings. Wrap text with <Trans />", "1"]
],
"public/app/features/alerting/unified/components/receivers/form/fields/SubformArrayField.tsx:5381": [
[0, 0, 0, "No untranslated strings in text props. Wrap text with <Trans /> or use t()", "0"],
[0, 0, 0, "No untranslated strings in text props. Wrap text with <Trans /> or use t()", "1"],
[0, 0, 0, "No untranslated strings. Wrap text with <Trans />", "2"],
[0, 0, 0, "Unexpected any. Specify a different type.", "3"],
[0, 0, 0, "Unexpected any. Specify a different type.", "4"]
[0, 0, 0, "Unexpected any. Specify a different type.", "1"],
[0, 0, 0, "Unexpected any. Specify a different type.", "2"]
],
"public/app/features/alerting/unified/components/receivers/form/fields/SubformField.tsx:5381": [
[0, 0, 0, "No untranslated strings in text props. Wrap text with <Trans /> or use t()", "0"],
[0, 0, 0, "No untranslated strings. Wrap text with <Trans />", "1"],
[0, 0, 0, "Unexpected any. Specify a different type.", "2"],
[0, 0, 0, "Unexpected any. Specify a different type.", "3"]
[0, 0, 0, "Unexpected any. Specify a different type.", "0"],
[0, 0, 0, "Unexpected any. Specify a different type.", "1"]
],
"public/app/features/alerting/unified/components/receivers/form/fields/TemplateContentAndPreview.tsx:5381": [
[0, 0, 0, "No untranslated strings in text props. Wrap text with <Trans /> or use t()", "0"],
Expand Down Expand Up @@ -5248,9 +5223,6 @@ exports[`better eslint`] = {
"public/app/features/panel/panellinks/linkSuppliers.ts:5381": [
[0, 0, 0, "Unexpected any. Specify a different type.", "0"]
],
"public/app/features/panel/panellinks/link_srv.ts:5381": [
[0, 0, 0, "Unexpected any. Specify a different type.", "0"]
],
"public/app/features/playlist/PlaylistCard.tsx:5381": [
[0, 0, 0, "\'@grafana/ui/src/unstable\' import is restricted from being used by a pattern. Import from the public export instead.", "0"]
],
Expand Down Expand Up @@ -7072,8 +7044,7 @@ exports[`better eslint`] = {
[0, 0, 0, "Unexpected any. Specify a different type.", "15"],
[0, 0, 0, "Unexpected any. Specify a different type.", "16"],
[0, 0, 0, "Unexpected any. Specify a different type.", "17"],
[0, 0, 0, "Unexpected any. Specify a different type.", "18"],
[0, 0, 0, "Unexpected any. Specify a different type.", "19"]
[0, 0, 0, "Unexpected any. Specify a different type.", "18"]
],
"public/app/plugins/datasource/graphite/gfunc.ts:5381": [
[0, 0, 0, "Do not use any type assertions.", "0"],
Expand Down Expand Up @@ -7476,7 +7447,8 @@ exports[`better eslint`] = {
[0, 0, 0, "Unexpected any. Specify a different type.", "0"]
],
"public/app/plugins/panel/geomap/utils/tooltip.ts:5381": [
[0, 0, 0, "Do not use any type assertions.", "0"]
[0, 0, 0, "Do not use any type assertions.", "0"],
[0, 0, 0, "Do not use any type assertions.", "1"]
],
"public/app/plugins/panel/heatmap/HeatmapPanel.tsx:5381": [
[0, 0, 0, "\'@grafana/ui/src/components/uPlot/plugins/TooltipPlugin2\' import is restricted from being used by a pattern. Import from the public export instead.", "0"],
Expand Down
41 changes: 41 additions & 0 deletions .citools/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
## API

### Adding and Upgrading Tools

To add a new tool, execute the installation script:

```bash
install.sh <tool>
```

#### Example

The following command will add `lefthook` to the tracked tools if it is not already installed, or update its version:

```bash
install.sh github.com/evilmartians/lefthook@v1.11.10
```

Behind the scenes, the script performs a few simple steps:

- Creates a Go module under the `.citools/src/<toolname>` directory to track the tool version and its dependencies.
- Creates a reference to the tool binary in the `.citools/Variables.mk` file.

### Using Tools in the Makefile

Our Makefile imports `.citools/Variables.mk`, so you can call a tool binary using standard Make syntax.

#### Example

```make
run:
$(bra) run
```

### Using Tracked Tools Without the Makefile

If you want to use a tool outside of the Makefile, you can locate the tool binary by executing the following command:

```bash
GOWORK=off go tool -n -modfile=<path_to_modfile> <toolname>
```
34 changes: 34 additions & 0 deletions .citools/Variables.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# Generated tool paths
tools_dir := $(shell cd $(dir $(lastword $(MAKEFILE_LIST))) && pwd)
src_dir := $(tools_dir)/src

# Due to a race condition, after initial call to `go tool` golang may report a wrong binary location pointing to the invalid `/tmp/go-buildXXX` directory
define compile_tool
$(shell \
(cd $(src_dir)/$(1) \
&& GOWORK=off go tool -n $(2) > /dev/null \
&& GOWORK=off go tool -n $(2)) | sed 's/^[[:space:]]*//g'; \
)
endef


# Tool: "bra"
bra = "$(call compile_tool,bra,github.com/unknwon/bra)"

# Tool: "cog"
cog = "$(call compile_tool,cog,github.com/grafana/cog/cmd/cli)"

# Tool: "cue"
cue = "$(call compile_tool,cue,cuelang.org/go/cmd/cue)"

# Tool: "golangci-lint"
golangci-lint = "$(call compile_tool,golangci-lint,github.com/golangci/golangci-lint/v2/cmd/golangci-lint)"

# Tool: "jb"
jb = "$(call compile_tool,jb,github.com/jsonnet-bundler/jsonnet-bundler/cmd/jb)"

# Tool: "lefthook"
lefthook = "$(call compile_tool,lefthook,github.com/evilmartians/lefthook)"

# Tool: "swagger"
swagger = "$(call compile_tool,swagger,github.com/go-swagger/go-swagger/cmd/swagger)"
36 changes: 36 additions & 0 deletions .citools/generate.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
#!/bin/bash
set -euo pipefail

TOOLS_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"

TOOLS_SRC_DIR="$TOOLS_DIR/src"
TOOLS_MK="$TOOLS_DIR/Variables.mk"

echo "# Generated tool paths" > "$TOOLS_MK"

cat <<'EOL' >> "$TOOLS_MK"
tools_dir := $(shell cd $(dir $(lastword $(MAKEFILE_LIST))) && pwd)
src_dir := $(tools_dir)/src

# Due to a race condition, after initial call to `go tool` golang may report a wrong binary location pointing to the invalid `/tmp/go-buildXXX` directory
define compile_tool
$(shell \
(cd $(src_dir)/$(1) \
&& GOWORK=off go tool -n $(2) > /dev/null \
&& GOWORK=off go tool -n $(2)) | sed 's/^[[:space:]]*//g'; \
)
endef

EOL

for tooldir in "$TOOLS_SRC_DIR"/*; do
[ -d "$tooldir" ] || continue
tool=$(basename "$tooldir")
fqtn=$(awk '/^tool / { print $2 }' "$tooldir/go.mod")

cat <<EOL >> "$TOOLS_MK"

# Tool: "$tool"
${tool} = "\$(call compile_tool,${tool},${fqtn})"
EOL
done
33 changes: 33 additions & 0 deletions .citools/install.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
#!/bin/bash
set -euo pipefail

TOOLS_BASE_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
TOOLS_SRC_DIR="$TOOLS_BASE_DIR/src"

IMPORT_PATH_WITH_VERSION="$1"

if [[ "$IMPORT_PATH_WITH_VERSION" != *"@"* ]]; then
echo "Error: tool version must be specified (e.g., github.com/foo/bar@v1.2.3)"
exit 1
fi

TOOL_PATH="${IMPORT_PATH_WITH_VERSION%@*}"
TOOL_NAME="${TOOL_PATH##*/}"

TOOL_DIR="$TOOLS_SRC_DIR/$TOOL_NAME"
MOD_FILE="$TOOL_DIR/go.mod"

mkdir -p "$TOOL_DIR"
cd "$TOOL_DIR"

# Create a new module if go.mod doesn't exist
if [ ! -f go.mod ]; then
go mod init "$TOOL_NAME"
fi

go get -tool --modfile="$MOD_FILE" "$IMPORT_PATH_WITH_VERSION"
echo "Installed $TOOL_NAME"
echo " Directory: $TOOL_DIR"
echo " Modfile: $MOD_FILE"

exec "$TOOLS_BASE_DIR/generate.sh"
22 changes: 22 additions & 0 deletions .citools/src/bra/go.mod
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
module bra

go 1.25.7

tool github.com/unknwon/bra

require (
github.com/BurntSushi/toml v1.5.0 // indirect
github.com/cpuguy83/go-md2man/v2 v2.0.6 // indirect
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
github.com/fsnotify/fsnotify v1.8.0 // indirect
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
github.com/russross/blackfriday/v2 v2.1.0 // indirect
github.com/smartystreets/goconvey v1.6.4 // indirect
github.com/stretchr/testify v1.10.0 // indirect
github.com/unknwon/bra v0.0.0-20200517080246-1e3013ecaff8 // indirect
github.com/unknwon/com v1.0.1 // indirect
github.com/unknwon/log v0.0.0-20200308114134-929b1006e34a // indirect
github.com/urfave/cli v1.22.16 // indirect
golang.org/x/sys v0.38.0 // indirect
gopkg.in/fsnotify/fsnotify.v1 v1.4.7 // indirect
)
70 changes: 70 additions & 0 deletions .citools/src/bra/go.sum
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
github.com/BurntSushi/toml v1.4.0/go.mod h1:ukJfTF/6rtPPRCnwkur4qwRxa8vTRFBF0uk2lLoLwho=
github.com/BurntSushi/toml v1.5.0 h1:W5quZX/G/csjUnuI8SUYlsHs9M38FC7znL0lIO+DvMg=
github.com/BurntSushi/toml v1.5.0/go.mod h1:ukJfTF/6rtPPRCnwkur4qwRxa8vTRFBF0uk2lLoLwho=
github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU=
github.com/cpuguy83/go-md2man/v2 v2.0.5/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o=
github.com/cpuguy83/go-md2man/v2 v2.0.6 h1:XJtiaUW6dEEqVuZiMTn1ldk455QWwEIsMIJlo5vtkx0=
github.com/cpuguy83/go-md2man/v2 v2.0.6/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM=
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=
github.com/fsnotify/fsnotify v1.8.0 h1:dAwr6QBTBZIkG8roQaJjGof0pp0EeF+tNV7YBP3F/8M=
github.com/fsnotify/fsnotify v1.8.0/go.mod h1:8jBTzvmWwFyi3Pb8djgCCO5IBqzKJ/Jwo8TRcHyHii0=
github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY=
github.com/gopherjs/gopherjs v0.0.0-20181103185306-d547d1d9531e h1:JKmoR8x90Iww1ks85zJ1lfDGgIiMDuIptTOhJq+zKyg=
github.com/gopherjs/gopherjs v0.0.0-20181103185306-d547d1d9531e/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY=
github.com/jtolds/gls v4.2.1+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU=
github.com/jtolds/gls v4.20.0+incompatible h1:xdiiI2gbIgH/gLH7ADydsJ1uDOEzR8yvV7C0MuV77Wo=
github.com/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U=
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf35Ld67mk=
github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeVRXNmyL/1OwPU0+IJeTBvfc=
github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc=
github.com/smartystreets/assertions v0.0.0-20190116191733-b6c0e53d7304 h1:Jpy1PXuP99tXNrhbq2BaPz9B+jNAvH1JPQQpG/9GCXY=
github.com/smartystreets/assertions v0.0.0-20190116191733-b6c0e53d7304/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc=
github.com/smartystreets/goconvey v0.0.0-20181108003508-044398e4856c/go.mod h1:XDJAKZRPZ1CvBcN2aX5YOUTYGHki24fSF0Iv48Ibg0s=
github.com/smartystreets/goconvey v1.6.4 h1:fv0U8FUIMPNf1L9lnHLvLhgicrIVChEkdzIKYqbNC9s=
github.com/smartystreets/goconvey v1.6.4/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA=
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw=
github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo=
github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA=
github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo=
github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA=
github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
github.com/unknwon/bra v0.0.0-20200517080246-1e3013ecaff8 h1:aVGB3YnaS/JNfOW3tiHIlmNmTDg618va+eT0mVomgyI=
github.com/unknwon/bra v0.0.0-20200517080246-1e3013ecaff8/go.mod h1:fVle4kNr08ydeohzYafr20oZzbAkhQT39gKK/pFQ5M4=
github.com/unknwon/com v1.0.1 h1:3d1LTxD+Lnf3soQiD4Cp/0BRB+Rsa/+RTvz8GMMzIXs=
github.com/unknwon/com v1.0.1/go.mod h1:tOOxU81rwgoCLoOVVPHb6T/wt8HZygqH5id+GNnlCXM=
github.com/unknwon/log v0.0.0-20150304194804-e617c87089d3/go.mod h1:1xEUf2abjfP92w2GZTV+GgaRxXErwRXcClbUwrNJffU=
github.com/unknwon/log v0.0.0-20200308114134-929b1006e34a h1:vcrhXnj9g9PIE+cmZgaPSwOyJ8MAQTRmsgGrB0x5rF4=
github.com/unknwon/log v0.0.0-20200308114134-929b1006e34a/go.mod h1:1xEUf2abjfP92w2GZTV+GgaRxXErwRXcClbUwrNJffU=
github.com/urfave/cli v1.22.1/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0=
github.com/urfave/cli v1.22.16 h1:MH0k6uJxdwdeWQTwhSO42Pwr4YLrNLwBtg1MRgTqPdQ=
github.com/urfave/cli v1.22.16/go.mod h1:EeJR6BKodywf4zciqrdw6hpCPk68JO9z5LazXZMn5Po=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20191020152052-9984515f0562/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.38.0 h1:3yZWxaJjBmCWXqhN1qh02AkOnCQ1poK6oF+a7xWL6Gc=
golang.org/x/sys v0.38.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/tools v0.0.0-20190328211700-ab21143f2384/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/fsnotify/fsnotify.v1 v1.4.7 h1:XNNYLJHt73EyYiCZi6+xjupS9CpvmiDgjPTAjrBlQbo=
gopkg.in/fsnotify/fsnotify.v1 v1.4.7/go.mod h1:Fyux9zXlo4rWoMSIzpn9fDAYjalPqJ/K1qJ27s+7ltE=
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ=
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
Loading
Loading