LrStringUtils.compareStrings() doesn't compare strings containing digits correctly. For example, it says that "a9b" comes before "a10b":
RackMultipart201704191286841nk-b41ef8e9-131e-47d1-94e5-e06871821976-651874383.png
It appears that compareStrings() is comparing sequences of digits numerically, e.g. as the numbers 9 and 10 in the example above. While that definition can be useful in some cases, such as ordering filenames containing sequence numbers, it is not generally useful for sorting.
The SDK should restore the traditional meaning to compareStrings() and optionally provide a second compare function for the current functionality.