.. _dev-pull-requests: Pull Requests =============== A stable version of WEC-Sim is maintained on the `WEC-Sim main branch `_, and `WEC-Sim releases `_ are tagged on GitHub. WEC-Sim development is performed on `WEC-Sim dev branch `_ using a `fork-based workflow `_. New WEC-Sim features are developed on forks of the WEC-Sim repository, and `pull-requests `_ are submitted to merge new features from a development fork into the main WEC-Sim repository. Pull-requests for new WEC-Sim features should be submitted to the WEC-Sim dev branch. The only exception to this workflow is for bug fixes; pull-request for bug fixes should be should submitted to the WEC-Sim main branch. When a new version of WEC-Sim is released, the dev branch is pulled into main where all changes are incorporated into the code. A `pull request (PR) `_ should focus on one update at a time. This ensures that PR revisions are easily tracked, and keeps the repository history remains clean. If working on multiple updates, please use different branches, and submit separate pull requests. Once a PR is merged please delete legacy branches to keep your fork clean. Prior to submitting a pull request, pull the latest commits from the WEC-Sim repository, resolve any merge conflicts, and commit revisions to your fork:: >> git pull origin >> git commit -m 'commit message' >> git push In order for a pull request to be merged into the WEC-Sim repository it must pass all software tests, refer to :ref:`dev-software-tests`. To submit a pull request, navigate to the `WEC-Sim's pull requests `_ and submit a new pull request.