giving minLength a default of 1, as allowing an empty string is actually rare