Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / development / python-modules / astroid / default.nix
blob5fd0a5281b2c03bbee6c8436e2a4d73da23b21fc
1 { lib
2 , buildPythonPackage
3 , fetchFromGitHub
4 , pythonOlder
5 , isPyPy
6 , lazy-object-proxy
7 , setuptools
8 , wheel
9 , typing-extensions
10 , typed-ast
11 , pip
12 , pylint
13 , pytestCheckHook
14 , wrapt
17 buildPythonPackage rec {
18   pname = "astroid";
19   version = "2.15.6"; # Check whether the version is compatible with pylint
20   format = "pyproject";
22   disabled = pythonOlder "3.7.2";
24   src = fetchFromGitHub {
25     owner = "PyCQA";
26     repo = pname;
27     rev = "refs/tags/v${version}";
28     hash = "sha256-0oNNEVD8rYGkM11nGUD+XMwE7xgk7mJIaplrAXaECFg=";
29   };
31   nativeBuildInputs = [
32     setuptools
33     wheel
34   ];
36   propagatedBuildInputs = [
37     lazy-object-proxy
38     wrapt
39   ] ++ lib.optionals (pythonOlder "3.11") [
40     typing-extensions
41   ] ++ lib.optionals (!isPyPy && pythonOlder "3.8") [
42     typed-ast
43   ];
45   nativeCheckInputs = [
46     pip
47     pytestCheckHook
48     typing-extensions
49   ];
51   disabledTests = [
52     # DeprecationWarning: Deprecated call to `pkg_resources.declare_namespace('tests.testdata.python3.data.path_pkg_resources_1.package')`.
53     "test_identify_old_namespace_package_protocol"
54   ];
56   passthru.tests = {
57     inherit pylint;
58   };
60   meta = with lib; {
61     changelog = "https://github.com/PyCQA/astroid/blob/${src.rev}/ChangeLog";
62     description = "An abstract syntax tree for Python with inference support";
63     homepage = "https://github.com/PyCQA/astroid";
64     license = licenses.lgpl21Plus;
65     maintainers = with maintainers; [ ];
66   };