{ lib , buildPythonPackage , fetchFromGitHub , pythonOlder , pytestCheckHook , python-dateutil , duckdb , setuptools-scm }: buildPythonPackage rec { pname = "sqlglot"; version = "16.3.1"; disabled = pythonOlder "3.8"; src = fetchFromGitHub { repo = "sqlglot"; owner = "tobymao"; rev = "v${version}"; hash = "sha256-EN5ocyXCZaWE1BaC2eDg41+o5BoHAog1372b9rc2IDM="; }; SETUPTOOLS_SCM_PRETEND_VERSION = version; nativeBuildInputs = [ setuptools-scm ]; # optional dependency used in the sqlglot optimizer propagatedBuildInputs = [ python-dateutil ]; nativeCheckInputs = [ pytestCheckHook duckdb ]; # these integration tests assume a running Spark instance disabledTestPaths = [ "tests/dataframe/integration" ]; pythonImportsCheck = [ "sqlglot" ]; meta = with lib; { description = "A no dependency Python SQL parser, transpiler, and optimizer"; homepage = "https://github.com/tobymao/sqlglot"; license = licenses.mit; maintainers = with maintainers; [ cpcloud ]; }; }