Within CirrusSearch we are in the progress of updating to use elasticsearch 5.x. This has a few changes to the API, and necessitates a new version of the Elastica support library. Elastica now depends on php 5.6 (but doesn't use any special features, they are simply only supporting non-EOL php versions). This specifically becomes an issue because jenkins tests the mediawiki/vendor repo with 5.5.9, and as such the tests reject any dependency that requires >= 5.6.0.
There are a few options for handling this but i wanted to see what other people think:
* Fork the library, publish it under wikimedia/elastica, and change the minimum version to 5.5.x This is a bit of a pain, but accomplishes the goal * Fake the platform[1] in mediawiki/vendor composer.json. This is sub-optimal because it applies to everything, not just a single dependency. I could see us accidentally pulling in code that will not meet our requirements. * We could use `--ignore-platform-reqs` on the command line, but this has the same problem as previously * We could hope external developers will answer our pleas for supporting EOL php, but i've emailed the elastica dev and they arn't interested in supporting EOL PHP.
Barring other suggestions, I'm probably going to fork and re-publish Elastica via the wikimedia github.