You are viewing a plain text version of this content. The canonical link for it is here.
Posted to asp@perl.apache.org by Josh Chamas <jo...@chamas.com> on 2002/11/07 19:07:21 UTC

[ANNOUNCE] Apache::ASP v2.47 released

Hey,

Apache::ASP v2.47 is released to CPAN.  It is a major upgrade
with significant speed improvements of 15-20% for script execution.

As this is a major release, please be sure to read the CHANGES
and test your sites before upgrading.  The CHANGES are listed below.

For more info on Apache::ASP, please see http://www.apache-asp.org

Regards,

Josh

________________________________________________________________
Josh Chamas, Founder                   phone:925-552-0128
Chamas Enterprises Inc.                http://www.chamas.com
NodeWorks Link Checking                http://www.nodeworks.com

$MODULE=Apache::ASP; $VERSION = 2.47; $DATE="11/6/2002"

Please see README for changes for past versions.

  + = improvement;    - = bug fix;    (d) = documentation

  ++ Runtime speed enhancements for 15-20% improvement including:
    + INTERNAL API ReadFile() now returns scalar ref as memory optimization
    + cache InodeNames config setting in ASP object now for common lookups
    + removed CompileChecksum() INTERNAL API, since it was an unnecesary
      method decomposition along a common code path
    + removed IsChanged() INTERNAL API since compiling of scripts
      is now handled by CompileInclude() which does this functionality already
    + removed unnecessary decomp of IncludesChanged() INTERNAL API, which was along
      critical code path
    + do not call INTERNAL SearchDirs() API when compiling base script
      since we have already validated its path earlier
    + Use stat(_) type shortcut for stat() & -X calls where possible
    + Moved @INC initilization up to handler() & consolidated with $INCDir lib
    + removed useless Apache::ASP::Collection::DESTROY
    + removed useless Apache::ASP::Server::DESTROY
    + removed useless Apache::ASP::GlobalASA::DESTROY
    + removed useless Apache::ASP::Response::DESTROY

  - Default path for $Response->{Cookies} was from CookiePath
    config, but this was incorrect as CookiePath config is only
    for $Session cookie, so now path for $Response->{Cookies}
    defaults to /

  - Fixed bug where global.asa events would get undefined with
    StatINC and GlobalPackage set when the GlobalPackage library
    changed & get reloaded.

  (d) Documented long time config NoCache.

  -- Fixed use with Apache::Filter, capable as both source
     and destination filter.  Added ./site/eg/filter.filter example
     to demonstrate these abilities.

  + Use $r->err_headers_out->add Apache::Table API for cookies
    now instead of $r->cgi_header_out.  Added t/cookies.t test to
    cover new code path as well as general $Response->Cookies API.
    Also make cookies headers sorted by cookie and dictionary key
    while building headers for repeatable behavior, this latter was
    to facilitate testing.

  - fixed $Server->Mail error_log output when failing to connect
    to SMTP server.

  + added tests to cover UniquePackages & NoCache configs since this
    config logic was updated

  + made deprecated warnings for use of certain $Response->Member
    calls more loadly write to error_log, so I can remove the AUTOLOAD
    for Response one day

  - Probably fixed behavior in CgiHeaders, at least under perl 5.8.0, and
    added t/cgi_headers.t to cover this config.

  + removed $Apache::ASP::CompressGzip setting ability, used to possibly
    set CompressGzip in the module before, not documented anyway

  + removed $Apache::ASP::Filter setting ability to set Filter globally,
    not documented anyway

  + removed old work around for setting ServerStarting to 0
    at runtime, which was bad for Apache::DBI on win32 a long
    time ago:

     $Apache::ServerStarting and $Apache::ServerStarting = 0;

    If this code is still needed in Apache::ASP->handler() let
    me know.

  + check to make sure data in internal database is a HASH ref
    before using it for session garbage collection.  This is to
    help prevent against internal database corruption in a
    network share that does not support flock() file locking.

  + For new XMLSubs ASP type <%= %> argument interpolation
    activated with XMLSubsPerlArgs 0, data references can now
    be passed in addition to SCALAR/string references, so one
    can pass an object reference like so:

      <my:tag value="<%= $Object %>" />

    This will only work as long as the variable interpolation <%= %>
    are flushed against the containing " " or ' ', or else the object
    reference will be stringified when it is concatenated with
    the rest of the data.

    Testing for this feature was added to ./t/xmlsubs_aspargs.t

    This feature is still experimental, and its interface may change.
    However it is slated for the 3.0 release as default method,
    so feedback is appreciated.

  + For new XMLSubs ASP type <%= %> argument interpolation
    activated with XMLSubsPerlArgs 0, <% %> will no longer work,
    just <%= %>, as in

      <my:tag value="some value <%= $value %> more data" />

    This feature is still experimental, and its interface may change.
    However it is slated for the 3.0 release as default method,
    so feedback is appreciated.



---------------------------------------------------------------------
To unsubscribe, e-mail: asp-unsubscribe@perl.apache.org
For additional commands, e-mail: asp-help@perl.apache.org