2021-03-25 07:23:40 +00:00
|
|
|
{ lib, buildPythonPackage, fetchPypi, pythonOlder, isPy3k, isPyPy, python
|
|
|
|
, pythonAtLeast }:
|
2018-02-03 12:16:47 +00:00
|
|
|
|
|
|
|
let
|
|
|
|
testDir = if isPy3k then "src" else "python2";
|
|
|
|
|
|
|
|
in buildPythonPackage rec {
|
|
|
|
pname = "typing";
|
2020-07-31 09:56:48 +01:00
|
|
|
version = "3.7.4.3";
|
2018-02-03 12:16:47 +00:00
|
|
|
|
|
|
|
src = fetchPypi {
|
|
|
|
inherit pname version;
|
2020-07-31 09:56:48 +01:00
|
|
|
sha256 = "1187fb9c82fd670d10aa07bbb6cfcfe4bdda42d6fab8d5134f04e8c4d0b71cc9";
|
2018-02-03 12:16:47 +00:00
|
|
|
};
|
|
|
|
|
2021-03-25 07:23:40 +00:00
|
|
|
disabled = pythonAtLeast "3.5";
|
|
|
|
|
2018-02-03 12:16:47 +00:00
|
|
|
# Error for Python3.6: ImportError: cannot import name 'ann_module'
|
|
|
|
# See https://github.com/python/typing/pull/280
|
2019-02-12 02:39:14 +00:00
|
|
|
# Also, don't bother on PyPy: AssertionError: TypeError not raised
|
|
|
|
doCheck = pythonOlder "3.6" && !isPyPy;
|
2018-02-03 12:16:47 +00:00
|
|
|
|
|
|
|
checkPhase = ''
|
|
|
|
cd ${testDir}
|
|
|
|
${python.interpreter} -m unittest discover
|
|
|
|
'';
|
|
|
|
|
|
|
|
meta = with lib; {
|
|
|
|
description = "Backport of typing module to Python versions older than 3.5";
|
2020-04-01 02:11:51 +01:00
|
|
|
homepage = "https://docs.python.org/3/library/typing.html";
|
2018-02-03 12:16:47 +00:00
|
|
|
license = licenses.psfl;
|
|
|
|
};
|
|
|
|
}
|