Andrew Marks

Results 13 comments of Andrew Marks

Part of the issue here is that the inherited methods are not typed with `Self` or `@overload`s. For example, `NumericColumn` inherits `__add__` from `NumericValue`, which is typed as `def __add__(...)...

That's fair. The problem right now is that this breaks backend independence. The workaround is also not great because `TimestampNow` is typed as `dtype = dt.timestamp` ([link](https://github.com/ibis-project/ibis/blob/d44186034851e0660af6342f319d00296cded660/ibis/expr/operations/generic.py#L192-L196)), so even explicit...

This also affects the DuckDb backend. Repro: ```python import ibis import pandas as pd tbl = ibis.memtable(pd.DataFrame({"value": list(range(10))})) tbl = tbl.mutate(new_value=ibis.ifelse(tbl["value"] < 5, tbl["value"], ibis.null())) window = ibis.window(order_by=tbl["value"].asc(), following=0) expr...