Closed mariushoch closed 1 year ago
Is that necessary? As far as I can tell, composer respects the PHP dependency by default (unlike npm, which IIRC needs a flag to pay attention to the engine version); when I run php composer.phar require diff/diff
in a Docker container, it resolves to version 3.2.0 under php:7.0
and version 2.3.0 under php:5.6
.
Is that necessary? As far as I can tell, composer respects the PHP dependency by default (unlike npm, which IIRC needs a flag to pay attention to the engine version); when I run php composer.phar require diff/diff in a Docker container, it resolves to version 3.2.0 under php:7.0 and version 2.3.0 under php:5.6.
It's not that we're expecting anyone to try to use this on EOL PHP, but that's our normal practice for MediaWiki libraries in both composer and npm environments.
Historically these libraries have not treated higher PHP version requirements as breaking changes due to what @lucaswerkmeister mentioned: composer checks the PHP version anyway. For PHP libraries with Composer you just make things more difficult for your users (which includes yourself here) if you do major releases for PHP version bumps.
And in this case, the 3.3.0 tag already exists, so it seems too late to go with 4.0.0.
And in this case, the 3.3.0 tag already exists, so it seems too late to go with 4.0.0.
Yeah, I’ve just noticed in this CI build elsewhere (for this unrelated change) that there was a warning for the incompatible ArrayObject
method, because the build pulled in the latest ^3 Diff version; I think it would be unfortunate to leave the broken 3.3.0 release as the latest release on the v3 line.
Rebased this onto master and force pushed.
Minor nit - can this be tagged 4.0.0? 3.3.0 broke PHP 7.0/7.1 compatibility, which is a breaking change, so per semver it should have been tagged as such?