wmde / Diff

䷂ Library for diffing, patching and representing differences between objects
BSD 3-Clause "New" or "Revised" License
200 stars 15 forks source link

Release 3.3.1 #136

Closed mariushoch closed 1 year ago

jdforrester commented 1 year ago

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?

lucaswerkmeister commented 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.

jdforrester commented 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.

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.

JeroenDeDauw commented 1 year ago

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.

lucaswerkmeister commented 1 year ago

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.

mariushoch commented 1 year ago

Rebased this onto master and force pushed.

mariushoch commented 1 year ago

Build looks good now: Old, New!