1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 numpy,
6 pytestCheckHook,
7 pythonAtLeast,
8 pythonOlder,
9}:
10
11buildPythonPackage rec {
12 pname = "typish";
13 version = "1.9.3";
14 format = "setuptools";
15
16 disabled = pythonOlder "3.7";
17
18 src = fetchFromGitHub {
19 owner = "ramonhagenaars";
20 repo = "typish";
21 tag = "v${version}";
22 hash = "sha256-LnOg1dVs6lXgPTwRYg7uJ3LCdExYrCxS47UEJxKHhVU=";
23 };
24
25 nativeCheckInputs = [
26 numpy
27 pytestCheckHook
28 ];
29
30 disabledTestPaths = [
31 # Requires a very old version of nptyping
32 # which has a circular dependency on typish
33 "tests/functions/test_instance_of.py"
34 ];
35
36 disabledTests = lib.optionals (pythonAtLeast "3.11") [
37 # https://github.com/ramonhagenaars/typish/issues/32
38 "test_get_origin"
39 ];
40
41 pythonImportsCheck = [ "typish" ];
42
43 meta = with lib; {
44 description = "Python module for checking types of objects";
45 homepage = "https://github.com/ramonhagenaars/typish";
46 changelog = "https://github.com/ramonhagenaars/typish/releases/tag/v${version}";
47 license = licenses.mit;
48 maintainers = with maintainers; [ fmoda3 ];
49 };
50}