diff --git a/pkgs/development/python-modules/fonttools/default.nix b/pkgs/development/python-modules/fonttools/default.nix index 9fe285a8e697..a1433d08bd04 100644 --- a/pkgs/development/python-modules/fonttools/default.nix +++ b/pkgs/development/python-modules/fonttools/default.nix @@ -1,38 +1,70 @@ { lib , buildPythonPackage -, fetchPypi -, isPy27 -, numpy +, fetchFromGitHub +, pythonOlder +, brotlipy +, zopfli +, fs +, lxml +, scipy +, munkres +, unicodedata2 +, sympy +, matplotlib +, reportlab , pytest -, pytestrunner +, pytest-randomly , glibcLocales }: buildPythonPackage rec { pname = "fonttools"; - version = "4.13.0"; - disabled = isPy27; + version = "4.14.0"; + disabled = pythonOlder "3.6"; - src = fetchPypi { - inherit pname version; - sha256 = "63987cd374c39a75146748f8be8637634221e53fef15cdf76f17777676d8545a"; - extension = "zip"; + src = fetchFromGitHub { + owner = pname; + repo = pname; + rev = version; + sha256 = "0aiaxjg2v2391gxnhp4nvmgfb3ygm6x7n080s5mnkfjq2bq319in"; }; - buildInputs = [ - numpy - ]; - + # all dependencies are optional, but + # we run the checks with them checkInputs = [ pytest - pytestrunner + pytest-randomly glibcLocales + # etree extra + lxml + # ufo extra + fs + # woff extra + brotlipy + zopfli + # unicode extra + unicodedata2 + # interpolatable extra + scipy + munkres + # symfont + sympy + # varLib + matplotlib + # pens + reportlab ]; preCheck = '' export LC_ALL="en_US.UTF-8" ''; + # avoid timing issues with timestamps in subset_test.py and ttx_test.py + checkPhase = '' + pytest Tests fontTools \ + -k 'not ttcompile_timestamp_calcs and not recalc_timestamp' + ''; + meta = { homepage = "https://github.com/fonttools/fonttools"; description = "A library to manipulate font files from Python";