-
Notifications
You must be signed in to change notification settings - Fork 608
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
refactor(ir): simplify expressions by not storing dtype and name
Expression classes should only provide user facing API and the underlying operations should hold all data. This will enable a simpler operation hierarchy (without intermediare expressions) wrapped with a single user facing expression. BREAKING CHANGE: The following are breaking changes due to simplifying expression internals - `ibis.expr.datatypes.DataType.scalar_type` and `DataType.column_type` factory methods have been removed, `DataType.scalar` and `DataType.column` class fields can be used to directly construct a corresponding expression instance (though prefer to use `operation.to_expr()`) - `ibis.expr.types.ValueExpr._name` and `ValueExpr._dtype`` fields are not accassible anymore. While these were not supposed to used directly now `ValueExpr.has_name()`, `ValueExpr.get_name()` and `ValueExpr.type()` methods are the only way to retrieve the expression's name and datatype. - `ibis.expr.operations.Node.output_type` is a property now not a method, decorate those methods with `@property` - `ibis.expr.operations.ValueOp` subclasses must define `output_shape` and `output_dtype` properties from now on (note the datatype abbreviation `dtype` in the property name) - `ibis.expr.rules.cast()`, `scalar_like()` and `array_like()` rules have been removed
- Loading branch information
Showing
68 changed files
with
1,081 additions
and
837 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
e929f85
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Possible performance regression was detected for benchmark.
Benchmark result of this commit is worse than the previous benchmark result exceeding threshold
3
.ibis/tests/benchmarks/test_benchmarks.py::test_execute[high_card_grouped_rolling]
0.5403445649272071
iter/sec (stddev: 0.02177593805725441
)1.621099149077072
iter/sec (stddev: 0.0020812897540296196
)3.00
This comment was automatically generated by workflow using github-action-benchmark.