Skip to content

Remove project iteration

euko requested to merge 299864-decompose-timebox-concern into master

What does this MR do and why?

This MR does NOT contain any user-facing/feature change. The MR only eliminates dead code.

Project-level iterations (an iteration that belongs to a project) have been implemented but the feature was never made public. For now, iterations only belong to groups/iterations cadences and we should clean up the code related to project-level iterations. Issue #299864 (closed).

  1. We should ignore project_id in the Iteration model so we can drop the column project_id in the next release.

  2. Remove the dead model code pertaining to project-level iterations.

  3. Various rspecs, unfortunately, have used project-level iterations and we need to replace them with group-level iterations.

    e.g., create(:iteration, project: project) => create(:iteration, group: group) or create(:iteration, iterations_cadence: cadence)

  4. The concern Timebox needs to be refactored/decomposed. The concern was originally created to contain the logic shared between timebox-like objects that can either belong to a project or a group. Because iterations do not belong to projects, using the concern in the Iteration model has often created frictions.

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Edited by euko

Merge request reports

Loading