aboutsummaryrefslogtreecommitdiffstats
path: root/util/pluginloader.lua
diff options
context:
space:
mode:
authorMatthew Wild <mwild1@gmail.com>2022-02-04 14:20:00 +0000
committerMatthew Wild <mwild1@gmail.com>2022-02-04 14:20:00 +0000
commit61d33dd36446c1a6d801c1d3781c4051641af615 (patch)
tree18971a4ff195a04efd5685fd7b79c46365893e71 /util/pluginloader.lua
parent4bdff5a4529443c19df04f16ee35939ef324f516 (diff)
downloadprosody-61d33dd36446c1a6d801c1d3781c4051641af615.tar.gz
prosody-61d33dd36446c1a6d801c1d3781c4051641af615.zip
modulemanager: Add plugin load filter that reads module metadata from source
Metadata in modules is added using lines formatted as: --% key: value Where key is a valid identifier string, and value is also a string (leading and trailing whitespace are trimmed during parsing). The initial supported keys are: --% requires_core_features: feature1, feature2, ... --% conflicts_core_features: feature1, feature2. ... These 'features' map to features reported by the new core.features module. A benefit of this load-time metadata approach compared to e.g. something like module:requires()/module:conflicts() is that we can continue to look in module search paths for a suitable module. Aborting an already-loaded module due to a version conflict would be too late.
Diffstat (limited to 'util/pluginloader.lua')
0 files changed, 0 insertions, 0 deletions