phergie/phergie-irc-bot-react

Migration to Archer

elazar opened this issue · 5 comments

Manually updating dev dependencies like PHPUnit and Phake across all repos has proven to be a rather cumbersome task. Migrating to a setup like that of Archer would allow us to keep versions of these dependencies in sync across all repos and provide a conventional setup for tests, mocking, API documentation, integration with Travis CI, etc.

Thoughts?

tomzx commented

Maybe you could make a composer.json that contains the require-dev dependencies and each project would depend on that single dependency. Something like phergie/development or something similar. I assume that is basically what you meant by doing something similar to Archer.

Otherwise you might want to script out the change. Basically have a little script that says whatever.php update this/dependency ^1.0 and it would apply it to all the target repositories, even maybe automatically commit and push. Obviously that solution is more cumbersome than having a single point of dependency.

I'm all in favor of something that's automated. Will look into https://github.com/IcecaveStudios/archer

Looked into this a bit tonight. I think we're already using most of the conventions they require. The code coverage stuff would be neat, but I'm not what we'd be gaining other than archer wrapping around the test commands. We already have all the repos in Travis and configured and that looks like the primary function unless I'm missing something.

tomzx commented

I thought most of the value was actually derived from having a single, shared composer package that contained some sort of core package dependencies upon which all phergie packages would depend. Instead of having numerous dependencies in each phergie package, you'd depend upon this single package. Updating the core package dependencies would only imply touching a single composer.json.

@tomzx

That is true. IMHO I'd rather be dependent on our own development package so we were not depending on a 3rd party.

I'll have a look at building our own later today.