PYTHON-5421 continued - update changelog, update docstring, and add testing (#2420)
This commit is contained in:
parent
11d3488026
commit
c77c15e369
@ -13,6 +13,7 @@ PyMongo 4.14 brings a number of changes including:
|
||||
|
||||
- Introduces a minor breaking change. When encoding :class:`bson.binary.BinaryVector`, a ``ValueError`` will be raised
|
||||
if the 'padding' metadata field is < 0 or > 7, or non-zero for any type other than PACKED_BIT.
|
||||
- Changed :meth:`~pymongo.uri_parser.parse_uri`'s ``options`` parameter to be type ``dict`` instead of ``_CaseInsensitiveDictionary``.
|
||||
|
||||
Changes in Version 4.13.2 (2025/06/17)
|
||||
--------------------------------------
|
||||
|
||||
@ -80,6 +80,9 @@ async def parse_uri(
|
||||
wait for a response from the DNS server.
|
||||
:param srv_service_name: A custom SRV service name
|
||||
|
||||
.. versionchanged:: 4.14
|
||||
``options`` is now type ``dict`` as opposed to a ``_CaseInsensitiveDictionary``.
|
||||
|
||||
.. versionchanged:: 4.6
|
||||
The delimiting slash (``/``) between hosts and connection options is now optional.
|
||||
For example, "mongodb://example.com?tls=true" is now a valid URI.
|
||||
|
||||
@ -80,6 +80,9 @@ def parse_uri(
|
||||
wait for a response from the DNS server.
|
||||
:param srv_service_name: A custom SRV service name
|
||||
|
||||
.. versionchanged:: 4.14
|
||||
``options`` is now type ``dict`` as opposed to a ``_CaseInsensitiveDictionary``.
|
||||
|
||||
.. versionchanged:: 4.6
|
||||
The delimiting slash (``/``) between hosts and connection options is now optional.
|
||||
For example, "mongodb://example.com?tls=true" is now a valid URI.
|
||||
|
||||
@ -555,6 +555,10 @@ class TestURI(unittest.TestCase):
|
||||
with self.assertRaisesRegex(ValueError, r"Port contains whitespace character: '\\n'"):
|
||||
parse_uri("mongodb://localhost:27\n017")
|
||||
|
||||
def test_parse_uri_options_type(self):
|
||||
opts = parse_uri("mongodb://localhost:27017")["options"]
|
||||
self.assertIsInstance(opts, dict)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
unittest.main()
|
||||
|
||||
Loading…
Reference in New Issue
Block a user