Hi,
Within the P5EEx::Blue area, I am trying to develop my prototype
code under a directory structure which represents the best
practices of people who release stuff on CPAN.
I would appreciate feedback on this structure because
1. I want P5EE to be a model for others to pattern their own
work after.
2. It is very painful to move files and directories in CVS,
particularly after more than one person is involved in
development.
DIRECTORIES
Currently, my MANIFEST looks like this.
Makefile.PL
README
TODO
CHANGES
MANIFEST
P5EEx/Blue/P5EE.pm
P5EEx/Blue/Exceptions.pm
P5EEx/Blue/Reference.pm
P5EEx/Blue/Config.pm
P5EEx/Blue/Config.pod
P5EEx/Blue/Config/File.pm
P5EEx/Blue/Config/File.pod
P5EEx/Blue/Context.pm
P5EEx/Blue/Context/CGI.pm
P5EEx/Blue/Service.pm
P5EEx/Blue/Serializer.pm
P5EEx/Blue/Serializer/XMLSimple.pm
P5EEx/Blue/Serializer/Ini.pm
P5EEx/Blue/Serializer/Properties.pm
P5EEx/Blue/Serializer/Storable.pm
P5EEx/Blue/Session.pm
P5EEx/Blue/Security.pm
P5EEx/Blue/Repository.pm
P5EEx/Blue/Template.pm
P5EEx/Blue/Widget.pm
P5EEx/Blue/Messaging.pm
P5EEx/Blue/Procedure.pm
P5EEx/Blue/LogChannel.pm
P5EEx/Blue/datetime.pod
P5EEx/Blue/perlstyle.pod
P5EEx/Blue/podstyle.pod
P5EEx/Blue/exceptions.pod
sbin/perldocs
sbin/perlchanges
htdocs/api/perldocs.css
htdocs/style.css
htdocs/images/logo.gif
examples/Config.1
examples/Config.1.out
examples/config.ini
examples/config.pl
examples/config.xml
examples/Reference.1
examples/Reference.1.out
However, I think that I should be using "lib" and "pod" directories
so that part of the MANIFEST looks like this.
lib/P5EEx/Blue/P5EE.pm
lib/P5EEx/Blue/Exceptions.pm
lib/P5EEx/Blue/Reference.pm
lib/P5EEx/Blue/Config.pm
lib/P5EEx/Blue/Config.pod
lib/P5EEx/Blue/Config/File.pm
lib/P5EEx/Blue/Config/File.pod
lib/P5EEx/Blue/Context.pm
lib/P5EEx/Blue/Context/CGI.pm
lib/P5EEx/Blue/Service.pm
lib/P5EEx/Blue/Serializer.pm
lib/P5EEx/Blue/Serializer/XMLSimple.pm
lib/P5EEx/Blue/Serializer/Ini.pm
lib/P5EEx/Blue/Serializer/Properties.pm
lib/P5EEx/Blue/Serializer/Storable.pm
lib/P5EEx/Blue/Session.pm
lib/P5EEx/Blue/Security.pm
lib/P5EEx/Blue/Repository.pm
lib/P5EEx/Blue/Template.pm
lib/P5EEx/Blue/Widget.pm
lib/P5EEx/Blue/Messaging.pm
lib/P5EEx/Blue/Procedure.pm
lib/P5EEx/Blue/LogChannel.pm
pod/P5EEx/Blue/datetime.pod
pod/P5EEx/Blue/perlstyle.pod
pod/P5EEx/Blue/podstyle.pod
pod/P5EEx/Blue/exceptions.pod
What do people think (from your experiences)?
Also, when I make this move, I believe that there is no way in
CVS to move a directory. Rather, I need to do a bunch of
"cvs add" and "cvs delete". Is there a better way?
Stephen