diff --git a/pkgs/development/python-modules/dvc-http/default.nix b/pkgs/development/python-modules/dvc-http/default.nix new file mode 100644 index 000000000000..cb812d850c16 --- /dev/null +++ b/pkgs/development/python-modules/dvc-http/default.nix @@ -0,0 +1,53 @@ +{ lib +, aiohttp-retry +, buildPythonPackage +, fetchFromGitHub +, dvc-objects +, fsspec +, pythonOlder +, pythonRelaxDepsHook +, setuptools-scm +}: + +buildPythonPackage rec { + pname = "dvc-http"; + version = "2.30.2"; + format = "pyproject"; + + disabled = pythonOlder "3.8"; + + src = fetchFromGitHub { + owner = "iterative"; + repo = pname; + rev = "refs/tags/${version}"; + hash = "sha256-IlgJEnS+rHSg5cw7SCc3vVtG1mJA5voGViya7nkpL2M="; + }; + + SETUPTOOLS_SCM_PRETEND_VERSION = version; + + nativeBuildInputs = [ + setuptools-scm + ]; + + propagatedBuildInputs = [ + dvc-objects + fsspec + aiohttp-retry + ]; + + # Currently it's not possible to run the tests + # ModuleNotFoundError: No module named 'dvc.testing' + doCheck = false; + + pythonImportsCheck = [ + "dvc_http" + ]; + + meta = with lib; { + description = "HTTP plugin for dvc"; + homepage = "https://github.com/iterative/dvc-http"; + changelog = "https://github.com/iterative/dvc-http/releases/tag/${version}"; + license = licenses.asl20; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 9931e2ac01a7..c63ac709b295 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2940,6 +2940,8 @@ self: super: with self; { dvc-data = callPackage ../development/python-modules/dvc-data { }; + dvc-http = callPackage ../development/python-modules/dvc-http { }; + dvc-objects = callPackage ../development/python-modules/dvc-objects { }; dvc-render = callPackage ../development/python-modules/dvc-render { };