Skip to content

Remove Puli Composer plugin dependency #49

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

Closed
sagikazarmark opened this issue Jan 28, 2016 · 3 comments
Closed

Remove Puli Composer plugin dependency #49

sagikazarmark opened this issue Jan 28, 2016 · 3 comments

Comments

@sagikazarmark
Copy link
Member

This has been discussed a few times now, but keeps coming back, so I open a new issue for this.

Generally, adding it as a dependency in a package is not recommended by @webmozart

It is also under discussion to make discovery optional everywhere, like in Guzzle 5:

https://github.com/php-http/guzzle5-adapter/blob/master/src/Client.php#L39

In this case, we would end up with two separate dependencies:

  • Discovery
  • Puli composer plugin

However, we could make discovery itself required dependency and only require to manually install the puli composer plugin.

@webmozart
Copy link

Just to provide some more extensive information: I recommend to move the Composer plugin from the required dependencies to the development dependencies because currently any other library that depends on Discovery will also install the Composer plugin, contain a .puli/ directory in development and a puli.json file, even if that library itself has no interest in Puli at all.

A less intrusive way is to recommend only end-user applications (those that actually inject a generated Puli Discovery service) to install the Composer plugin. Libraries that depend on Discovery can install the plugin in require-dev if they want - the important thing is that they have a choice.

@sagikazarmark
Copy link
Member Author

Thanks for the input. Basically it is your second option is what I propose.

@joelwurtz
Copy link
Member

👍 for puli in require-dev, but need to had it everywhere we want to manage puli (not a big deal)

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

No branches or pull requests

3 participants