Thanks for the kind words 
I’m the main driver on releases, so it pretty much comes down to a personal decision. My plan going forward is to release about once a month, because that’s enough time to get in a significant amount of development done. In this case I delayed the release for quite a while past that because tiles looked like they were “almost ready” for a long time (that’s nothing unusual with big features, in fact I’d say it’s typical), then we had some tricky bugs with inventory letter assignment that ended up taking a long time to sort out (there are still some issues, but it was BAAD for a few days). When it’s coming up on a month, I go through the issue tracker and make a list of bugs that we really can’t release without fixing, this is the list for 0.8:
Then once there are no known critical bugs, I start the release process, which is now outlined at:
https://github.com/CleverRaven/Cataclysm-DDA/blob/master/code_doc/RELEASE_CHECKLIST
If I don’t update the changelog as we go, just updating the changelog can take several evenings, because that involves me reading and summarizing over a thousand commits, then writing the release notices, etc.
So that’s roughly how it happens.