Age | Commit message (Collapse) | Author | Files | Lines |
|
took maintainership
ChangeLog:
Version: 1.024 Sat Sep 24 21:56:42 CDT 2005
- Fixed a bug that probably only I would ever see - when running the
"disttest" action, it was actually using the server configuration
from the top-level distribution directory, not the dist-dir
directory.
- For some reason all the files in the tarball of 1.023 looks like
they're read-only and non-executable, which causes lots of tests to
fail (e.g. those trying to execute CGI-style scripts). I'm
re-releasing what looks like correct permissions. [Spotted by Tom
Kirkpatrick]
Version: 1.023 Mon Jun 6 06:05:44 CDT 2005
- Fixed a testing bug under (certain versions of?) Mac OS X, in which
none of the pages in t/real.t would generate any output. [Peter
Farmer]
|
|
took maintainership
- weird ChangeLog by upstream
ChangeLog:
2.10 Sat Feb 3 11:21:00 PST 2007
- Changed VERSION to 2.10 to get properly indexed by CPAN
No other changes.
1.24 Thu Feb 1 09:48:50 PST 2007
- Applied fixes for http://rt.cpan.org/Ticket/Display.html?id=3673
- use warnings pragma
- use base instead of modifying @ISA
- Changed 'return undef' to 'return'
- Added the primitive mocks to test.pl
0.01 Mon Apr 3 10:50:32 2000
- original version; created by h2xs 1.19
|
|
took maintainership
- not all changes have been logges by upstream -
ChangeLog:
$VERSION = 2.59; $DATE="05/23/2005"
+ added "use bytes" 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 & Apache::SSI under mod_perl 2.0
$VERSION = 2.57; $DATE="01/29/2004"
- $Server->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->URL when called like $Server->URL($url)
without parameters. Its not clear which perl versions this bug
affected.
$VERSION = 2.55; $DATE="08/09/2003"
- 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->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.
$VERSION = 2.53; $DATE="04/10/2003"
+ XMLSubs tags with "-" in them will have "-" replaced with "_" or underscore, so a
tag like <my:render-table /> will be translated to &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->{ContentType} begins with text/html;
like "text/html; charset=iso-8859-2" ... 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->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("c",hex($1))
faster & 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->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->FileUpload('upload_file', 'BrowserFile') 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
this data internally. Thanks to Richard Curtis for pointing
out this bug.
$VERSION = 2.51; $DATE="02/10/2003"
+ added t/session_query_parse.t test to cover use of SessionQueryParse
and $Server->URL APIs
- Fixed duplicate "&" bug associated with using $Server->URL
and SessionQueryParse together
+ Patch to allow $Server->URL() to be called multiple times on the same URL
as in $Server->URL($Server->URL($url, \%params), \%more_params)
(d) Added new testimonials & sites & created a separate testimonials page.
- SessionQueryParse will now add to & to the query strings
embedded in the HTML, instead of & for proper HTML generation.
Thanks to Peter Galbavy for pointing out and Thanos Chatziathanassiou
for suggesting the fix.
- $Response->{ContentType} set to text/html for developer error reporting,
in case this was set to something else before the error occured.
Thanks to Philip Mak for reporting.
- Couple of minor bug fixes under PerlWarn use, thanks Peter Galbavy
for reporting.
+ Added automatic load of "use Apache2" for compat with mod_perl2
request objects when Apache::ASP is loaded via "PerlModule Apache::ASP"
Thanks to Richard Curtis for reporting bug & subsequent testing.
- When GlobalPackage config changes, but global.asa has not, global.asa
will be recompiled anyway to update the GlobalPackage correctly.
Changing GlobalPackage before would cause errors if global.asa was
already compiled.
++ For ANY PerlSetVar type config, OFF/Off/off will be assumed
to have value of 0 for that setting. Before, only a couple settings
had this semantics, but they all do now for consistency.
- Fix for InodeNames config on OpenBSD, or any OS that might have
a device # of 0 for the file being stat()'d, thanks to Peter Galbavy
for bug report.
++ Total XSLT speedups, 5-10% on large XSLT, 10-15% on small XSLT
+ bypass meta data check like expires for XSLT Cache() API use
because XSLT tranformations don't expire, saves hit to cache dbm
for meta data
+ use of direct Apache::ASP::State methods like FETCH/STORE
in Cache() layer so we don't have to go through slower tied interface.
This will speed up XSLT & and include output caching mostly.
+ minor optimizations for speed & memory usage
$VERSION = 2.49; $DATE="11/10/2002"
-- bug introduced in 2.47 cached script compilations for executing
scripts ( not includes ) of the same name in different directories
for the same Global/GlobalPackage config for an application.
Fix was to remove optimization that caused problem, and
created test case t/same_name.t to cover bug.
$VERSION = 2.47; $DATE="11/06/2002"
++ 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 loudly 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.
$VERSION = 2.45; $DATE="10/13/2002"
++New XMLSubsPerlArgs config, default 1, indicates how
XMLSubs arguments have always been parsed. If set to 0,
will enable new XMLSubs args that are more ASP like with
<%= %> for dynamic interpolation, such as:
<my:xmlsub arg="<%= $data %>" arg2="text <%= $data2 %>" />
Settings XMLSubsPerlArgs to 0 is experimental for now, but
will become the default by Apache::ASP version 3.0
++Optimization for static HTML/XML files that are served up
via Apache::ASP so that they are not compiled into perl subroutines
first. This makes especially native XSLT both faster & take
less memory to serve, before XSL & XML files being transformed
by XSLT would both be compiled as normal ASP script first, so
now this will happen if they really are ASP scripts with embedded
<% %> code blocks & XMLSubs being executed.
+Consolidate some config data for Apache::ASP->Loader to use
globals in @Apache::ASP::CompileChecksumKeys to know which
config data is important for precompiling ASP scripts.
+Further streamlined code compilation. Now both base
scripts and includes use the internal CompileInclude() API
to generate code.
-Fixed runtime HTML error output when Debug is set to -2/2,
so that script correctly again gets rendered in final perl form.
Added compile time error output to ./site/eg/syntax_error.htm
when a special link is clicked for a quick visual test.
-Cleaned up some bad coding practices in ./site/eg/global.asa
associated changes in other example files. Comment example
global.asa some for the first time reader
-DemoASP.pm examples module needed "use strict" fix, thanks
to Allan Vest for bug report
--$rv = $Response->Include({ File => ..., Cache => 1});
now works to get the first returned value fetched from
the cache. Before, because a list was always returned,
$rv would have been equal to the number of items returned,
even if the return value list has just one element.
(d) added site/robots.txt file with just a comment for
search engine indexing
-fixed ./site/eg/binary_write.htm to not use
$Response->{ContentLength} because it does not exist.
Fixed it to use $Response->AddHeader now instead
$VERSION = 2.41; $DATE="09/29/2002"
-Removed CVS Revision tag from Apache::ASP::Date, which
was causing bad revision numbers in CPAN after CVS integration
of Apache::ASP
+removed cgi/asp link to ../asp-perl from distribution. This
link was for the deprecated asp script which is now asp-perl
$VERSION = 2.39; $DATE="09/10/2002"
-Turn off $^W explicitly before reloading global.asa. Reloading
global.asa when $^W is set will trigger subroutine redefinition
warnings. Reloading global.asa should occur without any problems
under normal usage of the system, thus this work around.
This fix is important to UseStrict functionality because warnings
automatically become thrown as die() errors with UseStrict enabled,
so we have to disable normal soft warnings here.
-$Response->Include() runtime errors now throw a die() that
can be trapped. This was old functionality that has been restored.
Other compile time errors should still trigger a hard error
like script compilation, global.asa, or $Response->Include()
without an eval()
+Some better error handling with Debug 3 or -3 set, cleaned
up developer errors messages somewhat.
$VERSION = 2.37; $DATE="07/03/2002"
-Fixed the testing directory structures for t/long_names.t
so that tar software like Archive::Tar & Solaris tar that
have problems with long file names will still be able
to untar distribution successfully. Now t/long_names.t
generates its testing directory structures at runtime.
-Fixes for "make test" to work under perl 5.8.0 RC2,
courtesy of Manabu Higashida
+SessionQueryForce setting created for disabling use of cookies
for $Session session-id passing, rather requiring use of SessionQuery*
functionality for session-id passing via URL query string.
By default, even when SessionQuery* options are used, cookies will
be used if available with SessionQuery* functionality acting only
as a backup, so this makes it so that cookies will never be used.
+Escape ' with HTMLEncode() to '
-Trying to fix t/server_mail.t to work better for platforms
that it should skip testing on. Updated t/server.t test case.
+Remove exit() from Makefile.PL so CPAN.pm's automatic
follow prereq mechanism works correctly. Thanks to Slaven Rezic
for pointing this out.
+Added Apache::compat loading in mod_perl environment for better
mod_perl 2.0 support.
$VERSION = 2.35; $DATE="05/30/2002"
+Destroy better $Server & $Response objects so that my
closure references to these to not attempt to work in the future
against invalid internal data. There was enough data left in these
old objects to make debugging the my closure problem confusing, where
it looked like the ASP object state became invalid.
+Added system debug diagnostics to inspect StateManager group cleanup
(d) Documentation update about flock() work around for
Win95/Win98/WinMe systems, confirmed by Rex Arul
(d) Documentation/site build bug found by Mitsunobu Ozato,
where <% %> not being escaped correctly with $Server->HTMLEncode().
New japanese documentation project started by him
at http://sourceforge.jp/projects/apache-asp-jp/
-InitPackageGlobals() called after new Apache::ASP object created so
core system templates can be compiled even when there was a runtime
compilation error of user templates. Bug fix needed pointed out by
Eamon Daly
$VERSION = 2.33; $DATE="04/29/2002"
- fixed up t/server_mail.t test to skip if a sendmail server
is not available on localhost. We only want the test to run
if there is a server to test against.
+ removed cgi/asp script, just a symlink now to the ./asp-perl script
which in this way deprecates it. I had it hard linked, but the
distribution did not untar very well on win32 platform.
+ Reordered the modules in Bundle::Apache::ASP for a cleaner install.
- Fixed bug where XMLSubs where removing <?xml version ... ?> tag
when it was needed in XSLT mode.
+ $Server->Mail({ CC => '...', BCC => '...' }), now works to send
CC & BCC headers/recipients.
+ Removed $Apache::ASP::Register definition which defined the current
executing Apache::ASP object. Only one part of the application was
using it, and this has been fixed. This would have been an unsafe
use of globals for a threaded environment.
+ Decreased latency when doing Application_OnStart, used to sleep(1)
for CleanupMaster sync, but this is not necessary for Application_OnStart
scenario
+ Restructure code / core templates for MailErrorsTo funcationality.
Wrote test mail_error.t to cover this. $ENV{REMOTE_USER} will now
be displayed in the MailErrorsTo message when defined from 401 basic auth.
+ $Server->RegisterCleanup should be thread safe now, as it no longer relies
on access to @Apache::ASP::Cleanup for storing the CODE ref stack.
+ test t/inode_names.t for InodeNames and other file tests covering case
of long file names.
- Fixed long file name sub identifier bug. Added test t/long_names.t.
+ CacheDir may now be set independently of StateDir. It used to default
to StateDir if it was set.
++ Decomposition of modules like Apache::ASP::Session & Apache::ASP::Application
out of ASP.pm file. This should make the source more developer friendly.
This selective code compilation also speeds up CGI requests that do not
need to load unneeded modules like Apache::ASP::Session, by about 50%,
so where CGI mode ran at about 2.1 hits/sec before, now for
light requests that do not load $Session & $Application, requests
run at 3.4 hits/sec, this is on a dual PIII-450 linux 2.4.x
- Caching like for XSLTCache now works in CGI mode.
This was a bug that it did not before.
+ $Server->File() API added, acts as a wrapper around
Apache->request->filename Added test in t/server.t
++ *** EXPERIMENTAL / ALPHA FEATURE NOTE BEGIN ***
New $PERLLIB/Apache/ASP/Share/ directory created to
hold system & user contributed components, which will be found
on the $Server->MapInclude() path, which helps $Response->Include
search '.',Global,IncludesDir, and now Apache::ASP::Share for
includes to load at runtime.
The syntax for loading a shared include is to prefix the file
name with Share:: as in:
$Response->TrapInclude('Share::CORE/MailError.inc');
New test to cover this at t/share.t
This feature is experimental. The naming convention may change
and the feature may disappear altogether, so only use if you
are interesting in experimenting with this feature & will
provide feedback about how it works.
*** EXPERIMENTAL / ALPHA FEATURE NOTE END ***
+ asp-perl script now uses ./asp.conf instead of ./asp.config
for runtime configuration via %Config defined there. Update docs
for running in standalone CGI mode
+ Make use of MANFEST.SKIP to not publish the dev/* files anymore.
- Script_OnEnd guaranteed to run after $Response->End, but
it will not run if there was an error earlier in the request.
+ lots of new test cases covering behaviour of $Response->End
and $Response->Redirect under various conditions like XMLSubs
and SoftRedirect and global.asa Script_OnStart
+ asp-perl will be installed into the bin executables when
Apache::ASP is installed. asp-perl is the command line version
of Apache::ASP that can also be used to run script in CGI mode.
Test case covering asp-perl functionality.
+ asp CGI/command line script now called asp-perl. I picked this
name because Apache::ASP often has the name asp-perl in distributions
of the module.
+ Apache::ASP::CGI::Test class now subclass of Apache::ASP::CGI. To facilitate
this Apache::ASP::CGI::init() now called OO like Apache::ASP::CGI->init()
Fixed up places where the old style was called. New Test class allows
a dummy Apache request object to be built which caches header & body output
for later inspection instead of writing it to STDOUT.
- $Response->Redirect() under SoftRedirect 1 will not first Clear() buffer
- $Response->Redirect() in an XMLSubs will work now ... behavior
of $Response->Flush() being turned off in an XMLSubs was interfering with this.
+ srand() init tracking done better, thanks for patch from Ime Smits
+ Added file/directory being used for precompilation in
Apache::ASP->Loader($file, ...) to output like:
[Mon Feb 04 20:19:22 2002] [error] [asp] 4215 (re)compiled 22 scripts
of 22 loaded for $file
This is so that when precompiling multiple web sites
each with different directories, one can easier see the
compile output relevant to the Loader() command being run.
+ better decomp of Apache::ASP site build files at ./build/* files,
which is good should anyone look at it for ideas.
+ improved test suite to error when unintended output results from
t/*.t test scripts.
- () now supported in XMLSubsMatch config, added xmlsubsmatch.t test...
specifically a config like
PerlSetVar (aaa|bbb):\w+
should now work. Thanks for bug report from David Kulp.
+ Added an early srand() for better $ServerID creation
+ Work around for DSO problems where $r is not always correctly
defined in Apache::ASP::handler(). Thanks to Tom Lear for patch.
$VERSION = 2.31; $DATE="01/22/2002";
+ $Server->MapInclude() API extension created to wrap up Apache::ASP::SearchDirs
functionality so one may do an conditional check for an include existence befor
executing $Response->Include(). Added API test to server.t
+ $Server->Transfer() now allows arguments like $Response->Include(), and now acts just
as a wrapper for:
$Response->Include($file, @args);
$Response->End();
added test case at t/server_transfer.t
+ Removed dependency of StatINC functionality on Apache::Symbol. Apache::Symbol
is no longer required. Added test of t/stat_inc.t for correct StatINC initialization
for platforms where Devel::Symdump is present.
+ Better error message when $Request->Params has not been defined with RequestParams
config & it gets used in script. Added test case as t/request_params_none.t
+ Directories cannot now be included as scripts via $Response->Include(), added
test case to t/include.t
- No longer make $Response->Flush dependent on $Response->IsClientConnected() to
be true to write output to client. There have been spurious errors reported
about the new ( >= 2.25 ) IsClientConnected code, and this will limit the impact
of that functionality possibly not working still to those users explicitly using
that API.
+ $Response->AddHeader($header_name, $value) now will set $Response members
for these headers: Content-Type, Cache-Control, Expires. This is to avoid
both the application & Apache::ASP sending out duplicate headers. Added
test cases for this to t/response.t
+ split up Bundle::Apache::ASP into that, and Bundle::Apache::ASP::Extra
the former with just the required modules to run, and the latter
for extra functionality in Apache::ASP
+ new $Request->{Method} member to return $r->method of GET or POST that
client browser is requesting, added t/request.t sub test to cover this member.
$VERSION = 2.29; $DATE="11/19/2001";
+Added some extra help text to the ./cgi/asp --help message
to clarify how to pass arguments to a script from the command line.
+When using $Server->Mail() API, if Content-Type header is set,
and MIME-Version is not, then a "MIME-Version: 1.0" header will be sent
for the email. This is correct according to RFC 1521 which specifies
for the first time the Content-Type: header for email documents.
Thanks to Philip Mak for pointing out this correct behavior.
+Made dependent on MLDBM::Sync version .25 to pass the taint_check.t test
+Improved server_mail.t test to work with mail servers were relaying is denied
+Added <html><body> tags to MailErrorsTo email
--Fixed SessionCount / Session_OnEnd bug, where these things were not
working for $Sessions that never had anything written to them.
This bug was introduced in 2.23/2.25 release.
There was an optimization in 2.23/2.25 where a $Session that was never
used does not write its state lock file & dbm files to disk, only if
it gets written too like $Session->{MARK}++. Tracking of these NULL $Sessions
then is handled solely in the internal database. For $Session garbage
collection though which would fire Session_OnEnd events and update
SessionCount, the Apache::ASP::State->GroupMembers() function was just
looking for state files on disk ... now it looks in the internal database
too for SessionID records for garbage collection.
Added a test at ./t/session_events.t for these things.
+Some optimizations for $Session API use.
+Added support for XSLT via XML::LibXSLT, patch courtesy of Michael Buschauer
-Got rid of an warning when recompiling changing includes under perl 5.6.1...
undef($code) method did not work for this perl version, rather undef(&$code) does.
Stopped using using Apache::Symbol for this when available.
-Make Apache::ASP script run under perl taint checking -T for perl 5.6.1...
$code =~ tr///; does not work to untaint here, so much use the slower:
$code =~ /^(.*)$/s; $code = $1; method to untaint.
-Check for inline includes changing, included in a dynamic included
loaded at runtime via $Response->Include(). Added test case for
this at t/include_change.t. If an inline include of a dynamic include
changes, the dynamic include should get recompiled now.
-Make OK to use again with PerlTaintCheck On, with MLDBM::Sync 2.25.
Fixed in ASP.pm, t/global.asa, and created new t/taint_check.t test script
+Load more modules when Apache::ASP is loaded so parent will share more
with children httpd:
Apache::Symbol
Devel::Symdump
Config
lib
MLDBM::Sync::SDBM_File
+When FileUploadMax bytes is exceeded for a file upload, there will not
be an odd error anymore resulting from $CGI::POST_MAX being triggered,
instead the file upload input will simply be ignored via $CGI::DISABLE_UPLOADS.
This gives the developer the opportunity to tell the user the the file upload
was too big, as demonstrated by the ./site/eg/file_upload.asp example.
To not let the web client POST a lot of data to your scripts as a form
of a denial of service attack use the apache config LimitRequestBody for the
max limits. You can think of PerlSetVar FileUploadMax as a soft limit, and
apache's LimitRequestBody as a hard limit.
--Under certain circumstances with file upload, it seems that IsClientConnected()
would return an aborted client value from $r->connection->aborted, so
the buffer output data would not be flushed to the client, and
the HTML page would return to the browser empty. This would be under
normal file upload use. One work-around was to make sure to initialize
the $Request object before $Response->IsClientConnected is called,
then $r->connection->aborted returns the right value.
This problem was probably introduced with IsClientConnected() code changes
starting in the 2.25 release.
$VERSION = 2.27; $DATE="10/31/2001";
+ Wrapped call to $r->connection->fileno in eval {} so to
preserve backwards compatibility with older mod_perl versions
that do not have this method defined. Thanks to Helmut Zeilinger
for catching this.
+ removed ./dev directory from distribution, useless clutter
+ Removed dependency on HTTP::Date by taking code into
Apache::ASP as Apache::ASP::Date. This relieves
the dependency of Apache::ASP on libwww LWP libraries.
If you were using HTTP::Date functions before without loading
"use HTTP::Date;" on your own, you will have to do this now.
+ Streamlined code execution. Especially worked on
$Response->IsClientConnected which gets called during
a normal request execution, and got rid of IO::Select
dependency. Some function style calls instead of OO style
calls where private functions were being invokes that one
would not need to override.
- Fixed possible bug when flushing a data buffer where there
is just a '0' in it.
+ Updated docs to note that StateCache config was deprecated
as of 2.23. Removed remaining code that referenced the config.
+ Removed references to unused OrderCollections code.
- Better Cache meta key, lower chance of collision with
unrelated data since its using the full MD5 keyspace now
+ Optimized some debugging statements that resulted
from recent development.
+ Tie::TextDir .04 and above is supported for StateDB
and CacheDB settings with MLDBM::Sync .21. This is good for
CacheDB where output is larger and there are not many
versions to cache, like for XSLTCache, where the site is
mostly static.
+ Better RESOURCES section to web site, especially with adding
some links to past Apache::ASP articles & presentations.
$VERSION = 2.25; $DATE="10/11/2001";
+ Improved ./site/apps/search application, for better
search results at Apache::ASP site. Also, reengineered
application better, with more perl code moved to global.asa.
Make use of MLDBM::Sync::SDBM_File, where search database
before was engineering around SDBM_File's shortcomings.
- Fix for SessionSerialize config, which broke in 2.23
Also, added t/session_serialize.t to test suite to catch
this problem in the future.
$VERSION = 2.23; $DATE="10/11/2001";
+Make sure a couple other small standard modules get loaded
upon "PerlModule Apache::ASP", like Time::HiRes, Class::Struct,
and MLDBM::Serializer::Data::Dumper. If not available
these modules won't cause errors, but will promote child httpd
RAM sharing if they are.
-XMLSubs args parsing fix so an arg like z-index
does not error under UseStrict. This is OK now:
<my:layer z-index=3 top=0 left=0> HTML </my:layer>
-Only remove outermost <SCRIPT> tags from global.asa
for IIS/PerlScript compatibility. Used to remove
all <SCRIPT> tags, which hurt when some subs in globa.asa
would be printing some JavaScript.
+$Response->{IsClientConnected} now updated correctly
before global.asa Script_OnStart. $Response->IsClientConnect()
can be used for accurate accounting, while
$Response->{IsClientConnected} only gets updated
after $Response->Flush(). Added test cases to response.t
+$Server->HTMLEncode(\$data) API extension, now can take
scalar ref, which can give a 5% improvement in benchmarks
for data 100K in size.
-Access to $Application is locked when Application_OnEnd &
Application_OnStart is called, creating a critical section
for use of $Application
++MLDBM::Sync used now for core DBM support in Apache::ASP::State.
This drastically simplifies/stabilizes the code in there
and will make it easier for future SQL database plugins.
+New API for accessing ASP object information in non content
handler phases:
use Apache::ASP;
sub My::Auth::handler {
my $r = shift;
my $ASP = Apache::ASP->new($r)
my $Session = $ASP->Session;
}
In the above example, $Session would be the same $Session
object created later while running the ASP script for this
same request.
Added t/asp_object.t test for this. Fixed global.asa to only
init StateDir when application.asp starts which is the first
test script to run.
-Fixed on Win32 to make Apache::ASP->new($r) able to create
multiple master ASP objects per request. Was not reentrant
safe before, particularly with state locking for dbms like
$Application & $Session.
++Output caching for includes, built on same layer ( extended )
as XSLTCache, test suite at t/cache.t. Enabled with special
arguments to
$Response->Include(\%args, @include_args)
$Response->TrapInclude(\%args, @include_args)
$Server->Execute(\%args, @include_args)
where %args = (
File => 'file.inc',
Cache => 1, # to activate cache layer
Expires => 3600, # to expire in one hour
LastModified => time() - 600, # to expire if cached before 10 minutes ago
Key => $Request->Form, # to cache based on checksum of serialized form data,
Clear => 1, # to not allow fetch from cache this time, will always execute include
);
Like the XSLTCache, it uses MLDBM::Sync::SDBM_File
by default, but can use DB_File or GDBM_File if
CacheDB is set to these.
See t/cache.t for API support until this is documented.
+CacheSize now supports units of M, K, B like
CacheSize 10M
CacheSize 10240K
CacheSize 10000000B
CacheSize 10000000
-Better handling of $Session->Abandon() so multiple
request to the same session while its being destroyed
will have the right effect.
+Optimized XMLSubs parsing. Scripts with lots lof XMLSubs
now parse faster for the first time. One test script with
almost 200 such tags went from a parse time of around 3 seconds
to .7 seconds after optimizations.
+Updated performance tuning docs, particularly for using
Apache::ASP->Loader()
+$Server->URL($url, \%params) now handles array refs
in the params values like
$Server->URL($url, { key => [ qw( value1 value2 ) ] })
This is so that query string data found in
$Request->QueryString that gets parsed into this form
from a string like: ?key=value&key=value2 would be
able to be reused passed back to $Server->URL to
create self referencing URLs more easily.
-Bug fix where XMLSubs like <s:td /> now works on perl
5.005xx, thanks to Philip Mak for reporting & fix.
+When searching for included files, will now join
the absolute path of the directory of the script
with the name of the file if its a relative file
name like ./header.inc. Before, would just look
for something like ././header.inc by using '.'
as the first directory to look for includes in.
The result of this is that scripts in two directories
configured with the same Global setting should be able
to have separate local header.inc files without causing
a cached namespace collision.
+$Server->Config() call will return a hash ref
to all the config setting for that request, like
Apache->dir_config would.
-StatINC setting with Apache::ASP->Loader() works again.
This makes StatINC & StatINCMatch settings viable
for production & development use when the system has
very many modules.
-Cookieless session support with configs like SessionQueryParse
and SessionQuery now work for URLs with frags in them
like http://localhost?arg=value#frag
+@rv = $Response->Include() now works where there are
multiple return values from an include like:
<% return(1,2); %>
|
|
added MESSAGE file to package
This module is outdated and upstream declared it deprecated
|
|
took maintainership
ChangeLog:
2.2 Tue Apr 29 10:44:57 EDT 2008
- Fix test failure by requiring at least HTML::FillInForm 1.07 (RT#35056)
No code changes.
|
|
ChangeLog:
4.10 Tue Jun 17, 2008
This release maintains the same API public from 4.06. Changes since the
last stable release include documentation updates and refactors to the internal
of CGI::Application.
[DOCUMENTATION]
Several documentation improvements (Mark Stosberg)
- Reformat POD so methods are easier browse on CPAN
- Highlight some specific, common plugins to use
- Mention that we now have two CGI::App specific testing tools to use
Test::WWW::Mechanize::CGIApp and Test::WWW::Selenium::CGIApp
- Introduce and recommend CGI::Application::Dispatch
- Consolidated the documentation on error_mode()
- Split out those application methods which are essential from
those that are not.
- Use and recommend "$c" instead of "$self" to cut down on
typing for something that is abstract anyway, and represented
a simple "." in Perl 6.
- Mention CGI::Application::Server for offline website development.
- Update the introduction to clarify that we are a proven, lightweight
option.
- Removed the "experimental" flag on the error hook.
- Mention in the second Perl.com article in the "more reading" section.
- Document darcs repo URL. (Suggested by Gabor)
4.07_03 Mon Jun 16, 2008
[INTERNALS]
- The refactor to split up run() in 4.07_01 started to always pass the run mode
name as an argument to run modes. The behavior has now been reverted to
only pass the run mode name in the AUTOLOAD case. (Mark Stosberg)
[DOCUMENTATION]
- Fix typo in example. Thanks to Lesley Binks.
- document that header_props() can be usefully called with no arguments
to return the current headers. Thanks to neuhaus, RT#33992.
4.07_02 Weds Oct 31, 2007
[DOCUMENTATION]
- typo corrections (Evan Zacks)
- The docs for header_type() have been improved, including an example of using
CGI::Applicatin::Plugin::Redirect (Mark Stosberg)
[INTERNALS]
- Reverted switch to Class::MOP in 4.07_01, which benchmarking showed
to be slower. (Mark Stosberg)
- Beautify the code for _send_headers (Chris Dolan, Mark Stosberg)
4.07_01 Sun Jul 2, 2006
[INTERNALS]
- Switched from using Class::ISA to Class::MOP for introspection. Class::MOP
models the way this will be done Perl6, providing the same result. (Mark Stosberg)
- better test diagnostics (rjbs)
- improve test coverage (rjbs)
- improve consistency of checks for false/0len/undef (rjbs)
- split &run up into chunks (not yet finalized). New methods currently include:
__get_runmode
__get_runmeth
__get_body
Feedback is welcome on whether these should be exposed to the user, with
(possibly) better names. (rjbs)
|
|
0.34
* Call setup_environment if a Net::Server is being used, for consistency.
* Don't print_banner if a Net::Server is being used.
* Make header parsing comply with RFC 2616. [rt.cpan.org #21411]
0.33 Fri Apr 25 13:57:30 EDT 2008
* The new support for background processes notifying the parent
didn't quite work right for some apps using HSS. It's been
reverted for now and the tests TODOED
0.32 Thu Apr 24 09:45:14 EDT 2008
* At least Apache and lighttpd put unencoded strings into PATH_INFO,
so so should we.
* Patch from ntyni@iki.fi to make backgrounding of the standalone
server's server process deterministic. [rt.cpan.org #28122]
|
|
0.07 Wed, 19 Mar 2008 18:41:56 +0000
- Only serve files not directories, thanks to Bradley Bailey
for the report.
Closes http://rt.cpan.org/Public/Bug/Display.html?id=34068
- Fixed url handling for requests from IE/
Closes http://rt.cpan.org/Public/Bug/Display.html?id=27650
0.06 Mon, 23 Jul 2007 10:42:37 +0100
- Fixed problem with handling empty files where they have no
file extension or it is not recognised by MIME::Types.
Thanks to Mark Stosberg for the report
0.05 Mon, 6 Nov 2006 09:29:42 +0000
- Applied patch from Max Maischein to use the binmode function
rather than the binmode method of IO::File, which only exists
in newer versions of that module which we were not requiring.
0.04 Thu, 20 Jul 2006 12:03:21 +0100
- Applied patch from Tom Hukins to make
HTTP::Server::Simple::Static RFC compliant. Section 4.1 of
RFC 2616, "Message Types", states that header fields should
be separated by CRLF. This is done in the manner recommended
in perlport(1).
- Also applied patch from Tom Hukins to add the "use bytes"
pragma to ensure Content-Length contains the number of bytes
in the response body, not the number of characters.
0.03 Tue, 13 Jun 2006 11:00:58 +0100
- Fixed documentation to show that HTTP::Server::Simple::CGI
should be used as the base class.
Closes: http://rt.cpan.org/Public/Bug/Display.html?id=18682
- Switched to using IO::File for the file handling, also
turned on binmode to help those on Windows serve images, etc.
|
|
Pkgsrc change: removed direct dependency on p5-HTML-Tagset
(it is pulled in by p5-HTML-Tree).
Upstream changes:
0.951 Thu Sep 13 10:19:00 CET 2001
One small bugfix by Michael Kablitz
- textarea-handling was broken and needed double $ because of
references. Damn typos. Funny thing: nobody else mentioned it.
Half a year with a broken package :-)
0.95 Fri Feb 10 08:01:00 CET 2001
Some bugfixes from Sean M. Burke:
- textarea was still broken in new_many, now fixed.
- iteration over self->content || [], not self->content alone
(that one could be undef)
0.9 Thu Feb 9 19:43:00 CET 2001
Some bugfixes and some extensions by Sean M. Burke:
- ISINDEX is supported
- a new constructor new_many is created that parses all forms of
a HTML file so you don't have to manually extract links any more.
This constructor handles stray form elements outside of forms.
- the name of form elements is cached and can be queried
0.8 Mon Dec 18 09:57:00 CET 2000
Some bugfixes and some extensions:
- textarea should now work in both forms. Before there was either
a problem with textareas that included some default text, or
with empty textareas. Now Form.pm does look wether the contents
of a textarea is able to perform as_HTML and only uses it if
it is able to do it. Should fix some longstanding problems with
textareas.
- ex/yahoo.pl wasn't in the MANIFEST
- added a simple test procedure that just checks if it can be loaded
|
|
Pkgsrc change: add dependency on p5-libwww.
Upstream changes:
0.22 Thu May 1 00:18:38 CEST 2008
[TESTS]
- increased test coverage
- t/23connect.t doesn't need an Internet connection any more,
thus closing RT ticket #19653.
- t/67complete.t tests HTTP::Proxy::BodyFilter::complete
[DOCUMENTATION]
- closed RT ticket #33465 (Jimbo), by explaining in a little
more detail how HTTP::Proxy::BodyFilter::complete works.
0.21 Sun Apr 20 04:34:47 CEST 2008
[ENHANCEMENTS]
- HTTP::Proxy::Engine::Legacy and HTTP::Proxy::Engine::ScoreBoard
log the number of remaining child processes (in addition to
their pids), thanks to Amos Shapira.
[FIXES]
- HTTP::Proxy::BodyFilter::save had a bug that prevented the
'filename' parameter to be correctly used to compute the
filename to save to, and that made the proxy die the second
time the filter was called.
This fix allowed to close RT tickets #14548 (Max Maischein),
#18644 (Mark Tilford) and #33018 (Roland Stigge and Gunnar Wolf).
- HTTP::Proxy::BodyFilter::save had many other bugs, which the
test suite allowed to spot and fix.
[TESTS]
- t/67save.t provides 96% coverage of HTTP::Proxy::BodyFilter::save,
and helped fix many bugs in it.
- fixed t/22http.t and t/22transparent.t not to break when the
DNS wrongly resolves an invalid address.
[DOCUMENTATION]
- closed RT ticket #25295 (Matsuno Tokuhiro) with a doc patch.
0.20 Fri Aug 18 10:25:11 CEST 2006
[ENHANCEMENTS]
- Added a will_modify() method to HTTP::Proxy::BodyFilter, that
lets the proxy know if a filter may modify the content length,
thus closing RT ticket #21051 (Chris Dolan)
- If no filter in the current stack will modify the content length,
then the header is not removed
[FIXES]
- closed RT tickets #3184 and #20251 (chunked encoding was enforced
while transfering data between a client and server using
different versions of HTTP, causing unwanted garbage to appear
in the data)
- removed useless "ERROR: Getting request failed:" messages
when there are simply "No more requests from this connection"
[INTERNALS]
- Removed the HTTP::Proxy::FilterStack class from inside HTTP::Proxy
and put it in its own module file
- renamed HTTP::Proxy::FilterStack::active() as will_modify() for
consistency reasons
[TESTS]
- updated t/22http.t and t/23connect.t following Ken Williams'
recommandations in RT ticket #19986
[DOCUMENTATION]
- patched a small inconsistency in HTTP::Proxy::BodyFilter's
documentation (and closed RT ticket #20303)
- fully documented HTTP::Proxy::FilterStack
0.19 Fri Apr 28 19:55:41 CEST 2006
[ENHANCEMENTS]
- HTTP::Proxy::HeaderFilter::simple now lets one define an
end() method as well
[FIXES]
- HTTP::Proxy::(Body|Header)Filter::simple now provide a default
filter() that does nothing if their constructor is not given one
(thanks to Merijn Brand)
- close RT ticket #14548 by correcting the 'filename' check
in HTTP::Proxy::BodyFilter::save (Max Maischein)
- ERROR messages are always logged (Mark Tilford)
[TESTS]
- more tests for log() and logmask() in t/11log.t
|
|
2007-12-12 Mattias Holmlund
Version 1.0
Add ApproveContent option.
Add pod-tests.
Mark internal methods with leading underscore.
|
|
1.04 2008-06-23 16:00:00
- Added tmpdir() accessor to specify an alternate directory
for temp files. (jgoulah)
|
|
version: 0.62
date: ???
changes:
- blocked elements are not blocked if they are contained within
a blocked element (with much thanks to Dominick Bellizzi for
the patch)
- rules_for_tag() now dereferences the 'alias' subrule
|
|
2.08a 23 June 2008
- Fixed outputing row class attribute twice.
Request and fix from Reinhard Mutz
2.08 10 April 2008
- Added delRow and delSectionRow methods.
Request from Kyle Davenport <kyle.davenport at fmr.com>
- Fixed error in getTable, which output the wrong section attributes.
Request and fix from Colin Fine <colin.fine at pace.co.uk>
- Added getSection method to modularize the creation of Section HTML.
- Created new set of methods which apply Cell attributes
across a row. This is to make a clear distinction from
those methods that set row attributes (tr). Suggest by
Colin Fine <colin.fine at pace.co.uk>
2.07b
05 February 2008
- Fixed error in setSectionRowWidth.
Request from Ravi Kondamuru <ravikondamuru at gmail.com>
2.07a
04 February 2008
- Changed status from beta to full.
- Fixed error in setCellHeight.
Request from Ravi Kondamuru <ravikondamuru at gmail.com>
2.07-b2
09 October 2007
- Removed text output when empty table is printed.
Request from Erik Tank <erik at atjeu.com>
2.07-b1
17 September 2007
- Changed order of output for table sections, to comply
with the HTML 4.01 standard.
2.07-beta
13 September 2007
- Added THEAD, TFOOT and TBODY sections.
Request from Miguel Santinho <msantinho at simplicidade.com>.
There are now methods that take a section and section
number as parameters. ie. setSectionCell ( 'tbody', 0,
2, 3, 'Cell 2,3');
Existing methods default to working on the first tbody
section, for backwards compatibility.
You can have only one each of tfoot and thead sections,
but multiple tbody sections.
2.06
4 June 2007
- Added patch for even/odd row class support, supplied by Chris Weyl
Thanks to Chris Weyl <cweyl at alumni.drew.edu> for this patch.
2.05
15 March 2007
- Fixed code so that all HTML tags and attributes are in lower case.
2.04
23 January 2006
- AUTOLOAD method was making the module sliently ignore calls to invalid
methods.
Thanks to Gordon Lack <gml4410 at ggr.co.uk> for the fix.
2.03
6 December 2005
- Added get methods for Style attributes.
Thanks to Douglas Riordan <doug.riordan at gmail.com> for this.
|
|
private mail some months ago).
|
|
Zope 2.11.1 (2008/07/17)
Bugs Fixed
- Suppressed DeprecationWarning during import of ZPublisher.Iterators:
that module needs to use Z2-style interfaces in 2.11, for BBB, but
the Interface module itself issues the warning on import.
- Launchpad #246748: added 'immediate' option to sendXXX() methods
for sending a mail immediately by-passing the zope.sendmail delivery
mechanism
- Launchpad #246290: fixed backward compatibility issue
- zope.testing : updated to 3.5.3
- Launchpad #245649: the Products package is now a proper
"namespace package" under the rules specified by setuptools.
- zope.viewlets: updated to 3.4.2
- zope.sendmail: updated to 3.5.0 (fixing Launchpad #230831)
- Launchpad #239636: Ensure that HEAD requests lock an empty body
for NotFound errors.
- fixed outdated transaction.commit(1) call in
ZODBMountPoint.SimpleTrailblazer
|
|
|
|
|
|
- Changed homepage URL as the old one is unaccessible
ChangeLog:
- no entry for 1.10 -
1.09
* add method "pointset" to VRML::VRML2
* bug in method line fixed
1.08
* add method "torus" to VRML::VRML2
1.07
* add "language" to method text
1.06
* remove a bug in VRML::VRML2::Standard::IndexedFaceSet (Thanx Bridget Kenyon)
1.05
* add "textrans" to method "appearance" in VRML::VRML2
* ROUTEs now moved at the end of nodes
|
|
- cleaned up dependency to Parse::RecDescent
ChangeLog:
1.08 Dual licensed
|
|
ChangeLog:
4.34 - Sunday, July 13, 2008
* SECURITY: Patch CGI::Session::Driver::file to stop \ and / characters being used in
session ids and hence in file names. These characters, possibly combined with '..',
could have been used to access files outside the designated session file directory.
Reported by TAN Chew Keong of vuln.sg.
* FIX: Patch CGI::Session to propagate error upwards when _load_pluggables() fails.
See RT#37628 and http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=490198.
* INTERNAL: Ship a machine-readable version of this file under the name Changelog.ini.
The latter file is generated by ini.report.pl, which is shipped with Module::Metadata::Changes.
The reason Changelog.ini does not contain a separate section for each version in this file
is that some of the versions documented below have no datestamp, and ini.report.pl does not create
fake datestamps.
4.33 - Monday, July 7, 2008
* FIX: Patch CGI::Session::Driver::mysql to replace 'REPLACE INTO ...' with
'INSERT INTO ... ON DUPLICATE KEY UPDATE ...'. See RT#37069.
Thanks to Steve Kirkup for the patch. I (Ron) installed MySQL V 5.0.51a for testing.
Note: http://dev.mysql.com/doc/refman/5.0/en/releasenotes-cs-5-0-45.html and similar docs
list various MySQL errors fixed recently for the above new syntax. Also, the new version
is now much more like the Postgres code, which is another reason it has been adopted.
* FIX: t/mysql.t used to test setting the global variable $CGI::Session::MySQL::TABLE_NAME.
The test for this (in t/mysql.t) was introduced in V 4.00_09.
However, since V 4.29_1, changes to CGI::Session::Driver's new() method mean
this way of setting the session table's name no longer works, and so the variable
$CGI::Session::MySQL::TABLE_NAME is now not used. Hence it has been removed.
Code in CGI::Session::Driver::DBI used to set $class::TABLE_NAME for all database drivers.
This code has also been removed. Moral: Don't use global variables.
Call $session = CGI::Session -> new(..., ..., (TableName => 'new_name'}) or,
after creating the object, call $session -> table_name('new_name').
To retrieve the name, call $name = $session -> table_name().
4.32 - Tuesday, June 17, 2008
* FIX: Packaging of 4.31 release was botched.
4.31 - Tuesday, June 10, 2008
* FIX: Patch CGI::Session::Driver::DBI to check that the DBI handle still exists before trying
to ping it. This handles the case where the DBI object is destroyed before the session object.
See RT#35925.
* FIX: Patch CGI::Session::Driver::DBI's remove() which still hard-coded the column name 'id' instead
of using the new feature which allows the user to specify the name of the column. See RT#36235.
* FIX: Patch POD yet again to emphasize that an explicit call to destroy() should be followed by
explicit call to flush(), in particular in the case where the program is not exiting and
hence auto-flushing is not activated. Sections patched are 'A Warning about Auto-flushing'
and the docs for delete(). See RT#34668.
4.30 - Friday, April 25, 2008
* FIX: Patch POD for CGI::Session in various places, to emphasize even more that auto-flushing is
unreliable, and that flush() should always be called explicitly before the program exits.
The changes are a new section just after SYNOPSIS and DESCRIPTION, and the PODs for flush(),
and delete(). See RT#17299 and RT#34668
* NEW: Add t/new_with_undef.t and t/load_with_undef.t to explicitly demonstrate the effects of
calling new() and load() with various types of undefined or fake parameters. See RT#34668
* FIX: Patch POD for new() and load() to clarify the result of calling these with undef, or with
an initialized CGI object with an undefined or fake CGISESSID. See RT#34668.
Specifically: You are strongly advised to run the old-fashioned
'make test TEST_FILES=t/new_with_undef.t TEST_VERBOSE=1' or the new-fangled
'prove -v t/new_with_undef.t', for both new*.t and load*.t, and examine the output
* FIX: Patch POD in various tiny ways to improve the grammar
4.29_2 - Thursday, March 27, 2008
* FIX: stop ExtUtils::MakeMaker trying to create Build.PL (Ron Savage)
* FIX: Disable trying to use utf8 in tests. (Ron Savage) Ref RT#21981, RT#28516
4.29_1 - Saturday, March 15, 2008
Special Thanks to Ron Savage who did the bulk of the work to put this release together.
* FIX: Patch CGI::Session to fix RT#29138 (Patch by Barry Friedman)
* NEW: Add a note to CGI::Session's POD referring to utf8 problems, and include references
to RT#21981 (Reported by erwan) and RT#28516 (Reported by jasoncrowther)
* FIX: Patch CGI::Session::Driver::DBI.pm to fix RT#24601 (Patch by latypoff)
* FIX: Patch CGI::Session::Driver::DBI.pm to fix RT#24355 (Reported by fenlisesi, patch by Ron Savage)
* NEW: Add t/bug24285.t to ensure session data files are created properly when the user specifies a
directory other than /tmp (Reported by William Pearson RT#24285, patch by Ron Savage)
* FIX: Patch t/ip_matches.t and t/bug21592.t to remove test files left in /tmp, to fix RT#29969
(Reported by ANDK, patch by Ron Savage)
* FIX: Patch POD for CGI::Session::Driver::file to clarify how to use the option to change the
file name pattern used to created session files (Report by appleaday RT#33635,
patch by Ron Savage)
* FIX: Patch CGI::Session::Driver::sqlite to add sub DESTROY to fix RT#32932
(Patch by Alexander Batyrshin, corrected by Ron Savage)
* FIX: Remove CGI::Session::Seralize::json and t/g4_dbfile_json.t until such time as this code
can be made to work reliably. Both JSON::Syck and JSON::XS have been tried, and in both
cases t/g4_dbfile_json.t dies horribly (but differently). Patch POD for CGI::Session to
remove references to JSON. RT#25325 (Reported by bkw, patch by Ron Savage)
* NEW: Patch CGI::Session's POD and load() to allow the session/cookie name default of CGISESSID
to be overridden. (Patch by Lee Carmichael RT#33437, reformatted by Ron Savage). Lee has
also patched t/name.t to test the new functionality
* NEW: Split CGI::Session::Serialize::yaml out into its own distro. Get it hot from CPAN!
* NEW: Add Build.PL for Module::Build users. This also requires adding PL_FILES => {}
to Makefile.PL to beat ExtUtils::MakeMaker over the head, otherwise it executes
'perl Build.PL Build'
* NEW: Support specification of both the id column name and the a_session column name in the
sessions table, by extending the options acceptable in CGI::Session->new(..,..,{here}).
Allow: {TableName => 'session', IdColName => 'my_id', DataColName => 'my_data'}.
Default: {TableName => 'sessions', IdColName => 'id', DataColName => 'a_session'}.
Allow any 1, 2 or 3 of these options. Missing keys default as specified.
(Patch by Chris RT#2224. Implemented differently by Ron Savage). Supported drivers:
o MySQL (native to CGI::Session)
o ODBC (separate distro, CGI::Session::Driver::odbc V 1.01)
o Oracle (separate distro, CGI::Session::Driver::oracle V 1.01)
o Postgres (native)
o SQLite (native)
|
|
Do feel free to take it off my shoulders though :-)
|
|
* Fixed several security issues.
* Fixed several stability issues.
* Fixed an issue where the phishing and malware database did not update on first launch.
* Under certain circumstances, Firefox 3.0 did not properly save the SSL certificate exceptions list.
* Updated the internal Public Suffix list.
* In certain cases, installing Firefox 2 in the same directory in which Firefox 3 has been installed resulted in Firefox 2 being unstable. This issue was fixed as part of Firefox 2.0.0.15.
* Fixed an issue where, when printing a selected region of content from the middle of a page, some of the output was missing (bug 433373).
* Fixed a Linux issues where, for users on a PPP connection (dialup or DSL) Firefox always started in "Offline" mode (bug 424626).
|
|
* Updated translations.
* Fix album display for folders which do not contain any images. This fixes
8212.
* Fix invalid redirect in default view for comments.
* Update the sharing page:
o never reindex more than once when making changes.
o modify the search button to only search. Previously it would also
apply all changes in addition to doing a search.
o do nothing if the form is submitted but no changes were made.
o handle invalid LDAP or OpenID users correctly.
* Update Archetypes:
o use Content-Disposition instead of Content-disposition as HTTP
header for downloads. Fixes problems with MS Internet Explorer 6,
which appears to be case sensitive contrary to standards.
o Add a new viewlet manager which allows adding of content at the
bottom of content edit views.
o Add an option to the reference field to also copy references when
copying an object.
* Update reference browser widget:
o Make it possible to remove references for single-reference fields.
o Add a new property 'startup_directory_method' to use a callable
to determine the startup directory.
o Inserted references were not checked by default on Internet Explorer
7. This fixes 7936.
o Added a new property 'hide_inaccessible'. When set all items for
which the user has no View permission are hidden.
* Add a 'random items' option to the collection portlet.
* Update GenericSetup import steps at each point when loading multiple
profiles. Fixes CMF bug 213905.
* Fix group handling to use group introspection PAS plugins, making it
possible to ask, for example, LDAP groups for their members.
* Fix user search to honour the order of user enumeration PAS plugins
and correctly merge search results.
* Add support for po files inside i18n folders in Python packages.
They need to registered as a Zope2 product but don't need to be in
the Products.* namespace anymore.
* Do not create redirects for temporary URLs used while creating a new
content object. This fixes 8260 and part of 7278.
* Update viewlets to use the 'index' attribute rather than 'render' for
setting viewlet templates. This allows them to be overriden using the
'template' ZCML attribute.
* Do not show the display menu if it is disabled.
* Add an actionMenuSelected class to selected menu items.
* Standardize the rendering of the title in the folder contents template.
* Fix a problem with disappearing security context for customized
browser views.
* Make it possible to customize viewlet and portlet templates registered
with the same name for multiple browser layers.
* Correctly handle objects with a space in their id in the broken-link-checker.
Updated packages and products
* Archetypes 1.5.9
* Products.ATReferenceBrowserWidget 2.0.2
* Products.CMFPlone 3.1.3
* Products.CMFQuickInstallerTool 2.1.6
* Products.GenericSetup 1.4.1
* Products.PlacelessTranslationService 1.4.12
* Products.PlonePAS 3.6
* Products.PloneTranslations: 3.1.3
* five.customerize 0.3
* plone.app.content 1.1.3
* plone.app.contentmenu 1.1.3
* plone.app.customerize 1.1.1
* plone.app.layout 1.1.3
* plone.app.linkintegrity 1.0.10
* plone.app.portlets 1.1.3
* plone.app.redirector 1.0.9
* plone.app.workflow 1.1.3
* plone.fieldsets 1.0.2
* plone.portlet.collection 1.1.3
* plone.session 2.0
|
|
|
|
Security fixes in this version:
MFSA 2008-34 Remote code execution by overflowing CSS reference counter
For more info, see http://www.seamonkey-project.org/releases/seamonkey1.1.11/
|
|
Security fixes in this version:
MFSA 2008-35 Command-line URLs launch multiple tabs when Firefox not running
MFSA 2008-34 Remote code execution by overflowing CSS reference counter
For more info, see http://www.mozilla.com/en-US/firefox/2.0.0.16/releasenotes/
|
|
|
|
changes:
-bugfixes
-translation update
|
|
|
|
Handel is a cart/order/checkout framework with AxKit taglib support,
TT2 (Template Toolkit) support and Catalyst::Helper support. It
was created for the conversion of an IIS/ASP based commerce site
to Apache/ModPerl, but I decided that it might be useful to others
so here it is.
For the curious, Handel is German for commerce.
|
|
p5-Catalyst-Action-RenderView
p5-Catalyst-Authentication-Store-DBIx-Class
p5-Catalyst-Component-ACCEPT_CONTEXT
p5-Catalyst-Controller-BindLex
p5-Catalyst-Controller-FormBuilder
p5-Catalyst-Devel
p5-Catalyst-Manual
p5-Catalyst-Plugin-Authentication
p5-Catalyst-Plugin-Authentication-Store-DBIC
p5-Catalyst-Plugin-Authentication-Store-RDBO
p5-Catalyst-Plugin-Authorization-Roles
p5-Catalyst-Plugin-ConfigLoader
p5-Catalyst-Plugin-Session
p5-Catalyst-Plugin-Session-State-Cookie
p5-Catalyst-Plugin-Session-Store-DBIC
p5-Catalyst-Plugin-Session-Store-Delegate
p5-Catalyst-Plugin-Session-Store-FastMmap
p5-Catalyst-Plugin-Session-Store-File
p5-Catalyst-Plugin-StackTrace
p5-Catalyst-Plugin-Static-Simple
p5-Catalyst-Runtime
p5-Catalyst-View-JSON
p5-Catalyst-View-TT
p5-CatalystX-CRUD-Controller-RHTMLO
p5-Test-WWW-Mechanize-Catalyst
|
|
Catalyst is an elegant MVC Web Application Framework. Test::WWW::Mechanize
is a subclass of WWW::Mechanize that incorporates features for web
application testing. The Test::WWW::Mechanize::Catalyst module
meshes the two to allow easy testing of Catalyst applications
without starting up a web server.
Testing web applications has always been a bit tricky, normally
starting a web server for your application and making real HTTP
requests to it. This module allows you to test Catalyst web
applications but does not start a server or issue HTTP requests.
Instead, it passes the HTTP request object directly to Catalyst.
Thus you do not need to use a real hostname: "http://localhost/"
will do.
|
|
This is an implementation of CatalystX::CRUD::Controller for
Rose::HTML::Objects. It supercedes Catalyst::Controller::Rose for
basic CRUD applications.
|
|
A view base class for Catalyst using Template Toolkit.
WWW: http://search.cpan.org/dist/Catalyst-View-TT
|
|
Catalyst::View::JSON is a Catalyst View handler that returns stash
data in JSON format.
|
|
Catalyst is an elegant web application framework, extremely flexible yet
extremely simple. It's similar to Ruby on Rails, Spring (Java) and
Maypole, upon which it was originally based.
Catalyst follows the Model-View-Controller (MVC) design pattern, allowing
you to easily separate concerns, like content, presentation and flow control,
into separate modules. This separation allows you to modify code that handles
one concern without affecting code that handles the others. Catalyst promotes
re-use of existing Perl modules that already handle common web application
concerns well.
|
|
Serve static files with Catalyst. This module is not as optimized
for static files as a normal web server, and is most useful for
stand alone operation and development.
|
|
This plugin will enhance the standard Catalyst debug screen by including
a stack trace of your appliation up to the point where the error
occurred. Each stack frame is displayed along with the package name,
line number, file name, and code context surrounding the line number.
WWW: http://search.cpan.org/dist/Catalyst-Plugin-StackTrace/
|
|
Catalyst::Plugin::Session::Store::File is an easy to use storage
plugin for Catalyst that uses an simple file to act as a shared
memory interprocess cache. It is based on Cache::FileCache.
|
|
Catalyst::Plugin::Session::Store::FastMmap is a fast session storage
plugin for Catalyst that uses an mmap'ed file to act as a shared
memory interprocess cache. It is based on Cache::FastMmap.
|
|
This store plugins makes delegating session storage to a first
class object model easy.
|
|
This Catalyst::Plugin::Session storage module saves session data
in your database via DBIx::Class. It's actually just a wrapper
around Catalyst::Plugin::Session::Store::Delegate; if you need
complete control over how your sessions are stored, you probably
want to use that instead.
|
|
In order for Catalyst::Plugin::Session to work the session ID needs
to be stored on the client, and the session data needs to be stored
on the server.
This plugin stores the session ID on the client using the cookie
mechanism.
|
|
The Session plugin is the base of two related parts of functionality
required for session management in web applications.
The first part, the State, is getting the browser to repeat back a
session key, so that the web application can identify the client and
logically string several requests together into a session.
The second part, the Store, deals with the actual storage of information
about the client. This data is stored so that the it may be revived for
every request made by the same client.
This plugin links the two pieces together.
WWW: http://search.cpan.org/dist/Catalyst-Plugin-Session/
|
|
This module will attempt to load find and load a configuration file
of various types. Currently it supports YAML, JSON, XML, INI and
Perl formats. Special configuration for a particular driver format
can be stored in
MyApp->config->{ 'Plugin::ConfigLoader' }->{ driver }.
|
|
Role based access control is very simple: every user has a list of
roles, which that user is allowed to assume, and every restricted part
of the app makes an assertion about the necessary roles.
If the user is a member in all of the required roles access is granted.
Otherwise, access is denied.
WWW: http://search.cpan.org/dist/Catalyst-Plugin-Authorization-Roles/
|
|
This plugin uses a Rose::DB::Object object to authenticate an user.
It is based on Catalyst::Plugin::Authentication::Store::DBIC. Please
read there for a much better description.
|
|
This plugin uses a DBIx::Class (or Class::DBI) object to authenticate
a user for Catalyst.
|
|
The authentication plugin provides generic user support. It is the basis
for both authentication (checking the user is who they claim to be), and
authorization (allowing the user to do what the system authorises them
to do).
WWW: http://search.cpan.org/dist/Catalyst-Plugin-Authentication/
|