Re: MySQL Community Server 8.0.3-rc has been released (part 1/2)

2017-09-28 Thread Sebastien FLAESCH

Can you please stop using C++ comments in header files designed for C 
programming?

/opt3/dbs/mys/8.0/include/mysql.h:36:1: error: C++ style comments are not 
allowed in ISO C90 [-Werror]
 // Small extra definitions to avoid pulling in my_inttypes.h in client code.
 ^
/opt3/dbs/mys/8.0/include/mysql.h:36:1: error: (this will be reported only once 
per input file) [-Werror]
In file included from /opt3/dbs/mys/8.0/include/mysql.h:68:0,
 from mys.c:42:
/opt3/dbs/mys/8.0/include/binary_log_types.h:68:8: error: C++ style comments 
are not allowed in ISO C90 [-Werror]
 #endif // __cplusplus
^
/opt3/dbs/mys/8.0/include/binary_log_types.h:68:8: error: (this will be 
reported only once per input file) [-Werror]
In file included from /opt3/dbs/mys/8.0/include/mysql.h:69:0,
 from mys.c:42:
/opt3/dbs/mys/8.0/include/mem_root_fwd.h:30:9: error: C++ style comments are 
not allowed in ISO C90 [-Werror]
 #endif  // MEM_ROOT_FWD_INCLUDED
 ^
/opt3/dbs/mys/8.0/include/mem_root_fwd.h:30:9: error: (this will be reported 
only once per input file) [-Werror]
In file included from /opt3/dbs/mys/8.0/include/mysql.h:83:0,
 from mys.c:42:
/opt3/dbs/mys/8.0/include/mysql_time.h:29:1: error: C++ style comments are not 
allowed in ISO C90 [-Werror]
 // Do not not pull in the server header "my_inttypes.h" from client code.
 ^

...

Seb


--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/mysql



MySQL Connector/Java 8.0.8-dmr has been released

2017-09-28 Thread Balasubramanian Kandasamy

Dear MySQL users,

MySQL Connector/J 8.0.8 Development Release is a development milestone
release for the 8.0.x series.

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-8.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/J 8.0.8 dmr, see the "Development
Releases" tab at http://dev.mysql.com/downloads/connector/j/

Enjoy!

Changes in MySQL Connector/J 8.0.8 (2017-09-28, Development Milestone)

   Version 8.0.8 Development Milestone is the latest development
   release 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.

 * Functionality Added or Changed

 * Bugs Fixed

   Functionality Added or Changed

 * Packaging: RPM and Debian packages for installing
   Connector/J are now available from the Connector/J
   Download page
   (http://dev.mysql.com/downloads/connector/j/).

 * X DevAPI: Connector/J has implemented a new interface of
   the X Dev API that allows the retrieving, adding,
   removing, and updating of persistent session continuation
   data. The implementation includes the following:

  + A SessionConfig object that holds the information
    for a session configuration data set.

  + A PersistenceHandler interface that allows custom
    implementations of persistence handlers.

  + A PasswordHandler interface that allows custom
    implementations of password handling code.

  + A SessionConfigManager class for editing and
    fetching Sessionconfig objects, and defining
    instances of the PersistenceHandler and
    PasswordHandler.
   See MySQL Connector/J X DevAPI Reference
   (http://dev.mysql.com/doc/dev/connector-j) for more
   details.

 * X DevAPI: A new connection property, xdevapi.auth, has
   been added for specifying the authentication mechanism
   for connections using the X Protocol. Allowed values are
   MYSQL41, PLAIN, and EXTERNAL. See the entry for the new
   property in Configuration Properties
 
(http://dev.mysql.com/doc/connector-j/8.0/en/connector-j-reference-configuration-properties.html)
   for details.

 * X DevAPI: To support row locks
(http://dev.mysql.com/doc/refman/5.7/en/innodb-locking-reads.html)
   for the find() method of the X DevAPI, the
   FindStatement and the SelecStatement interfaces have been
   extended with the following methods:

  + lockExclusive(), which works like SELECT ... FOR
    UPDATE for relational tables.

  + lockShared(), which works like the SELECT ... LOCK
    IN SHARED MODE (for MySQL 5.7) or SELECT ... FOR
    SHARE (for MySQL 8.0) for relational tables.
   See MySQL Connector/J X DevAPI Reference
   (http://dev.mysql.com/doc/dev/connector-j) for more
   details.

 * X DevAPI: Connector/J now supports the expanded syntax
   for the IN and NOT IN operator, which can check if a
   sub-expression is contained inside another one; for
   example:
   // For documents
   coll.find("$.b IN [100,101,102]").execute();
   coll.find("'some text with 5432' in $.a").execute();
   coll.find("1 in [1, 2, 4]").execute();
   coll.find("{'a': 3} not in {'a': 1, 'b': 2}").execute();
   // For relational tables
   tbl.select().where("3 not in [1, 2, 4]").execute();
   tbl.select().where("'qqq' not in $.a").execute();
   tbl.select().where("{'a': 1} in {'a': 1, 'b': 2}").execute();


 * X DevAPI: A number of changes have been implemented for
   the "drop" methods for the X DevAPI:

  + Removed dropCollection(schemaName, collectionName)
    and dropTable(schemaName, tableName) from Session.

  + Added dropCollection(collectionName) and
    dropTable(tableName) to Schema.

  + Schema.dropView() now executes immediately and
    returns void; also, the ViewDrop interface has been
    removed.

  + Collection.dropIndex() now executes immediately and
    returns void; also the DropCollectionIndexStatement
    interface has been removed.

  + The "drop" methods now succeed even if the objects
    to be dropped do not exist.

 * Conversion from the MySQL TIME data to java.sql.Date is
   now s

MySQL Connector/Python 8.0.5 DMR has been released

2017-09-28 Thread Prashant Tekriwal

Dear MySQL users,


MySQL Connector/Python 8.0.5 dmr is the sixth 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
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.5 dmr, see the "Development
Releases" tab at http://dev.mysql.com/downloads/connector/python/

Enjoy!

Changes in MySQL Connector/Python 8.0.5 (2017-09-28, Development Milestone)

 * Packaging Notes

 * Functionality Added or Changed

   Packaging Notes

 * MySQL Connector/Python packages are now available in two
   formats: Pure Python packages that contain only Python
   files, and packages that contain the Python files plus
   the C Extension and C Protobuf extension. Exception
   platforms are Solaris, macOS, and Windows, for which
   packages containing the Python files and C extensions are
   available but not pure Python packages. (Bug #26648417)

   Functionality Added or Changed

 * MySQL Connector/Python now supports connections to MySQL
   accounts that use the caching_sha2_password
   authentication plugin (see SHA-2 Pluggable Authentication
   (http://dev.mysql.com/doc/refman/8.0/en/caching-sha2-plug
   gable-authentication.html)). This requires MySQL server
   version 8.0.3 or higher. It also requires use of a secure
   connection because Connector/Python does not support RSA
   encryption for password exchange.

 * MySQL Connector/Python now supports an auth connection
   option to specify the authentication methanism. Permitted
   values are plain, mysql41, and external. The option name
   and value are not case sensitive.
   If the authentication mechanism is not specified, it
   defaults to plain for secure (TLS) or Unix socket
   connections, or mysql41 for insecure connections.

 * MySQL Connector/Python now supports a pure Python
   implementation of Protobuf. Consequently, the Protobuf C
   extension has become optional. Connector/Python will use
   the Python implementation if the C extension is not
   available. The Protobuf Python package is required if it
   is desired not to use the C extension.
   The version requirements are Protobuf C++ 2.6.0 or
   higher, Protobuf Python 3.0.0 or higher.

 * A mysqlx.sessions variable is now exposed to scripts that
   can be used for session-related tasks such as saving or
   loading session configuration information.

 * These methods have been added for Collection:
   add_or_replace_one(), get_one(), replace_one(), and
   remove_one().

 * These methods have been added for FindStatement and
   SelectStatement, to enable shared and exclusive locks to
   be acquired: lock_shared() and lock_exclusive().

 * There is support for new forms of comparisons that use
   the IN operator:
item IN list
item IN document path
dict IN dict

   The left-hand-side value must be castable to the JSON
   type.

Documentation
-

Online:http://dev.mysql.com/doc/connector-python/en/index.html
The source distribution includes the manual in various formats under
the docs/ folder.

Reporting Bugs
--

We welcome and appreciate your feedback and bug reports:
http://bugs.mysql.com/

On Behalf of the MySQL/Oracle Release Engineering Team,
Prashant Tekriwal


--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/mysql



MySQL Connector/C++ 8.0.6-dmr has been released

2017-09-28 Thread daniel . horecki

Dear MySQL users,

MySQL Connector/C++ 8.0.6-dmr is the next development milestone release
(dmr) of the MySQL Connector/C++ 8.0 series.

Connector/C++ 8.0 can be used to access MySQL implementing Document
Store or in a traditional way, using SQL queries. It allows writing
both C++ applications using X DevAPI or plain C applications using
XAPI.

To learn more about how to write applications using X DevAPI, see
"X DevAPI User Guide"

  https://dev.mysql.com/doc/x-devapi-userguide/en/

and "X DevAPI Reference" at

  https://dev.mysql.com/doc/dev/connector-cpp/devapi_ref.html

For more information about using plain C XAPI see "XAPI Reference" at

  https://dev.mysql.com/doc/dev/connector-cpp/xapi_ref.html

For generic information on using Connector/C++ 8.0, see

  https://dev.mysql.com/doc/dev/connector-cpp/

Note

Connector/C++ 8.0 requires MySQL Server version 5.7.12 or higher with
X Plugin enabled. For general documentation about how to get started
using MySQL as a document store, see "Using MySQL as a Document Store"

  https://dev.mysql.com/doc/refman/5.7/en/document-store.html

To download MySQL Connector/C++ 8.0.6-dmr, see the "Development Releases"
tab at

  https://dev.mysql.com/downloads/connector/cpp/


Changes in MySQL Connector/C++ 8.0.6-dmr (Not yet released, Development
Milestone)

   Functionality Added or Changed

 * A session now can acquire a lock for documents or rows
   returned by find or select statements, to prevent the
   returned values from being changed from other sessions
   while the lock is held (provided that appropriate
   isolation levels are used). Locks can be requested
   several times for a given find or select statement. Only
   the final request is acted upon. An acquired lock is held
   until the end of the current transaction.
   For X DevAPI, CollectionFind and TableSelect implement
   .lockExclusive() and .lockShared() methods, which request
   exclusive or shared locks, respectively, on returned
   documents or rows. These methods can be called after
   .bind() and before the final .execute().
   For XAPI, the new mysqlx_set_locking(stmt, lock) function
   can be called to request exclusive or shared locks on
   returned documents or rows, or to release locks. The lock
   parameter can be ROW_LOCK_EXCLUSIVE, ROW_LOCK_SHARED, or
   ROW_LOCK_NONE. The first two values specify a type of
   lock to be acquired. ROW_LOCK_NONE removes any row
   locking request from the statement.

 * For X DevAPI, a new auth option can be specified in
   connection strings or URIs to indicate the authentiation
   mechanism. Permitted values are PLAIN and MYSQL41. The
   option name and value are not case sensitive. The
   SessionSettings::Options object supports a new AUTH
   enumeration, with the same permitted values.
   For XAPI, a new auth setting can be specified in
   connection strings or URIs to indicate the authentiation
   mechanism. Permitted values are PLAIN and MYSQL41. The
   option name and value are not case sensitive. A new
   MYSQLX_OPT_AUTH constant is recognized by the
   mysqlx_options_set() function, with permitted values
   MYSQLX_AUTH_PLAIN and MYSQLX_AUTH_MYSQL41.
   If the authentication mechanism is not specified, it
   defaults to PLAIN for secure (TLS) connections, or
   MYSQL41 for insecure connections. For Unix socket
   connections, the default is PLAIN.

 * These drop API changes were made:

  + Session::dropTable(schema, table) and
Session::dropCollection(schema, coll) were replaced
by Schema::dropTable(table) and
Schema::dropCollection(coll), respectively.

  + Schema::dropView() is now a direct-execute method
returning void rather than Executable.

  + All dropXXX() methods succeed if the dropped objects
do not exist.

 * The following Collection methods were added:
   addOrReplaceOne(), getOne(), replaceOne(), and
   removeOne().
   The addOrReplaceOne() and replaceOne() methods work only
   with MySQL 8.0.3 and higher servers. For older servers,
   they report an error.

 * Boolean expressions used in queries and statements now
   support a variant of the IN operator for which the right
   hand side operand is any expression that evaluates to an
   array or document.
   X DevAPI example:
coll.find("'car' IN $.toys").execute();

   XAPI example:
res = mysqlx_collection_find(coll, "'car' IN $.toys");

   In this form, the IN operator is equivalent to the
   JSON_CONTAINS() SQL function.

 * On Unix and Unix-like systems, Unix domain socket files
   are now supported as a connection transport for X DevAPI
   or XAPI connections. The socket file can be given in a
   connection string or in the session creation options.
   X DevAPI examples:
XSessi