Commit Graph
2698 Commits
Author SHA1 Message Date
Jesse David Peterson e067b1de98 FeatureToggle: Create experimental timeRangePan flag (#112988)
feat(toggle): new experimental timeRangePan feature toggle
2025-11-04 21:39:46 -04:00
Matias Chomicki cbd6b53182 New Logs Panel: Enable new visualization by default (#113340)
* New Logs Panel: enabled by default

* Update toggles

* Change feature flag availability
2025-11-03 06:21:39 -08:00
d0ea82633f Jaeger: Migrate API calls to gRPC endpoint (#113297)
* Jaeger: Migrate Services and Operations to the gRPC Jaeger endpoint (#112384)

* add grpc feature toggle

* move types into types.go

* creates grpc client functions for services and operations

* Call grpc services function when feature flag is enabled for health check

* remove unnecessary double encoding

* check for successful status code before decoding response and return nil in case of successful response

* remove duplicate code

* use variable

* fix error type in testsz

* Jaeger: Migrate search and Trace Search calls to use gRPC endpoint (#112610)

* move all types into types package except for JagerClient

* move all helper functions into utils package

* change return type of search function to be frames and add grpc search functionality

* fix tests

* fix types and the way we check error response from grpc

* change trace name and duration unit conversion

* fix types and add tests

* support queryAttributes

* quick limit implementation in post processing

* add todo for attributes / tags

* make trace functionality ready to support grpc flow

* add functions to process search response for a specific trace and create the Trace frame

* tests for helper funtions

* remove grpc querying for now!

* change logic to be able to process and support multiple resource spans

* remove logic for gRPC from grpc_client.go

* add equivalent fields for logs and references

* add tests for grpcTraceResponse function

* fix types after merge with main

* fix status code checks and return nil for error on successful responses

* enable reading through config flag for trace search

* create sigle key value type since they are similar for OTLP and non OTLP based formats

* reference right type

* convert events and links into references and logs

* add status code, status message and kind to data frame

* fix tests to accomodate new format

* remove unused function and add more tests

* remove edit flag for jsonc golden test files

* add clarifying comment

* fix tests and linting

* fix golden files for testing

* fix typo

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* fix typo

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* fix typo

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* add clarifying comment

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* remove unnecessary logging statement

* fix downstream errors

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* use downstreamerrorf where applicable and add missing downstream eror sources.

* tests

---------

Co-authored-by: ismail simsek <ismailsimsek09@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-10-31 11:19:16 -07:00
John-George Sample f6e4dd9b0c Icon: Add thumbs-down to availableIconIndex (#113108)
add `thumbs-down` to icon types
2025-10-31 09:30:06 -04:00
Janos Gub 1070f94fbb Navigation: Move Cost management and billing plugin to root (#111739) 2025-10-31 10:41:01 +00:00
Nathan Marrs 21b120cbae Dashboards: Promote export dashboard as image feature to GA (#113192) 2025-10-30 13:34:33 -07:00
Laura Fernández af8d166b90 Chore: Update node to v24 (#112649) 2025-10-29 17:17:07 +01:00
Brendan O'Handley 2472555af0 Add to dashboard: expose add to dashboard form component for external apps (#112609)
* add extension for drilldown to add to dashboard

* reuse configure add to dashboard function callback

* structure for drilldown add to dashboard

* fix imports

* fix tests

* expose as a component

* remove extension link

* get component ready to extend

* lazy load component

* add component to exposed component registry

* update folder structure to not work in explore folder

* keep dependencies clean

* nice structure to let folks know this is a drilldown integration

* update code owners for new file

* make exposed component more generic, step one, update component id

* step 2, expose add to dashboard form component

* add more explicit useAbsolutePath option to form

* remove old implementation code for drilldown specific component

* commit translation

* add comments to avoid breaking changes

* add e2e test for add to dashboard form component

* fix flaky test

* add exposed component id to e2e test app

* remove gridPos in buildPanel fallback fn

* add code comment for useAbsolutePath's purpose

* remove gridPos from e2e test
2025-10-29 09:15:20 -05:00
Tobias Skarhed c0ae0f437f Scopes: Display subtitle and enable direct scopes apply (#112876)
* Display subtitle and enable direct scopes apply

* Extract each type into its own component

* Fix unit integration test

* Fix fe linting

* Fix imports

* Import order

* Update generated type

* Update type generation

* Format go

* Add test case for radio button container selection

* Remove infra mock

* Remove non-existant imports

* Remove unused assertions

* Refactor tree item for a11y

* Add proper keyboard support for directly applying scope

* Update i18n

* Fix button selector

* Remove test code

* Fix race condition for seletion vs blur update
2025-10-29 10:52:18 +01:00
Torkel Ödegaard 5a031b370f PanelTimeSettings: Support panel time range settings changes from dashboard in view mode (#113027)
* Something is working

* Progress

* Update

* Update

* Update

* Some new unit tests

* Fix

* time shift fix

* Update

* Always show hidden toggle

* Update
2025-10-29 09:06:23 +01:00
Nathan Marrs 8263803e81 Grafana Data Source: Add random walk configuration options (#113009)
* Grafana: Add random walk configuration options to Grafana datasource

Add UI controls to configure random walk parameters (min, max, start value,
spread, noise, drop percent) to match TestData datasource functionality.

- Add RandomWalkEditor component with inline number inputs for all parameters
- Update GrafanaQuery type to include random walk configuration fields
- Update backend to parse and apply query parameters to RandomWalk function
- Configuration options match TestData datasource UX for consistency

* Grafana: Add series count support to random walk

Add ability to generate multiple random walk series in a single query
for complete parity with TestData datasource.

- Add seriesCount field to RandomWalkEditor
- Update backend to loop and generate multiple frames based on series count
- Default to 1 series if not specified for backward compatibility

* Grafana: Improve random walk editor UI with better organization and tooltips

Enhance the random walk configuration UI for better usability:

- Organize fields into two logical rows (core config vs fine-tuning)
- Add helpful tooltips to all fields explaining their purpose
- Increase label width to prevent text wrapping
- Group related fields visually for better comprehension

Row 1: Series count, Start value, Min, Max (basic shape and range)
Row 2: Spread, Noise, Drop % (randomness and variation controls)

This provides a cleaner, more intuitive experience compared to TestData's
single-row layout, making it easier for users to configure random walks.

* Grafana: Format RandomWalkEditor code

Apply consistent formatting to RandomWalkEditor component.

* Grafana: Add E2E tests for random walk configuration

Add comprehensive Playwright E2E tests to verify random walk functionality:

- Test that all configuration fields render correctly
- Test min/max value constraints
- Test multiple series generation
- Test spread and noise parameters
- Test drop percentage for simulating missing data
- Test that tooltips are present and functional

These tests ensure the random walk configuration works end-to-end from
UI input to data rendering in panels.

* Grafana: Fix E2E tests for random walk configuration

Fix Playwright test selectors and assertions to work reliably:

- Use specific element IDs to avoid selector conflicts
- Remove flaky dropPercent check from rendering test (covered separately)
- Simplify test assertions to focus on functional verification
- All 7 tests now passing consistently

Tests verify: field rendering, min/max constraints, series count,
spread/noise configuration, drop percentage, and tooltips.

* Grafana: Add advanced E2E tests for random walk

Add two additional tests for better coverage:

- Test configuration value persistence across interactions
- Test that series count actually generates the expected number of series

These tests verify deeper functionality beyond basic UI rendering,
ensuring the random walk feature works correctly end-to-end.

All 9 tests passing consistently (20.1s runtime).

* Grafana: Remove redundant Min/Max tooltips

Remove tooltips from Min and Max fields that just repeated the label text.
These fields are self-explanatory and don't need tooltip icons.

Keeps the UI cleaner while maintaining helpful tooltips on fields that
actually benefit from explanation (Series count, Start value, Spread,
Noise, Drop %).

* Grafana: Add CODEOWNERS entry for random walk E2E tests

Add codeowner assignment for the new grafana-datasource-random-walk.spec.ts
test file to @grafana/grafana-frontend-platform, matching the ownership of
the Grafana datasource code.

* Add dashboardTemplates feature toggle and put new changes behind this toggle to limit impact

* Grafana: Add unit tests for dashboardTemplates feature toggle

Add unit tests to verify RandomWalkEditor renders correctly based on
the dashboardTemplates feature toggle:

- Test that random walk editor renders when FF is enabled
- Test that random walk editor is hidden when FF is disabled

These tests ensure the feature toggle works as expected and prevents
the random walk configuration UI from appearing when the feature is disabled.

* revert previous codeowners change as not necessary

* Grafana: Remove redundant E2E test for feature flag disabled

Remove E2E test for dashboardTemplates feature flag disabled scenario
since it's already covered by unit tests and E2E environment can't
reliably control server-side feature flags.

Feature flag behavior is properly tested in QueryEditor.test.tsx unit tests.
E2E tests focus on functional validation when the feature is enabled.

* fix lint
2025-10-28 13:05:32 -07:00
Leon Sorokin adcc634db6 Histogram: Properly handle sparse heatmap-cells frames (#112907)
* Histogram: Properly handle sparse heatmap-cells frames

* add test

* fix crash with float bounds and rounding

* tweak comment

* add test for float bounds
2025-10-24 12:19:49 -04:00
Sonia Aguilar 681f27e6b3 Alerting: Create alertingAlertRuleFormSchema in restrictedGrafanaApis (#112794)
* create navigateToAlertFormSchemaApi in restrictedGrafanaApis and use it in formDefaults.ts

* update alertingSchemaApi

* fix test

* move alertingSchemaApi.ts and the alerting section in README.md to a new alerting folder

* move cloud rules form schema outside restrictedGrafanaApis

* remove cloud fields in schema and use values from existing enums for some fields

* refactor RestrictedGrafanaApisContextTypeInternalenrichment type adding a high level entry for alerting

* refactor: change naming and come back to one single level in the RestrictedGrafanaApisContextType

* update README.md
2025-10-24 15:47:52 +02:00
Todd Treece dc77da11cf Plugins: API sync (#112452) 2025-10-24 08:09:26 -04:00
xavi 043451685b chore(iam): Remove skipTokenRotationIfRecent feature flag (#112799) 2025-10-23 10:02:41 +02:00
Hugo Häggmark c0391ad2ea Chore: Enable new pluginImporter (#112625)
* Chore: Enable new pluginImporter

* chore: remove pluginLoader
2025-10-23 06:18:23 +02:00
Todd Treece 638a1808f8 Access Control: Add fixed role loader service (#112747) 2025-10-22 12:04:42 -04:00
Will Assis 13f44336f2 unified-storage: remove full ngram feature toggle (#111994)
* unified-storage: remove full ngram feature toggle
2025-10-22 10:11:40 -04:00
Adela Almasan a011ec29fe Actions: Add analytics (#111200) 2025-10-22 13:38:25 +00:00
Ashley Harrison e317e751d1 Internationalisation: Translate time ranges (#112745)
* translations for time ranges

* provide default single value
2025-10-22 13:17:34 +01:00
Tobias Skarhed 2bbba880cd Scopes: Change redirectUrl to redirectPath (#112783)
* Scopes: change redirectUrl to redirectPath

* Update e2e helpers
2025-10-22 11:21:14 +02:00
Jack Baldry 1abb5aa0f9 Rename behavior related to the interactive learning plugin (#112752) 2025-10-22 09:06:21 +01:00
Tobias Skarhed b3d9fd677b Scopes: Redirect to redirectUrl on selection (#112721)
* Add redirectUrl frontend functionality

* Add test

* Add e2e test suite

* Fix linting
2025-10-22 09:16:58 +02:00
Alexander ZobninandIeva adf1224e82 AuthZ: Zanzana only evaluation toggle (#112715)
* Zanzana: Feature toggle to enable zanzana only evaluation

* refactor

* Update pkg/services/featuremgmt/toggles_gen.json

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>

---------

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
2025-10-21 16:03:17 +02:00
Tom Ratcliffe a651fb1348 Chore: Add 'import/no-extraneous-dependencies' rule for packages (#111931) 2025-10-21 12:55:57 +01:00
Torkel ÖdegaardandPaul Marbach 7df537c9fc NewGauge: Adds new feature toggle named newGauge (#112593)
* NewGauge: Feature toggle and fixes

* Gauge: New migration test dashboard

* Update

* Updates

* Tweaked default barWidth

* Fix multi data links

* remove sizing options

* merge fix

* Update

* Restore

* Update

* Tweaked name font size logic

* use file snapshots instead of inline

---------

Co-authored-by: Paul Marbach <paul.marbach@grafana.com>
2025-10-20 18:33:19 +02:00
Lucy Chen 17771e0e1d QueryCaching: Add feature flag for mt query caching (#112660)
Add feature flag for mt query caching
2025-10-20 10:11:25 -06:00
Ieva 0a0311a2b2 RBAC: Only write action sets (#112429)
* implementation + broken tests

* finish tests and cleanup

* fix a bug in logic where we'd return too early for non dash and folder resources
2025-10-20 16:02:56 +01:00
Todd Treece 69628baa9d Plugins: Add pluginStoreServiceLoading feature toggle (#112588) 2025-10-17 16:01:43 -04:00
Ashley Harrison 4cf11b721a PanelChrome: Put overflow: hidden; behind a feature toggle for safety (#112580)
put overflow: hidden behind a feature toggle for safety
2025-10-17 15:40:08 +01:00
Liza Detrick b3f9dad044 logsdrilldown: add app platform (#112133) 2025-10-17 00:31:42 +03:00
Torkel Ödegaard 77e571b079 RadialGauge: (#111841)
* Radial gauge

* Update

* Update

* Update

* Updated

* Progress

* Spotlight

* Glow

* More effects

* Update

* Update

* Update

* Update

* Fix overflow

* Progress

* Progress

* Barwidth factor

* Update

* segmemnted

* Update

* Update

* Update

* Display processor

* Progress

* Updated

* Update

* rounded bars option

* added option for rounded

* Fixed gauge shape and segments

* Updated text and sparkline placmeent

* progress

* New spotlight effect is working

* refactorings

* Update

* hue working in gauge mode

* Update

* Update

* Progress

* Refactorings and sizing improvements

* Refactorings

* Progress

* Unify arc path

* Thresholdsbar

* Update

* Progress

* Update

* Close to mergable

* Unit tests

* Update

* Update

* Fix

* Update

* update

* simple test

* Fix

* Minor tweak

* added icon to shape

* Progress on color simplification

* progress on new color system

* Simplify color gradient modes around a single auto mode

* Progress on text sizing

* Fixes

* Update

* Update

* Hook up manual font size

* Restore old behavior in old panel
2025-10-16 15:53:38 +02:00
Hugo Häggmark a30a71905e Chore: replace feature toggle filterOutBotsFromFrontendLogs with config (#112355)
* Chore: replace feature toggle with config

* chore: small fixes

* chore: updates after pr feedback

* chore: fixes writers toolkit error
2025-10-16 12:03:07 +00:00
Ivana Huckova 89b3f64479 ExtensionSidebar: Introduce ToggleExtensionSidebarEvent (#112325)
* ExtensionSidebar: Use appEvents for opening/closing sidebar

* Refactor

* Fix lint

* Introduce ToggleExtensionSidebar

* Revert keyboard shortcuts

* Revert "Refactor"

This reverts commit ffd901ed0c.

* Revert "ExtensionSidebar: Use appEvents for opening/closing sidebar"

This reverts commit 8083bec978.

* Fix test

* Refactor to prevent flakiness

* Try again

* Improve mocks

* simple

* trying anything at this point

* Flip test order

* Revert "Flip test order"

This reverts commit 2dd33f744e.

* Update togglespyes and act

* Try async await

* Update test

* Update solution

* Update

* Test

* Update

* Refactor

* Uodate comments

* Types

* Fix type
2025-10-15 13:20:10 +02:00
Jay CliffordandJack Baldry c9f402c764 Plugins: Install Grafana Pathfinder behind a feature flag (#109909)
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2025-10-14 11:40:40 +01:00
Gabriel MABILLE 0e34164329 grafana-iam: Populate Zanzana on resource permission creation (#111654)
* `grafana-iam`: Populate Zanzana on resource permission creation

* use zanzana const

* Adding a toggle

* Add a new feature toggle to manage zanzana sync

* wire

* wire

* WIP

* Fix hook issue

* comments and tests

* Account for PR feedback

* Add a timeout to writes

* Check tuples len

* comment

* validate basic role

* shorter error

* object reads better than entry
2025-10-13 21:37:13 +02:00
Josh Hunt ea25b75966 Faro: Update configuration with best practices (#112108)
* Clean up faro configuration to align with best practices

* Update grafana docs

* remove fixme comment

* fix tests

* don't spread config in
2025-10-13 13:46:29 +01:00
Matt Cowley 85174e3313 Dashboards: Add restricted extension point for empty state (#111788)
* Dashboards: Add restricted extension point for empty state

* FeatureToggles: Regenerate files with new toggle

* Dashboards: Pass default empty UI as component, not children

* Dashboards: Expose hooks for empty state methods to extensions

* Dashboards: Move empty state button hooks to dedicated file

* Dashboards: Render loader while empty state plugin components loading

* Dashboards: Pass empty state default UI as method

* Dashboards: De-duplicate hook usages in empty state

* Dashboards: De-duplicate read-only repo check in empty state
2025-10-13 09:03:13 +02:00
Carl BergquistandTobias Skarhed b2036088ac Scopes: Remove promql rewrite feature toggle (#112035)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
Co-authored-by: Tobias Skarhed <tobias.skarhed@gmail.com>
2025-10-10 16:53:18 +02:00
Eric Hilse e4b981a6c0 Fix: Use currentColor for kubernetes and traces icons (#112016)
* Fix: Use currentColor for kubernetes and traces icons

* Add additional icons
2025-10-10 15:36:40 +01:00
Ihor Yeromin 6059ef3d83 Fix: Sorting with sparse arrays containing empty values (#112114) 2025-10-10 14:51:45 +02:00
Sergej-Vlasov b5613b3724 Dashboard: Limit panel grouping depth (#112216) 2025-10-10 15:15:54 +03:00
Taniaandjoshhunt 21e26aefdb OpenFeature: Add context attributes to frontend settings (#112105)
* Update targeting key to namespace

* Pass eval ctx attributes to frontend

* Add context config to the frontend

* Fix OF namespace not defined in e2e tests

* Set default namespace and targeting key

* remove e2e server config now that namespace is default

---------

Co-authored-by: joshhunt <josh.hunt@grafana.com>
2025-10-10 13:43:24 +02:00
Will Browne 69f788ad55 Plugins: Remove pluginAssetProvider feature toggle (#112046)
* remove toggle

* fix lint issue
2025-10-10 10:35:22 +01:00
Levente Balogh 3658b1fce7 Dashboards: Add a new variable type called "Switch" (#111366)
* feat: add schema changes for a switch type of dashboard variable

* fix: generated go

* feat: add support for a switch type of dashboard variable

* chore: update `@grafana/scenes` to a canary version

* feat: add variable editor for the switch variable

* fix: remove unnecessary jest config change

* chore: remove commented out code
2025-10-09 12:08:55 +00:00
Ashley Harrison 3eadebd950 Theme: Add /theme-playground route (#111974)
* add basic theme-playground page

* basic theme playground

* generate schema

* sort of include the schema

* proper json schema

* add base theme

* bit of tidy up

* don't use appEvents.emit

* tidy up ThemeDemo

* extract translations

* add CODEOWNERS
2025-10-09 10:09:51 +01:00
Paul Marbach 8a59baa7d5 Timeseries: Numeric duration values could render as NaN (#73795) (#112076) 2025-10-08 14:42:13 -04:00
Ashley Harrison 891f6a58bf Palette: use semi-dark-yellow for more contrast (#112090)
* use semi-dark-yellow for more contrast

* fix unit tests
2025-10-08 14:51:33 +01:00
beejeebus c3f34efb41 Revert "Revert: DataSource: Support config CRUD from apiservers (#106996) (#110342)"
This reverts commit 72eeefabd7.
2025-10-07 14:31:07 -04:00
Ben Darlow 8f54a15d8b Themes: Fix internal border radius of MenuItem to match new outer border radius (#112053)
* Fix internal border radius of MenuItem to match new outer border radius
* Add design tokens for Menu border radius and padding to createComponents
2025-10-07 12:12:09 +01:00