Mongoengine

Latest version: v0.29.1

Safety actively analyzes 682404 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 16

0.29.0

=================
- Fix weakref in EmbeddedDocumentListField (causing brief mem leak in certain circumstances) 2827
- Fix pillow deprecation warning related with LANCZOS filter 2824
- Allow gt/gte/lt/lte/ne operators to be used with a list as value on ListField 2813
- Switch tox to use pytest instead of legacy `python setup.py test` 2804
- Add support for timeseries collection 2661
- Add support in tests for MongoDB 7.0, pymongo 4.7 and pymongo 4.8 in the CI 2826
- Add support for `array_filters` in Queryset.modify 2811
- Integrate a docker-compose setup for local testing 2555
- improve ReferenceField wrong usage detection
- Fix no_dereference thread-safetyness 2830
- BREAKING CHANGE: max_length in ListField is now keyword only on ListField signature
- BREAKING CHANGE: Force `field` argument of ListField/DictField to be a field instance (e.g ListField(StringField()) instead of ListField(StringField)

0.28.2

=================
- Fix typing import incompatible with Pymongo 3.7 2802

0.28.1

=================
- Fix bug related with recent updates to no_dereference context manager 2799

0.28.0

=================
- Fix for uuidRepresentation not read when provided in URI 2741
- Add option to user array_filters https://www.mongodb.com/docs/manual/reference/operator/update/positional-filtered/ #2769
- Fix combination of __raw__ and mongoengine syntax 2773
- Add tests against MongoDB 6.0 and MongoDB 7.0 in the pipeline
- Fix validate() not being called when inheritance is used in EmbeddedDocument and validate is overriden 2784
- Add support for readPreferenceTags in connection parameters 2644
- Use estimated_documents_count OR documents_count when count is called, based on the query 2529
- Fix no_dereference context manager which wasn't turning off auto-dereferencing correctly in some cases 2788
- BREAKING CHANGE: no_dereference context manager no longer returns the class in __enter__ 2788
as it was useless and making it look like it was returning a different class although it was the same.
Thus, it must be called like `with no_dereference(User):` and no longer `with no_dereference(User) as ...:`
- Added __raw__ to :meth:`~mongoengine.Queryset.order_by()` to allow to provide raw pymongo 'sort' argument and get around some of the limitations 2783
- Add `text_score` argument on :meth:`~mongoengine.Document.search_text()` to allow text_score computation to be turned off
as it interfere with natural returned documents order 2759

0.27.0

=================
- Update uuidRepresentation warnings with "unspecified" as the future default (instead of 'standard' previously advertised) 2739
- Added `mongo_client_class` optional parameter to connect() to allow to use an alternative mongo client than pymongo.MongoClient.
Typically to support mock mongo libraries like mongomock, montydb, mongita 2729
- BREAKING CHANGE: connecting MongoEngine with mongomock should now use the new `mongo_client_class`
For more info, check https://docs.mongoengine.org/guide/mongomock.html
- Fix DictField that always gets marked as changed 2606
- fix for Queryset.none() that has no effect on update/aggregate / first 2669

0.26.0

=================
- BREAKING CHANGE: Improved the performance of :meth:`~mongoengine.Document.save()`
by removing the call to :meth:`~mongoengine.Document.ensure_indexes` unless
``meta['auto_create_index_on_save']`` is set to True. With the default settings, Document indexes
will still be created on the fly, during the first usage of the collection (query, insert, etc),
they will just not be re-created whenever .save() is called.
- Added meta ``auto_create_index_on_save`` so you can enable index creation
on :meth:`~mongoengine.Document.save()` (as it was < 0.26.0).
- BREAKING CHANGE: remove deprecated method ``ensure_index`` (replaced by ``create_index`` long time ago).
- Addition of Decimal128Field: :class:`~mongoengine.fields.Decimal128Field` for accurate representation of Decimals (much better than the legacy field DecimalField).
Although it could work to switch an existing DecimalField to Decimal128Field without applying a migration script,
it is not recommended to do so (DecimalField uses float/str to store the value, Decimal128Field uses Decimal128).
- BREAKING CHANGE: When using ListField(EnumField) or DictField(EnumField), the values weren't always cast into the Enum (2531)
- BREAKING CHANGE (bugfix) Querying ObjectIdField or ComplexDateTimeField with None no longer raise a ValidationError (2681)
- Allow updating a field that has an operator name e.g. "type" with .update(set__type="foo"). It was raising an error previously. 2595

Page 1 of 16

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.