1{ 2 lib, 3 buildPythonPackage, 4 fetchPypi, 5 pythonOlder, 6 isPy3k, 7 isPyPy, 8 unittestCheckHook, 9 pythonAtLeast, 10}: 11 12let 13 testDir = if isPy3k then "src" else "python2"; 14 15in 16buildPythonPackage rec { 17 pname = "typing"; 18 version = "3.10.0.0"; 19 20 src = fetchPypi { 21 inherit pname version; 22 sha256 = "13b4ad211f54ddbf93e5901a9967b1e07720c1d1b78d596ac6a439641aa1b130"; 23 }; 24 25 disabled = pythonAtLeast "3.5"; 26 27 # Error for Python3.6: ImportError: cannot import name 'ann_module' 28 # See https://github.com/python/typing/pull/280 29 # Also, don't bother on PyPy: AssertionError: TypeError not raised 30 doCheck = pythonOlder "3.6" && !isPyPy; 31 32 nativeCheckInputs = [ unittestCheckHook ]; 33 34 unittestFlagsArray = [ 35 "-s" 36 testDir 37 ]; 38 39 meta = with lib; { 40 description = "Backport of typing module to Python versions older than 3.5"; 41 homepage = "https://docs.python.org/3/library/typing.html"; 42 license = licenses.psfl; 43 }; 44}