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]

Reply via email to