transaction: quietly rollback if no other changes than temporary files
If no actual change have been made, we don't really need to roll them back. We
only have to cleanup some temporary files and it seems reasonable to do that
quietly.
This will help us to use the transaction in wider context¹ without impacting the
user experience.
[1] as in Python context managers that lives longer.
#require docutils gettext
$ $TESTDIR/check-gendoc zh_TW
checking for parse errors