mikebridge opened a new pull request, #45995:
URL: https://github.com/apache/superset/pull/45995

   ### SUMMARY
   
   Semantic views show only Saved columns and metrics in their pickers, 
including when older metadata omits feature declarations. Previously, some 
payloads enabled Simple expressions even though the semantic SDK cannot 
represent those column expressions, leaving users with selections the backend 
rejects. Ordinary SQL datasets keep their expression controls.
   
   Provider capability declarations also had inconsistent interpretations: 
metadata could serialize arbitrary values, another endpoint could fail while 
reading them, and query validation used its own membership checks. One host 
projection now supplies the supported capabilities for model metadata, 
datasource API metadata and mapper validation. It grants only recognized, 
non-reserved SDK enum members and ignores malformed values without converting 
raw strings into grants.
   
   `SemanticViewFeature.ADHOC_COLUMN_EXPRESSIONS` remains importable but 
reserved. No SDK query shapes or provider methods change. The author guide and 
upgrade notes explain the contract and picker compatibility change.
   
   ### BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF
   
   Screenshots are not included; no live UI or provider environment was 
exercised for this change.
   
   Before: a stale reserved capability or omitted feature metadata could enable 
Simple mode. After: all semantic views list dimensions under Saved and disable 
Simple/Custom SQL. Existing unsupported selections are not silently rewritten.
   
   ### TESTING INSTRUCTIONS
   
   1. Open a semantic-view chart in Explore and open a dimension picker: Saved 
is selected, all dimensions remain selectable, and Simple/Custom SQL are 
disabled. Repeat with metadata omitting `semantic_view_features` and with the 
reserved string present.
   2. Open the same controls for an ordinary SQL dataset and confirm Simple/SQL 
still follow their existing availability rules.
   3. With a development provider, compare Explore datasource metadata with the 
datasource-info endpoint: a real `GROUP_LIMIT` enum member is advertised in 
both; raw strings, unknown values and the reserved member are absent. A 
malformed declaration such as `None` must not produce a metadata error.
   4. Submit a grouped query with valid enum grants and then without them. 
Existing supported queries still work; unsupported group-limit/others/orderby 
expressions retain actionable validation errors.
   
   Focused projection/model tests (178), mapper tests (406) and picker tests 
(79) pass. Red controls reproduce malformed metadata failures, inconsistent 
mapper grants and the missing/reserved-feature picker behavior. All 
changed-file hooks pass, including MyPy and frontend types. No service or 
full-suite runs.
   
   ### ADDITIONAL INFORMATION
   
   - [ ] Has associated issue:
   - [x] Required feature flags: existing semantic-layer feature
   - [x] Changes UI
   - [ ] Includes DB Migration
   - [ ] 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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

  • [PR] fix(se... mikebridge (via GitHub) via notifications
    • Re: [P... codeant-ai-for-open-source[bot] (via GitHub) via notifications
    • Re: [P... codecov[bot] (via GitHub) via notifications
    • Re: [P... netlify[bot] (via GitHub) via notifications

Reply via email to