1{
2 lib,
3 buildPythonPackage,
4 environs,
5 fetchFromGitHub,
6 gitpython,
7 grpcio,
8 grpcio-testing,
9 minio,
10 mmh3,
11 pandas,
12 pyarrow,
13 pytestCheckHook,
14 pythonOlder,
15 pythonRelaxDepsHook,
16 requests,
17 scikit-learn,
18 setuptools-scm,
19 ujson,
20 wheel,
21}:
22
23buildPythonPackage rec {
24 pname = "pymilvus";
25 version = "2.3.6";
26 pyproject = true;
27
28 disabled = pythonOlder "3.7";
29
30 src = fetchFromGitHub {
31 owner = "milvus-io";
32 repo = "pymilvus";
33 rev = "refs/tags/v${version}";
34 hash = "sha256-K7k3MTOEm9+HDwMps9C8Al0Jmp1ptJw3pN1LEBOUz0U=";
35 };
36
37 pythonRelaxDeps = [
38 "environs"
39 "grpcio"
40 ];
41
42 nativeBuildInputs = [
43 gitpython
44 pythonRelaxDepsHook
45 setuptools-scm
46 wheel
47 ];
48
49 propagatedBuildInputs = [
50 environs
51 grpcio
52 minio
53 mmh3
54 pandas
55 pyarrow
56 requests
57 ujson
58 ];
59
60 nativeCheckInputs = [
61 grpcio-testing
62 pytestCheckHook
63 scikit-learn
64 ];
65
66 pythonImportsCheck = [ "pymilvus" ];
67
68 disabledTests = [ "test_get_commit" ];
69
70 meta = with lib; {
71 description = "Python SDK for Milvus";
72 homepage = "https://github.com/milvus-io/pymilvus";
73 changelog = "https://github.com/milvus-io/pymilvus/releases/tag/v${version}";
74 license = licenses.mit;
75 maintainers = with maintainers; [ happysalada ];
76 };
77}