Hover over the log to see the full commit message.
Clone
19e0ba5 (HEAD -> master) 20/06/2025 07:30:36
by
rajUtils - fixed syntax error, and removed signatures - not supported natively on Perl 5.34
989477a16/06/2025 07:03:19
by
rajUtils - new method fileopen()
a89fa4528/05/2025 10:26:57
by
rajUtils - new method get_random_element()
6236cc023/04/2025 22:42:58
by
RAJSeleniumRemoteDriver.pm - set defined window-size; added pageLoadStrategy opt to try and speed up page retrieval (probably doesn't)
00b25df22/04/2025 08:56:45
by
RAJSeleniumRemoteDriver.pm - add logfile
9b5ceca19/04/2025 18:30:49
by
RAJSeleniumRemoteDriver - provide ability to pass debug and disable_images settings at object construction
d6b557e19/04/2025 09:15:10
by
RAJnew Selenium Remote Driver class
4d53bc504/04/2025 08:38:52
by
RAJmove dbix.t and its sqlite db to main Local/t dir
29881cd04/04/2025 08:29:59
by
RAJLocal::DBIx::Simple - add map() method to return hash or hashref, amend row() method to return array or arrayref; fixed dbix.t map_arrays() call, should be requesting hash not array
72fdb0f07/03/2025 12:37:03
by
RAJUtils: added pbkdf key to Crypt::CBC->new to silence warnings about deprecated encryption method
7db47e407/03/2025 09:45:49
by
RAJadd fatal error if DB::dbix() called without hashref arg
512c30a07/03/2025 09:42:37
by
RAJMerge remote-tracking branch 'origin/master'
805899c14/11/2023 15:03:35
by
RAJSendGrid need to return 'true'; new Email.m, legacy email class, replaced by SendGrid.pm
2c323ed14/11/2023 12:14:43
by
RAJskip 1 failing test - map_arrays() returns different order
cda72d214/11/2023 11:33:45
by
RAJCryptLEComplete::complete needs to return 'true'
053942717/05/2023 08:10:43
by
RAJMerge remote-tracking branch 'origin/master'
cd3b82f02/04/2023 09:57:50
by
rajChange SendGrid.pm line-endings to unix, no content changes
a985d8017/03/2023 23:47:49
by
RAJfix write-excel.t - default xlscat separator no longer passes is() test using current Spreadsheet::Read, using defined ~ separator now; add .gitignore
5e7672617/03/2023 23:47:49
by
rajfix write-excel.t - default xlscat separator no longer passes is() test using current Spreadsheet::Read, using defined ~ separator now; add .gitignore
bb37d3117/03/2023 15:24:04
by
RAJ* generate manual send() method to troubleshoot Email::SendGrid::V3 internals * validation of message data elements * default email address slurp() requires separate chomp() after switch to perl 5.36.0 - no idea why
aa37c1c10/03/2023 14:47:29
by
rajadd default self address; add sandbox and footer options to message object
85a1df609/03/2023 23:40:36
by
rajfirst version of SendGrid
80d7b6204/03/2023 16:50:39
by
rajnew file to test Perl servers (Gazelle, Starman, etc)
e2c5c3c24/05/2021 22:29:08
by
RAJnew List::Compare functions; replaced Carp::Always with Carp::Always::Color
d512a4722/05/2021 09:19:31
by
RAJnew package loader classes
d7138e509/05/2021 11:48:54
by
rajnew SSHTunnel class for remote DB & SCP access
41763bd01/04/2021 15:16:09
by
rajnew function to get and return db name in use
8162cc031/03/2021 10:37:39
by
rajfix for mysql gone away error in Dancer2::Session::DBIx - TODO: try to use app model's DBIx
54b5e0d17/03/2021 12:18:45
by
raj* update D2::Session::DBIx dbix builder to current syntax * new column in sessions table for time session created
692240d16/03/2021 12:34:01
by
raj* add debug output to CSRF - requires D2 log level core or debug * moved pagination() from RWGPS app to make it universibly usable
0cc70ab14/03/2021 18:16:57
by
rajnew functions to convert date to human readable form & function to handle git log
2a5e5a811/03/2021 15:37:17
by
rajreversed previous change, better to escape col spaceslocally in caller when col names known to have spaces, rather than global
d39acb511/03/2021 11:58:45
by
rajmodify get_cols() to handle spaces in col name
944a5ad18/02/2021 12:20:06
by
RAJreplace Modern::Perl with use perl <version>
926448a05/11/2019 23:22:02
by
RAJImprove output from dump_query
523352723/08/2019 09:11:30
by
RAJadapt DB::get_tables for SQLite; new Utils method to convert date string to DateTime
5ff9cca03/06/2019 11:49:21
by
RAJnew DB function get_tables
a9cb37830/05/2019 10:18:34
by
RAJQueryLog - adjust white-space handling, don't split on commas within brackets, INNER/LEFT OUTER require grouping before space
c91b6ec17/05/2019 12:51:32
by
RAJbugfix - single-quotes need manual escape in query formatter
d5e4e0917/05/2019 12:30:27
by
RAJQueryLogger * improve documentation * move some global vars to constants * SQL::Abstract::Tree or manual query formatting configured by env param * simplify coloured console output using Term::ANSIColor::Simple * add LIMIT to keywords for manual formatting
f8b6a7815/05/2019 16:33:34
by
RAJQueryLog - apply new-lines to comma-seperated list only for SELECT vars (makes mess of INSERT's); add 'VALUES' to list of keywords for formatting
d5d8e2015/05/2019 14:06:32
by
RAJMerge branch 'sql-abstract-tree-formatted-query'
c84277815/05/2019 14:05:53
by
RAJQueryLog - substitute placeholders in query * output still formatted manually since SQL::Abstract::Tree new-lines ORDER BY inside a GROUP_CONCAT, and doesn't separate SELECT fields into new-lines
7db392724/04/2019 11:54:01
by
RAJremove DBIx::Simple::OO - not required, parent support ->object(s) anyway
68ac7f323/04/2019 17:50:22
by
RAJmethod for external calls to _replace_omniholder; replace self->{dbd} with self->dbh->{Driver}{Name}
71b9ff327/03/2019 13:13:42
by
RAJadapt Local::DB::_mysql_connection_params to handle remote db connection using username & password
52963f006/03/2019 11:08:39
by
RAJnew function is_email_valid()
e3e20c805/03/2019 17:36:31
by
RAJchange 'SHOW COLUMNS' data type from hash to array so lc_columns() setting doesn't matter (ie hash key = field or Field)
4ee753201/03/2019 15:23:10
by
RAJnew pluralise function - Lingua::EN::Inflect PL()
3db609a22/01/2019 09:59:12
by
RAJMerge remote-tracking branch 'origin/master'
6223fdd22/01/2019 09:58:19
by
RAJLocal::Dancer2::CSRF - original D2 plugin doesn't work well with D2::Plugin::Deferred
5b09b2717/01/2019 12:23:22
by
rajTests for Spreadsheet libs, required by xlscat
cf564b707/01/2019 12:35:16
by
RAJNew CryptLEComplete class for SSL certificate renewals; minor doc updates and corrections to DBIx-Simple-Result and dbix.t
b14956315/10/2018 15:38:59
by
RAJFix consequence of previous update to support multiple worksheets default worksheet 'sheet1' no longer set becuase worksheet() method not called now have to set manually inside _write_xlsx_row() if ->worksheet_name() not set in calling script
58a729d12/10/2018 11:33:09
by
RAJMerge branch 'hotfix'
d5a3f3f12/10/2018 11:33:00
by
RAJTake worksheet name into variable for debugging purposes
a25e40225/07/2018 13:29:12
by
RAJMerge branch 'excel-writer-xlsx-multiple-worksheets'
a89caf325/07/2018 13:28:51
by
RAJLocal::WriteExcel - adapt to support multiple worksheets
c2c627d04/05/2018 16:22:48
by
RAJcomment debug info
7322d9710/04/2018 15:37:41
by
RAJbugfix to WriteExcel row_counter - only worked up to A9, then B0, B1, etc
9bcea7717/03/2018 12:34:49
by
rajMerge branch 'master' of https://hmds.org.uk/git/LocalLib
bae97d217/03/2018 12:34:13
by
rajenclose DateTime::Format function in eval block to catch invalid dates (triggered by genomics_xml invalid date)
6fb903821/02/2018 22:16:56
by
RAJ* move filename/filetype validation to earlier in object creation cycle, from BUILD to _build_filetype, as empty args to object causing undef value errors in _build_filetype before finally dying in BUILD block * replaced try/catch with Test::Exception throws_ok
cba631221/02/2018 15:57:34
by
RAJ* replace global xlsx_data var with class attribute to prevent data persistence when object created again in same scope * new attribute to prevent close() being called more than once on xlsx_data string, though probably no harm if it does * new test file
227a6e020/02/2018 22:50:20
by
RAJWriteExcel - xl_object to 'rwp' and _set_xl_object to set it
bee842920/02/2018 20:49:57
by
RAJmoved worksheet_name validation from 'around' to trigger; moved filetype-from-filename regex capture from BUILD block to filetype builder
e4d1c3819/02/2018 11:37:36
by
RAJWriteExcel: * set worksheet name * use scalar filehandle for xlsx filetype to allow both data return and file save functions * seperate _write_xlsx_row() function to handle write_row and write_bold_row * row counter starts at A1, auto-increments as expected (A2, A3, etc) * changes should allow call to both data() & save() for both filetypes
f93139018/02/2018 16:10:55
by
RAJfirst draft of Local::WriteExcel - creates xls or xlsx file using Spreadsheet::WriteExcel::Simple syntax * can save file or return data for xls file but only save xlsx file
13a67dc21/01/2018 20:48:08
by
RAJmove arg to dump query from sam_query() to dbix constructor
d5a94c019/01/2018 11:38:22
by
RAJdocument retention of NO_QUERY_LOGS for legacy scripts * rearrange order for Komodo source-tree
51cf60a04/10/2017 11:21:12
by
RAJadapt _mysql_connection_params() to accept optional port arg
b474b5d17/02/2017 12:44:14
by
RAJbugfix - taking vars from @_ does not remove them so 'shift' gets 1st element
ba3e99715/02/2017 15:08:52
by
RAJmoved DB::dump_query to Local::Utils for sharing with LIMS::Local::DBIxSimple; new DB method insert_or_update_if_greater()
1e772c730/01/2017 13:54:52
by
RAJupdate_or_insert method for Local::DB - uses SQL::Abstract insert() and appends ON DUPLICATE KEY
e87c97330/01/2017 11:24:21
by
RAJnew function to map_hashes but with addition of index key as part of hashref - ie does not delete index key unlike map_hashes()
ae2fdb610/12/2016 15:38:19
by
RAJQueryLogger uses D2-app /logs dir, even if script called from elsewhere via .cgi script - was creating logfiles relative to calling script, so cgi-bin needed symlink to logs dir
a48d9f625/11/2016 12:08:13
by
RAJnew methods dump_query, clone and math_sum; added DBIx::Simple::OO to allow ->objects call
f2b935718/05/2016 22:29:36
by
RAJpatched _autoinflate_dates() to handle zero values (ie false but still defined)
2feb71e18/05/2016 14:48:46
by
RAJnew methods DB::get_cols & InsertMulti::insert_ignore_multi & InsertMulti::update_or_insert_multi
5cf7da911/05/2016 16:38:09
by
RAJnew SQL::Abstract plugin to provide insert_multi function - will be ported to role; more functions for Utils
4f2f55924/02/2016 17:17:52
by
RAJsetting $Local:DB::NO_LOG_QUERIES true was preventing sql trace output in QueryLogger::log_query so moved it to QueryLogger to take effect on dispatcher log() command; new Utils::datetime_to_string method + test file
479fc3217/02/2016 13:03:53
by
RAJnew vars ::DB::NO_QUERY_LOGS to suppress query logging & ::DBIx::Simple::Result::STRINGIFY_DATETIME to return datetime string rather than object
c9ae99216/02/2016 10:03:00
by
RAJadded row(), column() & value() methods to DBIx::Simple::Result & DBIx::Lite::ResultSet
d2825eb15/02/2016 09:25:22
by
RAJadded hash() and array() to Local::DBIx::Simple::Result to return in list or scalar context - original only returned scalar ref, and to inflate dates in array()
75f6c9409/02/2016 22:45:49
by
RAJcorrected error in single-apostrope escape
bb8c5ce09/02/2016 16:57:54
by
RAJnew XMLSimple to add single-apostrophe escaping lacking in original
4358fb125/01/2016 14:47:18
by
RAJadded new functions in Utils; corrected syntax in debugging section of DB
fb1d04315/10/2015 09:34:09
by
RAJcapitalises group_concat; combined group & order for formatting rule
68c99b011/10/2015 10:46:43
by
RAJPaginator::paginate returns args with html appended
150d0fe10/10/2015 14:15:48
by
RAJnew DB::count() sub; Paginator takes siblings arg; QueryLogger formats LIMIT & OFFSET in sql
a21a24b09/10/2015 16:36:49
by
RAJnew Paginator; added sha_digest to Utils
edbb340 (querylog-test) 31/08/2015 10:56:48
by
RAJadded dispatcher for test environment
edc628e25/08/2015 11:48:07
by
RAJreplaced Log::Dispatch::File::Rolling with Log::Dispatch::File for deployment since LDF::Rolling creates redundant file and doesn't handle file permissions properly, and file rotation handled by cron anyway; added today() to Local::Utils
ff1201c24/08/2015 16:21:17
by
RAJmoves all query logging functions to QueryLogger
cead34f24/08/2015 14:33:51
by
RAJbranched for query-log testing
94ea90317/08/2015 11:45:59
by
RAJadded method to Local::DB to auto-inflate date(time)s, can be suppressed using var NO_AUTO_DATE_INFLATION set in calling class
75d730f28/07/2015 21:35:13
by
RAJremoved debugging info from stdout; tidy up; began refactoring DB::query() for QueryLogger, but have problem with fastcgi process finding location of app logs dir
bdc33a824/07/2015 17:03:53
by
RAJmysql connection debug info
63389be24/07/2015 12:00:27
by
RAJadded time_now() to Utils