1{ lib, fetchPypi, buildPythonPackage, python, logilab_common, six
2, lazy-object-proxy, wrapt, singledispatch, enum34, pythonOlder
3, backports_functools_lru_cache
4}:
5
6buildPythonPackage rec {
7 name = "${pname}-${version}";
8 pname = "astroid";
9 version = "1.6.1";
10
11 src = fetchPypi {
12 inherit pname version;
13 sha256 = "f0a0e386dbca9f93ea9f3ea6f32b37a24720502b7baa9cb17c3976a680d43a06";
14 };
15
16 propagatedBuildInputs = [ logilab_common six lazy-object-proxy wrapt ]
17 ++ lib.optionals (pythonOlder "3.4") [ enum34 singledispatch]
18 ++ lib.optionals (pythonOlder "3.3") [ backports_functools_lru_cache ];
19
20 postPatch = ''
21 cd astroid/tests
22 for i in $(ls unittest*); do mv -v $i test_$i; done
23 cd ../..
24 rm -vf astroid/tests/test_unittest_inference.py
25 rm -vf astroid/tests/test_unittest_manager.py
26 '';
27
28 checkPhase = ''
29 ${python.interpreter} -m unittest discover
30 '';
31
32 meta = with lib; {
33 description = "A abstract syntax tree for Python with inference support";
34 homepage = https://bitbucket.org/logilab/astroid;
35 license = licenses.lgpl2;
36 platforms = platforms.all;
37 maintainers = with maintainers; [ nand0p ];
38 };
39}