Mon Jul 26 17:30:35 2021 UTC ()
py-mongo: updated to 3.12.0

Changes in Version 3.12.0
-------------------------

.. warning:: PyMongo 3.12.0 deprecates support for Python 2.7, 3.4 and 3.5.
   These Python versions will not be supported by PyMongo 4.

.. warning:: PyMongo now allows insertion of documents with keys that include
   dots ('.') or start with dollar signs ('$').

- PyMongoCrypt 1.1.0 or later is now required for client side field level
  encryption support.

Notable improvements
....................

- Added support for MongoDB 5.0.
- Support for MongoDB Versioned API, see :class:`~pymongo.server_api.ServerApi`.
- Support for snapshot reads on secondaries (see :ref:`snapshot-reads-ref`).
- Support for Azure and GCP KMS providers for client side field level
  encryption. See the docstring for :class:`~pymongo.mongo_client.MongoClient`,
  :class:`~pymongo.encryption_options.AutoEncryptionOpts`,
  and :mod:`~pymongo.encryption`.
- Support AWS authentication with temporary credentials when connecting to KMS
  in client side field level encryption.
- Support for connecting to load balanced MongoDB clusters via the new
  ``loadBalanced`` URI option.
- Support for creating timeseries collections via the ``timeseries`` and
  ``expireAfterSeconds`` arguments to
  :meth:`~pymongo.database.Database.create_collection`.
- Added :attr:`pymongo.mongo_client.MongoClient.topology_description`.
- Added hash support to :class:`~pymongo.mongo_client.MongoClient`,
  :class:`~pymongo.database.Database` and
  :class:`~pymongo.collection.Collection` (`PYTHON-2466`_).
- Improved the error message returned by
  :meth:`~pymongo.collection.Collection.insert_many` when supplied with an
  argument of incorrect type (`PYTHON-1690`_).
- Added session and read concern support to
  :meth:`~pymongo.collection.Collection.find_raw_batches`
  and :meth:`~pymongo.collection.Collection.aggregate_raw_batches`.

Bug fixes
.........

- Fixed a bug that could cause the driver to deadlock during automatic
  client side field level encryption (`PYTHON-2472`_).
- Fixed a potential deadlock when garbage collecting an unclosed exhaust
  :class:`~pymongo.cursor.Cursor`.
- Fixed an bug where using gevent.Timeout to timeout an operation could
  lead to a deadlock.
- Fixed the following bug with Atlas Data Lake. When closing cursors,
  pymongo now sends killCursors with the namespace returned the cursor's
  initial command response.
- Fixed a bug in :class:`~pymongo.cursor.RawBatchCursor` that caused it to
  return an empty bytestring when the cursor contained no results. It now
  raises :exc:`StopIteration` instead.

Deprecations
............

- Deprecated support for Python 2.7, 3.4 and 3.5.
- Deprecated support for database profiler helpers
  :meth:`~pymongo.database.Database.profiling_level`,
  :meth:`~pymongo.database.Database.set_profiling_level`,
  and :meth:`~pymongo.database.Database.profiling_info`. Instead, users
  should run the `profile command`_ with the
  :meth:`~pymongo.database.Database.command` helper directly.
- Deprecated :exc:`~pymongo.errors.NotMasterError`. Users should
  use :exc:`~pymongo.errors.NotPrimaryError` instead.
- Deprecated :class:`~pymongo.ismaster.IsMaster` and :mod:`~pymongo.ismaster`
  which will be removed in PyMongo 4.0 and are replaced by
  :class:`~pymongo.hello.Hello` and :mod:`~pymongo.hello` which provide the
  same API.
- Deprecated the :mod:`pymongo.messeage` module.
- Deprecated the ``ssl_keyfile`` and ``ssl_certfile`` URI options in favor
  of ``tlsCertificateKeyFile`` (see :doc:`examples/tls`).


(adam)
diff -r1.10 -r1.11 pkgsrc/databases/py-mongo/Makefile
diff -r1.5 -r1.6 pkgsrc/databases/py-mongo/PLIST
diff -r1.9 -r1.10 pkgsrc/databases/py-mongo/distinfo

cvs diff -r1.10 -r1.11 pkgsrc/databases/py-mongo/Makefile (expand / switch to unified diff)

--- pkgsrc/databases/py-mongo/Makefile 2021/05/06 10:35:07 1.10
+++ pkgsrc/databases/py-mongo/Makefile 2021/07/26 17:30:35 1.11
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1# $NetBSD: Makefile,v 1.10 2021/05/06 10:35:07 adam Exp $ 1# $NetBSD: Makefile,v 1.11 2021/07/26 17:30:35 adam Exp $
2 2
3DISTNAME= pymongo-3.11.4 3DISTNAME= pymongo-3.12.0
4PKGNAME= ${PYPKGPREFIX}-${DISTNAME:S/^py//} 4PKGNAME= ${PYPKGPREFIX}-${DISTNAME:S/^py//}
5CATEGORIES= databases python 5CATEGORIES= databases python
6MASTER_SITES= ${MASTER_SITE_PYPI:=p/pymongo/} 6MASTER_SITES= ${MASTER_SITE_PYPI:=p/pymongo/}
7 7
8MAINTAINER= mishka@NetBSD.org 8MAINTAINER= mishka@NetBSD.org
9HOMEPAGE= https://github.com/mongodb/mongo-python-driver 9HOMEPAGE= https://github.com/mongodb/mongo-python-driver
10COMMENT= Python driver for MongoDB 10COMMENT= Python driver for MongoDB
11LICENSE= apache-2.0 11LICENSE= apache-2.0
12 12
13.include "../../lang/python/egg.mk" 13.include "../../lang/python/egg.mk"
14.include "../../mk/bsd.pkg.mk" 14.include "../../mk/bsd.pkg.mk"

cvs diff -r1.5 -r1.6 pkgsrc/databases/py-mongo/PLIST (expand / switch to unified diff)

--- pkgsrc/databases/py-mongo/PLIST 2020/12/09 09:46:11 1.5
+++ pkgsrc/databases/py-mongo/PLIST 2021/07/26 17:30:35 1.6
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1@comment $NetBSD: PLIST,v 1.5 2020/12/09 09:46:11 adam Exp $ 1@comment $NetBSD: PLIST,v 1.6 2021/07/26 17:30:35 adam Exp $
2${PYSITELIB}/${EGG_INFODIR}/PKG-INFO 2${PYSITELIB}/${EGG_INFODIR}/PKG-INFO
3${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt 3${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt
4${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt 4${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt
5${PYSITELIB}/${EGG_INFODIR}/requires.txt 5${PYSITELIB}/${EGG_INFODIR}/requires.txt
6${PYSITELIB}/${EGG_INFODIR}/top_level.txt 6${PYSITELIB}/${EGG_INFODIR}/top_level.txt
7${PYSITELIB}/bson/__init__.py 7${PYSITELIB}/bson/__init__.py
8${PYSITELIB}/bson/__init__.pyc 8${PYSITELIB}/bson/__init__.pyc
9${PYSITELIB}/bson/__init__.pyo 9${PYSITELIB}/bson/__init__.pyo
10${PYSITELIB}/bson/_cbson.so 10${PYSITELIB}/bson/_cbson.so
11${PYSITELIB}/bson/binary.py 11${PYSITELIB}/bson/binary.py
12${PYSITELIB}/bson/binary.pyc 12${PYSITELIB}/bson/binary.pyc
13${PYSITELIB}/bson/binary.pyo 13${PYSITELIB}/bson/binary.pyo
14${PYSITELIB}/bson/code.py 14${PYSITELIB}/bson/code.py
@@ -62,26 +62,29 @@ ${PYSITELIB}/bson/tz_util.pyo @@ -62,26 +62,29 @@ ${PYSITELIB}/bson/tz_util.pyo
62${PYSITELIB}/gridfs/__init__.py 62${PYSITELIB}/gridfs/__init__.py
63${PYSITELIB}/gridfs/__init__.pyc 63${PYSITELIB}/gridfs/__init__.pyc
64${PYSITELIB}/gridfs/__init__.pyo 64${PYSITELIB}/gridfs/__init__.pyo
65${PYSITELIB}/gridfs/errors.py 65${PYSITELIB}/gridfs/errors.py
66${PYSITELIB}/gridfs/errors.pyc 66${PYSITELIB}/gridfs/errors.pyc
67${PYSITELIB}/gridfs/errors.pyo 67${PYSITELIB}/gridfs/errors.pyo
68${PYSITELIB}/gridfs/grid_file.py 68${PYSITELIB}/gridfs/grid_file.py
69${PYSITELIB}/gridfs/grid_file.pyc 69${PYSITELIB}/gridfs/grid_file.pyc
70${PYSITELIB}/gridfs/grid_file.pyo 70${PYSITELIB}/gridfs/grid_file.pyo
71${PYSITELIB}/pymongo/__init__.py 71${PYSITELIB}/pymongo/__init__.py
72${PYSITELIB}/pymongo/__init__.pyc 72${PYSITELIB}/pymongo/__init__.pyc
73${PYSITELIB}/pymongo/__init__.pyo 73${PYSITELIB}/pymongo/__init__.pyo
74${PYSITELIB}/pymongo/_cmessage.so 74${PYSITELIB}/pymongo/_cmessage.so
 75${PYSITELIB}/pymongo/_ipaddress.py
 76${PYSITELIB}/pymongo/_ipaddress.pyc
 77${PYSITELIB}/pymongo/_ipaddress.pyo
75${PYSITELIB}/pymongo/aggregation.py 78${PYSITELIB}/pymongo/aggregation.py
76${PYSITELIB}/pymongo/aggregation.pyc 79${PYSITELIB}/pymongo/aggregation.pyc
77${PYSITELIB}/pymongo/aggregation.pyo 80${PYSITELIB}/pymongo/aggregation.pyo
78${PYSITELIB}/pymongo/auth.py 81${PYSITELIB}/pymongo/auth.py
79${PYSITELIB}/pymongo/auth.pyc 82${PYSITELIB}/pymongo/auth.pyc
80${PYSITELIB}/pymongo/auth.pyo 83${PYSITELIB}/pymongo/auth.pyo
81${PYSITELIB}/pymongo/auth_aws.py 84${PYSITELIB}/pymongo/auth_aws.py
82${PYSITELIB}/pymongo/auth_aws.pyc 85${PYSITELIB}/pymongo/auth_aws.pyc
83${PYSITELIB}/pymongo/auth_aws.pyo 86${PYSITELIB}/pymongo/auth_aws.pyo
84${PYSITELIB}/pymongo/bulk.py 87${PYSITELIB}/pymongo/bulk.py
85${PYSITELIB}/pymongo/bulk.pyc 88${PYSITELIB}/pymongo/bulk.pyc
86${PYSITELIB}/pymongo/bulk.pyo 89${PYSITELIB}/pymongo/bulk.pyo
87${PYSITELIB}/pymongo/change_stream.py 90${PYSITELIB}/pymongo/change_stream.py
@@ -125,26 +128,32 @@ ${PYSITELIB}/pymongo/driver_info.pyc @@ -125,26 +128,32 @@ ${PYSITELIB}/pymongo/driver_info.pyc
125${PYSITELIB}/pymongo/driver_info.pyo 128${PYSITELIB}/pymongo/driver_info.pyo
126${PYSITELIB}/pymongo/encryption.py 129${PYSITELIB}/pymongo/encryption.py
127${PYSITELIB}/pymongo/encryption.pyc 130${PYSITELIB}/pymongo/encryption.pyc
128${PYSITELIB}/pymongo/encryption.pyo 131${PYSITELIB}/pymongo/encryption.pyo
129${PYSITELIB}/pymongo/encryption_options.py 132${PYSITELIB}/pymongo/encryption_options.py
130${PYSITELIB}/pymongo/encryption_options.pyc 133${PYSITELIB}/pymongo/encryption_options.pyc
131${PYSITELIB}/pymongo/encryption_options.pyo 134${PYSITELIB}/pymongo/encryption_options.pyo
132${PYSITELIB}/pymongo/errors.py 135${PYSITELIB}/pymongo/errors.py
133${PYSITELIB}/pymongo/errors.pyc 136${PYSITELIB}/pymongo/errors.pyc
134${PYSITELIB}/pymongo/errors.pyo 137${PYSITELIB}/pymongo/errors.pyo
135${PYSITELIB}/pymongo/event_loggers.py 138${PYSITELIB}/pymongo/event_loggers.py
136${PYSITELIB}/pymongo/event_loggers.pyc 139${PYSITELIB}/pymongo/event_loggers.pyc
137${PYSITELIB}/pymongo/event_loggers.pyo 140${PYSITELIB}/pymongo/event_loggers.pyo
 141${PYSITELIB}/pymongo/hello.py
 142${PYSITELIB}/pymongo/hello.pyc
 143${PYSITELIB}/pymongo/hello.pyo
 144${PYSITELIB}/pymongo/hello_compat.py
 145${PYSITELIB}/pymongo/hello_compat.pyc
 146${PYSITELIB}/pymongo/hello_compat.pyo
138${PYSITELIB}/pymongo/helpers.py 147${PYSITELIB}/pymongo/helpers.py
139${PYSITELIB}/pymongo/helpers.pyc 148${PYSITELIB}/pymongo/helpers.pyc
140${PYSITELIB}/pymongo/helpers.pyo 149${PYSITELIB}/pymongo/helpers.pyo
141${PYSITELIB}/pymongo/ismaster.py 150${PYSITELIB}/pymongo/ismaster.py
142${PYSITELIB}/pymongo/ismaster.pyc 151${PYSITELIB}/pymongo/ismaster.pyc
143${PYSITELIB}/pymongo/ismaster.pyo 152${PYSITELIB}/pymongo/ismaster.pyo
144${PYSITELIB}/pymongo/max_staleness_selectors.py 153${PYSITELIB}/pymongo/max_staleness_selectors.py
145${PYSITELIB}/pymongo/max_staleness_selectors.pyc 154${PYSITELIB}/pymongo/max_staleness_selectors.pyc
146${PYSITELIB}/pymongo/max_staleness_selectors.pyo 155${PYSITELIB}/pymongo/max_staleness_selectors.pyo
147${PYSITELIB}/pymongo/message.py 156${PYSITELIB}/pymongo/message.py
148${PYSITELIB}/pymongo/message.pyc 157${PYSITELIB}/pymongo/message.pyc
149${PYSITELIB}/pymongo/message.pyo 158${PYSITELIB}/pymongo/message.pyo
150${PYSITELIB}/pymongo/mongo_client.py 159${PYSITELIB}/pymongo/mongo_client.py
@@ -191,26 +200,29 @@ ${PYSITELIB}/pymongo/read_preferences.py @@ -191,26 +200,29 @@ ${PYSITELIB}/pymongo/read_preferences.py
191${PYSITELIB}/pymongo/read_preferences.pyo 200${PYSITELIB}/pymongo/read_preferences.pyo
192${PYSITELIB}/pymongo/response.py 201${PYSITELIB}/pymongo/response.py
193${PYSITELIB}/pymongo/response.pyc 202${PYSITELIB}/pymongo/response.pyc
194${PYSITELIB}/pymongo/response.pyo 203${PYSITELIB}/pymongo/response.pyo
195${PYSITELIB}/pymongo/results.py 204${PYSITELIB}/pymongo/results.py
196${PYSITELIB}/pymongo/results.pyc 205${PYSITELIB}/pymongo/results.pyc
197${PYSITELIB}/pymongo/results.pyo 206${PYSITELIB}/pymongo/results.pyo
198${PYSITELIB}/pymongo/saslprep.py 207${PYSITELIB}/pymongo/saslprep.py
199${PYSITELIB}/pymongo/saslprep.pyc 208${PYSITELIB}/pymongo/saslprep.pyc
200${PYSITELIB}/pymongo/saslprep.pyo 209${PYSITELIB}/pymongo/saslprep.pyo
201${PYSITELIB}/pymongo/server.py 210${PYSITELIB}/pymongo/server.py
202${PYSITELIB}/pymongo/server.pyc 211${PYSITELIB}/pymongo/server.pyc
203${PYSITELIB}/pymongo/server.pyo 212${PYSITELIB}/pymongo/server.pyo
 213${PYSITELIB}/pymongo/server_api.py
 214${PYSITELIB}/pymongo/server_api.pyc
 215${PYSITELIB}/pymongo/server_api.pyo
204${PYSITELIB}/pymongo/server_description.py 216${PYSITELIB}/pymongo/server_description.py
205${PYSITELIB}/pymongo/server_description.pyc 217${PYSITELIB}/pymongo/server_description.pyc
206${PYSITELIB}/pymongo/server_description.pyo 218${PYSITELIB}/pymongo/server_description.pyo
207${PYSITELIB}/pymongo/server_selectors.py 219${PYSITELIB}/pymongo/server_selectors.py
208${PYSITELIB}/pymongo/server_selectors.pyc 220${PYSITELIB}/pymongo/server_selectors.pyc
209${PYSITELIB}/pymongo/server_selectors.pyo 221${PYSITELIB}/pymongo/server_selectors.pyo
210${PYSITELIB}/pymongo/server_type.py 222${PYSITELIB}/pymongo/server_type.py
211${PYSITELIB}/pymongo/server_type.pyc 223${PYSITELIB}/pymongo/server_type.pyc
212${PYSITELIB}/pymongo/server_type.pyo 224${PYSITELIB}/pymongo/server_type.pyo
213${PYSITELIB}/pymongo/settings.py 225${PYSITELIB}/pymongo/settings.py
214${PYSITELIB}/pymongo/settings.pyc 226${PYSITELIB}/pymongo/settings.pyc
215${PYSITELIB}/pymongo/settings.pyo 227${PYSITELIB}/pymongo/settings.pyo
216${PYSITELIB}/pymongo/socket_checker.py 228${PYSITELIB}/pymongo/socket_checker.py

cvs diff -r1.9 -r1.10 pkgsrc/databases/py-mongo/distinfo (expand / switch to unified diff)

--- pkgsrc/databases/py-mongo/distinfo 2021/05/06 10:35:07 1.9
+++ pkgsrc/databases/py-mongo/distinfo 2021/07/26 17:30:35 1.10
@@ -1,6 +1,6 @@ @@ -1,6 +1,6 @@
1$NetBSD: distinfo,v 1.9 2021/05/06 10:35:07 adam Exp $ 1$NetBSD: distinfo,v 1.10 2021/07/26 17:30:35 adam Exp $
2 2
3SHA1 (pymongo-3.11.4.tar.gz) = 8c33c3ae4fb7c2af12edd29ae14a454677eafc7e 3SHA1 (pymongo-3.12.0.tar.gz) = dc3a166d2c5ae1bdd2414f76be527d4eda129c72
4RMD160 (pymongo-3.11.4.tar.gz) = 3f3081e578734021f23a5da735cb55abaa4abde5 4RMD160 (pymongo-3.12.0.tar.gz) = c3dd260ab97220f87102aad2fae40fadeacbc0b5
5SHA512 (pymongo-3.11.4.tar.gz) = 85a98e166f5e6aa387e4c7c9b6f284541321a570a7828c1cf7e140230e1aabb29561211bab04b8be9fbcefd1488e8b63b9fe034960e2bdccfd8ed18b083fe7e1 5SHA512 (pymongo-3.12.0.tar.gz) = bfd3e6ec401052320c9e5099d5422dfbecd2fe212f1471bce92262f975e65864a69c24afebf39a9f74d04f601ff0684241e74bee3960900488396ea994a6db35
6Size (pymongo-3.11.4.tar.gz) = 783122 bytes 6Size (pymongo-3.12.0.tar.gz) = 818554 bytes