Differences between revisions 14 and 15
Revision 14 as of 2010-04-30 13:26:29
Size: 3282
Editor: 229
Comment:
Revision 15 as of 2010-04-30 16:03:43
Size: 2275
Editor: 145-116-237-54
Comment: removed coding task
Deletions are marked like this. Additions are marked like this.
Line 56: Line 56:


== Coding task -- Deadline: April 17th ==

Write a small Python application that will do the following:

 * provide a XML-RPC client that knows how to list all releases of a given project at PyPI (no need to implement the whole XML-RPC spec, but think about this as something we can reuse later during the GSOC, to implement the whole XML-RPC spec)

 * provide a script called "install_distribution.py" that will be used to download the distribution and install it, using "python setup.py install"

The CLI can be used like this:

{{{
  $ install_distribution.py Foo
  Found versions of Foo:
        1.1
        1.2
  Which version do you want to install (hit enter for None)?
}}}

 or:

{{{
  $ install_distribution.py Foo 1.1
}}}

The code should be unit-tested, and documented. The goal is not to make you write something you don't know how to write, but to see how you write/organize code to help me select the student. So, I am available online for any question help.

This page describes a possible Summer of Code project for Distutils2

Contact: Tarek Ziadé <tarek@ziade.org>

GSOC Tasks

PEP 376 support

  • Implement pkgutil APIs described in PEP 376 : http://bugs.python.org/issue8250 -- work started by people in the community already. (focus on speed with benches)

  • Implement a dependency-graph builder
  • Add basic PEP 376 support in Distribute [and Pip is possible]

Installer / Uninstaller, PyPI

  • Implement Distutils2 APIs described in PEP 376.
  • Add the uninstall command.
  • think about a basic installer / uninstaller script. (with deps) -- similar to pip/easy_install
  • in a pypi subpackage;

Distutils new commands

Distutils build tool

Py3 support

  • Move the use_2to3 command from distribute
  • Make sure distutils2 works under Py3 using 2to3

Tasks for all

  • Write a small tutorial in docs/ for each feature you add

Misc

  • complete tutorial : http://bugs.python.org/issue8255

  • Promote and evangelize Distutils2–This will consist of helping python project to switch to/adopt Distutils2. We will define a list of targets at the beginning and the student will be in charge of helping them switching to Distutils2 if they want.

SummerOfCode/Distutils2 (last edited 2010-08-03 23:41:51 by 5)

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