- Added lifecycle handlers
- Added history lifecycle manager
- Added note on disabling auto-discovery on boot
- Changed max event size dev server can ingest
- Added initial lifecycle interface to track execution lifecycles of steps
- Fixed tracking of function completions from earlier regresion due to lifecycle changes
- Added support for custom step backoff stragies specified within function code
- Added support for scheduling functions based off of a future
ts
unix-ms timestamp within events - Added support for testing AWS Lambda functions locally without an AWS Gateway
- Added the ability to prevent polling of SDKs for updates. Any function updates must be triggered by re-adding your app via the UI.
- Ensures new functions appear within apps automatically
- Added apps to the dev server. You can now submit multiple app endpoints via the UI, and see apps and their statuses/errors from a tab.
- Fixed open-source rate limit keys
- Fixed expression concatenation with undefined event data
- Fixed open-source rate limit keys
- Fixed expression concatenation with undefined event data
- Added rate limiting to OSS dev server
- Updated function definitions for V2 function config
- Fixed local development concurrency when functions had no IDs specified
- Moved to the same queue and state store as the cloud, implementing:
- Concurrency
- State management
- Partitioned queues
- Also added improved support for history, functions local testing, etc
- Executor and state support for generator functions! This allows you to build multi-step functions using the SDK. Each step is retried individually, and you can sleep, wait for events, etc. within code without writing config.
- Function statuses to function metadata in state
- Cancellations to the executor and fn definitions, allowing you to cancel long- running step functions automatically via events.
- Added OnComplete/OnError callbacks to redis state interface
- Added HTTP signatures to externally called functions (eg. via SDK)
- Modified the state store interface to support generator steps
- Allowed consuming pauses to store data within a function run's state
- Added a simple queueing interface to the
execution
package - Updated the
inmemory
state package to implement the new queue package - Added expression and cron validation when validating a function
- Added distributed waitgroups to the
state.Manager
interface - Added the ability for the
state.Manager
interface to record driver responses directly
- Removed storing output and errors directly from the
state.Manager
interface
- Changed the mechanisms for the dev server and
inngest run
to use distributed waitgroups when running functions, and to use the new queue interface.