This is an archive of past discussions about Module:WikiProject banner. Do not edit the contents of this page. If you wish to start a new discussion or revive an old one, please do so on the current talk page.
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)
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)
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)
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)
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)
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)
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)
@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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
Deletion of Template:WPBannerMeta/taskforce caused a table error at Template:WPBannerMeta/hooks/taskforces/taskforce
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)
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)
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)
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)
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)
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)
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.
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)
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)
Outdated code/hooks
I am working through the remaining templates using the old hooks.
I am happy to walk you through it; this task is a bit easier than poofing CSS out of thin air. The basic gist of what needs to be done here is:
See if there's a class some CSS can be attached to. The presence of addClass will usually make that obvious.
If no, add a class (addClass).
If yes, check to see if the uses in the generating module all need that particular CSS. If yes, proceed to 2. If no, add a specific class to that specific element to support the new CSS.
The interesting thing is, that in preview mode it is properly generating the notice with the diamond caution sign and "immediate attention needed", as well as displaying the name of the hidden attention-needed category in the footer that would be populated if I hit Publish, but all of that with the Preview error at the same time.
Not sure if it's relevant, but the PROJECT param is Intertranswiki/OKA task force, and a couple of redirects are involved:
Further data: I went ahead and saved the page with the Preview error anyway, at Draft talk:Contravention in French criminal law with the intention of pointing to the error here, but after publication the error was gone, and the banner message and hidden category look good. So far, so good; but |attention= is a valid parameter, so why does it say that it isn't in Preview? Preview mode still displays the error message now, if you edit it. Mathglot (talk) 07:36, 2 July 2024 (UTC)
It's because you did not define the |BANNER_NAME= parameter, and so it uses by default Template:WikiProject+PROJECT which in this case yields Template:WikiProject Intertranswiki/OKA task force which is not the template but a redirect. I have added |BANNER_NAME= which I think has fixed it — Martin (MSGJ · talk) 08:07, 2 July 2024 (UTC)
MSGJ, Yes, it has! Thank you. Given the complexity of this Module, and the type of situations that might arise, I am considering adding a Troubleshooting section to the doc page, and this would be a good entry there. Or at least, where to look if you get that error message, would be a good start. Such a section might expand to cover other situations, as well. Thanks for your fixes to that template. Mathglot (talk) 10:35, 2 July 2024 (UTC)
In general though, this error should be a very rare edge case, as task forces should not have standalone banners as they should use the one of the project they belong to. In this situation, there isn't a project one at this moment. Gonnym (talk) 10:57, 2 July 2024 (UTC)
Gonnym, thank you for your comment I did notice that the module had params like |tfN= for handling task forces, and I wondered how to proceed with that, given that the parent WikiProject didn't have its own banner, so I did the best I could. What I'm hearing, is, maybe this is too rare a case to be worth writing up as a troubleshooting case, and I accept that. But, what is the right path forward, here? Should Intertranswiki have its own banner, and then */OKA would use the |tfN= params? Or, is it good enough, the way things are, now? Mathglot (talk) 11:06, 2 July 2024 (UTC)
I think that if there are not going to be any other task forces needing one, then don't bother changing it as it's already working. If another task force will need one then yes, they should be combined into one template. Gonnym (talk) 11:09, 2 July 2024 (UTC)
Dark mode support
I implemented dark mode support for the banners in these sandbox edits, without those on dark mode the banners are showing white text on light yellow background which is not great. The test cases seem good to me, but I would still appreciate a second set of eyes on the change before deploying it. Taavi (talk!) 22:20, 4 July 2024 (UTC)
That sounds good (and uncontroversial) to me, but after some searching, I have been unable to figure out where the relevant code is. Sdkbtalk18:31, 30 May 2024 (UTC)
Compare this: {{WikiProject AfroCreatives|category=|listas=|class=|importance=|auto=|attention=|needs-image=|type=|details=|location=|topic=}} which uses inline, with this:
Ah, didn't realise that. My understanding is that all these category issues were resolved so I have redeployed the code. — Martin (MSGJ · talk) 20:18, 5 August 2024 (UTC)
Thanks for the note. I think I will redeploy the code but populate a tracking category instead of non-existent category so we can check for issues. — Martin (MSGJ · talk) 20:25, 8 August 2024 (UTC)
Firstly, apologies for writing in English if this is not your first language (this is an automated message).
This template has been detected as one of 436 pages using styles that break the page when printed when the user is using dark mode. The fix is very straightforward - all your styles relating to dark mode must be scoped to. Since there is a high risk of this templates being copied to other wikis it is important this notice is acted on ASAP.
To fix this:
Update `@media (prefers-color-scheme: dark` to `@media screen and (prefers-color-scheme: dark`
Wrap any styles relating to `html.skin-theme-clientpref-night` in `@media screen`
If this message has not been acted on in 7 days, this will be fixed by an automated script. Thank you for your help fixing this important issue.
For any questions feel free to ask them at phab:T369874.
I've syncrhonised this sandbox with the live version, which should have fixed these issues. Gonnym: you may want to reapply your changes to the sandbox at some point — Martin (MSGJ · talk) 10:29, 6 August 2024 (UTC)
I've added back the css code to the styles sheet. Perhaps you wouldn't mind checking the code and making sure everything looks okay, and I will deploy — Martin (MSGJ · talk) 20:43, 11 August 2024 (UTC)
Yeah, the class mask tests were all copied from Template:Class mask and there have been many changes since then. So the tests are outdated and probably need removing. — Martin (MSGJ · talk) 08:37, 16 August 2024 (UTC)
Responsible editing
Can we please reduce the churn on a module with 11 million transclusions? I pushed back when @Pppery wanted to fully protect the module because I thought template editors could be trusted to edit responsibly, but now I'm thinking he was right. Can all edits be sandboxed and tested prior to deploying. Anything less than urgent should wait in the sandbox for a more substantive edit. We should be at the point where we can make an update to the live module once every 2-3 months — Martin (MSGJ · talk) 08:59, 20 August 2024 (UTC)
You will need to update |QII_FORMAT=C T of I in Template:WikiProject Palaeontology. Note that the module is set up so these categories are only populated when they exist, so once you move the category they should start filling up again — Martin (MSGJ · talk) 20:38, 23 August 2024 (UTC)
It is not in that category because it is a redirect and doesn't need a quality rating. The |class=stub is just ignored on such pages. What needs to be corrected? — Martin (MSGJ · talk) 14:15, 1 July 2024 (UTC)
Since Talk:Mount Gorton refers to a redirect, |class=Stub should be removed from the 3 WikiProjects.
They are the same in that the class parameter may safely be removed without having any effect. Do we need two separate categories? — Martin (MSGJ · talk) 15:42, 1 July 2024 (UTC)
With the speed at which these categories are being cleared, I'd say we don't. Less categories to watch. Gonnym (talk) 16:13, 1 July 2024 (UTC)
The way that the pages in these 2 would-be categories are fixed is different. In 1, WPBS's |class= is kept. In the other, WPBS's |class=, if found, is removed. Someone working on these categories in the future might not know to check the redirect-status of the page before proceeding, and perform the wrong operation.
I would like to add some prominent warnings when people try to use the |class= parameter in a project banner instead of in the banner shell template
If {{WikiProject banner shell}} is already on the page (but without a |class= parameter), then the message will say something like Please add the quality rating to the WikiProject banner shell instead of this project banner
If {{WikiProject banner shell}} is not on the page yet, then the message will say something like Please add the WikiProject banner shell template to this page and then add the quality rating to that template
This should be expended to any parameter we migrate to the shell, like |listas= do deal with redundant, duplicate or conflicting data. Gonnym (talk) 16:20, 11 June 2024 (UTC)
This article is within the scope of WikiProject Cycling, a collaborative effort to improve the coverage of cycling on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.CyclingWikipedia:WikiProject CyclingTemplate:WikiProject Cyclingcycling
Is it too late for me to object to this? As I said at the template talk page, something like this is just dumb; if we are going to force people to use the banner shell, then we should integrate it into every WikiProject banner automatically. I don't mind giving a warning if there's already a WPBS on the page, since it's a "hey, this is here, please put your banner in the right place", but for a page with no shell it shouldn't have a warning. (please do notping on reply) Primefac (talk) 21:26, 17 August 2024 (UTC)
What Primefac said. On talk pages other than the main Talk: space, people should not be forced to use a WPBS, particularly when there is only one WP banner, because the autodetection of class is pretty much universal. --Redrose64 🌹 (talk) 07:29, 18 August 2024 (UTC)
The error can probably be removed from the user space. Other than in user space (which the updated code isn't placing in Category:WikiProject banners without banner shells (pages there need to be purged to reflect the update), so will not be relevant here), almost all pages have already been placed inside the banner shell, so any change at this point is purely disruptive, in addition of course, to the fact that no ones owns project pages so no one is forced into anything. Having the shell, even for one template, provides a consistent look across the entire project and allows any future update (which might be relevant to pages with a single template), to have an immediate effect. Gonnym (talk) 07:43, 18 August 2024 (UTC)
no ones owns project pages so no one is forced into anything - by that logic, we should not be forced to use WPBS for a single banner by having big warning sign about it. And just to reiterate (and expand) on what I said above - I don't mind the warning if WPBS is already there (because that makes sense) and I don't care if a bot goes around adding WPBS (even for pages that have a single banner), my only concern is the massive warning given if WPBS isn't on the page already. Primefac (talk) 10:40, 18 August 2024 (UTC)
(No it's not too late to object!) We certainly can (and should) remove the message from non-article pages. For a start the message is incorrect, because these pages are detected automatically so don't even have a |class= parameter that needs transferring. What about mainspace though? We have no efficient method (that I know of) to detect the number of banners on a page, so we have to treat one banner the same as 8 banners. In mainspace we absolutely do want WPBS on every talk page. We are now 18 months into the new system, and it seems that a little editor education is needed, which is what the warning is trying to do. — Martin (MSGJ · talk) 19:26, 18 August 2024 (UTC)
We also have a bot that, once the backlog is cleared, will fix/update any new pages that aren't following PIQA. Just a thought. It probably makes editors complacent (look how many dated maintenance tags get tagged by AnomieBOT every day instead of folks just putting the date, which is piss-easy) but that's why we have bots like this in the first place. Primefac (talk) 20:10, 18 August 2024 (UTC)
I have removed the warning (numbered 2 above) in the sandbox. Hopefully the bot will catch up with these soon — Martin (MSGJ · talk) 17:41, 19 August 2024 (UTC)
Modifying the module so default values aren't needed to be set
The advantage of invoking the module directly from banner templates is that we don't need to add default values for many of the parameters, so code like |category = {{{category|}}} isn't needed as the module knows it received a parameter with that name. Removing the need to add default parameters like this will make the long and complex banner code easier (and cleaner) to read.
Currently we have 4 types of parameters (if I'm not mistaken):
Parameters that all banners have and use the same parameter name.
Parameters that all banners have but use various names.
Parameters that some banners have but use the same name.
Parameters that some banners have but use various names.
The change needed would be like this:
Group 1 is the ideal and easiest candidate to convert. Parameters in this group probably include |category= and |listas=.
Group 3 is also easy to convert. Instead of doing something like |class = {{{class|}}}, we can change to |class = yes. Parameters in this group probably include |class= and |importance=.
In some cases where the parameter is almost always used, the default can be yes anyways so only when it isn't needed, the banner should set |class = no, reducing the banner code even more.
For group 2 and 4, this change will make things more consistent across all banners so instead of something like |image-needed = {{{image|{{{image-needed|{{{needs-image|}}}}}}}}} it will be |image-needed = yes with only one of these names (or we could still leave all versions, messy but works).
These templates follow a long-standing convention of using upper-case parameter names for configuration settings and lower-case parameter names for passing values. So perhaps |CLASS=yes would be more respectful of that convention, if we wish to retain it.
I would prefer to default to "no" in almost every case. There are already plenty of cases of editors using features that they don't actually need.
I can't think of any examples of group 2?
I suppose the module could check for all reasonable variants of parameter names, e.g. image, imageneeded, image-needed, etc. Or are you suggesting a harmonisation effort?
For group 4, we could do something like |TF_1=utah which would tell the module to check the |utah= parameter and link it to task force 1.
Currently the module does not look at any of the parent frame arguments (i.e. parameters passed from a page), it only looks at the frame arguments (i.e. parameters passed from the template), so this would need a fairly major restructure of the code
#1: That can work and would also make the conversion smoother as both parameters can work until all banners are converted.
#2: A blanket no would be counter-productive here. class is used in almost all banners but a few. Having this line added to all of them instead of only the handful that don't need it is less ideal.
#3: Probably one word parameters, so something like |attention=.
#4: I'd prefer we harmonize on one name, yes. But that's my personal preference here. Having the module know all versions can work, but will be ugly and messy.
Ha, your edit to the sandbox will definitely not work without significant other changes! For example it would allow you to use features that the project does not even use. Let's start on a small scale with group 1.
listas - I would prefer to move all these to the banner shell and then delete from the banners. So let's work on tracking these instead?
substcheck - I have a feeling there is now a much better way to detect if a template has been substituted. So maybe look into that, and hopefully we can do without this parameter altogether.
category - this would be a good one to start with, and would prove the concept.
demo_page - this is undocumented, but very useful when testing to see how banners behave on different pages. It would be useful if we could use this parameter directly without having to pass through the template.
The edit was just to see if the basic thing breaks (which it didn't so that's good news). If a project banner doesn't support a parameter (as in, the parameter isn't one of the default parameters, or isn't set to "on") then using it from a talk page shouldn't do anything other than place that parameter in the unknown parameter category. Gonnym (talk) 23:01, 3 September 2024 (UTC)
If we start using |CLASS=yes then it might be a good time to stop using |class= altogether, because all of the ratings should now be in the banner shell so this parameter is not needed. The only barrier to this is Category:Articles with conflicting quality ratings which is a massive barrier, and we have made almost no progress in resolving ... — Martin (MSGJ · talk) 07:42, 4 September 2024 (UTC)
Could you in the code sort the pages by the conflicting class? That would probably make it easier to see what issues can be solved with a bot run. Gonnym (talk) 08:34, 4 September 2024 (UTC)
Okay that's fine. But sorting by class is problematic before start/stub and fa/fl start with the same letters. What sort keys would you like to use? — Martin (MSGJ · talk) 11:32, 5 September 2024 (UTC)
It doesn't matter to me, as long as they are different. I'm also quite sure we won't have more than a handful of articles with FA/FL issues, if at all. Maybe place stub as 0. Gonnym (talk) 11:40, 5 September 2024 (UTC)
Looking at the 3k pages at Category:List-Class articles with conflicting quality ratings. I think we can safely have a bot run and remove the pages marked as list from all pages except those in the format of "x in y" (Talk:1962 in anime). There might be some false positives, but that isn't something that can't be fixed manually when someone sees it. All the others aren't lists, but low-quality articles.
The pages in Category:GA-Class articles with conflicting quality ratings seem to be Military History articles tagged as "A". So in this case (and probably also in all other categories) we can decide to go with the higher tagged page, as an editor intentionally decided that article was that level (it's not our job here to check if we agree or not, just to fix the conflict). The stub pages can be double checked if the article itself still has a stub template, if it doesn't, it's not a stub. Gonnym (talk) 16:28, 12 September 2024 (UTC)
The code for using parent arguments for category and demo_page is now coded on sandbox, if you'd like to check it — Martin (MSGJ · talk) 21:09, 5 September 2024 (UTC)
No, I don't think mainspace dabs & #Rs should be excluded. If they were excluded, then they could slip through to an easy circumvention of WP:NOINDEX.
Now that you mention it...ideally, it'd be nice from a maintenance perspective if dabs & #Rs inherited their target's status, if it exists (for cases where both the dab/#R and its target are tagged with {{WP Bio}}). ~Tom.Reding (talk ⋅dgaf)08:07, 11 September 2024 (UTC)
Gonnym, we're talking about the |blp= or |living= parameters here. I'm not sure inheriting the status of the target would be appropriate. For example Matt Doherty Jr. redirects to the article on his father Matt Doherty Sr.. The former is alive but the latter is not — Martin (MSGJ · talk) 08:50, 11 September 2024 (UTC)
Inheritance could be the weak default, as long as |blp=/|living= are blank, but perhaps able to be forced with |blp=inherit/|living=inherit. Values of yes|no etc. would override any inheritance. ~Tom.Reding (talk ⋅dgaf)09:15, 11 September 2024 (UTC)
I can't understand why you would want to use the living parameter on a disambiguation page. In almost every case there will be some people living and some not. There is also no content on a dab page, so little cause for BLP concerns — Martin (MSGJ · talk) 07:59, 19 September 2024 (UTC)
is showing up underneath WikiProject banners on talk pages, e.g. WT:NFC. (This includes banners that are inside a banner shell, but tracking category issues aren't as urgent.)
Actually I'm not sure that category ever worked on inactive banners. It probably should, but turning categorisation on selectively is going to be a pain — Martin (MSGJ · talk) 08:07, 10 September 2024 (UTC)
I can't explain this. Will have to dig deeper into the code. The problem arises because of a compromise to display the quality assessments on these banners but without the categories. It would be much simpler if we could remove all the assessments from inactive banners, but some people found them useful. Perhaps this is less of an issue now with PIQA. — Martin (MSGJ · talk) 09:54, 10 September 2024 (UTC)
I reverted to the 5th September version of the code in the sandbox and Talk:Sudbury school is still not in that category. So I don't understand why you found it in that category, unless it was from a much older version of the code. I agree it would be better if it was in that category, but the way the code is currently set up is either no categories work or all of them work. The category opt-out mechanism would get rather messy otherwise. So this is my proposal: we stop displaying the class on inactive banners. Then I won't need to suppress the categories on inactive banners, and these tracking caegories should then work properly — Martin (MSGJ · talk) 21:41, 17 September 2024 (UTC)
CSS background colors need corresponding colors for dark mode compliance
CSS background colors need corresponding colors for dark mode. I inserted a fix for at least some of them, but apparently I did not follow process. Sorry about that. I'll leave it to others. If you are sandboxing and troubleshooting, you can see if you have resolved the problems by checking the bottom of the "Page information" page for "Background color inline style rule exists without a corresponding text color" Lint errors. To verify the visual appearance, you can go to the "Appearance" section of the right-hand sidebar in Vector 2022 and choose "Dark" under "Color (beta)". Using Special:ExpandTemplates is helpful for locating stray instances of CSS background-color defined without a color. – Jonesey95 (talk) 14:05, 20 August 2024 (UTC)
I don't know much about this, but I added this to Module:WikiProject banner/sandbox/styles.css and then checked at Template:WikiProject France/testcases but it is still showing as having 2 lint errors, so not sure if that has helped or not. I am using Vector 2022 but I don't see the Appearance section in my browser so can't check that. I notice that there are several other styles which define background-color but not color. Is it safe to use black for all these? — Martin (MSGJ · talk) 12:09, 21 August 2024 (UTC)
Thanks. If you copy the template call into Special:ExpandTemplates and then search the resulting wikicode for "back", you should see
<td class="assess import import-Unknown" style="background:#DCDCDC">[[:Category:Unknown-importance France articles|???]]</td>
(which renders the box to the left of "This article has not yet received a rating"). That background needs a corresponding color. There are many instances like this in the code, though some of them exist only with specific combinations of parameters and values. I don't think that all of the background colors are in the templatestyles page, but I could be wrong. Here are a couple of places in the code where I matched a "background" assignment with a "color" assignment and was reverted. Assigning "color:black" should be fine until someone wants something more sophisticated in dark mode. – Jonesey95 (talk) 14:13, 21 August 2024 (UTC)
Yes but I added color:black to the assess class so that should cover that particular part — Martin (MSGJ · talk) 18:14, 21 August 2024 (UTC)
I expect that the Linter is confused about |style= defining the background-color while the color is defined in the class. Can the background color be moved to the CSS, or the color be moved to the style? I will also ask our WMF staffer who has been communicating with us about this new Linter flag, because it looks to me as if the td element has both a color and background-color and should not register as an error. – Jonesey95 (talk) 20:39, 21 August 2024 (UTC)
Yes I expect we could define all the background colours in the stylesheet rather than in the config file. We would just need to define each class/importance as a separate class. I could look at this if you think it would help — Martin (MSGJ · talk) 15:50, 22 August 2024 (UTC)
I haven't had a response yet at WT:Linter, but it has been less than 24 hours, so some patience is still in order. If you think that moving more styles to the CSS stylesheet is a good long-term move anyway, your development time probably won't be wasted. – Jonesey95 (talk) 18:07, 22 August 2024 (UTC)
Yes we can do this. I can work on it next week perhaps. I have followed up on that thread to clarify something — Martin (MSGJ · talk) 09:41, 6 September 2024 (UTC)
Just to note that I have made a start on this. The background colors for importance have now been moved into the stylesheet. I will continue with the class colors shortly — Martin (MSGJ · talk) 14:09, 27 September 2024 (UTC)
@Jonesey95 finished coding this on the sandbox. Would be grateful if you could test it works, and also advise on whether the linter errors have now gone away? — Martin (MSGJ · talk) 22:01, 27 September 2024 (UTC)
The sandbox version at Template:WikiProject France/testcases is reporting zero Linter errors. It appears to be using the sandbox version of all relevant modules and templates, so I think that the new coding is actually being used in the sandbox example cases. I do note a number of appearance changes, including a collapsed section in the sandbox that is not collapsible in the live version, and a note about importance in the sandbox version. I am assuming that those are also desirable changes, along with the color/background-color fixes. Thanks for working on this. – Jonesey95 (talk) 22:13, 27 September 2024 (UTC)
Thank you. Yes, the other changes you observe are due to (a) sandbox not in sync with live, and (b) changes to importance we are discussing below — Martin (MSGJ · talk) 07:32, 28 September 2024 (UTC)
Before deploying this, I would like to check a few details:
Is a comma the correct way to give the same definition to two different classes, e.g. .class-fa,.class-fl{background-color:#BED3FF;}
If a class is used but not defined in the stylesheet, will it give an error or will it just be ignored?
If two different classes are used with conflicting styles, will the one which is applied later take precedence?
Comma is correct, this is the syntax for a list of selectors - if either selector matches an element, the declaration-list is applied to that element.
Classes are merely ways of giving convenient labels to one or more elements. The HTML 5.2 spec isn't too good on this, but the HTML 4.01 spec is better:
The class attribute ... assigns one or more class names to an element; the element may be said to belong to these classes. A class name may be shared by several element instances. The class attribute has several roles in HTML:
As a style sheet selector (when an author wishes to assign style information to a set of elements).
For general purpose processing by user agents.
So a class name that is used in the page source has no requirement to be used in a style sheet, and vice versa. The same goes for ids.
Your third question is more complicated. It's partly down to the order in which HTML elements are nested, partly down to the order in the style sheet, and partly down to what is known as "specificity". Assume that we have a style sheet like this:
/* Style sheet example 1 */.bar{background-color:pink;color:black;}.foo{background-color:lightblue;color:black;}
and HTML like this:
<!-- HTML example 1 --><spanclass=foo><spanclass=bar>Some text</span></span>
the words "Some text" will show on a pink background because the element of class bar is nested inside the element of class foo, and the order of the two rules in the style sheet is immaterial. But if we have HTML like this:
<!-- HTML example 2 --><spanclass="foo bar">Some text</span>
and style sheet example 1, the words "Some text" will show on a lightblue background; and if we exchange the rules in the style sheet:
/* Style sheet example 2 */.foo{background-color:lightblue;color:black;}.bar{background-color:pink;color:black;}
the words "Some text" will now show on a pink background because the second rule overrides the first. For these two cases, whether we use HTML example 2 or this:
<!-- HTML example 3 --><spanclass="bar foo">Some text</span>
makes no difference, because the order of class names in a class= attribute is immaterial. Now assume that the style sheet is now:
/* Style sheet example 3 */span.bar{background-color:pink;color:black;}.foo{background-color:lightblue;color:black;}
and using HTML example 2 or 3, the words "Some text" will show on a pink background because the selector of the first rule has higher specificity than the selector of the second rule.
Interesting! I had always assumed that <span class="foo"><span class="bar"> was equivalent to <span class="foo bar"> — Martin (MSGJ · talk) 18:33, 28 September 2024 (UTC)
Sometimes, but not always. Consider the rule added in this edit. It will be applied to
<!-- HTML example 4 --><spanclass=wpb><spanclass=assess>HTML example 4</span></span>
which emits "HTML example 4", but not to
<!-- HTML example 5 --><spanclass="wpb assess">HTML example 5</span>
which emits "HTML example 5", or to
<!-- HTML example 6 --><spanclass=assess><spanclass=wpb>HTML example 6</span></span>
which emits "HTML example 6". This is because the space in the middle of .wpb .assess is a descendant combinator: in HTML example 4 we have one span that is the descendant of the other, but in HTML example 5 we have only one span, that is of class assess but is not the descendant of any element of class wpb. --Redrose64 🌹 (talk) 20:12, 28 September 2024 (UTC)
listas
Is there a way to set separate sort keys for different wikiprojects? I get the general sortkey from {{WPBS}}, but that doesn't always seem the best for each wikiproject contained within -- 65.92.246.77 (talk) 20:26, 2 October 2024 (UTC)
listas – This parameter, which is the equivalent of the DEFAULTSORT sortkey that should be placed on all biographical articles, is a sortkey for the article talk page (e.g. for John Smith, use |listas=Smith, John so that the talk page will show up in the S's and not the J's of the various assessment and administrative categories). This is important because it is one source used by those who set DEFAULTSORT on the article; consider also setting the DEFAULTSORT for the article when setting this parameter. For more information about this, please see Wikipedia:Categorization of people § Ordering names in a category. If the article is using {{WikiProject banner shell}} then it is preferable to add |listas= to that template instead of a project banner template. Putting the parameter on more than one template is not required.
Is there a way to set a task force as inactive within this module?
There is a proposal to track uses of WikiProject banners which are placed outside the banner shell. The coding might be complex but I think this would be really useful — Martin (MSGJ · talk) 17:38, 29 June 2024 (UTC)
How would you check if the template was inside or outside of the banner shell? That tracking category just checks for the existence of the banner shell on the page — Martin (MSGJ · talk) 12:57, 7 September 2024 (UTC)
Yeah, I can't think of an easy & low-overhead way of doing this either, unless there's an easy way to transform all templates on a page to their canonical titles. ~Tom.Reding (talk ⋅dgaf)17:06, 7 September 2024 (UTC)
I have written some code on my sandbox which might work.
If you type {{#invoke:Sandbox/MSGJ|main|WikiProject Finland}} it will look at the content of the current page and return ...
true if it finds {{WikiProject Finland}} anywhere outside of the banner shell,
true there is no banner shell (so the template cannot be in a shell)
false if it is inside the banner shell,
false if {{WikiProject Finland}} is not found on the page (perhaps a template redirect has been used, but we have no way to check for these)
for mw.ustring.find(content_without_shell,'{{%s*'..banner_name..'%s*[%|}]') to work for all WikiProjects, escaping special characters in banner_name will be necessary to find {{WP New York (state)}}, {{WP C/C++}}, and the like. Periods shouldn't need escaping though, since they'll just match themselves.
That's great. I just wish I understood what you've done there. Last time I did this on the authority control module, I had to use three % characters before the magic character (example) so I don't know how you have done it with just two — Martin (MSGJ · talk) 08:02, 20 September 2024 (UTC)
Ah, there are additional layers of evaluation to contend with in AC, which require more % (%%%% evaluates to %% evaluates to %).
Ah, good point. We should make the first character case insensitve, i.e. "wikiProject Biography" works the same as "WikiProject Biography" — Martin (MSGJ · talk) 13:51, 20 September 2024 (UTC)
I think we should restrict this to main talk namespace only, because there are lots of false positives in project space — Martin (MSGJ · talk) 11:16, 23 September 2024 (UTC)
Not sure how that would help in this case. Some of the banners were are trying to find are tucked further down the page (example) — Martin (MSGJ · talk) 11:25, 23 September 2024 (UTC)
Probably related to the recent update. This helped, sort of - it moved the error to a different location, but it's still present. The problem comes from [[]] in |comments=[[]]. The number in the error refers to the horizontal position of the error, and not a Unicode character #. ~Tom.Reding (talk ⋅dgaf)15:37, 23 September 2024 (UTC)
@MSGJ: apologies, I've been busy. The page you link is no longer showing the issue - is the problem fixed, or is it still around in some other form, or was the change reverted? Aidan9382(talk)16:29, 24 September 2024 (UTC)
Interesting...using the loop method, banner_name_escaped:gsub() was the problem, since it's equivalent to string.gsub(), which returns a '�' when trying to match the literal '%'. mw.ustring.gsub() however, behaves as expected, returning '%%'. This distinction goes away when using a custom [set] though, and all of those 3 gsub calls return the desired '%%'.
Done. This module is not so good on performance, so perhaps when we have cleared out this category we should stop checking for this — Martin (MSGJ · talk) 20:29, 7 October 2024 (UTC)
Not sure about Template:WAP since the project isn't on this wiki, but if this should be kept, it should probably be converted to use this module (and renamed). Gonnym (talk) 19:38, 1 October 2024 (UTC)
Can |DOC=auto also add the template to the project category? Either Category:WikiProject project or Category:WikiProject project templates category. Gonnym (talk) 11:27, 28 May 2024 (UTC)
Do you want it to check to see if Category:WikiProject project templates exists first. If so use it, otherwise use Category:WikiProject project? — Martin (MSGJ · talk) 08:24, 4 June 2024 (UTC)
Or we can just leave them to add the categories manually, as they are currently doing? When you are done reviewing those, I can turn off the tracking — Martin (MSGJ · talk) 20:00, 11 August 2024 (UTC)
Are you finished reviewing these - and can I turn off the tracking, rather than keeping them in the error category indefinitely — Martin (MSGJ · talk) 19:23, 3 September 2024 (UTC)
Well I've added some code to the sandbox to support these (if we want), but you could turn it off. I've reviewed most, but I'm not a fan of reviewing categories that can never be cleared as it has me checking things I've already looked at before. Gonnym (talk) 23:02, 3 September 2024 (UTC)
Yes that is my concern too - that we can never resolve some of these issues, so they are not actually "errors" — Martin (MSGJ · talk) 07:38, 4 September 2024 (UTC)
@MSGJ: wait I thought I did that in the sandbox module... sorry for being stupid. It was supposed to invert the parenthesis on the text "(inactive)" in the banner for inactive wikiprojects. —Matrix(!)ping onewhen replying {user - talk? - uselesscontributions} 18:13, 9 October 2024 (UTC)
@MSGJ and Tom.Reding: you can't see any difference between the sandbox and live versions because the templatestyles on the sandbox version also applies to the live version on that page. At the bottom of the testcases you can see the parenthesis saying "(inactive)" is correctly coded as white, whilst on WT:Logos it's black during dark mode, because usually the WikiProject bubble is not inverted in dark mode. However in this case it should be black. —Matrix(!)ping onewhen replying {user - talk? - uselesscontributions} 16:34, 10 October 2024 (UTC)
I'm using Vector 2022 and I went to dark mode but what I'm seeing does not match the image on that link. On mine the brackets are white (just like your second image) and it looks fine — Martin (MSGJ · talk) 07:47, 12 October 2024 (UTC)
@MSGJ: mb I didn't see this comment (next time pls ping me as my signature says). Which page did you visit? WT:Logos or testcases. The problem is in testcases due to templatestyles applying everywhere and not just the sandbox due to phab:T155813#2996589. —Matrix(!)ping onewhen replying {u - t? - uselessc} 11:11, 30 October 2024 (UTC)
I see you went ahead with this change, despite unanswered questions from myself and Tom.Reding on this talk page — Martin (MSGJ · talk) 17:12, 17 October 2024 (UTC)
@MSGJ: I assume Tom.Reding had no issues with the edit since he thanked my reply. I simply overlooked your reply as it got lost in the swathe of comments. Next time please ping. —Matrix(!)ping onewhen replying {u - t? - uselessc} 11:13, 30 October 2024 (UTC)
@Matrix: the thank you was for the imgur, which at least showed the problem we were unable to reproduce, not a validation of your change. We still don't know the root cause, only that your change papered over it. ~Tom.Reding (talk ⋅dgaf)12:01, 30 October 2024 (UTC)
@Tom.Reding: The root cause of the black parenthesis is the following code:
This code is here so the little bubbles that say "C‑class" and "B-class", etc are in black even in dark mode. But the text saying "(inactive)" is also a member of wpb-header-bubbles so the parenthesis is also black, which is undesirable. My change to the css therefore has a higher specificity and overrides the previous code, making the parenthesis white. Hope this helps. —Matrix(!)ping onewhen replying {u - t? - uselessc} 12:55, 30 October 2024 (UTC)
Category:Pages using WikiProject [insert project] with unknown parameters
In Special:WantedPages, a lot of the most wanted pages are empty categories for pages that use a WikiProject with unknown parameters. In fact, the most wanted page, with nearly 120,000 pages (most appear to be talk pages) linking to it, is the empty category "Category:Pages using WikiProject Lepidoptera with unknown parameters". Why is that? BombCraft8(talk) (contributions)00:26, 4 September 2024 (UTC)
Okay I know why this is happening. This module uses Module:Check for unknown parameters and we have to tell it a category to use if it finds any unknown parameters. The default category is Category:Pages using WikiProject PROJECT with unknown parameters where PROJECT is the name of the project. But not all these categories exist, so the module checks if it exists first, and if not it will use the generic Category:WikiProject templates with unknown parameters instead. The link to these categories occurs when it checks for existence. I can't change this behaviour at this module, but I will make a suggestion at Module talk:Check for unknown parameters to see if there is something that can be done there — Martin (MSGJ · talk) 14:12, 4 September 2024 (UTC)
The following pages are pages I've done work on or are not synced with live version. I'd appreciate if anyone can check my work to see if I missed something.
There is quite a lot to look at here, so may take me a while ... I don't agree with these "TODO" tasks that you are adding in the code. You can make the fixes yourself but it's not fair to try to make others do it — Martin (MSGJ · talk) 17:19, 31 October 2024 (UTC)
We can't and shouldn't have two sources which we take information from. Since the .css file and the config file were created (not by me), the css and any config related data should be there. The tags are in the /sandbox and not in the live version. No one is forced to do the work, but the tag should still stay there, as it's completely correct. Gonnym (talk) 17:31, 31 October 2024 (UTC)
RE 1, is it really worthwhile tracking redundant class values which are ignored anyway? I can't really see the benefit and I can see some drawbacks. For example, an article is rated Stub-class and is moved to Draft namespace. If this class is removed then when/if the article is moved back to mainspace the rating would be lost. Why don't we continue to ignore these class parameters? They are not doing any harm — Martin (MSGJ · talk) 22:28, 1 November 2024 (UTC)
That's a good argument for excluding draft space, but this would be useful for most !mainspace areas, like categories, templates, files, etc. Could a small list of excluded namespaces be used instead of a blanket-!mainspace conditional? ~Tom.Reding (talk ⋅dgaf)10:51, 2 November 2024 (UTC)
Okay I suppose I could get behind this if User and Draft namespaces were excluded. These are the ones which are potential articles — Martin (MSGJ · talk) 09:50, 3 November 2024 (UTC)
RE 2, okay fine. The reason I did not do this before, is this is intended to be a temporary tracking category. As soon as we have caught all the listas values then we can remove this completely and they will be tracked by unknown parameter categories. — Martin (MSGJ · talk) 22:31, 1 November 2024 (UTC)
RE 4, some problems here. For example the blp status would never get past the living check so activepol would never be looked at. I have removed the "dead" status for now to fix this, but have not had a chance to look at the category checking code yet. The category Category:Deaths is not used, so I don't think that will work. I think all this code should be removed until there is a better plan of what we want to achieve and how to do it — Martin (MSGJ · talk) 23:05, 1 November 2024 (UTC)
Bristol VRT, a British model of double-deck bus chassis. The letters indicate the engine orientation and position (Vertical, Rear, Transverse). I've known about this since about 1980. --Redrose64 🌹 (talk) 13:42, 3 November 2024 (UTC)
It should sync the talk page with the non-talk page version, with the non-files it could either lower one level down or completely remove the class value leaving it for editors to fill in. Gonnym (talk) 15:46, 30 October 2024 (UTC)
Would it better to populate a tracking category, rather than attempting to automatically change the rating? — Martin (MSGJ · talk) 12:29, 4 November 2024 (UTC)
That is true. Would you care you write some documentation for inactive banners that we can use? It would not be very long because most features are disabled. Perhaps some information about inactive projects and how to revive? — Martin (MSGJ · talk) 16:39, 11 September 2024 (UTC)
Yeah I'll muse over this weekend. But at the very least, the categorization should still happen for the template. An inactive banner is not placed in the project's category. Gonnym (talk) 16:43, 11 September 2024 (UTC)
@Gonnym, regarding this edit to the sandbox module, there is a problem. Now you are passing all sorts of categories like |MAIN_CAT= through so these categories will not be suppressed. If you recall, we allowed categories on inactive banners so that tracking categories such as Category:Articles with WikiProject banners but without a banner shell would work. But now the only way of stopping the other categories is by filtering them out in the p.inactive function. So I think this needs reverting. What was the aim of that change, and maybe there is another way to achieve it — Martin (MSGJ · talk) 19:50, 6 November 2024 (UTC)
There are many inactive banners with old and unsupported parameters. The code can't check them as we are overriding them. Other than MAIN_CAT, what other category parameter is sent? We can just override it with a blank parameter. Gonnym (talk) 15:42, 7 November 2024 (UTC)
All the quality cats (unless you filter out class), all the importance cats (unless you filter out importance and all tf importances), any TF_MAIN_CAT, ATTENTION_CAT, etc. ... — Martin (MSGJ · talk) 18:16, 7 November 2024 (UTC)
This article is within the scope of WikiProject France, a collaborative effort to improve the coverage of France on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.FranceWikipedia:WikiProject FranceTemplate:WikiProject FranceFrance
Oh, just found what might be an issue -- it looks like the Military History project uses "set index article" as a class. I'm not entirely sure if this template applies to {{Wikiproject banner shell}}, {{Wikiproject <insert wikiproject here>}}, or both. But I think this should ideally affect the banner shell but not the individual wikiproject banners to avoid impacting that. E.g. see Talk:USS_Yorktown. Mrfoogles (talk) 02:29, 8 November 2024 (UTC)
That shouldn't affect anything. Milhist have their own scale and do their own thing. This change will impact the banner shell and any project using the standard scale. — Martin (MSGJ · talk) 10:04, 8 November 2024 (UTC)
I have made the necessary changes to Module:Banner shell. Most of the changes are to this module though, and I still need to test things properly. In the meantime you may see some strange results on SIAs — Martin (MSGJ · talk) 22:09, 9 November 2024 (UTC)
I have been improving the auto documentation for task forces, including adding the importance parameters to TemplateData. I am also proposing to move the configuration settings for the template page and auto doc features into the /templatepage module. The reason is I do not want to alter such a heavily transcluded page (and add to the job queue) whenever we tweak the documentation. See Module:WikiProject banner/templatepage/sandbox for more — Martin (MSGJ · talk) 11:51, 11 November 2024 (UTC)
Importance assessment
Would it be possible to make a way to suppress the importance assessment of List-class articles to Low-importance irregardless of the parameter. Vestrian24Bio (TALK)16:25, 25 October 2024 (UTC)
Yes, in principle you can do this via Template:WikiProject Cricket/importance but you would need to write your own code, because no other project does anything like this. Do you mean whenever |class=list you will automatically assign low importance, and it would be impossible to override that? — Martin (MSGJ · talk) 21:40, 27 October 2024 (UTC)
Yes, that's the desired outcome. I think the intended question was whether the meta template includes any features to facilitate this, and you have given us the answer to that: No. At least that's clear now, thanks. – FayenaticLondon21:05, 28 October 2024 (UTC)
What we can arrange is for the normalised class value to be passed to the importance mask, then it will be simple enough to write the code to produce the desired result — Martin (MSGJ · talk) 21:12, 28 October 2024 (UTC)
You're quite right, I've changed the 2nd line to Low. And it's |IMPORTANCE_SCALE=subpage that you need. No idea what @Vestrian24Bio is doing in the sandbox. They seem to be adding a million task forces — Martin (MSGJ · talk) 10:36, 11 November 2024 (UTC)
The sandbox version is to add the newly created taskforces and some new notes as well. Vestrian24Bio (TALK)12:34, 11 November 2024 (UTC)
"project-independent quality rating" -> "class parameter" is an improvement.
The proposed name implies a value needs to moved. What about pages with no class value to move, and no class value in banner shell, on a page requiring a class value? ~Tom.Reding (talk ⋅dgaf)11:22, 5 November 2024 (UTC)
That category is specifically for cases where a class parameter is used by a project banner but there is no class parameter in the banner shell. Usually this means the parameter needs to be moved from the project banner to the banner shell. The current name is quite misleading — Martin (MSGJ · talk) 12:31, 5 November 2024 (UTC)
Come to think of it, this is not ideal (deferring to WikiProjects' unassessed cats). Since not all WikiProjects use |class= (111), there needs to be a central repository for unclassified articles, such as Category:WikiProject banners without a class parameter. For example, if an article is tagged with only WikiProjects that don't use |class=, then there is no way to find it if it is unassessed. Even if a class-using WikiProject is present, we should make it easy for editors wanting to classify articles to find them, as opposed to searching through 1000 projects' unassessed cats. ~Tom.Reding (talk ⋅dgaf)14:57, 5 November 2024 (UTC)
At the moment {{WPBS}} will use Category:Unassessed articles if there are no project banners. But you are right: if there are banners present then it cannot know if they are banners that use assessments or inactive projects (when assessments are deactivated). So there will be some slipping through the net. We could populate something like Category:All unassessed articles, if that would be useful. What about articles which are assessed but don't contain any projects using assessments? — Martin (MSGJ · talk) 15:20, 5 November 2024 (UTC)
I think it's perfectly fine having assessed pages without a project that uses an assessment scale (after all, I think that is the point of WP:PIQA). An FA about {{WP Caves}} (no {{{class}}}) is still an FA. ~Tom.Reding (talk ⋅dgaf)15:34, 5 November 2024 (UTC)
Done I renamed the category. The catch-all category for unassessed articles will need to be done at the banner shell template, so will sandbox something over there — Martin (MSGJ · talk) 07:47, 12 November 2024 (UTC)
@MSGJ and Gonnym: IIUC, this module was restricted to admin editing because Gonnym did not adequately test their changes before going live? Admin-level protection has downstream (unintended) consequences. Module:WikiProject banner depends on Module:Portal, which I have been maintaining for the past 2+ years. But now Module:Portal must be admin-level protected also, which means I have lost edit rights (because I am only a templateeditor). I know I can still ask admins to check in changes for me, it would still be better (IMO) to be able to edit Module:Portal directly.
Would it be possible to resolve the issue in a different way than restricting editing of Module:WikiProject banner only to admins? For example, could Gonnym agree to always test their changes before committing the code to the live Module?
I don't necessarily see any link between the protection of this module and Module:Portal.
There is no policy that templates with a certain number of transclusions should be fully protected. I once tried to start a discussion on this, but got no response. So currently it is entirely up to admin discretion. I know Pppery has definite views on this.
I have tried to discuss my concerns with Gonnym and their talk page, but have not made much progress. Your suggestions sounds sensible to me.
My belief has long been that the highest-risk templates on the project with millions to tens of millions of transclusions should be fully-protected (and also listed on WP:CASC). This view is only weakly held. The much-more-strongly-held position is the a template's dependencies must be protected at least as well as the base template, and Template:Portal (and hence Module:Portal) has 6mil of its 10mil transclusions on the talk namespace (and hence presumably via Module:WikiProject banner), which establishes a dependency chain sufficient to bind the protection to the full protection here. For me, the reason for that position is about trust - the level of trust required to edit the highest-risk templates on the project is much greater than the level required to edit templates with a mere 5,000 transclusions. And while you of course could have pblocked Gonnym instead of full protection I think the recent incident proves my trust claim right by saying that Gonnym does not have that trust. * Pppery *it has begun...21:04, 6 December 2024 (UTC)
Why do WikiProject banners link to portals anyway?
I cannot figure out why having WikiProject banners link to corresponding portals is helpful. When an editor is on a talk page, I can see them wanting information about how to edit articles that belong to a WikiProject, or asking questions at the corresponding WikiProject Talk page. I don't see why they would want to go to a Portal to get overview information on the topic. We generally want editors to bring off-wiki information into WP, rather than recycling information between pages.
The first Portals were created in February 2005 and were originally set up as subpages of Wikipedia:Wikiportal, such as Wikipedia:Wikiportal/Biology, which I think was the first one. The Portal: namespace was created in August 2005, and existing Wikipedia:Wikiportal/... pages were moved there on 27 August, together with some templates that were only used for building Portal: pages.
Some WikiProject banners have had portal boxes since 2006, e.g. {{WikiProject Trains}}, it's possible that some were given portal boxes in 2005. Some portals predate the corresponding WikiProjects, and I think that they served as a central discussion point until WikiProjects became more established. If a topic had both a Portal and a WikiProject, it was natural to provide a link between them. --Redrose64 🌹 (talk) 09:58, 8 December 2024 (UTC)
In the early days of Wikipedia, it probably made sense to link to portals from this box. But now, both WikiProjects and Portals are well-established with very different aims. The link from article talk to corresponding Portal seems superfluous. — hike395 (talk) 16:02, 8 December 2024 (UTC)
Ooh, this is timely, as we are making other changes to the category tree ("articles" -> "pages"). I will look through and respond with any comments — Martin (MSGJ · talk) 15:10, 13 December 2024 (UTC)
The recent "articles vs. pages" activities here have resulted in the hypergeneration of an absolutely massive number of redlinked class-rating categories at Special:WantedCategories, to the point where the latest run of that report features over 700 redlinks on it where it should normally have less than 200 — and while technically redlinked maintenance categories aren't as big of a deal as redlinked mainspace categories are, redlinked maintenance categories actively interfere with the process of finding redlinked mainspace categories in the list: the amount of eyeglazing scroll-scroll-scroll needed to bypass all the class-rating categories makes it easier to miss mainspace categories hiding in between the class-rating categories, and the entire report has a limit to how many categories it can find or list at any one time, so every time categories get left unresolved across more than one update of that report it gets pushed that much closer to the limit.
I do want to call attention to one specific small batch:
But regardless of whether a category is "pages" or "articles", there's obviously no call for "pages articles", so this is just a straight-up error rather than an oversight on anybody's part.
Otherwise, the remainder are all either "FM-Class [project] pages" or "NA-Class [project] articles" categories that need to be either created if they're actually wanted, or get completely kiboshed if they're unwanted. I won't list them all here, as I'd be here for hours formatting them and this post would approach the size of a novel, but they can all be seen at Special:WantedCategories (where, just a reminder, the total number of entries is over 700, so it'll entail more than one page of results).
So could somebody associated with this project please take steps to either get them created if they're wanted or completely prevent their generation by the template if they're not, and could somebody please take steps to ensure that these changes don't keep spawning more and more redlinked categories in the future? It's just not a thing I can put up with working around, because these redlinks actively interfere with the process of cleaning up the more resolvable ones — it's a thing that needs to be resolved as soon as possible, because we can't just leave hundreds of redlinked categories sitting there unfixed for extended periods. Thanks. Bearcat (talk) 17:13, 13 December 2024 (UTC)
Since bots should no longer add a class parameter to the banner and instead should add to the shell, the |auto= parameter should either be removed completely or moved to the banner shell. Gonnym (talk) 12:46, 15 December 2024 (UTC)