Problem/Motivation
On PHP 8.3, there is a failure in SessionHttpsTestCase->testEmptySessionId(), see:
---- SessionHttpsTestCase ----
Status Group Filename Line Function
--------------------------------------------------------------------------------
Fail Other session.test 786 SessionHttpsTestCase->testEmptySessionId()
The user's own name is not displayed because the invalid session cookie has
logged them out.
We need to fix the test failure to have full PHP 8.3 compatibility.
Steps to reproduce
See some PHP 8.3 test job on GitlabCI: https://git.drupalcode.org/project/drupal/-/jobs/1568219
Proposed resolution
Remaining tasks
User interface changes
API changes
Data model changes
Release notes snippet
Issue fork drupal-3446569
Show commands
Start within a Git clone of the project using the version control instructions.
Or, if you do not have SSH keys set up on git.drupalcode.org:
Comments
Comment #4
poker10 commentedI tried to reproduce this failure on multiple enviroments: local (linux, windows), our demo server, .. and was unable to reproduce it anywhere, so was unable to debug it. I think it could probably be related to some PHP enviroment config.
While trying to debug the
SessionHttpsTestCase->testEmptySessionId()test, I found out, that the test seems not working at all.I have created a test branch with a test MR: https://git.drupalcode.org/project/drupal/-/merge_requests/8025 . I have reverted the SA-CORE-2014-006 security fix in
session.incthere. Then I expected that theSessionHttpsTestCase->testEmptySessionId()test would start failing. And it does not, it is still green, see: https://git.drupalcode.org/project/drupal/-/pipelines/170033Therefore I think the test is currently not working and it is questionable, if it was working correctly in the past.
----------
So I think that the one solution is to remove the non-working test (not created a MR yet). Other possible solution is to use something similar as it is used in
SessionTestCase::testEmptySessionID()- add a$this->curlClose();just before thedrupalGet()call. This should at least fix the failure on PHP 8.3.I have created a MR 8029 for the second possible solution here: https://git.drupalcode.org/project/drupal/-/merge_requests/8029
All current tests seems to be green with this change: https://git.drupalcode.org/project/drupal/-/pipelines/170155 . Also the PHP 8.3 test is without this failure (only the HTML parsing failure from
TextSummaryTestCaseis still present after applying the fix from here), see: https://www.drupal.org/pift-ci-job/2893116 .For illustration, if we combine fix from this issue and fix from the other one, the 8.3 testing is green: https://git.drupalcode.org/project/drupal/-/pipelines/170105 (see the META issue).
Moving to Needs review.
Comment #5
joseph.olstad100% green here for both MRs above 8025 and 8029
Comment #6
poker10 commentedJust to note, the MR to review/commit is 8029.
The MR 8025 is a test-only MR demonstrating, that the test was not working correctly even before (see #4).
Comment #8
mcdruid commentedGreat, thank you!