SVN Restructuring
Wednesday, April 23rd, 2008After getting an idea, I decided to update the structure of the SVN trunk. Up until now, packages were listed directly into the trunk directory. Now, packages are found within a Panda directory which is in the trunk.
This leaves the option available to put other projects at the SVN root which are closely related to the Panda project. For example, I have been considering releasing a product with every major release of Panda. So 1.0 could get a blog, 2.0 could be a shopping cart, etc. Each project would get their own directory at the root of the trunk which would also act as that project’s namespace.
This also makes including Panda source less error prone. For example, if I were to say:
require 'View/HTML.php';
What library did that just come from? Was View a PEAR package or was it a Panda package? The problem is that the above require statement is too ambiguous. Granted, the chance that multiple View libraries in one project would be rare, but it’s never a good idea to assume that.
Panda libraries should be store in a Panda directory and your require statements should also reflect that:
require 'Panda/View/HTML.php';
There. Much better.