Hello community, here is the log from the commit of package perl-DBD-mysql for openSUSE:Factory checked in at 2018-12-08 11:20:47 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/perl-DBD-mysql (Old) and /work/SRC/openSUSE:Factory/.perl-DBD-mysql.new.19453 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-DBD-mysql" Sat Dec 8 11:20:47 2018 rev:54 rq:655845 version:4.049 Changes: -------- --- /work/SRC/openSUSE:Factory/perl-DBD-mysql/perl-DBD-mysql.changes 2018-10-01 08:14:38.418074828 +0200 +++ /work/SRC/openSUSE:Factory/.perl-DBD-mysql.new.19453/perl-DBD-mysql.changes 2018-12-08 11:20:51.322811531 +0100 @@ -1,0 +2,15 @@ +Thu Dec 6 15:30:46 UTC 2018 - Stephan Kulow <co...@suse.com> + +- updated to 4.049 + see /usr/share/doc/packages/perl-DBD-mysql/Changes + + 2018-10-25 Daniël van Eeden, Patrick Galbraith, + DBI/DBD community (4.049) + * Fix MariaDB issue #262 + * Various fixes for travis builds + * Fix to issue 187: Don't declare enum_type as static + * Fix regex for removing database from DSN again + * Allow to call $sth->mysql_async_ready and $sth->mysql_async_result more times without discarding result state 201 +- Drop perl-DBD-mysql-MARIADB_BASE_VERSION.patch - code changes obsolete patch + +------------------------------------------------------------------- Old: ---- DBD-mysql-4.048.tar.gz perl-DBD-mysql-MARIADB_BASE_VERSION.patch New: ---- DBD-mysql-4.049.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ perl-DBD-mysql.spec ++++++ --- /var/tmp/diff_new_pack.thXaMW/_old 2018-12-08 11:20:51.818811056 +0100 +++ /var/tmp/diff_new_pack.thXaMW/_new 2018-12-08 11:20:51.822811052 +0100 @@ -12,21 +12,21 @@ # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. -# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# Please submit bugfixes or comments via https://bugs.opensuse.org/ # -%define cpan_name DBD-mysql Name: perl-DBD-mysql -Version: 4.048 +Version: 4.049 Release: 0 +%define cpan_name DBD-mysql Summary: MySQL driver for the Perl5 Database Interface (DBI) License: Artistic-1.0 OR GPL-1.0-or-later Group: Development/Libraries/Perl -Url: https://metacpan.org/release/DBD-mysql -Source0: https://cpan.metacpan.org/authors/id/M/MI/MICHIELB/%{cpan_name}-%{version}.tar.gz +Url: https://metacpan.org/release/%{cpan_name} +Source0: https://cpan.metacpan.org/authors/id/D/DV/DVEEDEN/%{cpan_name}-%{version}.tar.gz Source1: cpanspec.yml -Patch0: perl-DBD-mysql-MARIADB_BASE_VERSION.patch +BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: perl BuildRequires: perl-macros BuildRequires: perl(DBI) >= 1.609 @@ -37,7 +37,6 @@ %{perl_requires} # MANUAL BEGIN BuildRequires: libmariadb-devel -BuildRequires: zlib-devel # MANUAL END %description @@ -51,14 +50,13 @@ %prep %setup -q -n %{cpan_name}-%{version} find . -type f ! -name \*.pl -print0 | xargs -0 chmod 644 -%patch0 -p1 %build perl Makefile.PL INSTALLDIRS=vendor OPTIMIZE="%{optflags}" make %{?_smp_mflags} %check -make %{?_smp_mflags} test +make test %install %perl_make_install ++++++ DBD-mysql-4.048.tar.gz -> DBD-mysql-4.049.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-mysql-4.048/Changes new/DBD-mysql-4.049/Changes --- old/DBD-mysql-4.048/Changes 2018-09-15 13:55:42.000000000 +0200 +++ new/DBD-mysql-4.049/Changes 2018-11-17 19:49:27.000000000 +0100 @@ -1,3 +1,11 @@ +2018-10-25 Daniël van Eeden, Patrick Galbraith, +DBI/DBD community (4.049) +* Fix MariaDB issue #262 +* Various fixes for travis builds +* Fix to issue 187: Don't declare enum_type as static +* Fix regex for removing database from DSN again +* Allow to call $sth->mysql_async_ready and $sth->mysql_async_result more times without discarding result state 201 + 2018-09-15 Daniël van Eeden, Patrick Galbraith, Michiel Beijen, DBI/DBD community (4.048) * Fix corrupted META.json so cpan installations work as expected. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-mysql-4.048/META.json new/DBD-mysql-4.049/META.json --- old/DBD-mysql-4.048/META.json 2018-09-15 14:45:42.000000000 +0200 +++ new/DBD-mysql-4.049/META.json 2018-11-17 19:56:13.000000000 +0100 @@ -4,13 +4,13 @@ "Patrick Galbraith <p...@patg.net>" ], "dynamic_config" : 0, - "generated_by" : "ExtUtils::MakeMaker version 7.34, CPAN::Meta::Converter version 2.150001", + "generated_by" : "ExtUtils::MakeMaker version 7.34, CPAN::Meta::Converter version 2.150010", "license" : [ "perl_5" ], "meta-spec" : { "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", - "version" : "2" + "version" : 2 }, "name" : "DBD-mysql", "no_index" : { @@ -72,7 +72,7 @@ "x_IRC" : "irc://irc.perl.org/#dbi", "x_MailingList" : "mailto:dbi-...@perl.org" }, - "version" : "4.048", + "version" : "4.049", "x_contributors" : [ "Alceu Rodrigues de Freitas Junior <arfrei...@cpan.org>", "Alexandr Ciornii <alexcho...@gmail.com>", @@ -133,5 +133,6 @@ "tokuhirom <tokuhi...@gmail.com>", "zefram <zef...@fysh.org>", "zentooo <ankera...@gmail.com>" - ] + ], + "x_serialization_backend" : "JSON::PP version 2.97001" } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-mysql-4.048/META.yml new/DBD-mysql-4.049/META.yml --- old/DBD-mysql-4.048/META.yml 2018-09-15 14:45:42.000000000 +0200 +++ new/DBD-mysql-4.049/META.yml 2018-11-17 19:56:13.000000000 +0100 @@ -14,7 +14,7 @@ Devel::CheckLib: '1.09' ExtUtils::MakeMaker: '0' dynamic_config: 0 -generated_by: 'ExtUtils::MakeMaker version 7.34, CPAN::Meta::Converter version 2.150001' +generated_by: 'ExtUtils::MakeMaker version 7.34, CPAN::Meta::Converter version 2.150010' license: perl meta-spec: url: http://module-build.sourceforge.net/META-spec-v1.4.html @@ -34,7 +34,7 @@ homepage: http://dbi.perl.org/ license: http://dev.perl.org/licenses/ repository: https://github.com/perl5-dbi/DBD-mysql.git -version: '4.048' +version: '4.049' x_contributors: - 'Alceu Rodrigues de Freitas Junior <arfrei...@cpan.org>' - 'Alexandr Ciornii <alexcho...@gmail.com>' @@ -95,3 +95,4 @@ - 'tokuhirom <tokuhi...@gmail.com>' - 'zefram <zef...@fysh.org>' - 'zentooo <ankera...@gmail.com>' +x_serialization_backend: 'CPAN::Meta::YAML version 0.018' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-mysql-4.048/dbdimp.c new/DBD-mysql-4.049/dbdimp.c --- old/DBD-mysql-4.048/dbdimp.c 2018-09-10 21:35:12.000000000 +0200 +++ new/DBD-mysql-4.049/dbdimp.c 2018-11-17 19:49:08.000000000 +0100 @@ -329,7 +329,7 @@ static enum enum_field_types mysql_to_perl_type(enum enum_field_types type) { - static enum enum_field_types enum_type; + enum enum_field_types enum_type; switch (type) { case MYSQL_TYPE_DOUBLE: @@ -1907,20 +1907,22 @@ (SvTRUE(*svp) ? "utf8" : "latin1")); } -#if (MYSQL_VERSION_ID >= 50723) && (MYSQL_VERSION_ID < MARIADB_BASE_VERSION) +#ifndef MARIADB_BASE_VERSION +#if (MYSQL_VERSION_ID >= 50723) if ((svp = hv_fetch(hv, "mysql_get_server_pubkey", 23, FALSE)) && *svp && SvTRUE(*svp)) { my_bool server_get_pubkey = 1; mysql_options(sock, MYSQL_OPT_GET_SERVER_PUBLIC_KEY, &server_get_pubkey); } #endif -#if (MYSQL_VERSION_ID >= 50600) && (MYSQL_VERSION_ID < MARIADB_BASE_VERSION) +#if (MYSQL_VERSION_ID >= 50600) if ((svp = hv_fetch(hv, "mysql_server_pubkey", 19, FALSE)) && *svp) { STRLEN plen; char *server_pubkey = SvPV(*svp, plen); mysql_options(sock, MYSQL_SERVER_PUBLIC_KEY, server_pubkey); } #endif +#endif /* MARIADB_BASE_VERSION */ if ((svp = hv_fetch(hv, "mysql_ssl", 9, FALSE)) && *svp && SvTRUE(*svp)) { @@ -5544,6 +5546,7 @@ MYSQL_RES* _res; int retval = 0; int htype; + bool async_sth = FALSE; if(! resp) { resp = &_res; @@ -5558,9 +5561,13 @@ D_imp_sth(h); D_imp_dbh_from_sth; dbh = imp_dbh; + async_sth = imp_sth->is_async; + retval = imp_sth->row_num; } if(! dbh->async_query_in_flight) { + if (async_sth) + return retval; do_error(h, 2000, "Gathering asynchronous results for a synchronous handle", "HY000"); return -1; } @@ -5619,6 +5626,8 @@ D_imp_xxh(h); imp_dbh_t* dbh; int htype; + bool async_sth = FALSE; + bool async_active = FALSE; htype = DBIc_TYPE(imp_xxh); @@ -5629,6 +5638,8 @@ D_imp_sth(h); D_imp_dbh_from_sth; dbh = imp_dbh; + async_sth = imp_sth->is_async; + async_active = !!DBIc_ACTIVE(imp_sth); } if(dbh->async_query_in_flight) { @@ -5643,6 +5654,12 @@ return -1; } } else { + if (async_sth) { + if (async_active) + return 1; + do_error(h, 2000, "Asynchronous handle was not executed yet", "HY000"); + return -1; + } do_error(h, 2000, "Handle is not in asynchronous mode", "HY000"); return -1; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-mysql-4.048/lib/Bundle/DBD/mysql.pm new/DBD-mysql-4.049/lib/Bundle/DBD/mysql.pm --- old/DBD-mysql-4.048/lib/Bundle/DBD/mysql.pm 2018-09-15 13:56:08.000000000 +0200 +++ new/DBD-mysql-4.049/lib/Bundle/DBD/mysql.pm 2018-11-17 19:49:27.000000000 +0100 @@ -3,7 +3,7 @@ use strict; use warnings; -our $VERSION = '4.048'; +our $VERSION = '4.049'; 1; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-mysql-4.048/lib/DBD/mysql.pm new/DBD-mysql-4.049/lib/DBD/mysql.pm --- old/DBD-mysql-4.048/lib/DBD/mysql.pm 2018-09-15 13:56:08.000000000 +0200 +++ new/DBD-mysql-4.049/lib/DBD/mysql.pm 2018-11-17 19:49:27.000000000 +0100 @@ -15,7 +15,7 @@ # SQL_DRIVER_VER is formatted as dd.dd.dddd # for version 5.x please switch to 5.00(_00) version numbering # keep $VERSION in Bundle/DBD/mysql.pm in sync -our $VERSION = '4.048'; +our $VERSION = '4.049'; bootstrap DBD::mysql $VERSION; @@ -2002,7 +2002,8 @@ C<mysql_async_result> returns what do or execute would have; that is, the number of rows affected. C<mysql_async_ready> returns true if C<mysql_async_result> will not block, and zero otherwise. They both return -C<undef> if that handle is not currently running an asynchronous query. +C<undef> if that handle was not created with 'async' set to true +or if an asynchronous query was not started yet. C<mysql_fd> returns the file descriptor number for the MySQL connection; you can use this in an event loop. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-mysql-4.048/t/05dbcreate.t new/DBD-mysql-4.049/t/05dbcreate.t --- old/DBD-mysql-4.048/t/05dbcreate.t 2018-09-10 21:35:05.000000000 +0200 +++ new/DBD-mysql-4.049/t/05dbcreate.t 2018-10-07 13:28:35.000000000 +0200 @@ -10,7 +10,7 @@ require 'lib.pl'; # remove database from DSN -$test_dsn =~ s/^DBI:mysql:([^:]+)(:?)/DBI:mysql:$2/; +$test_dsn =~ s/^DBI:mysql:([^:;]+)([:;]?)/DBI:mysql:$2/; my $dbh; eval {$dbh= DBI->connect($test_dsn, $test_user, $test_password, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-mysql-4.048/t/89async-method-check.t new/DBD-mysql-4.049/t/89async-method-check.t --- old/DBD-mysql-4.048/t/89async-method-check.t 2018-09-10 21:35:05.000000000 +0200 +++ new/DBD-mysql-4.049/t/89async-method-check.t 2018-10-07 13:28:35.000000000 +0200 @@ -85,7 +85,7 @@ 2 * @db_safe_methods + 4 * @db_unsafe_methods + 7 * @st_safe_methods + - 2 * @common_safe_methods + + 3 * @common_safe_methods + 2 * @st_unsafe_methods + 3; @@ -123,6 +123,7 @@ $sth->$method(@$args); ok !$sth->errstr, "Testing method '$method' on DBD::mysql::db during asynchronous operation"; ok defined($sth->mysql_async_result); + ok defined($sth->mysql_async_result); } foreach my $method (@st_safe_methods) { @@ -132,9 +133,9 @@ $sth->$method(@$args); ok !$sth->errstr, "Testing method '$method' on DBD::mysql::st during asynchronous operation"; - # statement safe methods clear async state - ok !defined($sth->mysql_async_result), "Testing DBD::mysql::st method '$method' clears async state"; - like $sth->errstr, qr/Gathering asynchronous results for a synchronous handle/; + # statement safe methods cache async result and mysql_async_result can be called multiple times + ok defined($sth->mysql_async_result), "Testing DBD::mysql::st method '$method' for async result"; + ok defined($sth->mysql_async_result), "Testing DBD::mysql::st method '$method' for async result"; } foreach my $method (@st_safe_methods) {