biome: 1.9.2 -> 1.9.3 (#349335)
[NixPkgs.git] / pkgs / development / python-modules / ydiff / default.nix
blobe656721e855ce901047a156352af4647703b50dd
2   lib,
3   buildPythonPackage,
4   fetchPypi,
5   pygments,
6   gitMinimal,
7   mercurial,
8   subversion,
9   patchutils,
10   less,
13 buildPythonPackage rec {
14   pname = "ydiff";
15   version = "1.3";
16   format = "setuptools";
18   src = fetchPypi {
19     inherit pname version;
20     hash = "sha256-ii6EWI7zHT5SVwD6lksfmqth8MnEYoHgU0GlbgHc17g=";
21   };
23   patchPhase = ''
24     substituteInPlace ydiff.py \
25       --replace "['git'" "['${gitMinimal}/bin/git'" \
26       --replace "['hg'" "['${mercurial}/bin/hg'" \
27       --replace "['svn'" "['${subversion}/bin/svn'" \
28       --replace "['filterdiff'" "['${patchutils}/bin/filterdiff'" \
29       --replace "['less'" "['${less}/bin/less'" # doesn't support PAGER from env
30     substituteInPlace tests/test_ydiff.py \
31       --replace /bin/rm rm \
32       --replace /bin/sh sh
33     patchShebangs setup.py
34     patchShebangs tests/*.sh
35   '';
37   nativeCheckInputs = [ pygments ];
39   checkPhase = ''
40     runHook preCheck
41     make reg # We don't want the linter or coverage check.
42     runHook postCheck
43   '';
45   meta = with lib; {
46     description = "View colored, incremental diff in workspace or from stdin with side by side and auto pager support (Was \"cdiff\")";
47     mainProgram = "ydiff";
48     longDescription = ''
49       Term based tool to view colored, incremental diff in a version
50       controlled workspace (supports Git, Mercurial, Perforce and Svn
51       so far) or from stdin, with side by side (similar to diff -y)
52       and auto pager support.
53     '';
54     homepage = "https://github.com/ymattw/ydiff";
55     license = licenses.bsd3;
56     maintainers = (with maintainers; [ leenaars ]) ++ teams.deshaw.members;
57   };