AVNI Development#

Warning

Reminder: all contributors are expected to follow our code of conduct. All contributions are governed by the terms of our license.

AVNI is a community project that lives by the participation of its members — i.e. including you! It is our goal to build an inclusive and participatory community so we are happy that you are interested in participating!

To report bugs, request new features, or ask about confusing documentation, it’s usually best to open a new issue on AVNI Forum first; you’ll probably get help fastest that way, and it helps keep our GitHub issue tracker focused on things that we know will require changes to our software (as opposed to problems that can be fixed in the user’s code). We may ultimately ask you to open an issue on GitHub too, but starting on the forum helps us keep things organized. For fastest results, be sure to include information about your operating system and AVNI version, and (if applicable) include a reproducible code sample that is as short as possible.

The project accepts contributions in the form of bug reports, fixes and feature additions. For general troubleshooting or usage questions, please consider posting your questions on our discuss. The best way to start contributing is by raising issues on our GitHub page to discuss ideas for changes or enhancements, or to tell us about behavior that you think might be a bug.

The goal of this page is to provide instructions and best practices to guide developers and contributing scientists.

Note

Please route your general questions to the AVNI Forum. The helps our GitHub issue tracker focused on things that we know will require changes to our software (as opposed to problems that can be fixed in the user’s code).

Further reading#

  • Contributing guide: Contains details on the preferred contribution workflow and the recommended system configuration for a smooth contribution/development experience.

  • Using Git for AVNI: The standard way of contributing to AVNI development is described here. This approach is recommended for most users, especially those not familiar with Git. These instructions are adequate for contributing to AVNI, but we recommend that all new users to Git attempt the tutorial below for more complete understanding of the workflow.

  • Software Carpentry Git Tutorial: For those who are not familiar with Git, we recommend attempting this tutorial, or even better, attending an in-person tutorial session if available in your area.

  • Best Practices: Accepted conventions for AVNI development are described here. To create a product that is maintainable over the long term, it is important that contributing scientists follow these conventions.

  • Versioning Conventions: The conventions behind AVNI’s version numbering system are explained here.