shivas / versioning-bundle

Simple way to version (semantic versioning 2.0.0) your Symfony2/3/4/5/6 application
MIT License
112 stars 30 forks source link

Increment version on composer install #23

Closed vincentcastagna closed 7 years ago

vincentcastagna commented 7 years ago

Hello all,

I have read the readme, added the scriptHandler call in the post install cmd of composer. But when I do run composer install, it always rewrite the application version to 0.1.0, thought it would increment it, or I'm missing something.

Is there a way to specify that I'd like to begin to 1.3.2 (as we did not implement versioning before) and increment it dynamically to 1.3.3 and have a jump to 1.4.0 ?

Thanks .

shivas commented 7 years ago

0.1.0 is default initial version that means that no other version was detected (no valid git tags for example), you can set version using same bump command to whatever you want.

vincentcastagna commented 7 years ago

Alright, atm we dont have git tags, which is a problem... But for now, sorry if my question is retarded, but when you say "you can set version using same bump command to whatever you want", what do you mean ? I thought that on each composer install it will increment the app_version stored in the parameters.yml, if null then use initial.

Thanks shivas

shivas commented 7 years ago

there is 2 options for you, one is to update parameters.yml file to your prefered current version, or use command:

./app/console app:version:bump

use ./app/console app:version:bump help

shivas commented 7 years ago

Or if you gonna use git tags to version, just add tag with desired version and redeploy

vincentcastagna commented 7 years ago

Alright. I think I'm gonna use git tags which will prevent version omitting and will be clearly more pro. Thanks for you fast answer.

vincentcastagna commented 7 years ago

Last one ^^ :

1.3.2-dev.364cfcd ... is this normal ? Can I avoid the -dev.364cfcd which is my env and commit associated to tag. Or is this a git stuff ?

shivas commented 7 years ago

its how default git handler works, u get -dev.commithash format if last commit to your repository is not tagged.

that is, if you commit something and tag it 1.3.2 resulting version gonna be 1.3.2

If you commit something again, but do not tag, version gonna be 1.3.2-dev.commithash

If you don't want such behaviour you can implement your own handler based on git one, just look in README how to do that.

General idea is that if current commit is not tagged, last tagged version is used as version but -dev.commithash prerelease is added