Skip to content

Latest commit

 

History

History
645 lines (375 loc) · 16.3 KB

CHANGELOG.md

File metadata and controls

645 lines (375 loc) · 16.3 KB

Runnerty ChangeLog

Features

  • dependencies: upgrade interpreter-core

Features

  • common: return shared output data on error
  • dependencies: minor dependency updates

Features

  • api: allowed to include a general base path to the endpoint
  • api: silent mode is included in the API log

Bug Fixes

  • api: health api typo

Features

  • api: access to health api allowed without authentication
  • dependencies: minor dependency updates

Bug Fixes

  • api: problems with jwt session generation

Features

  • dependencies: minor dependency updates

Features

  • dependencies: minor dependency updates

Features

  • dependencies: minor dependency updates

Bug Fixes

  • common: in iterable chains only the first value of the input was accessible

Features

  • dependencies: minor dependency updates

Features

  • dependencies: minor dependency updates

Features

  • dependencies: minor dependency updates

Features

  • common: by default the environment variables will be read from the .env file in the root directory if it exists or from the file specified by cli in env-file
  • cli: new option --env-file, for reading environment variables from the path of the specified file
  • interpreter: new @GENV and @ENV functions for reading environment variables

Bug Fixes

  • common: fixed empty values comparison in process dependencies (depends_process)

Features

  • dependencies: minor dependency updates

Bug Fixes

  • common: force refresh of custom_values on each execution of a chain
  • interpreter: problems with the replacement of environment variables

Features

  • dependencies: minor dependency updates

Bug Fixes

  • common: correction in loading the default configuration values of chais notifications from the config.json file
  • common: correction of a problem that could cause a chain to never finish when retries are used (module-core upgrade)
  • common: improved module loading error control

Features

  • dependencies: minor dependency updates

Bug Fixes

  • api: the force execution api did not send a response

Bug Fixes

  • common: correction in the loading of default configuration values from config.json file

Tests

  • common: specific test for load testing and overwriting of default values

Bug Fixes

  • common: downgrade of the ajv dependency due to compatibility issues with "better-ajv-errors", caused error when trying to display a clearer description of schema compliance errors

Features

  • common: new default configuration for all chains and processes (config.json/defaults)
  • common: a new possibility is enabled to execute a specific process (-fp) and indicate whether its dependencies should be executed (-fpd) or not
  • common: graceful shutdown, wait for the end of the chains that are running
  • common: takes over functionalities of runnerty-cli
  • dependencies: minor dependency updates

Bug Fixes

  • common: in some cases a process with complex dependencies that should not be executed could cause the chain to never finish

Tests

Features

  • common: new chain value exposed CHAIN_QUEUE
  • telemetry: new chain properties to disable "remoteControl" and sync of "events" and "chain"
  • telemetry: new meta chain properties to set extra_id
  • dependencies: minor dependency updates
  • common: code cleaning and refactoring

Bug Fixes

  • common: chain never ends when a process dependent on another that triggers the execution of an iterable chain (with errors) is ignored
  • common: in complex circumstances a chain with failed processes might not finish
  • common: minor problems with the use of queues
  • telemetry: send ended_at on process error

Tests

  • common: chains dependences test
  • common: process dependent on iterable failed ignored with end of chain

Bug Fixes

  • telemetry: error blocking plan synchronization in runnerty.io when starting connection

Features

  • telemetry: sending of chain namespace and meta
  • telemetry: If runnerty.io connection is enabled, by default it will wait for a connection before running to avoid loss of events, a timeout can also be established. Configurable from config.json/runnerty.io/ waitForConnection and connectionTimeout
  • dependencies: minor dependency updates

Features

  • common: improvements in the behavior of dependencies between chains
  • common: the definition of Runnerty modules is externalized to a package module-core
  • common: output_fiter: new process property that allows filtering of output_data and extra_output (JSON)
  • common: output_order: new process property that allows sort of output_data and extra_output (JSON)
  • common: improvements in reading and parsing calendars (ics)
  • common: loading calendars by url (ics)
  • common: code cleaning and refactoring
  • common: new metadata fields for chains
  • cli: when we force the execution of a chain only this one will be executed and its dependents, the triggers of the chains will be ignored.
  • cli: error message is displayed when we indicate a non-existent chainId when forcing an execution
  • cli: new namespace functionality that allows/disallows to indicate the namespace of the chains to be loaded or ignored
  • interpreter: Added new UUID functions
  • interpreter: Added new HTML ESCAPE/UNESCAPE functions
  • telemetry: sending of plan in case of reconnection
  • dependencies: minor dependency updates

Breaking Changes

Chain dependencies

  • When depends_chains/chain_id is defined in a determined chain, the dependent chain will be executed as soon as the depended one finishes.
  • When depends_chains/chain_id+process_id is defined in a determined chain, that dependent chain will be executed as soon as the defined process finishes. The depended chain will wait until the dependent chain finishes. This behaviour is similar to how iterable chains works on Runnerty v2.
  • On the other hand, Iterable chains definition is not altered at all. Iterable chains in Runnerty v2 are fully compatible with Runnerty v3.

Forced chain execution (CLI)

  • When we force the execution of a chain that chain is inmediately executed. Triggers will be ignored; if that chain have any dependent chain, they will not be executed.
  • New parameter -fd (force dependents) when we force execution. When we force the execution of a chain with arg -fd it will also force the execution of its dependent chains.
  • Error message is displayed when we indicate a non-existent chainId while forcing an execution.

Modules

  • Runnerty v3.x is not compatible with versions of modules lower than v3.x

Features

  • common: the option of iterating over an array of strings is enabled, indicating in "input" the name of the variable instead of the mapping object

Features

  • dependencies: minor dependency updates

Bug Fixes

  • common: windows incompatibility fix related to node_modules access

Features

  • dependencies: minor dependency updates

Bug Fixes

  • telemetry: sending of plan in case of reconnection

Tests

  • common: schemas update

Features

  • telemetry: sending the plan to runnerty.io is enabled
  • dependencies: minor dependency updates
  • servers: request limiter available
  • common: code cleaning and refactoring

Bug Fixes

  • common: an error in the writing of the output log can cause the closing of the application

Features

  • common: code cleaning and refactoring
  • dependencies: minor dependency updates

Bug Fixes

  • common: inclusion of childs_chains_status in process cleaning function

Features

  • telemetry: bidirectional communication with runnerty.io via websockets
  • telemetry: ready to be able to run and kill chains remotely from runnerty.io
  • servers: basic auth and apikey authentication available
  • common: replacement of global by runtime class
  • common: maximum size limitation of objects for the interpreter
  • common: code cleaning and refactoring
  • dependencies: minor dependency updates

Bug Fixes

  • common: incorrect notification of failed chain before the end of all processes when running in parallel

Bug Fixes

  • api: minor fixes

Features

  • common: code cleaning and refactoring
  • dependencies: minor dependency updates

Bug Fixes

  • common: fix write output issue

Features

  • common: code cleaning and refactoring
  • dependencies: minor dependency updates

Bug Fixes

  • common: error when trying to load a plan with links chain_path
  • common: minor fixes

Tests

  • common: new plan links chain_path

Features

  • common: minor fixes

Features

  • common: code cleaning and refactoring
  • common: minor fixes
  • dependencies: minor dependency updates

Bug Fixes

  • common: fix typo bug

Features

  • common: code cleaning and refactoring
  • common: modified default behavior, when a process fails the chain fails
  • common: new default properties for processes docs
  • common: improvements in handling chains retries docs
  • dependencies: minor dependency updates
  • dependencies: replaced request by axios module
  • interpreter: new date interpreter functions (DATEFORMAT and LASTDAY) docs

Bug Fixes

  • common: end of chain ignoring retry in progress
  • common: minor fixes

Tests

  • common: new retry test
  • common: new customsvalues and inputvalues test

Features

  • dependencies: minor dependency updates

Bug Fixes

  • common: avoid abortion in uncaughtException

Features

  • common: error reporting improvement
  • common: add --end parameter
  • telemetry: runnerty.io communication debug
  • telemetry: add execution version on access communication
  • telemetry: historicize iter-serie process executionId
  • dependencies: minor dependency updates
  • dependencies: ajv 6 JSON Schema draft-07 compatibility

Tests

  • common: update tests to match changes and generate new

Bug Fixes

  • common: wrong notification order
  • common: incorrect log messages visualization
  • common: complex prod depen. could cause double exec
  • telemetry: async pre-death communication resolved

Features

  • telemetry: beta telemetry service runnerty.io!
  • common: standard Node.js module resolution paths
  • common: it is possible to indicate the plan object in config.json
  • common: capture of errors uncaught in executors
  • dependencies: minor dependency updates

Tests

  • common: new general tests

Bug Fixes

  • common: correction of errors related to the end of iterable strings in case of process error
  • interpreter: path&urlParse avoid excep. without value

Features

  • servers: the use of servers is allowed directly without creating a custom trigger
  • servers: more information about servers is included docs
  • dependencies minor dependency updates

Features

  • cors: API cors config is enabled docs
  • telemetry alpha telemetry service runnerty.io
  • dependencies update

Bug Fixes

  • queues: there may be overlapping chains where no queue indicates

Tests

  • common: fix general tests
  • common: fix general tests

Tests

  • common: more general tests added to the project

Bug Fixes

  • triggers: trim function remove line terminator characters

Bug Fixes

  • common: errors in the execution of an iterable processes can cause looped

Bug Fixes

  • common: CPU 100% usage trying interpret functions of the config

Features

  • triggers: servers support. docs
  • interpreter: string function GVQ/GETVALUEQUOTED and GV allows quote param. docs
  • common: input/custom_values with more than one object level are converted to key/value. docs
  • common: add config crypto to set password crypto algorithm
  • common: support Node.js 10.x

Bug Fixes

  • common: typo
  • common: replaceWithSmart (recursiveObjectInterpreter) ignore global_values when objParams is empty
  • common: ws api custom_value wrong variable setting
  • common: the functions of the config file are not interpreted
  • common: output_share: overwriting config.global_values instead of config_raw
  • common: ws customs_values overwrite default customs_values
  • common: dynamic recalculate global_values to allow the use dates (@GETDATE)
  • cli: input_values param ignored in command line force execution mode
  • interpreter: stringifying errors as empty strings
  • interpreter: error uncatched
  • interpreter: logger removed from interpreter-functions throw errors
  • triggers: compatibility in triggers with input_values that are not array
  • triggers: triggers send chain information to the interpreter
  • triggers: triggers send chain information to the interpreter
  • tests: paths of the config test modules modified for global node_modules support

Features

  • interpreter: string function quote to quote given string. docs
  • interpreter: string function stringify to JSON stringify given object. docs

Bug Fixes

  • interpreter: resolution of GetValue functions as values docs

Bug Fixes

  • interpreter: remove float casting docs

Bug Fixes

  • triggers: inaccessible trigger output docs

Features

  • triggers: triggers plugins to fire a chain execution. docs
  • interpreter: functions that can used in the plan. docs
  • queues: add queues to avoid parallel executions and to establish priorities. docs
  • cli: add force execution and remote plan/config. docs

Tests

  • common: add general tests to the project

Bug Fixes

  • common: several bug fixes