commit: 6037da503870310a3ee85b7a3c823ce085d3c56c Author: Kent Fredric <kentnl <AT> gentoo <DOT> org> AuthorDate: Sun Oct 8 10:27:22 2017 +0000 Commit: Kent Fredric <kentnl <AT> gentoo <DOT> org> CommitDate: Sun Oct 8 10:28:04 2017 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6037da50
dev-perl/DBD-Pg: Bump to version 3.7.0 - Radically improve test coverage - Previously ran no tests - Now runs basic tests and compile tests without needing a database - checks for database being configured - if database is configured for testing, tests run - See https://wiki.gentoo.org/wiki/Project:Perl/maint-notes/dev-perl/DBD-Pg Upstream: - Use PQexec instead of PQexecParams when no placeholders - Fix tests w/ server w/o UTF8 - Fix crash with missing client_encoding - Fix crash with missing server_version - Fix leak in ->state methods - Add pg_async_status field in statement handles. Package-Manager: Portage-2.3.8, Repoman-2.3.3 dev-perl/DBD-Pg/DBD-Pg-3.7.0.ebuild | 97 +++++++++++++++++++++++++++++++++++++ dev-perl/DBD-Pg/Manifest | 1 + 2 files changed, 98 insertions(+) diff --git a/dev-perl/DBD-Pg/DBD-Pg-3.7.0.ebuild b/dev-perl/DBD-Pg/DBD-Pg-3.7.0.ebuild new file mode 100644 index 00000000000..b7338a37775 --- /dev/null +++ b/dev-perl/DBD-Pg/DBD-Pg-3.7.0.ebuild @@ -0,0 +1,97 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +DIST_AUTHOR=TURNSTEP +inherit perl-module + +DESCRIPTION="PostgreSQL database driver for the DBI module" + +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos" +IUSE="" + +RDEPEND=" + virtual/perl-version + >=dev-perl/DBI-1.614.0 + dev-db/postgresql:* +" +DEPEND="${RDEPEND} + virtual/perl-ExtUtils-MakeMaker +" +src_prepare() { + postgres_include="$(readlink -f "${EPREFIX}"/usr/include/postgresql)" + postgres_lib="${postgres_include//include/lib}" + # Fall-through case is the non-split postgresql + # The active cases instead get us the matching libdir for the includedir. + for i in lib lib64 ; do + if [ -d "${postgres_lib}/${i}" ]; then + postgres_lib="${postgres_lib}/${i}" + break + fi + done + + # env variables for compilation: + export POSTGRES_INCLUDE="${postgres_include}" + export POSTGRES_LIB="${postgres_lib}" + perl-module_src_prepare +} + +src_test() { + local MODULES=( + # Compile failure: https://rt.cpan.org/Ticket/Display.html?id=123218 + # "Bundle::DBD::Pg v${PV}" + "DBD::Pg v${PV}" + ) + local failed=() + for dep in "${MODULES[@]}"; do + ebegin "Compile testing ${dep}" + perl -Mblib="${S}" -M"${dep} ()" -e1 #|| + #die "Could not load ${dep}" + eend $? || failed+=( "$dep" ) + done + if [[ ${failed[@]} ]]; then + echo + eerror "One or more modules failed compile:"; + for dep in "${failed[@]}"; do + eerror " ${dep}" + done + die "Failing due to module compilation errors"; + fi + + local LIVEDB_TESTS=( + "t/01connect.t" + "t/02attribs.t" + "t/03dbmethod.t" + "t/03smethod.t" + "t/04misc.t" + "t/06bytea.t" + "t/07copy.t" + "t/08async.t" + "t/09arrays.t" + "t/12placeholders.t" + "t/20savepoints.t" + "t/30unicode.t" + ) + local SKIP_TESTS=( + "t/00_signature.t" + ); + if [[ ! -v DBI_DSN ]]; then + ewarn "Functional database tests disabled due to lack of configuration." + ewarn "Please set the following environment variables values pertaining to a" + ewarn "pre-configured Postgres installation in order for tests to work:" + ewarn " DBI_DSN - A DBI-compatible connection string for a Postgres Database" + ewarn " ( eg: dbi:Pg:dbname=testdb )" + ewarn " DBI_USER - A Postgres Database Username" + ewarn " DBI_PASS - A Postgres Database Password" + ewarn "" + ewarn "For details, visit:" + ewarn "https://wiki.gentoo.org/wiki/Project:Perl/maint-notes/dev-perl/DBD-Pg" + SKIP_TESTS+=( "${LIVEDB_TESTS[@]}" ) + fi + perl_rm_files "${SKIP_TESTS[@]}" + # Parallel testing breaks database access + DBDPG_TEST_ALWAYS_ENV=1 DIST_TEST="do" perl-module_src_test + +} diff --git a/dev-perl/DBD-Pg/Manifest b/dev-perl/DBD-Pg/Manifest index 0d26187baee..81e5232e7c0 100644 --- a/dev-perl/DBD-Pg/Manifest +++ b/dev-perl/DBD-Pg/Manifest @@ -1,2 +1,3 @@ DIST DBD-Pg-3.5.3.tar.gz 256570 SHA256 7e98a9b975256a4733db1c0e974cad5ad5cb821489323e395ed97bd058e0a90e SHA512 7a564e5c86fa41719289f6e391f0cd39f01df7d088892fca11175c60fec8a3af884f9204ae834caac2024ff0d45dcc013e314ec0c09a07fe7ee76170ec3a634f WHIRLPOOL 6f4091284c2c91b8c2126e06a2727b65e672db91ce5f265841ef3c02b977f48712e84ad013980bbe4a2e127f5003906bf315d7b6a86787440a9cc6688aa14cd8 DIST DBD-Pg-3.6.2.tar.gz 258640 SHA256 4b1d2edea07cfaadbb710ac138f41346752bb62f5d29cd0363f11cb4f7c3c4ae SHA512 1f55bd463d90cd0d9933acde0a79462a57f11e7ed9519943cc2cb4487b4b69edd7d16ffa3d666c50aca797f9756ff4e6a0d67b58bc100f4920da36169d73b7b4 WHIRLPOOL 8d28fe8f64b952f57ede925d20a88aca1631462e85b59112ddf073753892053fd59b4802d293fdd745a1c047ff436bb7192b5cf5839436c5d288d4b1b403bc73 +DIST DBD-Pg-3.7.0.tar.gz 260083 SHA256 e36e0459c9cf0f12edafb74f4cef685876d0460dbe6b411e7109070c67e56459 SHA512 edd4d3448dac1b563899c5fd4a1bad6cb810afdbbbf57b558bbe6710aa3e58530a6cf0932e35c3316c7f4f59763764d75ce1049f13c8c13deeb2e8a7c60ff73e WHIRLPOOL 75b41813d3888fa673a1225fbd78454bac0e24fa27a3acbd368f751a9004e3dea8b2bda4907c97b0ffcbc4db832c7fce8f814a07393c27ea28bca7768f826c75
