autopkgtest failures after libffi soname change

Bug #1946033 reported by Bryce Harrington
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
composer (Ubuntu)
Fix Released
High
Bryce Harrington

Bug Description

php8.0 sees 5 test case failures in composer starting with 8.0.8-1build1, following the introduction of libffi 3.4.2-1 on Sept 10th.

There were 5 failures:

1) Composer\Test\Util\Http\ProxyManagerTest::testGetProxyForRequest with data set #1 (array('http://user:p%<email address hidden>', 'https://proxy.com:443', 'other.repo.org'), 'http://repo.org', 'http://user:p%<email address hidden>:80', array(array('tcp://proxy.com:80', 'Proxy-Authorization: Basic dX...pwQHNz', true)), false, 'http://user:***@proxy.com:80')
lastProxy check
Failed asserting that false is true.

/tmp/autopkgtest.kwg55b/build.q8t/src/tests/Composer/Test/Util/Http/ProxyManagerTest.php:92

2) Composer\Test\Util\Http\ProxyManagerTest::testGetStatus with data set #2 (array('http://user:p%<email address hidden>:80'), true, 'http=http://user:***@proxy.com:80')
message check
Failed asserting that false is true.

/tmp/autopkgtest.kwg55b/build.q8t/src/tests/Composer/Test/Util/Http/ProxyManagerTest.php:144

3) Composer\Test\Util\UrlTest::testSanitize with data set #0 ('https://foo:***@example.org/', 'https://foo:<email address hidden>/')
Failed asserting that two strings are identical.
--- Expected
+++ Actual
@@ @@
-'https://foo:***@example.org/'
+'https://foo:<email address hidden>/'

/tmp/autopkgtest.kwg55b/build.q8t/src/tests/Composer/Test/Util/UrlTest.php:67

4) Composer\Test\Util\UrlTest::testSanitize with data set #3 ('http://***:***@example.org', 'http://10a8f08e8d7b7b9:<email address hidden>')
Failed asserting that two strings are identical.
--- Expected
+++ Actual
@@ @@
-'http://***:***@example.org'
+'http://10a8f08e8d7b7b9:<email address hidden>'

/tmp/autopkgtest.kwg55b/build.q8t/src/tests/Composer/Test/Util/UrlTest.php:67

5) Composer\Test\Util\UrlTest::testSanitize with data set #4 ('https://foo:***@example.org:123/', 'https://foo:<email address hidden>:123/')
Failed asserting that two strings are identical.
--- Expected
+++ Actual
@@ @@
-'https://foo:***@example.org:123/'
+'https://foo:<email address hidden>:123/'

/tmp/autopkgtest.kwg55b/build.q8t/src/tests/Composer/Test/Util/UrlTest.php:67

Bryce Harrington (bryce)
description: updated
affects: php8.0 (Ubuntu) → composer (Ubuntu)
Bryce Harrington (bryce)
Changed in composer (Ubuntu):
assignee: nobody → Bryce Harrington (bryce)
status: New → Triaged
importance: Undecided → High
Revision history for this message
Bryce Harrington (bryce) wrote :

The issue is actually caused by a functional change in pcre2 10.37 (the perl regular expression package) which was introduced in Impish Aug 25th. The libffi-motivated rebuild was just the first time composer got a rebuild after that change.

Upstream has a workaround for this, which resolves the test issue:

  https://github.com/composer/composer/pull/9941/commits/d77ff0f729e8ee39360e8c5a605fb2005c3cbeca

There are a couple other changes that refine this code further but given how late we are in the cycle I'll keep it to this one patch so we can get php8.0 unblocked. (There are newer versions of composer in Debian experimental that could be sync'd if we want to carry more up to date code in impish.)

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package composer - 2.0.9-2ubuntu2

---------------
composer (2.0.9-2ubuntu2) impish; urgency=medium

  * d/p/workaround-pcre-regression.patch: Fix test case failure due to use
    of RE matching syntax that breaks with pcre2 10.37.
    (LP: #1946033)

 -- Bryce Harrington <email address hidden> Mon, 04 Oct 2021 23:44:35 +0000

Changed in composer (Ubuntu):
status: Triaged → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.