Contributions are welcome. Contributors can file issues and pull requests on GitHub at https://github.com/btrettel/blastersim. Pull requests must meet the following requirements:
The scope of the change must be small enough for me to easily review.
All commit messages must be descriptive. Use Conventional Commits prefixes.
Do not squash your commits before sending a pull request. That can make git bisect work poorly.
Contributed code must pass all existing tests. Contributed code with new functionality must add and pass new tests for the new functionality. Existing tests can be run with make check on Linux and macOS and jom check on Windows as discussed in § 3. The tests themselves are in the test directory and are Fortran code. Contributors should examine existing tests to understand the testing system.
New features must be documented. See the docs directory for this documentation’s source code in LaTeX.
BlasterSim uses trunk based development. In other words, there are no release branches and instead releases are noted with tags. Temporary feature branches are used as necessary.
Contributing validation data would be particularly welcome. To contribute validation data, recreate the experimental conditions in BlasterSim and file an issue with the BlasterSim inputs, file a pull request, or contact Ben Trettel directly.
A brief note on generative AI: To date, all BlasterSim code is written by a human. AI was used in BlasterSim’s development only as a research and learning tool, not to write code. I am willing to accept LLM-written code that meets the pull request requirements listed above, and one additional requirement: The prompts used to generate the code will need to be provided in the pull request.