##################################################
# Things to be resolved for mod_perl 2.0 release #
##################################################

* some autogenerated record accessors shouldn't be get/set but only get (e.g.
  Apache->server->is_virtual(1) is wrong). Need to add a new flag supported by
  MapUtil and map files, where we can say which accessors should be read-only
  owner: stas

* Apache::{Server,Process} classes:
  require mutex lock for writing (e.g. $s->(error_fname|error_log)
  Status: most likely some server/process datastructures aren't
  supposed to be modified at request time. So instead of mutex
  locking, we think we should simply have a flag that will be down
  during the startup and will allow methods modifying $s/$proc structs
  (the method will check that flag and if it's up it'll die). At the
  beginning of child_end it'll raise the flag and lower it at the end
  of child_exit.
  owner: stas

* static build - if we make it working on OpenBSD, AIX and FreeBSD,
  then it's not important to fix the DSO issues, otherwise make the
  DSO issues in (todo/bugs_build) a release issue.
  httpd-apreq-2 has recently implemented a static build support, we
  could probably try to re-use some of the code that was written to do
  that, though they use autoconf, which is not quite what we
  want. Anyway it's something to look at.
  owner: gozer

* META.yml. Generate META.yml (make dist does that), add Apache-Test
  as a private resource, so it won't be attempted to be indexed by
  PAUSE, add NO_META=>1 to WriteMakefile() which tells EU::MM not to
  overwrite META.yml.

* <Perl> sections:
  A few issues with <Perl> sections:
  http://marc.theaimsgroup.com/?l=apache-modperl-dev&m=106074969831522&w=2
  owner: gozer

* $Apache::Server::StrictPerlSections should be 1 by default (and docs
  updated)
  owner: gozer

* 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

* child processes never run END blocks. a good example is
  Apache::TestUtil, which doesn't cleanup files and dirs it has
  created, because the END block is not run.
  also: see the next item
  owner: stas

* ModPerl::Registry END {} block woes , described in details at the
  forwarded message from Jim Schueler
  http://marc.theaimsgroup.com/?l=apache-modperl&m=103720834717981&w=2
  the whole thread is here:
  http://marc.theaimsgroup.com/?t=103713532800003&r=1&w=2
  owner: stas

- PerlModule, PerlRequire, <Perl> in .htaccess is missing
  http://marc.theaimsgroup.com/?t=105370088700001&r=1&w=2
  Owner: 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.

* Apache::Reload
  - needs to handle properly redefined subs warnings

* Apache->unescape_url{_info}:
  not yet implemented.  should be moved to Apache::Util
