1{ 2 lib, 3 buildPythonPackage, 4 fetchPypi, 5 mock, 6 psutil, 7 pyopenssl, 8 pysendfile, 9 pythonOlder, 10 setuptools, 11}: 12 13buildPythonPackage rec { 14 pname = "pyftpdlib"; 15 version = "1.5.9"; 16 pyproject = true; 17 18 disabled = pythonOlder "3.7"; 19 20 src = fetchPypi { 21 inherit pname version; 22 hash = "sha256-Mj1MQvFAau203xj69oD2TzLAgP9m9sJgkLpZL1v8Sg8="; 23 }; 24 25 build-system = [ setuptools ]; 26 27 dependencies = [ pysendfile ]; 28 29 passthru.optional-dependencies = { 30 ssl = [ pyopenssl ]; 31 }; 32 33 nativeCheckInputs = [ 34 mock 35 psutil 36 ]; 37 38 # Impure filesystem-related tests cause timeouts 39 # on Hydra: https://hydra.nixos.org/build/84374861 40 doCheck = false; 41 42 pythonImportsCheck = [ "pyftpdlib" ]; 43 44 meta = with lib; { 45 description = "Asynchronous FTP server library"; 46 homepage = "https://github.com/giampaolo/pyftpdlib/"; 47 changelog = "https://github.com/giampaolo/pyftpdlib/blob/release-${version}/HISTORY.rst"; 48 license = licenses.mit; 49 maintainers = with maintainers; [ ]; 50 mainProgram = "ftpbench"; 51 }; 52}