Changes to the Hummingbot and Hummingbot Gateway codebases are made through pull requests, which undergo a thorough engineering and QA review before they are merged into the codebase, coordinated by the Foundation.
Only the following pull requests will be reviewed:
- Approved proposals: Approved PRPs and pull requests to claim bounties approved by HIPs
- Bug fixes: Fixes to outstanding bugs
Pull Request Status Board¶
Hummingbot Foundation maintains a Github board in which you can see the status of all active pull requests, including ongoing PRPs, bug fixes, in review, etc.
While approval via HBOT voting signals that the community wants the fix or improvement to be added into the codebase, pull requests go through a series of automated and manual checks to ensure that the new code: * Does not conflict or cause problems with other parts of the codebase * Does not introduce security risks * Does not contain merge conflicts * Contains manual tests, documentation, and meets code quality guidelines * Passes automated testing
The Foundation Quality Assurance (QA) and Engineering team members coordinate this process, assisted by members of the community, such as Technical Review DAO.
After a pull request has been approved, it will go through the following development cycle:
The Hummingbot code repository has three main branches related to the development cycle of each monthly release:
All pull requests aiming to be included on the
master branch must be targeted to the development branch. They are then promoted from
staging before passing to
master. Pull requests targeting the
development branch will only be merged into
staging only when there is an approved PRP related to it.
staging is used by the Foundation QA team to conduct a thorough test all code changes before adding them to the
master is the main release branch and contains the latest stable version of the Hummingbot software client and is released once per month.
main branch serves the same purpose.