Skip to content

Support FrankenPHP #58807

@artonge

Description

@artonge

Current limitations

Critical - For a safe and working worker mode

  • Remove static variables
    • Task: Introduce official linting rules for Nextcloud
    • Task: Introduce reflection at container destroy time to detect static variables in classes and fail hard on worker mode production
  • Detect open DB transactions at the end of a request
    • Check for open transactions. If any, error and roll it back.
  • Smalls adaptation to how Frankenphp is working

Nice to have

  • For a debuggable software: check how to use xdebug and blackfire with FrankenPHP
  • For a working worker mode after code changes: Reload on code changes (app install/update, config.php)
  • To progressively improve the performance: Opt-in/out classes from the per request global reset
    • Task: Introduce an attribute to opt-out classes
    • Task: Introduce "magic" detection if class's constructor argument is bound to the request context (user, session, userFolder, request, response, ...?)

References

Issues

PRs

cc @CarlSchwan @come-nc @Altahrim @provokateurin for reference. Feel free to amend as you whish.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementphpPull requests that update Php code

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions