In the docs for call-system-and-get-output, it says:
If the call fails with an error then the function throws a SystemCallException, otherwise it returns the printed output from the program output and error streams.
This implies to me that if the command being invoked fails with an non-zero error code - that it would throw an exception. There is no other way to receive the error code of the process executed by this function - so the only thing left would be an exception.
However if you run this with a command that returns non-zero, then the command just silently returns content as if the process succeeded.
At the very least this is confusing and we should make the docs more clear. Better might be to improve the function so we can actually get an error code from it.
In the docs for call-system-and-get-output, it says:
This implies to me that if the command being invoked fails with an non-zero error code - that it would throw an exception. There is no other way to receive the error code of the process executed by this function - so the only thing left would be an exception.
However if you run this with a command that returns non-zero, then the command just silently returns content as if the process succeeded.
At the very least this is confusing and we should make the docs more clear. Better might be to improve the function so we can actually get an error code from it.