From 591a9fba70f63dee3562d4dc325df846ab59214e Mon Sep 17 00:00:00 2001 From: aleksana Date: Fri, 27 Jun 2025 17:47:03 +0800 Subject: [PATCH] fawltydeps: init at 0.20.0 --- pkgs/by-name/fa/fawltydeps/package.nix | 57 ++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 pkgs/by-name/fa/fawltydeps/package.nix diff --git a/pkgs/by-name/fa/fawltydeps/package.nix b/pkgs/by-name/fa/fawltydeps/package.nix new file mode 100644 index 000000000000..391c03a4c156 --- /dev/null +++ b/pkgs/by-name/fa/fawltydeps/package.nix @@ -0,0 +1,57 @@ +{ + lib, + python3Packages, + fetchFromGitHub, + writableTmpDirAsHomeHook, +}: + +python3Packages.buildPythonApplication rec { + pname = "fawltydeps"; + version = "0.20.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "tweag"; + repo = "FawltyDeps"; + tag = "v${version}"; + hash = "sha256-RGwCi4SD0khuOZXcR9Leh9WtRautnlJIfuLBnosyUgk="; + }; + + build-system = with python3Packages; [ poetry-core ]; + + dependencies = with python3Packages; [ + pyyaml + importlib-metadata + isort + pip-requirements-parser + pydantic + ]; + + nativeCheckInputs = + [ + writableTmpDirAsHomeHook + ] + ++ (with python3Packages; [ + pytestCheckHook + hypothesis + ]); + + disabledTestPaths = [ + # Disable tests that require network + "tests/test_install_deps.py" + "tests/test_resolver.py" + ]; + + pythonImportsCheck = [ "fawltydeps" ]; + + meta = { + description = "Find undeclared and/or unused 3rd-party dependencies in your Python project"; + homepage = "https://tweag.github.io/FawltyDeps"; + license = lib.licenses.mit; + mainProgram = "fawltydeps"; + maintainers = with lib.maintainers; [ + aleksana + jherland + ]; + }; +}