Apache-ASP

 view release on metacpan or  search on metacpan

site/changes.html  view on Meta::CPAN

</pre></font>
	
	<p>
	<a name=%24VERSION%20%3D%20239066cad></a>
	<font face=verdana><font class=title size=+0 color=#555555><b>$VERSION = 2.62; $DATE="08/16/2011"</b></font>
<font face="courier new" size=3><pre>
 - Fixed &#39;application/x-www-form-urlencoded&#39; for AJAX POSTs post
   Firefox 3.x

 + First sourceforge.net hosted version

 + Incremented version number to actually match SVN branch tag
</pre></font>
	
	<p>
	<a name=%24VERSION%20%3D%202c3b7fac7></a>
	<font face=verdana><font class=title size=+0 color=#555555><b>$VERSION = 2.61; $DATE="05/24/2008"</b></font>
<font face="courier new" size=3><pre>
 - updated for more recent mod_perl 2 environment to trigger correct loading of modules

 + loads modules in a backwards compatible way for older versions of mod_perl 1.99_07 to 1.99_09

 + license changes from GPL to Perl Artistic License
</pre></font>
	
	<p>
	<a name=%24VERSION%20%3D%2021803a342></a>
	<font face=verdana><font class=title size=+0 color=#555555><b>$VERSION = 2.59; $DATE="05/23/2005"</b></font>
<font face="courier new" size=3><pre>
 + added &quot;use bytes&quot; to Response object to calculate Content-Length
   correctly for UTF8 data, which should require therefore at least
   perl version 5.6 installed

 + updated to work with latest mod_perl 2.0 module naming convention,
   thanks to Randy Kobes for patch

 + examples now exclude usage of Apache::Filter &amp; Apache::SSI under mod_perl 2.0
</pre></font>
	
	<p>
	<a name=%24VERSION%20%3D%2022aa8a3f0></a>
	<font face=verdana><font class=title size=+0 color=#555555><b>$VERSION = 2.57; $DATE="01/29/2004"</b></font>
<font face="courier new" size=3><pre>
 - $Server-&gt;Transfer will update $0 correctly

 - return 0 for mod_perl handler to work with latest mod_perl 2 release
   when we were returning 200 ( HTTP_OK ) before

 - fixed bug in $Server-&gt;URL when called like $Server-&gt;URL($url)
   without parameters.  Its not clear which perl versions this bug 
   affected.
</pre></font>
	
	<p>
	<a name=%24VERSION%20%3D%202d9674a90></a>
	<font face=verdana><font class=title size=+0 color=#555555><b>$VERSION = 2.55; $DATE="08/09/2003"</b></font>
<font face="courier new" size=3><pre>
 - Bug fixes for running on standalone CGI mode on Win32 submitted
   by Francesco Pasqualini

 + Added Apache::ASP::Request::BINMODE for binmode() being
   called on STDIN after STDIN is tied to $Request object

 + New RequestBinaryRead configuration created, may be turned off
   to prevent $Request object from reading POST data

 ++ mod_perl 2 optmizations, there was a large code impact on this,
   as much code was restructured to reduce the differences between
   mod_perl 1 and mod_perl 2, most importantly, Apache::compat is
   no longer used

 + preloaded CGI for file uploads in the mod_perl environment

 - When XSLT config is set, $Response-&gt;Redirect() should work now
   Thanks to Marcus Zoller for pointing problem out

 + Added CookieDomain setting, documented, and added test to cover 
   it in t/cookies.t . Setting suggested by Uwe Riehm, who nicely 
   submitted some code for this.
</pre></font>
	
	<p>
	<a name=%24VERSION%20%3D%2022c8082fb></a>
	<font face=verdana><font class=title size=+0 color=#555555><b>$VERSION = 2.53; $DATE="04/10/2003"</b></font>
<font face="courier new" size=3><pre>
 + XMLSubs tags with &quot;-&quot; in them will have &quot;-&quot; replaced with &quot;_&quot; or underscore, so a
   tag like &lt;my:render-table /&gt; will be translated to &amp;my::render_table() ... tags with
   - in them are common in extended XML syntaxes, but perl subs cannot have - in them only.

 + Clean setting now works on output when $Response-&gt;{ContentType} begins with text/html;
   like &quot;text/html; charset=iso-8859-2&quot; ... before Clean would only work on output marked
   with ContentType text/html.  Thanks to Szymon Juraszczyk for recommending fix.

 --Fixed a bug which would cause Session_OnEnd to be called twice on sessions in a certain case,
   particularly when an old expired session gets reused by and web browser... this bug was
   a result of a incomplete session cleanup method in this case.  Thanks to Oleg Kobyakovskiy 
   for reporting this bug.  Added test in t/session_events.t to cover this problem going forward.

 - Compile errors from Apache::ASP-&gt;Loader() were not being reported.  They will
   be reported again now.  Thanks to Thanos Chatziathanassiou for discovering and
   documenting this bug.  Added test in t/load.t to cover this problem going forward.

 + use of chr(hex($1)) to decode URI encoded parameters instead of pack(&quot;c&quot;,hex($1))
   faster &amp; more correct, thanks to Nikolay Melekhin for pointing out this need.

 (d) Added old perlmonth.com articles to ./site/articles in distribution
   and linked to them from the docs RESOURCES section

 (d) Updated documention for the $Application-&gt;SessionCount API

 + Scripts with named subroutines, which is warned against in the style guide,
   will not be cached to help prevent my closure problems that often
   hurt new developers working in mod_perl environments.  The downside
   is that these script will have a performance penalty having to be
   recompiled each invocation, but this will kill many closure caching 
   bugs that are hard to detect.

 - $Request-&gt;FileUpload(&#39;upload_file&#39;, &#39;BrowserFile&#39;) would return
   a glob before that would be the file name in scalar form.  However
   this would be interpreted as a reference incorrectly.  The fix
   is to make sure this is always a scalar by stringifying 

site/changes.html  view on Meta::CPAN

 +$Server-&gt;Mail(\%mail, %smtp_args) API extension

 +MailErrorsTo &amp; MailAlertTo now can take comma
  separated email addresses for multiple recipients.

 -tracking of subroutines defined in scripts and includes so 
  StatINC won&#39;t undefine them when reloading the GlobalPackage, 
  and so an warning will be logged when another script redefines 
  the same subroutine name, which has been the bane of at least
  a few developers.

 -Loader() will now recompile dynamic includes that 
  have changed, even if main including script has not.
  This is useful if you are using Loader() in a 
  PerlRestartHandler, for reloading scripts when
  gracefully restarting apache.

 -Apache::ASP used to always set the status to 200 by 
  default explicitly with $r-&gt;status().  This would be 
  a problem if a script was being used to as a 404 
  ErrorDocument, because it would always return a 200 error
  code, which is just wrong.  $Response-&gt;{Status} is now 
  undefined by default and will only be used if set by 
  the developer.  

  Note that by default a script will still return a 200 status, 
  but $Response-&gt;{Status} may be used to override this behavior.

 +$Server-&gt;Config($setting) API extension that allows developer
  to access config settings like Global, StateDir, etc., and is a 
  wrapper around Apache-&gt;dir_config($setting)

 +Loader() will log the number of scripts
  recompiled and the number of scripts checked, instead
  of just the number of scripts recompiled, which is
  misleading as it reports 0 for child httpds after
  a parent fork that used Loader() upon startup.  	

 -Apache::ASP-&gt;Loader() would have a bad error if it didn&#39;t load 
  any scripts when given a directory, prints &quot;loaded 0 scripts&quot; now
</pre></font>
	
	<p>
	<a name=%24VERSION%20%3D%2004a1da04f></a>
	<font face=verdana><font class=title size=+0 color=#555555><b>$VERSION = 0.18; $DATE="02/03/2000";</b></font>
<font face="courier new" size=3><pre>
 +Documented SessionQuery* &amp; $Server-&gt;URL() and 
  cleaned up formatting some, as well as redoing
  some of the sections ordering for better readability.
  Document the cookieless session functionality more
  in a new SESSIONS section.  Also documented new 
  FileUpload configs and $Request-&gt;FileUpload collection.
  Documented StatScripts.

 +StatScripts setting which if set to 0 will not reload
  includes, global.asa, or scripts when changed.

 +FileUpload file handles cleanup at garbage collection
  time so developer does not have to worry about lazy coding
  and undeffing filehandles used in code.  Also set 
  uploaded filehandles to binmode automatically on Win32 
  platforms, saving the developer yet more typing.

 +FileUploadTemp setting, default 0, if set will leave
  a temp file on disk during the request, which may be 
  helpful for processing by other programs, but is also
  a security risk in that others could potentially read 
  this file while the script is running. 

  The path to the temp file will be available at
  $Request-&gt;{FileUpload}{$form_field}{TempFile}.
  The regular use of file uploads remains the same
  with the &lt;$filehandle&gt; to the upload at 
  $Request-&gt;{Form}{$form_field}.

 +FileUploadMax setting, default 0, currently an 
  alias for $CGI::POST_MAX, which determines the 
  max size for a file upload in bytes.  

 +SessionQueryParse only auto parses session-ids
  into links when a session-id COOKIE is NOT found.
  This feature is only enabled then when a user has
  disabled cookies, so the runtime penalty of this
  feature won&#39;t drag down the whole site, since most
  users will have cookies turned on.   

 -StatINC &amp; StatINCMatch will not undef Fnctl.pm flock 
  functions constants like O_RDWR, because the code references
  are not well trackable.  This would result in sporadic 500 server
  errors when a changed module was reloaded that imported O_* flock 
  functions from Fnctl.

 +SessionQueryParse &amp; SessionQueryParseMatch
  settings that enable auto parsing session ids into 
  URLs for cookieless sessions.  Will pick up URLs in 
  &lt;a href&gt;, &lt;area href&gt;, &lt;form action&gt;, &lt;frame src&gt;,
  &lt;iframe src&gt;, &lt;img src&gt;, &lt;input src&gt;, &lt;link href&gt;
  $Response-&gt;Redirect($URL) and the first URL in 
  script tags like &lt;script&gt;*.location.href=$URL&lt;/script&gt;

  These settings require that buffering be enabled, as
  Apache::ASP will parse through the buffer to parse the URLs.

  With SessionQueryParse on, it will just parse non-absolute
  URLs, but with SessionQueryParseMatch set to some server
  url regexp, like ^<tt>http://localhost</tt> , will also parse
  in the session id for URLs that match that.

  When testing, the performance hit from this parsing
  a script dropped from 12.5 hits/sec on my WinNT box
  to 11.7 hits per second for 1K of buffered output.
  The difference is .007 of my PII300&#39;s processing power
  per second.

  For 10K of output then, my guess is that this speed
  of script, would be slowed to 6.8 hits per second.
  This kind of performance hit would also slow a
  script running at 40 hits per second on a UNIX box
  to 31 hits/sec for 1K, and to 11 hits/sec for 10K parsed.

  Your mileage may vary and you will have to test the difference



( run in 0.464 second using v1.01-cache-2.11-cpan-d8267643d1d )