53 lines
1.1 KiB
Nix

{
lib,
buildPythonPackage,
fetchFromGitHub,
pythonOlder,
setuptools,
typing-extensions,
pip,
pylint,
pytestCheckHook,
}:
buildPythonPackage rec {
pname = "astroid";
version = "3.3.10"; # Check whether the version is compatible with pylint
pyproject = true;
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = "PyCQA";
repo = "astroid";
tag = "v${version}";
hash = "sha256-q4ZPXz2xaKJ39q6g1c9agktKSCfbRp+3INDfXg/wP8k=";
};
nativeBuildInputs = [ setuptools ];
propagatedBuildInputs = lib.optionals (pythonOlder "3.11") [ typing-extensions ];
nativeCheckInputs = [
pip
pytestCheckHook
];
disabledTestPaths = [
# requires mypy
"tests/test_raw_building.py"
];
passthru.tests = {
inherit pylint;
};
meta = with lib; {
changelog = "https://github.com/PyCQA/astroid/blob/v${version}/ChangeLog";
description = "Abstract syntax tree for Python with inference support";
homepage = "https://github.com/PyCQA/astroid";
license = licenses.lgpl21Plus;
maintainers = with maintainers; [ GaetanLepage ];
};
}