Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at devShellTools-shell 76 lines 1.7 kB view raw
1{ 2 lib, 3 backports-datetime-fromisoformat, 4 buildPythonPackage, 5 charset-normalizer, 6 dateparser, 7 faust-cchardet, 8 fetchFromGitHub, 9 lxml, 10 pytestCheckHook, 11 python-dateutil, 12 pythonOlder, 13 setuptools, 14 urllib3, 15}: 16 17buildPythonPackage rec { 18 pname = "htmldate"; 19 version = "1.9.3"; 20 pyproject = true; 21 22 disabled = pythonOlder "3.8"; 23 24 src = fetchFromGitHub { 25 owner = "adbar"; 26 repo = "htmldate"; 27 tag = "v${version}"; 28 hash = "sha256-9uFf/sx0AZdlvizU65H87hbtwDKf8Ykm67bKM9Oq//s="; 29 }; 30 31 build-system = [ setuptools ]; 32 33 dependencies = [ 34 charset-normalizer 35 dateparser 36 lxml 37 python-dateutil 38 urllib3 39 ]; 40 41 optional-dependencies = { 42 speed = [ 43 faust-cchardet 44 urllib3 45 ] 46 ++ lib.optionals (pythonOlder "3.11") [ backports-datetime-fromisoformat ] 47 ++ urllib3.optional-dependencies.brotli; 48 all = [ 49 faust-cchardet 50 urllib3 51 ] 52 ++ lib.optionals (pythonOlder "3.11") [ backports-datetime-fromisoformat ] 53 ++ urllib3.optional-dependencies.brotli; 54 }; 55 56 nativeCheckInputs = [ pytestCheckHook ]; 57 58 disabledTests = [ 59 # Tests that require an internet connection 60 "test_input" 61 "test_cli" 62 "test_download" 63 "test_readme_examples" 64 ]; 65 66 pythonImportsCheck = [ "htmldate" ]; 67 68 meta = with lib; { 69 description = "Module for the extraction of original and updated publication dates from URLs and web pages"; 70 homepage = "https://htmldate.readthedocs.io"; 71 changelog = "https://github.com/adbar/htmldate/blob/${src.tag}/CHANGELOG.md"; 72 license = licenses.asl20; 73 maintainers = with maintainers; [ jokatzke ]; 74 mainProgram = "htmldate"; 75 }; 76}