# HG changeset patch # User Matthew Wild # Date 1640184042 0 # Node ID c1d2bc6603ae9330b4be0fb019257ab5fd37d1ba # Parent 84fd6a79cda7422bcd063f6b06baacbf4dbd69fa moduleapi: Support stripping of multi-word from module names The goal is to allow module:provides("foo-bar") with a mod_foo_bar_ prefix being stripped. It will break any existing modules that use a prefix and have hyphens instead of underscores. No such modules are known. diff -r 84fd6a79cda7 -r c1d2bc6603ae core/moduleapi.lua --- a/core/moduleapi.lua Tue Dec 21 21:23:01 2021 +0100 +++ b/core/moduleapi.lua Wed Dec 22 14:40:42 2021 +0000 @@ -355,7 +355,7 @@ local item_name = self.name; -- Strip a provider prefix to find the item name -- (e.g. "auth_foo" -> "foo" for an auth provider) - if item_name:find(name.."_", 1, true) == 1 then + if item_name:find((name:gsub("%-", "_")).."_", 1, true) == 1 then item_name = item_name:sub(#name+2); end item.name = item_name;