mirror of
https://github.com/ChristianLight/tutor.git
synced 2024-12-13 14:43:03 +00:00
fix: always print plugins sorted by name
`tutor plugins list` used to print plugins in random oredr. To be honest this has always bothered me.
This commit is contained in:
parent
d9d08ad0f7
commit
485f47f6d0
@ -4,6 +4,7 @@ Note: Breaking changes between versions are indicated by "💥".
|
||||
|
||||
## Unreleased
|
||||
|
||||
- [Improvement] Make `tutor plugins list` print plugins sorted by name.
|
||||
- [Improvement] Ignore Python plugins which cannot be loaded.
|
||||
|
||||
## v12.1.6 (2021-11-02)
|
||||
|
@ -363,11 +363,14 @@ class Plugins:
|
||||
prevent too many re-computations, which happens a lot.
|
||||
"""
|
||||
installed_plugin_names = set()
|
||||
plugins = []
|
||||
for PluginClass in cls.PLUGIN_CLASSES:
|
||||
for plugin in PluginClass.iter_installed():
|
||||
if plugin.name not in installed_plugin_names:
|
||||
installed_plugin_names.add(plugin.name)
|
||||
yield plugin
|
||||
plugins.append(plugin)
|
||||
plugins = sorted(plugins, key=lambda plugin: plugin.name)
|
||||
yield from plugins
|
||||
|
||||
def iter_enabled(self) -> Iterator[BasePlugin]:
|
||||
for plugin in self.iter_installed():
|
||||
|
Loading…
Reference in New Issue
Block a user