Yeap you're right, the changelog generation didn't work very well because our commit messages weren't always very specific. This will become better in the future.
Just see my comments above :) If angular-translate doesn't fit to your needs, that's okay. Just stick with angular-gettext. But you'll lose all the awesomeness like async loading, fallback languages, language negotiation etc..
It doesn't support gettext, it solves the problem differently with translation id's. Stick with angular-gettext if it fits better to your needs, that okay :)
But I mention here, that we also see how we can bring such kinda support. Like using english texts as translation ids.
You are right, dirty check is not the best thing when it comes to performance. However, we've updated the directive to only set up watches when needed. Which means, when you don't change the language at runtime, but kick off some $digest cycles, they don't get re-evaluated. So this should be an performance boost. Filters always set up watches, if you use filters, well... deal with it. You could use the directive. angular-translate isn't the answer for everyone and that's okay because this is not what it should be. It solved a problem for me and people like it, which is why I still develop this module.
For some cases angular-gettext surely makes more sense, angular-translate gives you just a much higher integration into the angular world and solves more problems like async loading, fallback languages, pluralization, language negotiation etc etc.