* migrate to v2
* Fix tests
* graphite panels should be auto-migrated
* lint
* Provisioning: Fix dashboard export to preserve original API version
* Add error handling for the edge case where conversion fails but no
storedVersion is available.
* migrate to v19
* migrate to v18
* Migration to be verified: v17 Convert minSpan to maxPerRow in panels
* Migration to be verified: 16 Grid layout migration
* Refactor v17 and v19 migrations to use shared helper functions
* Migration to be verified: 15 No-op migration for schema consistency
* Migration to be verified: 14 Shared crosshair to graph tooltip migration
* cleanup
* wip
* complete migration
* fix lint issues
* refactor and test with minimal graph config
* update tests
* migrate to v12
* extract defaults outside the func
* lint
* lint
* add missing showValues prop
* migrate to v11
* migrate to v10
* add test files
* update
* migrate to v9
* migrate to v8
* add context and fix latest version
* add context
* add context
* generate snapshots
* v13 should be no-op
* clean up
* fix tests
* add context
* snapshots
* generate snapshots
* update
* snapshots
* wip
* fix test
* remove nav when cleaning up defaults
* migrate to v6
* update comments
* migrate to v5
* remove v28
* remove singlestat migraiton from frontend migrator because this is an automigration
* remove unused function
* Remove v24 table plugin logic
* cleanup
* remove plugin version for automigrate as it was used only in v24 and v28 that have been removed
* cleanup
* update snapshot
* update snapshot
* update snapshot
* update snapshot
* update snapshot
---------
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
* migrate to v19
* migrate to v18
* Migration to be verified: v17 Convert minSpan to maxPerRow in panels
* Migration to be verified: 16 Grid layout migration
* Refactor v17 and v19 migrations to use shared helper functions
* Migration to be verified: 15 No-op migration for schema consistency
* Migration to be verified: 14 Shared crosshair to graph tooltip migration
* cleanup
* wip
* complete migration
* fix lint issues
* refactor and test with minimal graph config
* update tests
* migrate to v12
* extract defaults outside the func
* lint
* lint
* add missing showValues prop
* migrate to v11
* migrate to v10
* add test files
* update
* migrate to v9
* migrate to v8
* add context and fix latest version
* add context
* add context
* generate snapshots
* v13 should be no-op
* clean up
* fix tests
* add context
* snapshots
* generate snapshots
* update
* snapshots
* wip
* fix test
* remove nav when cleaning up defaults
* migrate to v6
* update comments
* remove v28
* remove singlestat migraiton from frontend migrator because this is an automigration
* remove unused function
* Remove v24 table plugin logic
* cleanup
* remove plugin version for automigrate as it was used only in v24 and v28 that have been removed
* cleanup
* update snapshot
* update snapshot
* update snapshot
* update snapshot
* remove test
---------
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
* migrate to v19
* migrate to v18
* Migration to be verified: v17 Convert minSpan to maxPerRow in panels
* Migration to be verified: 16 Grid layout migration
* Refactor v17 and v19 migrations to use shared helper functions
* Migration to be verified: 15 No-op migration for schema consistency
* Migration to be verified: 14 Shared crosshair to graph tooltip migration
* cleanup
* wip
* complete migration
* fix lint issues
* refactor and test with minimal graph config
* update tests
* migrate to v12
* extract defaults outside the func
* lint
* lint
* add missing showValues prop
* migrate to v11
* migrate to v10
* add test files
* update
* migrate to v9
* migrate to v8
* add context and fix latest version
* add context
* add context
* generate snapshots
* v13 should be no-op
* clean up
* fix tests
* add context
* snapshots
* generate snapshots
* update
* snapshots
* wip
* fix test
* remove nav when cleaning up defaults
* remove v28
* remove singlestat migraiton from frontend migrator because this is an automigration
* remove unused function
* Remove v24 table plugin logic
* cleanup
* remove plugin version for automigrate as it was used only in v24 and v28 that have been removed
* cleanup
* update snapshot
* update snapshot
* update snapshot
* lint
---------
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
* migrate to v19
* migrate to v18
* Migration to be verified: v17 Convert minSpan to maxPerRow in panels
* Migration to be verified: 16 Grid layout migration
* Refactor v17 and v19 migrations to use shared helper functions
* Migration to be verified: 15 No-op migration for schema consistency
* Migration to be verified: 14 Shared crosshair to graph tooltip migration
* cleanup
* wip
* complete migration
* fix lint issues
* refactor and test with minimal graph config
* update tests
* migrate to v12
* extract defaults outside the func
* lint
* lint
* add missing showValues prop
* migrate to v11
* migrate to v10
* add test files
* update
* migrate to v9
* migrate to v8
* add context and fix latest version
* add context
* add context
* generate snapshots
* v13 should be no-op
* clean up
* fix tests
* add context
* snapshots
* generate snapshots
* update
* snapshots
* fix test
* remove v28
* remove singlestat migraiton from frontend migrator because this is an automigration
* remove unused function
* Remove v24 table plugin logic
* cleanup
* remove plugin version for automigrate as it was used only in v24 and v28 that have been removed
* cleanup
* update snapshot
* update snapshot
* update snapshot
---------
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
* migrate to v19
* migrate to v18
* Migration to be verified: v17 Convert minSpan to maxPerRow in panels
* Migration to be verified: 16 Grid layout migration
* Refactor v17 and v19 migrations to use shared helper functions
* Migration to be verified: 15 No-op migration for schema consistency
* Migration to be verified: 14 Shared crosshair to graph tooltip migration
* cleanup
* wip
* complete migration
* fix lint issues
* refactor and test with minimal graph config
* update tests
* migrate to v12
* extract defaults outside the func
* lint
* lint
* add missing showValues prop
* migrate to v11
* migrate to v10
* add test files
* update
* migrate to v9
* add context and fix latest version
* add context
* add context
* generate snapshots
* v13 should be no-op
* clean up
* fix tests
* add context
* snapshots
* generate snapshots
* update
* fix test
* remove v28
* remove singlestat migraiton from frontend migrator because this is an automigration
* remove unused function
* Remove v24 table plugin logic
* cleanup
* remove plugin version for automigrate as it was used only in v24 and v28 that have been removed
* cleanup
* update snapshot
* update snapshot
* update snapshot
---------
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
* migrate to v19
* migrate to v18
* Migration to be verified: v17 Convert minSpan to maxPerRow in panels
* Migration to be verified: 16 Grid layout migration
* Refactor v17 and v19 migrations to use shared helper functions
* Migration to be verified: 15 No-op migration for schema consistency
* Migration to be verified: 14 Shared crosshair to graph tooltip migration
* cleanup
* wip
* complete migration
* fix lint issues
* refactor and test with minimal graph config
* update tests
* migrate to v12
* extract defaults outside the func
* lint
* lint
* add missing showValues prop
* migrate to v11
* migrate to v10
* add test files
* update
* add context and fix latest version
* add context
* add context
* generate snapshots
* v13 should be no-op
* clean up
* fix tests
* add context
* snapshots
* generate snapshots
* fix test
* remove v28
* remove singlestat migraiton from frontend migrator because this is an automigration
* remove unused function
* Remove v24 table plugin logic
* cleanup
* remove plugin version for automigrate as it was used only in v24 and v28 that have been removed
* cleanup
* update snapshot
* update snapshot
---------
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
* migrate to v19
* migrate to v18
* Migration to be verified: v17 Convert minSpan to maxPerRow in panels
* Migration to be verified: 16 Grid layout migration
* Refactor v17 and v19 migrations to use shared helper functions
* Migration to be verified: 15 No-op migration for schema consistency
* Migration to be verified: 14 Shared crosshair to graph tooltip migration
* cleanup
* wip
* complete migration
* fix lint issues
* refactor and test with minimal graph config
* update tests
* migrate to v12
* extract defaults outside the func
* lint
* lint
* add missing showValues prop
* migrate to v11
* add test files
* update
* add context and fix latest version
* add context
* add context
* generate snapshots
* v13 should be no-op
* clean up
* fix tests
* snapshots
* fix test
* remove v28
* remove singlestat migraiton from frontend migrator because this is an automigration
* remove unused function
* Remove v24 table plugin logic
* cleanup
* remove plugin version for automigrate as it was used only in v24 and v28 that have been removed
* cleanup
* update snapshot
* es lint
---------
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
* migrate to v19
* migrate to v18
* Migration to be verified: v17 Convert minSpan to maxPerRow in panels
* Migration to be verified: 16 Grid layout migration
* Refactor v17 and v19 migrations to use shared helper functions
* Migration to be verified: 15 No-op migration for schema consistency
* Migration to be verified: 14 Shared crosshair to graph tooltip migration
* cleanup
* wip
* complete migration
* fix lint issues
* refactor and test with minimal graph config
* update tests
* migrate to v12
* extract defaults outside the func
* lint
* lint
* add missing showValues prop
* update
* add context and fix latest version
* add context
* generate snapshots
* v13 should be no-op
* clean up
* fix tests
* fix test
* remove v28
* remove singlestat migraiton from frontend migrator because this is an automigration
* remove unused function
* Remove v24 table plugin logic
* cleanup
* remove plugin version for automigrate as it was used only in v24 and v28 that have been removed
* cleanup
* es int
---------
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
* migrate to v19
* migrate to v18
* Migration to be verified: v17 Convert minSpan to maxPerRow in panels
* Migration to be verified: 16 Grid layout migration
* Refactor v17 and v19 migrations to use shared helper functions
* Migration to be verified: 15 No-op migration for schema consistency
* Migration to be verified: 14 Shared crosshair to graph tooltip migration
* cleanup
* wip
* complete migration
* fix lint issues
* refactor and test with minimal graph config
* update tests
* extract defaults outside the func
* lint
* lint
* add missing showValues prop
* add context and fix latest version
* generate snapshots
* v13 should be no-op
* clean up
* remove v28
* remove singlestat migraiton from frontend migrator because this is an automigration
* remove unused function
* Remove v24 table plugin logic
* cleanup
* remove plugin version for automigrate as it was used only in v24 and v28 that have been removed
* cleanup
---------
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
Fix span: 0 bug and panel ordering in v16 dashboard migration
Fix span: 0 handling to match frontend behavior by defaulting to DEFAULT_PANEL_SPAN.
Fix panel ordering issue by using stable sort instead of unstable sort.
Fix collapsed property handling to only set when input row has collapse property.
Add comprehensive test cases for span: 0 bug and collapsed property behavior.
Add sanitized test input file for span: 0 demo dashboard with generic values instead of internal Grafana infrastructure references.
All backend migration tests and frontend comparison tests pass.
- Fix metricEditorMode logic to match frontend hasOwnProperty behavior
- Fix metricQueryType to only set when property doesn't exist
- Fix statistics processing to handle all types like frontend does
- Fix null statistic handling to match frontend behavior
- Fix object string representation to match JavaScript behavior
- Add comprehensive test coverage for all CloudWatch migration scenarios
- Achieve 100% backend-frontend consistency for v34 migration
* Fix v34 CloudWatch migration backend-frontend inconsistencies
- Fix metricEditorMode logic to match frontend hasOwnProperty behavior
- Fix metricQueryType to only set when property doesn't exist
- Fix statistics processing to handle all types like frontend does
- Fix null statistic handling to match frontend behavior
- Fix object string representation to match JavaScript behavior
- Add comprehensive test coverage for all CloudWatch migration scenarios
- Achieve 100% backend-frontend consistency for v34 migration
* Improve v34 CloudWatch migration test coverage
- Add targeted tests for hasOwnProperty logic coverage
- Add comprehensive getSuffixForStat coverage (all data types)
- Add generateNextRefId double letter generation tests
- Simplify test cases while maintaining full coverage
- Achieve 93%+ coverage on all critical v34 functions
- Remove redundant test cases for better maintainability
* Clean up v34 CloudWatch migration code
- Remove unnecessary comments and documentation
- Simplify function signatures and logic
- Maintain functionality while improving readability
- Keep essential logic intact with cleaner code
* Only remove unnecessary comments