1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 poetry-core, 6 opentelemetry-api, 7 opentelemetry-sdk, 8 pytest-asyncio, 9 pytest-mock, 10 pytestCheckHook, 11 pythonOlder, 12 std-uritemplate, 13 gitUpdater, 14}: 15 16buildPythonPackage rec { 17 pname = "microsoft-kiota-abstractions"; 18 version = "1.9.7"; 19 pyproject = true; 20 21 disabled = pythonOlder "3.9"; 22 23 src = fetchFromGitHub { 24 owner = "microsoft"; 25 repo = "kiota-python"; 26 tag = "microsoft-kiota-abstractions-v${version}"; 27 hash = "sha256-ovmGka0YxhjPQYodHAMpcrqLMpXEqSTeky3n/rC7Ohs="; 28 }; 29 30 sourceRoot = "${src.name}/packages/abstractions/"; 31 32 build-system = [ poetry-core ]; 33 34 dependencies = [ 35 opentelemetry-api 36 opentelemetry-sdk 37 std-uritemplate 38 ]; 39 40 nativeCheckInputs = [ 41 pytest-asyncio 42 pytest-mock 43 pytestCheckHook 44 ]; 45 46 disabledTests = [ 47 # ValueError: Illegal class passed as substitution, found <class 'datetime.datetime'> at col: 39 48 "test_sets_datetime_values_in_path_parameters" 49 ]; 50 51 pythonImportsCheck = [ "kiota_abstractions" ]; 52 53 # detects the wrong tag on the repo 54 passthru.skipBulkUpdate = true; 55 56 passthru.updateScript = gitUpdater { 57 rev-prefix = "microsoft-kiota-abstractions-v"; 58 }; 59 60 meta = with lib; { 61 description = "Abstractions library for Kiota generated Python clients"; 62 homepage = "https://github.com/microsoft/kiota-python/tree/main/packages/abstractions/"; 63 changelog = "https://github.com/microsoft/kiota-python/releases/tag/${src.tag}"; 64 license = licenses.mit; 65 maintainers = with maintainers; [ fab ]; 66 }; 67}