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.1";
18 pyproject = true;
19
20 disabled = pythonOlder "3.7";
21
22 src = fetchFromGitHub {
23 owner = "NiaOrg";
24 repo = "NiaPy";
25 rev = "refs/tags/v${version}";
26 hash = "sha256-+5tXwubKdhkcv5NjO/DglK+WJfsJ3AzVx/Y/byDBmGo=";
27 };
28
29 build-system = [ poetry-core ];
30
31 dependencies = [
32 matplotlib
33 numpy
34 openpyxl
35 pandas
36 ];
37
38 nativeCheckInputs = [
39 pytest7CheckHook
40 pytest-xdist
41 ];
42
43 pythonImportsCheck = [ "niapy" ];
44
45 meta = with lib; {
46 description = "Micro framework for building nature-inspired algorithms";
47 homepage = "https://niapy.org/";
48 changelog = "https://github.com/NiaOrg/NiaPy/releases/tag/${version}";
49 license = licenses.mit;
50 maintainers = with maintainers; [ fab ];
51 };
52}