Differences between revisions 6 and 7
Revision 6 as of 2010-12-03 19:17:30
Size: 2982
Editor: NO-RDNS-RECORD
Comment:
Revision 7 as of 2010-12-03 19:20:52
Size: 2630
Editor: 185
Comment: Revert spam
Deletions are marked like this. Additions are marked like this.
Line 55: Line 55:
[http://www.thedietsolutionreviewscam.com/'''The Diet Solution Reviews''']
[http://www.dietsolutionreviewscam.com/'''The Diet Solution Program''']
[http://www.fatloss4idiotsreviewscam.com/'''Fat Loss 4 Idiots''']
[http://www.truthaboutabsreviewscam.com/'''Truth About Abs''']
[http://www.fatburningfurnacereviewscam.com/'''Fat Burning Furnace''']

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 is complete enough to be merged back.

While the fork lasts, bugs need to be fixed both in distutils (Python py3k, 3.1 and 2.7) and distutils2 (one branch only, but compatible with 2.4 up to 2.7). You can consider that distutils2 is the active version and distutils a bugfix branch.

This page documents the workflow to follow for fixing bugs.

Find a bug

Reports are filed in Python’s tracker, under two keywords: distutils and distutils2. They will soon be all listed under distutils2 to make things easier.

Set up distutils2

1) Install Mercurial.

2) Get distutils2: hg clone http://bitbucket.org/tarek/distutils2

3) Optional: install older Pythons for testing.

4) Install unittest2 (pip install unittest2, hg clone http://hg.python.org/unittest2 + unittest2.pth file, wget + python setup.py install, whatever way you prefer)

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.

Usual guidelines apply:

Share the fix

Use one of those two possible ways:

a) Produce a diff with “hg diff -r <your last revision> -r <main repo last revision> > fix-something.diff”. Attach it to the bug report.

b) If you have one clean changeset, you can post a link to a public repository on the bug report.

Iterate

Reply to feedback about the changes, update your patch, ping the maintainers (bug tracker user names tarek and eric.araujo) 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.

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

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