Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ 2 lib, 3 agate, 4 buildPythonPackage, 5 click, 6 daff, 7 dbt-adapters, 8 dbt-common, 9 dbt-extractor, 10 dbt-semantic-interfaces, 11 fetchFromGitHub, 12 jinja2, 13 logbook, 14 mashumaro, 15 minimal-snowplow-tracker, 16 networkx, 17 packaging, 18 pathspec, 19 protobuf, 20 python, 21 pythonOlder, 22 pytz, 23 pyyaml, 24 requests, 25 setuptools, 26 sqlparse, 27 typing-extensions, 28}: 29 30buildPythonPackage rec { 31 pname = "dbt-core"; 32 version = "1.8.2"; 33 pyproject = true; 34 35 disabled = pythonOlder "3.8"; 36 37 src = fetchFromGitHub { 38 owner = "dbt-labs"; 39 repo = "dbt-core"; 40 rev = "refs/tags/v${version}"; 41 hash = "sha256-W1bD/XUmBYKzx66/rO//lCG+LOwDSlOW/KQPs0+cKTI="; 42 }; 43 44 sourceRoot = "${src.name}/core"; 45 46 pythonRelaxDeps = [ 47 "agate" 48 "click" 49 "dbt-semantic-interfaces" 50 "mashumaro" 51 "networkx" 52 "logbook" 53 "pathspec" 54 "urllib3" 55 ]; 56 57 build-system = [ 58 setuptools 59 ]; 60 61 dependencies = [ 62 agate 63 click 64 daff 65 dbt-adapters 66 dbt-common 67 dbt-extractor 68 dbt-semantic-interfaces 69 jinja2 70 logbook 71 mashumaro 72 minimal-snowplow-tracker 73 networkx 74 packaging 75 pathspec 76 protobuf 77 pytz 78 pyyaml 79 requests 80 sqlparse 81 typing-extensions 82 ] ++ mashumaro.optional-dependencies.msgpack; 83 84 # tests exist for the dbt tool but not for this package specifically 85 doCheck = false; 86 87 passthru = { 88 withAdapters = python.pkgs.callPackage ./with-adapters.nix { }; 89 }; 90 91 meta = with lib; { 92 description = "Enables data analysts and engineers to transform their data using the same practices that software engineers use to build applications"; 93 longDescription = '' 94 The dbt tool needs adapters to data sources in order to work. The available 95 adapters are: 96 97 dbt-bigquery 98 dbt-postgres 99 dbt-redshift 100 dbt-snowflake 101 102 An example of building this package with a few adapters: 103 104 dbt.withAdapters (adapters: [ 105 adapters.dbt-bigquery 106 adapters.dbt-postgres 107 ]) 108 ''; 109 homepage = "https://github.com/dbt-labs/dbt-core"; 110 changelog = "https://github.com/dbt-labs/dbt-core/blob/v${version}/CHANGELOG.md"; 111 license = licenses.asl20; 112 maintainers = with maintainers; [ 113 mausch 114 tjni 115 ]; 116 mainProgram = "dbt"; 117 }; 118}