If a commit fails, we return its error as the error of the function that called it.
This makes it easier to deploy the whole thing on FreeBSD
This way it's easier to do this in multiple places (like index and detailled view)
... in a very rough fashion