Dear MySQL users,
MySQL Connector/Net 8.0.10 is the first release candidate of MySQL
Connector/Net to add 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/index.html. For more
information about how the X DevAPI is implemented in Connector/Net, see
Please note that the X DevAPI requires at least 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/Net 8.0.10-rc, see the “Development
Releases” tab at
Changes in MySQL Connector/Net 8.0.10 (2018-01-30, Release Candidate) Functionality Added or Changed * The .NET Core 2.0 implementation now supports the following connection-string options: AutoEnlist, InteractiveSession, Logging, Replication, and UseUsageAdvisor. For more information about the options, see Connector/Net Connection-String Options Reference (http://dev.mysql.com/doc/connector-net/en/connector-net-connection-options.html). (Bug #27297337) * X DevAPI: In the process of refining the definition of the X DevAPI to cover the most relevant usage scenarios, the following API components have been removed from the X DevAPI implementation for MySQL Connector/Net: + API components that support session configurations The MySqlX.XDevAPI.Config namespace and all members of the namespace. + API components that support views CreateView(), DropView(), and ModifyView() methods from the MySqlX.XDevAPI.Schema class. ViewAlgorithm, ViewSqlSecurityEnum, and ViewCheckOptionEnum enumerations from the MySqlX.DataAccess namespace. Note The Table.IsView property remains available for query operations. * Support for .NET Core 2.0 and .NET Standard 2.0 has been added (.NET Core 1.1 support continues). With .NET Core 2.0, most of the common ADO.NET classes are available for use, such as: + System.Data.DataTable, System.Data.DataColumn, and System.Data.DataRow + System.Data.DataSet + System.Data.Common.DataAdapter * Support for Entity Framework Core 2.0 has been added (Entity Framework 1.1 support continues). Currently, the MySQL Connector/Net implementation excludes the following 2.0 features: + Modeling: table splitting, owned types, model-level query filters, database scalar function mapping, self-contained type configuration for code first. + High performance: DbContext pooling and explicitly compiled queries. + Change tracking: attach can track a graph of new and existing entities. + Query: improved LINQ translation, group-join improvements, string interpolation in FromSql and ExecuteSqlCommand, new EF.Functions.Like(). + Database management: pluralization hook for DbContext scaffolding. + Others: only one provider per model, consolidated logging and diagnostics. * X DevAPI: MySQL Connector/Net now supports setting and releasing named transaction savepoints, which can be assigned a name explicitly or by default using the savepoint_(uuid) format. In addition, a transaction can be rolled back to a named savepoint. New methods were added to the MySqlX.XDevAPI.BaseSession class to implement corresponding SQL statements using the X Protocol: + SetSavepoint() and SetSavepoint(name) correspond to the SAVEPOINT statement. + ReleaseSavepoint() corresponds to the RELEASE SAVEPOINT statement. + RollbackTo() corresponds to the ROLLBACK TO statement. All errors generated by MySQL when one of the new methods is called will be returned by MySQL Connector/Net. * X DevAPI: The MySqlX.XDevAPI.CRUD.ModifyStatement.Patch method was added to enable the inclusion of JSON-like objects within Collection.Modify() operations that describe the changes to apply to all documents matching the condition. * Support for the caching_sha2_password authentication plugin through the classic MySQL protocol was added. Support through the X Protocol is limited to secure connections only (sslmode=required). Caching SHA-2 pluggable authentication offers faster authentication than basic SHA-256 authentication. A new and related connection option, AllowPublicKeyRetrieval, was also added. * X DevAPI: The MySqlX.XDevAPI.Collection.CreateIndex method implementation was modified to enable the inclusion of a JSON document that defines the index to be created. Index-definition details can include the fields affected, data types, and so on. Bugs Fixed * X DevAPI: When the PLAIN authentication option was used to make a secure connection, the database name was excluded from the authenticating data and the database value was not set. PLAIN authentication is the default option for connections made with TLS or Unix Sockets. (Bug #27098974, Bug #88427) * Boolean values within a JSON document were improperly stored as strings. (Bug #26837112) * Invoking the MySql.Web.Security.MySqlWebSecurity.CreateUserAndAccount method with valid arguments, including additionalUserAttributes as an object with key/value pairs, returned an out-of-range exception. Thanks to Stein Setvik for contributing to the fix. (Bug #25046364) * The default character set and encoding were not set properly when making a connection to MySQL 5.6 and 5.7 servers configured to use the utf8 character set. (Bug #23257011) * SSL connections made to a single MySQL instance could not be disconnected and created repeatedly without restarting the client application to clear the half-open sockets. (Bug #20393654, Bug #75022) Nuget packages are available at: https://www.nuget.org/packages/MySql.Data/8.0.10-rc https://www.nuget.org/packages/MySql.Web/8.0.10-rc https://www.nuget.org/packages/MySql.Data.EntityFramework/8.0.10-rc https://www.nuget.org/packages/MySql.Data.EntityFrameworkCore/8.0.10-rc https://www.nuget.org/packages/MySql.Data.EntityFrameworkCore.Design/8.0.10-rc Enjoy and thanks for the support!
On Behalf of the MySQL/ORACLE RE Team