#REDIRECT [[Template talk:Requested move]]
== Missing error check ==
Hi, {{u|Mr. Stradivarius}}. In case you didn't notice, I redirected {{no redirect|template:move-multi}} to {{tl|requested move}}, so we are now fully live with your module. I've been busy updating redirects and documentation. I just noticed that while you check the '''current''n''''' parameters and report
: {{strongbad|class=error|1=Invalid title detected in parameter "current2"; check for [[Wikipedia:Page name#Technical restrictions and limitations|invalid characters]] and incorrectly formatted [[Help:Interwiki linking|interwiki prefixes]]}}
errors, you didn't do a similar check on the '''new''n''''' parameters, and the module doesn't handle them gracefully, e.g., <nowiki>John Green (author) → [[:John Gr>een]]</nowiki> in a test I did. I created [[Module:Requested move/sandbox]] to work on this, but thought that you could do it in a fraction of the time it would take me. One of these days I'll take some more time to study Lua. Thanks, [[User:Wbm1058|Wbm1058]] ([[User talk:Wbm1058|talk]]) 19:37, 29 April 2014 (UTC)
:This wouldn't be hard to do, but there's a hidden penalty. At the moment, I'm checking for invalid titles by creating a title object with [[mw:Extension:Scribunto/Lua reference manual#mw.title.new|mw.title.new]]. That is an expensive function - every time it is called on a new page, the [[WP:EXPENSIVE|expensive parser function count]] is increased. And if the expensive function count for the whole page goes over 500 while the module is running, it will produce a script error. On a blank page, this would give us a limit of 250 pages (250 current + 250 new), and on a page that already contains lots of expensive parser functions, that number will be less. We can use [[mw:Extension:Scribunto/Lua reference manual#pcall|pcall]] to avoid the script error, but the fallback behaviour would be to treat valid titles as if they were invalid, which is just as bad. This would only be a problem if someone made a move request involving hundreds of pages, though - are you aware of any such requests that have happened in the past? <p>An alternative would be to not use mw.title.new, but to just check for bad characters in the title. This wouldn't increase the expensive function count, but it also wouldn't catch invalid interwiki prefixes. It would, however, have the advantage that we could tell the user exactly what character was invalid, e.g. 'invalid character ">" found in the "new3" parameter'. We could also check the current''n'' parameters with this check, as it seems like it might be useful. Do you think this is a good idea, and if so, what wording would you like for the error message? — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 04:50, 30 April 2014 (UTC)</p>
::Recall that we had to hard-code each parameter in move-multi when it was a template, and thus the limit was 30 because that's where we stopped adding parameters. I've seen someone request about 90 moves by putting together three sets of 30-move requests, but don't want to encourage that type of request, which probably is better handled as a proposal to change a naming convention on some guideline's or WikiProject's talk page. I've noticed that the module seems to run a bit slower than the template did, but that trade-off seems worth it compared to the time it takes to manually fix mistakes, and this template isn't used that frequently. Yes, telling the editor which character is invalid seems helpful – 'invalid character ">" found in the "new3" parameter' works for me. I wouldn't worry about the interwiki prefixes as I've never seen anyone request moves for other wikis. Just checking for File: Category: Talk: etc. like we already do is probably enough. Thanks, [[User:Wbm1058|Wbm1058]] ([[User talk:Wbm1058|talk]]) 05:26, 30 April 2014 (UTC)
:::In that case, we could add both checks. I'll do that in the sandbox so that you can take a look. As for the execution speed, we should be able to improve that by only using arguments from the parent frame instead of from both the current frame and parent frames as we do now. This would mean that <code><nowiki>{{subst:#invoke:requested move|main|new=Foo}}</nowiki></code> wouldn't work, but <code><nowiki>{{subst:requested move|new=Foo}}</nowiki></code> would still work. That will halve the number of wikitext argument lookups we need to make, which is often a cause of performance bottlenecks in Lua. If the bottleneck is the increased amount of error checking, though, then there's not much we can do, but we won't know which it is without trying it. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 05:47, 30 April 2014 (UTC)
::::{{ping|Wbm1058}} Ok, the new checks are now in place in the sandbox. I've also added a duplicate title check for the new titles, and limited the template to use arguments from the parent frame. I've also updated {{tl|requested move/sandbox}} so that you can test it out. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 10:26, 30 April 2014 (UTC)
:::::What would be an example of an "incorrectly formatted interwiki prefix" that was also an invalid title? Any "invalid namespace" is still a valid title, e.g., I can create [[User chat:John Green]], which is still a valid mainspace title. And if I put an "invalid interwiki prefix" on it, e.g., [[mega:User chat:John Green]], it's still a valid, albeit unlikely, title. [[User:Wbm1058|Wbm1058]] ([[User talk:Wbm1058|talk]]) 17:35, 30 April 2014 (UTC)
::::::That would be something like [[C:\Windows]] or ''[[Meatball: The Italian Food]]'', as "C:" and "Meatball:" are reserved for interwiki prefixes. I suppose that means they are "valid" interwiki prefixes rather than "invalid" - what's the best way to word this? — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 21:39, 30 April 2014 (UTC)
:::::::I see. Interesting. I just updated [https://en.wikipedia.org/w/index.php?title=Wikipedia%3ANamespace&diff=606551642&oldid=605608737 Wikipedia:Namespace] and [https://en.wikipedia.org/w/index.php?title=Wikipedia%3APage_name&diff=606556062&oldid=600932872 Wikipedia:Page name]. C: and meatball: still don't throw errors. To get an error you would need to find them on the list at [[m:Special:Interwiki]]. Looking at a practical example, [[Q: Are We Not Men? A: We Are Devo!]] doesn't give an error either (see [[Are We Not Men? We Are Devo!]]). If it isn't easy to check the interwiki table then it's probably not worth the trouble as this scenario is quite rare. Maybe just omit the part about "incorrectly formatted interwiki prefix" as it might just confuse people. Actually with the new check '''<nowiki>invalidChar = page:match('[#<>%[%]|{}]')</nowiki>''' I'm wondering what still falls through to get caught by the next check "for invalid titles that aren't covered by the previous check." I haven't found any examples that trigger that error yet. – [[User:Wbm1058|Wbm1058]] ([[User talk:Wbm1058|talk]]) 02:17, 1 May 2014 (UTC)
:::::::{{u|Mr. Stradivarius}}, I just found that [[Q./.]] triggers the "Invalid title detected in parameter "new1"; check for invalid characters and incorrectly formatted interwiki prefixes" error. That's covered by the [[Wikipedia:Page name#Technical restrictions and limitations|invalid characters]] link. [[User:Wbm1058|Wbm1058]] ([[User talk:Wbm1058|talk]]) 02:28, 1 May 2014 (UTC)
{{od|7}} Ah yes, you're quite right about the interwiki prefixes. That was a bug, as title objects with interwikis are valid, but the page cannot be created on the local wiki. I've added an extra check for interwiki prefixes and altered the error messages, so this should be fixed in the sandbox now. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 09:38, 1 May 2014 (UTC)
:Super! The sandbox code is now live, and I updated the documentation. Thanks! [[User:Wbm1058|Wbm1058]] ([[User talk:Wbm1058|talk]]) 13:59, 1 May 2014 (UTC)
{{Rcat shell|
== Moving over a disambiguation page implies that a multi-move request should be submitted ==
{{R from remote page}}
[[Special:Permalink/606319385#Requested move|This move request]] was submitted as a single move over a disambiguation page. [[Special:Diff/606407870|With this edit]] I converted it to a multi-move request. Just wondering if it might be possible for this module to detect requests to move over disambiguation pages and automatically create a multi-move request that includes the implied move of the dab page, i.e. automatically convert to a multi-move request as I did manually. – [[User:Wbm1058|Wbm1058]] ([[User talk:Wbm1058|talk]]) 02:29, 30 April 2014 (UTC)
:That's going to be hard to do. You can grab the page source, but the problem is that you have to then parse the source to find whether it has a disambiguation template in it. You would have to keep an up-to-date list of all disambig templates and their redirects, and you would probably have to keep tabs on the amount of string processing being done if many lengthy pages need to be parsed, so that we can keep execution time down to a reasonable amount. (If we go over 10 seconds in Lua on a given page, we get a script error.) And might there not be situations where you want to move a page over a disambiguation page, but not move the disambiguation page as well? — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 05:03, 30 April 2014 (UTC)
::Right, at [[Talk:Converge (band)#Requested page move]] there is a request to move over a 2-item dab [[Converge]], which could possibly be eliminated in favor of hatnotes (if there is a primary topic). Maybe we would limit automatic multi-conversion to dabs with more than two or three items in them. Look at [[Help:Magic words#Behavior switches]]:
::* <code><nowiki>__DISAMBIG__</nowiki></code> (marks a page as a [[WP:DAB|disambiguation page]] and places it in [[Special:DisambiguationPages]], and places inward links in [[Special:DisambiguationPageLinks]]). See [[mw:Extension:Disambiguator]].
::Would that be easier than checking for templates? [[User:Wbm1058|Wbm1058]] ([[User talk:Wbm1058|talk]]) 05:48, 30 April 2014 (UTC)
:::The check itself would be easier, but again, there's a problem. Often <code><nowiki>__DISAMBIG__</nowiki></code> is inside a template, so detecting it would require us to use [[mw:Extension:Scribunto/Lua reference manual#frame:preprocess|frame:preprocess]] with every page. That involves expanding all the templates and parser functions on the page, and will probably put us over the 10-second limit after just two or three pages, depending on what templates they use. We could reduce the load by using some criteria to decide which part of the page to parse, but deciding which part isn't easy, and it may put us over the limit anyway depending on what we end up processing. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 06:00, 30 April 2014 (UTC)
== Ireland (one more request) ==
{{for|background|Wikipedia talk:Requested moves/Archive 21#Ireland|Wikipedia talk:Requested moves#Sea of bold}}
{{ping|Mr. Stradivarius}} In the [[Wikipedia:Requested moves/Lead]] section there is a note<ref name=Arbitration-Ireland/> that is just distracting to editors trying to learn how to submit move requests. I'd like to move it to [[Wikipedia:Requested moves/Closing instructions]], which may be a better place for its intended audience to read it, but was wondering if you might modify this module to blacklist those three pages. If an editor attempted to use <nowiki>{{requested move}}</nowiki> on a talk page in the blacklist, then give an error:
{{strongbad|class=error|1=Discussions relating to the naming of Ireland articles must occur at [[Wikipedia:WikiProject Ireland Collaboration]] by order of the Arbitration Committee.}}
I've seen comments suggesting that the WP:RM instructions are too long or complicated, and this would be a way to shorten them a bit. Note that there's a template for that: {{tl|IECOLL-talk}} – that's just transcluded on the three banned talk pages. They did have a discussion [[Wikipedia talk:WikiProject Ireland Collaboration#Requested move (January 2014)|here]] as recently as January. Which of course was started on one of the banned talkpages, [[special:permalink/591605293#Requested move|in spite of that banner]] ... [[special:permalink/591605293#Move discussion in progress|''say what''?]] (sigh) [[special:permalink/592567653#Requested move (January 2014)|This]] is what it looked like just before closing (they got inventive to make it work: '''<nowiki>current1=?|new1=?</nowiki>'''), and amazingly enough [[special:permalink/592568920#January 20, 2014|the bot did not choke on that]]. I've been asked in the past about supporting (multi-)move discussions on WikiProject talk pages. I suppose that wouldn't be too hard to do—I mean to support it in an official and more graceful way. Maybe by setting '''new1 = talkonly''' to indicate that there is no desire to move [[Wikipedia:WikiProject Ireland Collaboration]], or something like that. Thanks again, [[User:Wbm1058|Wbm1058]] ([[User talk:Wbm1058|talk]]) 02:13, 2 May 2014 (UTC)
{{reflist |refs=
<ref name=Arbitration-Ireland>
Note to closers: according to an [[Wikipedia talk:Requests for arbitration/Ireland article names#Request to amend prior case: Ireland article names|ArbCom ruling]] of June 2009, [[Wikipedia talk:Requests for arbitration/Ireland article names#Request for clarification: Wikipedia:Requests for arbitration/Ireland article names 2|confirmed]] in September 2011, discussions relating to the naming of Ireland articles ([[Ireland]], [[Republic of Ireland]], [[Ireland (disambiguation)]]) must occur at [[Wikipedia talk:WikiProject Ireland Collaboration]], unless it is agreed there to hold the discussion elsewhere.<!--It might be moved to a sub page etc.--> Any requested move affecting these articles that is opened on the article talk pages or any other venue should be speedily closed, with a pointer to the ArbCom ruling.
</ref>
}}
{{ping|tiny=y|Mr. Stradivarius}} Upon further review, I think it best not to put error checks in the module to prevent RMs of the Ireland titles, unless there is a specific consensus for that. Given the caveat "unless it is agreed there to hold the discussion elsewhere", I suppose "elsewhere" could be one of the ArbCom-blocked pages, i.e., there could be a discussion at Talk:Ireland ''if'' that is prior agreed to by a consensus at [[Wikipedia talk:WikiProject Ireland Collaboration]]. I moved the notice from the WP:RM lead to the closing instructions. [[User:Wbm1058|Wbm1058]] ([[User talk:Wbm1058|talk]]) 17:55, 8 May 2014 (UTC)
== Format of "new title to be determined by discussion" requests ==
A link is being created to the question mark: <code><nowiki>{{no redirect|?}}</nowiki></code>
This is <code>local defaultNewPagename = '?' -- Name of new pages that haven't been specified</code>
As this is not the literal meaning of the request, this should be changed to just boldface the ? without linking: <code><nowiki>'''?'''</nowiki></code>
Thanks. [[User:Wbm1058|wbm1058]] ([[User talk:Wbm1058|talk]]) 14:22, 10 May 2017 (UTC)
:{{done}}. I just removed the overlink though. I decided not to boldface it. [[User:Wbm1058|wbm1058]] ([[User talk:Wbm1058|talk]]) 18:56, 25 September 2017 (UTC)
== Support for WikiProject talk pages hosting significant multi-move discussions ==
I've [[special:diff/802483044|updated the module]] to support hosting significant multi-move discussions on WikiProject talk pages or other talk pages in Wikipedia: namespace. {{param|current1}} is thus un-deprecated. {{tl|Requested move/dated}} and {{U|RMCD bot}} already support this with no updates to their code necessary.<br/>[[Wikipedia talk:WikiProject Trucks]] is currently hosting such a discussion: [[Wikipedia talk:WikiProject Trucks#Requested move 25 September 2017|Requested move 25 September 2017]]. Common discussion pages such as WikiProject talk pages can still only host one open RM discussion at a time. – [[User:Wbm1058|wbm1058]] ([[User talk:Wbm1058|talk]]) 13:13, 26 September 2017 (UTC)
== Displaying in article page ==
I am a user of malayalam wikipedia. I would like to know the statements in the module that needs to be changed for displaying the message of requested move in the article page ad not in talk page. [[User:Adithyak1997|Adithyak1997]] ([[User talk:Adithyak1997|talk]]) 03:06, 28 August 2018 (UTC)
|