reflex (core)
Deprecations
rx._x.memois deprecated in favor ofrx.memo. The old name remains a working alias for now; update imports to userx.memodirectly. (#6517)@rx.memonow expects each parameter to be annotated asrx.Var[...](orrx.RestProp/rx.EventHandler) and the function to declare anrx.Componentorrx.Var[...]return type. Memos that still use bare Python types (e.g.name: str) or omit the return annotation keep working — the values are coerced and a deprecation warning points at the parameters/return type that need explicit annotations — but this fallback will be removed in 1.0. (#6598)
Features
- Added
rx._x.hybrid_property, a property decorator usable on State classes that works like a normal Python property for backend access while also rendering on the frontend at class level. Use the same method for both, or register a separate frontend implementation with@<name>.var. (#3806) - Promoted the component memo system to a first-class
rx.memoAPI. Memo-decorated components now acceptrx.EventHandlerparameters and carry annotated return types so they type-check correctly at call sites. (#6517) - Added
rx.EMPTY_VAR_COMPONENT, an empty-componentrx.Var[rx.Component]sentinel for use as a default on@rx.memochildrenslots (and anyrx.Var[rx.Component]prop) — the component counterpart torx.EMPTY_VAR_STRandrx.EMPTY_VAR_INT. (#6598)
Miscellaneous
- Introduced towncrier-based changelog management. Each PR that changes package source now adds a fragment under the affected package's
news/directory; fragments are assembled intoCHANGELOG.mdat release time. See CONTRIBUTING.md for the full workflow. (#6350) - Removed the "choose templates" option from
reflex init. The interactive prompt now offers only a blank app or the AI builder, and no longer opens the open-source templates page. (#6592)
reflex-base (v0.9.4)
Deprecations
- Component-returning
@rx.memoagain acceptskeywithout anrx.RestProp(with a deprecation warning), sorx.foreachcall sites that set the Reactkeykeep working — this fallback is removed in 1.0. Other base props (id,class_name,style,custom_attrs,ref) and identity fields liketag/librarystill raise; declare anrx.RestPropto forward them.
Features
- Dependency tracking now follows through hybrid properties, so computed vars that read a
hybrid_propertycorrectly recompute when the underlying state vars change. (#3806) - The component memo implementation now lives in
reflex_base.components.memoand is exported asrx.memo. AddedEMPTY_VAR_STRandEMPTY_VAR_INTsentinel vars as memo-friendly defaults. (#6517)
Bug Fixes
- Worked around upstream breakage in recharts and es-toolkit:
es-toolkit@1.46.1was pinned (#6570) then unpinned, with vite bumped to8.0.14(#6571).
Miscellaneous
- Removed the
Templates.CHOOSE_TEMPLATESandTemplates.REFLEX_TEMPLATES_URLconstants, which supported the now-removed open-source templatesreflex initoption. (#6592)
reflex-components-markdown (v0.9.3)
Miscellaneous
- Updated markdown custom-code collection to use the new
rx.memocomponent API instead of the removedCustomComponenthandling. (#6517)
📄 Full reflex-components-markdown changelog