at 24.11-pre 1.2 kB view raw
1{ 2 lib, 3 buildPythonPackage, 4 duckdb, 5 fetchFromGitHub, 6 pytestCheckHook, 7 python-dateutil, 8 pythonOlder, 9 setuptools, 10 setuptools-scm, 11}: 12 13buildPythonPackage rec { 14 pname = "sqlglot"; 15 version = "23.12.1"; 16 pyproject = true; 17 18 disabled = pythonOlder "3.8"; 19 20 src = fetchFromGitHub { 21 repo = "sqlglot"; 22 owner = "tobymao"; 23 rev = "refs/tags/v${version}"; 24 hash = "sha256-VUG/l1iZ/8vAJwhktN/tx8U8KVLgaghUPArtxEyIA54="; 25 }; 26 27 nativeBuildInputs = [ 28 setuptools 29 setuptools-scm 30 ]; 31 32 propagatedBuildInputs = [ 33 # Optional dependency used in the sqlglot optimizer 34 python-dateutil 35 ]; 36 37 nativeCheckInputs = [ 38 pytestCheckHook 39 duckdb 40 ]; 41 42 disabledTestPaths = [ 43 # These integration tests assume a running Spark instance 44 "tests/dataframe/integration" 45 ]; 46 47 pythonImportsCheck = [ "sqlglot" ]; 48 49 meta = with lib; { 50 description = "A no dependency Python SQL parser, transpiler, and optimizer"; 51 homepage = "https://github.com/tobymao/sqlglot"; 52 changelog = "https://github.com/tobymao/sqlglot/blob/v${version}/CHANGELOG.md"; 53 license = licenses.mit; 54 maintainers = with maintainers; [ cpcloud ]; 55 }; 56}