Behat / Gherkin

Gherkin parser, written in PHP for Behat project
MIT License
1.05k stars 91 forks source link

Drop older PHP versions #176

Closed ciaranmcnulty closed 3 years ago

ciaranmcnulty commented 4 years ago

Next Behat is going to drop PHP < 7.2

Should this parser too? It's used by codeception (which supports PHP 5.6) but they could use the older version still

(cc @stof @phil-davis)

ciaranmcnulty commented 4 years ago

Ping @davertmik

ciaranmcnulty commented 4 years ago

@pamil Just so you're in the loop

ciaranmcnulty commented 4 years ago

My vote is bump it to 7.2 in a minor version

This library has been stable (/stagnant?) for a while and people on lower versions can continue to use the stable older minors.

phil-davis commented 4 years ago

If just a minor version bump is done, then for example someone on PHP 5.6, 7.0 or 7.1 that has an explicit reference to Behat/Gherkin in their composer.json

    "require": {
        "behat/gherkin": "^4.0",
    }

Currently they will be getting 4.6 and all is well.

Then they will start getting 4.7 supporting only PHP 7.2+ and they will have to adjust their composer.json to pin to 4.6.*

But maybe there are not lots of "random" projects that directly require Behat/Gherkin and it is just Behat/Behat and a few others.

phil-davis commented 4 years ago

I made PR #178 to demonstrate the unit test and CI changes to support PHP min version 7.2 and using the latest PHPUnit 8 and 9. IMO there is no run-time code that needs touching, which is "a good thing"

Taluu commented 4 years ago

@phil-davis

Then they will start getting 4.7 supporting only PHP 7.2+ and they will have to adjust their composer.json to pin to 4.6.*

They won't. Comnposer won't install 4.7+ if they don't have 7.2. So they'll have nothing to do, and still get 4.6.

stof commented 4 years ago

I vote for going PHP 7.2+ in our next minor version to match the behat/behat requirement

phil-davis commented 4 years ago

We could also merge any other bugfix and feature PRs (e.g. #161 #164 #159 ) and make a release at that point. Then users of the existing Behat/Behat release who are on PHP 5.6, 7.0, 7.1 will be able to get those things.

And after that, move to PHP 7.2 as min version.

phil-davis commented 3 years ago

and make a release at that point.

IMO a release could be done now of the current master. Then we can move forward again to drop old PHP, support newer PHP etc.

@ciaranmcnulty are you able to do that? Who can move that forward? Maintenance on Behat/* feels a bit "stuck" at the moment. Can other people join the maintainers group to help out?

phil-davis commented 3 years ago

IMO a release could be done now of the current master

4.7.0 and then 4.7.1 have been released. Maybe we wait "a bit" in case there are any other edge cases found before moving forward with this issue.

stof commented 3 years ago

done in #178 for the 4.8.0 release