#gRegorLoveIn general, I'm in favor of the minimal necessary changes to make it PHP5.6 minimum. I'm not aware of the .lock file causing problems to date.
#[tantek]gRegorLove I can relate. And I think that's a good recommendation
Sajesajama joined the channel
#GWGSo, gRegorLove if you approve the change I made, we can merge it
[tantek], [fluffy], [schmarty], [sri], [LewisCowles], [Aaron_Klemm], [mapkyca], [tw2113], gRegorLove and [jgarber] joined the channel
#[jgarber]Are there any objections to merging these two PRs on microformats/tests? [jansauer] and I have reviewed one another’s, but would anyone else care to chime in?
#GWGThen added PHPCPD to detect dupe code, and a few other fun testing protocols
#cjw6kThe composer.lock file takes the set of dependencies, and puts a single pin/thread through each one that strings together a working valid state. It may bite hard in future days when composer.lock is missing.
#cjw6kGiven dependencies A and B which each depend on a dependency P: at some future date P pushes a new major version. Dependency A updates to require D at the new major version, but may not update it's own major version number. Meanwhile B continues but isn't ready to change to meet requires for the new major release of P.
#cjw6kWithout a lock file, composer tries to resolve the dependency issues automatially. In a perfect scenario, composer would collapse these conflicts into a working set of dependencies.
#cjw6kIt doesn't always work like this in practice. Composer balloons to use a very, very large amount of RAM while chasing a working combination of packages. Consider a 2GB of RAM virtual machine not having enough memory for the process to complete.
#cjw6kThe composer.lock file permits the install to choose the exact versions of dependencies which provide a working state and avoids the whole ordeal.
#cjw6kIt's a simple enough process to resolve this irreconcilable dependency issue with composer, but it takes specialized knowledge and a very good grasp the cause of the error.
#gRegorLoveNo worries. Yeah, we've had a .lock file and will continue to
#GWGI'm still not 100% versed in how you generate a lock file for a specific PHP version other than adding the config parameter, generating it then removing the config parameter
#gRegorLoveI've done it by running composer using the specific PHP binary
#GWGgRegorLove: So, I need to install multiple binaries
#[pfefferle]but what have to be php5.6 compatible?
#gRegorLoveIf there's a way to use config.platform without it also going in the lock file, that would work instead. I'm not familiar though.
#[pfefferle]Isn’t the php compatibility handled by the version of the dependencies?
#[pfefferle]I am not aware of dependencies that are installed based on the php version!?!
#gRegorLoveIt's what GWG ran into in the earlier commits. The dependencies he added used PHP7-compatible versions bc his PHP env was 7. Then Travis failed on PHP5.6