Dear MySQL users,

MySQL Connector/Python 8.0.4 dmr is the fifth development release of the
MySQL Connector Python 8.0 series. This series adds support for the new X
DevAPI.  The X DevAPI enables application developers to write code that
combines the strengths of the relational and document models using a
modern, NoSQL-like syntax that does not assume previous experience
writing traditional SQL.

To learn more about how to write applications using the X DevAPI, see For more information
about how the X DevAPI is implemented in MySQL Connector/Python, and its
usage, see

Please note that the X DevAPI requires MySQL Server version 5.7.12 or
higher with the X Plugin enabled. For general documentation about how to
get started using MySQL as a document store, see

To download MySQL Connector/Python 8.0.4 dmr, see the "Development
Releases" tab at


Changes in MySQL Connector/Python 8.0.4 (2017-07-17, Development Milestone)

   MySQL Connectors and other MySQL client tools and
   applications now synchronize the first digit of their version
   number with the (highest) MySQL server version they support.
   For example, MySQL Connector/Python 8.0.12 would be designed
   to support all features of MySQL server version 8 (or lower).
   This change makes it easy and intuitive to decide which
   client version to use for which server version.

   Connector/Python 8.0.4 is the first release to use the new
   numbering. It is the successor to Connector/Python 2.2.3.

   Character Set Support

     * Connector/Python now supports MySQL servers configured to
       use utf8mb4 as the default character set.

   Functionality Added or Changed

     * To avoid unintentional changes to all items in a
       collection, the Collection.modify() and
       Collection.remove() methods now require a nonempty
       selection expression as argument. To intentionally apply
       an operation to an entire collection, pass a condition
       that always evaluates to true, such as True. A similar
       change was made to Table.update() and Table.delete().
       (Bug #25991574)

     * For MSI and Solaris packages, the pure Python Protobuf
       support implementation was replaced by a C++ extension.
       This enables Connector/Python to support Python 2 and 3
       as well Protobuf 2 and 3.

     * The NodeSession class has been renamed to Session, and
       the XSession class has been removed.

     * Connections created using Session objects now are secure
       by default. Also, the ssl-enabled connection option has
       been replaced by ssl-mode. Permitted ssl-mode values are
       disabled, required (the default), verify_ca and

     * The format of document ID values generated when adding
       documents to a collection has changed. It is still a
       string of 32 hexadecimal digits based on UUID, but the
       order of digits was changed to match the requirement of a
       stable ID prefix.

   Bugs Fixed

     * The C Extension was not installed by some
       Connector/Python installers, such as Solaris .pkg and
       macOS .dmg installer packages. (Bug #24422244)

     * Collection.drop_index("name") incorrectly returned an
       instance of DropCollectionIndexStatement.


The source distribution includes the manual in various formats under
the docs/ folder.

Reporting Bugs

We welcome and appreciate your feedback and bug reports:

On Behalf of the MySQL/Oracle Release Engineering Team,
Balasubramanian Kandasamy

Reply via email to