Les fichiers de tâches standards, fournis par défaut avec PEAR, sont documentés ici.
Si votre paquet choisit d'utiliser une tâche fournie par une troisième partie, tout ce dont vous avez besoin de faire est de spécifier la tâche en tant que partie du xml pour la balise <file> qui se présente comme ceci :
<file role="php"> <tasks:foo/> </file>
Cependant, si un utilisateur n'a pas installé le paquet qui fournit la tâche personnalisée "foo", alors, le message d'erreur lors de l'installation indiquera simplement "unknown task 'foo'", qui n'est pas très utile.
La balise <usestask> indique à l'installeur de demander à l'utilisateur ceci : "this package uses the custom task 'foo', install package pear.example.com/Foo to use"
<usestask> <task>foo</task> <package>Foo</package> <channel>pear.example.com</channel> </usestask>
Notez que les paquets URI statiques (paquets supportant les canaux) sont également supportés :
<usestask> <task>foo</task> <uri>http://pear.example.com/Foo-1.2.0</uri> </usesrole>