1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5
6 cyclonedds,
7 setuptools,
8 rich-click,
9
10 pytestCheckHook,
11 pytest-mock,
12 pytest-cov-stub,
13}:
14
15buildPythonPackage rec {
16 pname = "cyclonedds-python";
17 version = "0.10.5";
18 pyproject = true;
19
20 src = fetchFromGitHub {
21 owner = "eclipse-cyclonedds";
22 repo = "cyclonedds-python";
23 tag = version;
24 hash = "sha256-MN3Z5gqsD+cr5Awmsia9+uCHL/a2KQP2uMS13rVc1Hw=";
25 };
26
27 postPatch = ''
28 substituteInPlace pyproject.toml \
29 --replace-fail "pytest-cov" ""
30 '';
31
32 build-system = [ setuptools ];
33
34 buildInputs = [ cyclonedds ];
35
36 dependencies = [ rich-click ];
37
38 env.CYCLONEDDS_HOME = "${cyclonedds.out}";
39
40 nativeCheckInputs = [
41 pytestCheckHook
42 pytest-mock
43 pytest-cov-stub
44 ];
45
46 meta = {
47 description = "Python binding for Eclipse Cyclone DDS";
48 homepage = "https://github.com/eclipse-cyclonedds/cyclonedds-python";
49 changelog = "https://github.com/eclipse-cyclonedds/cyclonedds-python/releases/tag/${version}";
50 license = lib.licenses.epl20;
51 maintainers = with lib.maintainers; [ kvik ];
52 };
53}