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