Page MenuHomePhabricator

Migrate MediaSearch to Codex
Closed, ResolvedPublic8 Estimated Story Points

Description

As of Codex 0.12.0, we have enough components in place to be able to migrate the Commons Special:MediaSearch page over to the new component library. This should be a very minor change from the perspective of users (in fact, many of the home-brewed Structured Data components used here went on to serve as the starting point for the equivalent Codex components) – there may be minor cosmetic shifts, but these will bring the feature more in line with the design system.

Despite the small user-facing impact, this work is important because MediaSearch is one of the last production features that still relies on the Vue 3 Compatibility build. Migrating MediaSearch to use Codex will improve UI consistency but it will also get us closer to where we can ship regular Vue 3 (w/o the compat build) everywhere in MediaWiki – an important task in terms of performance/tech debt.

Next Steps
  • Migrate the MediaSearch "base" components to Codex and disable "compatibility mode" in all Vue components in the project (so that the feature runs with full Vue 3 behavior).
  • DST performs internal review of the resulting patches, verifying that things work as expected
    • See here for the latest in the chain of patches that does this; this code is ready for review
  • Perform manual testing of the migrated UI to ensure there are no regressions
    • Some minor visual changes are expected (mostly spacing adjustments); this is fine and brings things more in line with the design guidelines overall
    • This patchdemo instance stages the patch above and can be used for manual QA, but some MediaSearch features rely on on-wiki configuration that's not present here
  • Any significant bugs have been filed as Phab tasks and addressed, either in MediaSearch or upstream in Codex. List them below as they surface:
  • Merge and deploy the migration patches to production, checking errors in LogStash and reverting if necessary
    • The migration patches are handled as a chain of incremental changes for ease of review, but if desired we could squash into a single commit (easier to revert) before merging

Event Timeline

Restricted Application triaged this task as High priority. · View Herald TranscriptMay 16 2023, 10:23 PM
Restricted Application added a project: Structured-Data-Backlog. · View Herald Transcript
Restricted Application added a subscriber: Aklapper. · View Herald Transcript

Change 862368 had a related patch set uploaded (by Eric Gardner; author: Eric Gardner):

[mediawiki/extensions/MediaSearch@master] Update linter settings and adjust files to match

https://gerrit.wikimedia.org/r/862368

Change 920385 had a related patch set uploaded (by Eric Gardner; author: Eric Gardner):

[mediawiki/extensions/MediaSearch@master] Add @wikimedia/codex depencency to extension.json

https://gerrit.wikimedia.org/r/920385

Change 920387 had a related patch set uploaded (by Eric Gardner; author: Eric Gardner):

[mediawiki/extensions/MediaSearch@master] Add @wikimedia/codex to devDependencies

https://gerrit.wikimedia.org/r/920387

Change 920389 had a related patch set uploaded (by Eric Gardner; author: Eric Gardner):

[mediawiki/extensions/MediaSearch@master] [WIP] Replace sd-button with cdx-button

https://gerrit.wikimedia.org/r/920389

Change 862368 merged by jenkins-bot:

[mediawiki/extensions/MediaSearch@master] Update linter settings and adjust files to match

https://gerrit.wikimedia.org/r/862368

egardner set the point value for this task to 8.May 17 2023, 6:01 PM

Change 920774 had a related patch set uploaded (by Eric Gardner; author: Eric Gardner):

[mediawiki/extensions/MediaSearch@master] Replace sd-icon with cdx-icon

https://gerrit.wikimedia.org/r/920774

egardner changed the task status from Open to In Progress.May 17 2023, 6:59 PM

Change 920798 had a related patch set uploaded (by Eric Gardner; author: Eric Gardner):

[mediawiki/extensions/MediaSearch@master] Replace sd-tabs with cdx-tabs

https://gerrit.wikimedia.org/r/920798

Change 921088 had a related patch set uploaded (by Eric Gardner; author: Eric Gardner):

[mediawiki/extensions/MediaSearch@master] Replace sd-radio and sd-checkbox with cdx-radio and cdx-checkbox

https://gerrit.wikimedia.org/r/921088

Change 922617 had a related patch set uploaded (by Eric Gardner; author: Eric Gardner):

[mediawiki/extensions/MediaSearch@master] Replace sd-message with cdx-message

https://gerrit.wikimedia.org/r/922617

Change 922901 had a related patch set uploaded (by Eric Gardner; author: Eric Gardner):

[mediawiki/extensions/MediaSearch@master] [WIP] AutocompleteSearchInput: Use cdx-text-input as basis for this component

https://gerrit.wikimedia.org/r/922901

egardner renamed this task from [Epic] Migrate MediaSearch to Codex to Migrate MediaSearch to Codex.May 25 2023, 4:48 AM

Change 925085 had a related patch set uploaded (by Eric Gardner; author: Eric Gardner):

[mediawiki/extensions/MediaSearch@master] Vue: Disable compat mode on all components

https://gerrit.wikimedia.org/r/925085

Test wiki on Patch demo by EGardner (WMF) using patch(es) linked to this task was deleted:

https://patchdemo.wmflabs.org/wikis/b86f0bbdae/w/

Test wiki on Patch demo by EGardner (WMF) using patch(es) linked to this task was deleted:

https://patchdemo.wmflabs.org/wikis/595871be8a/w/

Change 930856 had a related patch set uploaded (by Eric Gardner; author: Eric Gardner):

[mediawiki/extensions/MediaSearch@master] Port MediaSearch to Codex

https://gerrit.wikimedia.org/r/930856

Change 920387 abandoned by Eric Gardner:

[mediawiki/extensions/MediaSearch@master] Add @wikimedia/codex to devDependencies

Reason:

Abandoned in favor of https://gerrit.wikimedia.org/r/c/mediawiki/extensions/MediaSearch/+/930856

https://gerrit.wikimedia.org/r/920387

Change 920385 abandoned by Eric Gardner:

[mediawiki/extensions/MediaSearch@master] Add @wikimedia/codex depencency to extension.json

Reason:

Abandoned in favor of https://gerrit.wikimedia.org/r/c/mediawiki/extensions/MediaSearch/+/930856

https://gerrit.wikimedia.org/r/920385

Change 920389 abandoned by Eric Gardner:

[mediawiki/extensions/MediaSearch@master] Replace sd-button with cdx-button

Reason:

Abandoned in favor of https://gerrit.wikimedia.org/r/c/mediawiki/extensions/MediaSearch/+/930856

https://gerrit.wikimedia.org/r/920389

Change 920774 abandoned by Eric Gardner:

[mediawiki/extensions/MediaSearch@master] Replace sd-icon with cdx-icon

Reason:

Abandoned in favor of https://gerrit.wikimedia.org/r/c/mediawiki/extensions/MediaSearch/+/930856

https://gerrit.wikimedia.org/r/920774

Change 920798 abandoned by Eric Gardner:

[mediawiki/extensions/MediaSearch@master] Replace sd-tabs with cdx-tabs

Reason:

Abandoned in favor of https://gerrit.wikimedia.org/r/c/mediawiki/extensions/MediaSearch/+/930856

https://gerrit.wikimedia.org/r/920798

Change 921088 abandoned by Eric Gardner:

[mediawiki/extensions/MediaSearch@master] Replace sd-radio and sd-checkbox with cdx-radio and cdx-checkbox

Reason:

Abandoned in favor of https://gerrit.wikimedia.org/r/c/mediawiki/extensions/MediaSearch/+/930856

https://gerrit.wikimedia.org/r/921088

Change 922617 abandoned by Eric Gardner:

[mediawiki/extensions/MediaSearch@master] Replace sd-message with cdx-message

Reason:

Abandoned in favor of https://gerrit.wikimedia.org/r/c/mediawiki/extensions/MediaSearch/+/930856

https://gerrit.wikimedia.org/r/922617

Change 922901 abandoned by Eric Gardner:

[mediawiki/extensions/MediaSearch@master] AutocompleteSearchInput: Use cdx-text-input as basis for this component

Reason:

Abandoned in favor of https://gerrit.wikimedia.org/r/c/mediawiki/extensions/MediaSearch/+/930856

https://gerrit.wikimedia.org/r/922901

Change 925085 abandoned by Eric Gardner:

[mediawiki/extensions/MediaSearch@master] Vue: Disable compat mode on all components

Reason:

Abandoned in favor of https://gerrit.wikimedia.org/r/c/mediawiki/extensions/MediaSearch/+/930856

https://gerrit.wikimedia.org/r/925085

Test wiki on Patch demo by EGardner (WMF) using patch(es) linked to this task was deleted:

https://patchdemo.wmflabs.org/wikis/14bd7d0695/w/

Test wiki on Patch demo by EGardner (WMF) using patch(es) linked to this task was deleted:

https://patchdemo.wmflabs.org/wikis/027b48dc6f/w/

Test wiki on Patch demo by EGardner (WMF) using patch(es) linked to this task was deleted:

https://patchdemo.wmflabs.org/wikis/0a911087e7/w/

Test wiki on Patch demo by EGardner (WMF) using patch(es) linked to this task was deleted:

https://patchdemo.wmflabs.org/wikis/1314aa52f8/w/

Change 930856 merged by jenkins-bot:

[mediawiki/extensions/MediaSearch@master] Port MediaSearch to Codex

https://gerrit.wikimedia.org/r/930856

Test wiki on Patch demo by EGardner (WMF) using patch(es) linked to this task was deleted:

https://patchdemo.wmflabs.org/wikis/f8521b4a5a/w/