Skip to content

Add frankenphp support for v3#1026

Open
crazywhalecc wants to merge 3 commits intov3-devfrom
v3-feat/frankenphp
Open

Add frankenphp support for v3#1026
crazywhalecc wants to merge 3 commits intov3-devfrom
v3-feat/frankenphp

Conversation

@crazywhalecc
Copy link
Owner

What does this PR do?

Checklist before merging

If your PR involves the changes mentioned below and completed the action, please tick the corresponding option.
If a modification is not involved, please skip it directly.

  • If you modified *.php or *.json, run them locally to ensure your changes are valid:
    • composer cs-fix
    • composer analyse
    • composer test
    • bin/spc dev:sort-config
  • If it's an extension or dependency update, please ensure the following:
    • Add your test combination to src/globals/test-extensions.php.
    • If adding new or fixing bugs, add commit message containing extension test or test extensions to trigger full test suite.

$this->_before_files = FileSystem::scanDirFiles(DOWNLOAD_PATH, false, true, true) ?: [];

// load downloaders
$this->downloaders = require ROOT_DIR . '/config/downloader.php';
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This seems like it's not the greatest idea. Should the file instead define the method that we autoload and call here?

Copy link
Owner Author

@crazywhalecc crazywhalecc Feb 11, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Make it in core registry config?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure as I haven't had the time to familiarise myself with v3 yet. But I think this should optimally be part of Downloader.php or something as a method.

Copy link
Owner Author

@crazywhalecc crazywhalecc Feb 11, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We already have #[CustomBinary] and #[CustomSource] for using custom download method, but they are registered to a specific package artifact and cannot reuse between different artifacts.

What I'm thinking is that in some edge cases we or others can dynamically add or enhance download types, such as rewriting GitHub URLs or adding commonly used advanced crawlers. For example, replacing the implementation of ghtar in a custom method can expand or customize the functionality globally.

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