We are using Email::Address->parse there. Which returns a list of Email::Address objects for all email addresses found. And if we receive something (altough changed), we return true. But we generally just want to validate one address? So this is all fine for Koha::Email: Koha::Email->is_valid('test1@a.nl '), Koha::Email->is_valid(' test1@a.nl'), Koha::Email->is_valid('test1@a.nl,test2@b.nl'), Note that the returned addresses are trimmed (and ignored). This may not be a big deal for the interface btw, since we have HTML5 validation on email fields. But could be a problem when coming from eg REST API and validation is just done with is_valid.