alamb opened a new issue, #13515: URL: https://github.com/apache/datafusion/issues/13515
### Is your feature request related to a problem or challenge? The current state of the invoke signature for `ScalarUDFImpl` is somewhat confusing. After - https://github.com/apache/datafusion/pull/13290 We will have 4 functions - `ScalarUDFImpl::invoke` (deprecated, only args) - `ScalarUDFImpl::invoke_no_args` (deprecated, only row counts) - `ScalarUDFImpl::invoke_batch` (has row counts and args) - `ScalarUDFImpl::invoke_with_args` (added to support https://github.com/apache/datafusion/issues/12819, has a structure that has arguments, row counts, and return types) Ideally, we probably should not have added `invoke_batch` but unfortunately we released it in - #12470 With a deprecation message telling users to migrate from `invoke` / `invoke_no_args` to `invoke_batch` Ideally we want to move everyone to `invoke_with_args`, but if we did so at this time, it would force downstream crates to migrate twice in quick succession, which is non ideal. ### Describe the solution you'd like Rather than immediately deprecate `invoke_batch` and force another confusing upgrade, I propose we leave `invoke_batch` and `invoke_with_args` for several releases to allow downstream crates to update. ### Describe alternatives you've considered Then in a few months (maybe DataFusion 46, or 47) we can deprecate `invoke_batch` and move everything to `invoke_with_args` ### Additional context _No response_ -- 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: github-unsubscr...@datafusion.apache.org.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: github-unsubscr...@datafusion.apache.org For additional commands, e-mail: github-h...@datafusion.apache.org