test: ignore all DeprecatedWarning calls for pkg_resources.declare_na…
…mespace A lot of third party dependencies (e.g. matplotlib/matplotlib#25244) are still using it. Helpful to ignore for now.
refactor(api): remove deprecated ibis.sequence() function
BREAKING CHANGE: `ibis.sequence()` is removed
refactor(schema): remove deprecated Schema.merge() method
BREAKING CHANGE: `Schema.merge()` is removed, use the union operator `schema1 | schema2` instead
refactor(ir): remove deprecated Value.summary() and `NumericValue.s…
…ummary()` expression methods BREAKING CHANGE: `Value.summary()` and `NumericValue.summary()` are removed
refactor(backends): remove deprecated Backend.load_data(), `.exists…
…_database()` and `.exists_table()` methods removed from all the backends BREAKING CHANGE: `Backend.load_data()`, `Backend.exists_database()` and `Backend.exists_table()` are removed
refactor(datatypes): remove direct ir dependency from datatypes
This change was required to prevent import cycles. The value expression corresponding to a datatype is now can be retrieved using `getattr(ibis.expr.types, DataType.scalar|column)`. BREAKING CHANGE: `DataType.scalar` and `column` class attributes are now strings.
refactor(api): remove deprecated Table.sort_by() and `Table.groupby…
…()` methods BREAKING CHANGE: removed `Table.sort_by()` and `Table.groupby()`, use `.order_by()` and `.group_by()` respectively
refactor(backends): remove deprecated path argument of `Backend.con…
…nect()` it affects the `sqlite` and `duckdb` backends BREAKING CHANGE: `path` argument of `Backend.connect()` is removed, use the `database` argument instead
fix(type-system): infer in-memory object types using pyarrow
BREAKING CHANGE: Inferred types of Python objects may be slightly different. Ibis now use `pyarrow` to infer the column types of pandas DataFrame and other types.
refactor(ir): encapsulate temporal unit handling in enums
BREAKING CHANGE: `IntervalType.unit` is now an enum instead of a string
feat(api): replace suffixes in join with lname/rname
BREAKING CHANGE: the `suffixes` argument in all join methods has been removed in favor of `lname`/`rname` args. The default renaming scheme for duplicate columns has also changed. To get the exact same behavior as before, pass in `lname="{name}_x", rname="{name}_y"`.
refactor(api): remove deprecated Table.set_column() method
BREAKING CHANGE: `Table.set_column()` is removed; use `Table.mutate(name=expr)` instead
chore(deps): bump lower bound of ipython in dev dependencies
We had a contributor run into issues with a very old version of `prompt_toolkit` (3.0.4, ~3 years old) in the conda-lock files cause trouble. This bumps the lower bound of `ipython` (which is the package that pulls in `prompt_toolkit`) so that we get a less-old version. I don't think this counts as a breaking change in that it only impacts dev dependencies.
fix(bigquery): ensure that bigquery temporal ops work with the new ti…
…meunit/dateunit/intervalunit enums
feat(sqlite): add ops.DateSub, ops.DateAdd, ops.DateDiff
A few missing ops to help clean up some of our TPC-H queries.
refactor(deps): remove optional dependency on clickhouse-cityhash and…
… lz4 BREAKING CHANGE: New environments will have a different default setting for `compression` in the ClickHouse backend due to removal of optional dependencies. Ibis is still capable of using the optional dependencies but doesn't include them by default. Install `clickhouse-cityhash` and `lz4` to preserve the previous behavior.