The Behat Drupal extension is now at version 3.2.2 - Panopoly is still on 3.0.10.
| Comment | File | Size | Author |
|---|---|---|---|
| #13 | panopoly-update-drupalextension-2803347-13.patch | 758 bytes | dsnopek |
| #12 | panopoly_test-update-drupalextension-2803347-12.patch | 55.83 KB | dsnopek |
Comments
Comment #2
cboyden commentedPatch to composer.json and composer.lock is attached. (The updates to composer.lock come from a composer install that I ran locally.)
Comment #3
cboyden commentedUpdates to the underlying libraries are going to require PHP 5.5.
Comment #4
cboyden commentedTravis is looking OK so far: https://travis-ci.org/cboyden/panopoly/builds/161467844. There have been a few gremlins.
Also now that we're past PHP 5.5 end of life, we should be testing on PHP 5.6. I see some PHP 5.6 and 7 references in .travis.yml, but those are not in the build matrix. Should we move directly to 5.6? That might require more wrangling with Travis.
Comment #5
cboyden commentedAnd here's the patch to update to PHP 5.5.
Comment #6
dsnopekSo, here's Drupal 7's current support:
From https://www.drupal.org/docs/7/system-requirements/overview
It's always been Panopoly's goal to support the same versions as Drupal 7 and the contrib we include. The reason we run PHP 5.4, is that it's the earliest version we could get to work in the tests. :-) If we could've gotten PHP 5.3 working, I think we probably would've use that (I'm not totally sure PHP 5.2 will run all our contrib?)
Anyway, my worry with doing all our tests on PHP 5.6 or later, is that we might inadvertedly break users on older versions of PHP. And for better or worse, most Drupal 7 sites are going into maintenance mode soon where their servers are likely to not get a lot of attention, as folks work on a new Drupal 8 site on some new server. I've seen this a lot with Drupal 6 sites, and I don't want to make life harder for people in this situation.
Comment #7
cboyden commentedWould it be possible to split the matrix so that we run one test (clean install) on PHP 5.4 with the older Behat extension, and all the rest (one on 5.5, full set on 5.6, one each on 7 and HHVM) on the newer Behat extension?
Comment #8
dsnopekProbably. But if we need to run one build on the old Behat extension, why use the new Behat extension at all?
It'd be good for our Behat code to be compatible with the newer Behat extension, so that child distributions could decide they want to use the newer version and don't care about old PHP. So, I guess that's an argument for running at least one build on the newer Behat so that we can make sure that we are compatible...
Ok, two paragraphs later and I'm now all for this plan! :-) We can still debate which builds should be on which versions, but we should probably test both, and we should also probably at least enable the PHP 7 build, which I thought we had, but I guess not.
Comment #9
dsnopekSome experimental patches I'm going to use to test on Travis
EDIT: Here's the first Travis build: https://travis-ci.org/panopoly/panopoly/builds/195667996EDIT: Here's a correct build: https://travis-ci.org/dsnopek/panopoly/builds/195673023
Comment #10
dsnopekNext experiment!
EDIT: Here's the Travis build: https://travis-ci.org/panopoly/panopoly/builds/195670337EDIT: Here's a correct build: https://travis-ci.org/dsnopek/panopoly/builds/195672852
Comment #11
dsnopekIt turns out that the version compatibility for drupalextension 3.2.2 is more complicated than just needing PHP 5.5+ -- it actually will work with PHP 5.4, and composer can even install it, but the composer.lock file pins versions of the dependencies that need PHP 5.5+. If you don't have a lock file and run on a PHP 5.4 system, it simply selects older versions of those dependencies that work on PHP 5.4.
So, we have two options:
Option #1 is lower complexity in our build, but it has slower performance and could add instability to the build (if something unexpected changes with the dependencies). Option #2 is more complexity to maintain, but I think I'm leaning to that option for the time-being.
Comment #12
dsnopekGah! I couldn't make Option #1 work, even though it's theoretically better. Here's a new set of patches that just removes the composer.lock file
EDIT: Here's a Travis build: https://travis-ci.org/dsnopek/panopoly/builds/195687430
Comment #13
dsnopekAlright! Here's a patch that gets the PHP 7 and hhvm builds actually running, and actually allowed to fail (which PHP 7 definitely is -- I haven't waited for an hhvm build to completely finish, but I wouldn't be surprised if it's failing too)
Comment #15
dsnopekCommitted!