Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / development / python-modules / contourpy / default.nix
blobf5af82e55ff31295e4d56caa3aea8cf2bc4f05cd
1 { lib
2 , buildPythonPackage
3 , fetchFromGitHub
4 , pythonOlder
6 # build
7 , meson
8 , meson-python
9 , ninja
10 , pybind11
12 # propagates
13 , numpy
15 # optionals
16 , bokeh
17 , chromedriver
18 , selenium
20 # tests
21 , matplotlib
22 , pillow
23 , pytestCheckHook
26 let countourpy = buildPythonPackage rec {
27   pname = "contourpy";
28   version = "1.1.0";
29   format = "pyproject";
31   disabled = pythonOlder "3.8";
33   src = fetchFromGitHub {
34     owner = "contourpy";
35     repo = "contourpy";
36     rev = "refs/tags/v${version}";
37     hash = "sha256-7M+5HMDqQI4UgVfW/MXsVyz/yM6wjTcJEdw7vPvzuNY=";
38   };
40   nativeBuildInputs = [
41     meson
42     meson-python
43     ninja
44     pybind11
45   ];
47   propagatedBuildInputs = [
48     numpy
49   ];
51   passthru.optional-depdendencies = {
52     bokeh = [ bokeh chromedriver selenium ];
53   };
55   doCheck = false; # infinite recursion with matplotlib, tests in passthru
57   nativeCheckInputs = [
58     matplotlib
59     pillow
60     pytestCheckHook
61   ];
63   passthru.tests = {
64     check = countourpy.overridePythonAttrs (_: { doCheck = true; });
65   };
67   pythonImportsCheck = [
68     "contourpy"
69   ];
71   meta = with lib; {
72     changelog = "https://github.com/contourpy/contourpy/releases/tag/v${version}";
73     description = "Python library for calculating contours in 2D quadrilateral grids";
74     homepage = "https://github.com/contourpy/contourpy";
75     license = licenses.bsd3;
76     maintainers = with maintainers; [ ];
77   };
79 in countourpy