Dear MySQL users, MySQL Connector/Python 8.0.11 is the first GA release version 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 http://dev.mysql.com/doc/x-devapi-userguide/en/. For more information about how the X DevAPI is implemented in MySQL Connector/Python, and its usage, see http://dev.mysql.com/doc/dev/connector-python. 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 http://dev.mysql.com/doc/refman/5.7/en/document-store.html. To download MySQL Connector/Python 8.0.11, see the "General Available (GA) releases" tab at http://dev.mysql.com/downloads/connector/python/ Enjoy! Changes in MySQL Connector/Python 8.0.11 (2018-04-19) * Functionality Added or Changed * Bugs Fixed Functionality Added or Changed * X DevAPI: Previously, when documents without an _id attribute were added to a collection, Connector/Python automatically generated _id for them. Now a MySQL 8 server generates the _id attribute unless a document already contains one. The generated IDs resulting from a document-add operation can be obtained using the new get_generated_ids() method. This capability requires a MySQL 8.0 server. Because MySQL 5.7 does not support document ID generation, the document-add operation returns an error if you do not define the _id's. Incompatibility: The get_generated_ids() method replaces the now removed get_document_ids(). (Bug #27627366) * Added NOWAIT and SKIP_LOCKED support to the ReadStatement.lock_shared() and ReadStatement.lock_exclusive() methods. Example usage: lock_exclusive(mysqlx.LockContention.SKIP_LOCKED). * The C extension (cext) is now enabled by default, as the use_pure option changed from True to False by default. If the C extension is not available on the system then the Python implementation is used instead, and use_pure is set to True. * Added the X DevAPI SHA256_MEMORY authentication mechanism. Example mysqlx.get_session() usages: ?auth=SHA256_MEMORY via a connection string, "auth": mysqlx.Auth.SHA256_MEMORY via a dictionary, or auth=mysqlx.Auth.SHA256_MEMORY via method parameters. Bugs Fixed * Warnings are now stored as a list of dictionaries instead of a list of tuples. In other words, get_warnings() returns the likes of [{"level": _level_, "code": _code_, "msg": _msg_}] instead of [(_level_, _code_, _msg_))]. (Bug #27639119) * The mapped MySQL Server error codes were synced with MySQL Server 8.0.11. (Bug #27634885) * Removed upsert functionality from InsertStatement as it can only be used by collections, so upsert remains available to AddStatement. (Bug #27589450) * MySQLConverter.escape() functionality was added to create_schema()'s count mechanism. (Bug #27528842) * When using prepared statements, string columns were returned as bytearrays instead of strings. The returned value is now a string decoded using the connection's charset (defaults to 'utf8'), or as a bytearray if this conversion fails. (Bug #27364914) * The result from JSON_TYPE() was returned as a bytearray instead of a string. The returned value is now a string decoded using the connection's charset (defaults to 'utf8'), or as a bytearray if this conversion fails. (Bug #24948205, Bug #83516) * JSON integer values were cast to bytes in Python instead of integers. (Bug #24948186, Bug #83513) On Behalf of Oracle/MySQL Release Engineering Team Prashant Tekriwal
↧
MySQL Connector/Python 8.0.11 has been released (no replies)
↧