diff --git a/pkgs/development/python-modules/databricks-sql-connector/default.nix b/pkgs/development/python-modules/databricks-sql-connector/default.nix new file mode 100644 index 000000000000..9c16f6267d79 --- /dev/null +++ b/pkgs/development/python-modules/databricks-sql-connector/default.nix @@ -0,0 +1,50 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, thrift +, pandas +, pyarrow +, poetry-core +, pytestCheckHook +}: + +buildPythonPackage rec { + pname = "databricks-sql-connector"; + version = "2.0.5"; + format = "pyproject"; + + src = fetchFromGitHub { + owner = "databricks"; + repo = "databricks-sql-python"; + rev = "v${version}"; + sha256 = "sha256-Qpdyn6z1mbO4bzyUZ2eYdd9pfIkIP/Aj4YgNXaYwxpE="; + }; + + postPatch = '' + substituteInPlace pyproject.toml \ + --replace 'thrift = "^0.13.0"' 'thrift = ">=0.13.0,<1.0.0"' + ''; + + nativeBuildInputs = [ + poetry-core + ]; + + propagatedBuildInputs = [ + thrift + pandas + pyarrow + ]; + + checkInputs = [ + pytestCheckHook + ]; + + pytestFlagsArray = [ "tests/unit" ]; + + meta = with lib; { + description = "Databricks SQL Connector for Python"; + homepage = https://docs.databricks.com/dev-tools/python-sql-connector.html; + license = licenses.asl20; + maintainers = with maintainers; [ harvidsen ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index eb4600bcaaec..efd711b980a1 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2254,6 +2254,8 @@ in { databricks-connect = callPackage ../development/python-modules/databricks-connect { }; + databricks-sql-connector = callPackage ../development/python-modules/databricks-sql-connector { }; + dataclasses = callPackage ../development/python-modules/dataclasses { }; dataclasses-json = callPackage ../development/python-modules/dataclasses-json { };