@@ -63,3 +63,73 @@ commit.
6363
6464 $ git commit --amend
6565
66+ Submitting A Pull Request
67+ -------------------------
68+
69+ We try to keep changes in pull requests concise. This means you should title
70+ your pull request so we know what it does and in the description tell us
71+ anything else we need to know. Try to make bite sized changes. Generally, pull
72+ requests should be under 1000 lines. If you find your pull request going over
73+ that, it is probably time to clean up what you have and make sure it passes all
74+ the CI and review so we can merge it, and you can start working on the rest of
75+ your changes in a new pull request. This helps others working on the project and
76+ users get access to your changes faster.
77+
78+ Once you have some work done on an issue or some feature you may be
79+ implementing, you should submit a draft pull request, or prefix the title with
80+ ``WIP: `` to indicate that it's a Work In Progress.
81+
82+ Try to get as far as you can by running the tests locally, or looking at the
83+ results of the CI. If you need help, ask in the Gitter channel if someone can
84+ review your work or help you figure out what might be going wrong or how you
85+ could solve an issue your stuck on.
86+
87+ Before you are get help, a review, or a final review, make sure to fetch the
88+ latest changes from the master branch and ``merge `` or ``rebase `` them into your
89+ branch.
90+
91+ When you are ready for final review, remove the ``WIP: `` prefix or draft status.
92+ At this point, all the CI tests should be passing. It should be okay for a
93+ maintainer to merge your pull request at this point. Pull requests with the
94+ ``WIP: `` prefix or draft status will not be merged.
95+
96+ How to Read the CI
97+ ------------------
98+
99+ We have continuous integration setup which can tell you a lot about if your pull
100+ request is ready for review or not.
101+
102+ .. image :: /images/how-to-read-ci-tests.png
103+ :alt: Screenshot of CI with some tests passing and some failing
104+
105+ Look through all of the tests and identify which ones are failing. Click on the
106+ test to view the logs, there is a drop down in the top right which will let you
107+ view the "raw logs", which might be helpful.
108+
109+ All of the CI tests must pass for your pull request to be merged! Keep working
110+ on it or ask for help if your not sure what's wrong.
111+
112+ If the lgtm bot comments and tells you that you're adding unused imports or
113+ doing something it doesn't like, either fix it, or tell us why what you're doing
114+ is okay.
115+
116+ +------------------------------------------------------------------------------+
117+ | CI Test | What's Probably Wrong |
118+ +--------------+---------------------------------------------------------------+
119+ | CHANGELOG | You need to say what your change is doing in CHANGELOG.md |
120+ +--------------+---------------------------------------------------------------+
121+ | WHITESPACE | https://softwareengineering.stackexchange.com/q/121555 |
122+ +--------------+---------------------------------------------------------------+
123+ | STYLE | You need to run the ``black `` formater |
124+ +--------------+---------------------------------------------------------------+
125+ | DOCS | You changed a docstring for something and didn't run |
126+ | | ./scripts/docs.sh before commiting and pushing |
127+ +--------------+---------------------------------------------------------------+
128+
129+ For the tests in the various plugins:
130+
131+ - You need to grab the latests changes from the master branch. Maybe you need to
132+ adapt to them, for example if something got renamed, check the changelog.
133+
134+ - You need to add any dependencies (``pip install ... ``) you need to the
135+ ``setup.py `` file of the plugin your working on.
0 commit comments