Mongomock

Latest version: v4.1.2

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

Scan your dependencies

Page 2 of 5

3.20.0

* Handling truthy and falsy values the way MongoDB does it (651)
* Add support for group by DBRefs (636)
* Implement $switch operator (645)
* Add hint optional argument to bulk operations (compatibility with pymongo v3.11+)
* Mark new $regexMatch operator as not implemented
* Drop the test database rather than the test collection (601)
* Implement $pop (602)
* A little fix in the example (644)
* Mark $mergeObjects as valid but not implemented
* DOC: Clarify how to use mongomock.patch with pymongo (640)
* Add many operators from 3.4 release as NotImplemented
* Raise a WriteError when trying to update with an empty $set. (623)
* Add context mananger methods to mongomock client (633)
* Implement $arrayToObject operator (624)
* Add support for read concern (628)
* Implements $setEquals operator (596)
* Update README.rst (621)
* Support $sum decimal type of values (618)
* Compare UUID values. (616)
* Test and fix sorting between mixed types
* Fix travis config
* $addField(fix): fix the not exist case in $toInt and $toDecimal (612)
* Add $toDecimal operator (610)
* Project missing fields in a nested dict fix (605)
* Dot support for localField (603)
* Fix grammar (600)
* Mark TTL Index as not implemented
* Allow $all to be specified alongside other operators (597)
* Handle the specific case of inserting a Timestamp(0,0) to be replaced by the current time. (593)
* Add $dateToString opeartor (590)
* Support for $slice operator in projection argument (588)

3.19.0

* Add an easy way to compare exception types between mongomock and pymongo
* collection.py: Fix return value of Collection.documents\_count() (586)
* Type conversion (583)
* Add the new kwarg bypass\_document\_validation
* Add support for subtracting milliseconds from a date (581)
* Implement the $addFields (alias $set) stage of aggregate. (574)
* Do not modify inserted documents, except for the \_id
* Test mongomock on Python 3.8 as well
* Add raw batch BSON operations as not implemented (missing) features
* Add new aggregation pipeline stages introduced in 4.2 and mark them as not implemented
* Silent some new pyint warnings
* Raise a NotImplementedError for valid query operators that have not been implemented in Mongomock yet
* Raise an error when an aggregate expression contains more than one field. (557)
* Fix $ne on arrays
* Fix lint error detected by a new version of pylint

3.18.0

* Implement the $facet operator. (563)
* Fix index creation when a value used in the indexed fields is not hashable (e.g. dict)
* Support bson.regex on $not queries (560)
* Mark Cursor.count method as deprecated, as it is in pymongo since v3.7.0
* Skip tests that cannot be run if there are no local Mongo server, or no available Js runtime
* Handle bytes sort as BinData sort in python3. (559)
* Time the creation of GridFS file to account for that when checking the time difference
* Handle bson.Regex objects as regular expression
* Fix flaky test (again)
* Run all tests with an old version of pymongo to make sure we stay compatible
* Raises an error if the operand of $in is not an array
* Relax the restriction on WriteConcern so that it works with pymongo 3.6.1
* Generate an error on unknown operator as MongoDB server does. For 553
* Fix flaky test in gridfs
* Fix aggregate's $project for the \_id field when it uses an expression
* Fix Travis Python version
* Handle array subfields in the stage of the aggregate pipeline. (549)
* Ensure valid collection names when using the \[...\] accessor on a DB
* Consider "name" argument to create\_index for index name (550)
* Add support for $slice (aggregate). (547)
* Handle aggregate $first and $last operator when data is missing
* Fix demo code in documentation
* Fix propagation of codec\_options from client to database to collection, and set its tz\_aware flag
* Fix behaviour of $all when applied to an array

3.17.0

* Fix the version of MongoDB server installed for test
* Raises a ValueError on sort with an empty list
* Supporting $replaceRoot operation (524)
* Mark the $where operator as not implemented yet
* Find dict even in nested lists
* Allow positional args for with\_options
* Refactor filtering to be able to keep context while filtering: this is not absolutely required at this stage but will help implement the $expr operator
* Mark $text as a missing feature, including the sorting by $text\_score
* When releasing ot Pypi, distribute the sdist as well
* Mark the $expr operator as not implemented yet
* Handle the ordered parameter of insert\_many
* Fix sorting by a dict field
* Fix the $pull operator when using a simple query operator
* Allow the aggregate expression parser to silently ignore missing keys
* Add $graphlookup (523)
* Fix the aggregate function when there is no input
* Added string operations support (517)
* Fix behavior of $eq and $ne for array fields
* BulkOperationBuilder: Call insert\_one rather than deprecated insert (522)
* Fix KeyError in aggregation. Fixes 514
* Fix CI after lib changes
* Accept $regex operator after $not, as it is now OK for MongoDB v4.0.7+
* Fix mongomock.patch using tuples to specify host and port

3.16.0

* Implement the $setUnion operator in the aggregate pipeline. (510)
* Implement the list\_database\_names method introduced in pymongo v3.6
* Fixes use of '\_id': 0, in the $project stage of the aggregate pipeline
* Fix renaming of collections as I discovered mongomock's implementation differed from pymongo's
* Fix logical operator when used with other search filters (506)
* Fix pylint error
* Support max\_time\_ms in find() (501)

3.15.0

* Improve parsing of mongodb URLs
* Fix the use of \`$ne\` with None
* Fix DuplicateKeyError when parse None to sparse unique index (497)
* Implement the $sort and $position modifiers for the $push update operator
* Fix the matched\_count result for bulk writes
* Raise an OperationFailure on unknown top level operator in filter
* Mark $sort and $position modifiers of the $push operator as not implemented yet
* Add the max\_time\_ms method to Cursor
* Fix sorting of cursors as it should be done before projecting
* Support read preference arguments (has no effect, but check types)
* Add a hint method to the Cursor class
* Implement the {'$type': 'timestamp'} option of the $currentDate update operator
* Fix group operations ($min, $max, $avg, $sum) when handling non numeric types, especially None
* Implement the options of the $regex operator
* Add test coverage for the database module
* Check name correctness before creating a collection
* Make distinct() works with list of nested fields
* Allow falsy value for \_id in update operations. (483)
* Raise a WriteError when trying to modify the \_id field
* Implement $count in aggregate pipeline (479)
* Mark options as not implemented yet
* Implement unordered bulk operations
* Implement the $filter operator within the aggregation pipeline
* Handle subfields in the $project stage of the aggregate pipeline
* Fix the $sample stage of the aggregate pipeline when size is lower than the input's collection size
* Implement with\_options when changing write\_concern
* Move handling of persistant data in a store that can be accessed by several MongoClient
* Allow generation of array on the fly in the $project aggregate stage
* Simplify indexes internal management
* Fix operations that reuse fields existing in the original collection
* Fix error when calling with\_options with the wrong type
* Fix getting a missing key for a $group aggregate operation
* Implement the ping command for database
* Implement the operator $in in the aggregate pipeline
* Mark Database's command method as not implemented
* Mark the $in operator in aggregate pipeline to be valid but not implemented yet

Page 2 of 5

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.