stas 01/10/22 01:33:48 Modified: ModPerl-Registry TODO Log: - document the rest of the nice to have things Revision Changes Path 1.4 +39 -7 modperl-2.0/ModPerl-Registry/TODO Index: TODO =================================================================== RCS file: /home/cvs/modperl-2.0/ModPerl-Registry/TODO,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- TODO 2001/10/22 05:18:23 1.3 +++ TODO 2001/10/22 08:33:48 1.4 @@ -7,8 +7,6 @@ - consider not to use $$ in debug tracing. Not all platforms give out a different pid for different threads. - - ### missing features ### - need to port $Apache::__T, to test against when user supplies -T flag. @@ -40,20 +38,54 @@ normally. select() helps, but STDERR should be unbuffered in first place. +- in namespace_from_filename() should test whether a file is a symlink + and if so use readlink() to get the real filename. + ### optimizations ### - $o->[CLASS] of the subclass is known at compile time, so should create the subs using $o->[CLASS] on the fly for each subclass which wants them -### nice to have ### +- currently the default is to strip __DATA__|__END__ and everything + after that, which incurs a little overhead because of the s/// on + the contents of the file. This "feature" wasn't in 1.x, so may + consider to make it optional. -- in namespace_from_filename() should test whether a file is a symlink - and if so use readlink() to get the real filename. - -### other things ### +### nice to have ### - Bjarni R. Einarsson <[EMAIL PROTECTED]> has suggested this Registry hack http://marc.theaimsgroup.com/?l=apache-modperl-dev&m=98961929702745&w=2 Message-ID: <[EMAIL PROTECTED]> +- the closure issue: + there was a suggestion from raptor to use goto() to leave the code + unwrapped in the sub handler, which will solve the closure problem, + but the problem is that once you leave a subroutine with goto() you + cannot return, because you aren't in the sub anymore. + + barrie has suggested a different approach, which requires adding + special tags to the script which help to parse the code, and shuffle + things around without putting subs inside the 'sub handler', but + this requires a lot of code understanding from a user, and if its + gained it's probably easier to fix the script so closure effect + won't happen. However barrie's suggestion can be easily added, by + overriding convert_script_to_compiled_handler(). + +- global variables persistance: could have the cooker option to flush + globals in the autogenerated package at the end of each + request. (not packages use()'d from this package) + +- could also try to privide an optional workaround for the problem + with libs collisions as explained here: + http://perl.apache.org/guide/porting.html#Name_collisions_with_Modules_and + +- It's a known kludge with mod_perl scripts coming from mod_cgi which + use -M for file mtime comparisons, but are not aware of the fact + that $^T is not getting reset on each request. So may be the cooker + should have an option to reset $^T on each request. + +- develop a cooker() that cooks/modifies a registry package based on + PerlSetVar variables. So for example a user can modify a behavior of + an existing package (stat/donotstat...) and giving it a new name at + the same time. Kinda flag-based inheritance.