aminghadersohi opened a new pull request, #44219:
URL: https://github.com/apache/superset/pull/44219
### SUMMARY
Extracts self-contained DataFrame/JSON scalar normalization from #43771 so
that the Sunburst feature PR has a smaller, more reviewable scope.
The projection boundary now normalizes exact trusted pandas, Python float,
NumPy float, and Decimal missing/non-finite scalars to `None` without invoking
equality or numeric hooks on arbitrary object-column values. Query-context
output, synchronous SQL Lab output, and asynchronous SQL result serialization
therefore emit strict JSON nulls rather than NaN/Infinity tokens while
preserving finite Decimal precision.
This change is independent of Sunburst and can land before #43771. Once
merged, #43771 can absorb master normally and its corresponding diff disappears
without rewriting either branch.
### BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF
Not applicable; backend serialization behavior only.
### TESTING INSTRUCTIONS
```bash
PYTHONPATH="$PWD/superset-core/src:$PYTHONPATH" pytest -q \
tests/unit_tests/dataframe_test.py \
tests/unit_tests/common/test_query_context_processor.py \
tests/unit_tests/sql/execution/test_celery_task.py \
tests/unit_tests/sql_lab_test.py
# 150 passed
pre-commit run
# Passed for all staged files.
```
Regression coverage includes finite/non-finite Decimal values, NumPy/pandas
missing values, hostile object equality/numeric hooks, synchronous SQL Lab
serialization, and asynchronous SQL result serialization.
### ADDITIONAL INFORMATION
- [ ] 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: [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]