1{
2 lib,
3 attrs,
4 buildPythonPackage,
5 dictdiffer,
6 diskcache,
7 dvc-objects,
8 fetchFromGitHub,
9 fsspec,
10 orjson,
11 pygtrie,
12 pythonOlder,
13 setuptools-scm,
14 sqltrie,
15 tqdm,
16}:
17
18buildPythonPackage rec {
19 pname = "dvc-data";
20 version = "3.16.12";
21 pyproject = true;
22
23 disabled = pythonOlder "3.12";
24
25 src = fetchFromGitHub {
26 owner = "iterative";
27 repo = "dvc-data";
28 tag = version;
29 hash = "sha256-eGicR+fWsgE2mSjhf/r96IBvXX4cLG/nmtt7Q2MCxkE=";
30 };
31
32 build-system = [ setuptools-scm ];
33
34 dependencies = [
35 attrs
36 dictdiffer
37 diskcache
38 dvc-objects
39 fsspec
40 orjson
41 pygtrie
42 sqltrie
43 tqdm
44 ];
45
46 # Tests depend on upath which is unmaintained and only available as wheel
47 doCheck = false;
48
49 pythonImportsCheck = [ "dvc_data" ];
50
51 meta = with lib; {
52 description = "DVC's data management subsystem";
53 homepage = "https://github.com/iterative/dvc-data";
54 changelog = "https://github.com/iterative/dvc-data/releases/tag/${src.tag}";
55 license = licenses.asl20;
56 maintainers = with maintainers; [ fab ];
57 mainProgram = "dvc-data";
58 };
59}