Pre-release Build #2
Pre-releaseBreaking changes from 0.12.x:
1. The schema for validation errors is changing
When argmts passed in to a machine fail runtime validation, the Error instance that is passed through the error exit has a different format. Instead of the machine ID (which may or may not have always existed), it provides a reference to the machine instance. This allows other toolchain modules like machine-as-action and machine-as-script to identify which machine caused a validation error. (Previously, it was impossible to tell whether a validation error came from the top-level machine being run, or from any deeply nested machine that happened to be called within its implementation)
2. Unrecognized callbacks are no longer allowed
Unrecognized (aka "bonus") callbacks passed in to .exec() at runtime are no longer passed through to the machine's fn in the exits argument. This was never documented behavior, and it never should have worked this way, but just in case your app or machines were relying on it, we're including it in this major version instead of releasing it in a patch.