Taking over an unmaintained package

Edited By

Arnaud Limbourg

$Date: 2008-10-09 15:16:18 $

If you want to become the new lead maintainer of a package that is marked as unmaintained on the PEAR website, the following section will explain to you the necessary steps for this to happen.

  1. The first thing is to inform the PEAR Quality Assurance mailing list about your intention. If you have not been involved in PEAR prior to that, it is a good idea to write a few words about you and your motivations.

  2. The QA team will then state whether you can take over the package or not, eventually explaining why. You can then apply for an account for the PEAR website unless you already have one. The PEAR Group will have to grant this account, and afterwards the QA team will assign you as the new lead maintainer for the package.

  3. If the sources of the package are kept in the PHP SVN repository, you will also need an account for this. You can sign up for it on the PHP website. Please mention in the purpose field of the request form that the PEAR QA team has told you to get an account, so that your request can be processed faster. SVN accounts are managed by the PHP Group, so PEAR unfortunately has only limited influence on this process.

    If you already have a SVN account for svn.php.net, it is only necessary for you to get additional "karma" for the module where the package resides. You can request this karma by sending an email to the PEAR Group. (Please also mention in this mail that you have already talked to the QA team.)

  4. If everything has worked out well, you should by now be the lead maintainer of the previously unmaintained package. If not, don't hesitate to ask the people on the QA mailing list for help.

Changing a proposal (Previous) PEAR Developer Guide (Next)
Last updated: Sun, 19 Dec 2010 — Download Documentation
Do you think that something on this page is wrong? Please file a bug report or add a note.
View this page in:

User Notes:

Note by: doconnor
PEAR has started the process of migrating packages over to github; as they fall unmaintained.

There's a migration tool for this @ https://github.com/pear/pear-svn-git

By utilising github; new maintainers can quickly contribute patches via a local fork.

Note by: doconnor
Coding standards and unit tests.

PEAR has some pretty picky standards for acceptance, and some pretty picky people.

If you are contributing a patch or looking to move forward with package maintainence, make sure you've read our coding standard. There are even tools to help you check for conformance - like PHP_CodeSniffer http://pear.php.net/php_codesniffer

Even more loved by us PEAR folk is unit test coverage.

We use either simple phpt tests, or PHPUnit tests (http://phpunit.de).

We have a CI server, which runs hourly.
http://test.pear.php.net/unit-test-results/

Making sure your contributions don't break tests, and even adding further test coverage is a sure fire way to get your foot in the door with PEAR.


To run, from an svn checkout of your package:
# If the package uses simple tests
pear run-tests -r tests/

# Or if it's PHPUnit enabled
php tests/AllTests.php

Gotten stuck, because there's lots of existing broken tests? Or the tests don't run?
File a bug :)
Note by: doconnor
What else do you need to know about taking over a pear package?

We're a friendly bunch, but a busy bunch - so if we are giving you the silent treatment or being a bit picky, don't despair.

We are on a variety of mediums, from mailing lists to IRC - if you aren't sure of what to do next or how to progress things, why not chat to us.

All of the details are on the home page - http://pear.php.net/
Note by: doconnor
Another great step that will get you brownie points - take a look at open bug reports for the package.

If you can fix or improve them, why not do a patch?

Grabbing the source is easy.
1) svn checkout http://svn.php.net/repository/pear/packages/Foo/trunk Foo
2) Make your changes
3) svn diff > mypatch.txt
4) File a bug report/feature request and upload your patch