1{
2 lib,
3 buildPythonPackage,
4 capnproto,
5 cython,
6 fetchFromGitHub,
7 isPy27,
8 isPyPy,
9 pkgconfig,
10}:
11
12buildPythonPackage rec {
13 pname = "pycapnp";
14 version = "1.1.0";
15 format = "setuptools";
16 disabled = isPyPy || isPy27;
17
18 src = fetchFromGitHub {
19 owner = "capnproto";
20 repo = pname;
21 rev = "v${version}";
22 sha256 = "1xi6df93ggkpmwckwbi356v7m32zv5qry8s45hvsps66dz438kmi";
23 };
24
25 nativeBuildInputs = [
26 cython
27 pkgconfig
28 ];
29
30 buildInputs = [ capnproto ];
31
32 # Tests depend on schema_capnp which fails to generate
33 doCheck = false;
34
35 pythonImportsCheck = [ "capnp" ];
36
37 meta = with lib; {
38 homepage = "https://capnproto.github.io/pycapnp/";
39 maintainers = [ ];
40 license = licenses.bsd2;
41 # No support for capnproto 1.0 yet
42 # https://github.com/capnproto/pycapnp/issues/323
43 broken = lib.versionAtLeast capnproto.version "1.0";
44 };
45}