Is a Python implementation of plugin meta data. It's somewhat fault tolerant (syntax/format variations supported), and adds a module loader.
|depends||re, pysimplegui, setuptools, flit|
It originated in streamtuner2. But has since gained some config dialog implementation of its own (for modseccfg and other small tools). Simplifies configuration management, and has a pretty terse API.
- Primarily supports Python
#comments. (Other syntax variants coming.)
- Additionally works from within pyz/zip packages.
- And adds setup() and flit package build wrappers.
# api: python # title: example # description: shows plugin_meta() reading ##type: main # version: 0.1 # # Imagine this being a real Python script. import pluginconf meta = pluginconf.plugin_meta(filename=__file__) print(meta.title) pluginconf.plugin_base = ["plugins", "contrib"] print(pluginconf.all_plugin_meta())
There's also a simplified interface now (pluginconf.bind) for most common use cases. Though of course it makes most sense if there are actual script/extension downloads.
##type: is a concession to pylint. It's not actually
required, espcially if
#class: could alternatively be
used for extension grouping.