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
http://dev.mysql.com/doc/dev/connector-net.
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
http://dev.mysql.com/doc/refman/5.7/en/document-store.html.
To download MySQL Connector/NET 8.0.10-rc, see the “Development
Releases” tab at
http://dev.mysql.com/downloads/connector/net/
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
Gipson Pulla