hoaproject/Ruler

Droping PHP version support

popra opened this issue · 7 comments

Hello,

I don't expect this to be fixed, but wanted to sound the horn that dropping support for PHP 5.3 in a revision version (least significant number) creates a lot of problems for downstream users like us.
Ideally this change would have been signaled, to the least, with a minor version bump.

Thanks,
Razvan

Hello :-),

Since PHP5.3 is dead, we have dropped it (please, see details here).

What is the problem exactly? Thanks to tags/snapshots, you can still target an old version using PHP5.3.

I know PHP 5.3 is dead, the point is to follow sensible versioning rules, see for example http://semver.org. Dropping support for a PHP version breaks backwards compatibility.

And yes, with tags and snapshots I can choose a specific version as I initially did by selecting "0.14.*" which should have guarantied that BC is kept :)

Our snapshot format is compatible with semver. All you have to do is:

{
    "require": {
        "hoa/ruler": "~0.0"
    }
}

We call him the creepy guy ;-). But you can also use ~0.1, it's the same here. When you will switch to an undead version of PHP, you will use ~1.0, as mentionned in the README.md :-).

However, the problem you were mentionning is we have dropped PHP5.3 in an “unfinalized” library (in the 0 “branch”), right?

@popra Hoa does not use Semver but its own versioning system Rush Release

@stephpy / @Hywan this is not a topic about semver (which btw you're not compatible with ... sorry), neither it is about PHP 5.3 EOL. It seems you're not following your own release conventions. Looking at the link you posted (http://mnt.io/P/2014-09-15_Rush_release.html), I've noticed:

Therefore, the master branch must have a compatibility number x, starting from 1 with step of 1.
Consequently, the new and last version format is x.Y{2,4}.mm.dd. For today for instance, it is 1.14.09.15.

While it's advertised that x should be bumped on a BC break, between version 0.14.09.16 and 0.14.09.17 you removed PHP 5.3 support which constitutes a BC break by any definition, but did not bump x.

@popra Because it's 0, it means that the library is not finalized, it's like 0.y.z with semver, we do whatever we want on this version number :-).

Up-to-date definition of Rush Release: http://hoa-project.net/Source.html#Rush_Release (in case someone wonders if it's ony on mnt.io: nop :-)).