collapse = TRUE will collapse messages into source blocks, too.
message("this is a message")
#> this is a message
warning("this is a warning")
#> this is a warning
stop("this is an error")
#> Error: this is an error
Not collapsing or striping blank lines:
message("this is a message")
warning("this is a warning")
#> this is a warning
stop("this is an error")
#> Error: this is an error
Collapsing without striping blank lines:
message("this is a message")
#> this is a message
warning("this is a warning")
#> this is a warning
stop("this is an error")
#> Error: this is an error