Revision history for Perl module OpenFrame:
Changes made by Andy Wardley, 17th July 2002:
- added ofDEBUG_* constants
- added OpenFrame::warn to OpenFrame.pm (should probably go
somewhere else but I couldn't find an OpenFrame::Utility or
similar so I dumped it here for now.
- changed most, but not all modules to call &warn(...) rather
than warn() which allows a symbol table alias to map it to
Openframe::warn(). This adds the '[component]' prefix
(e.g. [config]) to the message based on the module name that
called iti, with 'OpenFrame::' prefix stripped and converted
to lower case (e.g. OpenFrame::Slotstore => slotstore).
Also optionally adds file and line info (as per CORE::warn)
if ofDEBUG_VERBOSE is set.
- changed above modules to use their own $DEBUG flag rather
than the global $OpenFrame::DEBUG variable. Each $DEBUG var
is the logical AND of $OpenFrame::DEBUG and an ofDEBUG_*
flag, e.g. for OpenFrame::SlotStore,
$DEBUG = $OpenFrame::DEBUG & ofDEBUG_STORE.
This then allows the $OpenFrame::DEBUG variable to define
which components should generate debug messages as a logical
OR of these flags, e.g.
$OpenFrame::DEBUG = ofDEBUG_STORE | ofDEBUG_GENERATOR.
2.12 ????
- changed Slot::Dispatch to warn if there is an error loading
a particular application. Got annoying having to turn debugging
on for such an obvious case.
- new single-process OpenFrame::Server::HTTPPoe server (and tests)
- cache the File::MMagic information in OpenFrame::Slot::Images
and OpenFrame::Slot::HTML for speed reasons
- move from FileHandle to IO::File as FileHandle no longer really
exists
- fixed memory leak in OpenFrame::SlotStore
- while waiting for the introduction of drivers, have added
last modified time to OpenFrame::Response so that static
content can be cached by drivers
- updated OpenFrame::Slot::Session docs
- no longer save the request parameters as part of the session
in OpenFrame::Slot::SessionSaver
- fix problem with trying to call what() on modules that don't exist
- removed warnings during a few tests
- fix weird POE uploading bug
- changed docbuilder.pl to use File::Find::Rule
2.11 Fri Mar 22 14:33:55 GMT 2002
- changed SimpleGenerator to use Storable's dclone()
which is more robust than Data::Dumper
- fixed embarrassing bug with file upload containing \r\n
- added OpenFrame version to Apache Server header
- bumped up version numbers in in OF::* to stop CPAN complaining.
- fixed redirects under Apache and cope with non-port-80
httpd servers
- OF::Slot::NoImages now positively checks for image MIME type
- added the slots2 test to the distribution
2.10 Wed Feb 27 14:29:17 GMT 2002 [NEVER RELEASED]
- make more use of File::Spec to be more portable and clever
- clean up filehandles left behind from file uploads before
saving the session
- major rename: renamed OpenFrame::AbstractCookie,
OpenFrame::AbstractRequest, OpenFrame::AbstractResponse to
OpenFrame::Cookietin, OpenFrame::Request, OpenFrame::Response -
(and tests) your custom slots and applications will have to
be changed!
- switched the meaning of "name" and "namespace" around for
applications dispatched via OpenFrame::Slot::Dispatch to be
more consistent. Now "name" is always the module name and
"namespace" here is the session namespace. Your configs with
custom applications will have to be changed!
- renamed OpenFrame::SlotStore's lookup / store methods to
get / set to be more consistent
- "use OpenFrame" will now load in OpenFrame::Config,
OpenFrame::Cookietin, OpenFrame::Request, OpenFrame::Response,
and OpenFrame::Slot to save you some typing
- OF::Slot::Image now positively checks for image MIME type
- simplify Games::GuessWord logic by using new version
- $epoints subref now default to "default"
- changed OpenFrame::Slot to short-circuit slots when an
OpenFrame::Response is returned, and to correctly run cleanup
slots in the case of short-circuiting.
- moved OpenFrame::SlotStore into a module of its own
2.09 Wed Jan 30 15:02:54 GMT 2002
- fix to make sure we send cookies with a / path
- promoted OpenFrame::Slot::SimpleGenerator to a real slot
that we ship with OpenFrame as it is useful for testing
OpenFrame applications
- fixed "Odd number of elements in hash assignment" bug
in OpenFrame::Server::HTTP
- OpenFrame::Server::HTTP can now cope with redirects
(and new redirect example)
- added information about the new OpenFrame mailing list
and IRC channel
- set TT2's COMPILE_EXT to ".tt2" instead of "tt2" in
OpenFrame::Slot::Generator
- allow $epoints to be a subroutine reference to allow
more flexibility (they are passed the request arguments)
- yet another session change: sessions are now implemented
using Cache::Cache rather than Apache::Session. Cache::Cache
is easier to install, simpler and faster
2.08 Fri Jan 4 15:07:52 GMT 2002
- updated docs in OpenFrame::Response
- minor bugfix to OpenFrame::Server::HTTP where having a
parameter value contain an ampersand was causing a failure
- apps now can return stuff that is put on the slot stack
this will [probably] remain an undocumented feature.
Don't want to give the impression that we are suggesting
a blend of functionality and presentation :-)
- changed from using Games::WordGuess to Games::GuessWord (as
the former has disappeared from CPAN)
2.07 Thu Dec 13 16:01:20 GMT 2001
- new OpenFrame::Server::HTTPSingle which does not fork and
thus can be used for benchmarking / testing easier that
OpenFrame::Server::HTTP
- performance improvement in OpenFrame::Slot::Generator - we
no longer generate a new TT object each time
- tested on 18 varied platforms (see OpenFrame.pm)
- more tests, docs, minor bugfixes
2.06 Thu Dec 6 11:01:05 GMT 2001
- removed warning in OpenFrame::Config
- more docs: OpenFrame, OpenFrame::Install
- complete redesign of OpenFrame::Cookie
- new Apache example, which shows OpenFrame being served
by Apache and mod_perl
- new OpenFrame::Server::SOAP (and example), which allows OpenFrame
systems to be accessed over SOAP rather than HTTP
- new slots to parse XML documents and perform XSL transforms
in OpenFrame::Slot::XML and OpenFrame::Slot::XSLT
- new OpenFrame::Server::Zeus (and example) to allow the Zeus web
server to serve OpenFrame applications
2.05 Fri Nov 30 13:59:45 GMT 2001
- Slots can now run remotely via SOAP - see the soap example
- Applications can now run remotely via SOAP - see the soap_app example
- OpenFrame::Server::HTTP is now more stable (and has a test)
- minor bugfixes
2.04 Thu Nov 22 12:26:06 GMT 2001
- completely changed session implementation: instead of rolling our
own we now use the excellent Apache::SessionX (which is not
dependent on Apache, despite the name). The "sessiondir"
config parameter is now obsolete
- new OpenFrame::Slot::Debugger and example
- OpenFrame::Server::HTTP now preforks (and can do file uploads)
- no longer produce warnings when under -w or "use warnings".
To enable tracing through openframe, enable debugging by
using: $config->setKey(DEBUG => 1);
- made sure errors were being passed around (and new error test)
- new file upload example
2.03 Mon Nov 13 17:12:56 GMT 2001
- added documentation (all examples, OpenFrame::Application,
OpenFrame::Constants, OpenFrame::Slot::*)
- fixed per-application configuration to actually work
- OpenFrame::Server::HTTP now takes a port parameter
instead of using the general configurations. It also can
now handle POSTs
- new Eliza example
2.02 Mon Nov 12 16:56:09 GMT 2001
- added OpenFrame::Server::HTTP for use without Apache
- added OpenFrame::Slot::Images and OpenFrame::Slot::HTML
to serve static images and HTML files
- lots of minor fixes
- added more documentation
- added hangman example (with and without templates, and test)
- added webserver example (and test)
- moved from Java naming (getValue, setValue) to Perlish naming
(value(), value($value))
- removed attribute usage
- config file has changed significantly, slots carry their own
configuration now, which means that the config file is much
cleaner
- applications dispatched by Slot::Dispatch also get their own
configuration, which is passed to the application
- slots can return another slot to push onto the slot list by
returning a class name rather than an object
- the slot pipe magically shortens *only* if the response contains
an ofREDIRECT of an ofDECLINE message code
2.01 Fri Nov 2 17:00:00 GMT 2001
- fixed abstract cookies bug
- added OpenFrame::Server::Direct for testing and other delights
2.0 Fri Nov 2 10:37:13 GMT 2001
- first released version