Skip to content

Commit

Permalink
feat(sequences): add support for par(allel) steps
Browse files Browse the repository at this point in the history
  • Loading branch information
mbehr1 committed Dec 30, 2024
1 parent 4826eb0 commit 932bb84
Show file tree
Hide file tree
Showing 5 changed files with 13 additions and 12 deletions.
5 changes: 3 additions & 2 deletions docs/fishbone/docs/sequences.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,10 +70,11 @@ attribute | description
--------- | -----------
`name` | Optional: Name of this step. If not provided name of the filter or name of the contained sequence will be used.
`card` | Optional: Cardinality of this step. Defaults to "exactly once/mandatory step" if not provided. Can be any of:<br/>`?`:zero or once, so an optional step,<br/>`*`:any number of times = 0.., so an optional step that can occur not at all or any number of times<br/>`+`:once or multiple times, so a mandatory step that can occur multiple times but at least once
`canCreateNew`| Optional: Determines whether this step can create a new sequence occurrence. Defaults to `true`. Must not be `false` for the first step in a sequence. Set to `false` if this step shall only be checked for a created occurrence from an earlier step. So the `filter`,`sequence` or `alt` will be ignored then.
`filter` | [DLT filter](https://mbehr1.github.io/dlt-logs/docs/filterReference#details) definition. If this filter matches a msg the step is seen as "matching". Either `filter`,`sequence` or `alt` must be provided.
`canCreateNew`| Optional: Determines whether this step can create a new sequence occurrence. Defaults to `true`. Must not be `false` for the first step in a sequence. Set to `false` if this step shall only be checked for a created occurrence from an earlier step. So the `filter`, `sequence`, `alt` or `par` will be ignored then.
`filter` | [DLT filter](https://mbehr1.github.io/dlt-logs/docs/filterReference#details) definition. If this filter matches a msg the step is seen as "matching". Either `filter`, `sequence`, `alt` or `par` must be provided.
`sequence` | A definition of a `sub-sequence`. For this step a full sequence is used. This is useful to either break down a bigger sequence into smaller parts of if this step can be executed multiple times (e.g. with `card:*`) but consists of multiple events/steps. See [example](#example).
`alt`| A definition for a list of alternative steps. The `alt` attribute is an array/list of step definitions. Any `card` or `canCreateNew` attribute will automatically be applied to the alternative steps. For this step to be `ok` exactly one step needs to be `ok`. See [example alt](#example-alternative-steps).
`par`| A definition for a list of parallel steps. The `par` attribute is an array/list of step definitions. Single steps can have their own `card` or `canCreateNew` attribute and the step with `par` as well. For this step to be `ok` all mandatory steps ( `card` not `?,*` ) need to be `ok`. The order in which the parallel steps are fulfilled doesn't matter.
:::important
A step must contain either a filter or a sub-sequence or an alt-list but not more than one!
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -143,7 +143,7 @@
},
"dependencies": {
"@vscode/extension-telemetry": "^0.8.4",
"dlt-logs-utils": "0.8.0",
"dlt-logs-utils": "0.9.0",
"jju": "github:mbehr1/jju#3aa4169df926e99083fdd511d7c20b5bd9ba789f",
"js-yaml": "^4.1.0",
"json5": "2.2.3",
Expand Down
2 changes: 1 addition & 1 deletion src/webview/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
"@testing-library/jest-dom": "^5.16.5",
"@testing-library/react": "^13.4.0",
"@testing-library/user-event": "^14.4.3",
"dlt-logs-utils": "0.8.0",
"dlt-logs-utils": "0.9.0",
"dompurify": "^2.4.0",
"jju": "github:mbehr1/jju#3aa4169df926e99083fdd511d7c20b5bd9ba789f",
"js-yaml": "^4.1.0",
Expand Down
8 changes: 4 additions & 4 deletions src/webview/yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -4259,10 +4259,10 @@ dir-glob@^3.0.1:
dependencies:
path-type "^4.0.0"

dlt-logs-utils@0.8.0:
version "0.8.0"
resolved "https://registry.yarnpkg.com/dlt-logs-utils/-/dlt-logs-utils-0.8.0.tgz#d8f7bc9aa331bbde9462431c3b2f37a464074e73"
integrity sha512-1bu5EQrnWRUdVn/vYmPzuIv2U1TFWlfiUmkHRe+Kn5uEcsrWx35Hd+xxr003CZyiFYhnQTnL2ElQrjswwrq3Og==
dlt-logs-utils@0.9.0:
version "0.9.0"
resolved "https://registry.yarnpkg.com/dlt-logs-utils/-/dlt-logs-utils-0.9.0.tgz#8a82a6e5b31d50eb8b3ae97ce0e794b76a13e84b"
integrity sha512-RlkF5qXv4HJRwv2VbHFD9NauwCBBBMkB81u8CuWCuaLxNqBNbQAuy5sE6L38XlC0JkD11YyImNfw8NFXcr5xTw==

dlv@^1.1.3:
version "1.1.3"
Expand Down
8 changes: 4 additions & 4 deletions yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -2453,10 +2453,10 @@ dir-glob@^3.0.0, dir-glob@^3.0.1:
dependencies:
path-type "^4.0.0"

dlt-logs-utils@0.8.0:
version "0.8.0"
resolved "https://registry.yarnpkg.com/dlt-logs-utils/-/dlt-logs-utils-0.8.0.tgz#d8f7bc9aa331bbde9462431c3b2f37a464074e73"
integrity sha512-1bu5EQrnWRUdVn/vYmPzuIv2U1TFWlfiUmkHRe+Kn5uEcsrWx35Hd+xxr003CZyiFYhnQTnL2ElQrjswwrq3Og==
dlt-logs-utils@0.9.0:
version "0.9.0"
resolved "https://registry.yarnpkg.com/dlt-logs-utils/-/dlt-logs-utils-0.9.0.tgz#8a82a6e5b31d50eb8b3ae97ce0e794b76a13e84b"
integrity sha512-RlkF5qXv4HJRwv2VbHFD9NauwCBBBMkB81u8CuWCuaLxNqBNbQAuy5sE6L38XlC0JkD11YyImNfw8NFXcr5xTw==

doctrine@^3.0.0:
version "3.0.0"
Expand Down

0 comments on commit 932bb84

Please sign in to comment.