pysal

Table Of Contents

Previous topic

Developer Guide

Next topic

PySAL Testing Procedures

This Page

Guidelines

PySAL is adopting many of the conventions in the larger scientific computing in Python community and we ask that any one interested in joining the project please review the following documents:

Open Source Development

PySAL is an open source project and we invite any interested user who wants to contribute to the project to contact one of the team members. For users who are new to open source development you may want to consult the following documents for background information:

Source Code

PySAL uses Google Code and subversion for our code repository. Prospective developers can check out the current version using:

svn checkout http://pysal.googlecode.com/svn/trunk/ pysal-read-only

while developers with commit rights can use:

svn checkout https://pysal.googlecode.com/svn/trunk/ pysal --username username

substituting your Google username. When prompted, enter your generated googlecode.com password.

You can setup PySAL for local development following the installation instructions.

Development Mailing List

Development discussions take place on pysal-dev.

Release Schedule

PySAL development follows a six-month release schedule that is aligned with the academic calendar.

1.1 Cycle

Start End Phase Notes
8/1/10 10/17/10 Module Proposals Developers draft PEPs and prototype
10/17/10 10/30/10 Module Selection Developers discuss candidate PEPS, BDFL calls vote
11/1/10 11/1/10 Module Approval BDFL announces final approval
11/2/10 12/31/10 Development Implementation and testing of approved modules
1/1/11 1/1/11 Code Freeze APIs fixed, bug and testing changes only
1/2/11 1/8/11 RC 1 Release candidate 1
1/9/11 1/15/11 RC 2 Release candidate 2
1/16/11 1/22/11 RC 3 Release candidate 3
1/23/11 1/30/11 Release Prep Final builds, updating svn
1/31/11 1/31/11 Release Official release of 1.1

2.0 Cycle

Start End Phase Notes
2/1/11 4/17/11 Module Proposals Developers draft PEPs and prototype
4/17/11 4/30/11 Module Selection Developers discuss candidate PEPS, BDFL calls vote
5/1/11 5/1/11 Module Approval BDFL announces final approval
5/2/11 6/30/11 Development Implementation and testing of approved modules
7/1/11 7/1/11 Code Freeze APIs fixed, bug and testing changes only
7/2/11 7/8/11 RC 1 Release candidate 1
7/9/11 7/15/11 RC 2 Release candidate 2
7/16/11 7/22/11 RC 3 Release candidate 3
7/23/11 7/30/11 Release Prep Final builds, updating svn
7/31/11 7/31/11 Release Official release of 2.0

Governance

PySAL is organized around the Benevolent Dictator for Life (BDFL) model of project management. The BDFL is responsible for overall project management and direction. Developers have a critical role in shaping that direction. Specific roles and rights are as follows:

Title Role Rights
BDFL Project Director Commit, Voting, Veto, Developer Approval/Management
Developer Development Commit, Voting

Voting and PEPs

During the initial phase of a release cycle, new functionality for PySAL should be described in a PySAL Enhancment Proposal (PEP). These should follow the standard format used by the Python project. For PySAL, the PEP process is as follows

  1. Developer prepares a plain text PEP following the guidelines
  2. Developer sends PEP to the BDFL
  3. Developer posts PEP to the PEP index
  4. All developers consider the PEP and vote
  5. PEPs receiving a majority approval become priorities for the release cycle