Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ lib, fetchFromGitHub, fetchpatch, buildDunePackage, cmdliner, ppxlib }:
2
3buildDunePackage rec {
4 pname = "bisect_ppx";
5 version = "2.8.2";
6
7 src = fetchFromGitHub {
8 owner = "aantron";
9 repo = "bisect_ppx";
10 rev = version;
11 hash = "sha256-Uc5ZYL6tORcCCvCe9UmOnBF68FqWpQ4bc48fTQwnfis=";
12 };
13
14 patches = [
15 # Ppxlib >= 0.28.0 compatibility
16 # remove when a new version is released
17 (fetchpatch {
18 name = "${pname}-${version}-ppxlib-0.28-compatibility.patch";
19 url = "https://github.com/anmonteiro/bisect_ppx/commit/cc442a08e3a2e0e18deb48f3a696076ac0986728.patch";
20 sha256 = "sha256-pPHhmtd81eWhQd4X0gfZNPYT75+EkurwivP7acfJbNc=";
21 })
22 ];
23
24 minimalOCamlVersion = "4.11";
25 duneVersion = "3";
26
27 buildInputs = [
28 cmdliner
29 ppxlib
30 ];
31
32 meta = with lib; {
33 description = "Bisect_ppx is a code coverage tool for OCaml and Reason. It helps you test thoroughly by showing what's not tested.";
34 homepage = "https://github.com/aantron/bisect_ppx";
35 license = licenses.mit;
36 maintainers = with maintainers; [ ];
37 mainProgram = "bisect-ppx-report";
38 };
39}