1{ 2 lib, 3 buildPythonPackage, 4 pythonAtLeast, 5 pythonOlder, 6 fetchFromGitHub, 7 setuptools-scm, 8 cssselect, 9 jaraco-test, 10 lxml, 11 mock, 12 pytestCheckHook, 13 importlib-resources, 14}: 15 16buildPythonPackage rec { 17 pname = "cssutils"; 18 version = "2.10.2"; 19 pyproject = true; 20 21 disabled = pythonOlder "3.8"; 22 23 src = fetchFromGitHub { 24 owner = "jaraco"; 25 repo = "cssutils"; 26 rev = "refs/tags/v${version}"; 27 hash = "sha256-1sAn6pFwWsnYS1eHQmyDNGTo6kdhL1vJBwUptADvHyo="; 28 }; 29 30 build-system = [ setuptools-scm ]; 31 32 nativeCheckInputs = [ 33 cssselect 34 jaraco-test 35 lxml 36 mock 37 pytestCheckHook 38 ] ++ lib.optionals (pythonOlder "3.9") [ importlib-resources ]; 39 40 disabledTests = [ 41 # access network 42 "encutils" 43 "website.logging" 44 ]; 45 46 pythonImportsCheck = [ "cssutils" ]; 47 48 meta = with lib; { 49 description = "A CSS Cascading Style Sheets library for Python"; 50 homepage = "https://github.com/jaraco/cssutils"; 51 changelog = "https://github.com/jaraco/cssutils/blob/${src.rev}/NEWS.rst"; 52 license = licenses.lgpl3Plus; 53 maintainers = with maintainers; [ dotlambda ]; 54 }; 55}