|
1 | 1 | Changelog |
2 | 2 | ========= |
3 | 3 |
|
| 4 | +Changes in Version 1.4 |
| 5 | +---------------------- |
| 6 | + |
| 7 | +Perhaps the most important change in version 1.4 is that we have |
| 8 | +decided to **no longer support Python 2.3**. The most immediate reason |
| 9 | +for this is to allow some improvements to connection pooling. This |
| 10 | +will also allow us to use some new (as in Python 2.4 ;) idioms and |
| 11 | +will help begin the path towards supporting Python 3.0. If you need to |
| 12 | +use Python 2.3 you should consider using version 1.3 of this driver, |
| 13 | +although that will no longer be actively supported. |
| 14 | + |
| 15 | +Other changes: |
| 16 | + |
| 17 | +- move ``"_id"`` to front only for top-level documents (fixes some |
| 18 | + corner cases). |
| 19 | +- :meth:`~pymongo.collection.Collection.update` and |
| 20 | + :meth:`~pymongo.collection.Collection.remove` return the entire |
| 21 | + response to the *lastError* command when safe is ``True``. |
| 22 | +- completed removal of things that were deprecated in version 1.2 or |
| 23 | + earlier. |
| 24 | +- enforce that collection names do not contain the NULL byte. |
| 25 | +- fix to allow using UTF-8 collection names with the C extension. |
| 26 | +- added :class:`~pymongo.errors.PyMongoError` as base exception class |
| 27 | + for all :mod:`~pymongo.errors`. this changes the exception hierarchy |
| 28 | + somewhat, and is a BREAKING change if you depend on |
| 29 | + :class:`~pymongo.errors.ConnectionFailure` being a :class:`IOError` |
| 30 | + or :class:`~pymongo.errors.InvalidBSON` being a :class:`ValueError`, |
| 31 | + for example. |
| 32 | +- added :class:`~pymongo.errors.DuplicateKeyError` for calls to |
| 33 | + :meth:`~pymongo.collection.Collection.insert` or |
| 34 | + :meth:`~pymongo.collection.Collection.update` with `safe` set to |
| 35 | + ``True``. |
| 36 | +- removed :mod:`~pymongo.thread_util` |
| 37 | +- added :meth:`~pymongo.database.Database.add_user` and |
| 38 | + :meth:`~pymongo.database.Database.remove_user` helpers. |
| 39 | +- fix for :meth:`~pymongo.database.Database.authenticate` when using |
| 40 | + non-UTF-8 names or passwords. |
| 41 | +- minor fixes for |
| 42 | + :class:`~pymongo.master_slave_connection.MasterSlaveConnection`. |
| 43 | +- clean up all cases where :class:`~pymongo.errors.ConnectionFailure` |
| 44 | + is raised. |
| 45 | +- simplification of connection pooling - makes driver ~2x faster for |
| 46 | + simple benchmarks. see :ref:`connection-pooling` for more information. |
| 47 | +- DEPRECATED `pool_size`, `auto_start_request` and `timeout` |
| 48 | + parameters to :class:`~pymongo.connection.Connection`. DEPRECATED |
| 49 | + :meth:`~pymongo.connection.Connection.start_request`. |
| 50 | +- use :meth:`socket.sendall`. |
| 51 | +- removed :meth:`~pymongo.son.SON.from_xml` as it was only being used |
| 52 | + for some internal testing - also eliminates dependency on |
| 53 | + :mod:`elementtree`. |
| 54 | +- implementation of :meth:`~pymongo.message.update` in C. |
| 55 | +- deprecate :meth:`~pymongo.database.Database._command` in favor of |
| 56 | + :meth:`~pymongo.database.Database.command`. |
| 57 | +- send all commands without wrapping as ``{"query": ...}``. |
| 58 | +- support string as `key` argument to |
| 59 | + :meth:`~pymongo.collection.Collection.group` (keyf) and run all |
| 60 | + groups as commands. |
| 61 | +- support for equality testing for :class:`~pymongo.code.Code` |
| 62 | + instances. |
| 63 | +- allow the NULL byte in strings and disallow it in key names or regex |
| 64 | + patterns |
| 65 | + |
4 | 66 | Changes in Version 1.3 |
5 | 67 | ---------------------- |
6 | 68 | - DEPRECATED running :meth:`~pymongo.collection.Collection.group` as |
|
0 commit comments