Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ lib
2, asttokens
3, buildPythonPackage
4, fetchFromGitHub
5, setuptools-scm
6, pytestCheckHook
7, littleutils
8, pythonAtLeast
9, rich
10}:
11
12buildPythonPackage rec {
13 pname = "executing";
14 version = "1.2.0";
15 format = "pyproject";
16
17 src = fetchFromGitHub {
18 owner = "alexmojaki";
19 repo = pname;
20 rev = "v${version}";
21 sha256 = "sha256-3M3uSJ5xQ5Ciy8Lz21u9zjju/7SBSFHobCqSiJ6AP8M=";
22 };
23
24 nativeBuildInputs = [
25 setuptools-scm
26 ];
27
28 preBuild = ''
29 export SETUPTOOLS_SCM_PRETEND_VERSION="${version}"
30 '';
31
32 checkInputs = [
33 pytestCheckHook
34 asttokens
35 littleutils
36 ] ++ lib.optionals (pythonAtLeast "3.11") [
37 rich
38 ];
39
40 pythonImportsCheck = [
41 "executing"
42 ];
43
44 meta = with lib; {
45 description = "Get information about what a frame is currently doing, particularly the AST node being executed";
46 homepage = "https://github.com/alexmojaki/executing";
47 license = licenses.mit;
48 maintainers = with maintainers; [ renatoGarcia ];
49 };
50}