[gentoo-commits] repo/gentoo:master commit in: dev-perl/DBD-mysql/, dev-perl/DBD-mysql/files/

2017-07-21 Thread Kent Fredric
commit: 7a0bdecc24d03a76129348278503ca00d617322a
Author: Kent Fredric  gentoo  org>
AuthorDate: Fri Jul 21 21:50:15 2017 +
Commit: Kent Fredric  gentoo  org>
CommitDate: Fri Jul 21 21:50:15 2017 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7a0bdecc

dev-perl/DBD-mysql: -r1 bump for fix for type conversions for amvisd

Earlier versions break type conversions that amvisd uses, and though
the fix for this landed in 4.42.0, 4.42.0 also introduced a more serious
change that breaks existing code, and the entire thing was reverted
for 4.43.0

So this is borrowing debians patch for 4.41.0

Package-Manager: Portage-2.3.6, Repoman-2.3.2

 dev-perl/DBD-mysql/DBD-mysql-4.41.0-r1.ebuild  | 68 ++
 .../files/4.041-amvis-type-conversions.patch   | 47 +++
 2 files changed, 115 insertions(+)

diff --git a/dev-perl/DBD-mysql/DBD-mysql-4.41.0-r1.ebuild 
b/dev-perl/DBD-mysql/DBD-mysql-4.41.0-r1.ebuild
new file mode 100644
index 000..1c899123f57
--- /dev/null
+++ b/dev-perl/DBD-mysql/DBD-mysql-4.41.0-r1.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+DIST_AUTHOR=MICHIELB
+DIST_VERSION=4.041
+inherit eutils perl-module
+
+DESCRIPTION="MySQL driver for the Perl5 Database Interface (DBI)"
+
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc 
~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos 
~sparc-solaris ~x64-solaris ~x86-solaris"
+
+# embedded=on disables ssl support
+# https://metacpan.org/source/MICHIELB/DBD-mysql-4.036/dbdimp.c#L1886
+REQUIRED_USE="?? ( embedded ssl )"
+IUSE="embedded test +ssl"
+
+RDEPEND=">=dev-perl/DBI-1.609.0
+   virtual/libmysqlclient:=
+   embedded? ( virtual/mysql[embedded] )
+"
+DEPEND="${RDEPEND}
+   virtual/perl-ExtUtils-MakeMaker
+   virtual/perl-Data-Dumper
+   test? (
+   dev-perl/Test-Deep
+   >=virtual/perl-Test-Simple-0.900.0
+   virtual/perl-Time-HiRes
+   )
+"
+PATCHES=(
+   "${FILESDIR}/${DIST_VERSION}-no-dot-inc.patch"
+   "${FILESDIR}/${DIST_VERSION}-amvis-type-conversions.patch"
+)
+src_configure() {
+   if use test; then
+   myconf="${myconf} --testdb=test \
+   --testhost=localhost \
+   --testuser=test \
+   --testpassword=test"
+   fi
+   myconf="${myconf} --$(usex ssl ssl nossl)"
+   use embedded && myconf="${myconf} --force-embedded 
--embedded=mysql_config"
+   perl-module_src_configure
+}
+
+# Parallel testing is broken as 2 tests create the same table
+# and mysql isn't acid compliant and can't limit visibility of tables
+# to a transaction...
+DIST_TEST="do"
+
+src_test() {
+   einfo
+   einfo "If tests fail, you have to configure your MySQL instance to 
create"
+   einfo "and grant some privileges to the test user."
+   einfo "You can run the following commands at the MySQL prompt: "
+   einfo "> CREATE USER 'test'@'localhost' IDENTIFIED BY 'test';"
+   einfo "> CREATE DATABASE test;"
+   einfo "> GRANT ALL PRIVILEGES ON test.* TO 'test'@'localhost';"
+   einfo
+   sleep 5
+   perl_rm_files t/pod.t t/manifest.t
+   # Don't be a hero and try to do EXTENDED_TESTING=1 unless you can figure
+   # out why 60leaks.t fails
+   perl-module_src_test
+}

diff --git a/dev-perl/DBD-mysql/files/4.041-amvis-type-conversions.patch 
b/dev-perl/DBD-mysql/files/4.041-amvis-type-conversions.patch
new file mode 100644
index 000..041ba0a496a
--- /dev/null
+++ b/dev-perl/DBD-mysql/files/4.041-amvis-type-conversions.patch
@@ -0,0 +1,47 @@
+From: Pali 
+Date: Fri, 24 Feb 2017 19:51:36 +0100
+Subject: [PATCH] Fix type conversions
+
+Calling SvNV() for magical scalar is not enough for float type conversion.
+It caused problem for Amavis in tainted mode -- all float values were zero.
+On the other hand SvIV() and SvUV() seems to work fine. To be sure that
+correct value of float is in scalar use sv_setnv() with explicit NV float
+value. Similar code is changed also for integers IV/UV.
+
+This patch should fix reported Amavis bug:
+https://github.com/perl5-dbi/DBD-mysql/issues/78
+
+See also reported perl bug about SvNV():
+https://rt.perl.org/Public/Bug/Display.html?id=130801
+
+Bugs: https://github.com/perl5-dbi/DBD-mysql/issues/78
+Bugs-Debian: https://bugs.debian.org/856064
+
+--- a/dbdimp.c
 b/dbdimp.c
+@@ -4250,8 +4250,7 @@
+ switch (mysql_to_perl_type(fields[i].type)) {
+ case MYSQL_TYPE_DOUBLE:
+   /* Coerce to dobule and set scalar as NV */
+-  (void) SvNV(sv);
+-  SvNOK_only(sv);
++  sv_setnv(sv, SvNV(sv));
+   break;
+ 
+ case MYSQL_TYPE_LONG:
+@@ -4259,13 +4258,11 @@
+   /* Coerce to integer and set scalar as UV resp. IV */
+   if 

[gentoo-commits] repo/gentoo:master commit in: dev-perl/DBD-mysql/, dev-perl/DBD-mysql/files/

2017-06-10 Thread Kent Fredric
commit: 1bc4c8bb8aebffe75e54c261e115080498143cc6
Author: Kent Fredric  gentoo  org>
AuthorDate: Sat Jun 10 17:32:10 2017 +
Commit: Kent Fredric  gentoo  org>
CommitDate: Sat Jun 10 18:31:55 2017 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1bc4c8bb

dev-perl/DBD-mysql: Fix tests for '.' in @INC re bug #613608

Apply modified patche(s) from upstream to fix dependency on '.'
in @INC during tests.

Bug: https://bugs.gentoo.org/613608
Package-Manager: Portage-2.3.6, Repoman-2.3.2

 dev-perl/DBD-mysql/DBD-mysql-4.41.0.ebuild  |   2 +-
 dev-perl/DBD-mysql/DBD-mysql-4.42.0.ebuild  |   2 +-
 dev-perl/DBD-mysql/files/4.041-no-dot-inc.patch | 103 ++
 dev-perl/DBD-mysql/files/4.042-no-dot-inc.patch | 178 
 4 files changed, 283 insertions(+), 2 deletions(-)

diff --git a/dev-perl/DBD-mysql/DBD-mysql-4.41.0.ebuild 
b/dev-perl/DBD-mysql/DBD-mysql-4.41.0.ebuild
index 928fc38218f..25b0b306ccc 100644
--- a/dev-perl/DBD-mysql/DBD-mysql-4.41.0.ebuild
+++ b/dev-perl/DBD-mysql/DBD-mysql-4.41.0.ebuild
@@ -30,7 +30,7 @@ DEPEND="${RDEPEND}
virtual/perl-Time-HiRes
)
 "
-
+PATCHES=( "${FILESDIR}/${DIST_VERSION}-no-dot-inc.patch" )
 src_configure() {
if use test; then
myconf="${myconf} --testdb=test \

diff --git a/dev-perl/DBD-mysql/DBD-mysql-4.42.0.ebuild 
b/dev-perl/DBD-mysql/DBD-mysql-4.42.0.ebuild
index 91fa6f7a5e0..2e632cb8f4a 100644
--- a/dev-perl/DBD-mysql/DBD-mysql-4.42.0.ebuild
+++ b/dev-perl/DBD-mysql/DBD-mysql-4.42.0.ebuild
@@ -31,7 +31,7 @@ DEPEND="${RDEPEND}
virtual/perl-Time-HiRes
)
 "
-
+PATCHES=( "${FILESDIR}/${DIST_VERSION}-no-dot-inc.patch" )
 src_configure() {
if use test; then
myconf="${myconf} --testdb=test \

diff --git a/dev-perl/DBD-mysql/files/4.041-no-dot-inc.patch 
b/dev-perl/DBD-mysql/files/4.041-no-dot-inc.patch
new file mode 100644
index 000..f26837f548a
--- /dev/null
+++ b/dev-perl/DBD-mysql/files/4.041-no-dot-inc.patch
@@ -0,0 +1,103 @@
+From 497224cad8b6469913c61ee856228bc1d0280980 Mon Sep 17 00:00:00 2001
+From: Pali 
+Date: Mon, 17 Apr 2017 21:38:58 +0200
+Subject: [PATCH] Fix tests on Perl On 5.25.10 or greater with
+ -Ddefault_inc_excludes_dot
+
+Some tests do not include dot in %INC and fails with error:
+Can't locate t/lib.pl in @INC
+
+Fixes: https://rt.cpan.org/Public/Bug/Display.html?id=120709
+---
+ t/40server_prepare_crash.t | 3 ++-
+ t/rt25389-bin-case.t   | 3 ++-
+ t/rt50304-column_info_parentheses.t| 3 ++-
+ t/rt61849-bind-param-buffer-overflow.t | 3 ++-
+ t/rt75353-innodb-lock-timeout.t| 3 ++-
+ t/rt83494-quotes-comments.t| 3 ++-
+ 11 files changed, 22 insertions(+), 11 deletions(-)
+
+diff --git a/t/40server_prepare_crash.t b/t/40server_prepare_crash.t
+index e3777b9..d04eb9c 100644
+--- a/t/40server_prepare_crash.t
 b/t/40server_prepare_crash.t
+@@ -5,7 +5,8 @@ use Test::More;
+ use DBI;
+ 
+ use vars qw($test_dsn $test_user $test_password);
+-require "t/lib.pl";
++use lib 't', '.';
++require "lib.pl";
+ 
+ my $dbh = DbiTestConnect($test_dsn, $test_user, $test_password, { PrintError 
=> 1, RaiseError => 1, AutoCommit => 0, mysql_server_prepare => 1, 
mysql_server_prepare_disable_fallback => 1 });
+ plan skip_all => "You must have MySQL version 4.1.3 and greater for this test 
to run" if $dbh->{mysql_clientversion} < 40103 or $dbh->{mysql_serverversion} < 
40103;
+diff --git a/t/rt25389-bin-case.t b/t/rt25389-bin-case.t
+index cbda8b7..3aee41b 100644
+--- a/t/rt25389-bin-case.t
 b/t/rt25389-bin-case.t
+@@ -4,7 +4,8 @@ use warnings;
+ use DBI;
+ 
+ use vars qw($test_dsn $test_user $test_password);
+-require "t/lib.pl";
++use lib 't', '.';
++require "lib.pl";
+ 
+ use Test::More;
+ 
+diff --git a/t/rt50304-column_info_parentheses.t 
b/t/rt50304-column_info_parentheses.t
+index 76f9eff..6c3aac5 100644
+--- a/t/rt50304-column_info_parentheses.t
 b/t/rt50304-column_info_parentheses.t
+@@ -4,7 +4,8 @@ use warnings;
+ use DBI;
+ 
+ use vars qw($test_dsn $test_user $test_password $state);
+-require "t/lib.pl";
++use lib 't', '.';
++require "lib.pl";
+ 
+ use Test::More;
+ 
+diff --git a/t/rt61849-bind-param-buffer-overflow.t 
b/t/rt61849-bind-param-buffer-overflow.t
+index 82baf2f..a3c75de 100644
+--- a/t/rt61849-bind-param-buffer-overflow.t
 b/t/rt61849-bind-param-buffer-overflow.t
+@@ -5,7 +5,8 @@ use Test::More;
+ use DBI;
+ 
+ use vars qw($test_dsn $test_user $test_password);
+-require "t/lib.pl";
++use lib 't', '.';
++require "lib.pl";
+ 
+ my $INSECURE_VALUE_FROM_USER = "";
+ 
+diff --git a/t/rt75353-innodb-lock-timeout.t b/t/rt75353-innodb-lock-timeout.t
+index a1f437d..95694db 100644
+--- a/t/rt75353-innodb-lock-timeout.t
 b/t/rt75353-innodb-lock-timeout.t
+@@ -5,7 +5,8 @@ use Test::More;
+ use DBI;
+ 
+ use vars qw($test_dsn $test_user $test_password);
+-require 

[gentoo-commits] repo/gentoo:master commit in: dev-perl/DBD-mysql/, dev-perl/DBD-mysql/files/

2015-09-27 Thread Mikle Kolyada
commit: f2b6b0f0106efe89395009da132bca115984dfd7
Author: Mikle Kolyada  gentoo  org>
AuthorDate: Sun Sep 27 15:39:41 2015 +
Commit: Mikle Kolyada  gentoo  org>
CommitDate: Sun Sep 27 15:39:41 2015 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f2b6b0f0

dev-perl/DBD-mysql: Fix compilation with embedded USE flag wrt bug #560314

Package-Manager: portage-2.2.20.1

 dev-perl/DBD-mysql/DBD-mysql-4.31.0.ebuild   |  4 
 dev-perl/DBD-mysql/DBD-mysql-4.32.0.ebuild   |  4 
 .../files/DBD-mysql-print_embedded_options.patch | 20 
 3 files changed, 28 insertions(+)

diff --git a/dev-perl/DBD-mysql/DBD-mysql-4.31.0.ebuild 
b/dev-perl/DBD-mysql/DBD-mysql-4.31.0.ebuild
index 339d0c6..d9af44c 100644
--- a/dev-perl/DBD-mysql/DBD-mysql-4.31.0.ebuild
+++ b/dev-perl/DBD-mysql/DBD-mysql-4.31.0.ebuild
@@ -25,6 +25,10 @@ else
SRC_TEST="skip"
 fi
 
+src_prepare() {
+   epatch "${FILESDIR}"/${PN}-print_embedded_options.patch
+}
+
 src_configure() {
if use test; then
myconf="${myconf} --testdb=test \

diff --git a/dev-perl/DBD-mysql/DBD-mysql-4.32.0.ebuild 
b/dev-perl/DBD-mysql/DBD-mysql-4.32.0.ebuild
index d6bc3e4..a6c1c39 100644
--- a/dev-perl/DBD-mysql/DBD-mysql-4.32.0.ebuild
+++ b/dev-perl/DBD-mysql/DBD-mysql-4.32.0.ebuild
@@ -25,6 +25,10 @@ else
SRC_TEST="skip"
 fi
 
+src_prepare() {
+epatch "${FILESDIR}"/${PN}-print_embedded_options.patch
+}
+
 src_configure() {
if use test; then
myconf="${myconf} --testdb=test \

diff --git a/dev-perl/DBD-mysql/files/DBD-mysql-print_embedded_options.patch 
b/dev-perl/DBD-mysql/files/DBD-mysql-print_embedded_options.patch
new file mode 100644
index 000..d205b43
--- /dev/null
+++ b/dev-perl/DBD-mysql/files/DBD-mysql-print_embedded_options.patch
@@ -0,0 +1,20 @@
+diff -ubBr old/dbdimp.c new/dbdimp.c
+--- old/dbdimp.c   2015-09-12 17:52:41.328543844 -0400
 new/dbdimp.c   2015-09-12 23:21:52.848371578 -0400
+@@ -443,14 +443,14 @@
+  Print out embbedded option settings
+ 
+ */
+-int print_embedded_options(char ** options_list, int options_count)
++int print_embedded_options(PerlIOl ** Log, char ** options_list, int 
options_count)
+ {
+   int i;
+ 
+   for (i=0; i