nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{ stdenv
2, lib
3, billiard
4, boto3
5, buildPythonPackage
6, case
7, click
8, click-didyoumean
9, click-plugins
10, click-repl
11, dnspython
12, fetchPypi
13, kombu
14, moto
15, pymongo
16, pytest-celery
17, pytest-subtests
18, pytest-timeout
19, pytestCheckHook
20, pythonOlder
21, pytz
22, vine
23, nixosTests
24}:
25
26buildPythonPackage rec {
27 pname = "celery";
28 version = "5.2.6";
29 format = "setuptools";
30
31 disabled = pythonOlder "3.7";
32
33 src = fetchPypi {
34 inherit pname version;
35 hash = "sha256-0TmMrfMPV2Jms0Nw4o6IAwbsVfektjB1SbCunBVmNIE=";
36 };
37
38 propagatedBuildInputs = [
39 billiard
40 click
41 click-didyoumean
42 click-plugins
43 click-repl
44 kombu
45 pytz
46 vine
47 ];
48
49 checkInputs = [
50 boto3
51 case
52 dnspython
53 moto
54 pymongo
55 pytest-celery
56 pytest-subtests
57 pytest-timeout
58 pytestCheckHook
59 ];
60
61 postPatch = ''
62 substituteInPlace requirements/default.txt \
63 --replace "setuptools>=59.1.1,<59.7.0" "setuptools"
64 '';
65
66 disabledTestPaths = [
67 # test_eventlet touches network
68 "t/unit/concurrency/test_eventlet.py"
69 # test_multi tries to create directories under /var
70 "t/unit/bin/test_multi.py"
71 "t/unit/apps/test_multi.py"
72 ];
73
74 disabledTests = [
75 "msgpack"
76 "test_check_privileges_no_fchown"
77 ];
78
79 pythonImportsCheck = [
80 "celery"
81 ];
82
83 passthru.tests = {
84 inherit (nixosTests) sourcehut;
85 };
86
87 meta = with lib; {
88 broken = stdenv.isDarwin;
89 description = "Distributed task queue";
90 homepage = "https://github.com/celery/celery/";
91 license = licenses.bsd3;
92 maintainers = with maintainers; [ fab ];
93 };
94}