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

fix(deps): update dependency ibis-framework to v10 #1255

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Feb 14, 2025

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
ibis-framework >=9,<10 -> >=10,<11 age adoption passing confidence

Release Notes

ibis-project/ibis (ibis-framework)

v10.0.0

Compare Source

⚠ BREAKING CHANGES
  • api: change as_interval unit argument to be positional-only
  • api: change as_timestamp unit argument to be positional-only
  • api: standardize unnest and pivot_longer signatures
  • api: remove deprecated Table.relabel method
  • api: standardize StringValue method signatures
  • api: standardize NumericValue methods
  • api: make GeoSpatialValue.contains positional-only
  • api: make Table.describe quantile argument keyword-only
  • api: remove deprecated Table.relabel method
  • api: make Table.drop_null/Table.fill_null/Table.window_by/Table.alias argument positional-only
  • api: make Table.sample fraction argument positional-only
  • api: make Table.aggregate metrics argument positional-only
  • api: make Table set operation methods positional-only
  • api: make Table.cast and Table.try_cast methods positional-only
  • api: make nth positional-only
  • api: make isin/notin/cases/identical_to positional-only
  • api: make null-related methods and null function positional-only
  • api: make Value.cast and Value.try_cast positional-only
  • internals: make Value.name positional-only
  • internals: make Expr.pipe positional-only
  • internals: make Expr.equals positional-only
  • api: align signatures of to_json methods
  • api: align signatures of to_delta methods
  • api: align signatures of to_csv/to_csv_dir methods
  • api: align signatures of to_parquet/to_parquet_dir methods
  • api: align .sql method signatures across polars and sql as well as the Table method
  • api: top-level connect method now takes its first argument as positional-only
  • duckdb: align signatures of read_sqlite/read_mysql/read_postgres methods in the duckdb backend
  • api: align signatures of read_delta method; sources are positional-only, everything else is required-keyword
  • api: canonicalize has_operation backend method; single argument is positional-only
  • api: canonicalize read_kafka and to_kafka methods of the PySpark backend
  • api: canonicalize drop_table_or_view method of the impala backend
  • api: canonicalize to_geo signature of the the DuckDB backend
  • api: canonicalize read_geo signature of the the DuckDB backend
  • api: align signatures of list_catalogs; like` argument is now keyword-only
  • bigquery: canonicalize set_database signature
  • api: make list_databases arguments all required-keyword
  • risingwave: canonicalize signatures of risingwave-specific create_* methods
  • polars: canonicalize signature of read_pandas method
  • api: align signatures of drop_table method; name is positional-only; the rest are keyword-only
  • api: align signatures of create_catalog and drop_catalog methods; name is positional-only; the rest are keyword-only
  • api: compile method is now the same across backends
  • api: align signatures of create_table method; name is positional-only; obj is positional-or-keyword; the rest are keyword-only
  • api: align signatures of create_view method; name is positional-only; obj is positional-or-keyword; the rest are keyword-only
  • api: align signatures of drop_view method; name is positional-only; the rest are keyword-only
  • api: align signatures of truncate_table method; name is positional-only; the rest are keyword-only
  • api: align signatures of insert method; name is positional-only; obj is positional-or-keyword; the rest are keyword-only
  • api: align signatures of read_json method; sources are positional-only, everything else is required-keyword
  • api: align signatures of read_csv method; sources are positional-only, everything else is required-keyword
  • api: align signatures of read_parquet method; sources are positional-only, everything else is required-keyword
  • api: align signatures of to_torch method
  • api: align signatures of to_polars method
  • api: align signatures of Backend.list_tables method; all arguments are now keyword-only
  • api: align signatures of Backend.table method; name is positional-only; everything else is required-keyword
  • api: align signatures of create_database and drop_database; name is positional-only; everything else is required-keyword
  • api: standardize MapValue method signatures
  • api: standardize ArrayValue method signatures
  • api: type argument of struct function is now required-keyword
  • api: standardize TemporalValue APIs
  • api: where argument of aggregate functions is now required-keyword
  • api: hashbytes and hexdigest are now positional-only
  • api: standardize how argument to join methods as keyword-only and standardize remaining arguments
  • api: ibis.coalesce/ibis.greatest/ibis.least are now positional-only
  • api: Expr.ifelse is now positional-only
  • api: top-level set operation functions are now positional-only
  • api: set_backend and get_backend functions are now positional-only
  • api: ntile function and method is now positional-only
  • api: ibis.preceding/ibis.following` are now positional-only
  • api: expr argument of ibis.asc/ibis.desc is now positional-only; nulls_first is keyword-only
  • api: data argument of ibis.memtable is now positional-only; the rest are keyword-only
  • api: pairs argument of ibis.schema is now positional-only; the rest are keyword-only
  • api: ibis.param is now positional-only
  • api: n argument in Table.limit and Table.head is now required-positional
  • api: offset argument in Table.limit is now required-keyword
  • api: temporal window expression APIs now require all arguments as keywords
  • api: to_pyarrow and to_pyarrow_batches requires expr as positional-only and keyword for everything else
  • api: to_pandas_batches requires expr as positional-only
  • api: execute and to_pandas methods now require expr as positional-only
  • api: distance is now a required keyword argument for the d_within api
  • duckdb: The duckdb backend's read_csv method accepts only DuckDB types for the values components of the columns and types arguments. You may need need to adjust existing code. For example, the string "float64" should be replaced with the string "double".
  • duckdb: The read_in_memory method is removed from the duckdb backend. Use ibis.memtable instead.
  • api: The how parameter of the Value.arbitrary method is removed. call Value.first or Value.last explicitly
  • api: The StringValue.initcap method is removed. Use StringValue.capitalize instead.
  • api: IntegerValue.label is redundant with the IntegerValue.cases method, use that instead. Replace expr.label(labels) with expr.cases(*enumerate(labels))
  • register: The deprecated register method has been removed. Please use the file-specific read_* methods instead. For in-memory objects, pass them to ibis.memtable or create_table.
  • duckdb: Special handling of the temp_directory argument passed to Ibis is removed in favor of passing the argument through directly to duckdb.connect. Interior nodes of directory trees must be created, e.g., using Path.mkdir(exists_ok=True, parents=True), mkdir -p, etc.
  • config: option_context is removed. Use contextlib.contextmanager to create your own version of this functionality if necessary.
  • duckdb: The DuckDB lower bound has been bumped to a version that has storage backwards compatibility. You may need to migrate your DuckDB database files.
  • api: has_name has always returned True since 9.0. It is safe to remove any calls to has_name.
  • backends: execute now returns non-numpy objects for scalar values.
  • api: ibis.negate is removed. Use the negate method on a
    specific column, instead.
  • api: All ibis.geo_* functions are removed. Equivalent
    methods are available on all geo columns.
  • api: where is removed. Use ibis.ifelse instead.
  • value: Value.greatest and Value.least are removed. Use
    ibis.greatest and ibis.least, instead.
  • joins: Passing a pyarrow.Table or a pandas.DataFrame as
    the right-hand-side of a join is no longer supported.

To join against in-memory data, you can pass the in-memory object to
ibis.memtable or con.create_table and use the resulting table object
instead.

Issues closed

  • api: Removed hierarchical usage of schema.
    Ibis uses the following naming conventions:

    • schema: a mapping of column names to datatypes
    • database: a collection of tables
    • catalog: a collection of databases
  • mysql: Ibis now uses the MySQLdb driver. You may need to install MySQL client libraries to build the extension.

  • padding: String padding operations now follow Python semantics and leave strings greater than the padding length untouched.

  • pandas: The pandas backend is removed. Note that pandas DataFrames are STILL VALID INPUTS AND OUTPUTS and will remain so for the foreseeable future. Please use one of the other local backends like DuckDB, Polars, or DataFusion to perform operations directly on pandas DataFrames.

  • dask: The dask backend is removed. Please use one of the
    other backends that Ibis supports.

  • api: remove deprecated where methodism (886b2d1)

  • api: remove top-level negate function (c8c37dd)

  • api: remove top-level geo functions (6b187c3)

  • backends: convert scalars to non-numpy python objects (#​10233) (df08d5e)

  • duckdb: bump version lower bound to 0.10 (8dbbc8b)

  • mysql: port to MySQLdb instead of pymysql (#​10077) (2b6633c), closes #​10055

  • value: remove deprecated greatest and least methods (65f0973)

Features
Bug Fixes
Documentation

Configuration

📅 Schedule: Branch creation - "after 5pm on friday" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot added the dependencies Issues and PRs related to dependency management label Feb 14, 2025
@renovate renovate bot enabled auto-merge (squash) February 14, 2025 18:12
Copy link
Contributor Author

renovate bot commented Feb 14, 2025

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: poetry.lock
Updating dependencies
Resolving dependencies...


The current project's supported Python range (>=3.9,<4) is not compatible with some of the required packages Python requirement:
  - ibis-framework requires Python >=3.10, so it will not be satisfied for Python >=3.9,<3.10

Because no versions of ibis-framework match >10,<11
 and ibis-framework (10.0.0) requires Python >=3.10, ibis-framework is forbidden.
So, because ibis-substrait depends on ibis-framework (>=10,<11), version solving failed.

  • Check your dependencies Python requirement: The Python requirement can be specified via the `python` or `markers` properties
    
    For ibis-framework, a possible solution would be to set the `python` property to ">=3.10,<4"

    https://python-poetry.org/docs/dependency-specification/#python-restricted-dependencies,
    https://python-poetry.org/docs/dependency-specification/#using-environment-markers

@renovate renovate bot force-pushed the renovate/ibis-framework-10.x branch 2 times, most recently from b2448ec to 2161fc5 Compare February 19, 2025 00:13
@renovate renovate bot force-pushed the renovate/ibis-framework-10.x branch from 2161fc5 to e23969a Compare February 21, 2025 14:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Issues and PRs related to dependency management
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants