MySQL Router 8.0.4-rc has been released

Dear MySQL users,

MySQL Router 8.0.4-rc is the first release candidate for MySQL Router
8.0 series.

The MySQL Router is a new building block for high availability solutions
based on MySQL InnoDB clusters.

By taking advantage of the new Group Replication technology, and
combined with the MySQL Shell, InnoDB clusters provide an integrated
solution for high availability and scalability for InnoDB based MySQL
databases, that does not require advanced MySQL expertise.

The deployment of applications with high availability requirements is
greatly simplified by MySQL Router. MySQL client connections are
transparently routed to online members of a InnoDB cluster, with MySQL
server outages and cluster reconfigurations being automatically handled
by the Router.

To download MySQL Router 8.0.4-rc, see the “Development Releases” tab at
http://dev.mysql.com/downloads/router. Package binaries are available
for several platforms and also as a source code download.

Documentation for MySQL Router can be found at
http://dev.mysql.com/doc/mysql-router/en/

Enjoy!

Changes in MySQL Router 8.0.4 (2018-02-07, Release Candidate)


   Functionality Added or Changed

     * Bootstrapping now accepts the --config option and reads
       the [logger] level option's definition. For example, to enable
       bootstrap's debugging mode:
      
       [logger]
       level = DEBUG

       (Bug #27158098)

     * The default ttl metadata option (Time To Live, in
       seconds) changed from 300 to 5. (Bug #26990955, Bug #88140)

     * The new connect_timeout and read_timeout options were
       added. These are defined under the [DEFAULT] namespace and affect
       internal operations, such as metadata server connections. (Bug
       #26877946)

     * Bootstrap now accepts any member of an InnoDB cluster and
       automatically finds and reconnects to a writable primary.  (Bug
       #25489509)

     * The optional routing_strategy configuration option was
       added. The available values are first-available, next-available,
       round-robin, and round-robin-with-fallback.  Previously, these
       strategies were described as scheduling modes by the mode
       configuration option where the read-write mode defaults to the
       first-available strategy, and the read-only mode defaults to the
       round-robin strategy. This preserves previous behavior for these
       modes. (Bug #86261, Bug #26045094, Bug #25852803)

   Bugs Fixed

     * With logging_folder undefined during bootstrap, all logs
       were written to STDERR. Now, normal bootstrap logs are written to
       STDOUT and debug bootstrap logs are written to STDERR. (Bug
       #27232410)

     * Errors were changed to warnings for the following
       conditions: when Router could not connect to a particular
       metadata server, and when Router could not update the default
       metadata cache replicaset. Under these conditions, Router does
       not stop running because there are multiple metadata servers and
       replicasets. (Bug #27226627)

     * Configuring MySQL Router with sockets would create a
       socket that was only accessible by the MySQL Router user.  (Bug
       #27179456, Bug #88667)

     * The commercial .deb packages were missing the
       mysqlrouter_plugin_info tool. (Bug #27122367)

     * The apt purge process did not remove the
       /var/{lib,log,run}/mysqlrouter directories. (Bug #26955232)

     * Bootstrapping would fail when connecting to a MySQL
       Server under high load if an associated bootstrap query took
       longer than 5 seconds. The 5 second read timeout was increased
       from 5 to 30. In addition, command line options were added to
       change the connect and read timeout values.  (Bug #26877946)

     * Improved error text when bootstrapping against a MySQL
       server 8.0 instance that was not part of InnoDB cluster.  (Bug
       #26846040)

     * Router assumed that a resulting socket from accept()ing a
       socket would be always blocking. On Solaris and Windows this
       assumption is not valid, and this resulted in broken connections
       with large result sets. (Bug #26834769)

     * It was difficult to distinguish the "Too many
       connections" between MySQL Server and MySQL Router, so the Router
       variant now reads as "Too many connections to MySQL Router". (Bug
       #26593909)

     * The bundled README.txt was missing Protobuf and Rapid
       JSON references. (Bug #25619654)

     * Some builds were missing the sample configuration file,
       including the Solaris and Oracle Linux binaries. (Bug #25530691)

     * Router would check IPv4 or IPv6 addresses, but not both.
       Now it goes through the list of addresses and first tries to bind
       to an IPv4 address and if it fails then it goes through the same
       address list and tries to bind to an IPv6 address. (Bug
       #25127667)

     * The generated error message from passing in an empty file
       to --master-key-file (or using an empty mysqlrouter.key) was
       improved. (Bug #25111926)

     * Defining multiple logger sections in the configuration
       file would emit an unclear error. Defining multiple logger
       sections is not allowed. (Bug #25095565)

     * Where destinations=metadata-cache, the role attribute was
       not used or validated; only the mode configuration option was
       used. (Bug #25061854)

     * Failed bootstrap commands would leave a generated
       mysqlrouter.conf.tmp file on the system. (Bug #24930442)

     * On Ubuntu Linux, documentation related files were
       installed under both /usr/share/mysql-router/docs and
       /usr/share/doc/mysql-router. Now they are only installed under
       /usr/share/doc/mysql-router for community builds and
       /usr/share/doc/mysql-router-commercial for commercial builds.
       (Bug #24765509)

     * The maximum number of concurrent client connections was
       increased from about 500 to over 5000, a limit now dependent on
       the operation system. To achieve this, select() based fd event
       calls were replaced by poll() (or WSAPoll() on Windows). (Bug
       #22661705, Bug #80260)

     * The --ssl-key and --ssl-cert optional bootstrap
       command-line options were added. They directly use their MySQL
       client's counterparts, and specify the client-side certificate
       and private key to facilitate client-side authentication. This is
       useful when the root account used during bootstrap was created
       with REQUIRE X509, which requires the client to authenticate
       itself when logging in.

On behalf of Oracle MySQL Release Team
Nawaz Nazeer Ahamed

MySQL Connector/Python 8.0.6-rc has been released

Dear MySQL users,

MySQL Connector/Python 8.0.6-rc is the first release candidate 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.6-rc, see the “Development
Releases” tab at http://dev.mysql.com/downloads/connector/python/

Enjoy!

Changes in MySQL Connector/Python 8.0.6 (2018-02-01, Release
Candidate)

Functionality Added or Changed

* A new bdist_wheel distutils command was added to build a
Connector/Python wheel package.
A new –static option was added that enables static
linking for the C extension variant.

* 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 Connector/Python:

+ API components that support session configurations.
The mysqlx.config namespace and all members of the
namespace.

+ The create_table, drop_table, create_view,
drop_view, and alter_view methods from the Schema
class.

* A Pylint test was added for the mysqlx module.

* A new Modify.patch() method was added to the X DevAPI as
a way to change several document attributes in one
operation; otherwise known as a JSON Merge Patch via RFC
7386.

* The create_index() method was added to the Collection
API.

* The transaction API was extended to allow setting
savepoints. The following methods have been added to the
Session object:

+ set_savepoint([name]): executes the SAVEPOINT name
SQL statement to generate a savepoint. If a name is
not provided (or None), one is generated.
The SAVEPOINT statement sets a named transaction
savepoint with a name of identifier. If the current
transaction has a savepoint with the same name, the
old savepoint is deleted and a new one is set.

+ release_savepoint(name): executes the RELEASE name
SQL statement to release a savepoint.
The RELEASE SAVEPOINT statement removes the named
savepoint from the set of savepoints of the current
transaction. No commit or rollback occurs. It
returns an error if the savepoint does not exist.

+ rollback_to(name): executes the ROLLBACK TO name SQL
statement to rollback a savepoint.
The ROLLBACK TO identifier command reverts the state
of the transaction back to what was when executed
the command SAVEPOINT identifier.
Names passed to these functions are checked to make sure
that the name is not null or an empty string. Names such
as ”, “”, , and so on, are not allowed even though
they are allowed by the server. For more information, see
SAVEPOINT, ROLLBACK TO SAVEPOINT, and RELEASE SAVEPOINT
Syntax
(http://dev.mysql.com/doc/refman/5.7/en/savepoint.html).

Bugs Fixed

* On Enterprise Linux 7, SSL connections could fail due to
the Python 2.7.9 or higher requirement. Since EL7
backported the SSL module from Python 3 (PEP466) into its
default Python 2.7.5, SSL connections are now enabled on
EL7. (Bug #27368032)

* MySQL Server 8.0 utf8mb4 collations were missing from
Connector/Python. (Bug #27277964)

* The LICENSE and README files were missing from the C
extension ( “cext”) builds. (Bug #26912787)

* Python 3.6 is now officially supported and tested.

On Behalf of Oracle/MySQL Release Engineering Team
Prashant Tekriwal

MySQL Connector/Java 8.0.9-rc has been released

Dear MySQL users,

MySQL Connector/Java 8.0.9-rc is the first Release Candidate
of the 8.0 branch of MySQL Connector/J, providing an insight into
upcoming features. It is suitable for use with MySQL Server versions
5.5, 5.6, 5.7, and 8.0. It supports the Java Database Connectivity
(JDBC) 4.2 API.

This release includes the following new features and changes, also
described in more detail on

https://dev.mysql.com/doc/relnotes/connector-j/8.0/en/news-8-0-9.html

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.
This change makes it easy and intuitive to decide which client version
to use for which server version.

As always, we recommend that you check the “CHANGES” file in the download
archive to be aware of changes in behavior that might affect your application.

To download MySQL Connector/Java 8.0.9-rc, see the “Development
Releases” tab at http://dev.mysql.com/downloads/connector/j/

Enjoy!

Changes in MySQL Connector/J 8.0.9 (2018-01-30, Release
Candidate)

Functionality Added or Changed

* 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 Connector/J:

+ Components that support DDLs for views, including
the createView(), dropView(), and modifyView()
methods.

+ Components that support DDLS for tables, including
the createTable(), dropTable(), and modifyTable()
methods.

+ Components that support session configurations,
including the SessionConfig object, the
PersistenceHandler interface, the PasswordHandler
interface, and the SessionConfigManager class.

* X DevAPI: Added the setSavepoint(), rollbackTo(), and
releaseSavepoint() methods to the Session interface to
support the SAVEPOINT
(http://dev.mysql.com/doc/refman/8.0/en/savepoint.html),
ROLLBACK TO SAVEPOINT
(http://dev.mysql.com/doc/refman/8.0/en/savepoint.html),
and RELEASE SAVEPOINT
(http://dev.mysql.com/doc/refman/8.0/en/savepoint.html)
statements. See MySQL Connector/J X DevAPI Reference
(http://dev.mysql.com/doc/dev/connector-j) for more
details.

* X DevAPI: A new patch() function has been added to the
ModifyStatement interface. The function accepts an
JSON-like object describing document changes and applies
them to documents matched by the modify() filter. See
MySQL Connector/J X DevAPI Reference
(http://dev.mysql.com/doc/dev/connector-j) for more
details.

* X DevAPI: The createIndex() method for the Collection
interface now has a new syntax. See MySQL Connector/J X
DevAPI Reference
(http://dev.mysql.com/doc/dev/connector-j) for more
details.

* X DevAPI: Added the following methods for single-document
operations in the X DevAPI:

+ replaceOne()

+ addOrReplaceOne()

+ getOne()

+ removeOne()
See MySQL Connector/J X DevAPI Reference
(http://dev.mysql.com/doc/dev/connector-j) for more
details.

* X DevAPI: Setters and getters methods have been added for
the configuration properties with the MysqlDataSource,
MysqlXADataSource, and MysqlConnectionPoolDataSource
classes.

* X DevAPI: The connection property enabledTLSProtocols can
now be used to select the allowed TLS versions for an X
Protocol connection to the server.

* Connector/J now supports the new caching_sha2_password
authentication plugin, which is the default
authentication plugin for MySQL 8.0.4 and later (see
Caching SHA-2 Pluggable Authentication
(http://dev.mysql.com/doc/refman/8.0/en/caching-sha2-plug
gable-authentication.html) for details).
Note
To authenticate accounts with the caching_sha2_password
plugin, either a secure connection to the server using
SSL
(http://dev.mysql.com/doc/connector-j/8.0/en/connector-j-reference-using-ssl.html)
or an unencrypted connection that supports password exchange
using an RSA key pair (enabled by setting one or both of the
connecting properties allowPublicKeyRetrieval and
serverRSAPublicKeyFile) must be used.
Because earlier versions of Connector/J 8.0 do not
support the caching_sha2_password authentication plugin
and therefore will not be able to connect to accounts
that authenticate with the new plugin (which might
include the root account created by default during a new
installation of a MySQL 8.0 Server), it is highly
recommended that you upgrade now to Connector/J 8.0.9, to
help ensure that your applications continue to work
smoothly with the latest MySQL 8.0 Server.

* Connector/J now takes advantage of the MySQL Server 8.0
data dictionary by making the connection property
useInformationSchema true by default; this makes
Connector/J, by default, access the data dictionary more
efficiently by querying tables in the INFORMATION_SCHEME.
See INFORMATION_SCHEMA and Data Dictionary Integration
(http://dev.mysql.com/doc/refman/8.0/en/data-dictionary-information-schema.html)
for details. Users can still set useInformationSchema to false,
but for MySQL 8.0.3 and later, some data dictionary queries might
then fail, due to deprecations of older data dictionary features.

* In the past, query texts were always passed as strings to
QueryInterceptor methods, even if the texts were not
actually used by them. Now, only suppliers for the texts
are passed, and the texts are only extracted by get()
calls on the suppliers.

Bugs Fixed

* The connection property nullNamePatternMatchesAll, when
set to false (which was the default value), caused some
DatabaseMetaData methods to throw an error when a null
search string was used with them. The behavior was not
compliant with the JDBC specification, which requires
that a search criterion be ignored when a null search
string is used for it. The connection property has now
been removed from Connector/J 8.0. (Bug #26846249, Bug
#87826)

* Trying to print the query in a PreparedStatement using
the toString() method after it has been closed resulted
in an exception (No operations allowed after statement
closed) being thrown. (Bug #26748909)

* When working with MySQL Server 8.0, an update or delete
statement for a CONCUR_UPDATABLE ResultSet failed when
the ResultSet’s primary keys included a boolean column
and the character set used was not latin1. (Bug
#26266731)

* Connector/J failed to recognize a server greeting error
it received during a handshake with the server and parsed
the error message as a normal greeting packet, causing an
ArrayIndexOutOfBoundsException to be thrown. (Bug
#24924097)

On Behalf of the MySQL/Oracle Release Engineering Team,
Hery Ramilison

MySQL Connector/NET 6.9.11 GA has been released

Dear MySQL users,

MySQL Connector/Net 6.9.11 is a maintenance release for the 6.9.x series
of the .NET driver for MySQL. It can be used for production
environments.

It is appropriate for use with MySQL server versions 5.5-5.7.

It is now available in source and binary form from
http://dev.mysql.com/downloads/connector/net/#downloadsandmirrorsites
(note that not all mirror sites may be up to date at this point-if you
can’t find this version on some mirror, please try again later or choose
another download site.)

Changes in MySQL Connector/Net 6.9.11 (2018-01-26, General
Availability)

   Functionality Added or Changed

     * All demos, code samples, and test-debug scripts are now
       optional to install, whereas before these items were installed by
       default. (Bug #19248623)

   Bugs Fixed

     * Instances of the DataReader class did not close
       connections implicitly as expected when CommandBehavior was set
       to CloseConnection. This fix ensures that the connection is
       closed properly when the DataReader object no longer exists. (Bug
       #27277013)

     * When a decimal column was defined with a scale of zero,
       such as DECIMAL(8, 0), the value of the NumericPrecision field
       returned by the MySqlDataReader.GetSchemaTable method was lower
       by one. For example, it returned 7 instead of 8 as expected. (Bug
       #26954812, Bug #88058)

     * The data table returned by the
       MySqlDataReader.GetSchemaTable method had an inaccurate value of
       zero assigned to the ColumnSize field for LONGTEXT and LONGBLOB
       data types, and also indicated that the IsLong field value was
       false when it should have returned true. (Bug #26876592, Bug
       #87876)

     * The MySqlDataReader.GetSchemaTable method returned
       different column-size values when used with different character
       sets. (Bug #26876582, Bug #87868)

     * Support for making a secure connection to a server
       configured to use TLSv1.2 was limited by external factors. (Bug
       #25689154)

     * 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)

The documentation is available at:
http://dev.mysql.com/doc/connector-net/en/

Nuget packages are available at:
https://www.nuget.org/packages/MySql.Data/6.9.11
https://www.nuget.org/packages/MySql.Data.Entity/6.9.11
https://www.nuget.org/packages/MySql.Fabric/6.9.11
https://www.nuget.org/packages/MySql.Web/6.9.11

Enjoy and thanks for the support!

On behalf of the MySQL Release Team,
Nawaz Nazeer Ahamed

MySQL Connector/NET 6.10.6 GA has been released

Dear MySQL users,

MySQL Connector/Net 6.10.6 is the third GA release with .NET Core
now supporting various connection-string options.

To download MySQL Connector/Net 6.10.6 GA, see the “Generally Available
(GA) Releases” tab at http://dev.mysql.com/downloads/connector/net/

Changes in MySQL Connector/Net 6.10.6 (2018-01-25, General
Availability)

   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)

   Bugs Fixed

     * When a decimal column was defined with a scale of zero,
       such as DECIMAL(8, 0), the value of the NumericPrecision field
       returned by the MySqlDataReader.GetSchemaTable method was lower
       by one. For example, it returned 7 instead of 8 as expected. (Bug
       #26954812, Bug #88058)

     * The data table returned by the
       MySqlDataReader.GetSchemaTable method had an inaccurate value of
       zero assigned to the ColumnSize field for LONGTEXT and LONGBLOB
       data types, and also indicated that the IsLong field value was
       false when it should have returned true. (Bug #26876592, Bug
       #87876)

     * The MySqlDataReader.GetSchemaTable method returned
       different column-size values when used with different character
       sets. (Bug #26876582, Bug #87868)

     * Support for making a secure connection to a server
       configured to use TLSv1.2 was limited by external factors. (Bug
       #25689154)

     * 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/6.10.6
https://www.nuget.org/packages/MySql.Web/6.10.6
https://www.nuget.org/packages/MySql.Data.Entity/6.10.6
https://www.nuget.org/packages/MySql.Data.EntityFrameworkCore/6.10.6
https://www.nuget.org/packages/MySql.Data.EntityFrameworkCore.Design/6.10.6

Enjoy and thanks for the support!

On behalf of the MySQL Release Team,
Nawaz Nazeer Ahamed

MySQL Connector/NET 6.10.5 GA has been released

Dear MySQL users,

MySQL Connector/Net 6.10.5 is the second GA release and the first to
introduce .NET Core 2.0 and Entity Framework Core 2.0 support.

To download MySQL Connector/Net 6.10.5 GA, see the “Generally Available
(GA) Releases” tab at http://dev.mysql.com/downloads/connector/net/


Changes in MySQL Connector/Net 6.10.5 (2017-12-08, General
Availability)

   Functionality Added or Changed

     * 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.


Nuget packages are available at:

https://www.nuget.org/packages/MySql.Data/6.10.5
https://www.nuget.org/packages/MySql.Web/6.10.5
https://www.nuget.org/packages/MySql.Data.Entity/6.10.5
https://www.nuget.org/packages/MySql.Data.EntityFrameworkCore/6.10.5
https://www.nuget.org/packages/MySql.Data.EntityFrameworkCore.Design/6.10.5

Enjoy and thanks for the support!

On behalf of the MySQL Release Team,
Nawaz Nazeer Ahamed

MySQL Connector/NET 6.10.4 GA has been released

Dear MySQL users,

MySQL Connector/Net 6.10.4 GA is the first release which introduces
Online API reference documentation and independent configuration of
Character set and collation in EF Core models.

To download MySQL Connector/Net 6.10.4 GA, see the “Development
Releases” tab at http://dev.mysql.com/downloads/connector/net/


Changes in MySQL Connector/Net 6.10.4 (2017-10-25, General
Availability)

   Functionality Added or Changed

     * Online API reference documentation is now available for
       MySQL Connector/Net. This new format replaces the files
       compressed and deployed in a binary format with the extension
       .CHM (Compiled HTML) that previously shipped with each connector
       release.

     * The deprecated UseProcedureBodies connection-string
       option was removed. Instead, the CheckParameters option can be
       used to check stored parameters against the server.

     * EF Core: Character set and collation now are
       independently configurable in EF Core models. The values can be
       set at both the entity and entity-property levels by using either
       data annotation (new attributes) or new methods added to the
       code-first fluent API using the
       MySql.Data.EntityFrameworkCore.Extensions namespace.
       Specifically, the new items added for setting character set and
       collation are:

          + Attributes:[MySqlCharset] and [MySqlCollation]

          + Methods: ForMySQLHasCharset() and
            ForMySQLHasCollation()

   Bugs Fixed

     * Assemblies within NuGet packages were not fully signed.
       (Bug #26739307)

     * EF Core: Inserting a date of '0000-00-00' into a column
       when also setting Convert Zero Datetime=True in the connection
       string of a class that derives from DbContext produced an
       exception, instead of performing the expected conversion. (Bug
       #26552753, Bug #87120)

     * EF Core: Foreign key relations were not consistently
       created within the entity model generated by scaffolding a MySQL
       database. (Bug #26339430)

     * 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)


Nuget packages are available at:

https://www.nuget.org/packages/MySql.Data/6.10.4
https://www.nuget.org/packages/MySql.Web/6.10.4
https://www.nuget.org/packages/MySql.Data.Entity/6.10.4
https://www.nuget.org/packages/MySql.Data.EntityFrameworkCore/6.10.4
https://www.nuget.org/packages/MySql.Data.EntityFrameworkCore.Design/6.10.4

Enjoy and thanks for the support!

On behalf of the MySQL Release Team,
Nawaz Nazeer Ahamed

MySQL Connector/NET 6.10.3 rc has been released

Dear MySQL users,

MySQL Connector/Net 6.10.3 rc is the fourth release which supports
Scaffold-DbContext, that enables the creation of corresponding model
classes from an existing database that are compatible with Entity
Framework (EF) Core 1.1.

To download MySQL Connector/Net 6.10.3 rc, see the “Development
Releases” tab at http://dev.mysql.com/downloads/connector/net/


Changes in MySQL Connector/Net 6.10.3 (2017-08-18, Release
Candidate)

   Known limitation of this release:

   The use of the SSL protocol is restricted to TCP connections.
   Connections using Unix sockets, named pipes, and shared memory do not
   support SSL mode.

   Functionality Added or Changed

     * The following methods are available for use with EF Core
       in asynchronous command and connection operations:

          + Microsoft.EntityFrameworkCore.DbContext.AddAsync

          + Microsoft.EntityFrameworkCore.DbContext.AddRangeAsync

          + Microsoft.EntityFrameworkCore.DbContext.FindAsync

          + Microsoft.EntityFrameworkCore.DbContext.SaveChangesAsync

          + Microsoft.EntityFrameworkCore.Infrastructure.
            DatabaseFacade.EnsureDeletedAsync

          + Microsoft.EntityFrameworkCore.Infrastructure.
            DatabaseFacade.EnsureCreatedAsync

          + Microsoft.EntityFrameworkCore.DbContext.ToListAsync

     * Support for connections using Unix sockets was extended
       to include MySQL servers deployed on the Linux host operating
       system in .NET Core scenarios. To specify a Unix socket
       connection, set the value of the Server connection-string option
       to the path of the socket file and the Protocol option to unix.
       For example:
"server=/path/to/socket;protocol=unix;user=root;password=mypass"

     * The AutoEnlist and IncludeSecurityAsserts
       connection-string options are not appropriate for use by
       applications that target .NET Core and now return an error when
       used.

     * EF Core: Support for explicit loading was added. Explicit
       loading is an object-relational mapper (O/RM) pattern introduced
       in EF Core 1.1.0, which enables .NET developers to explicitly
       load related data from the database at a later time.

     * EF Core: Support for scaffolding a DbContext from
       multiple databases was added. With multiple databases (or schemas
       of tables) specified, the resulting entity classes are created
       within a single context.

       EF Core CLI usage example:
       dotnet ef dbcontext scaffold "connection-string"
       MySql.Data.EntityFrameworkCore --schema world --schema sakila

       Package Manager Console (Visual Studio) usage example:
       Scaffold-DbContext "connection-string"
       MySql.Data.EntityFrameworkCore -Schemas world,sakila

     * The following connection-string options are not currently
       supported for use by applications that target .NET Core and now
       return an error when used:

          + SharedMemoryName

          + IntegratedSecurity

          + PipeName

          + Logging

          + UseUsageAdvisor

          + UsePerformanceMonitor

          + InteractiveSession

          + Replication

   Bugs Fixed

     * EF Core: Some methods in the DbContext class were not
       supported for use with asynchronous operations. (Bug #26448321,
       Bug #84814) 

Nuget packages are available at:

https://www.nuget.org/packages/MySql.Data/6.10.3-rc
https://www.nuget.org/packages/MySql.Web/6.10.3-rc
https://www.nuget.org/packages/MySql.Data.Entity/6.10.3-rc
https://www.nuget.org/packages/MySql.Data.EntityFrameworkCore/6.10.3-rc
https://www.nuget.org/packages/MySql.Data.EntityFrameworkCore.Design/6.10.3-rc

Enjoy and thanks for the support!

On behalf of the MySQL Release Team,
Nawaz Nazeer Ahamed

MySQL Connector/NET 6.10.2 beta has been released

Dear MySQL users,

MySQL Connector/Net 6.10.2 beta is the third release which supports Scaffold-DbContext, that enables the creation of corresponding model classes from an existing database that are compatible with Entity Framework (EF) Core 1.1.

To download MySQL Connector/Net 6.10.2 beta, see the “Development Releases” tab at http://dev.mysql.com/downloads/connector/net/

Changes in MySQL Connector/Net 6.10.2 (2017-07-04, Beta)

Functionality Added or Changed

* The previously deprecated Old Syntax (OldSyntax, Use Old Syntax, UseOldSyntax) connection-string option was removed.

* EF Core: Tables from an existing database can be specified with command-line tools when scaffolding a DbContext. The MySQL provider generates an entity type for each table in the DbContext. By default, all tables in the database are included unless a list of tables is provided.

For Package Manager Console Tools, use the Scaffold-DbContext command with the -Table <tablename, tablename, …> common parameter.

For .NET Core CLI Tools, use the dotnet ef dbcontext scaffold command with the
–table option for each table to add.

* EF Core: The MySQL provider now creates a new schema when the entity.ToTable method within a derived DbContext class specifies the name of a nonexistent schema.

* EF Core: The Connector/Net implementation of EF Core now includes extended maximum lengths for several string data types to enable the use of longer strings.

* Connector/Net no longer supports MySQL Fabric.

Bugs Fixed

* EF Core: The –force option when used with the dotnet ef dbcontext scaffold command did not overwrite the existing output files as expected. (Bug #25493508)

* EF Core: The Database First command used to create a DbContext class emitted an error when used with either the sakila or world database sample. (Bug #25493336)

* EF Core: The Database First feature did not support the following data types: BINARY, VARBINARY, MEDIUMBLOB, LONGBLOB, SET, DATE, TIME, and YEAR. (Bug #25493209)

* EF Core: JSON data exchange format was not supported by the Database First feature. (Bug #25493143)

* EF Core: Database First support produced an error when the existing MySQL database included one or more views. (Bug #25493086)

* EF Core: Using System.ComponentModel.DataAnnotations.Schema.TableAttribute to initialize a new class instance that specified the name of an existing MySQL table produced incorrect mappings of table and column names. (Bug #25394223, Bug #84423)

Nuget packages are available at:

https://www.nuget.org/packages/MySql.Data/6.10.2-beta https://www.nuget.org/packages/MySql.Web/6.10.2-beta https://www.nuget.org/packages/MySql.Data.EntityFrameworkCore/6.10.2-beta https://www.nuget.org/packages/MySql.Data.EntityFrameworkCore.Design/6.10.2-beta

Enjoy and thanks for the support!

On behalf of the MySQL Release Team,
Nawaz Nazeer Ahamed

MySQL Connector/NET 7.0.7 m6 development has been released

MySQL Connector/Net 7.0.7 is the fourth development release that expands cross-platform support to Linux and OS X when using Microsoft’s .NET Core framework. Now,
.NET developers can use the X DevAPI with .NET Core and Entity Framework Core
(EF Core) 1.0 to create server applications that run on Windows, Linux and OS X.
We are very excited about this change and really look forward to your feedback on it!

MySQL Connector/Net 7.0.7 is also the sixth development release 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.

Note

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 7.0.7 M6, see the “Development
Releases” tab at http://dev.mysql.com/downloads/connector/net/

Functionality Added or Changed

  • X DevAPI: Added support for Internet Protocol version 6 (IPv6) addresses. Host names can now resolve as IPv4 or IPv6 addresses.
  • X DevAPI: Connection string syntax is now identical to the URI scheme, which provides a cross-product syntax for defining the connection data to establish a session.
  • X DevAPI: Added new methods to the Schema class to create, alter, and drop views. Usage notes include:
    • Views created with the Schema.CreateView().DefinedAs() method chain are
      supported for use with the table Select method, but are not supported with the collection Find method.
    • A collection view created in the database by some mechanism other than the CreateView method is not defined as a view by Table.IsView.
    • Query objects assigned to a view with the CreateView method are static, even when the underlying query changes.

Nuget

Packages are available at:

https://www.nuget.org/packages/MySql.Data/7.0.7-m6
https://www.nuget.org/packages/MySql.Web/7.0.7-m6
https://www.nuget.org/packages/MySql.Data.Entity/7.0.7-m6
https://www.nuget.org/packages/MySql.Data.EntityFrameworkCore/7.0.7-m6

Enjoy and thanks for the support!

MySQL/Oracle Release Engineering Team