Skip to content

Deprecate ScalarUDFImpl::invoke #13064

@alamb

Description

@alamb

Is your feature request related to a problem or challenge?

in #13001 @agscpp added a general function ScalarUDFImpl::invoke_batche that handles inputs with 0 and more than 0 arguments.

Previously, there were two separate functions to handle these cases:

  1. https://docs.rs/datafusion/latest/datafusion/logical_expr/trait.ScalarUDFImpl.html#tymethod.invoke
  2. https://docs.rs/datafusion/latest/datafusion/logical_expr/trait.ScalarUDFImpl.html#method.invoke_no_args

Describe the solution you'd like

I would like to mark invoke and invoke_no_args deprecated

Describe alternatives you've considered

  1. Mark the functions deprecated, with a message to implement invoke_batch instead. for example
    #[deprecated(note = "use format! instead")]
  2. Update the documentation so invoke_batch is the main API and the documentation reflects that
  3. Update the DataFusion codebase so that the ScalarUDFImpls use invoke_batch rather than invoke and invoke_udf

Additional context

I think this is pretty well specified and largely mechanical so it would be a good first issue

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions