1{
2 lib,
3 aiohttp,
4 azure-kusto-data,
5 azure-storage-blob,
6 azure-storage-queue,
7 buildPythonPackage,
8 fetchFromGitHub,
9 pandas,
10 pytest-asyncio,
11 pytestCheckHook,
12 pythonOlder,
13 responses,
14 setuptools,
15 tenacity,
16}:
17
18buildPythonPackage rec {
19 pname = "azure-kusto-ingest";
20 version = "4.6.3";
21 pyproject = true;
22
23 disabled = pythonOlder "3.10";
24
25 src = fetchFromGitHub {
26 owner = "Azure";
27 repo = "azure-kusto-python";
28 tag = "v${version}";
29 hash = "sha256-VndOEvSi4OMf/yAjNl34X9IFF0T+wNfjlPW8NfdrwUo=";
30 };
31
32 sourceRoot = "${src.name}/${pname}";
33
34 build-system = [ setuptools ];
35
36 dependencies = [
37 azure-kusto-data
38 azure-storage-blob
39 azure-storage-queue
40 tenacity
41 ];
42
43 optional-dependencies = {
44 pandas = [ pandas ];
45 };
46
47 nativeCheckInputs = [
48 aiohttp
49 pytest-asyncio
50 pytestCheckHook
51 responses
52 ]
53 ++ lib.flatten (builtins.attrValues optional-dependencies);
54
55 pythonImportsCheck = [ "azure.kusto.ingest" ];
56
57 disabledTestPaths = [
58 # Tests require network access
59 "tests/test_e2e_ingest.py"
60 ];
61
62 meta = {
63 description = "Module for Kusto Ingest";
64 homepage = "https://github.com/Azure/azure-kusto-python/tree/master/azure-kusto-ingest";
65 changelog = "https://github.com/Azure/azure-kusto-python/releases/tag/${src.tag}";
66 license = lib.licenses.mit;
67 maintainers = with lib.maintainers; [ pyrox0 ];
68 };
69}