Skip to content
Snippets Groups Projects

Remove todos_vue_application feature flag and purge all code

Merged Thomas Hutterer requested to merge 509080-rm-haml-todos into master
All threads resolved!

What does this MR do and why?

This removes the todos_vue_application feature flag which is already default_enabled: true in 17.8. We want do Remove all unused code after Haml version of To... (#509080 - closed) this milestone (%17.9).

With the flag, this MR also removes all old code that was on the flag false path. That's why this MR removes about 2k LOC :fire:

MR acceptance checklist

Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

Screenshots or screen recordings

No visual change. The new To-Do dashboard (Vue version) stays unchanged. The old dashboard (Haml version) was only reachable by manually setting the flag to false.

How to set up and validate locally

  • 90% of the MR is just deleting obvious old code, in the first commit.
  • The following commits remove individual helpers. For each I did a grep to make sure they weren' used anymore. But I'd apprechiate if you double check that :innocent: Btw, there might be more helpers that we could remove, but when I hit the 2k LOC mark, I thought it's better to just open the MR. In case you spot opportunities for more code removal, I'll handle these as follow-ups.
Edited by Thomas Hutterer

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • Thomas Hutterer changed milestone to %17.9

    changed milestone to %17.9

  • A deleted user added backend frontend labels

    added backend frontend labels

  • 2 Warnings
    :warning: This merge request is quite big (917 lines changed), please consider splitting it into multiple merge requests.
    :warning: This merge request contains lines with testid selectors. Please ensure e2e:test-on-omnibus job is run.

    testid selectors

    The following changed lines in this MR contain testid selectors:

    app/views/dashboard/todos/index.html.haml

    -              = dropdown_tag(group_dropdown_label(params[:group_id], _("Group")), options: { toggle_class: 'js-group-search js-filter-submit gl-w-full sm:gl-w-auto', title: s_("Todos|Filter by group"), filter: true, filterInput: 'input#group-search', dropdown_class: 'dropdown-menu-selectable dropdown-menu-group js-filter-submit', placeholder: _("Search groups"), data: { default_label: _("Group"), display: 'static', testid: 'group-dropdown' } })
    -    .js-todos-list-container{ data: { testid: "todos-list-container" } }

    If the e2e:test-on-omnibus job in the qa stage has run automatically, please ensure the tests are passing. If the job has not run, please start the manual:e2e-test-pipeline-generate job in the prepare stage and ensure the tests in follow-up:e2e:test-on-omnibus-ee pipeline are passing.

    For the list of known failures please refer to the latest pipeline triage issue.

    If your changes are under a feature flag, please check our Testing with feature flags documentation for instructions.

    Reviewer roulette

    Category Reviewer Maintainer
    backend @zmartins profile link current availability (UTC+1, same timezone as author) @eurie profile link current availability (UTC-5, 6 hours behind author)
    frontend @ccharnolevsky profile link current availability (UTC+2, 1 hour ahead of author) @slashmanov profile link current availability (UTC+4, 3 hours ahead of author)
    test for spec/features/* @zmartins profile link current availability (UTC+1, same timezone as author) Maintainer review is optional for test for spec/features/*

    Please refer to documentation page for guidance on how you can benefit from the Reviewer Roulette, or use the GitLab Review Workload Dashboard to find other available reviewers.

    If needed, you can retry the :repeat: danger-review job that generated this comment.

    Generated by :no_entry_sign: Danger

  • mentioned in issue #503821 (closed)

  • Thomas Hutterer added 3499 commits

    added 3499 commits

    Compare with previous version

  • **** added QA label

    added QA label

  • 5 Warnings
    :warning: This merge request is quite big (1707 lines changed), please consider splitting it into multiple merge requests.
    :warning: b703a693: Commits that change 30 or more lines across at least 3 files should describe these changes in the commit body. For more information, take a look at our Commit message guidelines.
    :warning: b78f4395: Commits that change 30 or more lines across at least 3 files should describe these changes in the commit body. For more information, take a look at our Commit message guidelines.
    :warning: The master pipeline status page reported failures in

    If these jobs fail in your merge request with the same errors, then they are not caused by your changes.
    Please check for any on-going incidents in the incident issue tracker or in the #master-broken Slack channel.

    :warning: This merge request contains lines with testid selectors. Please ensure e2e:test-on-omnibus job is run.

    testid selectors

    The following changed lines in this MR contain testid selectors:

    app/views/dashboard/todos/index.html.haml

    -              = dropdown_tag(group_dropdown_label(params[:group_id], _("Group")), options: { toggle_class: 'js-group-search js-filter-submit gl-w-full sm:gl-w-auto', title: s_("Todos|Filter by group"), filter: true, filterInput: 'input#group-search', dropdown_class: 'dropdown-menu-selectable dropdown-menu-group js-filter-submit', placeholder: _("Search groups"), data: { default_label: _("Group"), display: 'static', testid: 'group-dropdown' } })
    -    .js-todos-list-container{ data: { testid: "todos-list-container" } }

    If the e2e:test-on-omnibus job in the qa stage has run automatically, please ensure the tests are passing. If the job has not run, please start the manual:e2e-test-pipeline-generate job in the prepare stage and ensure the tests in follow-up:e2e:test-on-omnibus-ee pipeline are passing.

    For the list of known failures please refer to the latest pipeline triage issue.

    If your changes are under a feature flag, please check our Testing with feature flags documentation for instructions.

    Reviewer roulette

    Category Reviewer Maintainer
    backend @stefanosxan profile link current availability (UTC+1, same timezone as author) @sgarg_gitlab profile link current availability (UTC+5.5, 4.5 hours ahead of author)
    frontend @smaglangit profile link current availability (UTC+8, 7 hours ahead of author) @jivanvl profile link current availability (UTC-6, 7 hours behind author)
    QA @hmuralidhar profile link current availability (UTC+11, 10 hours ahead of author) Maintainer review is optional for QA
    test for spec/features/* @stefanosxan profile link current availability (UTC+1, same timezone as author) Maintainer review is optional for test for spec/features/*

    Please refer to documentation page for guidance on how you can benefit from the Reviewer Roulette, or use the GitLab Review Workload Dashboard to find other available reviewers.

    If needed, you can retry the :repeat: danger-review job that generated this comment.

    Generated by :no_entry_sign: Danger

    Edited by ****
  • E2E Test Result Summary

    allure-report-publisher generated test report!

    e2e-test-on-gdk: :white_check_mark: test report for 84b415ca

    expand test summary
    +------------------------------------------------------------------+
    |                          suites summary                          |
    +-------------+--------+--------+---------+-------+-------+--------+
    |             | passed | failed | skipped | flaky | total | result |
    +-------------+--------+--------+---------+-------+-------+--------+
    | Create      | 138    | 0      | 20      | 0     | 158   | ✅     |
    | Govern      | 80     | 0      | 12      | 0     | 92    | ✅     |
    | Verify      | 50     | 0      | 20      | 0     | 70    | ✅     |
    | Plan        | 82     | 0      | 8       | 0     | 90    | ✅     |
    | Growth      | 0      | 0      | 2       | 0     | 2     | ➖     |
    | Ai-powered  | 0      | 0      | 2       | 0     | 2     | ➖     |
    | Monitor     | 8      | 0      | 12      | 0     | 20    | ✅     |
    | Data Stores | 33     | 0      | 10      | 0     | 43    | ✅     |
    | Package     | 25     | 0      | 13      | 0     | 38    | ✅     |
    | Manage      | 0      | 0      | 10      | 0     | 10    | ➖     |
    | Release     | 5      | 0      | 1       | 0     | 6     | ✅     |
    | Secure      | 4      | 0      | 3       | 0     | 7     | ✅     |
    | Fulfillment | 2      | 0      | 7       | 0     | 9     | ✅     |
    | Configure   | 0      | 0      | 3       | 0     | 3     | ➖     |
    | ModelOps    | 0      | 0      | 1       | 0     | 1     | ➖     |
    | Analytics   | 2      | 0      | 0       | 0     | 2     | ✅     |
    +-------------+--------+--------+---------+-------+-------+--------+
    | Total       | 429    | 0      | 124     | 0     | 553   | ✅     |
    +-------------+--------+--------+---------+-------+-------+--------+

    e2e-test-on-cng: :white_check_mark: test report for 84b415ca

    expand test summary
    +------------------------------------------------------------------+
    |                          suites summary                          |
    +-------------+--------+--------+---------+-------+-------+--------+
    |             | passed | failed | skipped | flaky | total | result |
    +-------------+--------+--------+---------+-------+-------+--------+
    | Create      | 139    | 0      | 19      | 0     | 158   | ✅     |
    | Package     | 30     | 0      | 14      | 0     | 44    | ✅     |
    | Verify      | 51     | 0      | 19      | 0     | 70    | ✅     |
    | Manage      | 0      | 0      | 10      | 0     | 10    | ➖     |
    | Plan        | 82     | 0      | 8       | 0     | 90    | ✅     |
    | Monitor     | 8      | 0      | 12      | 0     | 20    | ✅     |
    | Govern      | 82     | 0      | 10      | 0     | 92    | ✅     |
    | Fulfillment | 2      | 0      | 7       | 0     | 9     | ✅     |
    | Data Stores | 33     | 0      | 10      | 0     | 43    | ✅     |
    | Release     | 5      | 0      | 1       | 0     | 6     | ✅     |
    | Secure      | 2      | 0      | 5       | 0     | 7     | ✅     |
    | Configure   | 0      | 0      | 3       | 0     | 3     | ➖     |
    | ModelOps    | 0      | 0      | 1       | 0     | 1     | ➖     |
    | Analytics   | 2      | 0      | 0       | 0     | 2     | ✅     |
    | Ai-powered  | 0      | 0      | 2       | 0     | 2     | ➖     |
    | Growth      | 0      | 0      | 2       | 0     | 2     | ➖     |
    +-------------+--------+--------+---------+-------+-------+--------+
    | Total       | 436    | 0      | 123     | 0     | 559   | ✅     |
    +-------------+--------+--------+---------+-------+-------+--------+
    Edited by ****
  • Thomas Hutterer added 8 commits

    added 8 commits

    • 531c88e2 - Enable new Vue implementation of To-Do dashboard for everyone
    • 16c90334 - Remove unused todo_target_name helper method
    • 3208145b - Remove unused todo_target_aria_label helper method
    • 9b207ac5 - Remove unused todo_author_display? helper method
    • 578a0ab3 - Remove unused todo_action_name helper method
    • d0d917a7 - Remove unused todo_self_addressing helper method
    • 1785afae - Remove unused todo_due_date helper method
    • 85aaff8e - Remove unused todos_has_filtered_results? helper method

    Compare with previous version

  • Thomas Hutterer added 13 commits

    added 13 commits

    • 85aaff8e...3f340cf3 - 3 earlier commits
    • e7347e35 - Remove unused todo_author_display? helper method
    • 5429d124 - Remove unused todo_action_name helper method
    • cab1a69e - Remove unused todo_self_addressing helper method
    • e4bb3aac - Remove unused todo_due_date helper method
    • e0ea2d9c - Remove unused todos_has_filtered_results? helper method
    • efb4935c - Remove unused todo_target_state_pill helper method
    • a71e576e - Remove unused todo_target_title helper method
    • 6b897008 - Update feature spec
    • fa055986 - Switch old feature specs to test new implementation
    • 3731798f - Switch filtering feature specs to test new implementation

    Compare with previous version

  • Thomas Hutterer marked this merge request as ready

    marked this merge request as ready

  • Thomas Hutterer changed title from Draft: Enable new implementation of To-Do dashboard to Remove todos_vue_application feature flag and purge all code

    changed title from Draft: Enable new implementation of To-Do dashboard to Remove todos_vue_application feature flag and purge all code

  • Thomas Hutterer changed the description

    changed the description

    • Resolved by Shola Quadri

      @squadri Hi :waves: You are the lucky winner :slot_machine: Your prize: a 2k LOC MR :smile:

      But no worries, this is 99% deleting old code, which is always fun.

      I tried to keep the commits in a way that makes it somewhat easy to review this, but please let me know if you need more info :nerd:

      Please review backend and test if possible. Thanks!

  • Thomas Hutterer requested review from @squadri

    requested review from @squadri

  • Thomas Hutterer removed review request for @squadri

    removed review request for @squadri

  • Thomas Hutterer mentioned in merge request !178013 (merged)

    mentioned in merge request !178013 (merged)

  • Thomas Hutterer added 507 commits

    added 507 commits

    • 3731798f...a6ca72f6 - 493 commits from branch master
    • a6ca72f6...8ae70d40 - 4 earlier commits
    • ed98002c - Remove unused todo_target_name helper method
    • 3fdc7724 - Remove unused todo_target_aria_label helper method
    • b78f4395 - Remove unused todo_author_display? helper method
    • b703a693 - Remove unused todo_action_name helper method
    • 5b0f95b6 - Remove unused todo_self_addressing helper method
    • f3800bf3 - Remove unused todo_due_date helper method
    • 233aafc5 - Remove unused todos_has_filtered_results? helper method
    • 93b2a189 - Remove unused todo_target_state_pill helper method
    • d48c5bf4 - Remove unused todo_target_title helper method
    • c2898fcc - Remove unused CSS page bundle

    Compare with previous version

  • Thomas Hutterer changed target branch from master to 509080-migrate-remaining-feature-specs

    changed target branch from master to 509080-migrate-remaining-feature-specs

  • Thomas Hutterer changed the description

    changed the description

  • Thomas Hutterer
  • Thomas Hutterer
  • @pgascouvaillancourt May I volunteer you to do the frontend review on this rather big MR :sweat_smile:

    No rush, the MR has a dependency on !178013 (merged) being merged first.

    Thaaanks!

  • requested review from @pgascouvaillancourt

  • Shola Quadri requested review from @squadri

    requested review from @squadri

  • Shola Quadri
  • Shola Quadri approved this merge request

    approved this merge request

  • Before you set this MR to auto-merge

    This merge request will progress on pipeline tiers until it reaches the last tier: pipelinetier-3. We will trigger a new pipeline for each transition to a higher tier.

    Before you set this MR to auto-merge, please check the following:

    • You are the last maintainer of this merge request
    • The latest pipeline for this merge request is pipelinetier-3 (You can find which tier it is in the pipeline name)
    • This pipeline is recent enough (created in the last 8 hours)

    If all the criteria above apply, please set auto-merge for this merge request.

    See pipeline tiers and merging a merge request for more details.

  • Shola Quadri requested review from @eurie

    requested review from @eurie

  • Ethan Urie requested review from @GitLabDuo

    requested review from @GitLabDuo

  • I have reviewed the merge request and left a mix of questions and recommendations. The review covers a wide range of topics including feature flag usage, method removals, route changes, and test coverage. I estimate there is a significant amount of work required to address the concerns raised, particularly regarding potential functionality breakages and ensuring proper test coverage.

    · Leave feedback
    Edited by GitLab Duo
  • GitLab Duo
  • GitLab Duo
  • GitLab Duo
  • GitLab Duo
  • GitLab Duo
  • GitLab Duo
  • GitLab Duo
  • GitLab Duo
  • GitLab Duo
  • GitLab Duo
  • GitLab Duo
  • GitLab Duo
  • GitLab Duo
  • GitLab Duo
  • GitLab Duo
  • GitLab Duo
  • GitLab Duo
  • GitLab Duo
  • GitLab Duo
  • GitLab Duo
  • GitLab Duo
  • GitLab Duo
  • GitLab Duo
  • GitLab Duo
  • Bundle size analysis [beta]

    This compares changes in bundle size for entry points between the commits fd4187b6 and 84b415ca

    :sparkles: Special assets

    Entrypoint / Name Size before Size after Diff Diff in percent
    average 4.43 MB 4.43 MB - -0.0 %
    mainChunk 3.28 MB 3.28 MB - 0.0 %

    :tada: Significant Reduction: 1

    Expand
    Entrypoint / Name Size before Size after Diff Diff in percent
    pages.dashboard.todos.index 755.57 KB 643.35 KB -112.22 KB -14.9 %

    Note: We do not have exact data for fd4187b6. So we have used data from: a3d72b08.
    The intended commit has no webpack pipeline, so we chose the last commit with one before it.

    Please look at the full report for more details


    Read more about how this report works.

    Generated by :no_entry_sign: Danger

    Edited by ****
  • Ethan Urie approved this merge request

    approved this merge request

  • Thomas Hutterer mentioned in issue #513787

    mentioned in issue #513787

  • requested review from @hmuralidhar

  • Lukas Eipert
  • Thomas Hutterer mentioned in issue #513937

    mentioned in issue #513937

  • Paul Gascou-Vaillancourt approved this merge request

    approved this merge request

  • Harsha Muralidhar approved this merge request

    approved this merge request

  • Harsha Muralidhar removed review request for @hmuralidhar

    removed review request for @hmuralidhar

  • Thomas Hutterer requested review from @leipert

    requested review from @leipert

  • Lukas Eipert
  • Lukas Eipert
  • Lukas Eipert
  • Lukas Eipert
  • Lukas Eipert
  • Lukas Eipert
  • added 1 commit

    • 84b415ca - Rename todos_vue page bundle to replace old todos bundle

    Compare with previous version

  • Thomas Hutterer reset approvals from @pgascouvaillancourt and @eurie by pushing to the branch

    reset approvals from @pgascouvaillancourt and @eurie by pushing to the branch

  • Lukas Eipert approved this merge request

    approved this merge request

  • Lukas Eipert resolved all threads

    resolved all threads

  • Thanks for the file move. Apart from that, nothing blocking. Kicked off a new pipeline, setting MWPS!

  • Lukas Eipert enabled automatic add to merge train when checks pass

    enabled automatic add to merge train when checks pass

  • Lukas Eipert added this merge request to the merge train at position 2

    added this merge request to the merge train at position 2

  • merged

  • Lukas Eipert mentioned in commit 0706d4af

    mentioned in commit 0706d4af

  • added workflowstaging label and removed workflowcanary label

  • Thomas Hutterer mentioned in merge request !178544 (merged)

    mentioned in merge request !178544 (merged)

  • mentioned in issue #284765 (closed)

  • Please register or sign in to reply
    Loading