The following is a proposed review process that will be discussed in upcoming TSC meetings and should not be considered final until ratified by TSC


Larger Features and/or New Projects

There are times when new features  and ideas will need a TSC review. Examples are

In all these cases it is advised that a proposal is created on the wiki and that the TSC is asked to review it. The following should be considered for such a proposal:

After the proposal has been approved by TSC GIT issues can be created and work can start

Feature and bugs Management

For smaller features and bug fixes it is advised to instead create a GIT issue directly


ODIMRA Code Review Process

  1. Developer to pick up an open issue
  2. Developer has 2 options here to clone a repository


    OptionProsCons
    Developer creating feature branches on ODIMRA repository directlyBetter collaboration on the features or bugs that are getting implemented
    1. In order to allow user to create feature branches, we need to add the developer as collaborator to this repository. Hence we may end up adding all the developers who wish to contribute here as collaborators.
    2. Over the period of time, there would be lot of features branches in the repository. With strict guidelines we can discipline developers to delete the feature branches once the PR is merged.

    Developer can fork the repository and implement the feature or fix the bug in the forked repository and raise a PR against the appropriate branch when ready.

    1. No need to add the developer as collaborator to the repository
    2. there will be lesser branches in the repository

    Lesser collaboration on the features or bugs that are getting implemented


  3. Implement the PATCH and raises a PR against the ODIMRA repository
  4. When developer raises the PR, the GitHub actions checks are triggered automatically.
  5. If the checks passes, then PR will go under review process and at least 2 maintainers needed to approve it before the PR gets merged.
  6. If the checks fail, the PR will be rejected.