Grafana v9.0.0-beta2 Release Notes
Release Date: 2022-05-31 // almost 2 years ago-
๐ Features and enhancements
- Alerting: Add legacy indicator to navbar. #49511, @peterholmberg
- Alerting: Add templated subject config to email notifier. #49742, @JacobsonMT
- Alerting: Enable Unified Alerting for open source and enterprise. #49834, @grobinson-grafana
- Alerting: Make alertmanager datasource stable. #49485, @gillesdemey
- Angular: Remove deprecated angular modal support and libs. #49781, @torkelo
- AuthProxy: Remove deprecated ldap_sync_ttl setting. #49902, @kalleep
- ๐ Build: Enable long term caching for frontend assets. #47625, @jackw
- Chore: Remove deprecated TextDisplayOptions export. #49705, @kaydelaney
- Chore: Remove deprecated
surface
prop from IconButton. #49715, @kaydelaney - Chore: Remove usage of deprecated getColorForTheme function. #49519, @kaydelaney
- DatePicker: Add minDate prop. #49503, @alexanderzobnin
- Notification history: Enable by default. #49502, @ashharrison90
- Prometheus: Add pluginVersion to query. #49414, @toddtreece
- Prometheus: Enable prometheusStreamingJSONParser by default. #49475, @toddtreece
- Prometheus: Predefined scopes for Azure authentication. #49557, @kostrse
- Prometheus: Streaming JSON parser performance improvements. #48792, @toddtreece
- ValueMapping: Add support for regex replacement over multiple lines. #49607, @ashharrison90
๐ Bug fixes
- Accessibility: Pressing escape in a Modal or DashboardSettings correctly closes the overlay. #49500, @ashharrison90
- Alerting: Validate alert notification UID length. #45546, @wbrowne
- BackendSrv: Throw an error when fetching an invalid JSON. #47493, @leventebalogh
- ๐ Fix: Timeseries migration regex override. #49629, @zoltanbedi
- Loki: Fix unwrap parsing in query builder. #49732, @ivanahuckova
- Navigation: Position hamburger menu correctly in mobile view. #49603, @ashharrison90
- PanelEditor: Fixes issue with Table view and multi data frames. #49854, @JoaoSilvaGrafana
- Preferences: Fix updating of preferences for Navbar and Query History. #49677, @ivanahuckova
- TimeRange: Fixes issue when zooming out on a timerange with timespan 0. #49622, @JoaoSilvaGrafana
- Variables: Fixes DS variables not being correctly used in panel queries. #49323, @JoaoSilvaGrafana
๐ฅ Breaking changes
๐ Drop support for deprecated setting ldap_sync_ttl under [auth.proxy] ๐ Only sync_ttl will work from now on Issue #49902
โ Removes support for deprecated
heading
anddescription
props. Moving forward, theCard.Heading
andCard.Description
components should be used. Issue #49885โ Removes the deprecated
link
variant from theButton
component. To migrate, replace any usage ofvariant="link"
withfill="text"
. Issue #49843โ Removes the deprecated
surface
prop from theIconButton
component. This prop hasn't actually done anything for a while, so it should be safe to just remove any instances of its usage. Issue #49715โ Removes the deprecated
TextDisplayOptions
export from@grafana/data
in favor ofVizTextDisplayOptions
from@grafana/schema
. To migrate, just replace usage ofTextDisplayOptions
withVizTextDisplayOptions
. Issue #49705โ Removed support for the deprecated
getColorForTheme(color: string, theme: GrafanaTheme)
function in favor of the ๐theme.visualization.getColorByName(color: string)
method. The output of this method is identical to the removed function, so migration should just be a matter of rewriting calls ofgetColorForTheme(myColor, myTheme)
tomyTheme.visualization.getColorByName(myColor)
. Issue #49519๐ In the Prometheus data source, for consistency and performance reasons, we changed how we represent
NaN
(not a number) values received from Prometheus. In the past versions, we converted these tonull
in the frontend (for dashboard and explore), and kept asNaN
in the alerting path. Starting with this version, we will always keep it asNaN
. This change should be mostly invisible for the users. Issue #49475๐ Plugins using custom Webpack configs could potentially break due to the changes between webpack@4 and webpack@5. Please refer to the official migration guide for assistance.
๐ Webpack 5 does not include polyfills for node.js core modules by default (e.g.
buffer
,stream
,os
). This can result in failed builds for plugins. If polyfills are required it is recommended to create a custom webpack config in the root of the plugin repo and add the required fallbacks:// webpack.config.js module.exports.getWebpackConfig = (config, options) => ({ ...config, resolve: { ...config.resolve, fallback: { os: require.resolve('os-browserify/browser'), stream: require.resolve('stream-browserify'), timers: require.resolve('timers-browserify'), }, }, });
๐ Please refer to the webpack build error messages or the official migration guide for assistance with fallbacks.
๐ Which issue(s) this PR fixes:
<!--
- ๐ Automatically closes linked issue when the Pull Request is merged.
๐ Usage: "Fixes #", or "Fixes (paste link of issue)"
-->
๐ Fixes #
Special notes for your reviewer:
โ It does not bump the following dependencies to the very latest due to the latest versions being ES modules:
- ora
- globby
- execa
- chalk Issue #47826
We have changed the internals of
backendSrv.fetch()
to throw an error when the response is an incorrect JSON.// PREVIOUSLY: this was returning with an empty object {} - in case the response is an invalid JSON return await getBackendSrv().post(`${API_ROOT}/${id}/install`); // AFTER THIS CHANGE: the following will throw an error - in case the response is an invalid JSON return await getBackendSrv().post(`${API_ROOT}/${id}/install`);
When is the response handled as JSON?
- If the response has the
"Content-Type: application/json"
header, OR - ๐ฆ If the backendSrv options (
BackendSrvRequest
) specify the response as JSON:{ responseType: 'json' }
How does it work after this change?
- In case it is recognised as a JSON response and the response is empty, it returns an empty object
{}
- In case it is recognised as a JSON response and it has formatting errors, it throws an error
How to migrate? ๐ Make sure to handle possible errors on the callsite where using
backendSrv.fetch()
(or any otherbackendSrv
methods). Issue #47493๐ Plugin development fixes & changes
- ๐ป UI/Card: Remove deprecated props. #49885, @kaydelaney
- ๐ป UI/Button: Remove deprecated "link" variant. #49843, @kaydelaney
- Toolkit: Bump dependencies. #47826, @jackw
<!-- 9.0.0-beta2 END --> <!-- 9.0.0-beta1 START -->