1.22 2022-04-22 - Disable usage of libmysqld.a from MySQL 8.x series - Install README.pod into DBD/MariaDB/ subdirectory (https://github.com/gooddata/DBD-MariaDB/issues/146) - Do not export driver private C functions - Fix typo in error message - Fix compatibility with new MariaDB client and server versions (https://github.com/perl5-dbi/DBD-MariaDB/issues/164) (https://github.com/perl5-dbi/DBD-MariaDB/issues/167) (https://github.com/perl5-dbi/DBD-mysql/issues/333) 1.21 2019-02-27 - Fix skipping test t/14destruct.t - Revert "MySQL bug #93276 is fixed in 8.0.15" (https://github.com/gooddata/DBD-MariaDB/issues/137) 1.20 2019-02-22 - Fix compilation on Windows - Fix tests for MariaDB 10.2.20+, 10.3.12+ and 10.4.1+ - Fix processing of unfetched multi result sets - Cover a protocol design error for multi result statements - Fix $dbh->last_insert_id for async calls and multi result statements - Add more robust solution to prevent deinitializing OpenSSL functions (https://github.com/gooddata/DBD-MariaDB/issues/119) - Set $sth->{Active} to off after fetching all data (https://github.com/jhthorsen/mojo-mysql/pull/47#issuecomment-448095164) - Fix $sth->rows for async, multi results and when error occurred - Fix disconnect_all() method to work also during global destruction phase - Address MySQL bug #93276 which is fixed in 8.0.15 1.11 2019-01-02 - Fix breakage of Net::SSLeay / OpenSSL library after DBI disconnect (https://github.com/gooddata/DBD-MariaDB/issues/119) 1.10 2018-12-05 - Fix spelling error (https://github.com/gooddata/DBD-MariaDB/issues/82) - Fix MinGW build (https://github.com/gooddata/DBD-MariaDB/issues/91) - Fix DBI SQL types (https://github.com/gooddata/DBD-MariaDB/issues/109) - Fix overflow in mariadb_thread_id and mariadb_warning_count attributes - Fix parsing LIMIT keyword (case-insensitive + allow whitespaces around) - Fix allocating and releasing memory when using Embedded Server - Fix escaping placeholders when sql_mode is NO_BACKSLASH_ESCAPES - Fix output from Unicode related tests - Fix setting client_flag for mysql_real_connect() - Fix calling DBI->data_sources() without second argument - Fix $dbh->last_insert_id() for multi and prepared server side statements - Use dbd_db_do6 API from DBI 1.642 when available - Add support for a new DBI method call $sth->last_insert_id() - Add sanity check for Makefile.PL --testsocket, --testhost and --testport - Report error when $dbh->{mariadb_ssl_cipher} attribute is not supported - Check that correct number of bind parameters are in $dbh->do() - Update workarounds for bugs in MariaDB client library (some were fixed) - Allow to set zero read, write and connect timeout (which means infinite) - Set default session collation to utf8mb4_unicode_ci for real Unicode - Change minimal MySQL client version to 4.1.8 (older is incompatible) - Skip tests which cannot be started on current system/architecture - Move testrules.yml to t/ directory - Miscellaneous fixes in tests 1.00 2018-07-12 - Do not remove test name and line from test error messages - Update documentation for mariadb_length and mariadb_max_length - Fix retrieving ODBC attribute SQL_USER_NAME via $dbh->get_info() - Do not show internal DBI packages on cpan - Fix checking for error value from mariadb_embedded options - Makefile.PL shows error message when no client library was specified - Fix checking if integer value should be signed or unsigned 0.90_01 2018-06-26 (beta) - This is a new DBD::MariaDB driver, fork of DBD::mysql 4.041 with fixes - Attributes and methods with mysql_* prefix were renamed to mariadb_* [1. Security fixes] - CVE-2017-10788: Fix use-after-free after calling mysql_stmt_close() - CVE-2017-3302: Add workaround for defect of leaking dangling pointers - CVE-2018-2767: Handle SSL problems of MySQL and MariaDB clients [2. Client/server changes] - New support for MySQL 8.0+ clients - New support for MariaDB 10.2.4+ clients - New support for MariaDB 10.3.0+ clients - New support for MariaDB Connector/C 2.3.0+ clients - New support for MariaDB Connector/C 3.0.2+ clients - Minimal DBI version is now 1.608 - Minimal MySQL client library version is now 4.1.3 - Minimal MySQL server version is now 4.1.0 - Requirement for utf8mb4 (preferred) or utf8(mb3) connection charset [3. Functional changes] - Full Unicode support for all Perl strings in all methods according to Perl Unicode model (same as in recent DBD::Pg and DBD::SQLite drivers), activated by default, improperly written applications may have problems - Embedded Server support is now in main DBD::MariaDB module and enabled at compile time if MariaDB/MySQL linking library supports it, additional module DBD::MariaDBEmb was therefore removed - Fix lot of bugs related to Unicode, mysql utf8mb4 charset and login - Remove support for Latin1 encoding [4. Client compatibility changes] - Fix initialization of MySQL/MariaDB client library, fix MariaDB 10.2.4+ - Fix crashing when prepared statements are used - Do not access internal MYSQL* and MYSQL_STMT* structures [5. Statement handling changes] - Stop parsing SQL statements (exception are client side placeholders) - Fix support for client side placeholder replacing with MySQL 5.7.6+ - Fix $dbh->quote() method for MySQL 5.7.6+ and MySQL 8.0+ clients - Fix error handling for statements with LIMIT and OFFSET - Fix processing statements with nul bytes - Fix calculation of buffer size for client side placeholder replacing - Fix checking if bind value is mysql number and if needs to be quoted - Check that correct number of bind parameters were supplied [6. Miscellaneous changes] - Fix fetching numeric values of types with fixed-length of decimals - Fix ChopBlanks for binary fields - Fix $dbh->ping() and $dbh->last_insert_id() with MySQL 5.7+ and 8.0+ - Fix tests so can be run in parallel (via testrules.yml) - Fix retrieving $sth attributes after $sth->fetchall* call - Fix usage of normal eval, $@ and error handling - Fix and simplify code which uses number of returned or affected rows - Fix usage of boolean variables - Fix creating perl scalars with unsigned numbers - Fix autoreconnect for server side prepared statements - Fix and cleanup ODBC attributes returned by $dbh->get_info() method - Fix support for IMP_DATA - Fix propagating server error code and messages to DBI - Remove usage of %llu and %lld for PerlIO_printf - Remove usage of stringified eval - Remove old undocumented, legacy and hidden options and methods - Remove nonsense prototypes for object methods - Distinguish between undef (NULL) and "" for mysql_real_connect() - Check for valid and supported attribute names - Cleanup Makefile.PL options - Hide passwords in trace logs - Use DBI dbd_st_execute_iv() API when available - Add support for mariadb_conn_attrs attribute with MariaDB 10+ clients - Disable autoreconnect by default also for mod_perl - Implement $dbh->disconnect_all() method - Makefile.PL now depends on Devel::CheckLib 1.12 (ensure correct linking) [7. List of fixed issues] - https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=866821#17 - https://github.com/gooddata/DBD-MariaDB/issues/13 - https://github.com/perl5-dbi/DBD-mysql/issues/78 - https://github.com/perl5-dbi/DBD-mysql/issues/110 - https://github.com/perl5-dbi/DBD-mysql/issues/120 - https://github.com/perl5-dbi/DBD-mysql/issues/126 - https://github.com/perl5-dbi/DBD-mysql/issues/139 - https://github.com/perl5-dbi/DBD-mysql/issues/140 - https://github.com/perl5-dbi/DBD-mysql/issues/149 - https://github.com/perl5-dbi/DBD-mysql/issues/165 - https://github.com/perl5-dbi/DBD-mysql/issues/167 - https://github.com/perl5-dbi/DBD-mysql/issues/169 - https://github.com/perl5-dbi/DBD-mysql/issues/170 - https://github.com/perl5-dbi/DBD-mysql/issues/182 - https://github.com/perl5-dbi/DBD-mysql/issues/185 - https://github.com/perl5-dbi/DBD-mysql/issues/187 - https://github.com/perl5-dbi/DBD-mysql/issues/197 - https://github.com/perl5-dbi/DBD-mysql/issues/201 - https://github.com/perl5-dbi/DBD-mysql/issues/203 - https://github.com/perl5-dbi/DBD-mysql/issues/204 - https://github.com/perl5-dbi/DBD-mysql/issues/207 - https://github.com/perl5-dbi/DBD-mysql/issues/211 - https://github.com/perl5-dbi/DBD-mysql/issues/212 - https://github.com/perl5-dbi/DBD-mysql/issues/214 - https://github.com/perl5-dbi/DBD-mysql/issues/215 - https://github.com/perl5-dbi/DBD-mysql/issues/218 - https://github.com/perl5-dbi/DBD-mysql/issues/219 - https://github.com/perl5-dbi/DBD-mysql/issues/220 - https://github.com/perl5-dbi/DBD-mysql/issues/221 - https://github.com/perl5-dbi/DBD-mysql/issues/228 - https://github.com/perl5-dbi/DBD-mysql/issues/232 - https://github.com/perl5-dbi/DBD-mysql/issues/244 - https://github.com/perl5-dbi/DBD-mysql/issues/249 - https://github.com/perl5-dbi/DBD-mysql/issues/250 - https://github.com/perl5-dbi/DBD-mysql/issues/251 - https://github.com/perl5-dbi/DBD-mysql/pull/133 - https://github.com/perl5-dbi/DBD-mysql/pull/138 - https://github.com/perl5-dbi/DBD-mysql/pull/223 - https://github.com/perl5-dbi/DBD-mysql/pull/224 - https://github.com/perl5-dbi/DBD-mysql/pull/225#issuecomment-357522793 - https://github.com/perl5-dbi/DBD-mysql/pull/227 - https://github.com/perl5-dbi/DBD-mysql/pull/230 - https://github.com/perl5-dbi/DBD-mysql/pull/245 - https://github.com/perl5-dbi/DBD-mysql/pull/246 - https://rt.cpan.org/Public/Bug/Display.html?id=25590 - https://rt.cpan.org/Public/Bug/Display.html?id=53130 - https://rt.cpan.org/Public/Bug/Display.html?id=60987 - https://rt.cpan.org/Public/Bug/Display.html?id=62516 - https://rt.cpan.org/Public/Bug/Display.html?id=87428 - https://rt.cpan.org/Public/Bug/Display.html?id=97541 - https://rt.cpan.org/Public/Bug/Display.html?id=103306 - https://rt.cpan.org/Public/Bug/Display.html?id=106527 - https://rt.cpan.org/Public/Bug/Display.html?id=108650 - https://rt.cpan.org/Public/Bug/Display.html?id=110983 - https://rt.cpan.org/Public/Bug/Display.html?id=118837 - https://rt.cpan.org/Public/Bug/Display.html?id=118977 - https://rt.cpan.org/Public/Bug/Display.html?id=119902 - https://rt.cpan.org/Public/Bug/Display.html?id=119904 - https://rt.cpan.org/Public/Bug/Display.html?id=120141 - https://rt.cpan.org/Public/Bug/Display.html?id=120709 - https://rt.cpan.org/Public/Bug/Display.html?id=122065 - https://rt.cpan.org/Public/Bug/Display.html?id=122429 - https://rt.cpan.org/Public/Bug/Display.html?id=122431 - https://rt.cpan.org/Public/Bug/Display.html?id=122541 - https://rt.cpan.org/Public/Bug/Display.html?id=123826 - https://rt.cpan.org/Public/Bug/Display.html?id=125517