Merge pull request #9685 from bcoca/plugin_load_precedence
changed plugin load priority to be path based, not suffix based.
This commit is contained in:
commit
84bcc6a123
1 changed files with 8 additions and 5 deletions
|
@ -167,17 +167,20 @@ class PluginLoader(object):
|
||||||
else:
|
else:
|
||||||
suffixes = ['.py', '']
|
suffixes = ['.py', '']
|
||||||
|
|
||||||
for suffix in suffixes:
|
# loop over paths and then loop over suffixes to find plugin
|
||||||
full_name = '%s%s' % (name, suffix)
|
for i in self._get_paths():
|
||||||
if full_name in self._plugin_path_cache:
|
for suffix in suffixes:
|
||||||
return self._plugin_path_cache[full_name]
|
full_name = '%s%s' % (name, suffix)
|
||||||
|
|
||||||
|
if full_name in self._plugin_path_cache:
|
||||||
|
return self._plugin_path_cache[full_name]
|
||||||
|
|
||||||
for i in self._get_paths():
|
|
||||||
path = os.path.join(i, full_name)
|
path = os.path.join(i, full_name)
|
||||||
if os.path.isfile(path):
|
if os.path.isfile(path):
|
||||||
self._plugin_path_cache[full_name] = path
|
self._plugin_path_cache[full_name] = path
|
||||||
return path
|
return path
|
||||||
|
|
||||||
|
# if nothing is found, try finding alias/deprecated
|
||||||
if not name.startswith('_'):
|
if not name.startswith('_'):
|
||||||
return self.find_plugin('_' + name, suffixes, transport)
|
return self.find_plugin('_' + name, suffixes, transport)
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue