Unverified Commit 84731012 authored by Robert Schütz's avatar Robert Schütz Committed by GitHub
Browse files

Merge pull request #288207 from dotlambda/ibis-framework-8.0.0

python311Packages.ibis-framework: 7.1.0 -> 8.0.0
parents e53c07f4 14980426
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -5,7 +5,7 @@
, fetchFromGitHub
, fetchpatch
, substituteAll
, graphviz
, graphviz-nox
, xdg-utils
, makeFontsConf
, freefont_ttf
@@ -34,7 +34,7 @@ buildPythonPackage rec {
  patches = [
    (substituteAll {
      src = ./paths.patch;
      inherit graphviz;
      graphviz = graphviz-nox;
      xdgutils = xdg-utils;
    })
    # https://github.com/xflr6/graphviz/issues/209
+37 −42
Original line number Diff line number Diff line
@@ -17,7 +17,7 @@
, geopandas
, google-cloud-bigquery
, google-cloud-bigquery-storage
, graphviz-nox
, graphviz
, hypothesis
, multipledispatch
, numpy
@@ -25,15 +25,17 @@
, packaging
, pandas
, parsy
, pins
, poetry-core
, poetry-dynamic-versioning
, polars
, pooch
, psycopg2
, pyarrow
, pyarrow-hotfix
, pydata-google-auth
, pydruid
, pymysql
, pyodbc
, pyspark
, pytest-benchmark
, pytest-httpserver
@@ -63,7 +65,7 @@ let
    name = "ibis-testing-data";
    owner = "ibis-project";
    repo = "testing-data";
    # https://github.com/ibis-project/ibis/blob/7.1.0/nix/overlay.nix#L20-L26
    # https://github.com/ibis-project/ibis/blob/8.0.0/nix/overlay.nix#L20-L26
    rev = "2c6a4bb5d5d525058d8d5b2312a9fee5dafc5476";
    hash = "sha256-Lq503bqh9ESZJSk6yVq/uZwkAubzmSmoTBZSsqMm0DY=";
  };
@@ -71,8 +73,8 @@ in

buildPythonPackage rec {
  pname = "ibis-framework";
  version = "7.1.0";
  format = "pyproject";
  version = "8.0.0";
  pyproject = true;

  disabled = pythonOlder "3.9";

@@ -81,7 +83,7 @@ buildPythonPackage rec {
    repo = "ibis";
    owner = "ibis-project";
    rev = "refs/tags/${version}";
    hash = "sha256-E7jryoidw6+CjTIex4wcTXcU+8Kg8LDwg7wJvcwj+7Q=";
    hash = "sha256-KcNZslqmSbu8uPYKpkyvd7d8Fsf0nQt80y0auXsI8fs=";
  };

  nativeBuildInputs = [
@@ -94,25 +96,24 @@ buildPythonPackage rec {
  propagatedBuildInputs = [
    atpublic
    bidict
    filelock
    multipledispatch
    numpy
    pandas
    parsy
    pooch
    pyarrow
    pyarrow-hotfix
    python-dateutil
    pytz
    rich
    sqlglot
    toolz
    typing-extensions
  ]
  ++ pooch.optional-dependencies.progress
  ++ pooch.optional-dependencies.xxhash;
  ];

  nativeCheckInputs = [
    pytestCheckHook
    black
    filelock
    hypothesis
    pytest-benchmark
    pytest-httpserver
@@ -126,35 +127,28 @@ buildPythonPackage rec {
    "--dist=loadgroup"
    "-m"
    "'${lib.concatStringsSep " or " testBackends} or core'"
  ];

  disabledTests = [
    # breakage from sqlalchemy2 truediv changes
    "--deselect=ibis/tests/sql/test_sqlalchemy.py::test_tpc_h17"
    "test_tpc_h17"
    # tries to download duckdb extensions
    "--deselect=ibis/backends/duckdb/tests/test_register.py::test_register_sqlite"
    "--deselect=ibis/backends/duckdb/tests/test_register.py::test_read_sqlite"

    "test_register_sqlite"
    "test_read_sqlite"
    # duckdb does not respect sample_size=2 (reads 3 lines of csv).
    "--deselect=ibis/backends/tests/test_register.py::test_csv_reregister_schema"

    "test_csv_reregister_schema"
    # duckdb fails with:
    # "This function can not be called with an active transaction!, commit or abort the existing one first"
    "--deselect=ibis/backends/tests/test_udf.py::test_vectorized_udf"
    "--deselect=ibis/backends/tests/test_udf.py::test_map_merge_udf"
    "--deselect=ibis/backends/tests/test_udf.py::test_udf"
    "--deselect=ibis/backends/tests/test_udf.py::test_map_udf"

    # pyarrow13 is not supported yet.
    "--deselect=ibis/backends/tests/test_temporal.py::test_date_truncate"
    "--deselect=ibis/backends/tests/test_temporal.py::test_integer_to_interval_timestamp"
    "--deselect=ibis/backends/tests/test_temporal.py::test_integer_to_interval_timestamp"
    "--deselect=ibis/backends/tests/test_temporal.py::test_interval_add_cast_column"
    "--deselect=ibis/backends/tests/test_temporal.py::test_integer_to_interval_timestamp"
    "--deselect=ibis/backends/tests/test_temporal.py::test_integer_to_interval_timestamp"
    "--deselect=ibis/backends/tests/test_temporal.py::test_integer_to_interval_timestamp"
    "--deselect=ibis/backends/tests/test_temporal.py::test_integer_to_interval_timestamp"
    "--deselect=ibis/backends/tests/test_timecontext.py::test_context_adjustment_filter_before_window"
    "--deselect=ibis/backends/tests/test_timecontext.py::test_context_adjustment_window_udf"
    "--deselect=ibis/backends/tests/test_timecontext.py::test_context_adjustment_window_udf"
    "--deselect=ibis/backends/tests/test_aggregation.py::test_aggregate_grouped"
    "test_vectorized_udf"
    "test_s3_403_fallback"
    "test_map_merge_udf"
    "test_udf"
    "test_map_udf"
    # DataFusion error
    "datafusion"
    # pluggy.PluggyTeardownRaisedWarning
    "test_repr_png_is_not_none_in_not_interactive"
    "test_interval_arithmetic"
  ];

  # patch out tests that check formatting with black
@@ -162,7 +156,6 @@ buildPythonPackage rec {
    find ibis/tests -type f -name '*.py' -exec sed -i \
      -e '/^ *assert_decompile_roundtrip/d' \
      -e 's/^\( *\)code = ibis.decompile(expr, format=True)/\1code = ibis.decompile(expr)/g' {} +
    substituteInPlace pyproject.toml --replace 'sqlglot = ">=10.4.3,<12"' 'sqlglot = "*"'
  '';

  preCheck = ''
@@ -188,20 +181,22 @@ buildPythonPackage rec {
      dask = [ dask regex ];
      datafusion = [ datafusion ];
      druid = [ pydruid sqlalchemy ];
      duckdb = [ duckdb duckdb-engine packaging sqlalchemy sqlalchemy-views ];
      duckdb = [ duckdb duckdb-engine sqlalchemy sqlalchemy-views ];
      flink = [ ];
      geospatial = [ geoalchemy2 geopandas shapely ];
      mssql = [ sqlalchemy pyodbc sqlalchemy-views ];
      mysql = [ sqlalchemy pymysql sqlalchemy-views ];
      oracle = [ sqlalchemy oracledb packaging sqlalchemy-views ];
      pandas = [ regex ];
      polars = [ polars ];
      polars = [ polars packaging ];
      postgres = [ psycopg2 sqlalchemy sqlalchemy-views ];
      pyspark = [ pyspark sqlalchemy ];
      snowflake = [ snowflake-connector-python snowflake-sqlalchemy sqlalchemy-views ];
      sqlite = [ regex sqlalchemy sqlite sqlalchemy-views ];
      pyspark = [ pyspark sqlalchemy packaging ];
      snowflake = [ snowflake-connector-python snowflake-sqlalchemy sqlalchemy-views packaging ];
      sqlite = [ regex sqlalchemy sqlalchemy-views ];
      trino = [ trino-python-client sqlalchemy sqlalchemy-views ];
      visualization = [ graphviz-nox ];
      visualization = [ graphviz ];
      decompiler = [ black ];
      examples = [ pins ] ++ pins.optional-dependencies.gcs;
    };
  };

+1 −3
Original line number Diff line number Diff line
@@ -4965,9 +4965,7 @@ self: super: with self; {
  graphtage = callPackage ../development/python-modules/graphtage { };
  graphviz = callPackage ../development/python-modules/graphviz {
    inherit (pkgs) graphviz;
  };
  graphviz = callPackage ../development/python-modules/graphviz { };
  grappelli-safe = callPackage ../development/python-modules/grappelli-safe { };