what stackpulse tracks
XState releases from GitHub
StackPulse watches XState release notes and keeps the original source link close to every summary.
Actor-based state management and orchestration StackPulse turns upstream changelogs into scannable summaries with risky changes, deprecations, migration notes, and source links.
what stackpulse tracks
StackPulse watches XState release notes and keeps the original source link close to every summary.
upgrade risk
Risky changes are separated from normal feature notes so you can scan upgrade impact before changing production dependencies.
migration notes
Migration steps and recommended actions are only shown when the upstream release notes support them.
Fixed type inference for selector context parameters in createStoreLogic when using input functions.
Developers using createStoreLogic with input functions and selectors are affected.
Update to version 4.2.1 if encountering type inference issues with selector context parameters.
This alpha release enhances type checking for machines with schemas.output declarations, ensuring top-level final state output values match the machine output type.
Developers using final state output values with schemas.output are affected.
Review and update final state output values to match the declared machine output type.
This patch release exports helper types used by public machine types to avoid inferred machine types referring to internal declaration paths.
Users who utilize typed system registries in their machines will benefit from this change.
This release introduces minor improvements to type inference and setup helper exports, along with patch changes enhancing event schema handling and invoke callback typing.
Developers using XState for type-heavy workflows or custom setups may benefit from these changes.
This alpha release modifies done transitions to receive `output` directly in callback arguments.
Developers using done transitions in XState are affected.
Update callback arguments to directly access `output` when using done transitions.
This alpha release introduces a system registry for typed actor management and allows shallow context patches in static transition configs.
Developers using XState actors and needing typed actor management or context patching in transition configs will be affected.
Consider using the new system registry feature for typed actor management if you work with complex actor systems.
This alpha release introduces minor typing improvements for state transition functions and simplifies target returns when context compatibility is maintained.
Developers using XState's transition functions will need to update their type definitions if upgrading.
Review your state machine implementations for any transition functions that use 'enq' or return targets.
This alpha release introduces a breaking change for transition configurations, requiring explicit target objects instead of string shorthand.
Users relying on string shorthand for transition configurations will be affected.
Update transition configurations to use explicit target objects as shown in the example.
This alpha release introduces changes to actor logic, ensuring effects are returned from both regular and initial transitions. Hand-written actor logic must now return `[snapshot, effects]` from `transition(...)` and provide `initialTransition(...)` for creating the initial `[snapshot, effects]` tuple.
Developers using hand-written actor logic are affected by the changes in transition and initial transition handling.
Update hand-written actor logic to return `[snapshot, effects]` from `transition(...)` and provide `initialTransition(...)` for creating the initial `[snapshot, effects]` tuple.
This release introduces significant changes to actor logic, including the ability to return effects from transitions and initial transitions, and adds explicit typing for child actor refs. Built-in executable effects are now easier to inspect declaratively.
Developers using hand-written actor logic or relying on `fromStore(...)` effects will need to update their code to accommodate the new changes.
Update actor logic to return `[snapshot, effects]` from `transition(...)` and provide `initialTransition(...)` for creating the initial `[snapshot, effects]` tuple.
This release fixes a bug in the event descriptor handling logic, ensuring that wildcard event descriptors are considered as fallbacks when exact descriptor guards fail.
Developers using exact and wildcard event descriptors in state machines may be affected by this bug fix.
Review state machines using exact and wildcard event descriptors to ensure expected behavior.
This alpha release exposes machine schemas publicly and improves function serialization in guards, actions, and delays.
Fixed a bug where invoked actors received outdated context values. Now, actors receive the updated context after a transition.
Developers using invoked actors with context-dependent inputs are affected.
Update to ensure actors receive the correct context values.
This release adds a new helper function to check if a value is an atom, which is useful for implementing reactive programming patterns.
Users implementing reactive programming patterns with atoms will benefit from the new helper function.
Update to the latest version to use the new `isAtom` helper function.
This alpha release updates the type signature of the `compare` function in `useSelector` to no longer include undefined for the previous value, and updates dependencies to @xstate/store@4.3.0-alpha.0.
Affects developers using the `compare` function in `useSelector` with TypeScript and relying on the previous value being possibly undefined.
Review and update any `compare` function implementations in `useSelector` to handle the new strict typing.
This alpha release introduces type improvements for the send function in useMachine and useActor hooks, aligning with actorRef.send's overloads. It includes multiple dependency updates for XState.
Developers using useMachine or useActor hooks in XState with Svelte or Vue may need to check their send function type usage.
Review type signatures of send functions in your codebase when upgrading.
This alpha release introduces significant changes to XState, including a new approach to handling invoked and spawned actors, removal of deprecated APIs, and a shift to inline functions for actions, guards, and transitions. The release also introduces a new schema-based typing system for machines.
Developers using XState will need to update their code to accommodate the new inline function approach for actions, guards, and transitions, as well as the new schema-based typing system.
Review the breaking changes and migration steps provided in the release notes to update your XState implementation.
This release primarily focuses on improving type safety for the `send` function in `@xstate/vue` and `@xstate/svelte`, aligning it with the actor's own `send` signature.
Developers using `@xstate/vue` or `@xstate/svelte` with TypeScript will benefit from improved type safety.
This release enhances the `enq.effect(...)` API by providing an enqueue object with `trigger`, `send`, and `getSnapshot` methods, enabling easier event dispatching and state access without requiring a direct reference to the store.
Developers using `enq.effect(...)` in XState stores will benefit from enhanced event dispatching and state access capabilities.
Update to version 4.2.0 to take advantage of the new `trigger`, `send`, and `getSnapshot` methods in `enq.effect(...)`.
This patch release fixes an issue related to children snapshot union pollution for typed invoke in the core module.
Developers using typed invoke in XState may be affected by the children snapshot union pollution issue.
Update to version 5.32.1 to resolve the issue.