Explicitly set all front matter labels in the source files (#71548)
* Set every page to have defaults of 'Enterprise' and 'Open source' labels
* Set administration pages to have of 'Cloud', 'Enterprise', and 'Open source' labels
* Set administration/enterprise-licensing pages to have 'Enterprise' labels
* Set administration/organization-management pages to have 'Enterprise' and 'Open source' labels
* Set administration/provisioning pages to have 'Enterprise' and 'Open source' labels
* Set administration/recorded-queries pages to have labels cloud,enterprise
* Set administration/roles-and-permissions/access-control pages to have labels cloud,enterprise
* Set administration/stats-and-license pages to have labels cloud,enterprise
* Set alerting pages to have labels cloud,enterprise,oss
* Set breaking-changes pages to have labels cloud,enterprise,oss
* Set dashboards pages to have labels cloud,enterprise,oss
* Set datasources pages to have labels cloud,enterprise,oss
* Set explore pages to have labels cloud,enterprise,oss
* Set fundamentals pages to have labels cloud,enterprise,oss
* Set introduction/grafana-cloud pages to have labels cloud
* Fix introduction pages products
* Set panels-visualizations pages to have labels cloud,enterprise,oss
* Set release-notes pages to have labels cloud,enterprise,oss
* Set search pages to have labels cloud,enterprise,oss
* Set setup-grafana/configure-security/audit-grafana pages to have labels cloud,enterprise
* Set setup-grafana/configure-security/configure-authentication pages to have labels cloud,enterprise,oss
* Set setup-grafana/configure-security/configure-authentication/enhanced-ldap pages to have labels cloud,enterprise
* Set setup-grafana/configure-security/configure-authentication/saml pages to have labels cloud,enterprise
* Set setup-grafana/configure-security/configure-database-encryption/encrypt-secrets-using-hashicorp-key-vault pages to have labels cloud,enterprise
* Set setup-grafana/configure-security/configure-request-security pages to have labels cloud,enterprise,oss
* Set setup-grafana/configure-security/configure-team-sync pages to have labels cloud,enterprise
* Set setup-grafana/configure-security/export-logs pages to have labels cloud,enterprise
* Set troubleshooting pages to have labels cloud,enterprise,oss
* Set whatsnew pages to have labels cloud,enterprise,oss
* Apply updated labels from review
---------
(cherry picked from commit 7eb17bccca)
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
Co-authored-by: brendamuir <100768211+brendamuir@users.noreply.github.com>
Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>
3.0 KiB
description, keywords, labels, menuTitle, title, weight
| description | keywords | labels | menuTitle | title | weight | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Guide for migrating plugins from Grafana v9.x to v10.x |
|
|
v9.x to v10.x | Migrate plugins from Grafana version 9.x to 10.x | 1900 |
Migrate plugins from Grafana version 9.x to 10.x
Verify plugin behavior with React 18
Grafana 10 includes our upgrade to React 18 and use of the new React client-side rendering API. These changes were delivered to the core grafana repo with PR 64428.
Although these updates bring many significant benefits, there's a potential for them to impact the way that your plugin works. In particular, there could be unintended side effects caused by the changes around improving consistency with useEffect timings and automatic batching of state updates.
Recommended actions:
- Review the React 18 upgrade docs.
- Test your plugins against one of the latest grafana-dev docker images (for example, this one).
- If your plugin is affected, add a comment to the forum discussion. Be sure to communicate with us so we are aware of the issue and can provide help.
Data frame field values are now just arrays
In Grafana 10, the values in data frames are now managed as simple JavaScript arrays (see PR #66480). It is no longer necessary to wrap values in a Vector implementation.
Most code targeting 9.x will continue to work without any issues. An exception is the rare case in which existing code directly implements Vector rather than extending or using base classes. In this case, the code should either return an array or extend FunctionalVector. All Vector implementations have been deprecated and will be removed in the future.
When writing plugins that should run on 9.x, continue to use the Vector interfaces. In this case, when targeting versions 10+, you can now use simple arrays rather than wrapper classes.
To make this transition seamless, we employed the Original JavaScript Sin™. That is, we extended the native Array prototype with several Vector methods. We will atone and undo this in v11, when Vector interfaces and classes are removed.