Grafana 13.1.0
← All Grafana releases · Searchable index of all 870 changes
Changelog
| PR / issue | Type | Description |
|---|---|---|
| #120284 | Feature | A11y: Remove interactivity from UserIcon if onClick is not provided |
| #123069 | Feature | Accessibility: Add aria-pressed state to FilterPill |
| #121386 | Feature | Accessibility: Colorblind-safe line style fill patterns |
| #124855 | Feature | Alerting: Add Mimir Alertmanager auto-sync configuration to settings page |
| #122606 | Feature | Alerting: Add alerting.rulesAPIV2 feature flag |
| #124547 | Feature | Alerting: Add common section to filter dropdown in Alerts Activity |
| #124625 | Feature | Alerting: Add feature flag for notifications api migration |
| — | Feature | Alerting: Add label section to enrichment view/edit drawers (Enterprise) |
| #123584 | Feature | Alerting: Add reusable hook to add enrichment query param to url on drawer open |
| #122293 | Feature | Alerting: Add support for label selectors in AlertRule and RecordingRule legacy storage |
| #121790 | Feature | Alerting: Alert activity UI improvements part 3 |
| #121952 | Feature | Alerting: Alert activity groupBy not filtering by environment |
| #122317 | Feature | Alerting: Alerts Activity Instance drawer drilldown, Silence flow |
| #118858 | Feature | Alerting: Allow restricting contact point integration types |
| #125669 | Feature | Alerting: Block Viewers from Alert Group edit route |
| #123214 | Feature | Alerting: Block editing plugin-provided and provisioned rule groups |
| #122983 | Feature | Alerting: Deduplicate and validate groupBy labels in alerts |
| #121996 | Feature | Alerting: Export external Alertmanager sender metrics with data source UIDs |
| #125775 | Feature | Alerting: Include error in Loki state history when exec_err_state is Alerting |
| #121995 | Feature | Alerting: Mark notification provisioning endpoints deprecated |
| #121577 | Feature | Alerting: Move filters to sidebar alerts activity |
| #125712 | Feature | Alerting: Open new alert rule drawer from panel menu |
| #121699 | Feature | Alerting: Preview notification routing in the alert instances table |
| #125206 | Feature | Alerting: Propagate plugin rule origin as X-Rule-Origin header |
| #124677 | Feature | Alerting: Remove alertRuleUseFiredAtForStartsAt feature toggle |
| #123173 | Feature | Alerting: Restrict email contact point recipients to org members |
| — | Feature | Alerting: Set enrichment uid in url for enrichment view/edit drawer (Enterprise) |
| #123429 | Feature | Alerting: Small improvements to instance drawer drilldown silence flow |
| #120228 | Feature | Alerting: Support creating Grafana-managed rules without a group |
| #123211 | Feature | Alerting: Surface contact point save errors in the UI |
| #124339 | Feature | Alerting: Surface errors on contact point creation |
| #123690 | Feature | Alerting: Surface save and bulk-delete errors to the user |
| #125787 | Feature | Alerting: Use Rules API v2 in panel alert rule drawer |
| #124173 | Feature | Annotations: Clustering GA |
| #126184 | Feature | Auth: Support inline public keys for JWT authentication |
| — | Feature | Auth: Use GrafanaComProxyAPIToken for managed plugin API requests (Enterprise) |
| #122269 | Feature | Auth: Use dedicated token for requests to Grafana.com |
| #123555 | Feature | Azure Monitor: Pool gzip writers in Log Analytics deep-link encoder |
| #123278 | Feature | Azure Monitor: Refactor fetchInitialRows to improve async utilisation |
| #123565 | Feature | Azure Monitor: Stream-decode responses and typed structs for portal deep link |
| #124299 | Feature | Browse Dashboards: Change messaging of delete/move modal and add counts to tabs in folder detail |
| #125323 | Feature | Browse Dashboards: Refresh old parent folder on save dashboard |
| #120348 | Feature | CloudWatch Logs: Remove data links from results |
| #120526 | Feature | Cloudwatch: Add id to metric expression datalinks |
| #122992 | Feature | Combobox: Add isOpen and onIsOpenChangeHandler |
| #120893 | Feature | ConvertFieldType: Preserve null and empty string in string-to-number conversion |
| — | Feature | CsvExport: Remove legacy CsvExportPage (Enterprise) |
| #120758 | Feature | Dashboard variables: Improve accessibility |
| #122118 | Feature | Dashboard/DTO: Remove isStarred property |
| #123939 | Feature | Dashboard: Add annotation CRUD to mutation API |
| #123321 | Feature | Dashboard: Display variable label in outline to better match what the users sees in the dashboard |
| #122918 | Feature | Dashboard: Edit pane go back action |
| #122267 | Feature | Dashboard: Preserve timezone user-preference when converting V1 → V2 |
| #121755 | Feature | Dashboard: Switch tab selects tab only when pane is open (docked or not) |
| #124045 | Feature | Dashboards: Add panel screenshot API |
| #124247 | Feature | Dashboards: Preserve query variable sort modes in v1->v2 conversion |
| #121781 | Feature | Dashboards: Remove dashboardScene and publicDashboardsScene feature toggles |
| #123033 | Feature | Dashboards: Show k8s format in provisioned save |
| #122677 | Feature | Dashboards: Strip BOM characters in admission mutation hook |
| #124244 | Feature | Data Source: Add forward_user_agent option to preserve client User-Agent |
| #123037 | Feature | DataSources: Introduce async APIs and hooks as replacement for datasourceSrv |
| — | Feature | Datasources: Add dynamodb to supported plugins list in dsauth (Enterprise) |
| #122053 | Feature | Datasources: Allow editing data source title |
| #119110 | Feature | Datasources: Finish decoupling mssql & postgresql - backend |
| #119106 | Feature | Datasources: Finish decoupling mssql, tempo, and graphite - frontend changes |
| #122930 | Feature | Docker: Bump Alpine-based images to 3.23.4 |
| #126529 | Feature | Docker: Bump Alpine-based images to 3.24.1 |
| #123159 | Feature | Dynamic dashboards: preserve tab/row URL slugs and keep legacy tab URLs working |
| #121945 | Feature | Expressions: Add memory limit for math expression binary operations |
| #122094 | Feature | Go: Update to 1.25.9 |
| #124618 | Feature | Google Cloud Monitoring: Add Forward OAuth Identity authentication (frontend) |
| #124870 | Feature | GrafanaUI: Remove feature toggle for new panel padding |
| #122277 | Feature | Graphite: Strip tagged path from tags.name when aliasSub wrapping is detected |
| #117698 | Feature | Histogram: filter NaN and Infinity from bucket size calculation |
| #122994 | Feature | Homepage: Support v2 dashboards if defined by a file |
| #125327 | Feature | I18n: Prevents en-US localization resources from loading |
| #119980 | Feature | Import: Library panel missing DS when imported in v1 and classic |
| #119167 | Feature | InfluxDB: Decouple backend |
| #119169 | Feature | InfluxDB: Decouple frontend |
| #121384 | Feature | InteractiveTable: Support specific column widths |
| #123407 | Feature | LibraryPanels: Return 403 instead of 500 for insufficient permissions |
| #126782 | Feature | Log Details: Add support for filtering from add-hoc stats and to include/exclude the log line |
| #123156 | Feature | Log Details: Add support to expand or shrink inline Log Details |
| #124816 | Feature | Logs Panel: Add support to copy a log entry with fields/labels as JSON |
| #119957 | Feature | Logs: Add emergency to supported LogLevel mapping |
| #123406 | Feature | Logs: Add keyboard navigation support for Log Details |
| #123256 | Feature | Logs: Add optional download support for dashboards |
| #124433 | Feature | Logs: Highlight multi-unit durations in log syntax highlighting |
| #126572 | Feature | Logs: Log line menu is now sticky |
| #122114 | Feature | Logs: Removed logsPanelControls feature flag and related components |
| #125716 | Feature | Logs: introduce "unspecified" log level for missing log level and separate from "unknown" |
| #124314 | Feature | Migration: Widen team.updated to DATETIME(3) on MySQL |
| #121303 | Feature | PieChartPanel: Add gradient color scheme with WCAG-aware slice labels |
| #124246 | Feature | Plugins: Add plugins.marketplaceLicensing feature toggle |
| #122237 | Feature | Plugins: Sanitise header values to printable ASCII for gRPC compatibility |
| #121339 | Feature | Prometheus: Fetch metric metadata on code editor mount |
| #122824 | Feature | Prometheus: Prevent prometheus package to be released automatically |
| #123024 | Feature | Prometheus: Use/prometheus v13.1.2 |
| #126023 | Feature | Provisioning: Add commit signing configuration UI (GPG, SSH, S/MIME) |
| #124118 | Feature | Provisioning: Don't mark folders pending due to \_folder.json metadata |
| #123179 | Feature | Provisioning: Enforce folder version in finalizer handler |
| #123893 | Feature | Provisioning: Honor ruleset bypass for write workflow validation |
| #122233 | Feature | Provisioning: Include dashboard validation errors in pull request comments |
| #123047 | Feature | Provisioning: Invalid resources should cause a warning job |
| #122653 | Feature | Provisioning: List resources should return correct api version |
| #124122 | Feature | Provisioning: Negotiate receive-pack capabilities for git pushes |
| #123867 | Feature | Provisioning: Per-verb fallback for the files subresource |
| #125539 | Feature | Provisioning: Remove GET method from webhook connector |
| #125525 | Feature | Provisioning: Require new token when provisioning URL changes |
| #123873 | Feature | Provisioning: Retry SQLITE_BUSY on repository status patch |
| #124453 | Feature | Provisioning: Return Bad request for repo mismatch in webhook |
| #125122 | Feature | Provisioning: Return early for errors on resource creation in Parser |
| #122797 | Feature | Provisioning: Rotate webhook secret periodically |
| #123498 | Feature | Provisioning: Scope repository uniqueness by (URL, branch, path) |
| #123797 | Feature | Provisioning: Surface folder uid-too-long and other validation 4xx as sync warnings |
| #123127 | Feature | Provisioning: Use full sync instead of incremental if diff size exceeds a certain amount |
| #126042 | Feature | Provisioning: Write _folder.json when creating dashboards in new folders |
| #126552 | Feature | Provisioning: Write _folder.json when moving dashboards into new folders |
| #122664 | Feature | Provisioning: add PR comment if resources metadata is removed |
| #122725 | Feature | Provisioning: add new check for webhook creation in repository controller |
| #123613 | Feature | Provisioning: add public_root_url instance setting for external URLs |
| #125550 | Feature | Provisioning: replay protection for GitHub webhooks |
| #125551 | Feature | Provisioning: validate ref query parameter on files and history endpoints |
| #120995 | Feature | Pyroscope: Add support for heatmap query API |
| #122665 | Feature | Pyroscope: Include profile ID and absolute times in assistant context |
| #126247 | Feature | Removal: GroupAttributeSync routes |
| — | Feature | Reporting: Add backend support for URL-based report rendering (Enterprise) |
| — | Feature | Reporting: Limit report emails to org members only (behind new config property) (Enterprise) |
| #121955 | Feature | Revert "Alerting: Migrate notifications.alerting.grafana.app from v0alpha1 to v1beta1" |
| #123698 | Feature | Scenes: Upgrade to v8 |
| #122674 | Feature | Search API: Filter out k6 technical folder in unified search |
| — | Feature | Secrets Keeper: AWS create form with instruction wizard (Enterprise) |
| — | Feature | Secrets Keeper: Activate and deactivate keeper from the UI (Enterprise) |
| — | Feature | Secrets Keeper: Add delete keeper functionality (Enterprise) |
| — | Feature | Secrets Keeper: Add keeper edit page with form prepopulation (Enterprise) |
| #123683 | Feature | Sidebar: Open pane actions, dock, and go back redesign |
| #123779 | Feature | SqlExpressions: Interpolate variables in schema queries |
| #122085 | Feature | SqlExpressions: Migrate AI features to Grafana Assistant |
| #121900 | Feature | Stats: Remove dashboard version metric |
| #121646 | Feature | Table: GroupToNestedTable v2 UI |
| #123794 | Feature | Team folders: Refresh browse dashboard cache after changes to team folders |
| #121645 | Feature | Tempo: Unify dynamic int/double span attributes as float64 |
| #124885 | Feature | Tempo: Unify nested span subframe schema across span sets |
| #122040 | Feature | TimeRangePicker: Adjust accent color to be accessible |
| #124790 | Feature | Transformations: Removes unused predicate matchers |
| #125556 | Feature | Unified Storage: Pass commit message when routing managed-resource writes |
| #122319 | Feature | Users: Use SHA-256 for Gravatar email identifier |
| — | Feature | Zipkin: Remove core datasource (Enterprise) |
| #124824 | Feature | patch(security): apply May 2026 patches , [[bot]] |
| #125817 | Bug fix | Alerting: Fix named policy route showing as Default when routing toggle is off |
| #126292 | Bug fix | Alerting: Add warning when editing grouped alert rule to ungrouped |
| #123137 | Bug fix | Alerting: Fix AlertManagerPicker visibility to check Alertmanager datasources |
| #126371 | Bug fix | Alerting: Fix Test button not shown for provisioned contact points |
| #122180 | Bug fix | Alerting: Fix crash when MultiCombobox value contains duplicates |
| #122704 | Bug fix | Alerting: Fix crash when ruler returns namespace with empty groups array |
| #126296 | Bug fix | Alerting: Fix error toaster when removing last rule from group |
| #126288 | Bug fix | Alerting: Fix inhibition status flickering during load of alert rule detail |
| #122344 | Bug fix | Alerting: Fix missing permission check for routing preview |
| #122123 | Bug fix | Alerting: Fix notification policies tab hidden for Viewer/Editor after managed routes migration |
| #123286 | Bug fix | Alerting: Fix page title for /alerting/groups when V2 nav is enabled without triage |
| #126152 | Bug fix | Alerting: Fix rule matching when expressions contain inline comments |
| #123670 | Bug fix | Alerting: Fix slug in alerting nested folder URL |
| #122455 | Bug fix | Alerting: Fix threshold value reset when changing condition type |
| #125643 | Bug fix | Alerting: Fix toast spam when typing silence matcher regex |
| #124955 | Bug fix | Alerting: Make contact point settings redaction logic case insensitive |
| #122329 | Bug fix | Alerting: Set 'ResolvedAt' when transitioning from Error to Normal |
| #121953 | Bug fix | Auth: URL-encode redirectTo cookie value in OAuth login flow |
| #123072 | Bug fix | AzureMonitor: Fix focus trapping on ResourceField modal |
| #122747 | Bug fix | Browse dashboards: Fix delete modal affected counts |
| #118567 | Bug fix | Dashboads: Fixes flickering issues |
| #122700 | Bug fix | Dashboard: DashboardCodePane width refactoring and fixes |
| #123889 | Bug fix | Dashboard: Fixes issue with interval variable with Auto value |
| #124665 | Bug fix | DashboardDS: Fix Mixed panels not updating on time-range change with stale upstreams |
| #125954 | Bug fix | DashboardDS: Fix Mixed panels with a time override stuck in permanent loading |
| #124551 | Bug fix | Dashboards: Fix broken add panel button after removing last panel |
| #125398 | Bug fix | Datasources: return 400 when payload UID does not match URL UID in PUT /api/datasources/uid/:uid |
| — | Bug fix | Fix: Don't mutate shared SecureJSONData map in dsauth (Enterprise) |
| — | Bug fix | Fix: Short-cut auth service Apply for non-handled plugin IDs (Enterprise) |
| #122133 | Bug fix | GrafanaUI: Correctly close Select/Combobox menus with the keyboard |
| #124557 | Bug fix | HomePage: Fix redirect when served under a subpath |
| #123302 | Bug fix | Jaeger: Fix log event timestamp unit conversion in trace view |
| #124612 | Bug fix | K8s Dashboards: Fix folder permission check to use dashboards:create |
| #122184 | Bug fix | Loki: Show Step option for all query types and fix volume reload on step change |
| #123633 | Bug fix | Menu: Correctly show active state in forced colors mode |
| #122450 | Bug fix | Portal: Fix nested portals to overlay correctly |
| #122739 | Bug fix | PostgreSQL: Allow sql_engine to return results for EXPLAIN queries |
| #124114 | Bug fix | Provisioning: Bump nanogit to v0.17.0 to fix pushes with repositories using git modules |
| #126700 | Bug fix | Provisioning: Fix PR comments on multi-org Grafana instances |
| #126695 | Bug fix | Provisioning: Fix PR links when folder is renamed via UI |
| #124256 | Bug fix | Provisioning: Fix duplicate folder cleanup during full sync |
| #123358 | Bug fix | Provisioning: Fix race in PullStatus condition with controller patches |
| #121017 | Bug fix | Public Dashboards: Fix issues navigating to public dashboards from a logged-in session |
| #123001 | Bug fix | QueryEditor: Fix loss of query edits when switching queries |
| #123026 | Bug fix | Tempo Datasource: Fix gRPC basic auth over non-TLS connections |
| #121460 | Bug fix | Tempo: Fix Ctrl+/ comment toggle in TraceQL editor |
| #122504 | Bug fix | Tempo: Fix trace rendering failure when span attributes contain NaN or Infinity |
| #122384 | Bug fix | TimePicker: Show label for fiscal-quarter relative ranges |
| #122866 | Bug fix | Unified storage: Skip migrations if dualwrite state shows they were already migrated |
| #124935 | Bug fix | alerting: fix ORM table mapping bug causing SELECT alert_rule columns FROM user on PostgreSQL |
| #126822 | Bug fix | fix(provisioning): ignore terminating repositories when validating connection delete |
| #126821 | Bug fix | fix: bad MySQL query in datasource_type column migration |
| #123089 | Breaking change | Prometheus: Remove azure and sigv4 auth from core prometheus |
| #122953, #123035 | Breaking change | Prometheus: Remove grafana-prometheus package |
| #124148 | Breaking change | Zipkin: Remove from core plugins |
| #123876 | Plugin | Card: Improve responsiveness |
| #123950 | Plugin | Combobox: Fix caret jumping to the end of the input |
| #123795 | Plugin | DataLinkInput: Expose prop to properly link labels to input |
| #123952 | Plugin | RadioButton: Fix selected visibility in forced colors mode |
| #119124 | Plugin | RadioButtonGroup: Prevent RadioButtonGroup overflow with ellipsis and hover title |
| #123777 | Plugin | TimeOfDayPicker: use Combobox |
Reproduced from the official Grafana 13.1.0 release notes. Last checked 7 Jul 2026, 21:23 UTC.