1{ 2 lib, 3 buildPythonPackage, 4 cython, 5 fetchPypi, 6 matplotlib, 7 numpy, 8 pillow, 9 pytestCheckHook, 10 pythonOlder, 11 setuptools, 12 setuptools-scm, 13}: 14 15buildPythonPackage rec { 16 pname = "wordcloud"; 17 version = "1.9.3"; 18 19 pyproject = true; 20 21 build-system = [ 22 setuptools 23 setuptools-scm 24 ]; 25 26 disabled = pythonOlder "3.7"; 27 28 src = fetchPypi { 29 inherit pname version; 30 hash = "sha256-qapzjWPtZ0pA8Mwxrbg/TKX8GV8Dpq/24BDR9YB9HFg="; 31 }; 32 33 postPatch = '' 34 substituteInPlace setup.cfg \ 35 --replace " --cov --cov-report xml --tb=short" "" 36 ''; 37 38 nativeBuildInputs = [ cython ]; 39 40 dependencies = [ 41 matplotlib 42 numpy 43 pillow 44 ]; 45 46 nativeCheckInputs = [ pytestCheckHook ]; 47 48 preCheck = '' 49 cd test 50 ''; 51 52 pythonImportsCheck = [ "wordcloud" ]; 53 54 disabledTests = [ 55 # Don't tests CLI 56 "test_cli_as_executable" 57 # OSError: invalid ppem value 58 "test_recolor_too_small" 59 "test_coloring_black_works" 60 ]; 61 62 meta = with lib; { 63 description = "Word cloud generator in Python"; 64 mainProgram = "wordcloud_cli"; 65 homepage = "https://github.com/amueller/word_cloud"; 66 changelog = "https://github.com/amueller/word_cloud/releases/tag/${version}"; 67 license = licenses.mit; 68 maintainers = with maintainers; [ jm2dev ]; 69 }; 70}