Changes
=======
0.98 April 15, 2008
Converted two-argument forms of open() to three-argument forms
Modified some tests to reflect current state of test smokers,
alterations to Makefile.PL
Removed obsolete Wyrds from the official dist
0.97 April 14, 2008
Minor changes to Inputs and Form interaction to allow zero non-null
values where they would normally be forbidden
Security enhancement where any submitted data containing a string
that can be interpreted as a Wyrd is dropped unless an exception is
explicitly made for it in the initialization data passed to
Apache::Wyrd::DBL by Apache::Wyrd::Handler. This is to prevent
user-submitted data from being executed if it is displayed on a page
Setting the environment variables WYRD_USE_CGI and WYRD_USE_APR can
be used to force the use of either CGI and CGI::Cookie or
Apache::Request and Apache::Cookie as the underlying modules in the
wrapper classes Apache::Wyrd::Request and Apache::Wyrd::Cookie
Apache::Wyrd::Input & Apache::Wyrd::Input::Set more CSS and Java-
Script friendly
Apache::DBL now relies on DBI's connect_cached connection rather
than doing its own caching
Fixed a bug in Apache::Wyrd::Interfaces::Setter where interpolated
variables were not being sorted in some _set_xxxx functions
Fixed a bug in Apache::Wyrd::Interfaces::Setter where defined undef-
equivalent but defined values were being interpreted as undefined
Apache::Wyrd::Site::GDButton now accepts a template base-image gif
or png
Apache::Wyrd::Services::Auth now allows an authentication session
to go ahead directly when the connection is on a secure port, with
some limits on passed variables
Apache::Wyrd::Services::Auth now passes through POST requests on
"DECLINED". This allows it to be used with non-wyrd applications
Documentation changes
0.96 May 1, 2007
Apache::Wyrd::Site::IndexBot uses basefile for index date tracking
Documentation audit changes
0.95 April 30, 2007
Module cleanup: removed some example & undocumented Wyrds from
the core distribution: CSSGene, Site:EditablePage,
Site::SearchResults, Site::WidgetControl. Added missing Version
Wyrd. Consolidated Lattice Wyrds into single file
Added View Wyrd for displaying contents of enclosing Wyrds
Added a FileCacheTimeout to Apache::Wyrd::Services::FileCache
Apache::Wyrd::Redirect can now use "href" conventions. New
normalize_href Apache::Wyrd::Services::SAK function for this
Apache::Form & Apache::Wyrd::Input has more passthrough of valid
attributes for their base tags (enctype, onkeydown, etc.)
Wyrds now accept hyphen in the attribute-name as a valid
character, to allow for compatibility with valid HTML
attributes such as "accept-charset"
Apache::Wyrd::Services::Index now feature-frozen and depreciated
in favor of Apache::Wyrd::Services::MySQLIndex. This is due to
locking and DB File corruption issues which could not be resolved
Documentation changes
0.94 October 22, 2006
Indexer now requires perl 5.8 for Unicode support
New interoperatable objects for building complex sites now
available under Apache::Wyrd::Site::XXX
New _cleanup method to complement the _setup method
Lookup has new "nojoin" flag for formatted repeating queries
New self_url method for DBL
GIF support for Chart
New Loop Wyrd for convenient iteration through SQL query results
New View Wyrd as a data placemarker
New PreAuth Handler Object for immediate (pre-denial) logons
using Apache:::Wyrd::Site::Login Wyrds
New MySQLIndex object to give Index a MySQL back-end
Fixed bug where DBL was not passing its loglevel to newly created
Wyrds
Closed an open-database bug when the Wyrd::Apache::Services::Index
was using the "bigfile" option. More explicit untie-ing of databases
Index more efficient in the re-indexing of data attribute under
the "bigfile" option
Index no longer considers "_" punctuation
Index now supports concurrency and transactions options to
support Sleepycat Berkeley DB CDS and TXN modes when version 4+
of the library is used
Fixed a bug where Apache::Wyrd::Form objects would not properly
carry on a chain of forms spanning multiple pages
Index bug removed: non-reverse-indexed indexes update properly
Index lookups have optimization options, allowing more granular
data retreival
Form Inputs now handle enctype attributes
Form Inputs now handle the triggers attribute correctly
Checkbox and radio button opts now handle style attributes
Checkbox sets now properly handle removing all checks if there is
no "null" option
Input Set objects now properly handle literal '0' values
Using a different param from the input name now works properly on
Input wyrds
Escaped Form Inputs now also escape '<' and '>'
Setter interface now supports a _template_hash method
Limited support for internal redirects method via the
abort_redirect method. Apache::Wyrd::Request attempts to recover
the CGI environment after explicit calls to Apache's
internal_redirect method
The mother interface can now act on any attribute of a Wyrd, not
just _data
Mother interface allows arbitrary child storage and loads the
Apache::Wyrd::Interfaces::Setter module itself
IP addresses can now be checked in Apache::Wyrd::Services::Auth
and Apache::Wyrd::Interfaces::GetUser to prevent cookie-theft
Changed conditional expression interpretation order to behave more
intuitively in Apache::Wyrd::Interfaces::Setter. _set now preserves
conditionals which may not be addressed by the current _set
operation, while clear_set interprets these conditionals as false.
This allows better layering of _set-tings on the same argument
SAK: file_attribute() now untaints the file path it generates
sort_by_[i]key will reverse order on a key if the key is
preceeded by a minus sign
Documentation changes
0.93 March 25, 2005
New Wyrd: Apache::Wyrd::Services::Bot for defining a process
to be invoked and monitoring that process from a browser
window
Added post_process hook for Handler
Replaced MD5 with SHA1 for all internal hashing because of
UTF problems with Digest::MD5
Index now defaults to using concurrency instead of locking in
BerkeleyDB if version 4 or greater is installed
Fixed fatal error in Index when exact matching whole phrases
with a - or + qualifier
Improvements to Index: "reversemaps" and "dirty" options for
quicker updates, "bigfile" option for large pagesize
secondary database for storing wholetext in a separate file,
new tests
Fixed bug where plain options passed to an Input::Set would
be reversed between value and name
Fixed bug where simple attributes composed entirely of
non-word characters could cause parsing errors
Fixed bug where Lookup would have a fatal error on the use of
a joiner
Handler now checks for a set content-type header before
defaulting to text/html
Fixed error reporting problem where unblessed references
could be unintentionally treated as objects
Documentation changes, additional debugging info
0.92 January 13, 2005
SearchParser operator precidence change to AND/OR/NOT/DIFF in
that order
Corrected malformed searches in SearchParser
Changes to Makefile.PL: more checks, compensation for lib
error in Apache::Test 1.19, better reporting of software
versions
0.91 January 9, 2005
Fixed self_path bug where leading slashes were preserved in a
path
Added removal of purged entries' IDs from Index objects. Bug
could allow purged entries to seem extant, but empty
Fixed Makefile's dependency-test problems
0.90 December 16, 2004
Interfaces, standard methods for core modules are now frozen
and should be considered stable
Re-enabled custom responses. Custom responses via
Wyrd->abort() and/or DBL->set_response() will now be
permanent features
Wyrds can now use abort() to hand off the request to another
PerlRequestHandler
Added global flag 'disable' to shut off a given Wyrd and all
it's children
Added file_path attribute, giving the absolute pathname
of the file being served
Minor bug fixes for increased reliability with Index objects
and in SAK
Documentation changes, spelling corrections
0.87 October 31, 2004
Added post-procesing hooks to SQLForm
New sub for SAK
Fixed a problem causing incorrect sorts on some Set Wyrds
Returned handling of initial requests to Apache, and decline only
non-text/html types
Improved error reporting when a Wyrd mistakenly calls an
undefined method
Fixed occasional User object loading problems by explicitly checking
%INC in GetUser interface
0.86 (September 22, 2004)
Minor change in Makefile.PL to allow non-blocking of
automated processes
0.85 (September 22, 2004)
Wyrd Framework now works with CGI, not just libapreq/
Apache::Request
New Cookie object to work with either CGI or libapreq
More interactive testing w/survey
Added auto-preloading of values to SQL Forms
Turned off debugging line in Apache::Wyrd which was
accidentally left on
No longer interpret null documents as a SERVER_ERROR
SAK checks for Setter interface on callers to setter-required
subroutines
0.84 (September 3, 2004)
Default behavior now for Text Datum objects is to trim
whitespace
Established minimum version dependency for XML::Dumper
Put escaping of HTML entities in proper order for text-type
inputs in Apache::Wyrd::Input
Added hook methods to Datum Objects to allow translation of data
from data store to browser and vice versa
Abstracted template creation for Input Wyrds
Fixed broken "rounding" value on Number Wyrds
Wyrds with attributes of value "0" to be interpreted
mathmatically rather than as undef
Wyrds with attributes containing $, %, or @ longer interpret
these as special variables under some conditions
Documentation changes and code cleanup
0.83 (August 19, 2004)
New Wyrds: Automatic graphical charts from Query Wyrds
(Apache::Wyrd::Chart) English-language Numbers
(Apache::Wyrd::Number), File-size (Apache::Wyrd::FileSize), CGI
dump (Apache::Wyrd::ShowParams)
Documentation Changes
Null-byte string termination in DB file bug in
Apache::Wyrd::Services::Key/Auth/LoginServer fix
Better handling of self_path function in Apache::Wyrd::Handler
object
Apache::Wyrd::Services::FileCache object less strict for
non-existent files
Multiple queries in Apache::Wyrd::Lookup object (primarily to
overcome sub-select limitations on some DBAs)
More functions for Apache::Wyrd::Services::SAK
0.82 (March 25, 2004)
Documentation changes
Fix in Apache::Wyrd::Services::Index for failed tests in libdb4+
w/ perl 5.8+
0.81 (March 18, 2004)
Documentation/testing changes, March 18, 2004
0.8 (March 17, 2004)
First public beta