1{ lib, buildPythonPackage, fetchPypi
2, setuptools_scm
3, sphinx
4, hypothesis
5, py
6, pytest
7, pytest-benchmark
8, sortedcollections
9, sortedcontainers
10, isPy3k
11}:
12
13buildPythonPackage rec {
14 pname = "bidict";
15 version = "0.20.0";
16 disabled = !isPy3k;
17
18 src = fetchPypi {
19 inherit pname version;
20 sha256 = "c1b1ce1c0f1e3457489672bc3a4db375a06f61ae7797a9eedf71ea788cea3870";
21 };
22
23 nativeBuildInputs = [ setuptools_scm ];
24 propagatedBuildInputs = [ sphinx ];
25
26 # this can be removed >0.19.0
27 postPatch = ''
28 substituteInPlace setup.py \
29 --replace "setuptools_scm < 4" "setuptools_scm"
30 '';
31
32 checkInputs = [
33 hypothesis
34 py
35 pytest
36 pytest-benchmark
37 sortedcollections
38 sortedcontainers
39 ];
40 checkPhase = ''
41 pytest tests
42 '';
43
44 meta = with lib; {
45 homepage = "https://github.com/jab/bidict";
46 description = "Efficient, Pythonic bidirectional map data structures and related functionality";
47 license = licenses.mpl20;
48 maintainers = with maintainers; [ jakewaksbaum ];
49 };
50}