[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#768550: unblock: pkg-php-tools/1.26



Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock

Please unblock package pkg-php-tools

The changelog is as follow:
pkg-php-tools (1.26) unstable; urgency=medium

  * PEAR/Buildsystem: Remove unused function _phppkginfo()
  * dh_phppear, dh_phpcomposer, Buildsystem/phppear: Ensure to check return
    value and fail accordingly (Closes: #768498)
  * Allow dot in package name (Closes: #768481)

 -- Mathieu Parent <sathieu@debian.org>  Fri, 07 Nov 2014 22:08:05 +0100

The first item is a 5 lines removal of unused code. It doesn't match the freeze
policy, but is tiny. If you don't want it, I can revert it in a new version.

The second item fixes pkg-php-tools to properly make a build-depending package
to FTBFS when needed (In 1.25, the backtrace is printed but the build don't
fail). This is an important bug.

The third allows to build composer packages having a dot in a package name.
This is the case for aws-sdk-for-php version 3 which is currently in
experimental. This is an important bug.

The debdiff is attached.

unblock pkg-php-tools/1.26
diff --git a/bin/dh_phpcomposer b/bin/dh_phpcomposer
index 9ca3d38..c6b35ff 100755
--- a/bin/dh_phpcomposer
+++ b/bin/dh_phpcomposer
@@ -71,7 +71,12 @@ use Debian::Debhelper::Dh_Lib;
 
 
 sub _shell_exec {
-	open(my $output, "-|", @_) or error("@_ failed to execute: $!");
+	my $child_pid = open(my $output, "-|", @_) // error("@_ failed to fork: $!");
+	if ($child_pid) {
+		waitpid $child_pid, 0;
+	} else {
+		exit 0;
+	}
 	if ($? == -1) {
 		error("@_ failed to execute: $!");
 	}
diff --git a/bin/dh_phppear b/bin/dh_phppear
index 644b43a..345cf1d 100755
--- a/bin/dh_phppear
+++ b/bin/dh_phppear
@@ -106,7 +106,12 @@ use Debian::Debhelper::Dh_Lib;
 
 
 sub _shell_exec {
-	open(my $output, "-|", @_) or error("@_ failed to execute: $!");
+	my $child_pid = open(my $output, "-|", @_) // error("@_ failed to fork: $!");
+	if ($child_pid) {
+		waitpid $child_pid, 0;
+	} else {
+		exit 0;
+	}
 	if ($? == -1) {
 		error("@_ failed to execute: $!");
 	}
diff --git a/debian/changelog b/debian/changelog
index b1e41cc..c4e5d01 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,12 @@
+pkg-php-tools (1.26) unstable; urgency=medium
+
+  * PEAR/Buildsystem: Remove unused function _phppkginfo()
+  * dh_phppear, dh_phpcomposer, Buildsystem/phppear: Ensure to check return
+    value and fail accordingly (Closes: #768498)
+  * Allow dot in package name (Closes: #768481)
+
+ -- Mathieu Parent <sathieu@debian.org>  Fri, 07 Nov 2014 22:08:05 +0100
+
 pkg-php-tools (1.25) unstable; urgency=medium
 
   * package.xml 1.0 support is back (Closes: #764012)
diff --git a/share/perl5/Debian/Debhelper/Buildsystem/phppear.pm b/share/perl5/Debian/Debhelper/Buildsystem/phppear.pm
index f853c0d..bca1c19 100644
--- a/share/perl5/Debian/Debhelper/Buildsystem/phppear.pm
+++ b/share/perl5/Debian/Debhelper/Buildsystem/phppear.pm
@@ -46,7 +46,12 @@ sub check_auto_buildable {
 
 # Local functions
 sub _shell_exec {
-	open(my $output, "-|", @_) or error("@_ failed to execute: $!");
+	my $child_pid = open(my $output, "-|", @_) // error("@_ failed to fork: $!");
+	if ($child_pid) {
+		waitpid $child_pid, 0;
+	} else {
+		exit 0;
+	}
 	if ($? == -1) {
 		error("@_ failed to execute: $!");
 	}
@@ -59,15 +64,6 @@ sub _shell_exec {
 	return $output;
 }
 
-sub _phppkginfo {
-	my $this=shift;
-	unshift(@_, $this->{phppkginfo_path});
-	my $results = _shell_exec(@_);
-	my $result = <$results>;
-	close $results;
-	return $result;
-}
-
 sub _pkgtools {
 	my $this=shift;
 	unshift(@_, @{ $this->{pkgtools_cmd} });
diff --git a/share/php/pkgtools/base/dependency.php b/share/php/pkgtools/base/dependency.php
index 65cbb3f..a01f2e2 100644
--- a/share/php/pkgtools/base/dependency.php
+++ b/share/php/pkgtools/base/dependency.php
@@ -199,7 +199,7 @@ class Dependency {
                 }
                 break;
             case 'package':
-                if (!preg_match('/^[a-zA-Z0-9_-]+$/', $value)) {
+                if (!preg_match('/^[a-zA-Z0-9_.-]+$/', $value)) {
                     throw new \InvalidArgumentException("Malformed dependency $property: '$value'");
                 }
                 // Canonalize PECL extension

Reply to: