1{ 2 lib, 3 buildPythonPackage, 4 fetchPypi, 5 pythonOlder, 6 7 # install_requires 8 dnspython, 9 eventlet, 10 kombu, 11 mock, 12 packaging, 13 path, 14 pyyaml, 15 requests, 16 setuptools, 17 six, 18 werkzeug, 19 wrapt, 20}: 21 22buildPythonPackage rec { 23 pname = "nameko"; 24 version = "2.14.1"; 25 pyproject = true; 26 27 disabled = pythonOlder "3.9"; 28 29 src = fetchPypi { 30 inherit pname version; 31 hash = "sha256-J1NXi7Tca5KAGuozTSkwuX37dEhucF7daRmDBqlGjIg="; 32 }; 33 34 postPatch = '' 35 substituteInPlace setup.py --replace-fail "path.py" "path" 36 ''; 37 38 build-system = [ setuptools ]; 39 40 dependencies = [ 41 dnspython 42 eventlet 43 kombu 44 mock 45 packaging 46 path 47 pyyaml 48 requests 49 setuptools 50 six 51 werkzeug 52 wrapt 53 ]; 54 55 # tests depend on RabbitMQ being installed - https://nameko.readthedocs.io/en/stable/contributing.html#running-the-tests 56 # and most of the tests are network based 57 doCheck = false; 58 59 pythonImportsCheck = [ "nameko" ]; 60 61 meta = with lib; { 62 description = "Microservices framework that lets service developers concentrate on application logic and encourages testability"; 63 mainProgram = "nameko"; 64 homepage = "https://www.nameko.io/"; 65 changelog = "https://github.com/nameko/nameko/releases/tag/v${version}"; 66 license = licenses.asl20; 67 maintainers = with maintainers; [ siddharthdhakane ]; 68 }; 69}