Skip to content

Add missing scalar functions #1470

Draft
timsaucer wants to merge 2 commits intoapache:mainfrom
timsaucer:feat/add-missing-scalar-fns
Draft

Add missing scalar functions #1470
timsaucer wants to merge 2 commits intoapache:mainfrom
timsaucer:feat/add-missing-scalar-fns

Conversation

@timsaucer
Copy link
Copy Markdown
Member

Which issue does this PR close?

Closes #1453

Rationale for this change

These functions exist upstream but were not exposed to Python.

What changes are included in this PR?

Expose functions to Python
Add unit testss

Are there any user-facing changes?

New addition only.

timsaucer and others added 2 commits March 31, 2026 12:09
…row_metadata, version, row

Expose upstream DataFusion scalar functions that were not yet available
in the Python API. Closes apache#1453.

- get_field: extracts a field from a struct or map by name
- union_extract: extracts a value from a union type by field name
- union_tag: returns the active field name of a union type
- arrow_metadata: returns Arrow field metadata (all or by key)
- version: returns the DataFusion version string
- row: alias for the struct constructor

Note: arrow_try_cast was listed in the issue but does not exist in
DataFusion 53, so it is not included.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Tests for get_field, arrow_metadata, version, row, union_tag, and
union_extract. Also fix codespell skip paths in pyproject.toml.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add missing scalar functions (union, arrow metadata, get_field, version, row)

1 participant