1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5 pythonRelaxDepsHook,
6 bleach,
7 bokeh,
8 param,
9 pyviz-comms,
10 markdown,
11 pyct,
12 requests,
13 setuptools,
14 tqdm,
15 typing-extensions,
16}:
17
18buildPythonPackage rec {
19 pname = "panel";
20 version = "1.4.1";
21
22 format = "wheel";
23
24 # We fetch a wheel because while we can fetch the node
25 # artifacts using npm, the bundling invoked in setup.py
26 # tries to fetch even more artifacts
27 src = fetchPypi {
28 inherit pname version format;
29 hash = "sha256-x7ywbO2uY1r06bDXV/+X/7cs9f6jFawyDHeo8pLWZVE=";
30 dist = "py3";
31 python = "py3";
32 };
33
34 nativeBuildInputs = [ pythonRelaxDepsHook ];
35
36 pythonRelaxDeps = [ "bokeh" ];
37
38 propagatedBuildInputs = [
39 bleach
40 bokeh
41 markdown
42 param
43 pyct
44 pyviz-comms
45 requests
46 setuptools
47 tqdm
48 typing-extensions
49 ];
50
51 pythonImportsCheck = [ "panel" ];
52
53 # infinite recursion in test dependencies (hvplot)
54 doCheck = false;
55
56 meta = with lib; {
57 description = "A high level dashboarding library for python visualization libraries";
58 mainProgram = "panel";
59 homepage = "https://github.com/holoviz/panel";
60 changelog = "https://github.com/holoviz/panel/releases/tag/v${version}";
61 license = licenses.bsd3;
62 maintainers = with maintainers; [ ];
63 };
64}