kenaflow Change Log

All notable changes to kenaflow will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[4.0.13] - 2021-02-01

Fixed

  • Memory bug fixed

[4.0.12] - 2021-01-11

Added

[4.0.11] - 2020-12-24

Added

  • New Cmdlets Update-KFExcelFile and Import-KFExcelFile
  • New cmdlets Set-KFObject, Get-KFObject and Remove-KFObject
  • New workflow option PreProcessingScript and PostProcessingScript

[4.0.10] - 2020-12-18

Added

  • New Cmdlet New-KFExcelFile

[4.0.9] - 2020-11-10

Added

  • New option for "additional config file" in _wfconfig.ps1 for serialization control

[4.0.8] - 2020-11-09

Fixed

  • Bugfix in licensing component. License root cert check failed with this previsous installer because the root cert was not installed correctly.

Changed

  • VSCode: 1.5.1.0
  • PnP: 3.26.2010.0 October 2020

[4.0.7] - 2020-09-28

Changed

  • Now a runtime culture can be set in global configuration ("culture"). This culture is by default "en-US" (LCID: 1033). Is is used in debug mode and automatic mode. Before the users culture could be different to the service accounts culture.

Added

  • Pipeline output can know be written to the log using global configuration setting "logOutput". Default: false

[4.0.6] - 2020-09-14

Fixed

  • Fixed bug in storage: wrong passphrase used if additional passphrase is specified.

Added

  • New build branch for diagnostics introduced

[4.0.5] - 2020-07-29

Changed

  • PnP PowerShell update: now version 3.22.2006.2 is included (embedded)
  • Embedded VSCode updated to version 1.47.2
  • New command line parser for performance improvements
  • New native data serializers for performance improvementsj

Fixed

  • Meaningful error message if there are duplicate entries in the State List for State Machine Workflows

[4.0.4] - 2020-01-31

Changed

  • VSCode updated to version 1.43.2
  • PNP updated to 3.19.2003 (March 2020)

[4.0.0] - 2020-01-31

NEW MAJOR VERSION.

Changed

  • As a new prerequisite kenaflow 4.0 now requires .NET Framework 4.8.
  • kenaflow now supports "Agents" for remote PowerShell execution in a highly secure fassion from within workflows

Added

  • kenaflow Agent - See doc.

[3.0.17] - 2019-12-12

Added

  • Now there is a new remote event receiver checker in the main mode. This is enabled by default but can be disabled in the global configuration.

[3.0.16] - 2019-12-11

Fixed

  • There was a (newly introduced) bug in the global remote event receiver program mode.

[3.0.15] - 2019-11-26

Fixed

  • The was a bug when debugging a state machine workflow. When trying to debug a script that was not correctly registered as a state script this causes an execution of all correctly registered state scripts.

[3.0.14] - 2019-09-17

Changed

  • Before this version workflows and (SharePoint state machine workflow) states have been enabled/disabled by using config property Ignore. This was replaced by property Enabled. It is more handy. Ignore will work also but you get a warning in the log.
  • program switch --registersslcertforrer was renamed to --confighttp. The old one will work too.
  • with --confighttp it's now possible to bind the SSL certificate to an IP/port or hostname/port endpoint.
  • In global configuration you can control the RER endpoint much better. you can specify a hostname with rerHost or an IP address with rerHostIp. If nothing is specified the http endpoints are bound to all IP addresses for the given port. If a host is specified with rerHost the http endpoint is bound to this host name with server name indication feature of Windows >= 8 / Windows Server >= 2012. SNI is not available on Windows < 8 / Windows Server < 2012. Currently the OS version is not checked by the engine.

[3.0.13] - 2019-09-17

Added

This version is kind of a major release...

Changed

  • Massive performance improvements. We refactored some thread handling and synchronization code.
  • We included Cronos library (https://github.com/HangfireIO/Cronos/blob/master/LICENSE) for CRON handling and remove our own CRON parser.
  • Package update for several embedded Open Source libraries.
  • Embedded Visual Code update to 1.38

[3.0.12] - 2019-09-08

Changed

  • Now there can be multiple "custom libraries" in _wfconfig.ps1.

[3.0.11] - 2019-08-20

Fixed

  • Bug fix in permission cmdlets: error occurred while resolving user objects to principal objects that are invalid in SharePoint

[3.0.10] - 2019-07-29

Fixed

  • Bug fix in new ClientConnection wrapper (introducted in v3.0.8).

[3.0.9] - 2019-07-26

Fixed

  • Bug fix in email workflow configuration: if an email workflow is not connected to PowerShell it will throw an error during _wfconfig.ps1 analyzation. This bug was introduced with an improvement in v3.0.6

Changed

  • Item recheck for SharePoint list and state machine workflows has been changed. After the configured amount of time the ids of the list items matching the workflow query are reloaded, instead of checking each item before processing it (old machanism).

[3.0.8] - 2019-07-25

Fixed

  • We noticed a strange behaviour of Microsoft.SharePoint.Client.dll - the official client library for .NET for SharePoint. In case of timeouts it's not possible to execute the query again because after the exception the query is empty. Calling ClientContext.Execute() a second time after an exception is not working. So created a wrapper class arount ClientContext to handle this "bug" - as we call it.

Changed

[3.0.7] - 2019-07-24

Fixed

  • During email send it can happen that an exception of type "PropertyOrFieldNotInitializedException" is thrown when evaluating accounts. This has been fixed. But sometimes it can occure if an SharePoint account is damaged.

Changed

  • If a workflow fails to connect to SharePoint multiple times the workflow will stop know.
  • NuGet package updates

Added

  • program switch --ulsviewer to start the ULSViewer with kenaflow live logs from the correct log file location.### Added

[3.0.6] - 2019-07-18

Changed

  • for performance improvements we have changed the way we deliver necessary resources. they are embedded in kenaflow.data.dll. Before we compressed them but thats not so fast and we decided to store resources uncompressed. After some testing it feels good!

[3.0.5] - 2019-07-17

Changed

  • In a SharePoint workflow of type list or state machine with the operation mode "last modified" the kenaflow field is used to persist some information the processing of the current item. In case of an error in the workflow script it could happen that this item is not processed again because the engine saves the processing state in the kenaflow field and skips the item next time. Beginning with kenaflow 3.0.5 we do not update the kenaflow field value in this cases:
    • An script error occured
    • An error was not handled by an error handling script or was re-thrown by the error handling script
    • The item processing was stopped during debug in a PowerShell debugger

Added

  • For performance improvements kenaflow now saves a serialized version of the global configuration file - kenaflow.conf. This file is named kenaflow.ser.conf. It getting updated by the engine if necessary.

[3.0.4] - 2019-07-08

Added

  • New feature for _wfconfig.ps1: With setting RunCondition it is possible to stop a workflow in an early state of processing using the config list. (General Workflow Settings)

Changed

  • for SharePoint state machine workflow there is no longer a need to have a script file for ignored states
  • for SharePoint state machine workflows an error is thrown if a (not ignored) state in the _wfconfig.ps1 file has no entry in the SharePoint state list.
  • for SharePoint state machine now there is a check for invalid characters in the state key, because they state keys are used for file names. If such a character is found - e.g. \ the _wfconfig.ps1 is invalid and the workflow will not execute.

Fixed

  • Bug fix in error handling during debug related to Stop-KFScript.

[3.0.3] - 2019-06-26

Added

  • New feature for Send-KFMail: Parameter -RedirectMailMessage was added to allow you to redirect processed mails in an email workflow. You can overwrite the mail properties by specifying the cmdlet parameters, e.g. -To -Subject -Body -IsHtmlMail -From -CC. If they are not specified in the cmdlet call they are taken from the redirected email.

[3.0.2] - 2019-06-25

Changed

  • Email data in Mail workflows now are System.Net.Mail.MailAddress with DisplayName and Address

Added

  • Email data in mail workflows new contain "Recipients" and "Mail Headers".

Fixed

  • Bug fix in error handling: Errors that occured in the debugger were not visible in the console output window

[3.0.1] - 2019-06-24

Changed

  • In all workflows the config list default values from _wfconfig.ps1 are loaded before the SharEPoint list - if specified - is loaded. The default values are overwritten by the values loaded from the config list.

[3.0.0] - 2019-06-03

Added

  • Remote Event debugging
  • Return data from unstructured remote events
  • Return message from link remote event

Changed

  • Remove some RER settings from _wfconfig.ps1 because they cannot be configured at workflow level (RER Host, RER Use SSL, RER Port)
  • Objects that are written to the PowerShell pipeline that reach kenaflow as last recipient are not written to the file log. This is for performance reasons.
  • Removed "ClientContext" parameter from cmdlets Add-KFPermission, Set-KFPermission, Remove-KFPermission and Update-KFPermission. If an list item is specified using parameter "Item" it's client context is used.
  • Refactored error handling

Fixed

  • Unknown placeholder could lead to long-running workflow scripts.

[3.0.0] - 2018-05-01

Start of implementation of kenaflow 3.0