diff options
author | Alyssa Ross <hi@alyssa.is> | 2023-08-23 10:09:14 +0000 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2023-08-26 09:07:03 +0000 |
commit | 63dabcc77ef9a56655e1ca2ab2e25e6163a72c1f (patch) | |
tree | d58934cb48f9c953b19a0d0d5cffc0d0c5561471 /nixpkgs/pkgs/development/python-modules/dvc/default.nix | |
parent | c4eef3dacb2a3d359561f30917d9e3cc4e041be9 (diff) | |
parent | 91a22f76cd1716f9d0149e8a5c68424bb691de15 (diff) | |
download | nixlib-63dabcc77ef9a56655e1ca2ab2e25e6163a72c1f.tar nixlib-63dabcc77ef9a56655e1ca2ab2e25e6163a72c1f.tar.gz nixlib-63dabcc77ef9a56655e1ca2ab2e25e6163a72c1f.tar.bz2 nixlib-63dabcc77ef9a56655e1ca2ab2e25e6163a72c1f.tar.lz nixlib-63dabcc77ef9a56655e1ca2ab2e25e6163a72c1f.tar.xz nixlib-63dabcc77ef9a56655e1ca2ab2e25e6163a72c1f.tar.zst nixlib-63dabcc77ef9a56655e1ca2ab2e25e6163a72c1f.zip |
Merge branch 'nixos-unstable' of https://github.com/NixOS/nixpkgs
Conflicts: nixpkgs/pkgs/build-support/go/module.nix nixpkgs/pkgs/development/python-modules/django-mailman3/default.nix
Diffstat (limited to 'nixpkgs/pkgs/development/python-modules/dvc/default.nix')
-rw-r--r-- | nixpkgs/pkgs/development/python-modules/dvc/default.nix | 151 |
1 files changed, 151 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/python-modules/dvc/default.nix b/nixpkgs/pkgs/development/python-modules/dvc/default.nix new file mode 100644 index 000000000000..b462d63e816c --- /dev/null +++ b/nixpkgs/pkgs/development/python-modules/dvc/default.nix @@ -0,0 +1,151 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, fetchpatch +, pythonOlder +, pythonRelaxDepsHook +, setuptools-scm +, appdirs +, colorama +, configobj +, distro +, dpath +, dvc-azure +, dvc-data +, dvc-gs +, dvc-http +, dvc-render +, dvc-s3 +, dvc-ssh +, dvc-studio-client +, dvc-task +, flatten-dict +, flufl_lock +, funcy +, grandalf +, hydra-core +, importlib-metadata +, importlib-resources +, iterative-telemetry +, networkx +, packaging +, pathspec +, platformdirs +, psutil +, pydot +, pygtrie +, pyparsing +, requests +, rich +, ruamel-yaml +, scmrepo +, shortuuid +, shtab +, tabulate +, tomlkit +, tqdm +, typing-extensions +, voluptuous +, zc_lockfile +, enableGoogle ? false +, enableAWS ? false +, enableAzure ? false +, enableSSH ? false +}: + +buildPythonPackage rec { + pname = "dvc"; + version = "3.15.3"; + format = "pyproject"; + + src = fetchFromGitHub { + owner = "iterative"; + repo = pname; + rev = "refs/tags/${version}"; + hash = "sha256-ceN8wgQRiwz3R98iPH+cJXqPTTxlBgnSGkpuVgWLvwY="; + }; + + pythonRelaxDeps = [ + "dvc-data" + "platformdirs" + ]; + + postPatch = '' + substituteInPlace dvc/analytics.py --replace 'enabled = not os.getenv(DVC_NO_ANALYTICS)' 'enabled = False' + substituteInPlace dvc/daemon.py \ + --subst-var-by dvc "$out/bin/dcv" + ''; + + nativeBuildInputs = [ + pythonRelaxDepsHook + setuptools-scm + ]; + + propagatedBuildInputs = [ + appdirs + colorama + configobj + distro + dpath + dvc-data + dvc-http + dvc-render + dvc-studio-client + dvc-task + flatten-dict + flufl_lock + funcy + grandalf + hydra-core + iterative-telemetry + networkx + packaging + pathspec + platformdirs + psutil + pydot + pygtrie + pyparsing + requests + rich + ruamel-yaml + scmrepo + shortuuid + shtab + tabulate + tomlkit + tqdm + typing-extensions + voluptuous + zc_lockfile + ] + ++ lib.optionals enableGoogle passthru.optional-dependencies.gs + ++ lib.optionals enableAWS passthru.optional-dependencies.s3 + ++ lib.optionals enableAzure passthru.optional-dependencies.azure + ++ lib.optionals enableSSH passthru.optional-dependencies.ssh + ++ lib.optionals (pythonOlder "3.8") [ + importlib-metadata + ] ++ lib.optionals (pythonOlder "3.9") [ + importlib-resources + ]; + + passthru.optional-dependencies = { + azure = [ dvc-azure ]; + gs = [ dvc-gs ]; + s3 = [ dvc-s3 ]; + ssh = [ dvc-ssh ]; + }; + + # Tests require access to real cloud services + doCheck = false; + + pythonImportsCheck = [ "dvc" "dvc.api" ]; + + meta = with lib; { + description = "Version Control System for Machine Learning Projects"; + homepage = "https://dvc.org"; + changelog = "https://github.com/iterative/dvc/releases/tag/${version}"; + license = licenses.asl20; + maintainers = with maintainers; [ cmcdragonkai fab ]; + }; +} |