Skip to content

Split repository: core and petals

emanuel-schmid edited this page Jun 30, 2021 · 12 revisions

We will soon split the repository into two repositories: one that contains the core functionality and one where extensions of CLIMADA can be developed without interference with the essential parts. This would be "climada_petals". The idea is to have better control and higher standards on the core while there is the opportunity to explore and further develop its use and functionality range in a save but non-prohibitive environment.

Transition plan

  1. Create a clone of climada_python: climada_petals
  2. Rename the top source directory of climada_petals, climada, to climada_petals, all branches
  3. Split sources in develop branch of both repositories
    1. Remove all modules from climada_python that are going to be petals
    2. Remove all modules from climada_petals that belong to the core
    3. Split all modules that will remain in both repositories without overlaps, if possible.
  4. Merge changes of the two develop branches to main
  5. Remove feature branches from both repositories if they have nothing left to merge, i.e., branches that clearly belong to either core or petals.
  6. In both repositories, merge changes of the respective develop branch to all remaining branches.
  7. Clean up repositories, remove non-source files from both repositories where they are not required anymore. This is not critical in terms of coordination, there shouldn't be any side effects on the feature branches, a simple merge without conflicts can be expected.

For steps 1 to 5 there will by a single responsible developer (Emanuel), for step 6 the contribution of all developers is requested. We will call for a development freeze starting on July 19 until 1 to 5 are done, hopefully by July 25. Afterwards we'll ask all owners of feature branches to make step 6 and adapt their branches to the changes of this transition. Once step 6 is done for a branch, developers can continue with the development in their branch, possibly in both repositories. Step 7 will then be done subsequently, in preparation for the release of September 1st.

Clone this wiki locally