prewk/XmlStreamer

composer release cycle

Closed this issue · 5 comments

There should be stable versions instead of just dev-master. We are using this library and are hesitant to just require dev-master, as it seems rather dangerous. One untested commit could break the app in a blink of a 'composer update'.
I know, it is not without effort to establish a save release cycle, but I'd strongly advice to do so, so people can easily trust certain versions and - if needed - install a specific one, should a future release break by accident or lose backwards compatibility.

@bestform You're right, but how am I supposed to tag the releases to mark them as stable? I though "x.x.x" was considered stable, and "x.x.x-yyyy" considered dev.
Do I need a version branch, first?

Probably stupid questions, but I'm pretty new to both git and composer.

I would recommend creating a develop branch into which you merge all fix- and feature-branches. If you want to make a release, you merge the current state of the develop branch into master and tag the master appropriately.
x.x.X should be patch releases
x.X.x should be minor versions
X.x.x should be major releases aka. huge features probably braking backwards compatibility (eg. should you change an interface)

In general it should be save for the user to update to the latest minor version without the risk of breaking something.

Have a look at http://semver.org/ for the usual way of versioning your releases.

Thanks, but why isn't it working properly as it is now?
I have one branch - master - and I've tagged the releases x.y.z.

That's what I don't get :)

Is something missing in my root composer.json perhaps?
I've tried reading up and googling about it, but there seems to be some basic idea I'm missing.

Worth mentioning: xml-string-streamer is a successor, and I'm probably not going to do a whole lot of developing of this (XmlStreamer) anymore.

Oh wow! I didn't recognize your tags. Well, I didn't check to be honest, because a coworker came to me explaining he had to copy your library instead of using composer as there weren't any tags. I didn't double check and just opened the issue. Sorry for that. Everything is fine then. :)

Haha okay, I've encountered problems with it as well so I was hoping for a clear answer, but maybe there's no problem then and I just screwed up when I tested it in another project or something.
Take care :)