11.. _triaging :
22
3- Triaging an Issue
4- =================
3+ ===================
4+ Triaging an Issue
5+ ===================
56
67This section of the devguide documents the :ref: `issue tracker <tracker >` for
78users and developers.
@@ -11,7 +12,7 @@ directly without any assistance.
1112
1213
1314Checklist for Triaging
14- ----------------------
15+ ======================
1516
1617* Read the issue comment(s).
1718* Review and set classification fields
@@ -32,3 +33,73 @@ Checklist for Triaging
3233 - Keywords
3334* (Optional) Leave a brief comment about the proposed next action needed. If
3435 there is a long message list, a summary can be very helpful.
36+
37+
38+ .. _helptriage :
39+
40+ Helping Triage Issues
41+ =====================
42+
43+ Once you know your way around how Python's source files are
44+ structured and you are comfortable working with patches, a great way to
45+ contribute is to help triage issues. Do realize, though, that experience
46+ working on Python is needed in order to effectively help triage.
47+
48+ Around the clock, new issues are being opened on the :ref: `issue tracker
49+ <tracker>` and existing issues are being updated. Every issue needs to be
50+ triaged to make sure various things are in proper order. Even without special
51+ privileges you can help with this process.
52+
53+ Classifying Reports
54+ -------------------
55+
56+ For bugs, an issue needs to:
57+
58+ * clearly explain the bug so it can be reproduced
59+ * include all relevant platform details
60+ * state what version(s) of Python are affected by the bug.
61+
62+ These are things you can help with once you have experience developing for
63+ Python:
64+
65+ * try reproducing the bug: For instance, if a bug is not clearly explained
66+ enough for you to reproduce it then there is a good chance a core developer
67+ won't be able to either.
68+ * see if the issue happens on a different Python version: It is always helpful
69+ to know if a bug not only affects the in-development version of Python, but
70+ whether it also affects other versions in maintenance mode.
71+ * write a unit test: If the bug lacks a unit test that should end up in
72+ Python's test suite, having that written can be very helpful.
73+
74+ This is all helpful as it allows triagers (i.e.,
75+ :ref: `people with the Developer role on the issue tracker <triagers >`) to
76+ properly classify an issue so it can be handled by the right core developers in
77+ a timely fashion.
78+
79+ Reviewing Patches
80+ -----------------
81+
82+ If an issue has a pull request attached that has not been reviewed, you can help
83+ by making sure the patch:
84+
85+ * follows the style guides
86+ * applies cleanly to an up-to-date clone
87+ * is a good solution to the problem it is trying to solve
88+ * includes proper tests
89+ * includes proper documentation changes
90+ * submitter is listed in ``Misc/ACKS ``, either already or the patch adds them
91+
92+ Doing all of this allows core developers and :ref: `triagers ` to more
93+ quickly look for subtle issues that only people with extensive experience
94+ working on Python's code base will notice.
95+
96+ Finding an Issue You Can Help With
97+ ----------------------------------
98+
99+ If you want to help triage issues, you might also want to search for issues
100+ in modules which you have a working knowledge. Search for the name of a module
101+ in the issue tracker or use the `advanced search `_ query builder to search for
102+ specific kinds of issues (e.g. the "Windows" label if you are a Windows
103+ developer, "Extension Modules" if you are familiar with C, etc.).
104+
105+ .. _advanced search : https://github.com/search/advanced
0 commit comments