Merge pull request #307098 from r-ryantm/auto-update/cilium-cli
[NixPkgs.git] / pkgs / development / python-modules / hacking / default.nix
blobcd121822e651a6610471ae6ed7ad49da7c65ea87
1 { lib
2 , buildPythonPackage
3 , fetchPypi
4 , pbr
5 , flake8
6 , stestr
7 , ddt
8 , testscenarios
9 }:
11 buildPythonPackage rec {
12   pname = "hacking";
13   version = "6.1.0";
14   format = "setuptools";
16   src = fetchPypi {
17     inherit pname version;
18     hash = "sha256-3lBqMSQDThi046acld5JjDRgvLxJwWQ9MXjRW8barBQ=";
19   };
21   postPatch = ''
22     sed -i 's/flake8.*/flake8/' requirements.txt
23     substituteInPlace hacking/checks/python23.py \
24       --replace 'H236: class Foo(object):\n    __metaclass__ = \' 'Okay: class Foo(object):\n    __metaclass__ = \'
25     substituteInPlace hacking/checks/except_checks.py \
26       --replace 'H201: except:' 'Okay: except:'
27   '';
29   nativeBuildInputs = [ pbr ];
31   propagatedBuildInputs = [
32     flake8
33   ];
35   nativeCheckInputs = [
36     ddt
37     stestr
38     testscenarios
39   ];
41   checkPhase = ''
42     # tries to trigger flake8 and fails
43     rm hacking/tests/test_doctest.py
45     stestr run
46   '';
48   pythonImportsCheck = [ "hacking" ];
50   meta = with lib; {
51     description = "OpenStack Hacking Guideline Enforcement";
52     homepage = "https://github.com/openstack/hacking";
53     license = licenses.asl20;
54     maintainers = teams.openstack.members;
55   };