Debian

Available patches from Ubuntu

To see Ubuntu differences wrt. to Debian, write down a grep-dctrl query identifying the packages you're interested in:
grep-dctrl -n -sPackage Sources.Debian
(e.g. -FPackage linux-ntfs or linux-ntfs)

Modified packages are listed below:

Debian ( Changelog | PTS | Bugs ) Ubuntu ( Changelog | txt | LP | Bugs ) | Diff from Ubuntu

Source: libdbi-drivers

libdbi-drivers (0.9.0-8ubuntu1) focal; urgency=medium * Merge with Debian unstable. Remaining changes: - d/p/mysql-8.0: fixes for build against MySQL 8.0. - d/test_mysql.sh: fixes for MySQL 8.0. * Drop changes (included in Debian): - debian/control, debian/rules: drop libdbi-sqlite. - debian/buildtests: test suite to verify drivers are usable when libdbi is loaded via dlopen(). - debian/copyright: adding copyright attribution for buildtests dir. - debian/rules: Run buildtests tests. - (Previously undocumented) set DEB_HOST_MULTIARCH in d/rules. - (Previously undocumented) fix configure option typo in d/rules. - d/p/float4-accuracy.patch: adjust expected output (now more accurate) to fix tests: equivalent d/p/pgsql_precision.patch added by Debian. * d/p/test_exception_failure.patch: make test exceptions fail the test suite and thus the build. * d/p/test_mysql_date_tz.patch: fix MySQL test timezone inputs. -- Robie Basak <robie.basak@ubuntu.com> Thu, 27 Feb 2020 15:50:27 +0000

Modifications :
  1. Download patch debian/patches/mysql-8.0.patch

    --- 0.9.0-8/debian/patches/mysql-8.0.patch 1970-01-01 00:00:00.000000000 +0000 +++ 0.9.0-8ubuntu1/debian/patches/mysql-8.0.patch 2020-02-27 14:02:57.000000000 +0000 @@ -0,0 +1,40 @@ +Description: Fix build errors with MySQL 8.0 + The mysql_install_db script has been removed, and replaced with + the --initialize options for mysqld. + Also add -uroot to mysqladmin calls so package can be built without + root. +Author: Lars Tangvald <lars.tangvald@oracle.com> +Forwarded: no +Last-Update: 2019-07-16 + +--- libdbi-drivers-0.9.0.orig/tests/test_mysql.sh ++++ libdbi-drivers-0.9.0/tests/test_mysql.sh +@@ -36,9 +36,8 @@ D=`dirname "$MYTMPDIR"` + B=`basename "$MYTMPDIR"` + ABSMYTMPDIR="`cd \"$D\" 2>/dev/null && pwd || echo \"$D\"`/$B" + +-# --force is needed because buildd's can't resolve their own hostnames to ips +-mysql_install_db --no-defaults --datadir=${ABSMYTMPDIR} --force --skip-name-resolve --user=${ME} +-$MYMYSQLD --no-defaults --skip-grant --user=${ME} --socket=${ABSMYTMPDIR}/mysql.sock --datadir=${ABSMYTMPDIR} --skip-networking & ++$MYMYSQLD --no-defaults --initialize-insecure --user=${ME} --datadir=${ABSMYTMPDIR} ++$MYMYSQLD --no-defaults --skip-grant --user=${ME} --socket=${ABSMYTMPDIR}/mysql.sock --datadir=${ABSMYTMPDIR} --skip-networking & + + # mysqld needs some time to come up to speed. This avoids irritating error messages from the subsequent loop + sleep 3 +@@ -49,7 +48,7 @@ export MYSQL_UNIX_PORT=${ABSMYTMPDIR}/my + + echo -n pinging mysqld. + attempts=0 +-while ! mysqladmin --socket=${ABSMYTMPDIR}/mysql.sock ping ; do ++while ! mysqladmin -uroot --socket=${ABSMYTMPDIR}/mysql.sock ping ; do + sleep 3 + attempts=$((attempts+1)) + if [ ${attempts} -gt 10 ] ; then +@@ -71,6 +70,6 @@ done + + ecode=$? + +-mysqladmin --socket=${ABSMYTMPDIR}/mysql.sock shutdown ++mysqladmin -uroot --socket=${ABSMYTMPDIR}/mysql.sock shutdown + rm -rf ${ABSMYTMPDIR} + exit ${ecode}
  2. Download patch debian/control

    --- 0.9.0-8/debian/control 2020-02-08 08:47:26.000000000 +0000 +++ 0.9.0-8ubuntu1/debian/control 2020-02-26 15:38:51.000000000 +0000 @@ -1,7 +1,8 @@ Source: libdbi-drivers Section: libs Priority: optional -Maintainer: Laszlo Boszormenyi (GCS) <gcs@debian.org> +Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com> +XSBC-Original-Maintainer: Laszlo Boszormenyi (GCS) <gcs@debian.org> Uploaders: Prach Pongpanich <prachpub@gmail.com> Build-Depends: automake, debhelper-compat (= 12),
  3. Download patch debian/test_mysql.sh

    --- 0.9.0-8/debian/test_mysql.sh 2020-02-08 08:47:26.000000000 +0000 +++ 0.9.0-8ubuntu1/debian/test_mysql.sh 2020-02-27 14:03:04.000000000 +0000 @@ -26,9 +26,8 @@ set -e MYTEMP_DIR=`mktemp -d` ME=`whoami` -# --force is needed because buildd's can't resolve their own hostnames to ips -mysql_install_db --no-defaults --datadir=${MYTEMP_DIR} --force --skip-name-resolve --user=${ME} -/usr/sbin/mysqld --no-defaults --skip-grant --user=${ME} --socket=${MYTEMP_DIR}/mysql.sock --datadir=${MYTEMP_DIR} --skip-networking & +/usr/sbin/mysqld --no-defaults --initialize-insecure --user=${ME} --datadir=${MYTEMP_DIR} +/usr/sbin/mysqld --no-defaults --user=${ME} --socket=${MYTEMP_DIR}/mysql.sock --datadir=${MYTEMP_DIR} --skip-networking & # This sets the path of the MySQL socket for any libmysql-client users, which includes # the ./tests/test_dbi client @@ -36,7 +35,7 @@ export MYSQL_UNIX_PORT=${MYTEMP_DIR}/mys echo -n pinging mysqld. attempts=0 -while ! /usr/bin/mysqladmin --socket=${MYTEMP_DIR}/mysql.sock ping ; do +while ! /usr/bin/mysqladmin -uroot --socket=${MYTEMP_DIR}/mysql.sock ping ; do sleep 3 attempts=$((attempts+1)) if [ ${attempts} -gt 10 ] ; then @@ -57,6 +56,6 @@ done ecode=$? -/usr/bin/mysqladmin --socket=${MYTEMP_DIR}/mysql.sock shutdown +/usr/bin/mysqladmin -uroot --socket=${MYTEMP_DIR}/mysql.sock shutdown rm -rf ${MYTEMP_DIR} exit ${ecode}
  4. Download patch debian/patches/series

    --- 0.9.0-8/debian/patches/series 2020-02-08 08:47:26.000000000 +0000 +++ 0.9.0-8ubuntu1/debian/patches/series 2020-02-27 15:50:27.000000000 +0000 @@ -6,3 +6,6 @@ fix_ftbfs_on_hurd.patch dbd_sqlite3_resolve_a_stack_buffer_overflow.patch freetds-1.0-fix.patch pgsql_precision.patch +mysql-8.0.patch +test_exception_failure.patch +test_mysql_date_tz.patch
  5. Download patch debian/patches/test_mysql_date_tz.patch

    --- 0.9.0-8/debian/patches/test_mysql_date_tz.patch 1970-01-01 00:00:00.000000000 +0000 +++ 0.9.0-8ubuntu1/debian/patches/test_mysql_date_tz.patch 2020-02-27 15:50:27.000000000 +0000 @@ -0,0 +1,38 @@ +Author: Robie Basak <robie.basak@canonical.com> +Description: fix MySQL test timezone inputs + MySQL 8.0 requires the timezone field in a DATETIME input string to + have no leading spaces, and does not support a timezone field in the + TIME type. Adjust accordingly. The test input time is therefore + different as it is not offset by the timezone, so the expected output + is also adjusted to match. + . + It isn't clear if this also applies to older MySQL or MariaDB as the + previous test failures weren't failing the build. +Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=952744 +Forwarded: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=952744 +Last-Update: 2020-02-28 + +--- a/tests/test_dbi.c ++++ b/tests/test_dbi.c +@@ -253,7 +253,7 @@ + {"the_binary_quoted_string", 4, 0, 6, 0, .expect_val.string_val = "", 0, ""}, /* string */ + {"the_binary_escaped_string", 4, 0, 6, 0, .expect_val.string_val = "", 0, ""}, /* string */ + {"the_datetime", 5, 3, 0, 0, .expect_val.uint_val = 1009843199, 1009843199, "2001-12-31 23:59:59"}, /* DBI_DATETIME_DATE|TIME */ +- {"the_datetime_tz", 5, 3, 0, 0, .expect_val.uint_val = 1009843199, 1009843199, "2001-12-31 23:59:59"}, /* DBI_DATETIME_DATE|TIME */ ++ {"the_datetime_tz", 5, 3, 0, 0, .expect_val.uint_val = 1009879199, 1009879199, "2001-12-31 23:59:59"}, /* DBI_DATETIME_DATE|TIME */ + {"the_date", 5, 1, 0, 0, .expect_val.uint_val = 1009756800, 1009756800, "2001-12-31 00:00:00"}, /* DBI_DATETIME_DATE */ + {"the_time", 5, 2, 0, 0, .expect_val.uint_val = 86399, 86399, "1970-01-01 23:59:59"}, /* DBI_DATETIME_TIME */ + {"the_time_tz", 5, 2, 0, 0, .expect_val.uint_val = 86399, 86399, "1970-01-01 23:59:59"}, /* DBI_DATETIME_TIME */ +@@ -1567,10 +1567,10 @@ + "'AB\\0C\\\'D'," + "'AB\\0C\\\'D'," + "'2001-12-31 23:59:59'," +- "'2001-12-31 23:59:59 -10:00'," ++ "'2001-12-31 23:59:59-10:00'," + "'2001-12-31'," + "'23:59:59'," +- "'23:59:59-10:00')", ++ "'23:59:59')", + numstring); + } + else if (!strcmp(ptr_cinfo->drivername, "pgsql")) {
  6. Download patch debian/patches/test_exception_failure.patch

    --- 0.9.0-8/debian/patches/test_exception_failure.patch 1970-01-01 00:00:00.000000000 +0000 +++ 0.9.0-8ubuntu1/debian/patches/test_exception_failure.patch 2020-02-27 15:50:27.000000000 +0000 @@ -0,0 +1,30 @@ +Author: Robie Basak <robie.basak@canonical.com> +Description: make test exceptions fail the test suite and thus the build + Syntax-related issues in the MySQL tests were resulting in setup like INSERT + INTO to fail. This was resulting in a test exception rather than a failure, + causing the entire MySQL test suite to silently fail. This should instead cause + the build to fail, so patch the testsuite to treat exceptions as failures. +Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=952743 +Forwarded: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=952743 +Last-Update: 2020-02-28 + +--- a/tests/cgreen/src/unit.c ++++ b/tests/cgreen/src/unit.c +@@ -130,7 +130,7 @@ + int run_test_suite(TestSuite *suite, TestReporter *reporter) { + setup_reporting(reporter); + run_every_test(suite, reporter); +- int success = (reporter->failures == 0); ++ int success = (reporter->failures == 0 && reporter->exceptions == 0); + clean_up_test_run(suite, reporter); + return success ? EXIT_SUCCESS : EXIT_FAILURE; + } +@@ -138,7 +138,7 @@ + int run_single_test(TestSuite *suite, char *name, TestReporter *reporter) { + setup_reporting(reporter); + run_named_test(suite, name, reporter); +- int success = (reporter->failures == 0); ++ int success = (reporter->failures == 0 && reporter->exceptions == 0); + clean_up_test_run(suite, reporter); + return success ? EXIT_SUCCESS : EXIT_FAILURE; + }
  1. libdbi-drivers