-
v0.18.0 protected Release: v0.18.0
## Summary of Changes - Sequence has a new home: https://gitlab.com/sequence - The namespace has been updated from `Reductech.Sequence` to `Sequence` ### Steps - Added `EntityValidateRelations` - Added `Flatten` ### Other Changes Major performance improvements. For more details see the changelog: https://gitlab.com/sequence/core/-/blob/v0.18.0/CHANGELOG.md
-
v0.17.0 protected Release: v0.17.0
## Summary of Changes - `EntityFormat` step now accepts arrays as input - Using empty blocks with `StringInterpolate` no longer throws errors - Updated `JsonSchema.Net` to `3.2.0` For more details see the changelog: https://gitlab.com/reductech/sequence/core/-/blob/v0.17.0/CHANGELOG.md
-
v0.15.0 protected Release: v0.15.0
## Summary of Changes ### Sequence Configuration Language - You can now use `"""` to indicate a multiline string with no escapes. ```scl """ { "Json" : "Value" } """ ``` - Entity Properties can now be accessed using dot notation ```scl - <entity> = (foo: (bar: 1, baz: 2)) - Print <entity>.foo.bar # Returns: 1 ``` - Added code completion for entity property access by dot notation - Entity type references now optionally have an associated schema which can be set by the steps which create entities and checked by steps which use those entities. - SCL like `(foo: 1)['bar']` now results in an error when the SCL is validated, rather than when it's running For more details see the changelog: https://gitlab.com/reductech/sequence/core/-/blob/v0.15.0/CHANGELOG.md
-
v0.14.0 protected Release: v0.14.0
## Summary of Changes ### Steps - `Transform` can now round doubles to integers. This can be controlled with the `RoundingPrecision` parameter. - Added `Round` Step to round doubles - `GenerateDocumentation` now takes a `RootUri` parameter. ### Sequence Configuration Language Steps whose outputs can be determined at compile time can now be folded into constants. ### Core SDK - Step Parameters can now have any number of `[MetadataAttribute]` which allows you to designate custom metadata about the step. - Added an extension method to get all step parameters and values in a sequence which will allow users to check the values being passed to marked parameters in a compiled sequence. - Environment Variables can now be injected to sequences before compiling / running. - Added a new `Reductech.Sequence.LanguageServer` project with Language Server features For more details see the changelog: https://gitlab.com/reductech/sequence/core/-/blob/v0.14.0/CHANGELOG.md
-
v0.13.0 protected Release: v0.13.0
EDR is now Sequence. The following has changed: - The GitLab group has moved to https://gitlab.com/reductech/sequence - The root namespace is now `Reductech.Sequence` - The documentation site has moved to https://sequence.sh Everything else is still the same - automation, simplified. The project has now been updated to use .NET 6. ## Summary of Changes ### Core SDK - Step input and output types now have a base type of `ISCLObject` - This enforces that all inputs and outputs are one of the following types: - Unit - SCLNull - StringStream - SCLBool - SCLInt - SCLDouble - SCLDateTime - SCLEnum - SCLOneOf of ISCLObjects - Array of ISCLObject ### Steps - `ArrayMap` can now map elements of one type to elements of another type. For more details see the changelog: https://gitlab.com/reductech/sequence/core/-/blob/v0.13.0/CHANGELOG.md
-
v0.11.0 protected Release: v0.11.0
## Summary of Changes ### Sequence Configuration Language - Added new lambda syntax for steps which take a function as a parameter. Instead of writing `Foreach [1,2,3] (Log <x>) <x>` you now write `Foreach [1,2,3] (<x> => Log <x>) ` or `Foreach [1,2,3] (Log <>) ` - Allowed Step Parameters to be Discriminated Unions. This allows a parameter to be e.g. either a name or an Id. - When accessing entity properties you can now use a dot to indicate a nested property Instead of `(a:(b: 1))['a']['b']` you can now write `(a:(b: 1))['a.b']` For more details see the changelog: https://gitlab.com/reductech/edr/core/-/blob/v0.11.0/CHANGELOG.md
-
v0.10.0 protected Release: v0.10.0
## Summary of Changes ### Steps - Added `ArrayGroupBy` Step ### Sequence Configuration Language - Added the automatic variable `<>` which can be used instead of `Entity` ### Logging and Monitoring - Added `WithCheckLogLevel` extension method to `ICaseThatExecutes` allowing the verbosity of the test log messages to be changed For more details see the changelog: https://gitlab.com/reductech/edr/core/-/blob/v0.10.0/CHANGELOG.md
-
v0.9.0 protected Release: v0.9.0
### Steps - Added - `EvaluateArray` - `RunSCL` Steps that that work with the file system and with structured data have been moved to separate connectors: - Moved to the [FileSystem](https://gitlab.com/reductech/edr/connectors/filesystem) Connector - `DirectoryCopy` - `DirectoryExists` - `DirectoryMove` - `CreateDirectory` - `FileCopy` - `FileExists` - `FileExtract` - `FileMove` - `FileRead` - `FileWrite` - `DeleteItem` - `PathCombine` - Moved to the [StructuredData](https://gitlab.com/reductech/edr/connectors/structureddata) Connector - `FromConcordance` - `FromCSV` - `FromIDX` - `FromJson` - `FromJsonArray` - `ToConcordance` - `ToCSV` - `ToIDX` - `ToJson` - `ToJsonArray` ### Core SDK - `ToJson` now formats output by default. This can be overriden by setting `FormatOutput` to false - `ToJsonArray` now formats output by default. This can be overriden by setting `FormatOutput` to false ### Connector Updates - Connectors can be dynamically loaded at runtime - Connector Settings now support plugins ### Data Interchange Format - `Schema.AllowExtraProperties` changed to `Schema.ExtraProperties` which can take `Allow`, `Warn`, `Remove`, or `Fail` For more details see the changelog: https://gitlab.com/reductech/edr/core/-/blob/v0.9.0/CHANGELOG.md
-
v0.6.0 protected Release: v0.6.0
### Steps - Added - GetConnectorInformation ### Sequence Configuration Language - It's now possible to interpolate strings using the `$` prefix ```scala - <First> = "John" - <Last> = "Jones" - <Name> = $"{<First>} {<Last>}" ``` - `EntityGetValue` can now retrieve nested entities For more details see the changelog: https://gitlab.com/reductech/edr/core/-/blob/v0.6.0/CHANGELOG.md
-
v0.5.0 protected Release: v0.5.0
### Steps - `FromJson` now parses Json object and returns an `Entity` - `ToJson` now takes an `Entity` and returns a Json object string - Created `FromJsonArray` - Created `ToJsonArray` - [ Added `Hash` Step ](https://docs.reductech.io/edr/steps/Core/Hash.html) - Added DirectoryMove - Added DirectoryCopy - Added FileMove - Added FileCopy - Added `EntityCombine` step - `Print` renamed to `Log` - Added `Print` which writes an entity to the console - Created `ReadStandardIn` step that returns a StringStream of data from the standard input - Created `WriteStandardOut` step that writes a StringStream to standard output - [ Added `RegexMatch` Step ](https://docs.reductech.io/edr/steps/Core/RegexMatch.html) - [ Added `RegexReplace` Step ](https://docs.reductech.io/edr/steps/Core/RegexReplace.html) ### Sequence Configuration Language - All operators can now be chained - `+` operator can now be used for `Sum`, `StringConcatenate`, or `EntityCombine` - The `+` operator now combines entities - Added `Sum`, `Product`, `Subtract`, `Divide`, `Modulo` `Power` - Added `And`, `Or` - Added `Equals`, `NotEquals`, `LessThan`, `LessThanOrEqual`, `GreaterThan`, `GreaterThanOrEqual` - Removed `ApplyMathOperator`, `ApplyBooleanOperator`, `Compare` - Removed `with` keyword - Strings can be used to name entity properties in SCL - Commas are now optional in SCL arrays - Enabled nested entity access in SCL e.g. `<entity>['Property.Name.Multiplicity']` - Added Array access operator to SCL: `[1,2,3][0]` - Added Entity access operator to SCL: `(Property: 'Value')['Property']` ### Core SDK - Added `DateInputFormat` and `DateOutputFormat` to `SchemaProperty` - Added `DefaultErrorBehaviour` to `Schema` - Added `ErrorBehaviour` to `SchemaProperty ` - `IStateMonad` now implements `IAsyncDisposable` not `IDisposable` - `IStateMonad` `GetVariable` and `SetVariable` are now Async - External context abstracted using https://github.com/PawelGerr/Thinktecture.Abstractions ### Logging and Monitoring - Logged messages now have the following properties: `Message` `MessageParams` `StepName` `Location` `SequenceInfo` - Additional log messages added at the start and end of each sequence For more details see the changelog: https://gitlab.com/reductech/edr/core/-/blob/v0.5.0/CHANGELOG.md
-
v0.4.0 protected Release: v0.4.0
Major rework of the language and data streaming features so lots of **breaking changes** including: - Moved from YAML-based configuration to a custom configuration language called SCL (Sequence Configuration Language) - Using a custom ANTLR grammar to parse the configuration language - The new language is similar to YAML - Consolidated entity streams, lists and array into a single datatype - `Array<T>` - There are no longer separate Steps for arrays and entity streams (e.g. `ForEach`, `IsEmpty`, `Length`) - Consolidated strings and data streams into a single datatype - `StringStream` - Update to .NET 5.0 - Reworked logging and exceptions - More frequent and more consistent logging - Added step scopes - Added localization features - Added support for appending custom metadata - Added steps for JSON and IDX (not breaking) - Documentation has now been moved to https://docs.reductech.io For more details see the changelog: https://gitlab.com/reductech/edr/core/-/blob/v0.4.0/CHANGELOG.md
-
v0.3.0 protected Release: v0.3.0
Breaking changes - Step and argument names have changed to make them more consistent. Step names now follow the convention of _NamespaceAction_, e.g. `ArrayLength`, `ArraySort`, `EntityMap`, `EntityStreamSort`. - Added Entities and EntityStreams along with Linq style methods to manipulate them. - Added Entity Schemas to allow conversion between different - Step state is now scoped and disposable - Added Steps to convert `EntityStream` to/from concordance and CSV For more details see the changelog: https://gitlab.com/reductech/edr/core/-/blob/v0.3.0/CHANGELOG.md