1{ lib
2, fetchFromGitHub
3, python3
4}:
5
6let self = with python3.pkgs; buildPythonApplication rec {
7 pname = "mutmut";
8 version = "2.2.0";
9
10 src = fetchFromGitHub {
11 repo = pname;
12 owner = "boxed";
13 rev = version;
14 hash = "sha256-G+OL/9km2iUeZ1QCpU73CIWVWMexcs3r9RdCnAsESnY=";
15 };
16
17 postPatch = ''
18 substituteInPlace requirements.txt --replace 'junit-xml==1.8' 'junit-xml==1.9'
19 '';
20
21 disabled = pythonOlder "3.7";
22
23 doCheck = false;
24
25 propagatedBuildInputs = [ click glob2 parso pony junit-xml ];
26
27 passthru.tests.version = testers.testVersion { package = self; };
28
29 meta = with lib; {
30 description = "mutation testing system for Python, with a strong focus on ease of use";
31 homepage = "https://github.com/boxed/mutmut";
32 changelog = "https://github.com/boxed/mutmut/blob/${version}/HISTORY.rst";
33 license = licenses.bsd3;
34 maintainers = with maintainers; [ synthetica ];
35 };
36};
37in self