Skip to content

test: implement all session handler interfaces - #2811

Merged
dunglas merged 1 commit into
mainfrom
test/php86-session-handler
Nov 5, 2026
Merged

dunglas merged 1 commit into
mainfrom
test/php86-session-handler

Conversation

@dunglas

@dunglas dunglas commented Nov 4, 2026

Copy link
Copy Markdown
Member

main is red on PHP 8.6 since 10baf4b8: PHP 8.6 deprecates passing session_set_save_handler() an object without create_sid() and validateId(). The notices end up in the response, so TestPreviousRequestCodeDoesNotWriteToNextClient_worker fails.

TenantSessionHandler now implements SessionIdInterface and SessionUpdateTimestampHandlerInterface, like the other test session handlers.

The same main run also hit realloc(): invalid pointer once in the Caddy module tests on PHP 8.3 (TestShowTheCorrectThreadDebugStatus). I could not reproduce it in 15 runs on a Linux PHP 8.3 debug ZTS build, nor in 10 runs on macOS, and it does not appear in the previous 30 failed runs, so this PR does not touch it.

Assistance Disclosure

Claude Code (Claude Opus 5.5) diagnosed the failure and wrote the fix. I reviewed and tested the result.

PHP 8.6 deprecates passing session_set_save_handler() an object without
create_sid() and validateId(). The deprecation notices went into the
response and broke TestPreviousRequestCodeDoesNotWriteToNextClient_worker.
Implement SessionIdInterface and SessionUpdateTimestampHandlerInterface,
like the other test session handlers.
@dunglas
dunglas merged commit d88448c into main Nov 5, 2026
45 checks passed
@dunglas
dunglas deleted the test/php86-session-handler branch November 5, 2026 07:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants