Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 924008 - dev-lang/php-8.2.15 fails tests
Summary: dev-lang/php-8.2.15 fails tests
Status: RESOLVED NEEDINFO
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: PHP Bugs
URL:
Whiteboard:
Keywords: TESTFAILURE
Depends on:
Blocks:
 
Reported: 2024-02-07 14:58 UTC by Agostino Sarubbo
Modified: 2024-07-05 11:05 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log.xz (build.log.xz,223.61 KB, application/x-xz)
2024-02-07 14:58 UTC, Agostino Sarubbo
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Agostino Sarubbo gentoo-dev 2024-02-07 14:58:29 UTC
https://blogs.gentoo.org/ago/2020/07/04/gentoo-tinderbox/

Issue: dev-lang/php-8.2.15 fails tests.
Discovered on: amd64 (internal ref: ci)

Info about the issue:
https://wiki.gentoo.org/wiki/Project:Tinderbox/Common_Issues_Helper#CF0015
Comment 1 Agostino Sarubbo gentoo-dev 2024-02-07 14:58:32 UTC
CC'ing also the author of the commit (d306a40ad0a2df3f2519749b7979375a4e099d57)
Comment 2 Agostino Sarubbo gentoo-dev 2024-02-07 14:58:34 UTC
Created attachment 884470 [details]
build.log.xz

build log and emerge --info (compressed because it exceeds attachment limit, use 'xzless' to read it)
Comment 3 Agostino Sarubbo gentoo-dev 2024-02-07 14:58:35 UTC
Error(s) that match a know pattern:


FAILED TEST SUMMARY
FAIL openssl_error_string() tests (OpenSSL >= 3.0) [ext/openssl/tests/openssl_error_string_basic_openssl3.phpt] 
FAIL openssl_private_decrypt() tests [ext/openssl/tests/openssl_private_decrypt_basic.phpt] 
FAIL openssl_x509_parse() tests [ext/openssl/tests/openssl_x509_parse_basic.phpt] 
PASS Bug #30161 (Segmentation fault with exceptions) [Zend/tests/bug30161.phpt] 
PASS Bug #30707 (Segmentation fault on exception in method) [Zend/tests/bug30707.phpt] 
PASS Bug #38347 (Segmentation fault when using foreach with an unknown/empty SimpleXMLElement) [ext/simplexml/tests/bug38347.phpt] 
PASS Bug #38779 (engine crashes when require()'ing file with syntax error through userspace stream wrapper) [Zend/tests/bug38779_1.phpt] 
PASS Bug #38779 (engine crashes when require()'ing file with syntax error through userspace stream wrapper) [Zend/tests/bug38779.phpt] 
PASS Bug #39304 (Segmentation fault with list unpacking of string offset) [Zend/tests/bug39304.phpt] 
PASS Bug #41209 (Segmentation fault with ArrayAccess, set_error_handler and undefined var) [Zend/tests/bug41209.phpt] 
PASS Bug #43918 (Segmentation fault in garbage collector) [Zend/tests/bug43918.phpt] 
PASS Bug #45312 (Segmentation fault on second request for array functions) [ext/standard/tests/array/bug45312.phpt] 
PASS Bug #46238 (Segmentation fault on static call with empty string method) [Zend/tests/bug46238.phpt] 
PASS Bug #47572 (zval_update_constant_ex: Segmentation fault) [Zend/tests/bug47572.phpt] 
PASS Bug #48899 (is_callable returns true even if method does not exist in parent class) [original test with deprecated syntax] [Zend/tests/bug48899-deprecated.phpt] 
PASS Bug #48899 (is_callable returns true even if method does not exist in parent class) [Zend/tests/bug48899.phpt] 
PASS bug 50632, filter_input() does not return default value if the variable does not exist [ext/filter/tests/bug50632.phpt] 
PASS Bug #52573 (SplFileObject::fscanf Segmentation fault) [ext/spl/tests/SplFileObject/bug52573.phpt] 
PASS Bug #53362 (Segmentation fault when extending SplFixedArray) [ext/spl/tests/bug53362.phpt] 
PASS Bug #60444 (Segmentation fault with include & class extending) [Zend/tests/bug60444.phpt] 
PASS Bug #60611 (Segmentation fault with Cls::{expr}() syntax) [Zend/tests/bug60611.phpt] 
PASS Bug #60613 (Segmentation fault with $cls->{expr}() syntax) [Zend/tests/bug60613.phpt] 
PASS Bug #60634 (Segmentation fault when trying to die() in SessionHandler::write()) - exception in write after exec [ext/session/tests/bug60634_error_4.phpt] 
PASS Bug #60634 (Segmentation fault when trying to die() in SessionHandler::write()) - exception in write during exec [ext/session/tests/bug60634_error_2.phpt] 
PASS Bug #60634 (Segmentation fault when trying to die() in SessionHandler::write()) [ext/session/tests/bug60634.phpt] 
PASS Bug #60634 (Segmentation fault when trying to die() in SessionHandler::write()) - fatal error in close during exec [ext/session/tests/bug60634_error_5.phpt] 
PASS Bug #60634 (Segmentation fault when trying to die() in SessionHandler::write()) - fatal error in write after exec [ext/session/tests/bug60634_error_3.phpt] 
PASS Bug #60634 (Segmentation fault when trying to die() in SessionHandler::write()) - fatal error in write during exec [ext/session/tests/bug60634_error_1.phpt] 
PASS Bug #61124: Segmentation fault with openssl_decrypt [ext/openssl/tests/bug61124.phpt] 
PASS Bug #61418: Segmentation fault using FiltesystemIterator & RegexIterator [ext/spl/tests/bug61418.phpt] 
PASS Bug #62616 (ArrayIterator::count() from IteratorIterator instance gives Segmentation fault) [ext/spl/tests/bug62616.phpt] 
PASS Bug #65161: Generator + autoload + syntax error = segfault [Zend/tests/generators/bug65161.phpt] 
PASS Bug #66127 (Segmentation fault with ArrayObject unset) [ext/spl/tests/bug66127.phpt] 
PASS Bug #67314 (Segmentation fault in gc_remove_zval_from_buffer) [Zend/tests/bug67314.phpt] 
PASS Bug #68912 (Segmentation fault at openssl_spki_new) [ext/openssl/tests/bug68912.phpt] 
PASS Bug #69108 ("Segmentation fault" when (de)serializing SplObjectStorage) [ext/spl/tests/bug69108.phpt] 
PASS Bug #69221: Segmentation fault when using a generator in combination with an Iterator (2) [Zend/tests/bug69221_2.phpt] 
PASS Bug #69221: Segmentation fault when using a generator in combination with an Iterator [Zend/tests/bug69221.phpt] 
PASS Bug #70249 (Segmentation fault while running PHPUnit tests on phpBB 3.2-dev) [ext/standard/tests/general_functions/bug70249.phpt] 
PASS Bug #70397 (Segmentation fault when using Closure::call and yield) [Zend/tests/bug70397.phpt] 
PASS Bug #70398 (SIGSEGV, Segmentation fault zend_ast_destroy_ex) [Zend/tests/bug70398.phpt] 
PASS Bug #70805 (Segmentation faults whilst running Drupal 8 test suite) (Crash) [Zend/tests/bug70805_1.phpt] 
PASS Bug #70805 (Segmentation faults whilst running Drupal 8 test suite) (Memleak) [Zend/tests/bug70805_2.phpt] 
PASS Bug #70805 (Segmentation faults whilst running Drupal 8 test suite) [Zend/tests/bug70805.phpt] 
PASS Bug #70876 Segmentation fault when regenerating session id with strict mode [ext/session/tests/bug70876.phpt] 
PASS Bug #71092 (Segmentation fault with return type hinting) [Zend/tests/return_types/bug71092.phpt] 
PASS Bug #71606 (Segmentation fault mb_strcut + mb_list_encodings) [ext/mbstring/tests/bug71606.phpt] 
PASS Bug #72221 (Segmentation fault in stream_get_line / zend_memnstr_ex) [ext/standard/tests/streams/bug72221.phpt] 
PASS Bug #72441 (Segmentation fault: RFC list_keys) [Zend/tests/bug72441.phpt] 
PASS Bug #73483 (Segmentation fault on pcre_replace_callback) [ext/pcre/tests/bug73483.phpt] 
PASS Bug #74372: autoloading file with syntax error uses next autoloader, may hide parse error [ext/spl/tests/bug74372.phpt] 
PASS Bug #75573 (Segmentation fault in 7.1.12 and 7.0.26) [Zend/tests/bug75573.phpt] 
PASS Bug #76643 (Segmentation fault when using `output_add_rewrite_var`) [ext/standard/tests/general_functions/bug76643.phpt] 
PASS Bug #76700 (false-positive "Error: Call to protected method" when using trait aliases) [Zend/tests/traits/bug76700.phpt] 
PASS Bug #76713 (Segmentation fault caused by property corruption) [ext/standard/tests/array/bug76713.phpt] 
PASS Bug #76752 (Crash in ZEND_COALESCE_SPEC_TMP_HANDLER - assertion in _get_zval_ptr_tmp failed) [Zend/tests/bug76752.phpt] 
PASS Bug #77345 (Segmentation faults stack overflow in cyclic garbage collector) (Bug #77427) [Zend/tests/bug77345_gc_1.phpt] 
PASS Bug #77345 (Segmentation faults stack overflow in cyclic garbage collector) (Bug #77427) [Zend/tests/bug77345_gc_2.phpt] 
PASS Bug #77432 (Segmentation fault on including phar file) [ext/phar/tests/bug77432.phpt] 
PASS Bug #77660 (Segmentation fault on break 2147483648) [Zend/tests/bug77660.phpt] 
PASS BUG #77664 (Segmentation fault when using undefined constant in custom wrapper) [ext/standard/tests/streams/bug77664.phpt] 
PASS Bug #77793: Segmentation fault in extract() when overwriting reference with itself [ext/standard/tests/array/bug77793.phpt] 
PASS Bug #78010: Segmentation fault during GC [Zend/tests/bug78010.phpt] 
PASS Bug #78182: Segmentation fault during by-reference property assignment [Zend/tests/bug78182.phpt] 
PASS Bug #78344: Segmentation fault on zend_check_protected [Zend/tests/bug78344.phpt] 
PASS Bug #78926: Segmentation fault on Symfony cache:clear [Zend/tests/bug78926.phpt] 
PASS Bug #79241: Segmentation fault on preg_match() [ext/pcre/tests/bug79241.phpt] 
PASS Bug #80096: Segmentation fault with named arguments in nested call [Zend/tests/bug80096.phpt] 
PASS Bug #80719: Iterating after failed ArrayObject::setIteratorClass() causes Segmentation fault [ext/spl/tests/bug80719.phpt] 
PASS Bug #81208: Segmentation fault while create newInstance from attribute [ext/reflection/tests/bug81208.phpt] 
PASS Bug #81587: MultipleIterator Segmentation fault w/ SimpleXMLElement attached [ext/spl/tests/bug81587.phpt] 
PASS Bug GH-11455 (PHP 8.2 Segmentation fault on nesbot/carbon) [ext/date/tests/gh11455.phpt] 
PASS Bug GH-8471: Segmentation fault when converting immutable and mutable DateTime instances created using reflection [ext/date/tests/bug-gh8471.phpt] 
PASS Bug GH-9248 (Segmentation fault in mb_strimwidth()) [ext/mbstring/tests/gh9248.phpt] 
PASS Flexible heredoc syntax error 10: unindented variable interpolation (as first value) [Zend/tests/flexible-heredoc-error10.phpt] 
PASS Flexible heredoc syntax error 11: show erroneous line in error message (variable interpolation) [Zend/tests/flexible-heredoc-error11.phpt] 
PASS Flexible heredoc syntax error 12: show erroneous line in error message (lacking indentation) [Zend/tests/flexible-heredoc-error13.phpt] 
PASS Flexible heredoc syntax error 12: show erroneous line in error message (mixed indentation) [Zend/tests/flexible-heredoc-error12.phpt] 
PASS Flexible heredoc syntax error 3: mixing spaces and tabs in ending marker [Zend/tests/flexible-heredoc-error3.phpt] 
PASS Flexible heredoc syntax error 4: not enough body indentation [Zend/tests/flexible-heredoc-error4.phpt] 
PASS Flexible heredoc syntax error 5: mixing spaces and tabs in ending marker for 0 length body [Zend/tests/flexible-heredoc-error5.phpt] 
PASS Flexible heredoc syntax error 6: no ending token on 0 length body [Zend/tests/flexible-heredoc-error6.phpt] 
PASS Flexible heredoc syntax error 7: no ending token [Zend/tests/flexible-heredoc-error7.phpt] 
PASS Flexible heredoc syntax error 8: don't interpret 	 as indentation [Zend/tests/flexible-heredoc-error8.phpt] 
PASS Flexible heredoc syntax error 9: unindented variable interpolation [Zend/tests/flexible-heredoc-error9.phpt] 
PASS Flexible nowdoc syntax error 3: mixing spaces and tabs in ending marker [Zend/tests/flexible-nowdoc-error3.phpt] 
PASS Flexible nowdoc syntax error 4: not enough body indentation [Zend/tests/flexible-nowdoc-error4.phpt] 
PASS Flexible nowdoc syntax error 5: mixing spaces and tabs in ending marker for 0 length body [Zend/tests/flexible-nowdoc-error5.phpt] 
PASS Flexible nowdoc syntax error 6: no ending token on 0 length body [Zend/tests/flexible-nowdoc-error6.phpt] 
PASS Flexible nowdoc syntax error 7: no ending token [Zend/tests/flexible-nowdoc-error7.phpt] 
PASS Flexible nowdoc syntax error 8: no ending token with explicit trailing space [Zend/tests/flexible-nowdoc-error8.phpt] 
PASS GH-10200 (zif_get_object_vars: Assertion `!(((__ht)->u.flags & (1<<2)) != 0)' failed.) [ext/simplexml/tests/gh10200.phpt] 
PASS GH-10248 (Assertion `!(zval_get_type(&(*(property))) == 10)' failed.) [ext/spl/tests/gh10248.phpt] 
PASS GH-10249 (Assertion `size >= page_size + 1 * page_size' failed.) [Zend/tests/fibers/gh10249.phpt] 
PASS GH-10251 (Assertion `(flag & (1<<3)) == 0' failed.) [Zend/tests/gh10251.phpt] 
PASS GH-10570 (Assertion `(key)->h != 0 && "Hash must be known"' failed.): constant variation [Zend/tests/gh10570.phpt] 
PASS GH-11178 (Segmentation fault in spl_array_it_get_current_data (PHP 8.1.18)) [ext/spl/tests/gh11178.phpt] 
PASS GH-11288 (Error: Couldn't fetch DOMElement introduced in 8.2.6, 8.1.19) [ext/dom/tests/gh11288.phpt] 
PASS GH-11289 (DOMException: Not Found Error introduced in 8.2.6, 8.1.19) [ext/dom/tests/gh11289.phpt] 
PASS Nested group use statements syntax error [Zend/tests/ns_088.phpt] 
PASS New with anonymous class is not supported in constant expressions [Zend/tests/constexpr/new_anon_class.phpt] 
PASS Phar: PHP bug #47085: "rename() returns true even if the file in PHAR does not exist" [ext/phar/tests/bug47085.phpt] 
PASS SPL: Error: iterator_apply when an iterator method (eg rewind) throws exception [ext/spl/tests/spl_iterator_apply_error.phpt] 
PASS SPL: Error: iterator_apply when the callback throws an exception [ext/spl/tests/spl_iterator_apply_error_001.phpt] 
PASS SPL: Error: iterator_to_array when the current operation throws an exception [ext/spl/tests/spl_iterator_to_array_error.phpt] 
PASS Spread operator is not supported in destructuring assignments (only spread) [Zend/tests/array_unpack/in_destructuring_2.phpt] 
PASS Spread operator is not supported in destructuring assignments [Zend/tests/array_unpack/in_destructuring.phpt] 
PASS Test if bindtextdomain() returns false if path does not exist. [ext/gettext/tests/gettext_bindtextdomain-path.phpt] 
SKIP Bug #69753 - libXMLError::file contains invalid URI [ext/libxml/tests/bug69753-mb.phpt] reason: this test is for Windows platforms only
SKIP Bug #69753 - libXMLError::file contains invalid URI [ext/libxml/tests/bug69753.phpt] reason: this test is for Windows platforms only
SKIP Bug #71930 (_zval_dtor_func: Assertion `(arr)->gc.refcount <= 1' failed) [Zend/tests/bug71930.phpt] reason: Required extension missing: curl
PASS Bug #73172 parse error: Invalid numeric literal [tests/lang/bug73172.phpt]
Comment 4 Michael Orlitzky gentoo-dev 2024-02-07 15:02:24 UTC
Commit d306a40a didn't touch php-8.2.15 :)

It's just segfaulting all over the place for some unrelated reason.
Comment 5 Agostino Sarubbo gentoo-dev 2024-02-07 15:05:43 UTC
(In reply to Michael Orlitzky from comment #4)
> Commit d306a40a didn't touch php-8.2.15 :)
> 
> It's just segfaulting all over the place for some unrelated reason.

yes I saw it.

8.3 has the same error, while 8.1 passes for me.
Comment 6 Michael Orlitzky gentoo-dev 2024-02-22 19:55:18 UTC
(In reply to Michael Orlitzky from comment #4)
> Commit d306a40a didn't touch php-8.2.15 :)
> 
> It's just segfaulting all over the place for some unrelated reason.

Was I drunk? Those aren't segfaults, they're tests with "segfault" in the name. 

Can you reproduce these and upload the test logs? PHP saves logs in the same directory as the tests when they fail. For example, since ext/openssl/tests/openssl_error_string_basic_openssl3.phpt, you should find a bunch of other openssl_error_string_basic_openssl3.* files in ext/openssl/tests.

Those will tell us the expected and actual output from the test (i.e. what went wrong).
Comment 7 Michael Orlitzky gentoo-dev 2024-07-04 19:53:04 UTC
There may still be failures lurking here, but without the test logs there's no hope of guessing what went wrong. These three are the only real failures in the list:

  FAIL openssl_error_string() tests (OpenSSL >= 3.0) [ext/openssl/tests
  /openssl_error_string_basic_openssl3.phpt] 

  FAIL openssl_private_decrypt() tests [ext/openssl/tests
  /openssl_private_decrypt_basic.phpt] 

  FAIL openssl_x509_parse() tests [ext/openssl/tests
  /openssl_x509_parse_basic.phpt] 

And there are two commits upstream on 2024-03-10 and 2024-04-19 that likely fix them. In light of that a new report against >=php-8.2.20 would be best anyway.
Comment 8 Agostino Sarubbo gentoo-dev 2024-07-05 07:08:29 UTC
(In reply to Michael Orlitzky from comment #7)
> There may still be failures lurking here, but without the test logs there's
> no hope of guessing what went wrong.

Didn't dig in the logs, can you point out which files you need?
Comment 9 Michael Orlitzky gentoo-dev 2024-07-05 10:55:39 UTC
PHP has a custom test runner... when the test foo.phpt fails, it creates a bunch of other foo.* files (in the same directory) containing the PHP code that was executed, the actual/expected diff, a log file, etc. The one with the most information is foo.log. I can recreate the others from that.

In this case, e.g.

  FAIL openssl_error_string() tests (OpenSSL >= 3.0
  [ext/openssl/tests/openssl_error_string_basic_openssl3.phpt]

would have created ext/openssl/tests/openssl_error_string_basic_openssl3.log.

But I would still bet that these are fixed already. These commits are on the 8.2 branch:

commit 04b864e56655d030894a38c9044172cf8ea361d4
Author: Jakub Zelenka <bukka@php.net>
Date:   Fri Apr 19 14:09:22 2024 +0100

    Fix GH-13806: openssl_x509_parse_basic test fails with OpenSSL 3.2+ (#13961)

    Closes GH-13961

 ext/openssl/tests/openssl_x509_parse_basic.phpt | 4 ++++
 1 file changed, 4 insertions(+)

commit 11caf094f1af6b47ea2138c5fa907838911ebe01
Author: Jakub Zelenka <bukka@php.net>
Date:   Sun Mar 10 20:51:22 2024 +0000

    Fix GH-13620: Failing openssl_private_decrypt tests

    Use OPENSSL_PKCS1_OAEP_PADDING padding in tests

    Closes GH-13667

 ext/openssl/tests/openssl_error_string_basic_openssl3.phpt |  9 ++++-----
 ext/openssl/tests/openssl_private_decrypt_basic.phpt       | 13 ++++++-------
 2 files changed, 10 insertions(+), 12 deletions(-)
Comment 10 Agostino Sarubbo gentoo-dev 2024-07-05 11:05:16 UTC
(In reply to Michael Orlitzky from comment #9)
> But I would still bet that these are fixed already. These commits are on the
> 8.2 branch:

Let's wait for the next release then.