Currently only eimap_command_peek_message.erl works with responses split across network packets. All commands should be able to deal with this. Includes tests.
To make this work parse/2 needs to return { more, fun/3, ParseState :: any() } when it detects it does not have the whole message (e.g. has not received a tagged response terminated with \r\n)