* feat(plugin-configs): update configs to work with nodes strip-types feature
* build(parca): use nodes experimental-strip-types so build works with node 22 - 24
* build(decoupled-plugins): support nodes strip types feature for webpack builds
* build(e2e-test-plugins): update build scripts and config to work with node strip types
* style(plugin-configs): fix import/order lint errors
* refactor(plugins): use allowImportingTsExtensions in favour of ts-ignore comments
* refactor(plugin-configs): clean up ts-ignore and ts-expect-error comments in webpack.config
* refactor(plugin-configs): fix up changes for nodes strip-types flag
* chore(loki): fix up build command for node 24 support
* Tidy up storybook a little bit
* change sort order, delete some stories
* More tidy up of actions
* More tidy up of actions
* tweak story sorting, again
* Make all internal stories public
* fix sort
* Add ESLint rule to enforce storybook titles
* update verify storybook test
* simplify glob
Run dashboard schema v2 e2e / dashboard-schema-v2-e2e (push) Waiting to runDetails
Shellcheck / Shellcheck scripts (push) Waiting to runDetails
Swagger generated code / Verify committed API specs match (push) Waiting to runDetails
Dispatch sync to mirror / dispatch-job (push) Waiting to runDetails
trigger-dashboard-search-e2e / trigger-search-e2e (push) Waiting to runDetails
* Restore dashboards: Enable search and filtering
* Remove sorting
* Configurable sort
* Move cache to a separate file
* Get tags
* Reset cache on delete
* Use store
* Add sort
* Use fuzzyFind for search
* Move fuzzy search to grafana/data
* Move @leeoniya/ufuzzy package
* Use the new util
* Improve sort
* Error handling
* InfluxDB: Add an optional time range filter for tag queries in the query panel autocomplete
* Betterer updates
* Update test
---------
Co-authored-by: Nikolay Tsvetkov <nikolay.cvetkov@gmail.com>
* refactor language provider
* update tests
* more tests
* betterer and api endpoints
* copilot updates
* betterer
* remove default value
* prettier
* introduce new methods
* provide unit tests for labelValues
* update metadata fetch
* move all cache related stuff in caching.ts
* provide interface
* provide deprecation messages
* unit tests for new interface
* separation of concerns
* update tests
* fix unit test
* fix some types
* Revert "fix some types"
This reverts commit 7e64b93b5f.
* revert interface usage
* betterer
* use PrometheusLanguageProviderInterface in everywhere
* introduce resource clients
* unit tests
* act accordingly with the feature toggle
* some more unit tests
* add feature toggle
* Revert "add feature toggle"
This reverts commit 5c93ac324f.
* remove feature toggle
* update tests
* backward compatibility
* fix scope issues
* comment update
* stronger types
* prettier
* betterer
* use new methods in metrics browser and query field
* always return data
* Revert "always return data"
This reverts commit 38e493c189.
* Revert "Revert "always return data""
This reverts commit b5d3b5d2b0.
* handle error
* lint
* use new method in query builder
* fix metrics modal tests too
* use labelValues method while searching in combobox
* update metrics modal regex search
* lint
* fix unit test
* introduce resource clients and better refactoring
* prettier
* type fixes
* betterer
* no empty matcher for series calls
* better matchers
* add additional tests
* proper match string for series
* introduce series cache
* introduce series cache for series label values
* lint
* cache values too
* utf8 safe label values query with series endpoint
* fix unit tests
* caching for labels api client
* betterer
* support new language provider methods in variable editor
* use queries and adhoc filters to extract matchers
* filter out __name__
* improve match string in series query label value calls
* update unit tests
* betterer
* betterer
* refactor language provider
* update tests
* more tests
* betterer and api endpoints
* copilot updates
* betterer
* remove default value
* prettier
* introduce new methods
* provide unit tests for labelValues
* update metadata fetch
* move all cache related stuff in caching.ts
* provide interface
* provide deprecation messages
* unit tests for new interface
* separation of concerns
* update tests
* fix unit test
* fix some types
* Revert "fix some types"
This reverts commit 7e64b93b5f.
* revert interface usage
* betterer
* use PrometheusLanguageProviderInterface in everywhere
* introduce resource clients
* unit tests
* act accordingly with the feature toggle
* some more unit tests
* add feature toggle
* Revert "add feature toggle"
This reverts commit 5c93ac324f.
* remove feature toggle
* update tests
* backward compatibility
* fix scope issues
* comment update
* stronger types
* prettier
* betterer
* use new methods in metrics browser and query field
* always return data
* Revert "always return data"
This reverts commit 38e493c189.
* Revert "Revert "always return data""
This reverts commit b5d3b5d2b0.
* handle error
* lint
* use new method in query builder
* fix metrics modal tests too
* use labelValues method while searching in combobox
* update metrics modal regex search
* lint
* fix unit test
* introduce resource clients and better refactoring
* prettier
* type fixes
* betterer
* no empty matcher for series calls
* better matchers
* add additional tests
* proper match string for series
* introduce series cache
* introduce series cache for series label values
* lint
* cache values too
* utf8 safe label values query with series endpoint
* fix unit tests
* caching for labels api client
* betterer
* fix errors
* refactor language provider
* update tests
* more tests
* betterer and api endpoints
* copilot updates
* betterer
* remove default value
* prettier
* introduce new methods
* provide unit tests for labelValues
* update metadata fetch
* move all cache related stuff in caching.ts
* provide interface
* provide deprecation messages
* unit tests for new interface
* separation of concerns
* update tests
* fix unit test
* fix some types
* Revert "fix some types"
This reverts commit 7e64b93b5f.
* revert interface usage
* betterer
* use PrometheusLanguageProviderInterface in everywhere
* introduce resource clients
* unit tests
* act accordingly with the feature toggle
* some more unit tests
* add feature toggle
* Revert "add feature toggle"
This reverts commit 5c93ac324f.
* remove feature toggle
* update tests
* backward compatibility
* fix scope issues
* comment update
* stronger types
* prettier
* betterer
* use new methods in metrics browser and query field
* always return data
* Revert "always return data"
This reverts commit 38e493c189.
* Revert "Revert "always return data""
This reverts commit b5d3b5d2b0.
* handle error
* lint
* introduce resource clients and better refactoring
* prettier
* type fixes
* betterer
* no empty matcher for series calls
* better matchers
* add additional tests
* proper match string for series
* introduce series cache
* introduce series cache for series label values
* lint
* cache values too
* utf8 safe label values query with series endpoint
* fix unit tests
* import fixes
* more import fixes
* fix unit tests
* refactor language provider
* update tests
* more tests
* betterer and api endpoints
* copilot updates
* betterer
* remove default value
* prettier
* introduce resource clients and better refactoring
* prettier
* type fixes
* betterer
* no empty matcher for series calls
* better matchers
* addressing the review feedback
Adds a new "Allow as recording rules target" toggle to Prometheus datasource configuration that controls whether the datasource can be selected as a target for writing recording rules.
---------
Co-authored-by: ismail simsek <ismailsimsek09@gmail.com>
Co-authored-by: Konrad Lalik <konradlalik@gmail.com>
* Dashboards: Add restore endpoints to the API
* Fix unified api
* Fix resource version
* Add tests
* Update api
* Update type guards
* Update comments
* Add missing type
* Cleanup
* Move spec checking logic to v1 client
* Handle mixed versions in deleted dbs list
* Update tests
* comment
* type
* Add group and namespace filtering for GMA rules
* Add group and namespace filtering for DMA rules
* Fix view mode handling
* Preserve group and namespace filters when switching views
* update "no rules" logic for Grafana managed rules
* use groupFilter function for filter logic
* Add populateCache docs, tidy up api consts
* Fix imports in tests
* Fix failing import tests
---------
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
* refactor(grafana-ui): move all exports from components barrel file to entry point
* refactor(grafana-ui): move all exports from types barrel file to entry point
* refactor(grafana-ui): explict exports for utils
* refactor(grafana-ui): move themes to explicit exports
* refactor(grafana-ui): use explicit exports for options, slate-plugins and schema
* fix(grafana-ui): put back missing components
* chore(grafana-ui): delete first level barrel files
* refactor(grafana-ui): update all internal barrel file imports
* refactor(grafana-ui): start fixing storybook mdx files
* style(grafana-ui): fix linting issues, update betterer result
* chore(grafana-ui): delete nested component barrel files
* refactor(grafana-ui): update imports to use non-barrel files
* refactor(grafana-ui): update imports to non-barrel files for story and test
* fix(grafana-ui): put back missing FileListItem component and types
* refactor(grafana-ui): update mdx to use direct imports
* fix(grafana-ui): align exports with grafana 12
* Add pills in search bar for context
* Add scope actions
* Add selection functionality
* Show selected scope on secondary row
* Fix selected scope titles
* Add some basic tests
* Test for toggle by name
* Remove unnecessary mocking
* Small cleanups
* Lint fixes
* Fix test
* Update public/app/features/scopes/selector/ScopesSelectorService.ts
Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>
* Bump input and breadcrumbs test
* Change breadcrumbs color
* Makes the breacrumb spacing consistent
* Add basic global search
* Change scope selector data structures
* Fix scope selector functionality
* Fix errors in selector and cmdk actions
* Fix cmdk actions
* Fix global search in cmdk
* Fix some merge edits
* merge diffs
* Small merge fixes
* Fix ScopesSelectorService.test.ts
* Fix tests
* Remove unrelated lint fixes
* Move ScopesTreeItemList.tsx into separate file
* Simplify if condition
* Use node.title in the scopesRow
* Use better dependency array for actions
* Make recentScopes more robust
* Fix beterrer
* Update betterer file
* Add test for changeScopes early return
* Fix input tooltip title access
---------
Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>
* re-organize folders regarding import feature
* Revert folder changes
* Add Yaml import input fields
* Set recording rules target if empty
* wip
* Convert YAML content to RulerRulesConfigDTO and use this for the import payload
* fixing some issues
* wip
* add tracking
* use yaml filename for namespace in case is not specified in the yaml content
* refactor
* add alertingImportYAMLUI ff check for yaml option
* Add test for parseYamlToRulerRulesConfigDTO
* move import feature to the More menu at the top
* add test for filterRulerRulesConfig, and fix the function
* extract parseYamlToRulerRulesConfigDTO to a separate file
* Add permission check for the import button
* Change data flow in import form, add basic tests for the import form
* remove commented code
* Add yaml import form test
* Add more tests
* Tidy up, remove type assertions in yaml converter
* Improve yaml file validation in the form
* Fix lint issues
* Fix lint
* use only Admin role for checking if the feature is available for the user
* Fix parsing recording rules
* Fix file re-selection in YAML import
* prettier
* refactor
* Remove FileReader, add more explanation to file upload reset
---------
Co-authored-by: Konrad Lalik <konradlalik@gmail.com>
Reject GitHub secrets / reject-gh-secrets (push) Waiting to runDetails
Run dashboard schema v2 e2e / dashboard-schema-v2-e2e (push) Waiting to runDetails
Dispatch sync to mirror / dispatch-job (push) Waiting to runDetails
* Create libpqToPGX feature toggle
* Refactor PostgreSQL datasource to support PGX with feature toggle
- Updated `ProvideService` to accept feature toggles for enabling PGX.
- Modified integration tests to use the new PGX connection method.
- Introduced new functions for handling PGX connections and queries.
- Enhanced TLS configuration handling for PostgreSQL connections.
- Updated existing tests to ensure compatibility with PGX and new connection methods.
* Update PostgreSQL datasource to enhance connection pooling and error handling
- Increased `MaxOpenConns` to 10 in integration tests for improved connection management.
- Refactored connection handling in `newPostgresPGX` to return a connection pool instead of a single connection.
- Updated health check error handling to utilize context and feature toggles for better error reporting.
- Adjusted `DisposePGX` method to close the connection pool properly.
- Enhanced query execution to acquire connections from the pool, ensuring efficient resource usage.
* Cleanup
* Revert postgres_test unnecessary changes
* Rename feature toggle from `libpqToPGX` to `postgresDSUsePGX`
* Add null check to dispose method
* Fix lint issues
* Refactor connection string generation
* Address comment in health check file
* Rename p to pool
* Refactor executeQueryPGX and split into multiple functions
* Fix lint issues
* The returning error message from PGX is enough no need to separate the error code.
* Move TLS handling to newPostgresPGX function
* Disable ssl for integration tests
* Use MaxIdleConns option
* Remove old feature toggle
* Rename`generateConnectionConfigPGX` to `generateConnectionStringPGX`
* Add back part of the error messages
* Don't show max idle connections option when PGX enabled
* Address comments from Sriram
* Add back Sriram's changes
* PostgreSQL: Rework tls manager to use temporary files instead (#105330)
* Rework tls manager to use temporary files instead
* Lint and test fixes
* Update pkg/tsdb/grafana-postgresql-datasource/postgres.go
Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
* Update betterer
---------
Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
---------
Co-authored-by: Ivana Huckova <30407135+ivanahuckova@users.noreply.github.com>
* Refactor ChannelOptions and related components for improved secure field handling
- Updated ChannelOptions to utilize integrationPrefix for path management.
- Introduced getOptionMeta for dynamic option metadata handling.
- Enhanced ChannelSubForm to manage secure fields and subform deletions.
- Refactored OptionField and SubformField to support new secure field logic.
- Adjusted types for better clarity and integration with the form context.
* Fix Combobox sizing
* Refactor ChannelSubForm and ChannelOptions for improved field handling
- Updated ChannelOptions to enhance secure field management.
- Refactored ChannelSubForm to replace Select with Combobox for better user experience.
- Adjusted type options handling in ChannelSubForm to align with new Combobox implementation.
- Cleaned up unused code and improved overall readability.
* Refactor contact point components for improved secure field handling and remove obsolete secure settings field
- Removed secureSettings from various components and tests to streamline the receiver configuration.
- Updated GrafanaReceiverForm to manage secure fields more effectively.
- Enhanced test cases for Slack contact points to ensure proper field behavior based on user input.
- Introduced a factory for creating mock Grafana contact points and receiver configurations for better test coverage.
* Improve conversion from form values to grafana receivers
* Revert Combobox migration and bring back Select for contact point type selector
* Update Grafana OnCall to Grafana IRM in notifier settings and enhance test coverage for SNS contact points
- Renamed notifier settings from 'Grafana OnCall' to 'Grafana IRM' in mockGrafanaNotifiers.
- Updated test cases in GrafanaReceiverForm to handle SNS contact points, including secure field management.
- Improved test assertions and added new tests for SNS integration to ensure correct behavior and state management.
- Refactored related components for better clarity and maintainability.
* Add secret fiels removal tests
* Fix mocks, remove Combobox changes
* Update snapshots
* Remove obsolete snapshot
* chore: row index is source index so just use that
* chore: fix better cause why not
---------
Co-authored-by: Adela Almasan <adela.almasan@grafana.com>
Co-authored-by: Sven Grossmann <svennergr@gmail.com>