Skip to content

Remove file-by-file preference cookie

Thomas Randolph requested to merge tor/maintenance/remove-fbf-pref-cookie into master

What does this MR do?

For #327162 (closed)

This MR removes the usage of the File-By-File (e.g. "One file at a time") cookie since the initial setting already comes from the user's preferences, and toggling the checkbox in the Diffs UI also toggles the user's preference.

Because the utils/preferences.js#fileByFile helper method is essentially just a wrapper that merges the "default" preference with the cookie, that whole file (the method is the only content) and its test suite are also deleted.

preferences.js

I think there's a lot of value at GitLab in having defined modules like diffs/utils/preferences.js as "the place" to put preferences helpers. Momentum carries a very significant weight in review, and being able to say "Why don't we put all our preferences getters over in preferences.js?" is really helpful. It pains me a bit to remove the whole module so it's not even there to reference.

Screenshots or Screencasts (strongly suggested)

N/A. There's no UI change.

How to setup and validate locally (strongly suggested)

The only way to test this locally is to have a bit of an odd setup that you can't really get in the UI any more.

Basically:

  1. Have your user preference ("Show one file at a time on merge request's Changes tab") set to something (it doesn't matter, checked or unchecked).
  2. Set the cookie (fileViewMode) to the opposite value (you can see the two options here in the removed constants: single or all)

On the current master branch, your cookie setting will override the preference setting.

Note that if you toggle the setting using the Cog dropdown > "Show one file at a time" checkbox in the MR Changes tab, the cookie and the user preference will re-sync.

On this MR's branch, the cookie is ignored.

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

Edited by Thomas Randolph

Merge request reports