fix(worker): incorrect session state#2193
Conversation
|
Looks a bit cleaner than the previous solution, you'll also have to add BC for PHP 8.2 https://github.com/php/frankenphp/actions/runs/22057186532/job/63728080602?pr=2193 Would also probably be nice to add tests that somewhat reproduce #2190 and #2185, since with this solution we'd have to keep up with changes in the session extension. |
|
Thanks for the feedback. I'll try to have a small reproducer but was unable to so far. For the future I think we may propose a small change in php to expose a clean api to remove the need to follow upcoming changes. A small function with the subset reproduced here would do the trick. |
dunglas
left a comment
There was a problem hiding this comment.
Could you please rebase to see if tests are green @xavierleune?
It would be nice if you could check the "allow maintainers to push code" checkbox so we could do that directly, btw :)
Thanks for your contribs!!
Revert the INI snapshot/restore mechanism from #2139 which caused issues with frameworks that lazily set ini values like session.save_path (#2185). Replace the session handler snapshot/restore with a simpler direct session state reset from #2193, which preserves mod_user_names across requests without requiring session module reload. Co-Authored-By: Xavier Leune <xavier.leune@gmail.com> Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Revert the INI snapshot/restore mechanism from #2139 which caused issues with frameworks that lazily set ini values like session.save_path (#2185). Replace the session handler snapshot/restore with a simpler direct session state reset from #2193, which preserves mod_user_names across requests without requiring session module reload. Co-Authored-By: Xavier Leune <xavier.leune@gmail.com> Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Revert the INI snapshot/restore mechanism from #2139 which caused issues with frameworks that lazily set ini values like session.save_path (#2185). Replace the session handler snapshot/restore with a simpler direct session state reset from #2193, which preserves mod_user_names across requests without requiring session module reload. Co-Authored-By: Xavier Leune <xavier.leune@gmail.com> Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Revert the INI snapshot/restore mechanism from #2139 which caused issues with frameworks that lazily set ini values like session.save_path (#2185). Replace the session handler snapshot/restore with a simpler direct session state reset from #2193, which preserves mod_user_names across requests without requiring session module reload. Co-Authored-By: Xavier Leune <xavier.leune@gmail.com> Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Revert the INI snapshot/restore mechanism from php#2139 which caused issues with frameworks that lazily set ini values like session.save_path (php#2185). Replace the session handler snapshot/restore with a simpler direct session state reset from php#2193, which preserves mod_user_names across requests without requiring session module reload. Co-Authored-By: Xavier Leune <xavier.leune@gmail.com> Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

ext/session/php_session