CORSIKA 8 meeting
Presentation by Augusto about hist general code review:
- we had detailed discussions on this in the whole group
- minor detail on namespace "detail" vs "details". The latter is more logical.
- distribution of external dependencies
- This is a major issue when we get towards releases. There are various differing opinions in our group how to best handle this. Here I list the summary of this, which should serve us as guiding principles:
- keep it simple for users (users are not experts)
- no patching. We will never patch external code we distribute with C8
- keep complexity and number of dependencies low
- need a good distribution model : code, vs. git-submodules, vs. tar files, vs. containers, vs. system level dependencies. But externals not part of our code base.
- testing infrastructure must also test externals that we don't have under control! We need to find a optimal point here.
- currently: header-only is a fact. But there are fortran files and other source code files (proposal, etc. etc.). We need a good way to have source, too, in cases where it cannot be avoided.
- directory structure reflects namespace structure
- file endings: cc -> hh or cpp -> hpp. The former. Probably. And inl vs. impl. Augusto choses former.
- After the main code restructuring is done, we also have to revisit on what level we want to reflect modularity/physics in the namespace-directory structure. We may need levels of branching "modular" substructure.
Code review and approval
- Get rid of "ready for code review" -> We use the "WIP:" . As soon as WIP is removed, review starts.
- Any Developer in gitlab is supposed to contribute to review. If this is not wished -> change developer status.
- Merging to master: only 1 or 2 people! Need to check permissions and options in gitlab. Current review: 2 Owners and 9 Maintainers. Much too high numbers!
Next Meeting
We decided to shift our meeting to Wednesday 15:00.