Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at r-updates 71 lines 1.9 kB view raw
1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 deprecated, 6 hatchling, 7 importlib-metadata, 8 typing-extensions, 9 opentelemetry-test-utils, 10 pytestCheckHook, 11 writeScript, 12}: 13 14let 15 self = buildPythonPackage rec { 16 pname = "opentelemetry-api"; 17 version = "1.34.0"; 18 pyproject = true; 19 20 # to avoid breakage, every package in opentelemetry-python must inherit this version, src, and meta 21 src = fetchFromGitHub { 22 owner = "open-telemetry"; 23 repo = "opentelemetry-python"; 24 tag = "v${version}"; 25 hash = "sha256-fAXcS2VyDMk+UDW3ru5ZvwzXjydsY1uFcT2GvZuiGWw="; 26 }; 27 28 sourceRoot = "${src.name}/opentelemetry-api"; 29 30 build-system = [ hatchling ]; 31 32 dependencies = [ 33 deprecated 34 importlib-metadata 35 typing-extensions 36 ]; 37 38 pythonRelaxDeps = [ "importlib-metadata" ]; 39 40 nativeCheckInputs = [ 41 opentelemetry-test-utils 42 pytestCheckHook 43 ]; 44 45 pythonImportsCheck = [ "opentelemetry" ]; 46 47 doCheck = false; 48 49 passthru = { 50 updateScript = writeScript "update.sh" '' 51 #!/usr/bin/env nix-shell 52 #!nix-shell -i bash -p nix-update 53 54 set -eu -o pipefail 55 nix-update --version-regex 'v(.*)' python3Packages.opentelemetry-api 56 nix-update python3Packages.opentelemetry-instrumentation 57 ''; 58 # Enable tests via passthru to avoid cyclic dependency with opentelemetry-test-utils. 59 tests.${self.pname} = self.overridePythonAttrs { doCheck = true; }; 60 }; 61 62 meta = { 63 homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/opentelemetry-api"; 64 description = "OpenTelemetry Python API"; 65 changelog = "https://github.com/open-telemetry/opentelemetry-python/releases/tag/${src.tag}"; 66 license = lib.licenses.asl20; 67 maintainers = [ lib.maintainers.natsukium ]; 68 }; 69 }; 70in 71self