NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
crates.io · #4823 most downloaded on crates.io
view macro for the Leptos web framework.
Last release 3 days ago
05 Oct 2026
Ships fairly regularly
a new release about every 5 weeks
Rarely documented
notes for 7 of the last 60 stable releases
6 versions withdrawn
withdrawn after publishing
4 years old
133 releases · first in 2022
One column per quarter.
Nothing published for this version
A wide variety of semver-breaking changes that probably won't affect user code.
This is a beta release from the leptos_0.9 branch, to give people an opportunity to start playing around.
I have not yet written up a full changelog but you can find the PR at #4522
Notable changes:
lazy feature: Lazy-loading/code-splitting is now gated behind a lazy flag on the leptos crate. This saves binary size for anyone who's not using lazy-loading; if you are, just enable the feature.serde_qs 1.0: we've migrated to the 1.0 series of releases for our default server-function input encoding (form URL data). This should reduce the requirement for #[server(default)] and similar workarounds for empty collections.on:toggle is now typed as a ToggleEvent rather than plain Eventlet (foo, set_foo) = signal(42); set_foo(13); foo() should work on both stable and nightly)Fn() traits directly on nightly; instead, on both stable and nightly, they deref to a dyn Fn(). This means that you can call signals as functions on either nightly or stable. If you had props that took impl Fn() -> T previously (and could receive a signal or a closure on nightly), you can now take impl SignalOrFn<Output = T>. This is probably the biggest change in 0.9, so let me know if you encounter any issues.Many of the changes in this release are intended to smooth out various APIs and don't seem to cause significant breakage, but please let me know if they do. This is not intended to require meaningful migration; if you find that it's causing you to need to make significant changes to your code, please share some examples and we'll see if we can minimize the breakage.
ToggleEvent for on:toggle. by @azriel91 in #4362_with_handle suffix from functions by @mondeja in #4388render_app_async_stream_with_context method by @alexisfontaine in #4309serde_qs 1.0 (see #4014) by @gbj in #4237main into leptos_0.9 by @metatoaster in #4624.into_reactive_value conversion for signal-function types on nightly (closes #4608) by @gbj in #4617(). by @metatoaster in #4653server_fn_macro to specify a default client type by @darakreqo in #4594reactive_graph by @sabify in #4734router by @sabify in #4731router_macro by @sabify in #4732leptos_macro by @sabify in #4738oco_ref performance bugs by @sabify in #4744hydration_context by @sabify in #4747leptos_server correctness bugs by @sabify in #4753any_error by @sabify in #4756any_spawner correctness bugs by @sabify in #4757Url::origin() returns the real request origin by @sabify in #4760auto live reload protocol option by @veigaribo in #4265leptos by @sabify in #4763server_fn by @sabify in #4770OwnedView (closes #4769) by @gbj in #4771reactive_stores and reactive_stores_macro by @sabify in #4735server_fn by @sabify in #4765MaybeProp fn deref by @gbj in #4779leptos_dom correctness bugs by @sabify in #4754tachys by @sabify in #4764Nonce::from_value for externally-supplied CSP nonces by @anagrius in #4786#[prop(marker)] option by @Baptistemontan in #4774lazy_preload macro by @edmondj in #4729leptos_macro docs by @gbj in #4811<textarea> children to prevent XSS" by @gbj in #4819<For/> keys correctly in non-async HTML rendering (see #4780, #4833) by @gbj in #4834Full Changelog: v0.9.0-alpha...v0.9.0-beta
A wide variety of semver-breaking changes that probably won't affect user code.
This is an alpha release from the leptos_0.9 branch, to give people an opportunity to start playing around.
I have not yet written up a full changelog but you can find the PR at #4522
Notable changes:
lazy feature: Lazy-loading/code-splitting is now gated behind a lazy flag on the leptos crate. This saves binary size for anyone who's not using lazy-loading; if you are, just enable the feature.serde_qs 1.0: we've migrated to the 1.0 series of releases for our default server-function input encoding (form URL data). This should reduce the requirement for #[server(default)] and similar workarounds for empty collections.on:toggle is now typed as a ToggleEvent rather than plain Eventlet (foo, set_foo) = signal(42); set_foo(13); foo() should work on both stable and nightly)impl Fn() -> T and you pass it a Signal<T> you may need to dereference it (foo=*signal rather than foo=signal). Let us know if there are any more noticeable breakages here.Again, this is a bit of a "canary": many of the changes in this release are intended to smooth out various APIs and don't seem to cause significant breakage, but please let me know if they do. This is not intended to require meaningful migration; if you find that it's causing you to need to make significant changes to your code, please share some examples and we'll see if we can minimize the breakage.
A patch release, mostly of bugfixes.
A patch release, mostly of bugfixes.
Note: one of these includes a behavior change, which is that the primary server function encodings now respect the Axum/Actix request body size limits, rather than ignoring them. If you are accustomed to sending very large data (for example, a POST request > 2mb) via server functions, you may need to increase the request body size limit via Actix PayloadConfig or Axum DefaultBodyLimit (see docs for each server framework.)
Multipart data (file uploads) are not affected.
OwnedView (closes #4769) by @gbj in #4771Nonce::from_value for externally-supplied CSP nonces by @anagrius in #4786#[prop(marker)] option by @Baptistemontan in #4774lazy_preload macro by @edmondj in #4729leptos_macro docs by @gbj in #4811Full Changelog: v0.8.18...v0.8.19
doc( leptos_config ): Improve docs readability; Add # Errors sections by @DanikVitek in #4593
leptos_config): Improve docs readability; Add # Errors sections by @DanikVitek in #4593leptos_config): Implement LeptosOptions::css_path by @DanikVitek in #4592Action by using WeakOwner (closes #4602) by @gbj in #4603css_path with that moved to css_file_path to better reflect/compliment underlying use cases by @metatoaster in #4615Patch for Store where store attribute is being used. by @mskorkowski in #4620Store cleanup items by @gbj in #4645either_of): Add Either! convenience macro by @DanikVitek in #4627wasm_split_helpers version by @gbj in #4684Full Changelog: v0.8.17...v0.8.18
feat: add bitcode 's serde integration codec by @rpfontana in #4585
bitcode 's serde integration codec by @rpfontana in #4585::std in either_of by @DanikVitek in #4583Full Changelog: v0.8.16...v0.8.17
fix: do not show Transition fallback on 2nd change if 1st change resolved synchronously (closes #4492 ) by @gbj in #4495
IntoAnyAttribute in macro expansion from #4481 by @gbj in #4500AnyViewWithAttrs (closes #4512) by @gbj in #4513reactive_stores by @gbj in #4516'static return annotation for <A/> (closes #4525) by @gbj in #4531docs.rs by @ahlinc in #4526parking_lot (cf. #4410) by @gbj in #4520Websocket protocol respect custom server URL by @adoyle0 in #4538file_and_error_handler_with_context into tower services by @metatoaster in #4528cargo-nextest with --locked by @gbj in #4560linear-map dependency by @alexisfontaine in #4563transparent to Show/ShowLet to work around #4470 by @gbj in #4519_ to fix inert SVG use_ elements by @pheki in #4569AttributeValue for MaybeProp by @QaidVoid in #4575Deserialize for Signal<T> (closes #4533) by @gbj in #4576Full Changelog: v0.8.15...v0.8.16
ShowLet now accepts static Option values. by @maccesch in #4467
ShowLet now accepts static Option values. by @maccesch in #4467IntoAnyAttribute when using erase_components by @ToxicMushroom in #4481Full Changelog: v0.8.14...v0.8.15
Resupport From<Fn() -> T> for Signal<T> , ArcSignal<T> , Callback<T, _> and similar by @zakstucke in #4273
From<Fn() -> T> for Signal<T>, ArcSignal<T>, Callback<T, _> and similar by @zakstucke in #4273Full Changelog: v0.8.13...v0.8.14
add homepage to leptos cargo metadata by @tswast in #4417
Debug trait bound on tuples PossibleRouteMatch implementation by @alexisfontaine in #4428SendWrapper errors on server (closes #4432, #4402) by @gbj in #4433Full Changelog: v0.8.12...v0.8.13
Replace vendored wasm-split with out-of-repository version by @WorldSEnder in #4369
Full Changelog: v0.8.11...v0.8.12
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →