1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5
6 # build-system
7 hatchling,
8
9 # dependencies
10 equinox,
11 jax,
12 jaxtyping,
13
14 # tests
15 beartype,
16 pytestCheckHook,
17}:
18
19buildPythonPackage rec {
20 pname = "paramax";
21 version = "0.0.3";
22 pyproject = true;
23
24 src = fetchFromGitHub {
25 owner = "danielward27";
26 repo = "paramax";
27 tag = "v${version}";
28 hash = "sha256-aPbYG3UGR8YbRa2GLLrZvYPxRK5LRGMF8HBTpaZmKds=";
29 };
30
31 build-system = [
32 hatchling
33 ];
34
35 dependencies = [
36 equinox
37 jax
38 jaxtyping
39 ];
40
41 pythonImportsCheck = [ "paramax" ];
42
43 nativeCheckInputs = [
44 beartype
45 pytestCheckHook
46 ];
47
48 meta = {
49 description = "Small library of paramaterizations and parameter constraints for PyTrees";
50 homepage = "https://github.com/danielward27/paramax";
51 changelog = "https://github.com/danielward27/paramax/releases/tag/v${version}";
52 license = lib.licenses.mit;
53 maintainers = with lib.maintainers; [ GaetanLepage ];
54 };
55}