April 13th, 2026
The latest news releases from the Qwik team
April 13th, 2026
April 13th, 2026
Minor Changes
- ✨ the
notFoundexports of the router factory functions no longer do anything, because therouterexports handle not-found routes. (by @wmertens in #8534)
Patch Changes
🐞🩹 intermittent Deno build failure in apps that use async tasks (by @Varixo in #8550)
🐞🩹 fix an SPA routing bug where using browser back/forward after a manual refresh could change the URL without rerendering the page (by @Varixo in #8544)
🐞🩹 image imports
foo.png?jsxare now more robust (by @wmertens in #8533)Updated dependencies [
ccb7579,06d82e0,7ae409d,e3eaa4e,7ae409d,06d82e0,d4def9d,fe3c4e2]:
April 13th, 2026
April 13th, 2026
Minor Changes
✨ Qwik now supports
passive:eventnamemarkers for JSX event handlers. Use them with matchingon*$/document:on*$/window:on*$listeners when you want passive browser listeners for events liketouchstart,touchmove, orscroll. (by @Varixo in #8523)✨ The optimizer now supports inline
@qwik-disable-next-linehints, allowing you to suppress specific diagnostics for the next line when needed, such aspreventdefault-passive-check. (by @Varixo in #8523)
April 13th, 2026
Major Changes
- BREAKING (beta only): the
intervaloption ofuseAsync$has been renamed toexpires, and a newpolloption has been added to control whether the async function should be automatically re-run when it expires. (by @wmertens in #8552)
Minor Changes
✨ Qwik now supports
passive:eventnamemarkers for JSX event handlers. Use them with matchingon*$/document:on*$/window:on*$listeners when you want passive browser listeners for events liketouchstart,touchmove, orscroll. (by @Varixo in #8523)✨ add
Temporalserialization support (by @FloezeTv in #8495)✨ The optimizer now supports inline
@qwik-disable-next-linehints, allowing you to suppress specific diagnostics for the next line when needed, such aspreventdefault-passive-check. (by @Varixo in #8523)✨ Qwik now supports
capture:eventnamemarkers for JSX event handlers. Use them when you want run event in capture phase (by @Varixo in #8525)
Patch Changes
Add
allowStaleoption to AsyncSignal and routeLoader$. Whenfalse, invalidation clears the (by @wmertens in #8537) previous value so reads suspend instead of returning stale data.🐞🩹 run
preventdefault:*,stoppropagation:*, andsync$event work synchronously in the loader for all nested events (by @Varixo in #8540)🐞🩹 preserve browser event execution order for async lazy-loaded handlers (by @Varixo in #8540)