Package home | Report new bug | New search | Development Roadmap Status: Open | Feedback | All | Closed Since Version 1.10.5

Request #3802 introduce baseinstalldir="/" for special role directories
Submitted: 2005-03-13 16:45 UTC
From: techtonik Assigned: cellog
Status: Closed Package: PEAR
PHP Version: Irrelevant OS:
Roadmaps: (Not assigned)    

 [2005-03-13 16:45 UTC] techtonik
Description: ------------ When you look at directory tree of PEAR installation you'll see that tests directory structured like: PEAR/tests/<package_name>/tests/<actual files> The reason for this is what all packages have tests in CVS laid in separate directory and included in package.xml like: <dir name="tests" role="test"> <file>...</file> </dir> It will be nice have some baseinstalldir parameter for special roles to control placement of files in target directory. Reproduce code: --------------- <dir name="tests" baseinstalldir="/" role="test"> <file>setup.php</file> </dir> Expected result: ---------------- PEAR/tests/<package_name>/setup.php Actual result: -------------- PEAR/tests/<package_name>/tests/setup.php


 [2005-04-06 22:29 UTC] cellog
This can only be done with separate roles - changing this would completely break BC with existing packages. Even if we only do this for package.xml version 2.0, it would be problematic. Best is to create custom roles for custom projects, as this is really just a cosmetic request for libraries. However, once you start putting things into public_html, it becomes critical. In other words, it only becomes really important for applications. Perhaps we could provide a new package that contains a few useful install roles for applications? I'll think about that possibility and PEPr it if it seems the right way.
 [2007-12-02 13:39 UTC] jorrit (Jorrit Schippers)
The workaround I use is add an addInstallAs() for all test files: $p2->addInstallAs('tests/AllTests.php', 'AllTests.php'); A solution could be to allow things like: $p2->addInstallAs('tests/*', '*');
 [2007-12-02 17:58 UTC] cellog (Greg Beaver)
This bug has been fixed in CVS. If this was a documentation problem, the fix will appear on by the end of next Sunday (CET). If this was a problem with the website, the change should be live shortly. Otherwise, the fix will appear in the package's next release. Thank you for the report and for helping us make PEAR better. this: $p2->addInstallAs('tests/*', '*'); is an interesting idea, but ultimately unnecessary, and it adds magical wtf factor. I'm glad you commented on this one - it has been implemented fully in Pyrus, and should be closed :)