1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitLab,
5
6 # build-system
7 setuptools,
8 setuptools-scm,
9
10 # dependencies
11 lz4,
12 numpy,
13 ruamel-yaml,
14 typing-extensions,
15 zstandard,
16
17 # nativeCheckInputs
18 pytestCheckHook,
19
20 # checkInputs
21 declinate,
22}:
23
24buildPythonPackage rec {
25 pname = "rosbags";
26 version = "0.10.11";
27 pyproject = true;
28
29 src = fetchFromGitLab {
30 owner = "ternaris";
31 repo = "rosbags";
32 tag = "v${version}";
33 hash = "sha256-uHRmeHwNswZt5q+RSlzjqZiXhH6qYAkf8AufrRNbBtY=";
34 };
35
36 build-system = [
37 setuptools
38 setuptools-scm
39 ];
40
41 dependencies = [
42 lz4
43 numpy
44 ruamel-yaml
45 typing-extensions
46 zstandard
47 ];
48
49 nativeCheckInputs = [ pytestCheckHook ];
50
51 checkInputs = [
52 declinate
53 ];
54
55 pythonImportsCheck = [
56 "rosbags"
57 ];
58
59 meta = {
60 description = "Pure Python library to read, modify, convert, and write rosbag files";
61 homepage = "https://gitlab.com/ternaris/rosbags";
62 changelog = "https://gitlab.com/ternaris/rosbags/-/blob/${src.tag}/CHANGES.rst";
63 license = lib.licenses.asl20;
64 maintainers = with lib.maintainers; [ nim65s ];
65 };
66}