Cannabis Ruderalis

Content deleted Content added
Redrose64 (talk | contribs)
→‎Infobox No: examples?
MSGJ (talk | contribs)
Line 1: Line 1:
{{WPCouncil}}
{{WPCouncil}}
{{notice|If you wish to discuss the behaviour of the project banner inside the banner shell, then you may wish to post at [[Template talk:WikiProject banner shell]] instead.}}
{{central
{{to do|collapsed=yes}}
| text = all core talkpages redirect here.
{{/happysad}}
* [[Template talk:WPBannerMeta/hooks|WPBannerMeta/hooks]] have their own talkpages.
* There is also a subpage about banner [[Template:WPBannerMeta/Conversion|conversion]].
}}{{/happysad}}
{{User:MiszaBot/config
{{User:MiszaBot/config
| algo = old(28d)
| algo = old(60d)
| archive = Template talk:WPBannerMeta/Archive %(counter)d
| archive = Module talk:WikiProject banner/Archive %(counter)d
| counter = 11
| counter = 14
| maxarchivesize = 150K
| maxarchivesize = 150K
| archiveheader = {{Aan}}
| archiveheader = {{Aan}}
Line 14: Line 12:
| minthreadsleft = 4
| minthreadsleft = 4
}}
}}
{{archives|index=/Archive index|bot=lowercase sigmabot III|age=28|auto=short}}
{{archives}}


== [[Template:Etymology section]] ==
__TOC__
== Overhaul: moving to Lua & JSON ==


Template uses custom code to implement a custom quality rating, but it does not do it in the usual way with a custom mask. I'm not sure what to do with this template so dropping it here in case others have an idea. &mdash;&nbsp;Martin <small>([[User:MSGJ|MSGJ]]&nbsp;·&nbsp;[[User talk:MSGJ|talk]])</small> 23:15, 23 February 2024 (UTC)
I'm planning to rewrite this template's functionality as a Lua module. As part of that, the plan will be to incorporate some design tweaks (as suggested earlier/above by Headbomb) and move class definitions and class masks to a JSON-file model. I've already prototyped a JSON file covering the "standard" set of classes over at [[Template:Class/definition.json]], and there's Lua covering the functionality of {{tl|class}} and related over at [[Module:Class]]. I never pushed those live because they are bad at supporting custom classes; this upgrade will get us around that problem. Individual WikiProjects will be able to define their own JSON files to extend or override the default set.
:@[[User:Kanashimi|Kanashimi]], @[[User:Qwerfjkl|Qwerfjkl]]: please could you not remove any class parameter from this template until we figure out the best way to code it? It is using a custom mask, but not in the usual way. &mdash;&nbsp;Martin <small>([[User:MSGJ|MSGJ]]&nbsp;·&nbsp;[[User talk:MSGJ|talk]])</small> 20:56, 2 March 2024 (UTC)
::[[User:MSGJ|Martin]], I've stopped my bot, it's run on the vast majority of pages.<span id="Qwerfjkl:1709413119615:Module_talkFTTCLNWikiProject_banner" class="FTTCmt"> —&nbsp;[[User:Qwerfjkl|<span style="background:#1d9ffc; color:white; padding:5px; box-shadow:darkgray 2px 2px 2px;">Qwerfjkl</span>]][[User talk:Qwerfjkl|<span style="background:#79c0f2;color:white; padding:2px; box-shadow:darkgray 2px 2px 2px;">talk</span>]] 20:58, 2 March 2024 (UTC)</span>
:::Okay, wow. I didn't realise you had already finished! &mdash;&nbsp;Martin <small>([[User:MSGJ|MSGJ]]&nbsp;·&nbsp;[[User talk:MSGJ|talk]])</small> 20:59, 2 March 2024 (UTC)
::::[[User:MSGJ|Martin]], yes, we've totally emptied the main two categories (in the main talk namepace). Around 4-5 million pages, I think.<span id="Qwerfjkl:1709413295958:Module_talkFTTCLNWikiProject_banner" class="FTTCmt"> —&nbsp;[[User:Qwerfjkl|<span style="background:#1d9ffc; color:white; padding:5px; box-shadow:darkgray 2px 2px 2px;">Qwerfjkl</span>]][[User talk:Qwerfjkl|<span style="background:#79c0f2;color:white; padding:2px; box-shadow:darkgray 2px 2px 2px;">talk</span>]] 21:01, 2 March 2024 (UTC)</span>
::::Yes, we've already processed a round of major categories. But I'm still on the task of removing obsolete parameters. I suggest adding {{tl|Etymology section}} to [[:Category:WikiProjects using a non-standard quality scale]] first. [[User:Kanashimi|Kanashimi]] ([[User talk:Kanashimi|talk]]) 22:53, 2 March 2024 (UTC)
:How is that template not appearing in [[:Category:WikiProject banners with non-standard names]]? [[User:Gonnym|Gonnym]] ([[User talk:Gonnym|talk]]) 13:33, 3 March 2024 (UTC)
::The current logic is <code>(args.PROJECT_NAME=='WikiProject '..project or not args.PROJECT_NAME) and current_page.rootPageTitle.prefixedText~='Template:WikiProject ' .. project</code> In this case the project name is not WikiProject PROJECT and it is not undefined &mdash;&nbsp;Martin <small>([[User:MSGJ|MSGJ]]&nbsp;·&nbsp;[[User talk:MSGJ|talk]])</small> 13:56, 3 March 2024 (UTC)
:::Maybe adjust this so we check either if {{para|PROJECT_NAME}} is equal to "WikiProject {{var|project}}" OR the template name does not start with "WikiProject"? Since we standardized on "WikiProject {{var|project}}" for these templates, there really shouldn't be many with non-standard valid names I think, unless I missed something. [[User:Gonnym|Gonnym]] ([[User talk:Gonnym|talk]]) 15:23, 3 March 2024 (UTC)
::::This banner isn't for a WikiProject. Perhaps that issue should be corrected instead? [[User:Izno|Izno]] ([[User talk:Izno|talk]]) 17:53, 3 March 2024 (UTC)
:::::Isn't it part of linguistics project? &mdash;&nbsp;Martin <small>([[User:MSGJ|MSGJ]]&nbsp;·&nbsp;[[User talk:MSGJ|talk]])</small> 19:22, 3 March 2024 (UTC)
::::::A task force of that project, yes. [[User:Izno|Izno]] ([[User talk:Izno|talk]]) 22:11, 3 March 2024 (UTC)
:::::::I usually nominate task force banners to merge with their project banner but because this had manual code in it I left it alone for now as I didn't investigate what that code does and if indeed it needs manual code. [[User:Gonnym|Gonnym]] ([[User talk:Gonnym|talk]]) 06:52, 4 March 2024 (UTC)
::::::::I think I'll start by removing the custom code and attempting to use the standard methods. If that works then we can look at the next step &mdash;&nbsp;Martin <small>([[User:MSGJ|MSGJ]]&nbsp;·&nbsp;[[User talk:MSGJ|talk]])</small> 18:31, 4 March 2024 (UTC)
:::::::::Conclusion: it is easy to convert it, but some categories would need to be renamed. Test cases at [[Template:Etymology section/testcases]]. I have also dropped a note on [[Wikipedia talk:WikiProject Linguistics]]. Also, there are only {{PAGESINCAT:Etymology Task Force etymologies}} pages using this template so it was never really adopted on any scale &mdash;&nbsp;Martin <small>([[User:MSGJ|MSGJ]]&nbsp;·&nbsp;[[User talk:MSGJ|talk]])</small> 18:47, 4 March 2024 (UTC)
::::::::::Maybe after merging with {{tl|WikiProject Linguistics}}, the syntax can be changed to something similar to this:
::::::::::* {{tlx|WikiProject Linguistics|etymology{{=}}yes|etymology-section{{=}}good}}
::::::::::* {{tlx|WikiProject Linguistics|etymology{{=}}yes|etymology-section{{=}}incomplete}}
::::::::::* {{tlx|WikiProject Linguistics|etymology{{=}}yes|etymology-section{{=}}missing}}
::::::::::* {{tlx|WikiProject Linguistics|etymology{{=}}yes|etymology-section{{=}}unassessed}}
::::::::::so instead of a new set of unique classes, it will just be another parameter that will trigger the placement in the category. [[User:Gonnym|Gonnym]] ([[User talk:Gonnym|talk]]) 10:02, 6 March 2024 (UTC)
:::::::::::Sounds like a good plan. I also think we could rename [[:Category:Articles with mid-importance etymologies]] to [[:Category:Mid-importance etymology articles]] or similar &mdash;&nbsp;Martin <small>([[User:MSGJ|MSGJ]]&nbsp;·&nbsp;[[User talk:MSGJ|talk]])</small> 10:30, 6 March 2024 (UTC)
:::::::::::I feel like those are just other ways to grade each article with a class, which we have examples of for task forces. Good would put it in B, incomplete C or start, unassessed is missing a grade, and missing is probably equivalent to unassessed ultimately... [[User:Izno|Izno]] ([[User talk:Izno|talk]]) 17:17, 6 March 2024 (UTC)
::::::::::::That's also a good point. [[User:Gonnym|Gonnym]] ([[User talk:Gonnym|talk]]) 07:19, 7 March 2024 (UTC)
:::::::::::::Missing etymology might just be like {{para|needs-infobox}} I guess, but the rest all have direct analogs to our rating system. [[User:Izno|Izno]] ([[User talk:Izno|talk]]) 16:32, 7 March 2024 (UTC)
Due to the lack of any response at the project talk page, it seems no one is interested in this template, so I have just removed the non-standard assessments altogether. If this gets reverted then we can look at methods to preserve the assessments in a more standard way &mdash;&nbsp;Martin <small>([[User:MSGJ|MSGJ]]&nbsp;·&nbsp;[[User talk:MSGJ|talk]])</small> 09:15, 3 April 2024 (UTC)


== Execution time ==
Besides Lua generally producing faster, cleaner, and more maintainable code, the upgrade to use JSON files in place of class masks has a very specific advantage: it'll be very easy for other tools to "discover" custom classes defined by individual projects. For example, I maintain the [[Wikipedia:Metadata gadget|metadata gadget]] that brings assessments from the talk page to the title and tagline of the article namespace. That gadget currently must hardcode every custom class used by every WikiProject in order to support it, and that's not practical. By moving to JSON, both wiki-side Lua scripts and external (whether client-side gadgets in JavaScript or third-party code like bots) can access the same definitions without the need for one central file containing ''every'' custom definition used on the wiki. This will also make practical some future tools I'd like to develop, specifically focusing on exposing data about article quality over time and [[mw:ORES|ORES]].


I've recently been looking into the execution time of this module due to a couple of lua timeout errors occassionally popping up on larger pages with a lot of banner templates (e.g. [[:Talk:List of common misconceptions|1]], [[:Talk:Roman Empire|2]], [[:Talk:World War II|3 (not entirely wpb's fault)]]). I've already proposed a change to a module this module uses which should solve the issue well enough, but I think it's still worth looking into optimising this code.
I'm only human, so I'm probably missing some details here and there. Specifically, I'd appreciate input into the schema used for the JSON: for example, am I missing details that should be supplied in class definitions? More broadly, are there issues that this change would cause in places? I'd like to preempt problems as much as possible. <span style="white-space:nowrap;">{&#123;[[User:Nihiltres|<span style="color:#233D7A;">Nihiltres</span>]]&#8202;&#124;[[User talk:Nihiltres|talk]]&#8202;&#124;[[Special:Contributions/Nihiltres|edits]]}&#125;</span> 23:54, 28 August 2017 (UTC)
:'''Highest support''' from me. This is a long term project, which will need a lot of testing and collaboration with other project/bots, but the goals are excellent and desirable. <span style="font-variant:small-caps; whitespace:nowrap;">[[User:Headbomb|Headbomb]] {[[User talk:Headbomb|t]] · [[Special:Contributions/Headbomb|c]] · [[WP:PHYS|p]] · [[WP:WBOOKS|b]]}</span> 00:29, 29 August 2017 (UTC)
: Would the format used by the parameters in {{tl|ReleaseVersionParameters}} be a good starting point for the schema? [[User:Titoxd|Tito<span style="color:#008000;">xd</span>]]<sup>([[User talk:Titoxd|?!?]])</sup> 00:45, 29 August 2017 (UTC)
::Indeed, ReleaseVersionParameters already had this goal in mind: the WP 1.0 bot does not hard code any custom quality or importance classes, but is able to parse them directly from the info in this "template". Really, it is not a template, just a way to format information in a way that can be parsed by a bot and hidden on the wiki. The main theoretical issues is if different projects have different custom classes on the same article, in which case there may be no easy way to tell the single "authoritative" rating for the article. It is necessary to have information on the relative position of each custom class with respect to the standard classes, which the template achieves with a numerical parameter. &mdash;&nbsp;Carl <small>([[User:CBM|CBM]]&nbsp;·&nbsp;[[User talk:CBM|talk]])</small> 01:24, 29 August 2017 (UTC)
:::My thought on "multiple custom classes" was that if there's more than one WikiProject involved in an article, the "authoritative", "standard" rating should be picked strictly from the standard set. We'd accomplish that not with numerical ratings—those are best for ''ranking'' qualities, rather than picking from them—but with a "maps to" property. For example, a WikiProject that implemented a "B+" rating could give it a property mapping that rating to the ordinary B-class rating for standardization purposes. If the mapping property wasn't provided, then by default we could map to the quality rating with the nearest lower numeric quality rating … which might mean having to be tricky about list-type ratings, but that's manageable. <span style="white-space:nowrap;">{&#123;[[User:Nihiltres|<span style="color:#233D7A;">Nihiltres</span>]]&#8202;&#124;[[User talk:Nihiltres|talk]]&#8202;&#124;[[Special:Contributions/Nihiltres|edits]]}&#125;</span> 14:04, 29 August 2017 (UTC)
::That's great; I wasn't aware of that. Where bits overlap, it'd definitely be worth using the same patterns or values. For example, I've been thinking that a numerical value should be added to the class definition schema so that tools can insert custom classes into an overall order, and so that the "overall rating" of the page can be selected sanely—we can use the same scale as ReleaseVersionParameters. As mentioned, I started [[Template:Class/definition.json]] as the prototype schema; my current thinking is that it might make sense to expand the schema to use two inner objects ("quality" and "importance") or even three ("quality", "importance", and "WikiProject definition") so that we can put everything in the same place. <span style="white-space:nowrap;">{&#123;[[User:Nihiltres|<span style="color:#233D7A;">Nihiltres</span>]]&#8202;&#124;[[User talk:Nihiltres|talk]]&#8202;&#124;[[Special:Contributions/Nihiltres|edits]]}&#125;</span> 14:04, 29 August 2017 (UTC)
*'''Oppose''' Moving to Lua will make my long-term project (adding documentation to all WikiProject banners, ensuring that existing docs are accurate and up to date) much more difficult. It's OK when a banner uses one of the standard parameters in a standard way, but several use weird fiddles, and for these I need to trace through the code to see exactly what happens when a given permutation of parameters is in use. Lua code is untracable. --[[User:Redrose64|<span style="color:#a80000; background:#ffeeee; text-decoration:inherit">Red</span>rose64]] &#x1f339; ([[User talk:Redrose64|talk]]) 20:10, 29 August 2017 (UTC)
*:Could you be more specific with the problem, or give examples, please? I'd like to think that this project will help us smooth out "weird fiddles" somewhat, and I'm willing to write a variety of debug/testing tools into the code if that's something that you need. <span style="white-space:nowrap;">{&#123;[[User:Nihiltres|<span style="color:#233D7A;">Nihiltres</span>]]&#8202;&#124;[[User talk:Nihiltres|talk]]&#8202;&#124;[[Special:Contributions/Nihiltres|edits]]}&#125;</span> 03:41, 30 August 2017 (UTC)
*::Couldn't a Lua version possibly auto-generate the documentation page as well? -- [[User:WOSlinker|WOSlinker]] ([[User talk:WOSlinker|talk]]) 07:57, 30 August 2017 (UTC)
*:::It may be possible to autogenerate some documentation in Lua, I don't know. Don't expect me to do it: Lua is a total enigma to me (when templates get converted to Lua, this is against the spirit of "the free encyclopedia that anyone can edit"). I have been documenting WikiProject banners since April 2010 and have developed a set of templates (see for example {{tlx|WPBannerDoc}}) that cope with ''most'' cases of standard parameters used in standard ways; examples include
*:::{{WPBannerDoc|small}}
*:::{{WPBannerDoc|category}}
*:::and some cases of standard parameters used in non-standard ways, also some cases of non-standard parameters. My task is not complete: for example, I have not yet fully worked out the code for {{para|A-Class}} used by some banners (e.g. {{tlx|WikiProject Cricket}} used it {{diff|Template:WikiProject Cricket|prev|729920935|until July 2016}}). --[[User:Redrose64|<span style="color:#a80000; background:#ffeeee; text-decoration:inherit">Red</span>rose64]] &#x1f339; ([[User talk:Redrose64|talk]]) 09:43, 30 August 2017 (UTC)
:::::I don't really see why LUA code in the background would prevent any of this working as is, or with small modifications. Not an expert on LUA, but to my understanding how you create specific instance of a banner like {{tl|WP Physics}} should very much look the same as they do now, with a bit of streamlining for the class/importance code. <span style="font-variant:small-caps; whitespace:nowrap;">[[User:Headbomb|Headbomb]] {[[User talk:Headbomb|t]] · [[Special:Contributions/Headbomb|c]] · [[WP:PHYS|p]] · [[WP:WBOOKS|b]]}</span> 12:21, 30 August 2017 (UTC)
:::::{{re|Redrose64}} There are (at least) two different ways we could roll this Lua/JSON update out:
:::::#Include a superset of existing functionality, move the new code into place in a single edit, then migrate deprecated functionality ("weird fiddles") to new functionality (i.e. the WikiProject-specific JSON file). Remove deprecated functionality as it's eliminated in the wild.
:::::#Write a new, cleaner template that significantly cleans things up but has a few breaking changes, then migrate project banners individually. Strictly speaking, we can write the JSON files that allow external-tool support for projects before migrating the project banners—just then we need to update things in two places any time a project wants to change its assessment system at all, with the risk that the two places become out of sync. This does have the advantage that it can be done even if the project members are cranky and don't want their project banner updated for whatever reason.
:::::Either way, a focus will be on straightforward, single-document configuration for WikiProject assessment systems, and getting rid of complex multi-template systems (like A-class review hooks) in favour of integrated code that produces stuff that's more standard across WikiProjects. Either way, we'll have dozens of edge cases to resolve, and people that resist change for no good reason.
:::::I understand the concern of Lua being opaque to you, but either way—multilevel-transclusion conditional wikitext or Lua—we've got complexity that's excluding ''someone''. We should work on making it so that ''most people'' don't have to deal with the complicated stuff, of course, and I think that this project is in line with that through its design goal of moving "adding support for custom processes" (like A-class reviews) away from weird systems and so on into "just specify some extra properties for the class definition".
:::::I think that our goals synergize well: we both want these systems to be easy to use and well-documented. My approach is just more dramatic, mostly by pushing things from "implement stuff yourself in wikitext" to "use the standard systems the banner module offers". My ''personal'' preference would be that we just force every WikiProject to use only a single standard set of classes and processes—that would give us site-wide consistency at a stroke—but I know that that's not politically feasible. As an alternative, I'm trying to make a system that offers support for custom classes and processes but ''makes them machine-readable'' so that we can deal with them (and yes, presumably ''document'' them) mostly automatically. <span style="white-space:nowrap;">{&#123;[[User:Nihiltres|<span style="color:#233D7A;">Nihiltres</span>]]&#8202;&#124;[[User talk:Nihiltres|talk]]&#8202;&#124;[[Special:Contributions/Nihiltres|edits]]}&#125;</span> 17:32, 30 August 2017 (UTC)
::::::OK, here's an example. I've just improved [[Template:WikiProject Libraries/doc]]; whilst doing so, I found an unusual line in [[Template:WikiProject Libraries]]: <source lang=moin>|INFOBOX = yes</source> Wondering what the effect of that might be, I looked in the source of [[Template:WPBannerMeta]] for the sequence <code><nowiki>{{{INFOBOX</nowiki></code> and not finding it, I knew straightaway that the parameter was unrecognised, and I could safely ignore it. If [[Template:WPBannerMeta]] had been converted to a module, there would have been ''no way'' for me to find out whether that parameter is recognised or not, regardless of the difficulty in determining (if recognised) exactly what it does. --[[User:Redrose64|<span style="color:#a80000; background:#ffeeee; text-decoration:inherit">Red</span>rose64]] &#x1f339; ([[User talk:Redrose64|talk]]) 08:47, 3 September 2017 (UTC)
:::::::If that's a desired feature, we could easily implement a parameter check like several templates do, and put out an error message when previewing the results. <span style="font-variant:small-caps; whitespace:nowrap;">[[User:Headbomb|Headbomb]] {[[User talk:Headbomb|t]] · [[Special:Contributions/Headbomb|c]] · [[WP:PHYS|p]] · [[WP:WBOOKS|b]]}</span> 12:20, 3 September 2017 (UTC)
::::::::Parameter checks which display error messages on preview - such as the one that I {{diff|Template:Infobox London station|prev|796859992|recently added}} to {{tlx|Infobox London station}} - are fine if the person adding that check knows what the valid parameters actually are. Once a template has become a module, you no longer know this. You are then dependent upon the module writer to keep the valid parameter list up to date, something which we cannot guarantee will be done, just as we cannot guarantee that those who amend templates will also amend the documentation. Any computer programmer will tell you that fully-documented functions are an ideal that is never achieved. --[[User:Redrose64|<span style="color:#a80000; background:#ffeeee; text-decoration:inherit">Red</span>rose64]] &#x1f339; ([[User talk:Redrose64|talk]]) 12:48, 3 September 2017 (UTC)
:{{undent}} [[Module:Citation/CS1/Whitelist]] is updated each time a parameter is added or removed. You can also inspect Lua code in the same way as you inspected the template code for banner meta--it only seems opaque to you because you are unfamiliar with the language, not because it is impossible to do so. To any programmer, or anyone not versed in arcane template syntax programming language (and it is arcane, for a number of reasons), your use case is just as opaque. If you don't want to learn Lua, that's your prerogative. But right now, I personally find the current template completely opaque, and would much prefer a Lua representation. --[[User:Izno|Izno]] ([[User talk:Izno|talk]]) 14:09, 3 September 2017 (UTC)
::Agreed. I've started in on the work of converting the module, but almost all of my work so far has been ''assembling personal notes'' on how the template works to make sure I match functionality reasonably well (for example, I need to look more into how the hook system is used in practice). The wikitext-vs.-Lua concerns are not a sufficient counterargument to my plan. That said, I do appreciate Redrose64's concern of documentation quality, and we can keep it in mind moving forward. <span style="white-space:nowrap;">{&#123;[[User:Nihiltres|<span style="color:#233D7A;">Nihiltres</span>]]&#8202;&#124;[[User talk:Nihiltres|talk]]&#8202;&#124;[[Special:Contributions/Nihiltres|edits]]}&#125;</span> 20:43, 7 September 2017 (UTC)


I've noticed that this module can call Pagetype (which is intensive in comparison to most things required) on the same page up to (but not always) 3 times while handling a banner (see lines 161, 299, and 327). Considering 2 of them are caused by calling class_mask (definitely a duplicate pagetype call we don't need to make), I feel like it should be possible to reduce the max calls to 2, but the functionality of some of this module is beyond me (no clue what FQS means to start with), so I'm not confident I could optimise this myself without breaking some sort of functionality. Could someone consider taking a look at this? [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 22:16, 21 March 2024 (UTC)
* The vast majority of WikiProjects use the simple/base banner, right? So I'd be less concerned about fitting the edge cases (let them continue to use the old banner innards, if necessary, if those projects even still actively use those extra features) than making the majority more efficient <span style="background:#F0F0FF; padding:3px 9px 4px">[[User talk:Czar|<span style='font:bold small-caps 1.2em Avenir;color:#B048B5'>czar</span>]]</span> 05:58, 10 September 2017 (UTC)
**<p>Handling the edge cases is one of the ''goals'' of this change, though. I'm already maintaining a gadget that needs to be able to handle custom classes—that was a big inspiration for this—and right now it has to have extra styles, strings, etc. hardcoded into the gadget to support custom classes, which is untenable. I'm ''planning'' to make some tools that help surface progression of quality metrics over time and highlight [[mw:ORES|ORES]] data for comparison, and for those tools it'll also be highly desirable to ''at minimum'' be able to automatically normalize custom classes to values from the standard set—let alone the portability and maintenance benefits of not hard-coding quality/importance classes in general. Handling edge cases well is one of the key benefits here. We can offer partial support by creating project configuration files for projects before they're properly updated, but that trick increases maintenance costs because it requires that any updates be mirrored in two places (the actual project banner, and the configuration file).</p><p>The fact that most WikiProjects use "simple" options does offer us an easy migration path, though: once the code's in a usable state we can start migrating "simple" banners and whittle the problem down to the tricky projects. <span style="white-space:nowrap;">{&#123;[[User:Nihiltres|<span style="color:#233D7A;">Nihiltres</span>]]&#8202;&#124;[[User talk:Nihiltres|talk]]&#8202;&#124;[[Special:Contributions/Nihiltres|edits]]}&#125;</span> 19:55, 12 September 2017 (UTC)</p>
**: Sounds good. Just wanted to note that it's possible that some edge-case projects are no longer even active and therefore might not care if their edges are preserved. Perhaps someone can generate a list of edge cases and the rest of us can help by investigating <span style="background:#F0F0FF; padding:3px 9px 4px">[[User talk:Czar|<span style='font:bold small-caps 1.2em Avenir;color:#B048B5'>czar</span>]]</span> 20:34, 12 September 2017 (UTC)
**::Right, good call! I figure that we can proactively update most projects assuming there are no breaking changes. Few projects should have breaking changes; the nature of Lua means that it should be easy to cover most of the custom stuff with native functionality. Most of the edge cases should be easy to detect: they'll be using a class mask and/or the hook system, so they'll have non-empty values defined in relevant parameters. Many of those will be simple cases like "supporting extra parameters" that Lua can handle with negligible effort; a few might be more complicated. First things first, though: I've got to rewrite most of the core functionality. I'm planning to deprecate the hook system entirely: people who want that level of flexibility can instead just <code>require()</code> the main Lua module and reuse its functions in their own module. <span style="white-space:nowrap;">{&#123;[[User:Nihiltres|<span style="color:#233D7A;">Nihiltres</span>]]&#8202;&#124;[[User talk:Nihiltres|talk]]&#8202;&#124;[[Special:Contributions/Nihiltres|edits]]}&#125;</span> 21:31, 12 September 2017 (UTC)
*'''Support'''. WikiProject banners are a contentious area for many historical reasons, but I'm committed to moving the technology forward in a way which doesn't step on anyone's toes too much. {{ping|Nihiltres}} Feel free to reach out if you'd like to collaborate. {{ping|Redrose64}} Your documentation goals are extremely important, and we should make sure they are supported throughout this process as much as possible. [[User:TheDragonFire|TheDragonFire]] ([[User talk:TheDragonFire|talk]]) 10:45, 11 February 2018 (UTC)


:I guess it should be possible to reduce the calls to pagetype to 1. I'll have a look when I get a chance &mdash;&nbsp;Martin <small>([[User:MSGJ|MSGJ]]&nbsp;·&nbsp;[[User talk:MSGJ|talk]])</small> 22:38, 21 March 2024 (UTC)
== Coloured blocks may be too large ==
:Okay please have a look at my changes in the sandbox. There would need to be a minor change to [[Module:Banner shell]] at the same time &mdash;&nbsp;Martin <small>([[User:MSGJ|MSGJ]]&nbsp;·&nbsp;[[User talk:MSGJ|talk]])</small> 12:32, 22 March 2024 (UTC)
[[File:WikiProject banner meta super sized class and import (bug?).png|thumb]]
::No comment on functionality, but I imagine there are testcases for this module in terms of that (though unless there was some sort of super specific scenario where the main function specifically but not the class mask wanted to ignore disambiguation, I doubt anything is broken). Thanks to this change and a change in a different module, the sandbox version is now running about ''6.5 times faster'' than the live version in the worst case scenario (significantly large pages, all 3 pagetype calls - I'm using [[Talk:List of common misconceptions]] for my testcases), which is a huge improvement, so thanks for doing that. I'd recommend updating banner shell before this module whenever that happens so there isn't a small window where stuff breaks. [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 17:04, 22 March 2024 (UTC)
On many pages (for example [[Talk:Deterrence (legal)]]) the coloured blocks for class and importance come out ridiculously large on zooming in, or when the page width is reduced, like jumping from a width of 5&nbsp;em to 45+&nbsp;em. Can something be done to keep the size constrained? &nbsp;--[[User talk:Lambiam|Lambiam]] 11:45, 4 May 2018 (UTC)
:Can't see this myself. What browser are you using? Maybe post a screenshot to show the problem? &mdash;&nbsp;Martin <small>([[User:MSGJ|MSGJ]]&nbsp;·&nbsp;[[User talk:MSGJ|talk]])</small> 12:41, 4 May 2018 (UTC)
:::Great. I've implemeneted your changes to pagetype. I will have a look to see if any other changes are needed to banner shell and then probably do that one later today. Can I ask how you came across [[Talk:List of common misconceptions]] and discovered the issue? By the way, when we have resolved all the [[:Category:Articles with conflicting quality ratings|conflicting article ratings]], I hope we will be able to improve efficiency by just doing the quality assessment once (on the banner shell) rather than having to it on each individual banner &mdash;&nbsp;Martin <small>([[User:MSGJ|MSGJ]]&nbsp;·&nbsp;[[User talk:MSGJ|talk]])</small> 19:30, 22 March 2024 (UTC)
::::I came across that talk page since my bot, which handles bad archive values in {{[[User:MiszaBot/config]]}} as one of its tasks, kept throwing warnings for pages that had appeared in a tracking category despite having what it (correctly) thought was the already right input (you can see the result of me purging some of the pages to temporarily remove the timeout in [[Special:Diff/1214818416]]). I just removed templates and used show preview till I found what was responsible for the majority of the execution time, which is why I've been improving the execution time of multiple modules recently. [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 19:39, 22 March 2024 (UTC)
::{{ping|MSGJ}} I was able to repro on Windows 7 with Firefox 59.0.3 (on Timeless skin, if that matters). That said, it was at a zoom level that I think is generally not a workable one, but I suppose could be used by readers with poor or failing eyesight. --[[User:Izno|Izno]] ([[User talk:Izno|talk]]) 12:58, 4 May 2018 (UTC)
:::::New code deployed, so hopefully that reduces the lag on these pages &mdash;&nbsp;Martin <small>([[User:MSGJ|MSGJ]]&nbsp;·&nbsp;[[User talk:MSGJ|talk]])</small> 21:06, 24 March 2024 (UTC)
::::For me it happens with Firefox 59.0.2 on macOS (using MonoBook), already at relatively modest zoom levels (5 times command-+, corresponding to a magnification of about 171% compared to the default) – or by a window size reduction to 58% of the screen width (1/1.71 = 0.58) at the default zoom level. &nbsp;--[[User talk:Lambiam|Lambiam]] 22:55, 4 May 2018 (UTC)
::::::Thanks, stuff's looking ''much'' better now (not even 2s on the misconceptions page compared to over 6s before the updates). [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 21:28, 24 March 2024 (UTC)
:::This is very odd, because a WikiProject banner is essentially a table having three rows of three columns (in this case the third column isn't used). In a table, columns are of constant width all the way down, and so the the first cell of ''every'' row in the same table should be the same width as all the other cells in that column.
:::In the WikiProject law banner displayed at [[Talk:Deterrence (legal)]], the first column comprises one image and two items of text (the two coloured blocks under discussion). The width of the column is determined by the widest cell, which is [[:File:Scale of justice 2.svg]] displayed 55px wide, and the two others are widened to match that one.
:::When text is left-aligned within a cell, the second cells of each row should have their left edges aligned vertically; that is to say, the text "This article has been rated as '''Start-Class''' on the project's [[Wikipedia:WikiProject Law/Assessment#Quality scale|quality scale]]." and "This article has been rated as '''Top-importance''' on the project's [[Wikipedia:WikiProject Law/Assessment#Importance scale|importance scale]]." should not be displayed any further to the right than the text "This article is within the scope of '''[[Wikipedia:WikiProject Law|WikiProject Law]]''', ...". The screenshot shows that such vertical alignment is failing, which to me suggests a browser problem.
:::Looking at that column-two text beginning "This article is within the scope ..." shows that the text is flowing around the image - the words "encompassed by it." are below the image and left-aligned with the image's left edge. This cannot happen if they are in different cells, so to my mind, something is merging two cells that should be distinct.
:::Another odd feature in that screenshot is the "Law portal" box - the white background should entirely fill the border of that box, instead of stopping short of the bottom border. --[[User:Redrose64|<span style="color:#a80000; background:#ffeeee; text-decoration:inherit">Red</span>rose64]] &#x1f339; ([[User talk:Redrose64|talk]]) 20:03, 4 May 2018 (UTC)
::::The portal box is probably an artifact of using Timeless--every portal box appears so in that skin, though I can confirm Vector and Monobook are fine. I suppose it's plausible that it's related and may indicate an error in the portal box module/metatemplate, but I am skeptical. I think Timeless is more likely missing some skin coloring or border manipulation that can be found in the vector/monobook themes. And it's that the border isn't shrinking to the background, not that the background needs to fill in the shape delineated by the border. --[[User:Izno|Izno]] ([[User talk:Izno|talk]]) 20:31, 4 May 2018 (UTC)


== Documentation ==
== Protected edit request on 12 May 2018 ==
{{edit fully-protected|Template:WPBannerMeta|answered=yes}}
'''Request:''' Please change this template (or the other one; see below) so that the categories "Project-Class sociology articles" and "Top-importance sociology articles" are no longer invoked from every page transcluding it.


There is a piece of automatically generated documentation on [[Template:WikiProject Military history]] that says "This project has opted out of project-independent quality assessments and is using a custom class mask." The Project has ''not'' opted out of project-independent quality assessments. Can we delete "has opted out of project-independent quality assessments"? I am unsure where this is done. [[User:Hawkeye7|<span style="color:#800082">Hawkeye7</span>]] [[User_talk:Hawkeye7|<span style="font-size:80%">(discuss)</span>]] 00:07, 1 April 2024 (UTC)
'''Background:'''


:The military history project has opted out of PIQA. That is the only way to support the custom quality scale. &mdash;&nbsp;Martin <small>([[User:MSGJ|MSGJ]]&nbsp;·&nbsp;[[User talk:MSGJ|talk]])</small> 09:10, 1 April 2024 (UTC)
There is an error, either in this template, or in {{tl|WikiProject Sociology}}, I'm not sure which. The undesired behavior is that pages including the latter template, get categorized into two article categories. One example is the Talk page for WikiProject Sociology at [[WT:SOCIO]], which has two categories listed which are incorrect for a Talk page.
::What would be the effect of adopting the PIQA? [[User:Hawkeye7|<span style="color:#800082">Hawkeye7</span>]] [[User_talk:Hawkeye7|<span style="font-size:80%">(discuss)</span>]] 17:43, 1 April 2024 (UTC)
:::Losing all the custom logic in [[Template:WikiProject Military history/class]] &mdash;&nbsp;Martin <small>([[User:MSGJ|MSGJ]]&nbsp;·&nbsp;[[User talk:MSGJ|talk]])</small> 09:09, 3 April 2024 (UTC)
::::Does that include the A-class logic or just the B-class logic? [[User:Hawkeye7|<span style="color:#800082">Hawkeye7</span>]] [[User_talk:Hawkeye7|<span style="font-size:80%">(discuss)</span>]] 18:12, 3 April 2024 (UTC)
:::::You'd certainly lose AL, BL and CL, probably several of the others; you might be left with just the standard scale (FA, A, GA, B, C, Start, Stub, FL, List). --[[User:Redrose64|<span style="color:#a80000; background:#ffeeee; text-decoration:inherit">Red</span>rose64]] &#x1f339; ([[User talk:Redrose64|talk]]) 19:01, 3 April 2024 (UTC)


== PROJECT_STATUS parameter ==
An example completely stripped of all excess cruft to make it easier to see the problem, and which also contains justification for the "undesirable" characterization, is here: [[User:Mathglot/sandbox/Test pages/Sociology Header noinclude thing]]. Thanks. [[User:Mathglot|Mathglot]] ([[User talk:Mathglot|talk]]) 03:00, 12 May 2018 (UTC)
:What exactly is the problem here? You've tagged the [[Wikipedia talk:WikiProject Sociology]] page with {{tlx|WikiProject Sociology|class{{=}}Project|importance{{=}}Top}}. "Project-Class sociology ''articles''" is simply an artefact of the underlying structure for the page categoriation. You could rename that to ''pages'' if that particularly annoys you, but nothing is broken here. <span style="font-variant:small-caps; whitespace:nowrap;">[[User:Headbomb|Headbomb]] {[[User talk:Headbomb|t]] · [[Special:Contributions/Headbomb|c]] · [[WP:PHYS|p]] · [[WP:WBOOKS|b]]}</span> 04:15, 12 May 2018 (UTC)
::'Pages' or 'articles' is irrelevant, it's still wrong. A project page is not rated on a quality scale, and thus is not a 'Top-importance sociology articles' [or 'pages']. The talk page should be responsible for declaring its own categories, and not inherit them blindly, especially not if they aren't defining characteristics of the page. In any case, 'Top-importance sociology articles' [or 'pages'] is not a defining characteristic of a Project Talk page. I'm not a categorization honcho, I made need to page some folks that can explain this better than I can. Stand by... [[User:Mathglot|Mathglot]] ([[User talk:Mathglot|talk]]) 11:13, 12 May 2018 (UTC)
:{{ping|Mathglot}} If you do not want WT:SOCIO to appear as a top-level article, [https://en.wikipedia.org/w/index.php?title=Wikipedia_talk:WikiProject_Sociology&diff=840831732&oldid=840779785 you need to remove the rating]. Nothing was being inherited "blindly". --[[User:Izno|Izno]] ([[User talk:Izno|talk]]) 13:13, 12 May 2018 (UTC)
::As for the class, that appears to be set correctly as it is indeed a project "article" (that it is called an article is an artifact more than anything--we don't care enough to change however many millions of project talk pages tagged as such just for article -> page). --[[User:Izno|Izno]] ([[User talk:Izno|talk]]) 13:15, 12 May 2018 (UTC)
:::If you object to the page being classified into top-importance aritcles, just don't set {{para|importance|top}} in the banner. <span style="font-variant:small-caps; whitespace:nowrap;">[[User:Headbomb|Headbomb]] {[[User talk:Headbomb|t]] · [[Special:Contributions/Headbomb|c]] · [[WP:PHYS|p]] · [[WP:WBOOKS|b]]}</span> 13:20, 12 May 2018 (UTC)
::::In fact, you can safely remove the {{para|class|Project}} as well as {{diff|Wikipedia talk:WikiProject Sociology|next|840779785|the {{para|importance|Top}}}} since the class is detected automatically for all non-article talk namespaces (Category talk, File talk, Template talk, Wikipedia talk, etc.); the importance similarly defaults to NA (putting the page into {{cl|NA-importance sociology articles}}) in those namespaces. So all that you really need on [[Wikipedia talk:WikiProject Sociology]] is {{tlx|WikiProject Sociology}} with no parameters at all. --[[User:Redrose64|<span style="color:#a80000; background:#ffeeee; text-decoration:inherit">Red</span>rose64]] &#x1f339; ([[User talk:Redrose64|talk]]) 21:12, 12 May 2018 (UTC)
:::::Ah, I see now, I didn't realize it was coming from the parameters, and not directly from the template. <s>You can mark this closed.</s> Thank you one and all. 03:25, 13 May 2018 (UTC)
:::::Either I'm really dense, or there's something I'm missing. I've removed both project class and quality scale params, leaving only {{tl|WikiProject Sociology}} in both the project page, as well as on my [[User:Mathglot/sandbox/Test pages/Sociology Header noinclude thing|test page]]. Both pages continue to show two categories at the bottom of the page, although not the same ones as before. In the case of the test page, the two categories shown are [[:Category|NA-Class sociology articles]] and [[:Category|NA-importance sociology articles]]. In the case of the actual project page ([[Wikipedia talk:WikiProject Sociology]]), it shows [[:Category|Project-Class sociology articles]] and [[:Category||NA-importance sociology articles]]. What am I missing? Can I say, <code><nowiki>|class=none |importance=none</nowiki></code> or something? [[User:Mathglot|Mathglot]] ([[User talk:Mathglot|talk]]) 07:15, 13 May 2018 (UTC)
::::::This is normal behaviour for ''all'' WikiProject banners that recognise {{para|class}} and {{para|importance}} parameters. When one or the other of these parameters is blank or absent, a default value is used. As noted at [[Template:WikiProject Sociology#Optional parameters]]:
{{WPBannerDoc|class|PROJECT=Sociology |ASSESSMENT_LINK=Wikipedia:WikiProject Sociology/Assessment |BANNER_NAME=Template:WikiProject Sociology |QUALITY_SCALE=subpage }}
::::::If you don't want [[Wikipedia talk:WikiProject Sociology]] to appear in {{cl|Project-Class sociology articles}} and {{cl|NA-importance sociology articles}}, remove {{tlx|WikiProject Sociology}} entirely. You cannot keep the banner and also suppress the categories other than by removing recognition for the parameters entirely (as is the case with {{tlx|WikiProject Classical music}}), which would defeat the FA/A/GA/B/C/Start/Stub grading scheme as well. --[[User:Redrose64|<span style="color:#a80000; background:#ffeeee; text-decoration:inherit">Red</span>rose64]] &#x1f339; ([[User talk:Redrose64|talk]]) 07:47, 13 May 2018 (UTC)
:::::::{{ec}} Okay, that was my question (keeping the banner and suppressing the categories) but as you say, we don't want to defeat the grading scheme. Thanks again. [[User:Mathglot|Mathglot]] ([[User talk:Mathglot|talk]]) 08:06, 13 May 2018 (UTC)


The module currently has an undocumented parameter for the status of a project, which will add a CSS class to the outer table. For example if you set {{para|PROJECT_STATUS|semiactive}} then it will add <code>class="semi-active-project"</code>. Does anyone know if this has any purpose or is used by any tools? It either needs documenting properly or removing &mdash;&nbsp;Martin <small>([[User:MSGJ|MSGJ]]&nbsp;·&nbsp;[[User talk:MSGJ|talk]])</small> 11:53, 24 April 2024 (UTC)
== FYI ==


:The rendering of the banner changes also, [https://en.wikipedia.org/w/index.php?search=template%3A+insource%3A%22PROJECT_STATUS%22&title=Special%3ASearch&ns0=1 see uses]. [[User:Izno|Izno]] ([[User talk:Izno|talk]]) 16:45, 25 April 2024 (UTC)
I added a [[WP:AALERTS]]-related warning concerning mergers and moves in
::The rendering of inactive banners is not triggered by the PROJECT_STATUS parameter. It's produced by a different ("inactive") function of the module &mdash;&nbsp;Martin <small>([[User:MSGJ|MSGJ]]&nbsp;·&nbsp;[[User talk:MSGJ|talk]])</small> 08:58, 26 April 2024 (UTC)
:This parameter was added in 2021 after [[Module talk:WikiProject banner/Archive_13#Protected edit request on 8 February 2021|this request]] by [[User:MJL]]. The rationale given was "The change adds a new class to the banner which would allow users to hide inactive WikiProject at their own discretion". &mdash;&nbsp;Martin <small>([[User:MSGJ|MSGJ]]&nbsp;·&nbsp;[[User talk:MSGJ|talk]])</small> 09:01, 26 April 2024 (UTC)
Here are my thoughts:
* It is understandable that some editors wish to hide inactive banners, and the <code>inactive-project</code> class should continue to be applied to inactive banners.
* I do not see the value of <code>active-project</code> or <code>semi-active-project</code> and I don't believe anyone is using these.
* The {{para|PROJECT_STATUS}} parameter can be dropped from active project banners
* For inactive banners, there may be some utility in allowing {{para|PROJECT_STATUS|defunct}} to be defined instead of the default {{para|PROJECT_STATUS|inactive}}. So this parameter should continue to be supported for inactive banners.
* Other statuses listed at [[Wikipedia:Inactive WikiProjects]] such as "dormant", "revivable", "dead", "stillborn" will not be supported unless there is a specific request for this.
&mdash;&nbsp;Martin <small>([[User:MSGJ|MSGJ]]&nbsp;·&nbsp;[[User talk:MSGJ|talk]])</small> 11:16, 29 April 2024 (UTC)


:@[[User:MSGJ|MSGJ]]: I'd agree with what you've laid out there. &#8211;<span style="font-family:CG Times, times">[[User:MJL|<span style="color:black">MJL</span>]]&thinsp;[[User talk:MJL|‐'''Talk'''‐]]<sup>[[User:MJL/P|☖]]</sup></span> 18:30, 29 April 2024 (UTC)
*{{tl|WPBannerMeta/locwarning}}
::Out of interest, did you use personal CSS to hide these banners, or are you aware of users who have done so? &mdash;&nbsp;Martin <small>([[User:MSGJ|MSGJ]]&nbsp;·&nbsp;[[User talk:MSGJ|talk]])</small> 20:27, 29 April 2024 (UTC)
:{{done}} &mdash;&nbsp;Martin <small>([[User:MSGJ|MSGJ]]&nbsp;·&nbsp;[[User talk:MSGJ|talk]])</small> 11:20, 9 May 2024 (UTC)


== Deletion of Template:WPBannerMeta/taskforce caused a table error at Template:WPBannerMeta/hooks/taskforces/taskforce ==
*{{tl|WPBannerMeta/templatepage}}


Deletion of {{tl|WPBannerMeta/taskforce}} has caused a table error at {{tl|WPBannerMeta/hooks/taskforces/taskforce}}. I don't know what was in that deleted page, so I don't know what to insert into the latter page's noinclude tags to work around this error. – [[User:Jonesey95|Jonesey95]] ([[User talk:Jonesey95|talk]]) 13:33, 26 April 2024 (UTC)
<span style="font-variant:small-caps; whitespace:nowrap;">[[User:Headbomb|Headbomb]] {[[User talk:Headbomb|t]] · [[Special:Contributions/Headbomb|c]] · [[WP:PHYS|p]] · [[WP:WBOOKS|b]]}</span> 16:46, 14 August 2018 (UTC)


:It wasn't being used, so I have deleted it under G8 &mdash;&nbsp;Martin <small>([[User:MSGJ|MSGJ]]&nbsp;·&nbsp;[[User talk:MSGJ|talk]])</small> 13:54, 26 April 2024 (UTC)
== Infobox No ==
::It looks like {{tl|WPBannerMeta/hooks/taskforces/templatepage}} may also have become unused and deleteable. – [[User:Jonesey95|Jonesey95]] ([[User talk:Jonesey95|talk]]) 14:32, 27 April 2024 (UTC)
:::I believe it is only [[Template:WikiProject Indian roads]], [[Template:WikiProject U.S. Roads]] and possibly some other roads projects that are using this depcrecated code now &mdash;&nbsp;Martin <small>([[User:MSGJ|MSGJ]]&nbsp;·&nbsp;[[User talk:MSGJ|talk]])</small> 14:22, 30 April 2024 (UTC)


== Classifying subpages in main talk ==
Wanted to see if someone could help me out. I've noticed a few pages with <code>infobox=no</code> that are still getting categorized into "Needs infobox" categories. In looking at the source code, it seems that these should not be categorized but I think I'm missing something... Anyone able to provide some insight? --'''[[User:Zackmann08|<span style="color:#00ced1">Zack</span><span style="color:#007F94">mann</span>]]''' (<sup>[[User_talk:Zackmann08|Talk to me]]</sup>/<sub>[[Special:Contributions/Zackmann08|<span style="color:orange;">What I been doing</span>]]</sub>) 22:34, 3 October 2018 (UTC)
{{moved to|Template talk:Pagetype}}
:{{replyto|Zackmann08}} Which pages are these? It will depend upon the coding within the individual infobox template. --[[User:Redrose64|<span style="color:#a80000; background:#ffeeee; text-decoration:inherit">Red</span>rose64]] &#x1f339; ([[User talk:Redrose64|talk]]) 22:58, 3 October 2018 (UTC)
All pages not in article space are automatically detected as being non-articles. But Gonnym pointed out that we have some subpages in Main talk space (e.g. [[Talk:Multiverse (Marvel Cinematic Universe)/FAQ]]) which should also be classified as non-articles. The types I have seen are FAQ pages like the above, or talk archive pages. It is not clear how we should classify them (e.g. Project-class) or just use the default NA-class for these types of page. Does anyone have any opinion? &mdash;&nbsp;Martin <small>([[User:MSGJ|MSGJ]]&nbsp;·&nbsp;[[User talk:MSGJ|talk]])</small> 17:50, 6 May 2024 (UTC)

:I'd say that talk archive can be NA like regular talk. /FAQ (and maybe /GA) ideally should be project but if that is an issue then NA can work also (or allow manual override with the normal class parameter). [[User:Gonnym|Gonnym]] ([[User talk:Gonnym|talk]]) 08:15, 7 May 2024 (UTC)
::I think I would prefer to treat all these subpages in the same way, rather that try to guess what they are based on the name of the page &mdash;&nbsp;Martin <small>([[User:MSGJ|MSGJ]]&nbsp;·&nbsp;[[User talk:MSGJ|talk]])</small> 11:10, 7 May 2024 (UTC)

== Moving notes to banner shell ==

There is some talk on [[Template talk:WikiProject banner shell#needs-infobox, and related|Template talk:WikiProject banner shell]] about moving certain commonly used notes (e.g. attention needed, infobox needed, image needed) to the banner shell, to avoid multiple projects having to replicate the same parameter. Any comments over there please &mdash;&nbsp;Martin <small>([[User:MSGJ|MSGJ]]&nbsp;·&nbsp;[[User talk:MSGJ|talk]])</small> 15:09, 21 May 2024 (UTC)

== Outdated code/hooks ==

I am working through the remaining templates using the [[:Category:WPBannerMeta hooks|old hooks]].
* [[Template:WikiProject Australian Roads]] - {{done}}
* [[Template:WikiProject Indian roads]] - {{done}}
* [[Template:WikiProject U.S. Roads]] - tricky
If anyone knows of any more please add to the list &mdash;&nbsp;Martin <small>([[User:MSGJ|MSGJ]]&nbsp;·&nbsp;[[User talk:MSGJ|talk]])</small> 15:29, 23 May 2024 (UTC)

Revision as of 16:47, 23 May 2024

WikiProject iconCouncil
WikiProject iconThis module relates to the WikiProject Council, a collaborative effort regarding WikiProjects in general. If you would like to participate, please visit the project discussion page.

Template uses custom code to implement a custom quality rating, but it does not do it in the usual way with a custom mask. I'm not sure what to do with this template so dropping it here in case others have an idea. — Martin (MSGJ · talk) 23:15, 23 February 2024 (UTC)[reply]

@Kanashimi, @Qwerfjkl: please could you not remove any class parameter from this template until we figure out the best way to code it? It is using a custom mask, but not in the usual way. — Martin (MSGJ · talk) 20:56, 2 March 2024 (UTC)[reply]
Martin, I've stopped my bot, it's run on the vast majority of pages. — Qwerfjkltalk 20:58, 2 March 2024 (UTC)[reply]
Okay, wow. I didn't realise you had already finished! — Martin (MSGJ · talk) 20:59, 2 March 2024 (UTC)[reply]
Martin, yes, we've totally emptied the main two categories (in the main talk namepace). Around 4-5 million pages, I think. — Qwerfjkltalk 21:01, 2 March 2024 (UTC)[reply]
Yes, we've already processed a round of major categories. But I'm still on the task of removing obsolete parameters. I suggest adding {{Etymology section}} to Category:WikiProjects using a non-standard quality scale first. Kanashimi (talk) 22:53, 2 March 2024 (UTC)[reply]
How is that template not appearing in Category:WikiProject banners with non-standard names? Gonnym (talk) 13:33, 3 March 2024 (UTC)[reply]
The current logic is (args.PROJECT_NAME=='WikiProject '..project or not args.PROJECT_NAME) and current_page.rootPageTitle.prefixedText~='Template:WikiProject ' .. project In this case the project name is not WikiProject PROJECT and it is not undefined — Martin (MSGJ · talk) 13:56, 3 March 2024 (UTC)[reply]
Maybe adjust this so we check either if |PROJECT_NAME= is equal to "WikiProject project" OR the template name does not start with "WikiProject"? Since we standardized on "WikiProject project" for these templates, there really shouldn't be many with non-standard valid names I think, unless I missed something. Gonnym (talk) 15:23, 3 March 2024 (UTC)[reply]
This banner isn't for a WikiProject. Perhaps that issue should be corrected instead? Izno (talk) 17:53, 3 March 2024 (UTC)[reply]
Isn't it part of linguistics project? — Martin (MSGJ · talk) 19:22, 3 March 2024 (UTC)[reply]
A task force of that project, yes. Izno (talk) 22:11, 3 March 2024 (UTC)[reply]
I usually nominate task force banners to merge with their project banner but because this had manual code in it I left it alone for now as I didn't investigate what that code does and if indeed it needs manual code. Gonnym (talk) 06:52, 4 March 2024 (UTC)[reply]
I think I'll start by removing the custom code and attempting to use the standard methods. If that works then we can look at the next step — Martin (MSGJ · talk) 18:31, 4 March 2024 (UTC)[reply]
Conclusion: it is easy to convert it, but some categories would need to be renamed. Test cases at Template:Etymology section/testcases. I have also dropped a note on Wikipedia talk:WikiProject Linguistics. Also, there are only 145 pages using this template so it was never really adopted on any scale — Martin (MSGJ · talk) 18:47, 4 March 2024 (UTC)[reply]
Maybe after merging with {{WikiProject Linguistics}}, the syntax can be changed to something similar to this:
so instead of a new set of unique classes, it will just be another parameter that will trigger the placement in the category. Gonnym (talk) 10:02, 6 March 2024 (UTC)[reply]
Sounds like a good plan. I also think we could rename Category:Articles with mid-importance etymologies to Category:Mid-importance etymology articles or similar — Martin (MSGJ · talk) 10:30, 6 March 2024 (UTC)[reply]
I feel like those are just other ways to grade each article with a class, which we have examples of for task forces. Good would put it in B, incomplete C or start, unassessed is missing a grade, and missing is probably equivalent to unassessed ultimately... Izno (talk) 17:17, 6 March 2024 (UTC)[reply]
That's also a good point. Gonnym (talk) 07:19, 7 March 2024 (UTC)[reply]
Missing etymology might just be like |needs-infobox= I guess, but the rest all have direct analogs to our rating system. Izno (talk) 16:32, 7 March 2024 (UTC)[reply]

Due to the lack of any response at the project talk page, it seems no one is interested in this template, so I have just removed the non-standard assessments altogether. If this gets reverted then we can look at methods to preserve the assessments in a more standard way — Martin (MSGJ · talk) 09:15, 3 April 2024 (UTC)[reply]

Execution time

I've recently been looking into the execution time of this module due to a couple of lua timeout errors occassionally popping up on larger pages with a lot of banner templates (e.g. 1, 2, 3 (not entirely wpb's fault)). I've already proposed a change to a module this module uses which should solve the issue well enough, but I think it's still worth looking into optimising this code.

I've noticed that this module can call Pagetype (which is intensive in comparison to most things required) on the same page up to (but not always) 3 times while handling a banner (see lines 161, 299, and 327). Considering 2 of them are caused by calling class_mask (definitely a duplicate pagetype call we don't need to make), I feel like it should be possible to reduce the max calls to 2, but the functionality of some of this module is beyond me (no clue what FQS means to start with), so I'm not confident I could optimise this myself without breaking some sort of functionality. Could someone consider taking a look at this? Aidan9382 (talk) 22:16, 21 March 2024 (UTC)[reply]

I guess it should be possible to reduce the calls to pagetype to 1. I'll have a look when I get a chance — Martin (MSGJ · talk) 22:38, 21 March 2024 (UTC)[reply]
Okay please have a look at my changes in the sandbox. There would need to be a minor change to Module:Banner shell at the same time — Martin (MSGJ · talk) 12:32, 22 March 2024 (UTC)[reply]
No comment on functionality, but I imagine there are testcases for this module in terms of that (though unless there was some sort of super specific scenario where the main function specifically but not the class mask wanted to ignore disambiguation, I doubt anything is broken). Thanks to this change and a change in a different module, the sandbox version is now running about 6.5 times faster than the live version in the worst case scenario (significantly large pages, all 3 pagetype calls - I'm using Talk:List of common misconceptions for my testcases), which is a huge improvement, so thanks for doing that. I'd recommend updating banner shell before this module whenever that happens so there isn't a small window where stuff breaks. Aidan9382 (talk) 17:04, 22 March 2024 (UTC)[reply]
Great. I've implemeneted your changes to pagetype. I will have a look to see if any other changes are needed to banner shell and then probably do that one later today. Can I ask how you came across Talk:List of common misconceptions and discovered the issue? By the way, when we have resolved all the conflicting article ratings, I hope we will be able to improve efficiency by just doing the quality assessment once (on the banner shell) rather than having to it on each individual banner — Martin (MSGJ · talk) 19:30, 22 March 2024 (UTC)[reply]
I came across that talk page since my bot, which handles bad archive values in {{User:MiszaBot/config}} as one of its tasks, kept throwing warnings for pages that had appeared in a tracking category despite having what it (correctly) thought was the already right input (you can see the result of me purging some of the pages to temporarily remove the timeout in Special:Diff/1214818416). I just removed templates and used show preview till I found what was responsible for the majority of the execution time, which is why I've been improving the execution time of multiple modules recently. Aidan9382 (talk) 19:39, 22 March 2024 (UTC)[reply]
New code deployed, so hopefully that reduces the lag on these pages — Martin (MSGJ · talk) 21:06, 24 March 2024 (UTC)[reply]
Thanks, stuff's looking much better now (not even 2s on the misconceptions page compared to over 6s before the updates). Aidan9382 (talk) 21:28, 24 March 2024 (UTC)[reply]

Documentation

There is a piece of automatically generated documentation on Template:WikiProject Military history that says "This project has opted out of project-independent quality assessments and is using a custom class mask." The Project has not opted out of project-independent quality assessments. Can we delete "has opted out of project-independent quality assessments"? I am unsure where this is done. Hawkeye7 (discuss) 00:07, 1 April 2024 (UTC)[reply]

The military history project has opted out of PIQA. That is the only way to support the custom quality scale. — Martin (MSGJ · talk) 09:10, 1 April 2024 (UTC)[reply]
What would be the effect of adopting the PIQA? Hawkeye7 (discuss) 17:43, 1 April 2024 (UTC)[reply]
Losing all the custom logic in Template:WikiProject Military history/class — Martin (MSGJ · talk) 09:09, 3 April 2024 (UTC)[reply]
Does that include the A-class logic or just the B-class logic? Hawkeye7 (discuss) 18:12, 3 April 2024 (UTC)[reply]
You'd certainly lose AL, BL and CL, probably several of the others; you might be left with just the standard scale (FA, A, GA, B, C, Start, Stub, FL, List). --Redrose64 🌹 (talk) 19:01, 3 April 2024 (UTC)[reply]

PROJECT_STATUS parameter

The module currently has an undocumented parameter for the status of a project, which will add a CSS class to the outer table. For example if you set |PROJECT_STATUS=semiactive then it will add class="semi-active-project". Does anyone know if this has any purpose or is used by any tools? It either needs documenting properly or removing — Martin (MSGJ · talk) 11:53, 24 April 2024 (UTC)[reply]

The rendering of the banner changes also, see uses. Izno (talk) 16:45, 25 April 2024 (UTC)[reply]
The rendering of inactive banners is not triggered by the PROJECT_STATUS parameter. It's produced by a different ("inactive") function of the module — Martin (MSGJ · talk) 08:58, 26 April 2024 (UTC)[reply]
This parameter was added in 2021 after this request by User:MJL. The rationale given was "The change adds a new class to the banner which would allow users to hide inactive WikiProject at their own discretion". — Martin (MSGJ · talk) 09:01, 26 April 2024 (UTC)[reply]

Here are my thoughts:

  • It is understandable that some editors wish to hide inactive banners, and the inactive-project class should continue to be applied to inactive banners.
  • I do not see the value of active-project or semi-active-project and I don't believe anyone is using these.
  • The |PROJECT_STATUS= parameter can be dropped from active project banners
  • For inactive banners, there may be some utility in allowing |PROJECT_STATUS=defunct to be defined instead of the default |PROJECT_STATUS=inactive. So this parameter should continue to be supported for inactive banners.
  • Other statuses listed at Wikipedia:Inactive WikiProjects such as "dormant", "revivable", "dead", "stillborn" will not be supported unless there is a specific request for this.

— Martin (MSGJ · talk) 11:16, 29 April 2024 (UTC)[reply]

@MSGJ: I'd agree with what you've laid out there. –MJLTalk 18:30, 29 April 2024 (UTC)[reply]
Out of interest, did you use personal CSS to hide these banners, or are you aware of users who have done so? — Martin (MSGJ · talk) 20:27, 29 April 2024 (UTC)[reply]
 Done — Martin (MSGJ · talk) 11:20, 9 May 2024 (UTC)[reply]

Deletion of Template:WPBannerMeta/taskforce caused a table error at Template:WPBannerMeta/hooks/taskforces/taskforce

Deletion of {{WPBannerMeta/taskforce}} has caused a table error at {{WPBannerMeta/hooks/taskforces/taskforce}}. I don't know what was in that deleted page, so I don't know what to insert into the latter page's noinclude tags to work around this error. – Jonesey95 (talk) 13:33, 26 April 2024 (UTC)[reply]

It wasn't being used, so I have deleted it under G8 — Martin (MSGJ · talk) 13:54, 26 April 2024 (UTC)[reply]
It looks like {{WPBannerMeta/hooks/taskforces/templatepage}} may also have become unused and deleteable. – Jonesey95 (talk) 14:32, 27 April 2024 (UTC)[reply]
I believe it is only Template:WikiProject Indian roads, Template:WikiProject U.S. Roads and possibly some other roads projects that are using this depcrecated code now — Martin (MSGJ · talk) 14:22, 30 April 2024 (UTC)[reply]

Classifying subpages in main talk

All pages not in article space are automatically detected as being non-articles. But Gonnym pointed out that we have some subpages in Main talk space (e.g. Talk:Multiverse (Marvel Cinematic Universe)/FAQ) which should also be classified as non-articles. The types I have seen are FAQ pages like the above, or talk archive pages. It is not clear how we should classify them (e.g. Project-class) or just use the default NA-class for these types of page. Does anyone have any opinion? — Martin (MSGJ · talk) 17:50, 6 May 2024 (UTC)[reply]

I'd say that talk archive can be NA like regular talk. /FAQ (and maybe /GA) ideally should be project but if that is an issue then NA can work also (or allow manual override with the normal class parameter). Gonnym (talk) 08:15, 7 May 2024 (UTC)[reply]
I think I would prefer to treat all these subpages in the same way, rather that try to guess what they are based on the name of the page — Martin (MSGJ · talk) 11:10, 7 May 2024 (UTC)[reply]

Moving notes to banner shell

There is some talk on Template talk:WikiProject banner shell about moving certain commonly used notes (e.g. attention needed, infobox needed, image needed) to the banner shell, to avoid multiple projects having to replicate the same parameter. Any comments over there please — Martin (MSGJ · talk) 15:09, 21 May 2024 (UTC)[reply]

Outdated code/hooks

I am working through the remaining templates using the old hooks.

If anyone knows of any more please add to the list — Martin (MSGJ · talk) 15:29, 23 May 2024 (UTC)[reply]

Leave a Reply