1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 hatchling,
6 cgen,
7 numpy,
8 platformdirs,
9 pytools,
10 typing-extensions,
11 boost,
12 pytestCheckHook,
13 writableTmpDirAsHomeHook,
14}:
15
16buildPythonPackage rec {
17 pname = "codepy";
18 version = "2025.1";
19 pyproject = true;
20
21 src = fetchFromGitHub {
22 owner = "inducer";
23 repo = "codepy";
24 tag = "v${version}";
25 hash = "sha256-PHIC3q9jQlRRoUoemVtyrl5hcZXMX28gRkI5Xpk9yBY=";
26 };
27
28 build-system = [ hatchling ];
29
30 dependencies = [
31 cgen
32 numpy
33 platformdirs
34 pytools
35 typing-extensions
36 ];
37
38 pythonImportsCheck = [ "codepy" ];
39
40 doCheck = false; # tests require boost setup for ad hoc module compilation
41
42 meta = with lib; {
43 homepage = "https://github.com/inducer/codepy";
44 description = "Generate and execute native code at run time, from Python";
45 license = licenses.mit;
46 maintainers = with maintainers; [ atila ];
47 };
48}