new barcodes function; re-arranged get_object_by_param() to accept simpler 2-element args (then didn't use it for barcodes function); bugfix to genomics xml validator & generator scripts - method of camelcasing section_name altered original array after 1st cycle of loop; EQA samples flagged as ST for billing; extended xsd for cancer dataset
replaced loading of Local::DBIxSimple in individual model classes with single loading in Model::Base; renamed DBIxSimple::get_meta to dbix_get_meta to avoid clash with Model::Base::get_meta (now renamed get_meta_data); fixed report.t - new method report_diff replaced comment
logic to determine whether to set request status to complete considers result summary datetime relative to authorisation datetime; replaced io unlink() with system unlink in render_pdf - was giving occasional errors; replaced M::Base::does_authorisation method with Moose attr to save repeat db queries; fixed oversight in _archive_report_details() causing history log to record amended specimen_date at every authorisation; gallium_data.pl checks for comment field to prevent fatal error; more report_status.t tests to test for status change on delayed result summary entry
fixed missing specimen error - caused by submission of 'BMAT.PB' - RDBO 0.80 truncated at 4chars; moved specimen split regex to Local::Utils & added validation of specimen length; fixed ErrorHandler error in assuming exists - didn't for devel server; added Sphinx search facility - switchable on/off via config; changed bcl1 to cyclinD1 in gallium trial data feed
MAJOR CHANGE: moved sql_lib() from M::Base to new M::Role::Query; moved all M::R::QueryFormatter methods into M::R::Query; removed sql_lib() from ScriptHelpers - using new M::Roles::Query method; removed lims_dbix() from M::Base - now loaded via M::Role::DBIxSimple on demand; moved get_sql_with_constraint() from M::R::DBIxSimple to M::R::Query; method gets dbh from lims_db not lims_dbix in M::LabSection::update_lab_sections() & M::Specimen::update_specimens(); added elements() to Local::QueryLibrary
refactored L::Utils::get_yaml to only require args needed for construction of path/to/yaml_dir/filename to remove duplication from components requiring a get_yaml_file() method (Controllers, Model & ScriptHelpers)
moved some LIMS::Base methods out to LIMS::Role::Base; new cron mail_reports.pl - shares some methods from LIMS; exempted http requests to Chart methods from authentication to allow mail_reports.pl script to generate charts