Skip to content

Conversation

@theofidry
Copy link
Member

@theofidry theofidry commented Feb 13, 2023

Closes #580

Related composer/composer#11325.

The problem is that dump-autoload does not really care about the --dev|--no-dev flag. It looks like it only cares about it for the actual dumped autoload, but before that, i.e. when autoloading the code, it does not and instead just loads everything that is registered in installed.json|installed.php.

The way Box works is:

  • copy the source code
  • remove dev deps (inferred via the composer json/lock files but it is done directly, not via Composer)
  • dump the autoload

This means that if you have a dev plugin, e.g. phpstan/extension-installer, when dumping the autoload, the plugin will be attempted to be loaded. This of course cannot work since it's a dev dep and Box removed it.

I think this could be solved in Composer, but I also cannot just wait for a fix there so I'll likely need to temper the content of installed.json & installed.php

@theofidry theofidry changed the title Draft: fix: Fix compilation of projects using dev composer plugins fix: Fix compilation of projects using dev composer plugins Feb 16, 2023
@theofidry theofidry marked this pull request as ready for review February 16, 2023 23:20
@theofidry theofidry enabled auto-merge (squash) February 17, 2023 09:47
@theofidry theofidry disabled auto-merge February 17, 2023 09:47
@theofidry theofidry enabled auto-merge (squash) February 17, 2023 09:47
@theofidry
Copy link
Member Author

Related composer/composer#11325

@theofidry theofidry added this to the Box5 milestone Nov 27, 2023
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.

Box does not work with Composer 2.2 (allowed-plugins)

1 participant