################################################## # Things to be resolved for mod_perl 2.0 release # ################################################## -- see also todo/api_status * current_callback lives in ModPerl::Util, but called as Apache::current_callback(), which doesn't sound right. It should probably be invoked as ModPerl::Util::current_callback * docs/install/install.pod:=head2 Configuring mod_perl should be rewritten to clearly explain how to build static and dynamic mod_perl (each separately). * APR::URI missing $uri->rpath (was in mp1) * check other todo/features_missing items (some of them might be critical for 2.0 release, since missing methods might be a problem for migration) * pools that go out of scope: perl -MApache2 -MAPR::Pool -MAPR::PerlIO -le '; open my $fh, "<:APR", "/tmp/xxx", APR::Pool->new; print <$fh>' APR::PerlIO::read: (9) Bad file descriptor at -e li first of all, try to never allow passing temp pools, e.g in the above example, we can check that the pool object doesn't have the TEMP flag on. but that doesn't really solve the problem. So we aren't sure how to deal with that. * $bb->cleanup segfaults (originally in TestProtocol::echo_bbs2 http://marc.theaimsgroup.com/?l=apache-modperl-dev&m=108967266419527&w=2 owner: gozer * on windows $pool->clean, followed by $pool->destroy breaks other tests See test TestAPR::pool http://marc.theaimsgroup.com/?l=apache-modperl-dev&m=108547894817083&w=2 * consider changing the allocation method in APR::Bucket::new from malloc/free to bucket_alloc, like all other buckets do * revamp directive handlers, expose modperl_module_add, fix PerlLoadModule, etc. owner: geoff * PerlSetVar/PerlAddVar still do not merge properly. geoff knows the issues and thinks he knows how to fix it, he just needs the time. owner: geoff * Fixing Apache->warn("foo") Report: http://mathforum.org/epigone/modperl-dev/noxtramcay/3D11A4E5.6010202@stason.org Thread: http://mathforum.org/epigone/modperl-dev/noxtramcay Status: pending Apache::Log compat issues, this and other methods might be dropped. * per-server cleanups core dump or are otherwise ineffective Apache->server->process->pconf->cleanup_register(sub { ... }); Report: geoff - cgi emulation: %ENV management: - %ENV is currently only saved/restored for the perl-script handler, i.e. changes to %ENV outside of a perl-script handler are not cleared. of course, "clean" modules would use local() to modify %ENV, but there should be an option to save/restore globals outside of the perl-script handler STATUS: do the cleanup for all handlers, but provide a new config option so users can disable it if they know what they are doing. * Apache::SizeLimit o Need to port tools that restrict the memory size used by processes for prefork mpms and develop new ones for threaded mpms. Need to work out the details of the implementation of the garbage collection thread for the threaded mpms as originally suggested by doug. The issue with threads is that there is no way to know the thread's size, can we use B::Size and B::TerseSize? prefork: Apache::SizeLimit - Owner: perrin Apache::GTopLimit - Owner: stas threaded: Garbage Collector thread => Ideally the tools should work transparently with threaded and non-threaded mpms, but how? * Apache::Resource * It'd be nice to have PAUSE and the clients support packages with several versions, like mod_perl 1.0 and mod_perl 2.0, since once we release it any dependency on mod_perl will be resolved as mod_perl 2.0, when mod_perl 1.0 may be required instead. stas: talked to autrijus, he will start working on it, but not sure when. we need to ping him every so often. * Apache::Reload - needs to handle properly redefined subs warnings owner: gozer * Apache->unescape_url{_info}: not yet implemented. should be moved to Apache::Util