Revision history for Webservice-InterMine 0.94 Monday Sept 13 Revised version of the Webservice client for InterMine 0.94 Webservices 0.9401 Tue Sep 21 10:24:38 BST 2010 * Constraints can be specified with a positional list of parameters * Typos in the Cookbook have been fixed 0.9402 Tue Sep 21 11:33:19 BST 2010 * Removed useless dependency that broke install 0.9403 Tue Sep 21 14:32:34 BST 2010 * Finally removed last reference to IO::String 0.9407 Fri Oct 8 12:43:11 BST 2010 * Readded Perl::Tidy as dependency to fix tests * Changed attribute type in TemplateFactory in response to change in Moose 1.15 0.9408 Mon Oct 11 13:08:42 BST 2010 * Perl::Tidy and YAML::Syck now recommendations. * Changed WriteOutYaml role to dump to string rather than file 0.9412 Thu Nov 25 18:58:14 GMT 2010 * Fixed errors in documentation * Fixed bug with template queries and extra values 0.9500 Wed Feb 2 17:01:19 GMT 2011 * Added support for authenticated requests * Fixed bug in ResultIterator due to loose quotes. Thanks Kim. * Added support for new JSON formats, including inflation * Added bug in Join.pm which was preventing builds. 0.9501 Thu Feb 3 13:36:04 GMT 2011 * Added bug due to mis-matching test counts in acceptance test 0.9600 Fri Feb 18 16:37:38 GMT 2011 * Better verification of version strings, and better coercion of urls * Load queries from local xml * Support for InterMine xml shortcuts (lt for <, etc.) * Tests in support of json rows format 0.9601 Fri Feb 25 16:26:39 GMT 2011 * Bug fixes (including a couple of useless imports) * Queries stringify to their xml representation * More documentation 0.9602 Mon Feb 28 19:25:19 GMT 2011 * Model bug fix required changes to some tests, and one or two places in the path logic 0.9603: Tue Mar 1 15:28:18 GMT 2011 * Now using the TestModel instance - big effect on test run speed 0.9604: Thu Mar 3 17:27:14 GMT 2011 * Removed last use of testmodel_model.xml, and removed it from dist * Changed logic writer to set_logic for consistency * Added command line utilities * Added moose hygiene test, and made it pass * More POD (especially in important roles) * Added size and start (paging) capabilities to Runnable queries 0.9605: Sat 12 Mar 2011 21:25:56 EST * Added Webservice::InterMine::Simple (see benchmarks) There is a compilation penalty inherent in the use of Moose and meta-class introspection. While perfectly acceptable when multiple queries are made withing the same process, for the common use case of a single query, the user may wish for something more performant. In this case, a script that uses Webservice::InterMine::Simple will gain a full magnitude increase in performance (3.5p/s vs 0.33p/s). However, multiple queries within the same process do not see a similar improvement, it being more in the range of 300% (70p/s vs 250p/s). Where speed is important, and more sophisticated features are not required, a Simple service may be appealing * Added support for headers. 0.9700: Wed 2 June 2011 * Changed result parsing logic - uses a JSON format internally for all non trivial parsing to ensure safety of field content and diagnostics of errors. * Enabled lazy iteration of result sets by default. This improves responsiveness for large datasets. * Incorporated iteration into queries as a transparent feature. * Added list services (creation, deletion, renaming, intersection, unions, differences, subtraction, appending) * Added summary methods (show) * Added template and query upload methods 0.9701: Sat 4 June 2011 * Improved template parsing speed by only parsing what is requested * Improved show printing format with more appropriate column sizes, and column guides. 0.9702: Sat 4 June 2011 * Bug-fix release - subclass parsing was broken 0.9702: Sun 5 June 2011 * Bug-fix release - Fixed handling of empty result sets - added test for recently fixed bugs. 0.9703: Sun 5 June 2011 * Bug-fix release - subclass parsing was broken 0.9704: Sun 5 June 2011 * Added possible values service methods. 0.9705: Wed Jun 8 19:34:43 BST 2011 * Avoid hitting url limits by posting where possible 0.9800: Added tokens for authentication 0.9801: Sun Jul 24 00:30:47 BST 2011 Revised cookbook, chapters 1-5 Added cookbook tests (runnable examples) Added more POD Added sugar for constraints and views * Query::select for views * Query::where for constraints * Query::search for constraints + results * Service::resultset for queries Added more aliases, with docs, including * Query::count/get_count Hid internal methods, such as Query::push_constraints (and others) Changed logic behaviour on adding constraint (don't discard current logic completely) 0.9802: Sun Jul 24 23:38:52 BST 2011 * Added all, first and one to runnable queries. * Add Query::path method for making Path objects * Allowed loop constraints to be built with Path objects. 0.9802: Tue Jul 26 16:31:59 BST 2011 * Aligned handling of parsed sortorders with webserver code (tolerates broken sort-orders) 0.9804: Tue Aug 2 20:49:40 BST 2011 * Added ResultRow objects to simplify API (one object for hash and array access). Using Class::InsideOut for memory reasons over MooseX::InsideOut, which leaks. * search and where imply select("*") if the view is empty * Made results default to ResultRows 0.9805: Tue Aug 2 22:12:57 BST 2011 * Switched to JSON::XS for result parsing for performance reasons. 0.9806: Tue Aug 2 23:41:12 BST 2011 * Made select and add_to_select conform accross clients - select now replaces the view 0.9808: Fri Aug 5 12:21:23 BST 2011 * Export Webservice::InterMine methods by default (with options to exclude them) * Deprecated username and password authentication on services that support tokens 0.9809: Mon Aug 8 17:59:19 BST 2011 * Backwards compatibility through to version 3 regarding JSON container formats 0.9810: Bug-fix release 0.9811: Allow ResultRow#to_href to produce either short or long key versions of hrefs 0.9812: Added summarise method to runnable queries to get path summary information 0.9813: Added support for the "status" field on lists, so you know if they need manual updating or not. 0.9814: Fixed bug in simple service 0.9815: Moved simple classes out to own distribution (See: Webservice::InterMine::Simple on CPAN). 0.9816: Added list-tagging support