Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 hatchling, 6 opentelemetry-api, 7 opentelemetry-test-utils, 8 pytestCheckHook, 9 pythonOlder, 10 setuptools, 11 wrapt, 12}: 13 14buildPythonPackage rec { 15 pname = "opentelemetry-instrumentation"; 16 version = "0.48b0"; 17 pyproject = true; 18 19 disabled = pythonOlder "3.8"; 20 21 # To avoid breakage, every package in opentelemetry-python-contrib must inherit this version, src, and meta 22 src = fetchFromGitHub { 23 owner = "open-telemetry"; 24 repo = "opentelemetry-python-contrib"; 25 rev = "refs/tags/v${version}"; 26 hash = "sha256-RsOOCDbxT0e0WGfI8Ibv6E51ei+sTg07F8d+30+JrVU="; 27 }; 28 29 sourceRoot = "${src.name}/opentelemetry-instrumentation"; 30 31 build-system = [ hatchling ]; 32 33 dependencies = [ 34 opentelemetry-api 35 setuptools 36 wrapt 37 ]; 38 39 nativeCheckInputs = [ 40 opentelemetry-test-utils 41 pytestCheckHook 42 ]; 43 44 pythonImportsCheck = [ "opentelemetry.instrumentation" ]; 45 46 passthru.updateScript = opentelemetry-api.updateScript; 47 48 meta = with lib; { 49 description = "Instrumentation Tools & Auto Instrumentation for OpenTelemetry Python"; 50 homepage = "https://github.com/open-telemetry/opentelemetry-python-contrib/tree/main/opentelemetry-instrumentation"; 51 changelog = "https://github.com/open-telemetry/opentelemetry-python-contrib/releases/tag/${lib.removePrefix "refs/tags/" src.rev}"; 52 license = licenses.asl20; 53 maintainers = teams.deshaw.members ++ [ maintainers.natsukium ]; 54 }; 55}