We enthusiastically welcome contributions to the BioSimulators test suite!
Before getting started, please contact the lead developers at info@biosimulators.org to coordinate your planned contributions with other ongoing efforts. Please also use GitHub issues to announce your plans to the community so that other developers can provide input into your plans and coordinate their own work. As the development community grows, we will institute additional infrastructure as needed such as a leadership committee and regular online meetings.
This repository follows standard Python conventions:
README.md
: Overview of this repositorybiosimulators_test_suite/
: Source code for this packageexamples
: Example modeling projects that the source code uses to test biosimulation software toolsexamples-outputs
: Example outputs (reports and plots) of executing the example modeling projectstests/
: Unit tests for the code for this packagesetup.py
: pip installation script for this packagesetup.cfg
: Configuration for the pip installation scriptrequirements.txt
: Dependencies of this packagerequirements.optional.txt
: Optional dependencies of this packageMANIFEST.in
: List of files to include when the BioSimulators test suite is packaged for distribution through PyPILICENSE
: License for the sofware of this packageLICENSE-DATA
: License for the example modeling projects in this packageCONTRIBUTING.md
: Guide to contributing to this package (this document)CODE_OF_CONDUCT.md
: Code of conduct for developers of this package
The code in this repository follows standard Python style conventions:
- Class names:
UpperCamelCase
- Function names:
lower_snake_case
- Variable names:
lower_snake_case
The code in the BioSimulators test suite is documented using reStructuredText and the napoleon Sphinx plugin. The documentation can be compiled with Sphinx by running the following commands:
python -m pip install -r docs-src/requirements.txt
sphinx-apidoc . setup.py --output-dir docs-src/source --force --module-first --no-toc
sphinx-build docs-src docs
Please use GitHub pull requests to submit changes. Each request should include a brief description of the new and/or modified features.
To release changes, contact the lead developers to request their release.
Below are instructions for releasing a new version:
- Commit the changes to this repository.
- Increment the
__version__
variable inbiosimulators_test_suite/_version.py
. - Commit this change to
biosimulators_test_suite/_version.py
. - Merge the changes in to the
deploy
branch:git checkout deploy git merge dev
- Add a tag for the new version by running
git tag { version }
.version
should be equal to the value of the__version__
variable inbiosimulators_test_suite/_version.py
. - Push these commits and the new tag to GitHub by running
git push && git push --tags
. - This push will trigger a GitHub action which will execute the following tasks:
- Create a GitHub release for the version.
- Push the release to PyPI.
- Compile the documentation and push the compiled documentation to the repository so that the new documentation is viewable at github.io.
Please use GitHub issues to report any issues to the development community.
Please use GitHub issues to post questions or contact the lead developers at info@biosimulators.org.