The error message we get when we perform an unkeyed join now seems outdated:
When i is a data.table (or character vector), x must be keyed (i.e. sorted, and, marked as sorted) so data.table knows which columns to join to and take advantage of x being sorted. Call setkey(x,...) first, see ?setkey.
Since I solved my problem by simply adding on, and it seems that on is now generally the preferred approach for merges, should we not update this message?