1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 gevent, 6 pytestCheckHook, 7 pytest-cov-stub, 8 dramatiq, 9 redis, 10 setuptools, 11}: 12 13buildPythonPackage rec { 14 pname = "dramatiq-abort"; 15 version = "1.2.1"; 16 pyproject = true; 17 18 src = fetchFromGitHub { 19 owner = "Flared"; 20 repo = "dramatiq-abort"; 21 tag = "v${version}"; 22 hash = "sha256-i5vL9yjQQambG8m6RDByr7/j8+PhDdLsai3pDrH1A4Q="; 23 }; 24 25 build-system = [ setuptools ]; 26 27 dependencies = [ 28 dramatiq 29 ]; 30 31 optional-dependencies = { 32 all = lib.flatten (lib.attrValues (lib.filterAttrs (n: v: n != "all") optional-dependencies)); 33 gevent = [ gevent ]; 34 redis = [ redis ]; 35 }; 36 37 nativeCheckInputs = [ 38 redis 39 pytestCheckHook 40 pytest-cov-stub 41 ]; 42 43 pythonImportsCheck = [ "dramatiq_abort" ]; 44 45 meta = { 46 changelog = "https://github.com/Flared/dramatiq-abort/releases/tag/v${version}"; 47 description = "Dramatiq extension to abort message"; 48 homepage = "https://github.com/Flared/dramatiq-abort"; 49 license = lib.licenses.lgpl3Plus; 50 maintainers = with lib.maintainers; [ tebriel ]; 51 }; 52}