Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feat siu dispatch #398

Merged
merged 28 commits into from
Mar 24, 2022
Merged

Feat siu dispatch #398

merged 28 commits into from
Mar 24, 2022

Conversation

machow
Copy link
Owner

@machow machow commented Jan 28, 2022

Refactor of siu internals to support

  • singledispatch as the mechanism for translating sql column methods
  • the concept of codata (alternative methods for the same data) for sql dialects, by passing objects like PostgresqlColumn() as the first argument.
    • E.g. mean(PostgresqlColumn(), sqlalchemy.sql.column("x"))
    • E.g. mean(PostgresqlColumnAgg(), sqlalchemy.sql.column("x"))

As a necessary step, refactor the pulling of test specifications (E.g. siuba.ops.support.base), to:

  • make it easier to ask a generic function what data it supports (e.g. PostgresqlColumn)
  • make it easier to ask a generic function what limits come with dispatching on a piece of data (e.g. dispatching mean(PostgresqlColumn(), column('x')) might return a float, when pandas returns an integer, or vv).

@machow machow force-pushed the feat-siu-dispatch branch 2 times, most recently from 0f71cfc to aaea964 Compare March 2, 2022 03:56
@machow machow force-pushed the feat-siu-dispatch branch from aaea964 to cc3036e Compare March 2, 2022 04:37
@machow machow force-pushed the feat-siu-dispatch branch from 9325810 to c2e58f7 Compare March 3, 2022 15:27
@machow machow force-pushed the feat-siu-dispatch branch from c2e58f7 to 2282c78 Compare March 3, 2022 15:49
@machow machow marked this pull request as ready for review March 24, 2022 01:32
@machow machow merged commit 8896eec into main Mar 24, 2022
@machow machow deleted the feat-siu-dispatch branch March 24, 2022 01:32
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.

1 participant