Differences between revisions 12 and 13
Revision 12 as of 2011-06-09 12:43:59
Size: 2177
Editor: 193
Comment: Update workflow to account for packaging merge
Revision 13 as of 2011-07-04 15:21:33
Size: 34
Editor: 193
Comment: Redirect instead of partly duplicating information
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
## page was renamed from Distutils/Fixing Bugs
= How to fix bugs in Distutils =

To implement new features without breaking third-party tools that rely on undocumented internals, distutils has been forked under the name distutils2 and developed outside of Python’s standard library, until it was complete enough to be merged back. In Python 3.3, distutils2 has been reintegrated, under the name packaging.

Bugs that are found in distutils or packaging have to be checked in the other codebase. Distutils should be considered a maintenance branch of packaging; unless a bug is found only in distutils, it is recommended to fix bugs in packaging and let the maintainers backport if needed.


== Find a bug ==

Reports are filed in Python’s tracker, under two keywords: [[http://bugs.python.org/issue?@columns=title,id,activity,status&@sort=activity&@group=priority&@filter=components,status&@pagesize=150&@startwith=0&status=1&components=3&@dispname=distutils|distutils]] and [[http://bugs.python.org/issue?@columns=title,id,activity,status&@sort=activity&@group=priority&@filter=components,status&@pagesize=50&@startwith=0&status=1&components=25&@dispname=distutils2|distutils2]].


== Set up a developer enviromnent ==

Packaging is being developed in the main CPython repository. The [[http://docs.python.org/devguide|CPython Developers Guide]] contains all relevant information to set up Mercurial, clone CPython and run tests.


== Fix the bug ==

Ideally, the first step is to write a test that fails, thus demonstrating the bug, and then change the code to make the test pass.


== Share the fix ==

You can produce a patch manually with hg diff or hg export, or use the [[http://docs.python.org/devguide/triaging#mercurial-repository|automated patch generation]] provided by the bug tracker.


== Iterate ==

Reply to feedback about the changes, update your patch, ping the maintainers (automatically subscribed to distutils and distutils2 bugs) as needed.


== Profit ==

Tarek or Éric will make sure the test suite passes with all supported Python versions, push to the main repository, and backport to distutils if needed.
#REDIRECT Distutils/Contributing

Distutils/FixingBugs (last edited 2011-07-04 15:21:33 by 193)

Unable to edit the page? See the FrontPage for instructions.