SEPURI-SAI-KRISHNA commented on PR #42410: URL: https://github.com/apache/superset/pull/42410#issuecomment-5420633704
Thanks @rusackas, on it, no hand needed. Worth flagging what the conflict turned out to be, since it changes what's left of this PR. The conflict is with #43337, which rewrote `exec_post_processing` to add the `EXTRA_PANDAS_POSTPROCESSING_OPS` extension point. That rewrite **already carries this PR's `query_object.py` fix**, master now reads `operation=operation` where it used to read `type=operation`, so the "Unsupported post processing operation" message interpolates properly on master today. I've resolved that file by taking master's version wholesale; nothing of mine needs to survive there. What remains, and is still entirely unfixed on master, is `superset/utils/pandas_postprocessing/select.py`: - the `@validate_column_args` decorator still names `"drop"`, a parameter `select()` does not have, so `exclude` was never validated at all; - `exclude` naming a column already removed by a preceding `columns` selection still reaches `df.drop()` and surfaces as a bare pandas `KeyError`, a 500, not a 400; - a scalar `exclude="label"` is iterated character by character, because `validate_column_args` normalises through `scalar_to_sequence` to validate but then passes the original value through. So the PR is now scoped to `select.py` plus its tests. I'll retitle it accordingly if you'd prefer that over leaving the current title. One test note: my `test_exec_post_processing_unsupported_operation` overlapped with #43337's new `test_exec_post_processing_unknown_op_raises` almost exactly, so rather than ship a near-duplicate I dropped mine and added its one distinguishing assertion, that the message actually names the offending operation, to theirs. That keeps the regression guard on the `%(operation)s` placeholder without a redundant test. -- 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]
