1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5 hatchling,
6 hatch-requirements-txt,
7 setuptools,
8 pythonOlder,
9 dnspython,
10
11 # for passthru.tests
12 celery, # check-input only
13 flask-pymongo,
14 kombu, # check-input only
15 mongoengine,
16 motor,
17 pymongo-inmemory,
18}:
19
20buildPythonPackage rec {
21 pname = "pymongo";
22 version = "4.13.2";
23 pyproject = true;
24
25 disabled = pythonOlder "3.7";
26
27 src = fetchPypi {
28 inherit version;
29 pname = "pymongo";
30 hash = "sha256-D2TGRpwjYpYubOlyWK4Tkau6FWapU6SSVi0pJLRIFcI=";
31 };
32
33 build-system = [
34 hatchling
35 hatch-requirements-txt
36 setuptools
37 ];
38
39 dependencies = [ dnspython ];
40
41 # Tests call a running mongodb instance
42 doCheck = false;
43
44 pythonImportsCheck = [ "pymongo" ];
45
46 passthru.tests = {
47 inherit
48 celery
49 flask-pymongo
50 kombu
51 mongoengine
52 motor
53 pymongo-inmemory
54 ;
55 };
56
57 meta = {
58 description = "Python driver for MongoDB";
59 homepage = "https://github.com/mongodb/mongo-python-driver";
60 license = lib.licenses.asl20;
61 maintainers = [ ];
62 };
63}