Changes between Version 266 and Version 267 of SprintIdeas
- Timestamp:
- Nov 11, 2010, 6:56:24 PM (14 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
SprintIdeas
v266 v267 27 27 28 28 If you're in doubt about what to work on, consider these pieces of advice: 29 30 * '''Fix existing bugs, rather than adding enhancements.''' Bugs are cases where we know something is not working correctly or as documented. Enhancements require a bit more of a judgment call from the maintainers about whether to include the feature, and one big goal of the sprint is to try and ''reduce'' the number of open tickets by getting patches committed and tickets closed. 29 31 30 * ''' Fix existing bugs, rather than adding enhancements.''' Bugs are cases where we know something is not working correctly or as documented. Enhancements require a bit more of a judgment call from the maintainers about whether to include the feature, and one big goal of the sprint is to try and ''reduce'' the number of open tickets by getting patches committed and tickets closed.32 * '''Choose noncontroversial tickets.''' If a ticket is very old, but hasn't been closed, there's usually a reason -- some issues are intrinsically controversial. For the sake of your own sanity, avoid these tickets during the sprint. 31 33 32 * '''Choose noncontroversial tickets.''' Some issues are intrinsically controversial. For the sake of your own sanity, avoid these tickets during the sprint. 33 34 * '''Fix old bugs.''' There are any number of small, annoying bugs that have hung around for a long time. Some of them have patches, but the patches need to be updated. Start with the bug low numbers, and work up until you find something that interests you. 34 * '''Review existing patches'''. There are lots of tickets in Django's tracker that have a patch, but either [http://code.djangoproject.com/query?status=new&status=assigned&status=reopened&needs_tests=1&order=priority&stage=Accepted need tests] or [http://code.djangoproject.com/query?status=new&status=assigned&status=reopened&needs_better_patch=1&order=priority&stage=Accepted need some improvement to address technical issues]. These are quite long lists of tickets; if you want narrow these lists, try starting with tickets targeting the current development version. Another place to start is the list of tickets at the end of this page consists of tickets that have been worked on in past sprints, but haven't been committed; this means that there is probably a starting patch. 35 35 36 36 * '''Zero in a particular component you're familiar/comfortable with.''' It's overwhelming to browse the [http://code.djangoproject.com/query full list of open tickets], so do yourself a favor and narrow it down by component. (Do this by selecting "Add filter" on the right side of the page.) Example components are "Documentation" or "RSS framework." The nice thing about this approach is that, once you've fixed one or two tickets, you'll get on a roll and will have learned enough about that particular component that subsequent tickets for the same component will be easier to fix. … … 57 57 If your patch is more than a few lines long, don't forget to include your name in the AUTHORS file as part of the patch. We order that file alphabetically by surname. 58 58 59 You might want to search for tickets that have the ''patch needs improvement'' flag set and try to improve the patch (there will be something in the comments suggesting what improvement is needed). Or look for tickets with ''needs tests'' or ''needs documentation'' and try to fill in those gaps.60 61 59 Don't worry if it takes you longer than other people to write fixes initially. Some areas are genuinely harder than others. Some problems are disguised versions of something much bigger, so it might take a couple of attempts to get something that satisfies the maintainers. Not to worry; any serious patch is better than no patch because it gives us something to start from and incrementally improve. 62 60 … … 65 63 If you're not confident fixing bugs in the core code, there are still other ways to contribute: 66 64 67 * Triage the [http://code.djangoproject.com/query?status=new&status=assigned&status=reopened&order=priority&stage=Unreviewed unreviewed tickets] -- try to confirm them, or handle them according to the [http://www.djangoproject.com/documentation/contributing/#ticket-triage triage guidelines]. 68 * Confirm existing bugs or work out how to repeat them. 69 * Look for tickets in the unreviewed state and see if you can repeat the problem. 65 * Triage the [http://code.djangoproject.com/query?status=new&status=assigned&status=reopened&order=priority&stage=Unreviewed unreviewed tickets] -- try to reproduce the issues they describe, or handle them according to the [http://www.djangoproject.com/documentation/contributing/#ticket-triage triage guidelines]. 70 66 * If the explanation of the bug isn't clear, work out what the reporter is talking about and add that in a comment on the original ticket. 71 * Look for tickets needing documentation or needing improved documentation and try to complete them. 67 * Find bugs that have been confirmed and explained, but haven't got a programatic test case. Every bug that is fixed in Django should be accompanied by a regression test to make sure the problem doesn't arise again. Once a test case exists, it's much easier for someone who understands the internals to fix the problem. 68 * Look for tickets [http://code.djangoproject.com/query?status=new&status=assigned&status=reopened&needs_docs=1&order=priority&stage=Accepted needing documentation] or needing improved documentation and try to complete them. 69 * Verify that old bugs still exist. Sometimes bugs get inadvertantly fixed; either they're re-reported but not identified as duplicates, or a fix for one bug corrects another bug. These old tickets will continue to linger in the bug tracker unless someone confirms that they are no longer a problem. 72 70 73 71 == Suggestions == … … 78 76 * If you complete a task, edit this page and remove the task from this list and add it to the [http://code.djangoproject.com/wiki/SprintIdeas#Results proper results section below] 79 77 * If you make progress on a task and then leave it, edit this page leaving a note of what you've done. 80 81 78 * Any of the '''sprint specific''' goals and tickets: read the page dedicated to [http://code.djangoproject.com/wiki/SprintIdeas#Nextupcomingsprint this specific sprint]. 82 79 * !FormPreview [http://code.djangoproject.com/query?status=new&status=assigned&status=reopened&component=django.contrib.formtools&order=priority and related tickets]