1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 matplotlib,
6 numpy,
7 openpyxl,
8 pandas,
9 poetry-core,
10 pytest7CheckHook,
11 pytest-xdist,
12 pythonOlder,
13}:
14
15buildPythonPackage rec {
16 pname = "niapy";
17 version = "2.5.2";
18 pyproject = true;
19
20 disabled = pythonOlder "3.7";
21
22 src = fetchFromGitHub {
23 owner = "NiaOrg";
24 repo = "NiaPy";
25 tag = "v${version}";
26 hash = "sha256-8hKT0WxnJijm22w4DkzicvtikaTL/mL3VhQX/WVHL58=";
27 };
28
29 build-system = [ poetry-core ];
30
31 dependencies = [
32 matplotlib
33 numpy
34 openpyxl
35 pandas
36 ];
37
38 pythonRelaxDeps = [
39 "numpy"
40 ];
41
42 nativeCheckInputs = [
43 pytest7CheckHook
44 pytest-xdist
45 ];
46
47 pythonImportsCheck = [ "niapy" ];
48
49 meta = with lib; {
50 description = "Micro framework for building nature-inspired algorithms";
51 homepage = "https://niapy.org/";
52 changelog = "https://github.com/NiaOrg/NiaPy/releases/tag/${version}";
53 license = licenses.mit;
54 maintainers = with maintainers; [ fab ];
55 };
56}