pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/databases/py-mongo



Module Name:    pkgsrc
Committed By:   adam
Date:           Sat Jul 29 11:42:36 UTC 2023

Modified Files:
        pkgsrc/databases/py-mongo: Makefile PLIST distinfo

Log Message:
py-mongo: updated to 4.4.1

Changes in Version 4.4.1
------------------------

Version 4.4.1 fixes the following bugs:

- Fixed a bug where pymongo would raise a ``ConfigurationError: Invalid SRV host``
  error when connecting to a "mongodb+srv://" URI that included capital letters
  in the SRV hosts returned from DNS. (`PYTHON-3800`_).
- Fixed a minor reference counting bug in the C extension (`PYTHON-3798`_).

Changes in Version 4.4
-----------------------

- Added support for MongoDB 7.0.
- Added support for Python 3.11.
- Added support for passing a list containing (key, direction) pairs
  or keys to :meth:`~pymongo.collection.Collection.create_index`.
- Improved bson encoding performance (`PYTHON-3717`_ and `PYTHON-3718`_).
- Improved support for Pyright to improve typing support for IDEs like Visual Studio Code
  or Visual Studio.
- Improved support for type-checking with MyPy "strict" mode (`--strict`).
- Added :meth:`~pymongo.encryption.ClientEncryption.create_encrypted_collection`,
  :class:`~pymongo.errors.EncryptedCollectionError`,
  :meth:`~pymongo.encryption.ClientEncryption.encrypt_expression`,
  :class:`~pymongo.encryption_options.RangeOpts`,
  and :attr:`~pymongo.encryption.Algorithm.RANGEPREVIEW` as part of the experimental
  Queryable Encryption beta.
- pymongocrypt 1.6.0 or later is now required for :ref:`In-Use Encryption` support. MongoDB
  Server 7.0 introduced a backwards breaking change to the QE protocol. Users taking
  advantage of the Queryable Encryption beta must now upgrade to MongoDB 7.0+ and
  PyMongo 4.4+.
- Previously, PyMongo's docs recommended using :meth:`datetime.datetime.utcnow` and
  :meth:`datetime.datetime.utcfromtimestamp`. utcnow and utcfromtimestamp are deprecated
  in Python 3.12, for reasons explained `in this Github issue`_. Instead, users should
  use :meth:`datetime.datetime.now(tz=timezone.utc)` and
  :meth:`datetime.datetime.fromtimestamp(tz=timezone.utc)` instead.

.. _in this Github issue: https://github.com/python/cpython/issues/103857

Changes in Version 4.3.3
------------------------

Version 4.3.3 documents support for the following:

- :ref:`CSFLE on-demand credentials` for cloud KMS providers.
- Authentication support for :ref:`EKS Clusters`.
- Added the :ref:`timeout-example` example page to improve the documentation
  for :func:`pymongo.timeout`.

Bug Fixes
.........
- Fixed a performance regression in :meth:`~gridfs.GridFSBucket.download_to_stream`
  and :meth:`~gridfs.GridFSBucket.download_to_stream_by_name` by reading in chunks
  instead of line by line (`PYTHON-3502`_).
- Improved performance of :meth:`gridfs.grid_file.GridOut.read` and
  :meth:`gridfs.grid_file.GridOut.readline` (`PYTHON-3508`_).

Changes in Version 4.3 (4.3.2)
------------------------------

Note: We withheld uploading tags 4.3.0 and 4.3.1 to PyPI due to a
version handling error and a necessary documentation update.

`dnspython <https://pypi.python.org/pypi/dnspython>`_ is now a required
dependency. This change makes PyMongo easier to install for use with "mongodb+srv://"
connection strings and `MongoDB Atlas <https://www.mongodb.com/cloud>`_.

PyMongo 4.3 brings a number of improvements including:

- Added support for decoding BSON datetimes outside of the range supported
  by Python's :class:`~datetime.datetime` builtin. See
  :ref:`handling-out-of-range-datetimes` for examples, as well as
  :class:`bson.datetime_ms.DatetimeMS`,
  :class:`bson.codec_options.DatetimeConversion`, and
  :class:`bson.codec_options.CodecOptions`'s ``datetime_conversion``
  parameter for more details (`PYTHON-1824`_).
- PyMongo now resets its locks and other shared state in the child process
  after a :py:func:`os.fork` to reduce the frequency of deadlocks. Note that
  deadlocks are still possible because libraries that PyMongo depends like
  OpenSSL cannot be made fork() safe in multithreaded applications.
  (`PYTHON-2484`_). For more info see :ref:`pymongo-fork-safe`.
- When used with MongoDB 6.0+, :class:`~pymongo.change_stream.ChangeStream` s
  now allow for new types of events (such as DDL and C2C replication events)
  to be recorded with the new parameter ``show_expanded_events``
  that can be passed to methods such as :meth:`~pymongo.collection.Collection.watch`.
- PyMongo now internally caches AWS credentials that it fetches from AWS
  endpoints, to avoid rate limitations.  The cache is cleared when the
  credentials expire or an error is encountered.
- When using the ``MONGODB-AWS`` authentication mechanism with the
  ``aws`` extra, the behavior of credential fetching has changed with
  ``pymongo_auth_aws>=1.1.0``.  Please see :doc:`examples/authentication` for
  more information.

Bug fixes
.........

- Fixed a bug where  :class:`~pymongo.change_stream.ChangeStream`
  would allow an app to retry calling ``next()`` or ``try_next()`` even
  after non-resumable errors (`PYTHON-3389`_).
- Fixed a bug where the client could be unable to discover the new primary
  after a simultaneous replica set election and reconfig (`PYTHON-2970`_).


To generate a diff of this commit:
cvs rdiff -u -r1.13 -r1.14 pkgsrc/databases/py-mongo/Makefile \
    pkgsrc/databases/py-mongo/distinfo
cvs rdiff -u -r1.6 -r1.7 pkgsrc/databases/py-mongo/PLIST

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/databases/py-mongo/Makefile
diff -u pkgsrc/databases/py-mongo/Makefile:1.13 pkgsrc/databases/py-mongo/Makefile:1.14
--- pkgsrc/databases/py-mongo/Makefile:1.13     Tue Jan  4 20:52:42 2022
+++ pkgsrc/databases/py-mongo/Makefile  Sat Jul 29 11:42:36 2023
@@ -1,8 +1,7 @@
-# $NetBSD: Makefile,v 1.13 2022/01/04 20:52:42 wiz Exp $
+# $NetBSD: Makefile,v 1.14 2023/07/29 11:42:36 adam Exp $
 
-DISTNAME=      pymongo-3.12.1
+DISTNAME=      pymongo-4.4.1
 PKGNAME=       ${PYPKGPREFIX}-${DISTNAME:S/^py//}
-PKGREVISION=   1
 CATEGORIES=    databases python
 MASTER_SITES=  ${MASTER_SITE_PYPI:=p/pymongo/}
 
@@ -11,5 +10,9 @@ HOMEPAGE=     https://github.com/mongodb/mon
 COMMENT=       Python driver for MongoDB
 LICENSE=       apache-2.0
 
+DEPENDS+=      ${PYPKGPREFIX}-dns>=1.16.0:../../net/py-dns
+
+PYTHON_VERSIONS_INCOMPATIBLE=  27
+
 .include "../../lang/python/egg.mk"
 .include "../../mk/bsd.pkg.mk"
Index: pkgsrc/databases/py-mongo/distinfo
diff -u pkgsrc/databases/py-mongo/distinfo:1.13 pkgsrc/databases/py-mongo/distinfo:1.14
--- pkgsrc/databases/py-mongo/distinfo:1.13     Tue Oct 26 10:09:51 2021
+++ pkgsrc/databases/py-mongo/distinfo  Sat Jul 29 11:42:36 2023
@@ -1,5 +1,5 @@
-$NetBSD: distinfo,v 1.13 2021/10/26 10:09:51 nia Exp $
+$NetBSD: distinfo,v 1.14 2023/07/29 11:42:36 adam Exp $
 
-BLAKE2s (pymongo-3.12.1.tar.gz) = 4e85325bfc128488b0bdf8bad1588fc2749704d4eaac7c42de6ba47d3841cc08
-SHA512 (pymongo-3.12.1.tar.gz) = 36294f9437c91e5ea744452e0dc1049be65706dced61a296dfae09d32e31aae0276da2bb059a5548569e6cde62f66b935f2a422f297a3eabf0b928cfee07d060
-Size (pymongo-3.12.1.tar.gz) = 820592 bytes
+BLAKE2s (pymongo-4.4.1.tar.gz) = 808ad3976d87072fb5cb9b97d75b678ecffb56ac767515f7687e6332d0da9e06
+SHA512 (pymongo-4.4.1.tar.gz) = 0acde06319e9b629bc36e7fa1074516f9e5e7cc9bd46a8aeb334d887b3c36b2c10c8c9596d243ce09301363f0154fc7de0c885e53da6229cc134b4dbc456e5d1
+Size (pymongo-4.4.1.tar.gz) = 828735 bytes

Index: pkgsrc/databases/py-mongo/PLIST
diff -u pkgsrc/databases/py-mongo/PLIST:1.6 pkgsrc/databases/py-mongo/PLIST:1.7
--- pkgsrc/databases/py-mongo/PLIST:1.6 Mon Jul 26 17:30:35 2021
+++ pkgsrc/databases/py-mongo/PLIST     Sat Jul 29 11:42:36 2023
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.6 2021/07/26 17:30:35 adam Exp $
+@comment $NetBSD: PLIST,v 1.7 2023/07/29 11:42:36 adam Exp $
 ${PYSITELIB}/${EGG_INFODIR}/PKG-INFO
 ${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt
 ${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt
@@ -8,6 +8,9 @@ ${PYSITELIB}/bson/__init__.py
 ${PYSITELIB}/bson/__init__.pyc
 ${PYSITELIB}/bson/__init__.pyo
 ${PYSITELIB}/bson/_cbson.so
+${PYSITELIB}/bson/_helpers.py
+${PYSITELIB}/bson/_helpers.pyc
+${PYSITELIB}/bson/_helpers.pyo
 ${PYSITELIB}/bson/binary.py
 ${PYSITELIB}/bson/binary.pyc
 ${PYSITELIB}/bson/binary.pyo
@@ -17,6 +20,9 @@ ${PYSITELIB}/bson/code.pyo
 ${PYSITELIB}/bson/codec_options.py
 ${PYSITELIB}/bson/codec_options.pyc
 ${PYSITELIB}/bson/codec_options.pyo
+${PYSITELIB}/bson/datetime_ms.py
+${PYSITELIB}/bson/datetime_ms.pyc
+${PYSITELIB}/bson/datetime_ms.pyo
 ${PYSITELIB}/bson/dbref.py
 ${PYSITELIB}/bson/dbref.pyc
 ${PYSITELIB}/bson/dbref.pyo
@@ -41,9 +47,7 @@ ${PYSITELIB}/bson/min_key.pyo
 ${PYSITELIB}/bson/objectid.py
 ${PYSITELIB}/bson/objectid.pyc
 ${PYSITELIB}/bson/objectid.pyo
-${PYSITELIB}/bson/py3compat.py
-${PYSITELIB}/bson/py3compat.pyc
-${PYSITELIB}/bson/py3compat.pyo
+${PYSITELIB}/bson/py.typed
 ${PYSITELIB}/bson/raw_bson.py
 ${PYSITELIB}/bson/raw_bson.pyc
 ${PYSITELIB}/bson/raw_bson.pyo
@@ -56,6 +60,9 @@ ${PYSITELIB}/bson/son.pyo
 ${PYSITELIB}/bson/timestamp.py
 ${PYSITELIB}/bson/timestamp.pyc
 ${PYSITELIB}/bson/timestamp.pyo
+${PYSITELIB}/bson/typings.py
+${PYSITELIB}/bson/typings.pyc
+${PYSITELIB}/bson/typings.pyo
 ${PYSITELIB}/bson/tz_util.py
 ${PYSITELIB}/bson/tz_util.pyc
 ${PYSITELIB}/bson/tz_util.pyo
@@ -68,13 +75,17 @@ ${PYSITELIB}/gridfs/errors.pyo
 ${PYSITELIB}/gridfs/grid_file.py
 ${PYSITELIB}/gridfs/grid_file.pyc
 ${PYSITELIB}/gridfs/grid_file.pyo
+${PYSITELIB}/gridfs/py.typed
 ${PYSITELIB}/pymongo/__init__.py
 ${PYSITELIB}/pymongo/__init__.pyc
 ${PYSITELIB}/pymongo/__init__.pyo
 ${PYSITELIB}/pymongo/_cmessage.so
-${PYSITELIB}/pymongo/_ipaddress.py
-${PYSITELIB}/pymongo/_ipaddress.pyc
-${PYSITELIB}/pymongo/_ipaddress.pyo
+${PYSITELIB}/pymongo/_csot.py
+${PYSITELIB}/pymongo/_csot.pyc
+${PYSITELIB}/pymongo/_csot.pyo
+${PYSITELIB}/pymongo/_version.py
+${PYSITELIB}/pymongo/_version.pyc
+${PYSITELIB}/pymongo/_version.pyo
 ${PYSITELIB}/pymongo/aggregation.py
 ${PYSITELIB}/pymongo/aggregation.pyc
 ${PYSITELIB}/pymongo/aggregation.pyo
@@ -84,6 +95,9 @@ ${PYSITELIB}/pymongo/auth.pyo
 ${PYSITELIB}/pymongo/auth_aws.py
 ${PYSITELIB}/pymongo/auth_aws.pyc
 ${PYSITELIB}/pymongo/auth_aws.pyo
+${PYSITELIB}/pymongo/auth_oidc.py
+${PYSITELIB}/pymongo/auth_oidc.pyc
+${PYSITELIB}/pymongo/auth_oidc.pyo
 ${PYSITELIB}/pymongo/bulk.py
 ${PYSITELIB}/pymongo/bulk.pyc
 ${PYSITELIB}/pymongo/bulk.pyo
@@ -114,9 +128,6 @@ ${PYSITELIB}/pymongo/compression_support
 ${PYSITELIB}/pymongo/cursor.py
 ${PYSITELIB}/pymongo/cursor.pyc
 ${PYSITELIB}/pymongo/cursor.pyo
-${PYSITELIB}/pymongo/cursor_manager.py
-${PYSITELIB}/pymongo/cursor_manager.pyc
-${PYSITELIB}/pymongo/cursor_manager.pyo
 ${PYSITELIB}/pymongo/daemon.py
 ${PYSITELIB}/pymongo/daemon.pyc
 ${PYSITELIB}/pymongo/daemon.pyo
@@ -141,15 +152,12 @@ ${PYSITELIB}/pymongo/event_loggers.pyo
 ${PYSITELIB}/pymongo/hello.py
 ${PYSITELIB}/pymongo/hello.pyc
 ${PYSITELIB}/pymongo/hello.pyo
-${PYSITELIB}/pymongo/hello_compat.py
-${PYSITELIB}/pymongo/hello_compat.pyc
-${PYSITELIB}/pymongo/hello_compat.pyo
 ${PYSITELIB}/pymongo/helpers.py
 ${PYSITELIB}/pymongo/helpers.pyc
 ${PYSITELIB}/pymongo/helpers.pyo
-${PYSITELIB}/pymongo/ismaster.py
-${PYSITELIB}/pymongo/ismaster.pyc
-${PYSITELIB}/pymongo/ismaster.pyo
+${PYSITELIB}/pymongo/lock.py
+${PYSITELIB}/pymongo/lock.pyc
+${PYSITELIB}/pymongo/lock.pyo
 ${PYSITELIB}/pymongo/max_staleness_selectors.py
 ${PYSITELIB}/pymongo/max_staleness_selectors.pyc
 ${PYSITELIB}/pymongo/max_staleness_selectors.pyo
@@ -159,18 +167,12 @@ ${PYSITELIB}/pymongo/message.pyo
 ${PYSITELIB}/pymongo/mongo_client.py
 ${PYSITELIB}/pymongo/mongo_client.pyc
 ${PYSITELIB}/pymongo/mongo_client.pyo
-${PYSITELIB}/pymongo/mongo_replica_set_client.py
-${PYSITELIB}/pymongo/mongo_replica_set_client.pyc
-${PYSITELIB}/pymongo/mongo_replica_set_client.pyo
 ${PYSITELIB}/pymongo/monitor.py
 ${PYSITELIB}/pymongo/monitor.pyc
 ${PYSITELIB}/pymongo/monitor.pyo
 ${PYSITELIB}/pymongo/monitoring.py
 ${PYSITELIB}/pymongo/monitoring.pyc
 ${PYSITELIB}/pymongo/monitoring.pyo
-${PYSITELIB}/pymongo/monotonic.py
-${PYSITELIB}/pymongo/monotonic.pyc
-${PYSITELIB}/pymongo/monotonic.pyo
 ${PYSITELIB}/pymongo/network.py
 ${PYSITELIB}/pymongo/network.pyc
 ${PYSITELIB}/pymongo/network.pyo
@@ -189,6 +191,7 @@ ${PYSITELIB}/pymongo/periodic_executor.p
 ${PYSITELIB}/pymongo/pool.py
 ${PYSITELIB}/pymongo/pool.pyc
 ${PYSITELIB}/pymongo/pool.pyo
+${PYSITELIB}/pymongo/py.typed
 ${PYSITELIB}/pymongo/pyopenssl_context.py
 ${PYSITELIB}/pymongo/pyopenssl_context.pyc
 ${PYSITELIB}/pymongo/pyopenssl_context.pyo
@@ -228,30 +231,24 @@ ${PYSITELIB}/pymongo/settings.pyo
 ${PYSITELIB}/pymongo/socket_checker.py
 ${PYSITELIB}/pymongo/socket_checker.pyc
 ${PYSITELIB}/pymongo/socket_checker.pyo
-${PYSITELIB}/pymongo/son_manipulator.py
-${PYSITELIB}/pymongo/son_manipulator.pyc
-${PYSITELIB}/pymongo/son_manipulator.pyo
 ${PYSITELIB}/pymongo/srv_resolver.py
 ${PYSITELIB}/pymongo/srv_resolver.pyc
 ${PYSITELIB}/pymongo/srv_resolver.pyo
 ${PYSITELIB}/pymongo/ssl_context.py
 ${PYSITELIB}/pymongo/ssl_context.pyc
 ${PYSITELIB}/pymongo/ssl_context.pyo
-${PYSITELIB}/pymongo/ssl_match_hostname.py
-${PYSITELIB}/pymongo/ssl_match_hostname.pyc
-${PYSITELIB}/pymongo/ssl_match_hostname.pyo
 ${PYSITELIB}/pymongo/ssl_support.py
 ${PYSITELIB}/pymongo/ssl_support.pyc
 ${PYSITELIB}/pymongo/ssl_support.pyo
-${PYSITELIB}/pymongo/thread_util.py
-${PYSITELIB}/pymongo/thread_util.pyc
-${PYSITELIB}/pymongo/thread_util.pyo
 ${PYSITELIB}/pymongo/topology.py
 ${PYSITELIB}/pymongo/topology.pyc
 ${PYSITELIB}/pymongo/topology.pyo
 ${PYSITELIB}/pymongo/topology_description.py
 ${PYSITELIB}/pymongo/topology_description.pyc
 ${PYSITELIB}/pymongo/topology_description.pyo
+${PYSITELIB}/pymongo/typings.py
+${PYSITELIB}/pymongo/typings.pyc
+${PYSITELIB}/pymongo/typings.pyo
 ${PYSITELIB}/pymongo/uri_parser.py
 ${PYSITELIB}/pymongo/uri_parser.pyc
 ${PYSITELIB}/pymongo/uri_parser.pyo



Home | Main Index | Thread Index | Old Index