1{ lib 2, buildPythonPackage 3, pythonOlder 4, flaky 5, hatchling 6, opentelemetry-api 7, opentelemetry-semantic-conventions 8, opentelemetry-test-utils 9, setuptools 10, typing-extensions 11, pytestCheckHook 12}: 13 14let 15 self = buildPythonPackage { 16 inherit (opentelemetry-api) version src; 17 pname = "opentelemetry-sdk"; 18 disabled = pythonOlder "3.7"; 19 20 sourceRoot = "${opentelemetry-api.src.name}/opentelemetry-sdk"; 21 22 format = "pyproject"; 23 24 nativeBuildInputs = [ 25 hatchling 26 ]; 27 28 propagatedBuildInputs = [ 29 opentelemetry-api 30 opentelemetry-semantic-conventions 31 setuptools 32 typing-extensions 33 ]; 34 35 nativeCheckInputs = [ 36 flaky 37 opentelemetry-test-utils 38 pytestCheckHook 39 ]; 40 41 disabledTestPaths = [ 42 "tests/performance/benchmarks/" 43 ]; 44 45 pythonImportsCheck = [ "opentelemetry.sdk" ]; 46 47 doCheck = false; 48 49 # Enable tests via passthru to avoid cyclic dependency with opentelemetry-test-utils. 50 passthru.tests.${self.pname} = self.overridePythonAttrs { doCheck = true; }; 51 52 meta = opentelemetry-api.meta // { 53 homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/opentelemetry-sdk"; 54 description = "OpenTelemetry Python SDK"; 55 }; 56 }; 57in self