Releases: BuaBook/kdb-common
kdb-common-1.1.0-rtm.1
This release includes the following changes to the following libraries - log, tz, ns and cron.
Logging (log)
- The logger has been made ~10% more performant (within
.log.msg) - The library now supports multiple loggers within the
.log.loggersnamespace and configured within.log.cfg.loggers - Two additional loggers are provided:
-logSyslog: syslog style logging for use with journald-logJson: JSON logging for use with log capture applications
Timezone Conversion (tz)
A new timezone conversion library has been added, based on the code described at https://code.kx.com/v2/kb/timezones/.
Namespace Management (ns)
.ns.protectedExecute- now supports returning the stacktrace if function errors (see below).ns.getFunctionArguments- now throwsIllegalArgumentExceptionif the object passed is not a function (or function reference)
.ns.protectedExecute
This function has been updated to support returning the stacktrace when a function execution fails - see the ns.q wiki page for more information.
In version kdb-common-1.0.4-rtm.1 and earlier, this function returned a list of (isError; errorMsg). It now returns a dictionary. However the order of the dictionary has been maintained such that running first and last will return isError and errorMsg respectively.
Cron Timer (cron)
Support for capturing the stacktrace output from .ns.protectedExecute when a timer function fails was added. However, this has added some non-upward compatible changes:
.cron.cfg.jobId (NUC)
This variable has been renamed to .cron.jobId
.cron.status (NUC)
- The first row of the table is now an empty row with a generic null element for the
resultcolumn - The results are no longer enlisted before being added to the table
- The result when success is
0bis now a dictionary (based on the related changes to.ns.protectedExecute)
Full Changelog
909aa56 ns: Throw exception in .ns.getFunctionArguments if object (or reference) is not a function 380f6b3 cron: Protect against symbol reference that isn't a function 429ea87 cron: Refactor to support backtrace output from '.ns.protectedExecute' 9a14a39 README: Add contributors 207af9b Add wiki documentation links to all q files 5b23601 ns: Add support for capturing stacktrace on error with '.ns.protectedExecute' [#18] 78cdd76 file: Add new .file.isCompressed 157a020 tz: Add q-doc for all timezone functionality [#8] 8e17fda Add new Timezone conversion library [#8] 9c4c2cb log: Add JSON logger and ensure .log.setLogger calls .log.setLevel [#14] 496efcc log: Add support for multiple loggers (.log.loggers.*) [#14] ff36867 log: ~10% performance improvement to .log.msg kdb-common-1.0.4-rtm.1
This release includes the following changes:
- New Slack notification library (
slack.q) - Added
.util.gcgarbage collection library - Can suppress password logging when using
.ipc.connect*
Full git log since last release:
1d8695a ipc: Allow password logging to be suppressed (replaced with "*") [#15] 990236d mail: Add missing library dependency - ns [#10] 17e1fa5 ipc: Differentiate between TCP and UDS [#2] a42e909 slack: Update to use .Q.hp instead of cURL 9ac4c7b util: Add .util.gc garbage collection wrapper 7edf1d2 Add new Slack notification library 49a2f1e os: Re-arrange functions in file kdb-common-1.0.3-rtm.1
kdb-common-1.0.2-rtm.1
This release includes some changes to the mail library, specifically to allow multiple mail commands to be specified.
Version 1.0.1
This release has the following changes:
- Updated the license to Apache License 2.0
- New Event Management library (
event.q) - New Inter-process Communication library (
ipc.q) - Logging performance improvements