1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 cython,
6 setuptools,
7 hypothesis,
8 pytestCheckHook,
9}:
10
11buildPythonPackage rec {
12 pname = "pyroaring";
13 version = "1.0.2";
14 pyproject = true;
15
16 src = fetchFromGitHub {
17 owner = "Ezibenroc";
18 repo = "PyRoaringBitMap";
19 tag = version;
20 hash = "sha256-g+xpQ2DuVn8b0DiIOY69QOH6iwOYHG4bltX1zbDemdI=";
21 };
22
23 postPatch = ''
24 substituteInPlace setup.py \
25 --replace-fail "cython>=3.0.2,<3.1.0" "cython"
26 '';
27
28 build-system = [
29 cython
30 setuptools
31 ];
32
33 pythonImportsCheck = [ "pyroaring" ];
34
35 nativeCheckInputs = [
36 hypothesis
37 pytestCheckHook
38 ];
39
40 meta = {
41 description = "Python library for handling efficiently sorted integer sets";
42 homepage = "https://github.com/Ezibenroc/PyRoaringBitMap";
43 changelog = "https://github.com/Ezibenroc/PyRoaringBitMap/releases/tag/${src.tag}";
44 license = lib.licenses.mit;
45 maintainers = with lib.maintainers; [ ];
46 };
47}