1{ lib
2, apptools
3, buildPythonPackage
4, fetchPypi
5, fetchpatch
6, ipython
7, pytestCheckHook
8, pythonAtLeast
9, pythonOlder
10, setuptools
11, traits
12}:
13
14buildPythonPackage rec {
15 pname = "envisage";
16 version = "7.0.3";
17 format = "pyproject";
18
19 disabled = pythonOlder "3.6";
20
21 src = fetchPypi {
22 inherit pname version;
23 hash = "sha256-97GviL86j/8qmsbja7SN6pkp4/YSIEz+lK7WKwMWyeM=";
24 };
25
26 # for the optional dependency ipykernel, only versions < 6 are
27 # supported, so it's not included in the tests, and not propagated
28 propagatedBuildInputs = [
29 traits
30 apptools
31 setuptools
32 ];
33
34 preCheck = ''
35 export HOME=$PWD/HOME
36 '';
37
38 nativeCheckInputs = [
39 ipython
40 pytestCheckHook
41 ];
42
43 disabledTestPaths = lib.optionals (pythonAtLeast "3.10") [
44 # https://github.com/enthought/envisage/issues/455
45 "envisage/tests/test_egg_basket_plugin_manager.py"
46 "envisage/tests/test_egg_plugin_manager.py"
47 ];
48
49 pythonImportsCheck = [
50 "envisage"
51 ];
52
53 meta = with lib; {
54 description = "Framework for building applications whose functionalities can be extended by adding plug-ins";
55 homepage = "https://github.com/enthought/envisage";
56 license = licenses.bsdOriginal;
57 maintainers = with lib.maintainers; [ knedlsepp ];
58 };
59}