Differences between revisions 9 and 14 (spanning 5 versions)
Revision 9 as of 2010-04-04 21:48:17
Size: 1124
Editor: 74
Comment:
Revision 14 as of 2010-04-30 13:26:29
Size: 3282
Editor: 229
Comment:
Deletions are marked like this. Additions are marked like this.
Line 5: Line 5:
Tasks: == GSOC Tasks ==
Line 7: Line 7:
 * XML-RPC client for distutils 2: http://bugs.python.org/issue8190 === 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;
   * Integrate a module similar to setuptools' package_index
   * PyPI XML-RPC client for distutils 2: http://bugs.python.org/issue8190
 
=== Distutils new commands ===

 * Add a post/pre commit hook for install and uninstall commands: http://bugs.python.org/issue8312
 see if it can be generic.
 * enhance the check command (sanity tests)
 * Move the upload_doc command from distribute
 * add an optional call to upload_doc into upload
 * Add a test command: http://bugs.python.org/issue8324

=== Distutils build tool ===

 * Study 4Suite' configure command
 * Write a configure command: http://bugs.python.org/issue8254
 * Make install and build optionnaly use the configure file
Line 9: Line 38:
 * Describe the resources files and the python files using a [resources] section in setup.cfg : http://bugs.python.org/issue8253
 * write a configure command: http://bugs.python.org/issue8254
 * write a tutorial: http://bugs.python.org/issue8255
 * promote and evangelize Distutils2 – This will consist of helping python project to switch/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.
 * add a post/pre commit hook for install and uninstall commands
 * make sure distutils2 works under Py3
 * move the code from distribute to distutils2 (upload_doc, use_2to3)
 * Implement pkgutil APIs described in PEP 376 : http://bugs.python.org/issue8250 -- work started by people in the community already.
 * Describe the resources files and the Python files using a [resources] or [packages] [py_modules]
 section in setup.cfg: http://bugs.python.org/issue8253
 * make setup.py optional (commands would be called trhough a -m call)

=== 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.


== 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.

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.

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

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