Page MenuHomePhabricator

MediaWiki 1.29.0-wmf.21 breaks JavaScript collapsing ({{boîte déroulante}}) on fr.wikisource for some users
Closed, ResolvedPublic

Description

Since yesterday, the Dropboxes do not close anymore and do not even have any icon of opening, for example in my user page not changed.
Panels below edit panel are also impacted.

  • UTC-20170426-17:50 : fr.wikisource.org/wiki/Spécial:Version = 1.29.0-wmf.20 (rMW8954854a2f05) UTC-20170425-15:31.html
  • UTC-20170426-19:45 : fr.wikisource.org/wiki/Spécial:Version = 1.29.0-wmf.21 (rMWe826acd58b26) UTC-20170425-15:31.html

Event Timeline

Aklapper changed the task status from Open to Stalled.EditedApr 27 2017, 11:25 AM

Hi @Rical, thanks for taking the time to report this!
Unfortunately this report lacks some information. If you have time and can still reproduce the problem, please add a more complete description to this report (a list of steps to reproduce which leave no room for interpretation what to do, describing actual results and expected results after performing the steps to reproduce. Ideally, exact and clear steps to reproduce should allow any other person to follow these steps (without having to interpret those steps) and see the same results.

I go to https://fr.wikisource.org/wiki/Utilisateur:Rical#Dates_d.27inscriptions_en_cat.C3.A9gorie and there are three items and clicking Derouler / Enrouler works for me as expected. There is another item on top which is a bullet point and literally {{boîte déroulante/début|... Please describe which steps to perform as a list of steps, the outcome you expect, and the actual outcome.

To understand, I edited my commons.js and others as comments only.
I desactivated all beta features in my preference.
I restarted my computer. But the bug continue.
Today, I raz the cache by Ctrl-Shift-R in Firefox, then dropboxes become normal in my user page.
I try the same when I preview or record a module change. But the bug continue.
Raz the cache debugs the Module page with its documentation page, when not in edit state.
This seems to be a true bug, but perhaps for large modules only ?
Perhaps this needs a complete final parser task in any case, even if the content is not completely processed. And an error alert in this case.

It sounds like one of your user JavaScript files included some deprecated functions, which have been altered (as announced in Tech News recently). In order to see the effects of commenting out the JavaScript files, you needed to clear your cache.

I'm having a hard time working out what you mean by "Raz the cache debugs the Module page with its documentation page, when not in edit state.". "Raz" isn't a word... did you perhaps mean "erase" or "clear"? And can you give an example of a page where you are seeing a problem, and tell us where on the page that problem occurs?

@Rical: In general, providing

  • a list of steps to reproduce, step by step,
  • expected outcome
  • actual outcome

in separate sections is highly encouraged in bug reports, to save everybody's time and avoid misunderstandings.
See https://mediawiki.org/wiki/How_to_report_a_bug for more information. Thanks.

My test case is in the central module Module:Central-s-fr. See also T104109 if the size of code could explain this case (1.2 Mo of code on disc, and 980 ko of resulting content in html).
At any time you can edit and preview this page. (but not record to not disturb my job.)

I name "Raz" the action on the cache by Ctrl-Shift-R in Firefox. "erase" or "clear"? You can teach me.

One user debug:
Drop boxes work fine when I add ?safemode=1 to the URL before clic on PREVIEW.
The Firefox option print.always_cache_old_pres = true automatizes the ?safemode=1 . You can use the URL about:config to change all options and search "cache" .
Then a clic on "Preview in the title page" works fine each time.
Thanks for your post ! ! !

Long term debug:
About this task, how to insure a fine result in all cases? Perhaps changing always de date-time of the adequate script/s to enforce a reload in the browser.

Nemo_bis renamed this task from Last Mediawiki 1.29.0-wmf.21 or .20 seems disturb Dropboxes to MediaWiki 1.29.0-wmf.21 breaks JavaScript collapsing ({{boîte déroulante}}) on fr.wikisource.Apr 29 2017, 12:56 PM
Nemo_bis renamed this task from MediaWiki 1.29.0-wmf.21 breaks JavaScript collapsing ({{boîte déroulante}}) on fr.wikisource to MediaWiki 1.29.0-wmf.21 breaks JavaScript collapsing ({{boîte déroulante}}) on fr.wikisource for some users.

I cannot reproduce the problem on https://fr.wikisource.org/wiki/Utilisateur:Rical#Dates_d.27inscriptions_en_cat.C3.A9gorie and I still have no idea which steps are required to try reproducing the problem on https://fr.wikisource.org/wiki/Module:Central-s-fr as no steps were provided.

Today, this bug continue in mediawiki 1.29.0-wmf.21 (d6c07d1). You can see an exemple in my user page not changed for November 2015‎ has you can see in the Revision history of "Utilisateur:Rical".

@Rical: "Still happens" is not helpful. We are running in circles. Please read the previous comments and answer them.

Please clarify what the issue is. I see the collapsible boxes on https://fr.wikisource.org/wiki/Utilisateur:Rical#Dates_d.27inscriptions_en_cat.C3.A9gorie and they can be expanded and collapsed for me. Can you upload a screenshot of what you're seeing?

image.png (1×1 px, 168 KB)

Heh, funny thing, I refreshed the page and now it's broken. Here's how the broken version looks like, for comparison:

image.png (1×1 px, 172 KB)

I get an error in the JS console:

Exception in module-execute in module site:

TypeError: Cannot read property 'profile' of undefined
    at eval (eval at <anonymous> (/w/load.php?debug=false&lang=en&modules=jquery%2Cmediawiki%7Cmediawiki.legacy.wikibits&only=scripts&skin=vector&version=0r0nkm9:4), <anonymous>:1:914)
    at eval (<anonymous>)
    at /w/load.php?debug=false&lang=en&modules=jquery%2Cmediawiki%7Cmediawiki.legacy.wikibits&only=scripts&skin=vector&version=0r0nkm9:4
    at Function.globalEval (/w/load.php?debug=false&lang=en&modules=jquery%2Cmediawiki%7Cmediawiki.legacy.wikibits&only=scripts&skin=vector&version=0r0nkm9:4)
    at Object.<anonymous> (/w/load.php?debug=false&lang=en&modules=jquery%2Cmediawiki%7Cmediawiki.legacy.wikibits&only=scripts&skin=vector&version=0r0nkm9:161)
    at fire (/w/load.php?debug=false&lang=en&modules=jquery%2Cmediawiki%7Cmediawiki.legacy.wikibits&only=scripts&skin=vector&version=0r0nkm9:45)
    at Object.add [as done] (/w/load.php?debug=false&lang=en&modules=jquery%2Cmediawiki%7Cmediawiki.legacy.wikibits&only=scripts&skin=vector&version=0r0nkm9:45)
    at Object.always (/w/load.php?debug=false&lang=en&modules=jquery%2Cmediawiki%7Cmediawiki.legacy.wikibits&only=scripts&skin=vector&version=0r0nkm9:46)
    at runScript (/w/load.php?debug=false&lang=en&modules=jquery%2Cmediawiki%7Cmediawiki.legacy.wikibits&only=scripts&skin=vector&version=0r0nkm9:160)
    at checkCssHandles (/w/load.php?debug=false&lang=en&modules=jquery%2Cmediawiki%7Cmediawiki.legacy.wikibits&only=scripts&skin=vector&version=0r0nkm9:161)

The 'module site' means that the error comes from https://fr.wikisource.org/wiki/MediaWiki:Common.js. Presumably, it's the $.client.profile().name calls, which are done without loading the 'jquery.client' module.

Many thanks! Dropboxes are rigth.