about summary refs log tree commit diff
path: root/pkgs/development/python-modules/ibis-framework/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/python-modules/ibis-framework/default.nix')
-rw-r--r--pkgs/development/python-modules/ibis-framework/default.nix101
1 files changed, 24 insertions, 77 deletions
diff --git a/pkgs/development/python-modules/ibis-framework/default.nix b/pkgs/development/python-modules/ibis-framework/default.nix
index 53e96f9dfbd47..abaabb11f1bb1 100644
--- a/pkgs/development/python-modules/ibis-framework/default.nix
+++ b/pkgs/development/python-modules/ibis-framework/default.nix
@@ -12,9 +12,7 @@
   datafusion,
   db-dtypes,
   duckdb,
-  duckdb-engine,
   filelock,
-  geoalchemy2,
   geopandas,
   google-cloud-bigquery,
   google-cloud-bigquery-storage,
@@ -51,9 +49,6 @@
   rich,
   shapely,
   snowflake-connector-python,
-  snowflake-sqlalchemy,
-  sqlalchemy,
-  sqlalchemy-views,
   sqlglot,
   sqlite,
   toolz,
@@ -72,25 +67,25 @@ let
     name = "ibis-testing-data";
     owner = "ibis-project";
     repo = "testing-data";
-    # https://github.com/ibis-project/ibis/blob/9.0.0/nix/overlay.nix#L20-L26
-    rev = "1922bd4617546b877e66e78bb2b87abeb510cf8e";
-    hash = "sha256-l5d7r/6Voy6N2pXq3IivLX3N0tNfKKwsbZXRexzc8Z8=";
+    # https://github.com/ibis-project/ibis/blob/9.1.0/nix/overlay.nix#L20-L26
+    rev = "6737d1cb5951cabaccd095a3ae62a93dbd11ecb9";
+    hash = "sha256-MoVTZPWh4KVlrICYACrgfeLdl/fqoa1iweNg3zUtdrs=";
   };
 in
 
 buildPythonPackage rec {
   pname = "ibis-framework";
-  version = "9.0.0-unstable-2024-06-03";
+  version = "9.1.0";
   pyproject = true;
 
-  disabled = pythonOlder "3.9";
+  disabled = pythonOlder "3.10";
 
   src = fetchFromGitHub {
     name = "ibis-source";
     repo = "ibis";
     owner = "ibis-project";
-    rev = "395c8b539bcd541d36892d95f413dcc3f93ca0bc";
-    hash = "sha256-PPjp8HOwM4IaBz7TBGDgkVytHmX9fKO+ZBR33BoB55s=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-GmzmXzYMs7K7B//is3ZoD4muPAkb0tM56zFBbsA+NEo=";
   };
 
   nativeBuildInputs = [
@@ -139,28 +134,16 @@ buildPythonPackage rec {
   ];
 
   disabledTests = [
-    # breakage from sqlalchemy2 truediv changes
-    "test_tpc_h17"
     # tries to download duckdb extensions
     "test_attach_sqlite"
     "test_connect_extensions"
     "test_load_extension"
     "test_read_sqlite"
     "test_register_sqlite"
-    # duckdb does not respect sample_size=2 (reads 3 lines of csv).
-    "test_csv_reregister_schema"
-    # duckdb fails with:
-    # "This function can not be called with an active transaction!, commit or abort the existing one first"
-    "test_vectorized_udf"
+    # requires network connection
     "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"
+    # requires pytest 8.2+
+    "test_roundtrip_delta"
   ];
 
   # patch out tests that check formatting with black
@@ -192,78 +175,42 @@ buildPythonPackage rec {
         google-cloud-bigquery-storage
         pydata-google-auth
       ];
-      clickhouse = [
-        clickhouse-connect
-        sqlalchemy
-      ];
+      clickhouse = [ clickhouse-connect ];
       dask = [
         dask
         regex
+        packaging
       ];
       datafusion = [ datafusion ];
-      druid = [
-        pydruid
-        sqlalchemy
-      ];
-      duckdb = [
-        duckdb
-        duckdb-engine
-        sqlalchemy
-        sqlalchemy-views
-      ];
+      druid = [ pydruid ];
+      duckdb = [ duckdb ];
       flink = [ ];
       geospatial = [
-        geoalchemy2
         geopandas
         shapely
       ];
-      mssql = [
-        sqlalchemy
-        pyodbc
-        sqlalchemy-views
-      ];
-      mysql = [
-        sqlalchemy
-        pymysql
-        sqlalchemy-views
-      ];
+      mssql = [ pyodbc ];
+      mysql = [ pymysql ];
       oracle = [
-        sqlalchemy
         oracledb
         packaging
-        sqlalchemy-views
       ];
-      pandas = [ regex ];
+      pandas = [
+        regex
+        packaging
+      ];
       polars = [
         polars
         packaging
       ];
-      postgres = [
-        psycopg2
-        sqlalchemy
-        sqlalchemy-views
-      ];
+      postgres = [ psycopg2 ];
       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
-      ];
+      snowflake = [ snowflake-connector-python ];
+      sqlite = [ regex ];
+      trino = [ trino-python-client ];
       visualization = [ graphviz ];
       decompiler = [ black ];
       examples = [ pins ] ++ pins.optional-dependencies.gcs;