Skip to content

Conversation

@tokoko
Copy link
Contributor

@tokoko tokoko commented Nov 15, 2025

The project builder in plan.py now builds a plan that outputs all inputs field
followed by all expressions.

The select builders captures the old behavior of project and outputs only the
expressions.

BREAKING CHANGE: the project builder in plan.py has been renamed to select

Copy link
Member

@vbarua vbarua left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Keeping the meaning of project inline with the general Substrait expectation seems super reasonable to me.

I'd be pretty happy to merge this PR as, but what do you think about adding a docstring to select and project to indicate what they do? I'm trying to be better about having use document APIs as we add them 😅

When we merge this, we should also mark this as a breaking change. I suspect that you're the primary, if not only, user of this builder API at this point, but it would be good to call it out anyway so we don't suprise anyone.

@vbarua
Copy link
Member

vbarua commented Dec 2, 2025

Fixes #124

@vbarua vbarua changed the title feat: add project builder, rename existing to select feat: add select builder Dec 2, 2025
@tokoko tokoko merged commit 0fc3cc7 into substrait-io:main Dec 13, 2025
20 checks passed
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.

2 participants