Issue 1171150: Newline in error output of py_compile.compile (original) (raw)
The py_compile.compile() function, when doraise=False and a compilation error is encountered, simply prints the message to sys.stderr and returns. However, it neglects to add a newline. Furthermore, judging by the definition of PyCompileError earlier in the file and the fact that the message will always come from an instance of PyCompileError, the message will never include a newline.
Some shells issue a carraige return before the command prompt, so that would hide the output from py_compile.compile if it were the last message to the console.
Checking all occurences of "py_compile" in the python source indicates they all either use compile() with doraise=True or expect normal newline-terminated output on error.
This patch appends the newline.