42.041_2 * Use Class::Accessor::Chained::Fast instead of Class::Accessor in Froody::Implementation. 42.041_1 * Work around broken behaviour in old versions of XML::LibXML. * add json callback hook, and test json response. * Use JSON::XS, not JSON::Syck - we prefer it because it does Unicode correctly among other things. * trim BOM from paramters. * also decode paramter names from utf-8. * catch non-utf8 params better. 42.034 * Run some tests only if certain optional modules are installed. * Better froodydoc (written using JS::Standalone) * Fix irritating pod::coverage syntax glitch * don't 500 on errors in the post_process handler. Specifically, xml shape errors. * Make sure we UTF-8 encode all code paths. * Update the bin/froody script to work with modern calling techniques. * You can now get at the params _after_ argument chjecking, but before dispatch. * All froody servers should support JSON response types. * kill deprecated functionality * kill untested (and therefore unnused, right?) method * Do not load the spec many times. This saves us a _lot_ of time on startup. * Fixing the error shape bug. * Use findvalue() instead of findnodes/nodeValue gave us an observed 20% improvement in loading a particular API module used internally. * Reduced copy overhead on walking the reflection structures * Refactoring extraction of the XML structure by adding another pass, but simplifying the node construction. Also, this fixes a regression where last defined node in the example spec wins, rather than the first, which was the old behaviour. 42.011 * Amend arguments to allow argument type aliases * Fix the documentation for the Walker class. * Strip whitespace in attribute _NAMES_, not attribute values. * Can set timeout for SimpleClient when creating the client * Fixing the way that the XML API is loaded. We should not be holding on to the DOM tree for each example response. * Improved XML api code that constructs examples as it creates the specification. * fix froody error shapes -- they now pass across the wire for reflection * remove XML dom node storage inside of froody * avoid cloning data when not necessary 42.010 * delete undef arguments early instead of trying to encode them * handle the case where tempfile is undef during an upload * unbreak get_methods() (fixes froodydoc etc.) 42.009 * fix UTF8 handling for the standalone server and simpleclient * remove dependency on JSON * (froodydoc binary is currently broken, but the UTF8 fix is important enough to release anyway) 42.008 * added simple (fast) JSON-based client * made passing TODO tests not be TODO tests anymore 42.007 * fixed MANIFEST. 42.006 * validate terse data structures properly whether they are actually passed over http as XML or simply returned directly * add support for returning JSON instead of XML * implement a pluggable architecture, useful for sessions management etc * added froody.reflection.getSpecification * lazy loading of method specs * added pluggable (and chainable) argument validators * added tests for weird edge cases * fixed a few spelling errors in errors NOTE: Froody is still in a bit of flux, as development is driving refactorings and new features. 42.005: * Allow underscores in method names * Allow method names with no dots 42.004: * regenerate dist with latest Module::Build::Kwalitee to allow building with MakeMaker 42.003: * Fix corelist example so it returns serveradmin stuff * added a 'remaining' argument type that holds all non-declared arguments passed to the method * added examples to MANIFEST (oops) 42.002: * Fix broken meta-test (t/t.t) 42.001: * Fix to Build.PL 42: * Initial release