Improvement/execution and serialization cleanup #289
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR cleans up serialization significantly.
It does NOT change the output of the serialization process, it is simply a reorganization and consolidation of what previously existed. Task data serialization also remains unchanged,
All spec conversions are now specified when creating a workflow spec converter rather than the old mishmash of top-level and localized to task specs, making it much more easily extendable (and hopefully understandable).
It also adds predefined spec configurations for the
spiff
andcamunda
packages.It goes a long way toward realizing my initial vision for the serializer.
It also includes some cleanup of how tasks move to
READY
. Previously, the method documentation fortask_spec._update_hook
indicated that it should returnTrue
if the task should become ready. Instead, tasks automatically becameREADY
, which means that they automatically moved toCOMPLETE
, whether they should run or not. Changing this behavior makes it easier to manage state changes and should cut out some useless state transitions.A few instances of
open
were changed to use a context.Finally, I've removed an unused test and a bunch of unused diagrams from the test data.