Skip to content

Update mongoengine to 0.20.0#557

Closed
pyup-bot wants to merge 1 commit intomasterfrom
pyup-update-mongoengine-0.16.3-to-0.20.0
Closed

Update mongoengine to 0.20.0#557
pyup-bot wants to merge 1 commit intomasterfrom
pyup-update-mongoengine-0.16.3-to-0.20.0

Conversation

@pyup-bot
Copy link
Copy Markdown
Collaborator

@pyup-bot pyup-bot commented May 2, 2020

This PR updates mongoengine from 0.16.3 to 0.20.0.

Changelog

0.20.0

=================
- ATTENTION: Drop support for Python2
- Add Mongo 4.0 to Travis
- Fix error when setting a string as a ComplexDateTimeField 2253
- Bump development Status classifier to Production/Stable 2232
- Improve Queryset.get to avoid confusing MultipleObjectsReturned message in case multiple match are found 630
- Fixed a bug causing inaccurate query results, while combining ``__raw__`` and regular filters for the same field 2264
- Add support for the `elemMatch` projection operator in .fields() (e.g BlogPost.objects.fields(elemMatch__comments="test")) 2267
- DictField validate failed without default connection (bug introduced in 0.19.0) 2239
- Remove methods that were deprecated years ago:
 - name parameter in Field constructor e.g `StringField(name="...")`, was replaced by db_field
 - Queryset.slave_okay() was deprecated since pymongo3
 - dropDups was dropped with MongoDB3
 - ``Queryset._ensure_indexes`` and ``Queryset.ensure_indexes``, the right method to use is ``Document.ensure_indexes``
- Added pre-commit for development/CI 2212
- Renamed requirements-lint.txt to requirements-dev.txt 2212
- Support for setting ReadConcern 2255

0.19.1

=================
- Requires Pillow < 7.0.0 as it dropped Python2 support
- DEPRECATION: The interface of ``QuerySet.aggregate`` method was changed, it no longer takes an unpacked list of
 pipeline steps (*pipeline) but simply takes the pipeline list just like ``pymongo.Collection.aggregate`` does. 2079

0.19.0

=================
- BREAKING CHANGE: ``class_check`` and ``read_preference`` keyword arguments are no longer available when filtering a ``QuerySet``. 2112
 - Instead of ``Doc.objects(foo=bar, read_preference=...)`` use ``Doc.objects(foo=bar).read_preference(...)``.
 - Instead of ``Doc.objects(foo=bar, class_check=False)`` use ``Doc.objects(foo=bar).clear_cls_query(...)``.
 - This change also renames the private ``QuerySet._initial_query`` attribute to ``_cls_query``.
- BREAKING CHANGE: Removed the deprecated ``format`` param from ``QuerySet.explain``. 2113
- BREAKING CHANGE: Renamed ``MongoEngineConnectionError`` to ``ConnectionFailure``. 2111
 - If you catch/use ``MongoEngineConnectionError`` in your code, you'll have to rename it.
- BREAKING CHANGE: Positional arguments when instantiating a document are no longer supported. 2103
 - From now on keyword arguments (e.g. ``Doc(field_name=value)``) are required.
- BREAKING CHANGE: A ``LazyReferenceField`` is now stored in the ``_data`` field of its parent as a ``DBRef``, ``Document``, or ``EmbeddedDocument`` (``ObjectId`` is no longer allowed). 2182
- DEPRECATION: ``Q.empty`` & ``QNode.empty`` are marked as deprecated and will be removed in a next version of MongoEngine. 2210
 - Added ability to check if Q or QNode are empty by parsing them to bool.
 - Instead of ``Q(name="John").empty`` use ``not Q(name="John")``.
- Fix updating/modifying/deleting/reloading a document that's sharded by a field with ``db_field`` specified. 2125
- Only set no_cursor_timeout when requested (fixes an incompatibility with MongoDB 4.2) 2148
- ``ListField`` now accepts an optional ``max_length`` parameter. 2110
- Improve error message related to InvalidDocumentError 2180
- Added BulkWriteError to replace NotUniqueError which was misleading in bulk write insert 2152
- Added ability to compare Q and Q operations 2204
- Added ability to use a db alias on query_counter 2194
- Added ability to specify collations for querysets with ``Doc.objects.collation`` 2024
- Fix updates of a list field by negative index 2094
- Switch from nosetest to pytest as test runner 2114
- The codebase is now formatted using ``black``. 2109
- Documentation improvements:
 - Documented how `pymongo.monitoring` can be used to log all queries issued by MongoEngine to the driver.

0.18.2

=================
- Replace deprecated PyMongo v2.x methods with their v3.x equivalents in the ``SequenceField``. 2097
- Various code clarity and documentation improvements.

0.18.1

=================
- Fix a bug introduced in 0.18.0 which was causing ``Document.save`` to update all the fields instead of updating only the modified fields. This bug only occurred when using a custom PK. 2082
- Add Python 3.7 to Travis CI. 2058

0.18.0

=================
- Drop support for EOL'd MongoDB v2.6, v3.0, and v3.2.
- MongoEngine now requires PyMongo >= v3.4. Travis CI now tests against MongoDB v3.4 – v3.6 and PyMongo v3.4 – v3.6. 2017 2066
- Improve performance by avoiding a call to ``to_mongo`` in ``Document.save``. 2049
- Connection/disconnection improvements:
 - Expose ``mongoengine.connection.disconnect`` and ``mongoengine.connection.disconnect_all``.
 - Fix disconnecting. 566 1599 605 607 1213 565
 - Improve documentation of ``connect``/``disconnect``.
 - Fix issue when using multiple connections to the same mongo with different credentials. 2047
 - ``connect`` fails immediately when db name contains invalid characters. 2031 1718
- Fix the default write concern of ``Document.save`` that was overwriting the connection write concern. 568
- Fix querying on ``List(EmbeddedDocument)`` subclasses fields. 1961 1492
- Fix querying on ``(Generic)EmbeddedDocument`` subclasses fields. 475
- Fix ``QuerySet.aggregate`` so that it takes limit and skip value into account. 2029
- Generate unique indices for ``SortedListField`` and ``EmbeddedDocumentListFields``. 2020
- BREAKING CHANGE: Changed the behavior of a custom field validator (i.e ``validation`` parameter of a ``Field``). It is now expected to raise a ``ValidationError`` instead of returning ``True``/``False``. 2050
- BREAKING CHANGES (associated with connection/disconnection fixes):
 - Calling ``connect`` 2 times with the same alias and different parameter will raise an error (should call ``disconnect`` first).
 - ``disconnect`` now clears ``mongoengine.connection._connection_settings``.
 - ``disconnect`` now clears the cached attribute ``Document._collection``.
- BREAKING CHANGE: ``EmbeddedDocument.save`` & ``.reload`` no longer exist. 1552

0.17.0

=================
- POTENTIAL BREAKING CHANGE: All result fields are now passed, including internal fields (``_cls``, ``_id``) when using ``QuerySet.as_pymongo``. 1976
- Document a BREAKING CHANGE introduced in 0.15.3 and not reported at that time. 1995
- DEPRECATION: ``EmbeddedDocument.save`` & ``.reload`` are marked as deprecated and will be removed in a next version of MongoEngine. 1552
- Fix ``QuerySet.only`` working improperly after using ``QuerySet.count`` of the same instance of a ``QuerySet``.
- Fix ``batch_size`` that was not copied when cloning a ``QuerySet`` object. 2011
- Fix ``InvalidStringData`` error when using ``modify`` on a ``BinaryField``. 1127
- Fix test suite and CI to support MongoDB v3.4. 1445
- Fix reference fields querying the database on each access if value contains orphan DBRefs.
Links

@pyup-bot
Copy link
Copy Markdown
Collaborator Author

Closing this in favor of #593

@pyup-bot pyup-bot closed this Nov 19, 2020
@ednilson ednilson deleted the pyup-update-mongoengine-0.16.3-to-0.20.0 branch November 19, 2020 16:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant