1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, flit-core
5, pytestCheckHook
6, pythonOlder
7}:
8
9buildPythonPackage rec {
10 pname = "aiomultiprocess";
11 version = "0.9.0";
12 format = "pyproject";
13 disabled = pythonOlder "3.6";
14
15 src = fetchFromGitHub {
16 owner = "omnilib";
17 repo = pname;
18 rev = "v${version}";
19 sha256 = "sha256-yOP69FXDb2Grmtszx7oa6uiJGUar8su3KwqQPI+xjrw=";
20 };
21
22 nativeBuildInputs = [ flit-core ];
23
24 checkInputs = [ pytestCheckHook ];
25
26 pytestFlagsArray = [ "aiomultiprocess/tests/*.py" ];
27 pythonImportsCheck = [ "aiomultiprocess" ];
28
29 meta = with lib; {
30 description = "Python module to improve performance";
31 longDescription = ''
32 aiomultiprocess presents a simple interface, while running a full
33 AsyncIO event loop on each child process, enabling levels of
34 concurrency never before seen in a Python application. Each child
35 process can execute multiple coroutines at once, limited only by
36 the workload and number of cores available.
37 '';
38 homepage = "https://github.com/omnilib/aiomultiprocess";
39 license = with licenses; [ mit ];
40 maintainers = [ maintainers.fab ];
41 };
42}