The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
###############################################
# working features but requiring optimization #
###############################################

* all autogenerated xs methods that return char * are now using
  sv_setpv() which always copies the string. See if we somehow can
  avoid the copy. If we do so, we need to be careful with method which
  take a pool argument, such as: 
  Apache::ServerUtil
   - mpxs_Apache2__ServerUtil_server_root_relative
  Apache::URI:
  - ap_construct_server
  - ap_construct_url
  APR::URI
  - mpxs_apr_uri_parse
  Apache::Util
  - ap_ht_time
  - escape_path
  for which we need to attach the pool object used to create those
  strings as a magic.

* optimize modperl_callback_current_callback_(set|get) to use
  numerical equivalents of the phase names, instead of doing expensive
  memory allocs and string comparison operations. And only give the
  real string in the perl get API.

* consider using the temp pool for things that are needed only during
  the configuration and can be dropped before the actual serving is
  started. that pool gets destroyed right after the post-config phase
  is over.

* currently when ithreads-enabled perl is used anon-sub handlers are
  always deparsed and non-cached. there are several cases when this
  can be optimized. See modperl_handler_new_anon in modperl_handler.c

* modperl_package_unload() and modperl_xs_dl_*() share some duplicated
  logic. The managment of DynaLoaded modules could be somewhat cleaner.