<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">I don’t know if you are aware of <a href="https://www.npmjs.com/package/semantic-release" class="">https://www.npmjs.com/package/semantic-release</a> project<div class=""><br class=""></div><div class="">It’s built for npm packages, but the same idea could be used for Haskell/cabal too.</div><div class=""><br class=""></div><div class="">The idea is to use SCM commit message to decide which version digit to bump.</div><div class="">- you still have to annotate changes</div><div class="">- and if you try to cheat, but semantic-release runs old test suite again new version of the library to detect obvious breaking changes</div><div class=""><br class=""></div><div class="">Seems there is <a href="https://github.com/blitzcode/hackage-diff" class="">https://github.com/blitzcode/hackage-diff</a> which can be used to make the task of detecting API changes even easier.</div><div class=""><br class=""></div><div class="">Hopefully these pointers let you make even greater tool!</div><div class=""><br class=""></div><div class="">- Oleg</div><div class=""><br class=""><div><blockquote type="cite" class=""><div class="">On 19 May 2015, at 20:02, Alois Cochard <<a href="mailto:alois.cochard@gmail.com" class="">alois.cochard@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class="">Hi all,<div class=""><br class=""></div><div class="">I am currently writing a tool to automate the release and version bump of cabal projects.</div><div class=""><br class=""></div><div class="">Currently you can call the tool by giving as argument the rank of the branch you want to bump, for example given <a href="http://0.0.0.0/" class="">0.0.0.0</a>:</div><div class=""><br class=""></div><div class="">- `cabal-release 0` bump to `1`</div><div class="">- `cabal-release 1` bump to `0.1`<br class=""></div><div class="">- `cabal-release 2` bump to `0.0.1`<br class=""></div><div class="">- `cabal-release 3` bump to `0.0.0.1`<br class=""></div><div class=""><br class=""></div><div class="">As we are not all robots (yet), I thought that in addition to this it would be great if the user could give a human friendly name for the rank.</div><div class=""><br class=""></div><div class="">For now, here is what I have for the different rank:</div><div class="">0 == --major</div><div class="">1 == --major-fix<br class=""></div><div class="">2 == --minor<br class=""></div><div class="">3 == --minor-fix<br class=""></div><div class=""><br class=""></div><div class="">I'm curious to know what you think of those names? any suggestions or known established convention about that?</div><div class=""><br class=""></div><div class="">Thanks</div><div class=""><div class=""><br class=""></div>-- <br class=""><div class="gmail_signature"><div dir="ltr" class=""><div class=""><b class="">Λ\ois</b></div><div class=""><div class=""><a href="http://twitter.com/aloiscochard" target="_blank" class="">http://twitter.com/aloiscochard</a></div><div class=""><a href="http://github.com/aloiscochard" target="_blank" class="">http://github.com/aloiscochard</a></div></div></div></div>
</div></div>
_______________________________________________<br class="">Haskell-Cafe mailing list<br class=""><a href="mailto:Haskell-Cafe@haskell.org" class="">Haskell-Cafe@haskell.org</a><br class="">http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe<br class=""></div></blockquote></div><br class=""></div></body></html>