1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 6 # build-system 7 poetry-core, 8 9 # dependencies 10 aiohttp, 11 beautifulsoup4, 12 httpx, 13 multidict, 14 typer, 15 yarl, 16 17 # tests 18 pytest-asyncio, 19 pytestCheckHook, 20}: 21 22buildPythonPackage rec { 23 pname = "authcaptureproxy"; 24 version = "1.3.3"; 25 pyproject = true; 26 27 src = fetchFromGitHub { 28 owner = "alandtse"; 29 repo = "auth_capture_proxy"; 30 tag = "v${version}"; 31 hash = "sha256-H5Dl1incS5+lmZaLZXMCOqEIGTcTr4A5J3r3ngpDGtY="; 32 }; 33 34 nativeBuildInputs = [ poetry-core ]; 35 36 propagatedBuildInputs = [ 37 aiohttp 38 beautifulsoup4 39 httpx 40 multidict 41 typer 42 yarl 43 ]; 44 45 nativeCheckInputs = [ 46 pytest-asyncio 47 pytestCheckHook 48 ]; 49 50 disabledTests = [ 51 # test fails with frequency 1/200 52 # https://github.com/alandtse/auth_capture_proxy/issues/25 53 "test_return_timer_countdown_refresh_html" 54 # AttributeError: 'NoneType' object has no attribute 'get' 55 "test_replace_empty_action_urls" 56 ]; 57 58 pythonImportsCheck = [ "authcaptureproxy" ]; 59 60 meta = with lib; { 61 changelog = "https://github.com/alandtse/auth_capture_proxy/releases/tag/v${version}"; 62 description = "Proxy to capture authentication information from a webpage"; 63 mainProgram = "auth_capture_proxy"; 64 homepage = "https://github.com/alandtse/auth_capture_proxy"; 65 license = licenses.asl20; 66 maintainers = with maintainers; [ 67 graham33 68 hexa 69 ]; 70 }; 71}