-
Notifications
You must be signed in to change notification settings - Fork 523
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Make satis compatible with composer 2.3, 2.4 and add plugin mode #701
Conversation
- Integrate ralflang/satis-plugin natively - Fix compatibility issues with composer 2.3/2.4 in CLI mode - Change app kernel into a child of composer's app kernel and remove parts better inherited - Satis as a root project will work as before, auto-installs a version of composer/composer for autoloading reasons - Satis as a non-root project will give guidance that composer/composer is no longer automatically installed and what to do
Ah, sorry, can you fix the conflicts first? |
composer.lockPackage changes
Dev Package changes
Settings · Docs · Powered by Private Packagist |
Yes, I have merged the conflicts. Meanwhile PHPStan has some complaints and I think a re-test with different composer versions is due after work today. I will highlight you once I am done with that. |
PHPStan passing isn't really a requirement, more of a guide / nice-to-have. But I'm fine with waiting till after your test session(s) before merging this PR. |
- Work around a bug with RootPackageLoader's / VersionGuesser's internally created ProcessExecutor not being async-enabled - This should maybe be fixed upstream instead?
@alcohol Test went through In Standalone mode with "lowest" and "latest" dependencies allowed by constraints:
Lowest gives one deprecation warning in a dependency. In plugin mode (only tested with latest dependencies)
I think we are good to go. There are two places which smell like they might sense to be changed elsewhere. Composer/Application constructor does not accept optional name and version parameters. If leaving out optional arguments to RootPackageLoader, it constructs its own version of VersionGuesser and in turn ProcessExecutor which it cannot really use. Do you think it makes sense to open issues in the appropriate repos for further exploring these? |
adresses #700, #694