Changelog History
Page 4
-
v9.0.1 Changes
June 21, 2022π Features and enhancements
- Alerting: Add support for image annotation in Alertmanager alerts. #50686, @grobinson-grafana
- Alerting: Add support for images in SensuGo alerts. #50718, @grobinson-grafana
- Alerting: Add support for images in Threema alerts. #50734, @grobinson-grafana
- Alerting: Adds Mimir to Alertmanager data source implementation. #50943, @gillesdemey
- Alerting: Invalid setting of enabled for unified alerting should return error. #49876, @grobinson-grafana
- AzureMonitor: Clean namespace when changing the resource. #50311, @andresmgot
- AzureMonitor: Update supported namespaces and filter resources by the right type. #50788, @andresmgot
- CLI: Allow relative symlinks in zip archives when installing plugins. #50537, @marefr
- Dashboard: Don't show unsaved changes modal for automatic schema changes. #50822, @torkelo
- Dashboard: Unsaved changes warning should not trigger when only pluginVersion has changed. #50677, @torkelo
- Expression: Execute hidden expressions. #50636, @yesoreyeram
- Geomap: Support showing tooltip content on click (not just hover). #50985, @ryantxu
- Heatmap: Remove alpha flag from new heatmap panel. #50733, @ryantxu
- Instrumentation: Define handlers for requests that are not handled with named handlers. #50613, @bergquist
- π² Log Panel: Improve log row hover contrast and visibility. #50908, @Seyaji
- π Logs: Handle backend-mode errors in histogram. #50535, @gabor
- Loki: Do not show histogram for instant queries. #50711, @gabor
- Loki: Handle data source configs with path in the url. #50971, @gabor
- Loki: Handle invalid query type values. #50755, @gabor
- OAuth: Redirect to login if no oauth module is found or if module is not configured. #50661, @kalleep
- OptionsUI: Move internal options editors out of @grafana/ui. #50739, @ryantxu
- Prometheus: Don't show undefined for step in collapsed options in query editor when value is "auto". #50511, @aocenas
- Prometheus: Show query patterns in all editor modes for Prometheus and Loki. #50263, @ivanahuckova
- Tempo: Add link to Tempo Search with node service selected. #49776, @joey-grafana
- Time Series Panel: Add Null Filling and "No Value" Support. #50907, @codeincarnate
- TimeSeries: Add an option to set legend width. #49126, @bobrik
- Timeseries: Improve cursor Y sync behavior. #50740, @ryantxu
- Traces: Do not use red in span colors as this looks like an error. #50074, @joey-grafana
π Bug fixes
- Alerting: Fix AM config overwrite when SQLite db is locked during sync. #50951, @JacobsonMT
- Alerting: Fix alert instances filtering for prom rules. #50850, @konrad147
- Alerting: Fix alert rule page crashing when datasource contained URL unsafe characters. #51105, @gillesdemey
- Alerting: Fix automatically select newly created folder option. #50949, @gillesdemey
- Alerting: Fix removal of notification policy without labels matchers. #50678, @konrad147
- CloudWatch: Allow hidden queries to be executed in case an ID is provided. #50987, @sunker
- Dashboard: Prevent non-repeating panels being dropped from repeated rows when collapsed/expanded. #50764, @ashharrison90
- Dashboards: Fix folder picker not showing correct results when typing too fast. #50303, @joshhunt
- Datasource: Prevent panic when proxying for non-existing data source. #50667, @wbrowne
- Explore: Fix log context scroll to bottom. #50600, @ivanahuckova
- Explore: Revert "Remove support for compact format URLs (#49350)". #50873, @gelicia
- Expressions: Fixes dashboard schema migration issue that casued Expression datasource to be set on panel level. #50945, @torkelo
- Formatting: Fixes valueFormats for a value of 0. #50719, @JoaoSilvaGrafana
- GrafanaData: Fix week start for non-English browsers. #50582, @AgnesToulet
- LibraryPanel: Resizing a library panel to 6x3 no longer crashes the dashboard on startup. #50400, @ashharrison90
- LogRow: Fix placement of icon. #51010, @ivanahuckova
- Loki: Fix bug in labels framing. #51015, @gabor
- Loki: Fix issues with using query patterns. #50414, @ivanahuckova
- Loki: Fix showing of duplicated label values in dropdown in query builder. #50680, @ivanahuckova
- MSSQL: Fix ParseFloat error. #50815, @zoltanbedi
- Panels: Fixes issue with showing 'Cannot visualize data' when query returned 0 rows. #50485, @torkelo
- Playlists: Disable Create Playlist buttons for users with viewer role. #50840, @asymness
- π Plugins: Fix typo in plugin data frames documentation. #50554, @osisoft-mbishop
- Prometheus: Fix body not being included in resource calls if they are POST. #50833, @aocenas
- RolePicker: Fix submenu position on horizontal space overflow. #50769, @Clarity-89
- Tracing: Fix trace links in traces panel. #50028, @connorlindsey
π Deprecations
π Support for compact Explore URLs is deprecated and will be removed in a future release. Until then, when navigating to Explore using the deprecated format the URLs are automatically converted. If you have existing links pointing to Explore update them using the format generated by Explore upon navigation.
β‘οΈ You can identify a compact URL by its format. Compact URLs have the left (and optionally right) url parameter as an array of strings, for example
&left=["now-1h","now"...]
. The standard explore URLs follow a key/value pattern, for example&left={"datasource":"test"...}
. Please be sure to check your dashboards for any hardcoded links to Explore and update them to the standard URL pattern. Issue #50873<!-- 9.0.1 END --> <!-- 9.0.0 START -->
-
v9.0.0 Changes
June 10, 2022π Features and enhancements
- API: Add GET /api/annotations/:annotationId endpoint. #47739, @scottbock
- API: Add endpoint for updating a data source by its UID. #49396, @papagian
- AccessControl: Add enterprise only setting for rbac permission cache. #49006, @kalleep
- AccessControl: Document basic roles changes and provisioning V2. #48910, @gamab
- AccessControl: Enable RBAC by default. #48813, @IevaVasiljeva
- β AddDataSourceConfig: Remove deprecated checkHealth prop. #50296, @kaydelaney
- Alerting: Add Image URLs to Microsoft Teams notifier. #49385, @joeblubaugh
- Alerting: Add RBAC actions and role for provisioning API routes. #50459, @yuri-tceretian
- Alerting: Add Screenshot URLs to Pagerduty Notifier. #49377, @joeblubaugh
- Alerting: Add a "Reason" to Alert Instances to show underlying cause of state. #49259, @joeblubaugh
- Alerting: Add a general screenshot service and alerting-specific image service. #49293, @joeblubaugh
- Alerting: Add image url or file attachment to email notifications. #49381, @joeblubaugh
- Alerting: Add image_urls to OpsGenie notification details. #49379, @joeblubaugh
- Alerting: Add notification policy flow chart. #49405, @peterholmberg
- Alerting: Attach image URL to alerts in Webhook notifier format. #49378, @joeblubaugh
- Alerting: Attach image URLs or upload files to Discord notifications. #49439, @alexweav
- Alerting: Attach image URLs to Google Chat notifications. #49445, @alexweav
- Alerting: Attach screenshot data to Unified Alerting notifications. #49374, @joeblubaugh
- Alerting: Create folder for alerting when start from the scratch. #48866, @yuri-tceretian
- Alerting: Modify alertmanager endpoints for proxying using the datasource UID. #47978, @papagian
- Alerting: Modify endpoint for testing a datasource rule using the UID. #48070, @papagian
- Alerting: Modify prometheus endpoints for proxying using the datasource UID. #48052, @papagian
- Alerting: State Manager takes screenshots. #49338, @joeblubaugh
- Alerting: Use UID scope for folders authorization. #48970, @yuri-tceretian
- Alerting: modify ruler endpoints for proxying using the datasource UID. #48046, @papagian
- Angular: Adds back two angular directives that are still used by remaining angular bits and plugins. #50380, @torkelo
- Azure Monitor: Add Resource Picker to Metrics Queries. #49029, @sarahzinger
- Azure Monitor: Add search feature to resource picker. #48234, @sarahzinger
- AzureMonitor: Add support for selecting multiple options when using the equals and not equals dimension filters. #48650, @aangelisc
- AzureMonitor: Remove deprecated code. #48328, @andresmgot
- π Build: Change names to PascalCase to match. #48949, @zuchka
- Chore: Remove deprecated DataSourceAPI methods. #49313, @ifrost
- Chore: Upgrade typescript to 4.6.4. #49016, @kaydelaney
- Cloud Monitoring: Use new annotation API. #49026, @kevinwcyu
- CloudMonitoring: Allow to set a custom value or disable graph_period. #48646, @andresmgot
- CloudWatch: Add generic filter component to variable editor. #47907, @iwysiu
- CloudWatch: Added missing AWS/AppRunner metrics. #49174, @Aton-Kish
- CloudWatch: Enable support for dynamic labels with migrated alias patterns. #49173, @sunker
- Cloudwatch: Pass label in deep link. #49160, @sunker
- Cloudwatch: Use new annotation API. #48102, @sunker
- Dashboard: Validate dashboards against schema on save. #48252, @sdboyer
- DashboardPickerByID: Add option to exclude dashboards. #49211, @Clarity-89
- DashboardPickerById: Add optionLabel prop. #47556, @Clarity-89
- Dashboards: Display values of 0 with the configured decimal places. #48155, @wx1322
- Data: Remove deprecated types and functions from valueMappings. #50035, @kaydelaney
- Elasticsearch: Remove browser access mode. #49014, @gabor
- Elasticsearch: Remove support for versions after their end of the life (<7.10.0). #48715, @ivanahuckova
- Encryption: Add support for multiple data keys per day. #47765, @joanlopez
- Encryption: Enable envelope encryption by default. #49301, @joanlopez
- Explore: Remove support for legacy, compact format URLs. #49350, @gelicia
- Explore: Skip Angular error handling when Angular support is disabled. #49311, @ifrost
- Explore: simplify support for multiple query editors. #48701, @Elfo404
- π FeatureToggles: Support changing feature toggles with URL parameters. #50275, @ryantxu
- FileUpload: Make component accessible by keyboard navigation. #47497, @tolzhabayev
- Formatting: Make SI number formats more robust. #50117, @kaydelaney
- Graph: Deprecate Graph (old) and make it no longer a visualization option for new panels. #48034, @torkelo
- IconButton: IconButtons are now correctly aligned in Safari. #48759, @ashharrison90
- Logger: Enable new logging format by default. #47584, @ying-jeanne
- Loki: Add more query patterns. #50248, @ivanahuckova
- Loki: Enable new visual query builder by default. #48346, @ivanahuckova
- Loki: use the same dataframe-format for both live and normal queries. #47153, @gabor
- OAuth: Make allowed email domain case insensitive. #49252, @Jguer
- Panels: Use the No value option when showing the no data message. #47675, @torkelo
- π Plugins: Remove plugin list panel. #46914, @tolzhabayev
- Query History: Enable new query history by default. #49407, @ifrost
- QueryEditorRow: Show query errors next to query in a consistent way across Grafana. #47613, @torkelo
- SAML: Implement Name Templates for assertion_attribute_name option. #48022, @mmandrus
- Service accounts: Do not display service accounts assigned to team. #48995, @eleijonmarck
- Settings: Use Grafana Azure SDK to pass Azure env vars for external plugins. #48954, @kostrse
- Shortcuts: Add shortcut to show shortcuts to the list of shortcuts. #48395, @ivanahuckova
- Traces Panel: Add new Traces Panel visualization. #47534, @joey-grafana
- Traces: Filter by service/span name and operation in Tempo and Jaeger. #48209, @joey-grafana
- Transformations: Allow more complex regex expressions in
Rename by regex
. #48179, @ashharrison90 - π» grafana/ui: Add default type="button" to . #48183, @axelavargas
π Bug fixes
- Alerting: Fix database unavailable removes rules from scheduler. #49874, @grobinson-grafana
- AzureMonitor: Fix auto-selection of time-grain for metrics. #49278, @aangelisc
- DataSources: Fixes issue with expressions not being queried. #50446, @JoaoSilvaGrafana
- GraphNG: Fix thresholds by color not following data update. #48571, @zoltanbedi
- Jaeger: Update operations dropdown. #49329, @joey-grafana
- Login: Fix mismatching label on auth_module in user list. #49177, @Jguer
- Playlists: Save button now correctly creates a new playlist. #50381, @ashharrison90
- RBAC: Fix migrations running in the wrong order causing inheritance problem in enterprise. #50452, @gamab
- RBAC: Fix migrations running into the wrong order. (Enterprise)
- ServiceAccounts: Add identifiable token prefix to service account tokens. #49011, @Jguer
- Traces: Fix missing CopyButton on KeyValueTables and overlapping of panels. #49271, @svennergr
π₯ Breaking changes
β‘οΈ The
@grafana/ui
package helper functionselectOptionInTest
used in frontend tests has been removed as it caused testing libraries to be bundled in the production code of Grafana. If you were using this helper function in your tests please update your code accordingly:// before import { selectOptionInTest } from '@grafana/ui'; // ...test usage await selectOptionInTest(selectEl, 'Option 2'); // after import { select } from 'react-select-event'; // ...test usage await select(selectEl, 'Option 2', { container: document.body });
Issue #50442
β Removed deprecated
checkHealth
prop from the@grafana/e2e
addDataSource
config. Previously this value defaulted tofalse
, and has not been used in end-to-end tests since Grafana 8.0.3. Issue #50296β Removes the deprecated
LegacyBaseMap
,LegacyValueMapping
,LegacyValueMap
, andLegacyRangeMap
types, andgetMappedValue
function from grafana-data. Migration is as follows: | Old | New | | ------------- | ------------- | |LegacyBaseMap
|MappingType
| |LegacyValueMapping
|ValueMapping
| |LegacyValueMap
|ValueMap
| |LegacyRangeMap
|RangeMap
| |getMappedValue
|getValueMappingResult
| Issue #50035β‘οΈ This change fixes a bug in Grafana where intermittent failure of database, network between Grafana and the database, or error in querying the database would cause all alert rules to be unscheduled in Grafana. Following this change scheduled alert rules are not updated unless the query is successful.
The
get_alert_rules_duration_seconds
metric has been renamed toschedule_query_alert_rules_duration_seconds
. Issue #49874- 0οΈβ£ Any secret (data sources credential, alert manager credential, etc, etc) created or modified with Grafana v9.0 won't be decryptable from any previous version (by default) because the way encrypted secrets are stored into the database has changed. Although secrets created or modified with previous versions will still be decryptable by Grafana v9.0.
- β‘οΈ If required, although generally discouraged, the
disableEnvelopeEncryption
feature toggle can be enabled to keep envelope encryption disabled once updating to Grafana v9.0. - βͺ In case of need to rollback to an earlier version of Grafana (i.e. Grafana v8.x) for any reason, after being created or modified any secret with Grafana v9.0, the
envelopeEncryption
feature toggle will need to be enabled to keep backwards compatibility (only fromv8.3.x
a bit unstable, from8.5.x
stable). - βͺ As a final attempt to deal with issues related with the aforementioned situations, the
grafana-cli admin secrets-migration rollback
command has been designed to move back all the Grafana secrets encrypted with envelope encryption to legacy encryption. So, after running that command it should be safe to disable envelope encryption and/or roll back to a previous version of Grafana. β‘οΈ Alternatively or complementarily to all the points above, backing up the Grafana database before updating could be a good idea to prevent disasters (although the risk of getting some secrets corrupted only applies to those updates/created with after updating to Grafana v9.0). Issue #49301
π According to the dynamic labels documentation, you can use up to five dynamic values per label. Thereβs currently no such restriction in the alias pattern system, so if more than 5 patterns are being used the GetMetricData API will return an error.
Dynamic labels only allow \${LABEL} to be used once per query. Thereβs no such restriction in the alias pattern system, so in case more than 1 is being used the GetMetricData API will return an error.
When no alias is provided by the user, Grafana will no longer fallback with custom rules for naming the legend.
In case a search expression is being used and no data is returned, Grafana will no longer expand dimension values, for instance when using a multi-valued template variable or star wildcard
*
in the dimension value field. Ref https://github.com/grafana/grafana/issues/20729Time series might be displayed in a different order. Using for example the dynamic label
${PROP('MetricName')}
, might have the consequence that the time series are returned in a different order compared to when the alias pattern{{metric}}
is used
Issue #49173
π§ In Elasticsearch, browser access mode was deprecated in grafana 7.4.0 and removed in 9.0.0. If you used this mode, please switch to server access mode on the datasource configuration page. Issue #49014
π Environment variables passed from Grafana to external Azure plugins have been renamed:
AZURE_CLOUD
renamed toGFAZPL_AZURE_CLOUD
AZURE_MANAGED_IDENTITY_ENABLED
renamed toGFAZPL_MANAGED_IDENTITY_ENABLED
AZURE_MANAGED_IDENTITY_CLIENT_ID
renamed toGFAZPL_MANAGED_IDENTITY_CLIENT_ID
π There are no known plugins which were relying on these variables. Moving forward plugins should read Azure settings only via Grafana Azure SDK which properly handles old and new environment variables. Issue #48954
β Removes support for for ElasticSearch versions after their end-of-life, currently versions < 7.10.0. To continue to use ElasticSearch data source, upgrade ElasticSearch to version 7.10.0+. Issue #48715
π Application Insights and Insight Analytics queries in Azure Monitor were deprecated in Grafana 8.0 and finally removed in 9.0. Deprecated queries will no longer be executed. Please refer to the documentation for more information about this change.
Issue #48328
0οΈβ£ grafana/ui: Button now specifies a default type="button"
0οΈβ£ The
Button
component provided by @grafana/ui now specifies a defaulttype="button"
when no type is provided. In previous versions, if the attribute was not specified for buttons associated with a<form>
the default value wassubmit
per the specificationYou can preserve the old behavior by explicitly setting the type attribute:
<Button type="submit" />
Github Issue #41863. Issue #48183
The
Rename by regex
transformation has been improved to allow global patterns of the form/<stringToReplace>/g
. Depending on the regex match used, this may cause some transformations to behave slightly differently. You can guarantee the same behaviour as before by wrapping thematch
string in forward slashes (/
), e.g.(.*)
would become/(.*)/
Issue #48179β‘οΈ
<Select />
menus will now portal to the document body by default. This is to give more consistent behaviour when positioning and overlaying. If you were settingmenuShouldPortal={true}
before you can safely remove that prop and behaviour will be the same. If you weren't explicitly setting that prop, there should be no visible changes in behaviour but your tests may need updating. Please see the original PR (https://github.com/grafana/grafana/pull/36398) for migration guides. If you were settingmenuShouldPortal={false}
this will continue to prevent the menu from portalling.Issue #48176
β Grafana alerting endpoint prefixed with
api/v1/rule/test
that tests a rule against a Corte/Loki data source now expects the data source UID as a path parameter instead of the data source numeric identifier. Issue #48070π Grafana alerting endpoints prefixed with
api/prometheus/
that proxy requests to a Cortex/Loki data source now expect the data source UID as a path parameter instead of the data source numeric identifier. Issue #48052π Grafana alerting endpoints prefixed with
api/ruler/
that proxy requests to a Cortex/Loki data source now expect the data source UID as a path parameter instead of the data source numeric identifier. Issue #48046π Grafana alerting endpoints prefixed with
api/alertmanager/
that proxy requests to an Alertmanager now expect the data source UID as a path parameter instead of the data source numeric identifier. Issue #47978π The format of log messages have been updated,
lvl
is nowlevel
anderor
anddbug
has been replaced witherror
anddebug
. The precision of timestamps has been increased. To smooth the transition, it is possible to opt-out of the new log format by enabling the feature toggleoldlog
. This option will be removed in a future minor release. Issue #47584π In the Loki data source, the dataframe format used to represent Loki logs-data has been changed to a more efficient format. The query-result is represented by a single dataframe with a "labels" column, instead of the separate dataframes for every labels-value. When displaying such data in explore, or in a logs-panel in the dashboard will continue to work without changes, but if the data was loaded into a different dashboard-panel, or Transforms were used, adjustments may be necessary. For example, if you used the "labels to fields" transformation with the logs data, please switch to the "extract fields" transformation. Issue #47153
π Deprecations
π
setExploreQueryField
,setExploreMetricsQueryField
andsetExploreLogsQueryField
are now deprecated and will be removed in a future release. If you need to set a different query editor for Explore, conditionally render based onprops.app
in your regular query editor. Please refer to https://grafana.com/docs/grafana/latest/developers/plugins/add-support-for-explore-queries/ for more information. Issue #48701π Plugin development fixes & changes
- Chore: Remove react-testing-lib from bundles. #50442, @jackw
- Select: Portal menu by default. #48176, @ashharrison90
<!-- 9.0.0 END --> <!-- 9.0.0-beta3 START -->
-
v9.0.0-beta3 Changes
June 06, 2022π Features and enhancements
- Alerting: Add provenance guard to config api. #50147, @JohnnyQQQQ
- Alerting: Make folder filter clearable in Alert list panel. #50093, @peterholmberg
- Alerting: Provisioning API - Alert rules. #47930, @JohnnyQQQQ
- Alerting: Remove Image Upload code from Slack notifier. #50062, @joeblubaugh
- Alerting: Remove double quotes from matchers. #50038, @gotjosh
- Cloudwatch: Dynamic labels autocomplete. #49794, @sunker
- Datasource: Remove deprecated max_idle_connections_per_host setting. #49948, @marefr
- Datasource: Remove support for unencrypted passwords. #49987, @marefr
- Dependencies: Update to Golang version
1.17.11
. #50253, @dsotirakis - Loki: Run query when pressing Enter on line-filters. #49913, @svennergr
- Metrics: Remove support for using summaries instead of histogram for HTTP instrumentation. #49985, @bergquist
- π Plugins: Remove deprecated /api/tsdb/query metrics endpoint. #49916, @wbrowne
- π Plugins: Support headers field for check health. #49930, @marefr
- Prometheus/Loki: Add raw query and syntax highlight in explain mode. #50070, @aocenas
- Prometheus: Migrate metadata queries to use resource calls. #49921, @srclosson
- RBAC: Make RBAC action names more consistent. #49730, @IevaVasiljeva
- RBAC: Make RBAC action names more consistent. (Enterprise)
- Settings: Sunset non-duration based login lifetime config. #49944, @sakjur
- [9.0.x] Alerting: Update alert rule diff to not see difference between nil and empty map. #50198, @yuri-tceretian
π Bug fixes
- Alerting: Fix alert list panel showing firing alerts with no instances. #50069, @gillesdemey
- Alerting: Fix notification policy "Override grouping" form save. #50031, @JacobsonMT
- Alerting: Remove double quotes from matchers. #50046, @alexweav
- Alerting: Use correct permission scope for external AM updates. #50159, @gillesdemey
- Datasource: Fix allowed cookies to be forwarded as header to backend datasources. #49541, @marefr
- Licensing: Fix trial expiration warning. (Enterprise)
- Loki: Fix uncaught errors if
labelKey
contains special characters. #49887, @svennergr - Prometheus: Fix aligning of labels of exemplars after backend migration. #49924, @aocenas
- SharePDF: Fix repeated datasource variables in PDF. (Enterprise)
- State Timeline: Fix Null Value Filling and Value Transformation. #50054, @codeincarnate
- Usage stats: Divide collection into multiple functions to isolate failures. #49928, @sakjur
π₯ Breaking changes
β Removes support for storing/using datasource
password
andbasicAuthPassword
unencrypted which was deprecated in Grafana v8.1.0. Please usesecureJsonData.password
andsecureJsonData.basicAuthPassword
. Issue #49987β Removes the option to instrument HTTP request in Grafana using summaries instead of histograms. Issue #49985
Removes support for deprecated dataproxy.max_idle_connections_per_host setting. Please use max_idle_connections instead. Issue #49948
β Removes the deprecated
getFormStyles
function from grafana-ui. π Prefer usingGrafanaTheme2
and theuseStyles2
hook. Issue #49945The configuration options
auth.login_maximum_inactive_lifetime_days
andauth.login_maximum_lifetime_days
were deprecated in Grafana v7.2.0 and have now been removed. Uselogin_maximum_inactive_lifetime_duration
andlogin_maximum_lifetime_duration
to customize the maximum lifetime of a login session. Issue #49944β Removed the deprecated
isFocused
andisInvalid
props from theInlineLabel
component. These props haven't done anything for a while, so migration is just a matter of removing the props. Issue #49929β Removed the deprecated
onColorChange
prop fromColorPicker
. Moving forward theonChange
prop should be used. Issue #49923/api/tsdb/query
API has been removed. Use /api/ds/query instead. Issue #49916onClipboardCopy
andonClipboardError
APIs have been changed such that the callback's argument is just the text that's been copied rather than the oldClipboardEvent
interface. Migration should just be a matter of going from<ClipboardButton {/*other props... */} onClipboardCopy={(e) => { console.log(`Text "${e.text}" was copied!`); }} />
to
<ClipboardButton {/* other props... */} onClipboardCopy={(copiedText) => { console.log(`Text "${copiedText}" was copied!`); }} /> ``` Issue [#49847](https://github.com/grafana/grafana/issues/49847) The following RBAC action renames have been carried out: * β‘οΈ `users.authtoken:update` -> `users.authtoken:write`; * β‘οΈ `users.password:update` -> `users.password:write`; * β‘οΈ `users.permissions:update` -> `users.permissions:write`; * β‘οΈ `users.quotas:update` -> `users.quotas:write`; * β‘οΈ `org.users.role:update` -> `org.users:write`; * β‘οΈ `alert.instances:update` -> `alert.instances:write`; * β‘οΈ `alert.rules:update` -> `alert.rules:write`; * `users.authtoken:list` -> `users.authtoken:read`; * `users.quotas:list` -> `users.quotas:read`; * `users.teams:read` -> replaced by `users.read` + `teams:read` π We've added a migration from the old action names to the new names and have updated our documentation. But you will have to update any scripts and provisioning files that are using the old action names. Issue [#49730](https://github.com/grafana/grafana/issues/49730) The following RBAC action renames have been carried out: * `reports.admin:write` -> `reports:write`; * `reports.admin:create` -> `reports:create`; * β‘οΈ `licensing:update` -> `licensing:write`; * `roles:list` -> `roles:read`; * `teams.roles:list` -> `teams.roles:read`; * `users.roles:list` -> `users.roles:read`; * `users.permissions:list` -> `users.permissions:read` π We've added a migration from the old action names to the new names and have updated our documentation. But you will have to update any scripts and provisioning files that are using the old action names. Issue [#3372](https://github.com/grafana/grafana/issues/3372) ### π Plugin development fixes & changes - π» **UI:** Remove deprecated getFormStyles function. [#49945](https://github.com/grafana/grafana/pull/49945), [@kaydelaney](https://github.com/kaydelaney) - **InlineLabel:** Remove deprecated props. [#49929](https://github.com/grafana/grafana/pull/49929), [@kaydelaney](https://github.com/kaydelaney) - **ColorPicker:** Remove deprecated onColorChange prop. [#49923](https://github.com/grafana/grafana/pull/49923), [@kaydelaney](https://github.com/kaydelaney) - **ClipboardButton:** Simplify callbacks. [#49847](https://github.com/grafana/grafana/pull/49847), [@kaydelaney](https://github.com/kaydelaney) <!-- 9.0.0-beta3 END --> <!-- 9.0.0-beta2 START -->
-
v9.0.0-beta2 Changes
May 31, 2022π 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 -->
-
v9.0.0-beta1 Changes
May 24, 2022π Features and enhancements
- AccessControl: Add setting for permission cache. (Enterprise)
- AccessControl: Check dashboard permissions for reports. (Enterprise)
- Auth: Remove grafana ui dependency to the aws sdk. #43559, @sunker
- BasicRoles: Add API endpoint to reset basic roles permissions to factory. (Enterprise)
- LDAP Mapping: Allow Grafana Admin mapping without org role. #37189, @krzysdabro
- Licensing: Only enforce total number of users. (Enterprise)
- Loki: do not convert NaN to null. #45389, @gabor
- Report: API support for multiple dashboards. (Enterprise)
- Report: Support sending embedded image in the report email. (Enterprise)
- Report: UI for multiple dashboards. (Enterprise)
- Reporting: Remove redundant empty attachment when export to CSV is enabled. (Enterprise)
- SAML: Implement Name Templates for assertion_attribute_name option. (Enterprise)
- SSE/Alerting: Support prom instant vector responses. #44865, @kylebrandt
- Tracing: Add trace to metrics config behind feature toggle. #46298, @connorlindsey
π Bug fixes
- π Fix: Prevent automatic parsing of string data types to numbers. #46035, @joshhunt
- Prometheus: Fix inconsistent labels in exemplars resulting in marshal json error. #46135, @hanjm
π₯ Breaking changes
π In the Loki data source, for consistency and performance reasons, we changed how we represent
NaN
(not a number) values received from Loki. 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 #45389π¦ The dependency to grafana/aws-sdk is moved from grafana/ui to the plugin. This means that any plugin that use SIGV4 auth need to pass a SIGV4 editor component as a prop to the
DataSourceHttpSettings
component. Issue #43559<!-- 9.0.0-beta1 END --> <!-- 8.5.3 START -->
-
v8.5.15 Changes
November 08, 2022 -
v8.5.14 Changes
October 11, 2022π Features and enhancements
- Access Control: Allow org admins to invite new users. #55585, @IevaVasiljeva
<!-- 8.5.14 END -->
<!-- 8.5.13 START -->
-
v8.5.13 Changes
September 20, 2022π Features and enhancements
π Bug fixes
- AuthNZ: Security fixes for CVE-2022-35957 and CVE-2022-36062. #55495, @IevaVasiljeva
<!-- 8.5.13 END -->
<!-- 8.5.11 START -->
-
v8.5.11 Changes
August 30, 2022π Features and enhancements
- Rendering: Add support for renderer token (#54425). #54438, @joanlopez
- Alerting: AlertingProxy to elevate permissions for request forwarded to data proxy when RBAC enabled. #53681, @yuri-tceretian
<!-- 8.5.11 END -->
<!-- 8.5.10 START -->
-
v8.5.10 Changes
August 08, 2022