Metadata-Version: 2.4
Name: m01.fake
Version: 3.13.7
Summary: FAke mongodb implementation
Home-page: http://pypi.python.org/pypi/m01.fake
Author: Roger Ineichen, Projekt01 GmbH
Author-email: dev@projekt01.ch
License: ZPL 2.1
Keywords: mongoDB mongo fake
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Web Environment
Classifier: Framework :: Zope :: 3
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Zope Public License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Topic :: Database
Description-Content-Type: text/x-rst
License-File: LICENSE.txt
Requires-Dist: setuptools
Requires-Dist: six
Requires-Dist: future
Requires-Dist: sentinels
Requires-Dist: pymongo
Provides-Extra: test
Requires-Dist: zope.testing; extra == "test"
Provides-Extra: stub
Requires-Dist: m01.stub; extra == "stub"
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: keywords
Dynamic: license
Dynamic: license-file
Dynamic: provides-extra
Dynamic: requires-dist
Dynamic: summary

This package provides a fake mongodb implementation and is quite handy for
testing.


=======
CHANGES
=======

3.13.7 (2026-05-30)
-------------------

- bugfix: _index_list (used by cursor.sort) accepted only py2 str
  for the key argument and raised TypeError on unicode keys. Most
  callers pass u'fieldName' in py2 (e.g. xserver Connection / Dossier /
  Application views, xpo browser views). Switched the isinstance check
  to the module-level string_type alias (basestring in py2, str in py3)
  so unicode sort keys are now accepted.


3.13.6 (2026-04-16)
-------------------

- bugfix; doProjection used 'if v:' which dropped falsy values
  (False, 0, empty string) from projected documents. Use _marker
  sentinel to only skip truly missing keys.


3.13.5 (2026-04-16)
-------------------

- bugfix; doProjection falsy value fix (superseded by 3.13.6)


3.13.4 (2025-01-07)
-------------------

- feature; implemented aggragate method


3.13.3 (2025-07-10)
-------------------

- make code python 3 compatible


3.13.2 (2025-06-26)
-------------------

- bugfix: return correct result for delete_on and delete_many

- make m01.fake compatible with pymongo 3.13.0

- remove the index options cache_for and drop_dups


3.13.1 (2025-06-25)
-------------------

- support list_database_names


3.13.0 (2025-06-24)
-------------------

- make m01.fake compatible with pymongo 3.13.0


3.0.6 (2025-05-27)
------------------

- Update requirement pymongo>=4.0


3.0.5 (2025-05-06)
------------------

- migration: python 2.7/3 version compatibility


3.0.4 (2022-02-06)
------------------

- bugfix: fixed TyoeError if the deque get sliced in skip cursor method


3.0.3 (2018-11-24)
------------------

- bugfix: fix find_one_and_update and ensure that upsert is working.


3.0.2 (2017-01-11)
------------------

- bugfix: fix $setOnInsert, _id as a part of $setOnInsert didn't get applied
  to the new inserted document


3.0.1 (2015-12-24)
------------------

- make implementation compatible with final pymongo 3.2 version


3.0.0 (2015-11-11)
------------------

- initial release

- implemented update operator

- implemented find operator

- use 3.0.0 as package version and reflect pymongo > 3.0.0 compatibility

- m01.mongofake replacement, support pymongo >= 3.0.0
