Change8

Migrating to Qwik @qwik.dev/core@2.0.0-beta.30

Version @qwik.dev/core@2.0.0-beta.30 introduces 1 breaking change. This guide details how to update your code.

Released: 3/26/2026

1
Breaking Changes
1
Migration Steps
5
Affected Symbols

⚠️ Check Your Code

If you use any of these symbols, you need to read this guide:

useTaskuseVisibleTaskuseStyles$useSerializer$Each

Breaking Changes

Issue #1

useTask() and useVisibleTask() now await their cleanup functions before running the next invocation. To prevent this awaiting behavior, do not return a cleanup Promise from these functions (and ensure errors are handled manually).

Migration Steps

  1. 1
    Review usages of useTask() and useVisibleTask(). If you were returning a cleanup function that returned a Promise, and you do not want the next invocation to wait for it, modify the cleanup function to return nothing or a non-Promise value.

Release Summary

This release introduces the Each component and splits the optimizer into a separate package to reduce download size. A major breaking change affects useTask/useVisibleTask cleanup functions, which now await cleanup Promises by default.

Need More Details?

View the full release notes and all changes for Qwik @qwik.dev/core@2.0.0-beta.30.

View Full Changelog