Page MenuHomePhabricator

Legacy Vector preferences not respected on pages that include special pages (eg. Special:PrefixIndex)
Closed, ResolvedPublic

Description

When I visit https://ko.wikipedia.org/wiki/%EC%82%AC%EC%9A%A9%EC%9E%90:-revi/%EC%97%B0%EC%8A%B5%EC%9E%A5 (essentially User:-revi/Sandbox), my legacy vector preferences (via GlobalPreferences (and not overridden F34582087) is not respected and I am forced to see the 'new' vector.

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

Other kowiki user also confirmed they see the new vector on that page after setting legacy vector, but their Sandbox page is not forced on 'new' vector, as seen in F34582239.

Steps to reproduce

  1. Enable Legacy Vector via Preferences or GlobalPreferences
  2. Visit https://ko.wikipedia.org/wiki/%EC%82%AC%EC%9A%A9%EC%9E%90:-revi/%EC%97%B0%EC%8A%B5%EC%9E%A5.

Expected behavior

I see the page in Legacy Vector

Actual behavior

I see the page in "new" vector. I see any and all other pages served in Legacy Vector outside of this page.

Developer notes

This seems to relate to the transclusion of Special:PrefixIndex

Event Timeline

revi moved this task from Incoming to Radar on the User-revi board.
Jdlrobson renamed this task from Legacy Vector preferences not respected on specific page to Legacy Vector preferences not respected on pages that include Special:PrefixIndex.Aug 4 2021, 5:42 PM
Jdlrobson updated the task description. (Show Details)

Hello,

The problem also seems to concern {{Special:NewPages}} transclusion.

A problem occurs in frwiki on page Discussion Projet:Modèle. New vector is used, contrary to my preferences.

This page includes the header Discussion Projet:Modèle/En-tête. The header contains {{Spécial:Nouvelles pages|namespace=10|limit=10}} (localized name of Special:NewPages).

I tested in my draft, adding a call to {{Special:NewPages|namespace=10|limit=10}} force new vector, regardless of my preferences.

(sorry for my bad English)

Jdlrobson renamed this task from Legacy Vector preferences not respected on pages that include Special:PrefixIndex to Legacy Vector preferences not respected on pages that include special pages such asSpecial:PrefixIndex.Sep 8 2021, 2:11 PM
Jdlrobson added a subscriber: Krinkle.

See T290706: Parser code for special page transclusion replaces main context for why this is happening.
One way to solve it would be to not pass in the user and request to the FeatureManager constructor and just call RequestContext::getMain() on the fly instead, although in terms of architecture it would be a step backwards.

Another possibility would be to initialize the feature manager service at some predictable early point in the request lifecycle.

Krinkle renamed this task from Legacy Vector preferences not respected on pages that include special pages such asSpecial:PrefixIndex to Legacy Vector preferences not respected on pages that include special pages (eg. Special:PrefixIndex).Sep 15 2021, 5:07 PM
Jdlrobson added a subscriber: Jdlrobson.

I think this will be fixed by the Vector 2022 roll out. Will confirm next week.

This should be fixed as of today on Korean Wikipedia. Please let me know if you are still seeing the issue anywhere or any other issues relating to today's deployment.

Screen Shot 2022-02-01 at 4.51.22 PM.png (1×2 px, 339 KB)