Is there a reason you ever need to get the list of catalogs in random order instead of alphabetically ordered?  The only thing I can see is if the underlying data structure was changed to use an OrderedDict so that there might be a predictable order that was not the alphabetical sort order.  From Python 2.7 it is easy to parse JSON using OrderedDict instead of dict to preserve ordering in the JSON, but this isn't available in 2.6 in stdlib (from my understanding at least).

At the very least the default should be True so that users get reproducible results without always have to set sort=True.