Edge Agent Changelog
This file represents all changes to the losant-edge-agent
since it’s initial release. This project adheres to Semantic Versioning.
1.20.0 - 2020-12-15
Added
- Installing bash on alpine images.
- Allen-Bradley Read Node can pass read instruction by payload path.
Changed
- Bacnet Read Node and Bacnet Write Node will now cache the connected clients to be reused on the Edge Agent.
Fixed
Validating hosts when using the following nodes:
- Modbus Read Node
- Modbus Write Node
- Allen-Bradley Read Node
- Allen-Bradley Write Node
- OPC UA Read Node
- OPC UA Write Node.
1.19.2 - 2020-10-21
Changed
- Updated serial connections for the following nodes to allow baud rate to be any positive integer: Serial Trigger Node, Serial Write Node, Modbus Write Node, and Modbus Read Node.
- The Serial Trigger Node has new configuration fields: Delimiter Encoding and Write On Open Encoding.
- Updated the UDP Send Node to enable destination addresses to be broadcast addresses.
- Upgraded underlying libraries for the OPC UA trigger and nodes.
Fixed
- Fixed Serial Write Node issue where the configured write encoding was not used.
1.19.1 - 2020-09-25
Changed
- Idle client and session cleanup behavior for the OPC UA Nodes has been changed to be more robust and consistent.
- Expose new environment variables to control idle cleanup behavior for the OPC UA Nodes.
Fixed
- Fixed race condition on session creation for OPC UA Nodes.
- Fixed race condition on session and client disposal for OPC UA Nodes.
- Fixed issue where the configured Security Policy was not correctly used for OPC UA Nodes.
- Fixed issue where OPC UA subscriptions where not disposed on OPC UA trigger removal.
1.19.0 - 2020-09-08
Added
- Data / Bacnet Read Node
- Data / Bacnet Write Node
Changed
- Serial Trigger new configuration fields: Parity, Stop Bits, Data Bits, RTSCTS.
- Serial Write Node new configuration fields: Parity, Stop Bits, Data Bits, RTSCTS.
Fixed
- Edge agent no longer waits for On Startup workflows to complete before connecting to Losant.
- Modbus Read Node function “Read Device Identification” now works properly over RTU Serial.
- OPC UA Browse Node, OPC UA Call Node, OPC UA Read Node and OPC UA Write Node now handles an Invalid Secure Channel error properly.
- CSV: Encode Node no longer mutates the row entry when passing as an array from the payload.
- Edge agent now attaches signal handlers for SIGINT / SIGTERM before the edge agent is up and running.
1.18.2 - 2020-08-10
Fixed
- Fix issue where under certain circumstances the SQL Node for MySQL would return incorrect results on select statements.
1.18.1 - 2020-07-23
Changed
- Upgraded Node.js to 12.18.0.
- Multiple library dependencies were updated.
- Changed MQTT reconnect interval to be variable, defaults to 30 seconds +/- 15 seconds
1.18.0 - 2020-06-11
Changed
- Added support for payload path configuration for the OPC UA Browse, Call, Read, and Write nodes.
- Upgraded underlying libraries for the OPC UA trigger and nodes.
- Upgraded the underlying libraries for the Tensorflow: Predict node.
- Messages published to the Losant cloud broker by the Device: State and MQTT nodes now check to make sure they are below the maximum allowed size.
- Added suppport for the stream commands to the Redis node.
- Added an optional result path to the Tweet node.
- Added an optional result path to the Slack node.
Fixed
- Fix issue where under certain circumstances the Tensorflow: Predict node could crash the agent.
- Fix issue where host clock changes were not correctly taken into account for the Timer trigger.
- Fix issue where the Tensorflow: Predict node no longer worked on the
arm32
build of the agent. - Fix issue where the HTTP node did not properly obey the
MAX_EXTERNAL_CALL_TIME
environment variable. - Fix some rare timeout race conditions in the Function node.
1.17.0 - 2020-04-28
Added
- Added support for using the Edge Agent as a local MQTT Broker.
Changed
- Added the ability for the MQTT Trigger to trigger on messages published to the local broker.
- Added the ability for the MQTT Node to publish messages to the local broker.
- Added support for the server-side encryption flag to the AWS S3: Put Node.
1.16.0 - 2020-03-18
Added
- Data / Peripheral: Get
Changed
- Upgraded underlying libraries for the OPC UA trigger and nodes.
- Added support for Read Device Identification to the Modbus: Read node.
- Update to Node.js 12.16.1.
- Multiple library dependencies were updated.
Fixed
- Fix issue where under certain circumstances the Run Executable node could crash the agent.
- Fix issue where the Workflow Error trigger could crash the agent when the payload was in certain unexpected formats.
1.15.0 - 2020-02-19
Changed
- Upgraded underlying libraries for the Modbus: Read and Modbus: Write nodes.
- Upgraded underlying libraries for the Serial Write node and the Serial trigger.
- Upgraded underlying libraries for the MongoDB node.
- Added support for an error path to the MongoDB node.
- Added support for replaceOne and aggregate to the MongoDB node.
Fixed
- Re-enable support for TLS 1.0 and 1.1 in the HTTP node (was removed in previous version).
1.14.0 - 2020-01-10
Changed
- Update to Node.js 12.13.0.
- Multiple library dependencies were updated.
- Added support for an error path to the JSON Decode node.
Fixed
- Fix issue where an error in a Function node could crash the agent.
1.13.0 - 2019-11-07
Added
- Trigger / Workflow Error
Changed
- Added support for fractional second timers to the Timer trigger.
- Add new options and timzone support to the Date/Time node.
- Improved performance of the Function node for large payloads.
- Upgraded underlying libraries for the SQL node.
1.12.0 - 2019-10-07
Added
- Trigger / File Tail
Changed
- Added ability to see result information for the Device: State node.
Fixed
- Fix issue where agent would incorrectly think the current architecture would support the TensorFlow: Predict node, and the agent would crash.
1.11.0 - 2019-08-22
Added
- Trigger / Device: Connect
- Trigger / Device: Disconnect
- Trigger / Device: Startup
- Logic / Date / Time
- Data / GCP: Function
Changed
- Changed the default parse method for the Serial trigger to be delimiter instead of byte length.
- Add ability to define data bits, stop bits, and parity for the Modbus: Read and Modbus: Write nodes when connecting with serial.
- Update to Node.js 10.16.0.
- Multiple library dependencies were updated.
Fixed
- Fix issue where unit id was improperly ignored for the Modbus: Read and Modbus: Write nodes when connecting with serial.
- Fix race condition where agent could crash when workflow debugging was enabled and workflows were triggered immediately on startup.
- Fix issue where agent could error when cleaning up stale TensorFlow: Predict models.
1.10.0 - 2019-07-23
Added
- Data / Azure: Function
- Data / TensorFlow: Predict
Changed
- Added support for serial RTU connections for the Modbus: Read node.
- Added support for serial RTU connections for the Modbus: Write node.
- Added support to get all storage values with the Storage: Get Value node.
- Upgraded the underlying libraries for the various OPC UA nodes.
- Workflow storage writes now write to disk asynchronously every few seconds and do not block the running workflow.
- Deprecated
timeSincePath
support for the Throttle node.
Fixed
- Fix typos in OPC UA node error messages.
- Fix issue where the Allen-Bradley Read and Write nodes would behave inconsistently when controller and tag names were the same.
- Fix issue where heavy use of the Throttle node would cause errors.
1.9.1 - 2019-06-13
Fixed
- Fixed race condition introduced in 1.9.0 that would cause the agent to crash on startup in certain circumstances.
1.9.0 - 2019-06-06
Added
- Data / OPC UA: Read
- Triggers / OPC UA
Changed
- Added support for configuration via a payload path for the Modbus: Read node.
- Added support for configuration via a payload path for the Modbus: Write node.
- Added support for FC16 writes in the Modbus: Write node.
- Added SSL support to the Redis node.
- The HTTP node now supports a request body encoding type.
- The String node now supports
pad
. - Update to Node.js 10.15.3.
- Multiple library dependencies were updated.
Fixed
- Fixed Buffer, Date, and ObjectID type inconsistencies when passing data to and from the Function node.
- Fixed issue where multiline statements did not work properly in the SQL node.
- Fixed issue with the Postgres
Interval
data type in results from the SQL node.
1.8.0 - 2019-04-24
Added
- Data / AWS S3: Get
- Data / AWS S3: Put
Changed
- Improved error messages when evaluating expressions with incorrect use of the
!
operator. - Improved error messages for the Generate ID node.
- The HTTP Node now supports a response body encoding type.
Fixed
- Fixed issue where OPC UA nodes errored the workflow instead of adding an error to the payload when the OPC UA call returned an invalid datatype.
- Fixed issue where the
jsonEncode
payload helper behaved incorrectly when used recursively.
1.7.0 - 2019-03-26
Added
- Data / Serial Write
Fixed
- Fixed issue with OPC UA nodes not correctly reusing the same session across workflow runs.
- Fixed issue where workflows allowed invalid program and tag names for the Allen-Bradley nodes.
1.6.1 - 2019-02-28
Fixed
- Fixed a permissions issue with the Docker image which caused filesystem permission errors with the OPC UA nodes.
1.6.0 - 2019-02-27
Added
- Triggers / Serial
- Data / OPC UA: Read
- Data / OPC UA: Write
- Data / OPC UA: Browse
- Logic / CSV: Decode
- Logic / CSV: Encode
Fixed
- Fixed an issue where non-geographic area codes for USA phone numbers were rejected as invalid in the Twilio node.
1.5.0 - 2019-01-31
Added
- Triggers / Redis
- Triggers / Virtual Button
- Data / SQL
Changed
- The HTTP Node now supports making requests with client certificates.
- The HTTP Node now supports using a custom CA.
- Update to Node.js 10.15.0.
- Multiple library dependencies were updated.
Fixed
- Fixed an issue where one workflow could monopolize the process and prevent other workflows from running.
1.4.0 - 2018-12-18
Added
- Data / Allen-Bradley: Read
- Data / Allen-Bradley: Write
1.3.1 - 2018-11-21
Fixed
- Fixed an issue where a mix of successful and failing modbus reads in a single Modbus: Read node would not be represented correctly on the payload.
- Fixed an issue with the MongoDB where certain connection URIs were incorrectly parsed.
1.3.0 - 2018-11-08
Added
- Triggers / File Watch
Changed
- The Modbus: Write Node now has an adjustable timeout.
- The Modbus: Read Node now can be configured to read values as either signed or unsigned, and it has an adjustable timeout.
- Multiple library dependencies were updated.
Fixed
- An issue where using the
currentDateTime
template helper by itself without a format argument would result in a blank string has been fixed. - An issue where the agent would exit without waiting for logs to finish writing has been fixed.
- An issue with timers configured by cron in certain timezones would hang has been fixed.
1.2.5 - 2018-10-04
Fixed
- The File: Read Node now correctly closes the open file handle afterward in all cases.
- When the File: Read Node errors, it no longer overwrites the entire payload with the error message in certain cases.
- The Modbus: Write Node now correctly accepts the full range of a 16 bit unsigned integer for writing to a register.
1.2.4 - 2018-09-28
Changed
- Change the limit on the number of concurrently running nodes to be applied per running workflow instead of globally across all running workflows.
1.2.3 - 2018-09-27
Added
- There are now Alpine based docker images for the Edge Agent.
- The typeof handlebars helper has been added.
Changed
- The Run Executable Node now supports detaching from the executable.
- The Geofence Node now supports drawing custom polygons.
- The Array Node now supports concat.
- Update to Node.js 8.12.0.
Fixed
- The HTTP Node now uses
auto
forecdhCurve
for SSL connections.
1.2.2 - 2018-08-22
Added
- Added a configuration flag to control the queuing of messages while the agent is offline.
- Added the new payload helper
scaleLinear
. - Added the new payload helper
currentDateTime
.
Changed
- Improved Google Big Query and GoogleML Node error handling.
- Clarified certain verbose log messages.
1.2.1 - 2018-08-07
Added
- Can now choose to have no expiration time for the JWT: Create Node.
Changed
- Modbus: Read Node and Modbus: Write Node now default to port 502.
- Improved MongoDB Node error handling.
- A workflow publishing MQTT messages to an invalid or unauthorized topic will no longer cause the agent to disconnect from the Losant Platform.
Fixed
- System clock changes no longer affect the firing of interval timers while the agent is running.
- Debug messages with circular references correctly send to the Losant Platform.
1.2.0 - 2018-06-21
Added
- Data / ServiceNow Node
- Triggers / UDP Trigger
- Outputs / UDP Send Node
- Edge workflow payloads now have environment variables available under the field
agentEnvironment
. - Edge workflow payloads now have the field
isConnectedToLosant
, representing if the agent is currently connected to Losant.
Changed
- Easily set authorization headers for requests on the HTTP Node.
- Can now set the path for a cookie on the HTTP Response Node.
- Improved phone number casting for the Twilio Node.
- Update to Node.js 8.11.3.
1.1.1 - 2018-05-21
Changed
- Improved startup messages.
- The HTTP Node now allows for setting timeouts and capturing network errors.
Fixed
- Improved messages for Slack Node errors.
- Support circular references in debug messages.
1.1.0 - 2018-03-29
Added
- Logic / Generate ID Node
- Logic / Hash Node
Changed
- Improved error messages
- The Validate Payload Node now allows for defining your schema using either a payload path or a JSON template.
Fixed
- Modbus: Read Node’s “Length” property now defaults to a value of 1 if left blank.
- Modbus: Read and Modbus: Write Nodes will now time out if they fail to connect to Modbus.
1.0.0 - 2018-03-08
Added
- Triggers / Timer Trigger
- Triggers / HTTP Request Trigger
- Triggers / MQTT Trigger
- Triggers / Device: Command Trigger
- Data / Modbus: Read Node
- Data / Modbus: Write Node
- Data / File: Read Node
- Data / File: Write Node
- Data / Run Executable Node
- Outputs / HTTP Response Node