Earlier quoted context omitted.
I think one of the larger issues with curl | sh is what could happen in the event of a network outage or early termination on the connection. For example, if you're downloading a script that has a line like this rm -rf ~/.tmp/foo/bar But the HTTP connection was lost before the entire file was downloaded and `rm -rf ~` was the end of one packet and `/.tmp/foo/bar` was the contents of the other (lost) packet, you're sc…
Why don't shells NOT execute a command if there's no trailing EOL character, to mitigate this very problem?
You should at least download, verify the size and checksum (if available), take a peek at it, and only then run it.