This change was made partially as a security fix. The way identifiers handled recursion was subtly different to the way aliases did, so that a recursive call to the same alias as an alias or as an identifier would have resulted in different behaviours, one of which would have been to unintentionally pass the command and its parameters to the server. Users will unfortunately need to update their scripts as this change is important enough to keep in place.