phergie / phergie-irc-bot-react

IRC bot built on React
BSD 2-Clause "Simplified" License
81 stars 27 forks source link

Migration to Archer #22

Closed elazar closed 8 years ago

elazar commented 9 years ago

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 9 years ago

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.

svpernova09 commented 9 years ago

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

svpernova09 commented 8 years ago

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 8 years ago

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.

svpernova09 commented 8 years ago

@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.