1{ stdenv
2, buildPythonPackage
3, fetchPypi
4, mock
5, twisted
6, pyopenssl
7, service-identity
8}:
9
10buildPythonPackage rec {
11 pname = "foolscap";
12 version = "20.4.0";
13
14 src = fetchPypi {
15 inherit pname version;
16 sha256 = "0rbw9makjmawkcxnkkngybj3n14s0dnzn9gkqqq2krcm514kmlb9";
17 };
18
19 propagatedBuildInputs = [ mock twisted pyopenssl service-identity ];
20
21 checkPhase = ''
22 # Either uncomment this, or remove this custom check phase entirely, if
23 # you wish to do battle with the foolscap tests. ~ C.
24 # trial foolscap
25 '';
26
27 meta = with stdenv.lib; {
28 homepage = "http://foolscap.lothar.com/";
29 description = "Foolscap, an RPC protocol for Python that follows the distributed object-capability model";
30 longDescription = ''
31 "Foolscap" is the name for the next-generation RPC protocol,
32 intended to replace Perspective Broker (part of Twisted).
33 Foolscap is a protocol to implement a distributed
34 object-capabilities model in Python.
35 '';
36 # See http://foolscap.lothar.com/trac/browser/LICENSE.
37 license = licenses.mit;
38 };
39
40}