We review changes made in recent years to the development process of the LAMMPS simulation software package and the software itself. We discuss how those changes have impacted the effort and workflow required to develop and maintain a software package that has been in existence for more than 30 years and where a significant part of the code base is contributed by external developers. We also look into how those changes in the process have affected the code quality and ease of modifying and extending the software while at the same time its audience has changed from a cohort with a strong software development background to a group including many researchers with limited software development skills. We explore how this contributes to LAMMPS' continuing growth in popularity over that period. Specific topics include the source-code management and contribution workflow, automated testing and static analysis, security and supply-chain integrity, the refactoring and modernization of the code base (including the adoption of modern C++), the C, Python, and Fortran library interfaces, the build system and deployment, the documentation, the LAMMPS-GUI graphical interface, and our recent experiences using AI tools. We highlight changes of the most recent development cycles and close with an outlook on future steps.
翻译:暂无翻译