Re: MySQL Community Server 8.0.3-rc has been released (part 1/2)
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
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
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
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