Revert "Fix order of loading of modules."

This reverts commit 4b895f04e3.
pull/12330/head
Chris Church 9 years ago
parent 1243686b90
commit ed3a9795d4

@ -196,12 +196,12 @@ class PluginLoader:
else: else:
suffixes = ['.py', ''] suffixes = ['.py', '']
try: potential_names = frozenset('%s%s' % (name, s) for s in suffixes)
return self._plugin_path_cache[name] for full_name in potential_names:
except KeyError: if full_name in self._plugin_path_cache:
# Cache miss. Now let's find the the plugin return self._plugin_path_cache[full_name]
pass
found = None
for path in [p for p in self._get_paths() if p not in self._searched_paths]: for path in [p for p in self._get_paths() if p not in self._searched_paths]:
if os.path.isdir(path): if os.path.isdir(path):
try: try:
@ -212,38 +212,30 @@ class PluginLoader:
for suffix in suffixes: for suffix in suffixes:
if full_path.endswith(suffix): if full_path.endswith(suffix):
full_name = os.path.basename(full_path) full_name = os.path.basename(full_path)
if suffix:
base_name = full_name[:-len(suffix)]
else:
base_name = full_name
break break
else: # Yes, this is a for-else: http://bit.ly/1ElPkyg else: # Yes, this is a for-else: http://bit.ly/1ElPkyg
continue continue
# Module found, now see if it's already in the cache if full_name not in self._plugin_path_cache:
if base_name not in self._plugin_path_cache: self._plugin_path_cache[full_name] = full_path
self._plugin_path_cache[base_name] = full_path
self._searched_paths.add(path) self._searched_paths.add(path)
try: for full_name in potential_names:
return self._plugin_path_cache[name] if full_name in self._plugin_path_cache:
except KeyError: return self._plugin_path_cache[full_name]
# Didn't find the plugin in this directory. Load modules from
# the next one
pass
# if nothing is found, try finding alias/deprecated # if nothing is found, try finding alias/deprecated
if not name.startswith('_'): if not name.startswith('_'):
alias_name = '_' + name for alias_name in ('_%s' % n for n in potential_names):
# We've already cached all the paths at this point # We've already cached all the paths at this point
if alias_name in self._plugin_path_cache: if alias_name in self._plugin_path_cache:
if not os.path.islink(self._plugin_path_cache[alias_name]): if not os.path.islink(self._plugin_path_cache[alias_name]):
display.deprecated('%s is kept for backwards compatibility ' display.deprecated('%s is kept for backwards compatibility '
'but usage is discouraged. The module ' 'but usage is discouraged. The module '
'documentation details page may explain ' 'documentation details page may explain '
'more about this rationale.' % 'more about this rationale.' %
name.lstrip('_')) name.lstrip('_'))
return self._plugin_path_cache[alias_name] return self._plugin_path_cache[alias_name]
return None return None

Loading…
Cancel
Save