sadpandajoe opened a new pull request, #35112: URL: https://github.com/apache/superset/pull/35112
<!--- Please write the PR title following the conventions at https://www.conventionalcommits.org/en/v1.0.0/ Example: fix(dashboard): load charts correctly --> ### SUMMARY <!--- Describe the change below, including rationale and design decisions --> Fixes #34822 reported that deck.gl chart features "disappeared" in Superset 6.0.0, specifically: - Legend visualization not appearing when expected - Users unable to configure categorical legends for Arc/Scatter charts - Charts migrated from 5.x showing empty data instead of legends **🔍 Root Cause Analysis** Investigation revealed three distinct bugs introduced during the 6.0 color control system overhaul: 1. addColor() default case bug: Returns empty array for undefined color_scheme_type, breaking migrated charts 2. Dimension control visibility bug: Categorical dimension selector hidden when color scheme ≠ categorical_palette 3. Poor UX defaults: New charts default to "Fixed color" preventing legends from appearing **✅ Solution** Bug #1 - Backward Compatibility Fix - File: CategoricalDeckGLContainer.tsx:206-213 - Change: Handle undefined/null color_scheme_type as categorical_palette for backward compatibility - Impact: Pre-6.0 migrated charts now work without user reconfiguration Bug #2 - UI Control Enhancement - File: utilities/Shared_DeckGL.tsx:490 - Change: Make categorical dimension control always visible (visibility: () => true) - Impact: Users can configure categorical data regardless of color scheme selection Bug #3 - Better Defaults - File: layers/Arc/controlPanel.ts:101 - Change: Default new Arc charts to categorical_palette instead of fixed_color - Impact: New charts show legends when appropriate without complex configuration ### BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF <!--- Skip this if not applicable --> ### TESTING INSTRUCTIONS <!--- Required! What steps can be taken to manually verify the changes? --> - 30 Unit Tests - Core function logic for getCategories() and addColor() - 11 Integration Tests - Complete legend workflows including positioning (tl/tr/bl/br) - Edge Case Coverage - undefined/null color_scheme_type, empty data, missing dimensions - Backward Compatibility Tests - Migration scenarios from 5.x ### ADDITIONAL INFORMATION <!--- Check any relevant boxes with "x" --> <!--- HINT: Include "Fixes #nnn" if you are fixing an existing issue --> - [ ] Has associated issue: - [ ] Required feature flags: - [ ] Changes UI - [ ] Includes DB Migration (follow approval process in [SIP-59](https://github.com/apache/superset/issues/13351)) - [ ] Migration is atomic, supports rollback & is backwards-compatible - [ ] Confirm DB migration upgrade and downgrade tested - [ ] Runtime estimates and downtime expectations provided - [ ] Introduces new feature or API - [ ] Removes existing feature or API -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: notifications-unsubscr...@superset.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: notifications-unsubscr...@superset.apache.org For additional commands, e-mail: notifications-h...@superset.apache.org