It looks like the function getParameters() ignores global variables, i.e. parameters, that have null as their default value. See, for example, the Page Forms config - the four variables that default to null are all missing from the "Parameters" listing in the main page infobox. Looking through the code, the relevant line looks fine - the issue seems to be that Lua, when cycling through a table, simply ignores pairs where the value is null (or "nil", in Lua's terms). So maybe the only solution is to replace null with some other value (though I don't know what) either before, or during the load. Maybe there's a different solution, though.
Module talk:Extension
The set of parameters is now hardcoded in the Page Forms infobox, but you can see the old display here. Note, for example, that $wgPageFormsAutocompleteCacheTimeout, which defaults to null, is not listed there.
The categorization as Category: Extensions without MediaWiki version should be omitted if the templatemode
parameter is nocats
. Currently it’s always categorized if no version requirement can be determined, for instance seen in Extension status. I don’t feel confident enough to perform the edits myself so I’m posting this on the discussion page. Kai Burghardt (talk) 19:19, 9 February 2022 (UTC)
Done!
Would it be good to add the nocats check to the cat()
function? e.g.:
local function cat( title )
local pargs = frame:getParent().args
if pargs.templatemode == "nocats" then
return ''
end
return '[[Category:' .. title .. ']]'
end
Good suggestion, yet I think cat
should really just emit a categorization string, to keep its behavior predictable.
You may introduce a separate function, say ccat
(conditional category), that checks for pargs.templatemode
and relies on cat
, because there might be a legit situation for categorization regardless of nocats
By the way, currently, there are two occurrences of the string literal '[[Category:'
.
I guess this should be deduplicated.
‑‑Kai Burghardt (talk) 00:50, 10 February 2022 (UTC)
Do we add "C" to the array of licenses? What do you think? I personally think this is a viable option. As a matter of fact I would like to know if an extension is copyrighted.
I'm not sure I understand your question. All extensions are copyrighted by someone. Software licensing is based on the copyright system. The copyright holder(s) choose a software license which describes the terms under which they allow others to use their copyrighted work.
Ah, I meant closed source software.
Self answering: Well we have "unspecified" for this. :) For the rest we would probably need a new parameter which is out of scope for this Module.
Box in Extension:FlaggedRevs. Might be missing or illegal parameter value, but should not crash, rather than issuing a precise message about unexpected usage.
Thanks for the report! I think I've fixed it
@Legoktm: I have updated the module to also accept the new v3.0 or v3.1 license strings and updated the links to actually point to the respective license text rather than to a general landing page. Perhaps it is time to migrate "GPL-2.0+" to "GPL-2.0-or-later" on extension pages with some bot.
GPL-2.0 is pretty nasty since this could mean "GPL-2.0-only" or "GPL-2.0-or-later" so this cannot be migrated automatically.
Perhaps you know somebody who operates a bot that is capable of migrating at least the obvious. No, I am not thinking of you but I know that you know a couple of people closer to the technical end.
There are no older topics