Monorepos for Research Software Projects
Description
Full-stack research software projects typically include several components and have many dependencies. New projects benefit from co-development of these components within a well-structured monolith. While this is preferred, over time
this can become a burden to deploy in different contexts and environments. What we would like is to independently deploy components to reduce size and complexity. Maintaining separate packages however allows for developmental drift and other problems. So called monorepos allow for the best of both approaches, but not without its own difficulties. There is almost no formal treatment in the literature of this particular dilemma however. The technology industry has started using monorepos to solve similar challenges, but perhaps in the academic context we should be cautious to not simply replicate industry practices. This short paper merely propositions the research software engineering (RSE) community into a discussion of the positives and negatives in structuring projects as monorepos of discrete packages.
Files
paper_51_US-RSEcon2023.pdf
Files
(7.1 MB)
Name | Size | Download all |
---|---|---|
md5:33a9af6640c15d156ecedbfa0e108f89
|
74.7 kB | Preview Download |
md5:caf1fda1699cdbce577a84731c977b22
|
7.0 MB | Preview Download |