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

   ### SUMMARY
   
   **TL;DR:** Validate provider-declared default time dimensions in the 
reusable SDK conformance suite, and document how existing chart defaults use 
them.
   
   **Background:** A semantic view can already declare its preferred exposed 
time dimension. The host validates that name and supplies it to Explore and 
query construction.
   
   **Problem:** The conformance suite did not reject invalid or unstable 
declarations, and the existing documentation could imply that all saved-chart 
results remain unchanged when a provider adds a default.
   
   **What this changes:** Check optional declarations against exposed temporal 
names and equivalent catalog reloads. Add metadata, frontend initialization, 
and explicit/implicit query-binding tests. Clarify the compatibility guarantee: 
explicit saved bindings remain authoritative, but omitted bindings may adopt a 
provider's new default and change results without saving the chart. An explicit 
temporal filter does not prevent omitted granularity from receiving 
default-date bounds for an independently supplied time range.
   
   The check reuses existing provider fixtures and accepts Arrow date, 
timestamp and time types, including grain variants sharing a name. Providers 
that declare None remain conforming. This PR changes no host production 
behavior, provider selection policy, stored chart, migration, or feature-flag 
default.
   
   ### BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF
   
   Not applicable: SDK test utility, characterization tests and documentation 
only. Live provider/browser acceptance is separate.
   
   ### TESTING INSTRUCTIONS
   
   - Run `PYTHONPATH=superset-core/src python -m pytest -q -o addopts='' 
superset-core/tests/semantic_layers/test_conformance.py` (78 passed, four 
existing optional-capability skips).
   - Run `python -m pytest -q tests/unit_tests/semantic_layers/models_test.py 
-k 'preference or preferred_temporal'` (10 passed).
   - Run `python -m pytest -q 
tests/unit_tests/common/test_query_context_factory.py` (91 passed).
   - From `superset-frontend`, run `npm run test -- --runInBand 
packages/superset-ui-chart-controls/test/utils/getTemporalColumns.test.ts` (10 
passed).
   - Existing datasource/Explore and semantic metadata access/flag regressions 
pass; changed-file pre-commit hooks pass, including Python/frontend typing.
   - The new conformance cases fail against the original SDK utility (11 
failures) and pass with the assertions added. No real-provider or browser 
result parity is claimed.
   
   ### ADDITIONAL INFORMATION
   
   - [ ] Has associated issue:
   - [x] Required feature flags: existing `SEMANTIC_LAYERS` for host semantic 
behavior; no default change
   - [ ] Changes UI
   - [ ] Includes DB Migration
   - [ ] Introduces new feature or API
   - [ ] Removes existing feature or API
   
   Proposed title: `test(semantic-layer): validate provider time defaults`
   


-- 
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] test(s... via GitHub
    • Re: [P... via GitHub
    • Re: [P... via GitHub
    • Re: [P... codeant-ai-for-open-source[bot] (via GitHub) via notifications
    • Re: [P... codeant-ai-for-open-source[bot] (via GitHub) via notifications

Reply via email to