nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 flit-core,
6 pytestCheckHook,
7}:
8
9buildPythonPackage rec {
10 pname = "aiomultiprocess";
11 version = "0.9.1";
12 pyproject = true;
13
14 src = fetchFromGitHub {
15 owner = "omnilib";
16 repo = "aiomultiprocess";
17 tag = "v${version}";
18 hash = "sha256-LWrAr3i2CgOMZFxWi9B3kiou0UtaHdDbpkr6f9pReRA=";
19 };
20
21 build-system = [ flit-core ];
22
23 nativeCheckInputs = [ pytestCheckHook ];
24
25 enabledTestPaths = [ "aiomultiprocess/tests/*.py" ];
26
27 disabledTests = [
28 # tests are flaky and make the whole test suite time out
29 "test_pool_worker_exceptions"
30 "test_pool_worker_max_tasks"
31 "test_pool_worker_stop"
32 # error message changed with python 3.12
33 "test_spawn_method"
34 ];
35
36 pythonImportsCheck = [ "aiomultiprocess" ];
37
38 meta = {
39 description = "Python module to improve performance";
40 longDescription = ''
41 aiomultiprocess presents a simple interface, while running a full
42 AsyncIO event loop on each child process, enabling levels of
43 concurrency never before seen in a Python application. Each child
44 process can execute multiple coroutines at once, limited only by
45 the workload and number of cores available.
46 '';
47 homepage = "https://github.com/omnilib/aiomultiprocess";
48 license = with lib.licenses; [ mit ];
49 maintainers = [ lib.maintainers.fab ];
50 };
51}