fix(deps): update all dependencies #21
Reference in New Issue
Block a user
No description provided.
Delete Branch "renovate/all"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This PR contains the following updates:
1.0.86->1.0.1001.0.0->1.0.40.4.38->0.4.420.6.12->0.8.140.6.12->0.8.70.6.12->0.8.70.6.12->0.8.50.6.12->0.8.100.4.22->0.4.291.0.120->1.0.1455.0.0->5.1.01->21.38.0->1.48.00.4.13->0.5.00.5.2->0.6.01.9.1->1.19.00.2.100->0.2.106Release Notes
dtolnay/anyhow (anyhow)
v1.0.100Compare Source
bail!,ensure!,anyhow!(#426)v1.0.99Compare Source
v1.0.98Compare Source
self.into_boxed_dyn_error()andself.reallocate_into_boxed_dyn_error_without_backtrace()methods for anyhow::Error (#415)v1.0.97Compare Source
v1.0.96Compare Source
v1.0.95Compare Source
Error::from_boxed(#401, #402)v1.0.94Compare Source
v1.0.93Compare Source
thiserrorv2v1.0.92Compare Source
&raw constand&raw mutsyntax insideensure!(#390)v1.0.91Compare Source
v1.0.90Compare Source
v1.0.89Compare Source
UnwindSafeandRefUnwindSafeimpl consistently available between versions of Rust newer and older than 1.72 (#386)v1.0.88Compare Source
v1.0.87Compare Source
Error::newandError::chain, in no-std mode on Rust 1.81+ (#383)rust-lang/cfg-if (cfg-if)
v1.0.4Compare Source
cfg(true)andcfg(false)(#99)v1.0.3Compare Source
@__identityrule."v1.0.2Compare Source
@__identityrule.v1.0.1Compare Source
compiler-builtinsfromrustc-dep-of-stddependencieschronotope/chrono (chrono)
v0.4.42: 0.4.42Compare Source
What's Changed
wasm32-linuxsupport by @arjunr2 in https://github.com/chronotope/chrono/pull/1707tzdataparsing by @ldm0 in https://github.com/chronotope/chrono/pull/1679?Sizedbound to related methods ofDelayedFormat::write_toby @Huliiiiii in https://github.com/chronotope/chrono/pull/1721from_timestamp_secsmethod toDateTimeby @jasonaowen in https://github.com/chronotope/chrono/pull/1719v0.4.41Compare Source
What's Changed
subsec_microsandsubsec_millismethods toTimeDeltaby @ggoetz in https://github.com/chronotope/chrono/pull/1668NaiveDateTime::UNIX_EPOCHby @robertbastian in https://github.com/chronotope/chrono/pull/1670as_seconds_f32andas_seconds_f64forTimeDeltaby @ggoetz in https://github.com/chronotope/chrono/pull/1671num_days_in_monthmethod toDateliketrait by @aslilac in https://github.com/chronotope/chrono/pull/1673WeekdaySet, a collection ofWeekdaythat isCopyby @Kinrany in https://github.com/chronotope/chrono/pull/1676v0.4.40: 0.4.40Compare Source
What's Changed
write_toforDelayedFormatby @tugtugtug in https://github.com/chronotope/chrono/pull/1654v0.4.39: 0.4.39Compare Source
What's Changed
from_timestamp_nanos()by @sgoll in https://github.com/chronotope/chrono/pull/1591NaiveWeekmethods by @bragov4ik in https://github.com/chronotope/chrono/pull/1600PartialEq,Eq,Hash,CopyandCloneonNaiveWeekby @DSeeLP in https://github.com/chronotope/chrono/pull/1618#[inline]tonum_daysby @CommanderStorm in https://github.com/chronotope/chrono/pull/1627leptos-rs/leptos (leptos)
v0.8.14Compare Source
What's Changed
From<Fn() -> T> for Signal<T>,ArcSignal<T>,Callback<T, _>and similar by @zakstucke in https://github.com/leptos-rs/leptos/pull/4273Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.8.13...v0.8.14
v0.8.13Compare Source
What's Changed
Debugtrait bound on tuplesPossibleRouteMatchimplementation by @alexisfontaine in https://github.com/leptos-rs/leptos/pull/4428SendWrappererrors on server (closes #4432, #4402) by @gbj in https://github.com/leptos-rs/leptos/pull/4433New Contributors
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.8.12...v0.8.13
v0.8.12Compare Source
What's Changed
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.8.11...v0.8.12
v0.8.11Compare Source
What's Changed
MaybePropReadUntrackedimplementation. by @Buzzec in https://github.com/leptos-rs/leptos/pull/4360scrollendevent to view macro by @adoyle0 in https://github.com/leptos-rs/leptos/pull/4379NodeRefby implementingIsDisposedby @gbj in https://github.com/leptos-rs/leptos/pull/4367debug_loganddebug_errorin logging module by @mahdi739 in https://github.com/leptos-rs/leptos/pull/4335effect::immediate::batchby @QuartzLibrary in https://github.com/leptos-rs/leptos/pull/4344server_fnfeature propagation by @arpadav in https://github.com/leptos-rs/leptos/pull/4375AtIndex(closes #4385) by @gbj in https://github.com/leptos-rs/leptos/pull/4389dry_resolve()call onSuspend(closes #4402) by @gbj in https://github.com/leptos-rs/leptos/pull/4404bitcodeencoding/decoding to server fn IO by @arpadav in https://github.com/leptos-rs/leptos/pull/4376New Contributors
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.8.10...v0.8.11
v0.8.10Compare Source
What's Changed
subsecondand an example by @gbj in https://github.com/leptos-rs/leptos/pull/4307__wasm_split.*.jsfile (closes #4322) by @gbj in https://github.com/leptos-rs/leptos/pull/4327New Contributors
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.8.9...v0.8.10
v0.8.9Compare Source
This includes patch releases to the
reactive_graph,tachys,wasm_split_macros,server_fn,leptos, androutercrates.What's Changed
Vec<AnyAttribute>(closes #4268) by @gbj in https://github.com/leptos-rs/leptos/pull/4270referrerpolicyattribute toaelement by @adoyle0 in https://github.com/leptos-rs/leptos/pull/4299Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.8.8...v0.8.9
v0.8.8What's Changed
commandandcommandforattributes for button by @mskorkowski in https://github.com/leptos-rs/leptos/pull/4194Patchfor a struct with generic arguments by @mskorkowski in https://github.com/leptos-rs/leptos/pull/4175task::spawnmaintains reactive ownership (closes #4203) by @gbj in https://github.com/leptos-rs/leptos/pull/4206Vec<_>to optimize large subscriber sets (see #4138) by @gbj in https://github.com/leptos-rs/leptos/pull/4201hydrate_asyncthroughOwnedViewproperly (closes #4219) by @gbj in https://github.com/leptos-rs/leptos/pull/4220non_snake_caseanddead_codelints to run within component functions by @yescallop in https://github.com/leptos-rs/leptos/pull/3198<ShowLet>component similar to<Show>but forOptionby @maccesch in https://github.com/leptos-rs/leptos/pull/4227valueproperty to support quirky<select>behavior by @gbj in https://github.com/leptos-rs/leptos/pull/4235<Show>accept signals in addition to closures by @maccesch in https://github.com/leptos-rs/leptos/pull/4236leptos_serverby @gbj in https://github.com/leptos-rs/leptos/pull/4250New Contributors
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.8.6...v0.8.8
v0.8.6Compare Source
Just a patch release, mostly to support
#[server] #[lazy]for lazy server functions.Going forward, patch releases for various crates will have version numbers that are not coupled to one another, and will only be bumped when they've actually changed; so this release is 0.8.6 for
leptos,leptos_macro, andserver_fn_macro, but does not arbitrarily bump other packages that haven't changed.See 0.8.5 for notes on WASM splitting.
What's Changed
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.8.5...v0.8.6
v0.8.5: : WASM code splitting released!Compare Source
This release includes WASM code-splitting/lazy-loading support, in tandem with the latest
cargo-leptosrelease.You can use the
lazy_routesexample to understand what this means!Essentially, though, there are two patterns:
#[lazy]macro to make any given function lazy#[lazy_route]to designate a route with a lazy-loaded view, which is loaded concurrently with the route's data#[lazy]converts a (sync or async) function into a lazy-loaded async function#[lazy_route]lets you split routes into a "data" half and a "view" half, which will be concurrently loaded by the router. This works with nested routing: so if you have ViewD and ViewE, then the router will concurrently load D's data, D's (lazy) view, E's data, and E's (lazy) view, before navigating to the page.Our whole July stream was dedicated to the topic, if you want more in depth discussion.
What's Changed
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.8.4...v0.8.5
v0.8.4Compare Source
There are some small bugfixes in here, as well as improvements to the hot-reloading code. This is mostly intended to be a sort of "last patch" before merging the code-splitting changes in #3988, so that there is a patch people can pin to in case those inadvertently introduce any regressions.
What's Changed
debug_log!,debug_error!,console_debug_logandconsole_debug_errorby @mahdi739 in https://github.com/leptos-rs/leptos/pull/4160New Contributors
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.8.3...v0.8.4
v0.8.3Compare Source
This is a minor patch release. It does include a significant re-write of how ownership/context work with nested routes (#4091). This should close a number of bugs. However, it's always possible that changes like this introduce regressions. Please test to see whether you have any issues with context and nested routing, and let me know. (We have a new
regressionexample set up to add e2e regression tests for issues going forward.)What's Changed
SsrMode::PartiallyBlocked(closes #3963) by @marcuswhybrow in https://github.com/leptos-rs/leptos/pull/3964Vec<_>before it is mounted (closes #3962) by @gbj in https://github.com/leptos-rs/leptos/pull/3966Resource::write()and similar functions (see #3959) by @gbj in https://github.com/leptos-rs/leptos/pull/3984#[component]macro by @mondeja in https://github.com/leptos-rs/leptos/pull/3989Arc::ptr_eqfor string comparison (closes #3983) by @gbj in https://github.com/leptos-rs/leptos/pull/3994#[prop(default = ...)]and#[prop(name = ...)]by @mondeja in https://github.com/leptos-rs/leptos/pull/4003<select>value by ensuring HTML children are mounted before setting attributes (closes #4005) by @gbj in https://github.com/leptos-rs/leptos/pull/4008session_auth_axumexample by @gbj in https://github.com/leptos-rs/leptos/pull/4033#[middleware]macros (closes #4029) by @gbj in https://github.com/leptos-rs/leptos/pull/4048<For/>that is not currently mounted (closes #3385) by @gbj in https://github.com/leptos-rs/leptos/pull/4050asyncblock of aResource(closes #4060) by @gbj in https://github.com/leptos-rs/leptos/pull/4061viewmacro. by @metatoaster in https://github.com/leptos-rs/leptos/pull/4071reactive_storesby @elias098 in https://github.com/leptos-rs/leptos/pull/4056LocalResourceto anAsyncDerived(closes #4063) by @gbj in https://github.com/leptos-rs/leptos/pull/4077()attributes intemplate(closes #4079) by @gbj in https://github.com/leptos-rs/leptos/pull/4080IntoFragmentforAnyViewby @gbj in https://github.com/leptos-rs/leptos/pull/4087classand other attributes to<A/>component by @gbj in https://github.com/leptos-rs/leptos/pull/4086svg::InertElementfordomcache. by @bicarlsen in https://github.com/leptos-rs/leptos/pull/4100svg::InertElementtemplates in SVG namespace. by @bicarlsen in https://github.com/leptos-rs/leptos/pull/4104takefor BrowserFormData by @veigaribo in https://github.com/leptos-rs/leptos/pull/4102join_contextsAPI by @gbj in https://github.com/leptos-rs/leptos/pull/4113New Contributors
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.8.2...v0.8.3
v0.8.2Compare Source
For 0.8 release notes in general, see
0.8.0. This patch release mostly addresses a bad issue with hydrating<Stylesheet/>and other meta components. (See #3945 #3946)What's Changed
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.8.1...v0.8.2
v0.8.1Compare Source
For 0.8 release notes in general, see
0.8.0. This patch release is mostly just a bunch of bugfixes for issues raised or fixed since then.What's Changed
StaticVec::rebuild()by aligning implementation withVec::rebuild()(closes #3906) by @gbj in https://github.com/leptos-rs/leptos/pull/3920counter_isomorphicrelease build with the leptos_debuginfo by @sabify in https://github.com/leptos-rs/leptos/pull/3918RenderEffectare dropped while dropped aRenderEffect(closes #3922) by @gbj in https://github.com/leptos-rs/leptos/pull/3926Eitherto determine how to render islands (see #3896; closes #3929) by @gbj in https://github.com/leptos-rs/leptos/pull/3938.map()and.and_then()onLocalResourceby @gbj in https://github.com/leptos-rs/leptos/pull/3941islands_routerimprovements by @gbj in https://github.com/leptos-rs/leptos/pull/3942New Contributors
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.8.0...v0.8.1
v0.8.0Compare Source
*Changelog relative to
0.7.8. *0.8 has been planned for a while, primarily to accommodate small changes that arose during the course of testing and adopting 0.7, most of which are technically semver-breaking but should not meaningfully affect user code. I think it's a significant QOL and user DX upgrade and I'm excited to properly release it.
Noteworthy features:
--cfg=erase_components, which is useful as a dev-mode optimization (thanks to @zakstucke) This is the default setting forcargo-leptoswith its latest release, and can be set up manually for use with Trunk. (See docs here.)islands-routerfeatures that allow a client-side routing experience while using islands (see theislands_routerexample) (this one was me)FromServerFnErrorrather than being constrained to useServerFnError(see #3274). (Note: This will require changes if you're using a custom error type, but should be a better experience.) (thanks to @ryo33)LocalResourceno longer exposes aSendWrapperin the API for the types it returns. (Breaking change: this will require removing some.as_deref()and so on when usingLocalResource, but ends up with a much better API.)As you can see this was a real team effort and, as always, I'm grateful for the contributions of everyone named above, and all those who made commits below.
WebSocket Example
The WebSocket support is particularly exciting, as it allows you to call server functions using the default Rust
Streamtrait from thefuturescrate, and have those streams send messages over websockets without you needing to know anything about that process. The API landed in a place that feels like a great extension of the "server function" abstraction in which you can make HTTP requests as if they were ordinary async calls. The websocket stuff doesn't integrate directly with Resources/SSR (which make more sense for one-shot things) but is really easy to use:What's Changed
PossibleRouteMatchdyn-safe by @gbj in https://github.com/leptos-rs/leptos/pull/3421axumtov0.8by @sabify in https://github.com/leptos-rs/leptos/pull/3439IntoFutureforSuspend::new()(closes #3509) by @gbj in https://github.com/leptos-rs/leptos/pull/3532Defaultimpl forLeptosOptionsandConfFileby @chrisp60 in https://github.com/leptos-rs/leptos/pull/3522AddAnyAttrlogic contained by @gbj in https://github.com/leptos-rs/leptos/pull/3562Option<_>instyle:(closes #3568) by @gbj in https://github.com/leptos-rs/leptos/pull/3618Resultalias by @gbj in https://github.com/leptos-rs/leptos/pull/3543IntoSplitSignalfor(Signal<T>, SignalSetter<T>)(closes #3634) by @gbj in https://github.com/leptos-rs/leptos/pull/3643HashedStylesheet(closes #3633) by @gbj in https://github.com/leptos-rs/leptos/pull/3654IntoClassfor store fields by @mahdi739 in https://github.com/leptos-rs/leptos/pull/3670TextPropare kept reactive (closes: #3689) by @mahdi739 in https://github.com/leptos-rs/leptos/pull/3690Action::new_unsync(closes #3328) by @gbj in https://github.com/leptos-rs/leptos/pull/3705AsRefbound ofStoreFieldIteratorblanket impl withLenbound by @DanikVitek in https://github.com/leptos-rs/leptos/pull/3701shellparameter infile_and_error_handler*generic by @tversteeg in https://github.com/leptos-rs/leptos/pull/3711Action::new_local()(closes #3746) by @gbj in https://github.com/leptos-rs/leptos/pull/3749extract()helper to useServerFnErrorErr(closes #3745) by @ilyvion in https://github.com/leptos-rs/leptos/pull/3750Effect::watch): refer todependency_fnandhandlerargs by @jmevel in https://github.com/leptos-rs/leptos/pull/3731rust-toolchain.toml(closes #3717) by @gbj in https://github.com/leptos-rs/leptos/pull/3752SignalSetterto prelude (closes #3547) by @gbj in https://github.com/leptos-rs/leptos/pull/3753IntoFragmentfor single element (closes #3757) by @gbj in https://github.com/leptos-rs/leptos/pull/3759Action::new_localand similar primitives by @gbj in https://github.com/leptos-rs/leptos/pull/3762MaybeSendWrapperOption<_>by @gbj in https://github.com/leptos-rs/leptos/pull/3781ParentRouteby @gbj in https://github.com/leptos-rs/leptos/pull/3784class=for all tuples, not only static ones (closes #3794) by @gbj in https://github.com/leptos-rs/leptos/pull/3801<Title/>by @gbj in https://github.com/leptos-rs/leptos/pull/3793SendOptionfrom public API of actions by @gbj in https://github.com/leptos-rs/leptos/pull/3812Resultreturn types forserver_fnby @ifiokjr in https://github.com/leptos-rs/leptos/pull/3755Selector::selectedby @flisky in https://github.com/leptos-rs/leptos/pull/3694cargo all-features clippy|nextestpart of build process by @sabify in https://github.com/leptos-rs/leptos/pull/3767additional_contextafter providing other server context in all cases by @gbj in https://github.com/leptos-rs/leptos/pull/3841ByteStreamerror handling by @sabify in https://github.com/leptos-rs/leptos/pull/3869TextPropin the prelude (closes #3877) by @huuff in https://github.com/leptos-rs/leptos/pull/3879Stylesheetdocs by @gbj in https://github.com/leptos-rs/leptos/pull/3898children(closes #3904) by @gbj in https://github.com/leptos-rs/leptos/pull/3905impl From<MappedSignal<T>> for Signal<T>(closes #3889) by @gbj in https://github.com/leptos-rs/leptos/pull/3897New Contributors
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.7.8...v0.8.0
v0.7.8Compare Source
A minor release with some quality of life improvements and bugfixes
What's Changed
either_ofminimum version in workspace by @gbj in https://github.com/leptos-rs/leptos/pull/3612()by @gbj in https://github.com/leptos-rs/leptos/pull/3615DebugforArcFieldandFieldby @mahdi739 in https://github.com/leptos-rs/leptos/pull/3660/separator (closes #3527) by @gbj in https://github.com/leptos-rs/leptos/pull/3662bind:groupto correct location (closes #3678) by @gbj in https://github.com/leptos-rs/leptos/pull/3680NodeRef::on_load()to avoid re-triggering it if you read something reactively (closes #3684) by @gbj in https://github.com/leptos-rs/leptos/pull/3686ImmediateEffectby @QuartzLibrary in https://github.com/leptos-rs/leptos/pull/3650ImmediateEffectfollow up by @QuartzLibrary in https://github.com/leptos-rs/leptos/pull/3692impl Patchbesyn::Indexinstead ofusizeby @DanikVitek in https://github.com/leptos-rs/leptos/pull/3700New Contributors
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.7.7...v0.7.8
v0.7.7If you're migrating from 0.6 to 0.7, please see the 0.7.0 release notes here.
This is a small patch release including primarily bugfixes, and some small ergonomic improvements.
What's Changed
From<ArcField<T>>forField<T>by @gbj in https://github.com/leptos-rs/leptos/pull/3533AttributeforEither<A, B>by @alexisfontaine in https://github.com/leptos-rs/leptos/pull/3556cargo install --lockedforcargo-leptosinstallation by @gbj in https://github.com/leptos-rs/leptos/pull/3559style:etc. (closes #3554) by @gbj in https://github.com/leptos-rs/leptos/pull/3558erase_componentsonEither<A, B>by @alexisfontaine in https://github.com/leptos-rs/leptos/pull/3572storeattribute signature error message by @DanikVitek in https://github.com/leptos-rs/leptos/pull/3567:captureflag for events to handle them during capture phase (closes #3457) by @gbj in https://github.com/leptos-rs/leptos/pull/3575<fieldset>attributes by @alexisfontaine in https://github.com/leptos-rs/leptos/pull/3581New Contributors
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.7.5...v0.7.7
v0.7.5Compare Source
If you're migrating from 0.6 to 0.7, please see the 0.7.0 release notes here.
This is a small patch release including primarily bugfixes.
What's Changed
ErrorBoundarythrough reactive views (closes #3487) by @gbj in https://github.com/leptos-rs/leptos/pull/3492#[lazy]macros to support lazy loading and code splitting by @gbj in https://github.com/leptos-rs/leptos/pull/3477leptos_0.8branch by @gbj in https://github.com/leptos-rs/leptos/pull/3500node_refafter{..}on arbitrary components by @gbj in https://github.com/leptos-rs/leptos/pull/3503either_of): Extent API; Implement other iterator methods; Update deps by @DanikVitek in https://github.com/leptos-rs/leptos/pull/3478matchesmethod for Callback and UnsyncCallback by @geoffreygarrett in https://github.com/leptos-rs/leptos/pull/3520New Contributors
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.7.4...v0.7.5
v0.7.4Compare Source
If you're migrating from 0.6 to 0.7, please see the 0.7.0 release notes here.
This is a small patch release including a couple of bugfixes,
What's Changed
leptos_metacomponents (closes #3482) by @gbj in https://github.com/leptos-rs/leptos/pull/3485New Contributors
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.7.3...v0.7.4
v0.7.3Compare Source
If you're migrating from 0.6 to 0.7, please see the 0.7.0 release notes here.
This is a small patch release including a couple of bugfixes, as well as the ability to destructure prop value in components with a new
#[prop(name = ...)]syntax (see #3382)What's Changed
consolefeature ofweb-sysforreactive_graphby @alexisfontaine in https://github.com/leptos-rs/leptos/pull/3406getrandomneedsjsfeature (used whennoncefeature is active) (closes #3409) by @gbj in https://github.com/leptos-rs/leptos/pull/3410file_and_error_handlerby @spencewenski in https://github.com/leptos-rs/leptos/pull/3408#[track_caller]s by @mscofield0 in https://github.com/leptos-rs/leptos/pull/3422islandsmention fromleptos_axumby @chrisp60 in https://github.com/leptos-rs/leptos/pull/3423Defaultto stores by @mscofield0 in https://github.com/leptos-rs/leptos/pull/3432DisposeforStoreby @mscofield0 in https://github.com/leptos-rs/leptos/pull/3429erase_componentswith AttributeInterceptor by @gbj in https://github.com/leptos-rs/leptos/pull/3435New Contributors
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.7.2...v0.7.3
v0.7.2Compare Source
If you're migrating from 0.6 to 0.7, please see the 0.7.0 release notes here.
This is a small patch release including a couple of bugfixes, importantly to the hydration of static text nodes on
nightly.What's Changed
popovertargetandpopovertargetactionfor the<button>element by @Figments in https://github.com/leptos-rs/leptos/pull/3379From<ArcStore<T>>forStore<T, S>by @mscofield0 in https://github.com/leptos-rs/leptos/pull/3389let:syntax (closes #3387) by @gbj in https://github.com/leptos-rs/leptos/pull/3391nightly(closes #3395) by @gbj in https://github.com/leptos-rs/leptos/pull/3396New Contributors
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.7.1...v0.7.2
v0.7.1Compare Source
If you're migrating from 0.6 to 0.7, please see the 0.7.0 release notes here.
This is just a small patch release, two weeks after the 0.7.0 release, geared toward fixing in bugs and filling in API holes since then.
What's Changed
Vec<_>in the DOM (closes #3321) by @gbj in https://github.com/leptos-rs/leptos/pull/3324!SendActix APIs in server functions by @gbj in https://github.com/leptos-rs/leptos/pull/3326scrollprop to<A/>component to control scrolling behavior (closes #2666) by @gbj in https://github.com/leptos-rs/leptos/pull/3333either!macro by @bicarlsen in https://github.com/leptos-rs/leptos/pull/3337<noscript>(closes #3360) by @gbj in https://github.com/leptos-rs/leptos/pull/3363ToChildren::to_childrendocs. by @bicarlsen in https://github.com/leptos-rs/leptos/pull/3352usizeby @marcuswhybrow in https://github.com/leptos-rs/leptos/pull/3346Signal::derive()behavior by @gbj in https://github.com/leptos-rs/leptos/pull/3351InertElement(closes #3368) by @gbj in https://github.com/leptos-rs/leptos/pull/3370cargo-semver-checkson PRs by @gbj in https://github.com/leptos-rs/leptos/pull/3375New Contributors
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.7.0...v0.7.1
v0.7.0Compare Source
At long last, as the culmination of more than a year of work, the 0.7 release has arrived!
0.7 is a nearly-complete rewrite of the internals of the framework, with the following goals:
Getting Started
0.7 works with the current
cargo-leptosversion. If you want to start exploring, there are starter templates for Axum and Actix. Each template is only three files. They show some of the boilerplate differences; for more details, see below.Axum:
cargo leptos new --git https://github.com/leptos-rs/start-axum(repo)Actix:
cargo leptos new --git https://github.com/leptos-rs/start-actix(repo)New Features
.awaiton resources andasyncin<Suspense/>Currently,
create_resourceallows you to synchronously access the value of some async data as eitherNoneorSome(_). However, it requires that you always access it this way. This has some drawbacks:Now, you can
.awaita resource, and you can useasyncblocks within a<Suspense/>via theSuspendwrapper, which makes it easier to chain two resources:Reference-counted signal types
One of the awkward edge cases of current Leptos is that our
Copyarena for signals makes it possible to leak memory if you have a collection of nested signals and do not dispose them. (See 0.6 example.) 0.7 exposesArcRwSignal,ArcReadSignal, etc., which areClonebut notCopyand manage their memory via reference counting, but can easily be converted into the copyableRwSignaletc. This makes working with nested signal correctly much easier, without sacrificing ergonomics meaningfully. See the 0.7countersexample for more..read()and.write()on signalsYou can now use
.read()and.write()to get immutable and mutable guards for the value of a signal, which will track/update appropriately: these work like.with()and.update()but without the extra closure, or like.get()but without cloning.Custom HTML shell
The HTML document "shell" for server rendering is currently hardcoded as part of the server integrations, limiting your ability to customize it. Now you simply include it as part of your application, which also means that you can customize things like teh
<title>without needing to useleptos_meta.Enhanced attribute spreading
Any valid attribute can now be spread onto any component, allowing you to extend the UI created by a component however you want. This works through multiple components: for example, if you spread attributes onto a
Suspensethey will be passed through to whatever it returns.Improved
<ProtectedRoute/>The current
ProtectedRoutecomponent is not great: it checks the condition once, synchronously, on navigation, and so it doesn't respond to changes and can't easily be used with async data. The newProtectedRouteis reactive and uses Suspense so you can use resources or reactive data. There are examples of this now inrouterandssr_modes_axum.Two-way binding with
bind:syntaxTwo-way binding allows you to pass signals directly to inputs, rather than separately managing
prop:valueandon:inputto sync the signals to the inputs.Reactive Stores
Stores are a new reactive primitive that allow you to reactively access deeply-nested fields in a struct without needing to create signals inside signals; rather, you can use plain data types, annotated with
#[derive(Store)], and then access fields with reactive getters/setters.Updating one subfield of a
Storedoes not trigger effects only listening to a sibling field; listening to one field of a store does not track the sibling fields.Stores are most useful for nested data structures, so a succinct example is difficult, but the
storesexample shows a complete use case.Support the View Transition API for router animations
The
Routes/FlatRoutescomponent now have atransitionprop. Setting this totruewill cause the router to use the browser's View Transition API during navigation. You can control animations during navigation using CSS classes. Which animations are used can be controlled using classes that the router will set on the<html>element:.routing-progresswhile navigating,.router-backduring a back navigation, and.router-outlet-{n}for the depth of the outlet that is being changed (0for the root page changing,1for the firstOutlet, etc.) Therouterexample uses this API.Breaking Changes
Imports
I'm reorganizing the module structure to improve docs and discoverability. We will still have a prelude that can be used for glob imports of almost everything that's currently exported from the root.
Likewise, the router exposes things via
leptos_router::componentsandleptos_router::hooks. rust-analyzer can help fix imports fairly well.I'm hoping for feedback on the new module structure, whether it makes sense, and any improvements. I have not done too much work to sort through the reexports, look at how docs look, etc. yet.
Naming
We're migrating away from
create_naming toward more idiomatic Rust naming patterns:create_signaltosignal(likechannel)create_rw_signaltoRwSignal::new()I've left some of the current functions in, marked deprecated; others may have been missed, but should be easy to find via docs.rs.
Type erasure and view types
One of the major changes in this release is replacing the
Viewenum with statically-typed views, which is where most of the binary size savings come from. If you need to branch and return one of several types, you can either use one of theEitherenums inleptos::either, or you can use.into_any()to erase the type. Generally speaking the compiler can do its job better if you maintain more type information so theEithertypes should be preferred, butAnyViewis not bad to use when needed.Boilerplate
There have been changes to the SSR and hydration boilerplate, which include (but aren't limited to)
get_configurationis sync (remove the.await).leptos_routesno longer takesLeptosOptionsas an argumentleptos::mount::hydrate_body(hydration) instead ofleptos::mount::mount_to_body(which is now CSR-specific)Check the starter templates for a good setup.
Route definitions
The patterns for route definition have changed in several ways.
fallbackis now a required prop on<Routes/>, rather than an optional prop on<Router/><FlatRoutes/>component that optimizes for this case<ParentRoute/>path="foo"becomespath=StaticSegment("foo"), and there arepath=":id"becomespath=ParamSegment("id"),path="posts/:id"becomespath=(StaticSegment("posts"), ParamSegment("id")), and so on. There is apath!()macro that will do this for you: i.e., it will expandpath!("/foo/:id")topath=(StaticSegment("foo"), ParamSegment("id")).See the
routerandhackernewsexamples.Send/SyncsignalsBy default, the data held in reactive primitives (signals, memos, effects) must be safe to send across threads. For non-threadsafe types, there is a "storage" generic on signal types. This defaults to
SyncStorage, but you can optionally specifyLocalStorageinstead. Many APIs have_local()alternatives to enable this.Custom
IntoViewandIntoAttributeimplementationsIf you currently have implementations of
IntoVieworIntoAttributefor custom data types, in a way that allows you to use them directly in the view, you should replace those with implementations ofIntoRenderandIntoAttributeValue, respectively. See this PR for examples.Minor Breaking Changes
Awaitcomponent now takes a plainFuturefor itsfutureprop rather than aFn() -> Future, because it uses an optimized resource implementationIntoRenderrather thanIntoView(see discussion in #3062)ParamsMapsupports multiple values per key (which is supported by query strings), so the API now differentiates between inserting a new value for the same key and replacing the value, and between getting one value and getting all values for a keyStylesheetcomponent no longer automatically works with the file hashing feature ofcargo-leptos. You can useHashedStylesheetand pass it the appropriate props instead.<A>component with aclassprop that set theclasson the<a>element.) These have been replaced by the new attribute-spreading API, to reduce complexity of the components themselves.LeptosOptionsnow usesArc<str>for its fields that were formerlyString, so that it is less expensive to clone. In practice, this usually only means using&fieldorfield.as_ref()in a few places that require&str, and so on.experimental-islandsfeature renamed toislandsbatchfunction no longer exists: all updates now exhibit the batching behavior that was previously opt-in viabatch.into_any()at the end of the component that you are going to use recursively.Signal<T>no longer directly implementsFrom<Fn() -> T>, which allows it to implementFrom<T>and therefore to be a more useful replacement forMaybeSignal<T>, for a prop that is "someTor any signal that returnsT." To convert a closure into aSignal<_>you can callSignal::derive()explicitly. I know this makes the ergonomics of using theSignal<_>wrapper slightly worse, but it adds additional expressiveness by supporting plainT. (If you want to keep the old behavior, consider takingimpl Fn() -> Tas a prop if you are using nightly, where all the signals as well as closures implement this trait.)Miscellaneous
I'm sure there are a bunch of small and larger changes I have not mentioned above. By the time of final release, help compiling a total list of breaking changes/migration guide would be much appreciated. At present, the starter templates and the
examplesdirectory in the PR can provide a pretty comprehensive set of changes.On storing views in signals...
There's a pattern I've seen many use that I do not particularly like, but accidentally enabled through the way APIs happened to be (or needed to be) designed in Leptos 0.1-0.6, in which a user stores some view in a signal and then reads it somewhere else. This was possible because
Viewneeded to beClonefor internal reasons. Some users used this to create custom control flow: for example, you could create a global "header view" signal, and then update it from leaf components by storing a new view in it.I'd consider this a bit of an antipattern, for a couple reasons:
Clonebut in a surprising way: you can clone the reference to a DOM node, but that is a shallow, not a deep clone, and if you use it in multiple places by.get()ing the signal more than once, it will only appear in the last locationIn the statically-typed view tree, views are not necessarily cloneable (including the
AnyViewtype), so they can't easily be stored in a signal.However, it is possible to achieve a similar goal by using a "reactive channel" pattern instead:
Send the views through a channel means they do not need to be cloned, and won't be used in more than once place (avoiding the edge cases of 2 above.) Each time you send a view through the channel, simply trigger the trigger.
v0.6.15Compare Source
Belated release notes for 0.6.15. This was a quick patch release to incorporate two changes, one to improve rust-analyzer support and the other to switch from the unmaintained
proc-macro-errortoproc-macro-error2per RUSTSEC.What's Changed
proc-macro-error2to address unmaintained security advisory. by @azriel91 in https://github.com/leptos-rs/leptos/pull/2935Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.6.14...v0.6.15
v0.6.14Compare Source
Hello everyone, The biggest change in this update is to handle wasm-bindgen 0.2.93 and web_sys 0.3.70 Thanks to @sabify and @maccesch for those PRs. As always, let us know if there's issues.
What's Changed
wasm-bindgenandweb-sysfor leptos 0.6 by @sabify in https://github.com/leptos-rs/leptos/pull/2830New Contributors
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.6.13...v0.6.14
v0.6.13Compare Source
This release mostly includes a series of small bugfixes (see below), but also includes a fix for the annoying issues we'd been having with rust-analyzer (#2527).
What's Changed
rkyvfeature interaction with Axum integration by @gbj in https://github.com/leptos-rs/leptos/pull/2631ToChildrenby @spencewenski in https://github.com/leptos-rs/leptos/pull/2643New Contributors
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.6.12...v0.6.13
rust-lang/log (log)
v0.4.29Compare Source
v0.4.28Compare Source
v0.4.27Compare Source
What's Changed
Full Changelog: https://github.com/rust-lang/log/compare/0.4.26...0.4.27
v0.4.26Compare Source
What's Changed
Cloneforkv::Valueby @SpriteOvO in https://github.com/rust-lang/log/pull/668spdlog-rslink to crate doc by @SpriteOvO in https://github.com/rust-lang/log/pull/669Full Changelog: https://github.com/rust-lang/log/compare/0.4.25...0.4.26
v0.4.25Compare Source
What's Changed
Full Changelog: https://github.com/rust-lang/log/compare/0.4.24...0.4.25
v0.4.24Compare Source
What's Changed
Full Changelog: https://github.com/rust-lang/log/compare/0.4.23...0.4.24
v0.4.23Compare Source
What's Changed
spdlog-rslink to README by @SpriteOvO in https://github.com/rust-lang/log/pull/639New Contributors
Full Changelog: https://github.com/rust-lang/log/compare/0.4.22...0.4.23
serde-rs/json (serde_json)
v1.0.145Compare Source
v1.0.144Compare Source
v1.0.143Compare Source
v1.0.142Compare Source
v1.0.141Compare Source
v1.0.140Compare Source
v1.0.139Compare Source
v1.0.138Compare Source
v1.0.137Compare Source
v1.0.136Compare Source
v1.0.135Compare Source
v1.0.134Compare Source
RawValueassociated constants for literalnull,true,false(#1221, thanks @bheylin)v1.0.133Compare Source
v1.0.132Compare Source
v1.0.131Compare Source
Map<String, Value>and&Map<String, Value>(#1135, thanks @swlynch99)v1.0.130Compare Source
Numberfrom i128 and u128 (#1141, thanks @druide)v1.0.129Compare Source
serde_json::Map::sort_keysandserde_json::Value::sort_all_objects(#1199)v1.0.128Compare Source
v1.0.127Compare Source
v1.0.126Compare Source
v1.0.125Compare Source
v1.0.124Compare Source
v1.0.123Compare Source
v1.0.122Compare Source
json!in no-std crates (#1166)v1.0.121Compare Source
borntyping/rust-simple_logger (simple_logger)
v5.1.0Compare Source
init_with_env(closes #96).Full Changelog: https://github.com/borntyping/rust-simple_logger/compare/v5.0.0...v5.1.0
dtolnay/thiserror (thiserror)
v2.0.17Compare Source
v2.0.16Compare Source
v2.0.15Compare Source
Error::provideAPI becoming unavailable from a future new compiler lint (#427)v2.0.14Compare Source
v2.0.13Compare Source
v2.0.12Compare Source
v2.0.11Compare Source
v2.0.10Compare Source
v2.0.9Compare Source
missing_inline_in_public_itemsclippy restriction being triggered in macro-generated code (#404)v2.0.8Compare Source
derive(Error)call sites (#399)v2.0.7Compare Source
v2.0.6Compare Source
v2.0.5Compare Source
v2.0.4Compare Source
Fromimpls (#391, thanks @matt-phylum)v2.0.3Compare Source
v2.0.2Compare Source
v2.0.1Compare Source
v2.0.0Compare Source
Breaking changes
Referencing keyword-named fields by a raw identifier like
{r#type}inside a format string is no longer accepted; simply use the unraw name like{type}(#347)This aligns thiserror with the standard library's formatting macros, which gained support for implicit argument capture later than the release of this feature in thiserror 1.x.
Trait bounds are no longer inferred on fields whose value is shadowed by an explicit named argument in a format message (#345)
Tuple structs and tuple variants can no longer use numerical
{0}{1}access at the same time as supplying extra positional arguments for a format message, as this makes it ambiguous whether the number refers to a tuple field vs a different positional arg (#354)Code containing invocations of thiserror's
derive(Error)must now have a direct dependency on thethiserrorcrate regardless of the error data structure's contents (#368, #369, #370, #372)Features
Support disabling thiserror's standard library dependency by disabling the default "std" Cargo feature:
thiserror = { version = "2", default-features = false }(#373)Support using
r#sourceas field name to opt out of a field named "source" being treated as an error'sError::source()(#350)Infinite recursion in a generated Display impl now produces an
unconditional_recursionwarning (#359)A new attribute
#[error(fmt = path::to::myfmt)]can be used to write formatting logic for an enum variant out-of-line (#367)Enums with an enum-level format message are now able to have individual variants that are
transparentto supersede the enum-level message (#366)v1.0.69Compare Source
v1.0.68Compare Source
v1.0.67Compare Source
v1.0.66Compare Source
v1.0.65Compare Source
v1.0.64Compare Source
v1.0.63Compare Source
v1.0.62Compare Source
#[error("…", …)]attribute (#309)tokio-rs/tokio (tokio)
v1.48.0: Tokio v1.48.0Compare Source
1.48.0 (October 14th, 2025)
The MSRV is increased to 1.71.
Added
File::max_buf_size(#7594)ChainofAsyncReadExt::chain(#7599)SocketAddr::as_abstract_name(#7491)TcpStream::quickackandTcpStream::set_quickack(#7490)AsRef<Self>forTcpStreamandUnixStream(#7573)LocalKey::try_get(#7666)Ordfortask::Id(#7530)Changed
max_buf_sizewhen cloning aFile(#7593)clippy::unwrap_in_resultin#[tokio::main](#7651)PollEventednoise from Debug formats (#7675)Command::spawn_withto useFnOnce(#7511)SetOnce(#7554)UnsafeCell::get_mutinMutex::get_mutandRwLock::get_mut(#7569)Timeout<T>::poll(#7535)Fixed
join!andtry_join!(#7638)wake_by_ref()even if already woken (#7622)broadcast::Senderinbroadcast::Sender::new()(#7629)RwLock::try_*methods (#7587)Unstable
--cfgflags fortaskdumpandio_uring(#7655, #7621)io_uringinfs::write(#7567)io_uringwithFile::open()(#7617)io_uringwithOpenOptions(#7321)localruntime flavor (#7375, #7597)Documented
AsyncRead::poll_read(#7580)AsyncFdreadiness guards (#7583)UCred::pid()on Cygwin (#7611)set_reuseport()andreuseport()(#7628)SO_REUSEADDRis only set on Unix (#7533)Handle::block_on(#7665)Builder::global_queue_interval()(#7605)tokio::sync::watch::Receiver(#7584)SetOnce::wait(#7506)parking_lotfeature flag (#7663)UnboundedSender::send(#7661)sync::watch(#7601)spawn_localmethods (#7669)poll_proceed(#7586)v1.47.2Compare Source
v1.47.1: Tokio v1.47.1Compare Source
1.47.1 (August 1st, 2025)
Fixed
asyncio.EventinSetOncedocs (#7485)v1.47.0: Tokio v1.47.0Compare Source
1.47.0 (July 25th, 2025)
This release adds
poll_proceedandcooperativeto thecoopmodule forcooperative scheduling, adds
SetOnceto thesyncmodule which providessimilar functionality to [
std::sync::OnceLock], and adds a new methodsync::Notify::notified_owned()which returns anOwnedNotifiedwithouta lifetime parameter.
Added
cooperativeandpoll_proceed(#7405)SetOnce(#7418)sync::Notify::notified_owned()(#7465)Changed
AtomicWaker::wakeperformance (#7450)Documented
Readiness<'_>(#7415)v1.46.1: Tokio v1.46.1Compare Source
1.46.1 (July 4th, 2025)
This release fixes incorrect spawn locations in runtime task hooks for tasks spawned using
tokio::spawnrather thanRuntime::spawn. This issue only effected the spawn location inTaskMeta::spawned_at, and did not effect task locations in Tracing events.Unstable
TaskMeta::spawn_locationtracking where a task was spawned (#7440)v1.46.0: Tokio v1.46.0Compare Source
1.46.0 (July 2nd, 2025)
Fixed
TcpStream::shutdownincorrectly returning an error on macOS (#7290)Added
mpsc::OwnedPermit::{same_channel, same_channel_as_sender}methods (#7389)biasedoption forjoin!andtry_join!, similar toselect!(#7307)pope::OpenOptions::read_writeon Android (#7426)Cloneimplementation fornet::unix::SocketAddr(#7422)Changed
queue::Local<T>(#7340)LocalSet::{poll,drop}(#7372)Unstable
TaskMeta::spawn_locationtracking where a task was spawned (#7417)LocalOptionsparameter toruntime::Builder::build_local(#7346)Documented
start_seekis not used (#7366)AsyncWriteExt::flush(#7364)recv_buffer_sizemethod (#7336)RawFdinTcpSocketdocs (#7416)AsRawFddoc link to current Rust stdlib location (#7429)on_*_task_pollis unstable (#7311)time::advance(#7394)v1.45.1: Tokio v1.45.1Compare Source
1.45.1 (May 24th, 2025)
This fixes a regression on the wasm32-unknown-unknown target, where code that previously did not panic due to calls to
Instant::now()started failing. This is due to the stabilization of the first time-based metric.Fixed
v1.45.0: Tokio v1.45.0Compare Source
Added
worker_total_busy_duration,worker_park_count, andworker_unpark_count(#6899, #7276)Command::spawn_with(#7249)Changed
Unpinfor some trait impls (#7204)runtime::Handleas unwind safe (#7230)Unstable
v1.44.2: Tokio v1.44.2Compare Source
This release fixes a soundness issue in the broadcast channel. The channel
accepts values that are
Sendbut!Sync. Previously, the channel calledclone()on these values without synchronizing. This release fixes the channelby synchronizing calls to
.clone()(Thanks Austin Bonander for finding andreporting the issue).
Fixed
clone()call in broadcast channel (#7232)v1.44.1: Tokio v1.44.1Compare Source
1.44.1 (March 13th, 2025)
Fixed
block_in_placecontext (#7216)v1.44.0: Tokio v1.44.0Compare Source
1.44.0 (March 7th, 2025)
This release changes the
from_stdmethod on sockets to panic if a blocking socket is provided. We determined this change is not a breaking change as Tokio is not intended to operate using blocking sockets. Doing so results in runtime hangs and should be considered a bug. Accidentally passing a blocking socket to Tokio is one of the most common user mistakes. If this change causes an issue for you, please comment on #7172.Added
task::coopmodule (#7116)Command::get_kill_on_drop()(#7086)broadcast::Sender::closed(#6685, #7090)broadcast::WeakSender(#7100)oneshot::Receiver::is_empty()(#7153)oneshot::Receiver::is_terminated()(#7152)Fixed
Fileshould not start a background read (#7139)start_killon exited child should not fail (#7160)CTRL_CLOSE,CTRL_LOGOFF,CTRL_SHUTDOWNon windows (#7122)Changes
select!budget-aware (#7164)from_std(#7166)Changes to unstable APIs
Documented
select!alternatives (#7110)send_to(#7146)Childstdout (#7141)Child::killbehavior (#7162)ChildStdinstruct doc comment (#7192)worker_threadsinstead ofcore_threads(#7186)v1.43.3Compare Source
v1.43.2: Tokio v1.43.2Compare Source
1.43.2 (August 1st, 2025)
Fixed
v1.43.1Compare Source
v1.43.0: Tokio v1.43.0Compare Source
1.43.0 (Jan 8th, 2025)
Added
UdpSocket::peekmethods (#7068)Command::into_std()(#7014)SignalKind::infoon illumos (#6995)Fixed
set_lenbefore initializing vector inBlocking(#7054)clippy::needless_returnin#[tokio::main](#6874)Changes
unsync_load(#7073)Buf::put_bytesinRepeatread impl (#7055)Changes to unstable APIs
Documented
ReadBuf::uninitallows initialized buffers as well (#7053)TcpStream::try_write_vectoreddocs (#7067)LocalRuntimedoc links (#7074)watch::Receiver::wait_for(#7038)OnceCelldocs (#7047)v1.42.1: Tokio v1.42.1Compare Source
This release fixes a soundness issue in the broadcast channel. The channel accepts values that are
Sendbut!Sync. Previously, the channel calledclone()on these values without synchronizing. This release fixes the channel by synchronizing calls to.clone()(Thanks Austin Bonander for finding and reporting the issue).Fixed
clone()call in broadcast channel (#7232)v1.42.0: Tokio v1.42.0Compare Source
1.42.0 (Dec 3rd, 2024)
Added
AsyncFd::{try_io, try_io_mut}(#6967)Fixed
ptr->ref->ptrroundtrip in RegistrationSet (#6929)yield_nowinsideblock_in_place(#6999)Changes
Documented
tokio::net::unix::{pid_t, gid_t, uid_t}(#6791)Instantdocs (#6982)v1.41.1: Tokio v1.41.1Compare Source
1.41.1 (Nov 7th, 2024)
Fixed
netrequirement fornet::UdpSocketin docs (#6938)TcpStreaminternal comment (#6944)v1.41.0: Tokio v1.41.0Compare Source
1.41.0 (Oct 22th, 2024)
Added
global_queue_depth(#6854, #6918)SocketAddr(#6868)watch::Sender::sender_count(#6836)mpsc::Receiver::blocking_recv_many(#6867)Idapis (#6793, #6891)Added (unstable)
LocalRuntime(#6808)Changed
#[must_use]toNotified(#6828)watchcooperative (#6846)broadcast::Receivercooperative (#6870)cfg_fsforwasitarget (#6822)Fixed
Documented
OwnedFdwithAsyncFd(#6821)AsyncFdmethods (#6890)joinandtry_join(#6814, #6841)TcpSocket::set_nodelayandTcpSocket::nodelay(#6840)v1.40.0: Tokio v1.40.0Compare Source
1.40.0 (August 30th, 2024)
Added
util::SimplexStream(#6589)Command::process_group(#6731){TrySendError,SendTimeoutError}::into_inner(#6755)JoinSet::join_all(#6784)Added (unstable)
Builder::{on_task_spawn, on_task_terminate}(#6742)Changed
write_all_bufwhen possible (#6724)UnwindSafe(#6783)SleepandBatchSemaphoreinstrumentation explicit roots (#6727)NonZeroU64fortask::Id(#6733)JoinError(#6753)#[must_use]toJoinHandle::abort_handle(#6762)Documented
[build]section doesn't go in Cargo.toml (#6728)select!(#6774)v1.39.3: Tokio v1.39.3Compare Source
1.39.3 (August 17th, 2024)
This release fixes a regression where the unix socket api stopped accepting the abstract socket namespace. (#6772)
v1.39.2: Tokio v1.39.2Compare Source
1.39.2 (July 27th, 2024)
This release fixes a regression where the
select!macro stopped accepting expressions that make use of temporary lifetime extension. (#6722)v1.39.1: Tokio v1.39.1Compare Source
1.39.1 (July 23rd, 2024)
This release reverts "time: avoid traversing entries in the time wheel twice" because it contains a bug. (#6715)
v1.39.0: Tokio v1.39.0Compare Source
1.39.0 (July 23rd, 2024)
Added
AsyncSeekforEmpty(#6663)num_alive_tasks(#6619, #6667)Command::as_std_mut(#6608)watch::Sender::same_channel(#6637){Receiver,UnboundedReceiver}::{sender_strong_count,sender_weak_count}(#6661)Defaultforwatch::Sender(#6626)CloneforAbortHandle(#6621)consume_budget(#6622)Changed
ReadBuf::put_slice()(#6629)copy_bidirectionalandcopy(#6532)num_cpuswithavailable_parallelism(#6709)block_on(#6692)IntoFuturewithtimeout(#6666)IntoFuturewithjoin!andselect!(#6710)Fixed
Interval(#6612)Added (unstable)
unhandled_panicbehavior for#[tokio::main]and#[tokio::test](#6593)spawned_tasks_count(#6114)worker_park_unpark_count(#6696)Documented
tokio::io::stdoutdocumentation (#6674)join.rsandtry_join.rs(#6641)unhandled_panic(#6660)JoinSet::try_join_nextwhen all tasks are running (#6671)v1.38.2: Tokio v1.38.2Compare Source
This release fixes a soundness issue in the broadcast channel. The channel accepts values that are
Sendbut!Sync. Previously, the channel calledclone()on these values without synchronizing. This release fixes the channel by synchronizing calls to.clone()(Thanks Austin Bonander for finding and reporting the issue).Fixed
clone()call in broadcast channel (#7232)v1.38.1: Tokio v1.38.1Compare Source
1.38.1 (July 16th, 2024)
This release fixes the bug identified as (#6682), which caused timers not
to fire when they should.
Fixed
wake_upwhile holding all the locks of sharded time wheels (#6683)tower-rs/tower (tower)
v0.5.2: tower 0.5.2Compare Source
Added
BoxCloneSyncServicewhich is aClone + Send + SyncboxedService(#777)BoxCloneSyncServiceLayerwhich is aClone + Send + SyncboxedLayer(#802)v0.5.1: tower 0.5.1Compare Source
tower-layerdependency (#787)v0.5.0: tower 0.5.0Compare Source
Fixed
BoxServiceis nowSync(#702)Changed
ServiceExt::ready_andmethod andReadyAndfuture (#652)
retry::Policy::retrynow accepts&mut Reqand&mut Resinstead of the previous mutable versions. Thisincreases the flexibility of the retry policy. To update, update your method signature to include
mutfor both parameters. (#584)Reconnect::new(#755)Clonefor Change (#701)CloneforAsyncFilterLayer(#731)tower-rs/tower-http (tower-http)
v0.6.7Compare Source
Added
TimeoutLayer::with_status_code(status)to define the status code returnedwhen timeout is reached. (#599)
Deprecated
auth::require_authorizationis too basic for real-world. (#591)TimeoutLayer::new()should be replaced withTimeoutLayer::with_status_code(). (Previously wasStatusCode::REQUEST_TIMEOUT) (#599)Fixed
on_eosis now called even for successful responses. (#580)ServeDir: call fallback when filename is invalid (#586)decompressionwill not fail when body is empty (#618)New Contributors
Full Changelog: https://github.com/tower-rs/tower-http/compare/tower-http-0.6.6...tower-http-0.6.7
v0.6.6Compare Source
Fixed
New Contributors
Full Changelog: https://github.com/tower-rs/tower-http/compare/tower-http-0.6.5...tower-http-0.6.6
v0.6.5Compare Source
Added
append_trailing_slash()mode (#547)Fixed
vary: accept-encodingif already set (#572)New Contributors
Full Changelog: https://github.com/tower-rs/tower-http/compare/tower-http-0.6.4...tower-http-0.6.5
v0.6.4: tower-http 0.6.4Compare Source
Added
ServiceExttrait for chaining layers onto an arbitrary http service justlike
ServiceBuilderExtallows forServiceBuilder(#563)Fixed
S::ErrorforServiceimpls ofRequestBodyTimeout<S>andResponseBodyTimeout<S>(#533)is_end_stream(#535)fs::ServeDir(#553)content-lenghtof 1 in response to range requests to emptyfiles (#556)
AsyncRequireAuthorization, use the original inner service after it isready, instead of using a clone (#561)
v0.6.3: tower-http 0.6.3Compare Source
This release was yanked because its definition of
ServiceExtwas quite unhelpful, in a way that's very unlikely that anybody would start depending on within the small timeframe before this was yanked, but that was technically breaking to change.v0.6.2Compare Source
Changed:
CompressionBody<B>now propagatesB's size hint in itshttp_body::Bodyimplementation, if compression is disabled (#531)
content-lengthto be included in an HTTP message with thisbody for those cases
New Contributors
Full Changelog: https://github.com/tower-rs/tower-http/compare/tower-http-0.6.1...tower-http-0.6.2
v0.6.1: v0.6.1Compare Source
Fixed
New Contributors
v0.6.0: v0.6.0Compare Source
Changed:
bodymodule is disabled except forcatch-panic,decompression-*,fs, orlimitfeatures (BREAKING) (#477)tower0.5 (#503)Fixed
uuid-rs/uuid (uuid)
v1.19.0Compare Source
What's Changed
Full Changelog: https://github.com/uuid-rs/uuid/compare/v1.18.1...v1.19.0
v1.18.1Compare Source
What's Changed
Full Changelog: https://github.com/uuid-rs/uuid/compare/v1.18.0...v1.18.1
v1.18.0Compare Source
What's Changed
Timestampandstd::time::SystemTimeby @dcormier in https://github.com/uuid-rs/uuid/pull/835New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/v1.17.0...v1.18.0
v1.17.0Compare Source
What's Changed
wasm32v1-noneSupport by @bushrat011899 in https://github.com/uuid-rs/uuid/pull/828New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/v1.16.0...v1.17.0
v1.16.0Compare Source
What's Changed
Uuid::new_v8const by @tguichaoua in https://github.com/uuid-rs/uuid/pull/815New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/v1.15.1...v1.16.0
v1.15.1Compare Source
What's Changed
Full Changelog: https://github.com/uuid-rs/uuid/compare/v1.15.0...v1.15.1
v1.15.0Compare Source
What's Changed
Debugimplementation for NonNilUUid by @rick-de-water in https://github.com/uuid-rs/uuid/pull/808New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/v1.14.0...v1.15.0
v1.14.0Compare Source
What's Changed
New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/v1.13.2...v1.14.0
v1.13.2Compare Source
What's Changed
Full Changelog: https://github.com/uuid-rs/uuid/compare/1.13.1...v1.13.2
v1.13.1Compare Source
What's Changed
wasm32withatomicsby @bushrat011899 in https://github.com/uuid-rs/uuid/pull/797New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/1.13.0...1.13.1
v1.13.0Compare Source
⚠️ Potential Breakage
This release updates our version of
getrandomto0.3andrandto0.9. It is a potentially breaking change for the following users:no-std users who enable the
rngfeatureuuidstill usesgetrandomby default on these platforms. Upgrade your version ofgetrandomand follow its new docs on configuring a custom backend.wasm32-unknown-unknownusers who enable therngfeature without thejsfeatureUpgrade your version of
getrandomand follow its new docs on configuring a backend.You'll also need to enable the
rng-getrandomorrng-randfeature ofuuidto force it to usegetrandomas its backend:If you're on
wasm32-unknown-unknownand using thejsfeature ofuuidyou shouldn't see any breakage. We've kept this behavior by vendoring ingetrandom's web-based backend when thejsfeature is enabled.What's Changed
getrandomto0.3andrandto0.9by @KodrAus in https://github.com/uuid-rs/uuid/pull/793getrandomonwasm32-unknown-unknownwithout JavaScript by @KodrAus in https://github.com/uuid-rs/uuid/pull/794Full Changelog: https://github.com/uuid-rs/uuid/compare/1.12.1...1.13.0
v1.12.1Compare Source
What's Changed
New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/1.12.0...1.12.1
v1.12.0Compare Source
⚠️ Possible Breakage
This release includes additional
PartialEqimplementations onUuid, which can break inference in some cases.What's Changed
NonZeroUuidtype for optimizedOption<Uuid>representation by @ab22593k in https://github.com/uuid-rs/uuid/pull/779NonNilUuidby @KodrAus in https://github.com/uuid-rs/uuid/pull/783New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/1.11.1...1.12.0
v1.11.1Compare Source
What's Changed
New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/1.11.0...1.11.1
v1.11.0Compare Source
What's Changed
New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/1.10.0...1.11.0
v1.10.0Compare Source
Deprecations
This release deprecates and renames the following functions:
Builder::from_rfc4122_timestamp->Builder::from_gregorian_timestampBuilder::from_sorted_rfc4122_timestamp->Builder::from_sorted_gregorian_timestampTimestamp::from_rfc4122->Timestamp::from_gregorianTimestamp::to_rfc4122->Timestamp::to_gregorianWhat's Changed
New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/1.9.1...1.10.0
wasm-bindgen/wasm-bindgen (wasm-bindgen)
v0.2.106Compare Source
Added
New MSRV policy, and bump of the MSRV fo 1.71.
#4801
Added typed
thissupport in the first argument in free function exports viaa new
#[wasm_bindgen(this)]attribute.#4757
Added
reexportattribute for imports to support re-exporting imported types,with optional renaming.
#4759
Added
js_namespaceattribute on exported types, mirroring the importsemantics to enable arbitrarily nested exported interface objects.
#4744
Added 'container' attribute to
ScrollIntoViewOptions#4806
Updated and refactored output generation to use alphabetical ordering
of declarations.
#4813
Added benchmark support to
wasm-bindgen-test.#4812
#4823
Fixed
Fixed node test harness getting stuck after tests completed.
#4776
Quote names containing colons in generated .d.ts.
#4488
Fixes TryFromJsValue for structs JsValue stack corruption on failure.
#4786
Fixed
wasm-bindgen-test-runneroutputting empty line when using the--listoption. In particular,cargo-nextestnow works correctly.#4803
It now works to build with
-Cpanic=unwind.#4796
#4783
#4782
Fixed duplicate symbols caused by enabling v0 mangling.
#4822
Fixed a multithreaded wasm32+atomics race where
Atomics.waitAsyncpromise callbacks could callrunwithout waking first, causing sporadic panics.#4821
Removed
v0.2.105Compare Source
Added
Added
Math::PIbinding tojs_sys, exposing the ECMAScriptMath.PIconstant.#4748
Added ability to use
--keep-lld-exportsinwasm-bindgen-test-runnerby setting theWASM_BINDGEN_KEEP_LLD_EXPORTSenvironment variable.#4736
Added
CookieStoreAPI.#4706
Added
run_cli_with_argslibrary functions to allwasm_bindgen_clientrypoints.#4710
Added
get_rawandset_rawforWebAssembly.Table.#4701
Added
new_with_valueandgrow_with_valueforWebAssembly.Table.#4698
Added better support for async stack traces when building in debug mode.
#4711
Extended support for
TryFromJsValuetrait implementations.#4714
New
JsValue.is_null_or_undefined()method and intrinsic.#4751
Support for
Option<JsValue>in function arguments and return.#4752
Support for
WASM_BINDGEN_KEEP_TEST_BUILD=1environment variableto retain build files when using the test runner.
#4758
Fixed
Fixed multithreading JS output for targets
bundler,denoandmodule.#4685
Fixed
TextDe/Encoderdetection for audio worklet use-cases.#4703
Fixed post-processing failures in case Std has debug assertions enabled.
#4705
Fixed JS memory leak in
wasm_bindgen::Closure.#4709
Fixed warning when using
#[wasm_bindgen(wasm_bindgen=xxx)]on struct.#4715
Removed
wasm-bindgen-backendwill no longer be published.#4696
v0.2.104Compare Source
Added
Added bindings for
WeakRef.#4659
Support
Symbol.disposemethods by default, when it is supported in the environment.#4666
Added
aarch64-unknown-linux-muslrelease artifacts.#4668
Changed
Unconditionally use the global
TextEncoder/TextDecoderfor string encoding/decoding. The Node.js output now requires a minimum of Node.js v11.#4670
Deprecate the
msrvcrate feature. MSRV detection is now always on.#4675
Fixed
Fixed wasm-bindgen-cli's
encode_intoargument not working.#4663
Fixed a bug in
--experimental-reset-state-functionsupport for heap reset.#4665
Fixed compilation failures on Rust v1.82 and v1.83.
#4675
v0.2.103Compare Source
Fixed
#4656
v0.2.102Compare Source
Added
Added
DocumentOrShadowRoot.adoptedStyleSheets.#4625
Added support for arguments with spaces using shell-style quoting in webdriver
*_ARGSenvironment variables to
wasm-bindgen-test.#4433
Added ability to determine WebDriver JSON config location via
WASM_BINDGEN_TEST_WEBDRIVER_JSONenvironment variable towasm-bindgen-test.#4434
Generate DWARF for tests by default. See the guide on debug information for more details.
#4635
New
--target=moduletarget for outputting source phase imports.#4638
Changed
wasm-bindgen --helpdocs.#4646
Fixed
Fixed wrong method names for
GestureEventbindings.#4615
Fix crash caused by allocations during
TypedArrayinteractions.#4622
v0.2.101Compare Source
Added
Added format and colorSpace support to VideoFrameCopyToOptions
#4543
Added support for the
onbeforeinputattribute.#4544
TypedArray::new_from_slice(&[T])constructor that allows to create aJS-owned
TypedArrayfrom a Rust slice.#4555
Added
Function::call4andFunction::bind4throughFunction::call9Function::bind9methods for calling and binding JavaScript functions with 4-9 arguments.#4572
Added isPointInFill and isPointInStroke methods for the SVGGeometryElement idl.
#4509
Added unstable bindings for
GestureEvent.#4589
Stricter checks for
module,raw_moduleandinline_jsattributes applied to inapplicable items.#4522
Add bindings for
PictureInPicture.#4593
Added
bytesmethod for theBlobidl#4506
Add error message when export symbol is not found
#4594
Changed
Deprecate async constructors.
#4402
The
sizeargument toGPUCommandEncoder.copyBufferToBufferis now optional.#4508
MSRV of CLI tools bumped to v1.82. This does not affect libraries like
wasm-bindgen,js-sysandweb-sys!#4608
Fixed
Detect more failure scenarios when retrieving the Wasm module.
#4556
Add a workaround for
TextDecoderfailing in older version of Safari when too many bytes are decoded through it over its lifetime.#4472
TypedArray::from(&[T])now works reliably across memory reallocations.#4555
Fix incorrect memory loading and storing assertions during post-processing.
#4554
Fix test
--exactoption not working as expected.#4549
Fix tables being removed even though they are used by stack closures.
#4119
Skip
__wasm_call_ctorswhich we don't want to interpret.#4562
Fix infinite recursion caused by the lack of proc-macro hygiene.
#4601
Fix running coverage with no_modules.
#4604
Fix proc-macro hygiene with
core.#4606
Removed
Crates intended purely for internal consumption by the wasm-bindgen CLI will no longer be published:
#4608
wasm-bindgen-externref-xformwasm-bindgen-multi-value-xformwasm-bindgen-threads-xformwasm-bindgen-wasm-conventionswasm-bindgen-wasm-interpreterConfiguration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR has been generated by Renovate Bot.
582a54742eto015c678056015c678056toc3495ba899c3495ba899to46b3a4df9946b3a4df99to40fe7b813040fe7b8130to5c941d649a5c941d649atoa5426e1abba5426e1abbtod3bd47bd0bd3bd47bd0bto09230833e809230833e8todfa6d1dbb1dfa6d1dbb1to354dab77a8354dab77a8to07c12ac89407c12ac894to7f12f8ab9e7f12f8ab9eto6a7c3adea56a7c3adea5toa0ee22de08a0ee22de08to30dfab299e30dfab299eto16038e4dd816038e4dd8to919a226980919a226980to13f5eee25013f5eee250toa6b99677c3a6b99677c3to2fd917ab572fd917ab57toe1d8bec029e1d8bec029toeadb3f1561eadb3f1561toe5e3d0f193e5e3d0f193toe56e283bbbe56e283bbbto296e1362ea296e1362eatoa979ce5433a979ce5433to648034060e648034060etod700343117d700343117to3a146195cb3a146195cbto977501fca5977501fca5toe3ece89a82e3ece89a82to12d9d44feb12d9d44febto75e08c682975e08c6829to81de5f1fb6⚠️ Artifact update problem
Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.
♻ Renovate will retry this branch, including artifacts, only when one of the following happens:
The artifact failure details are included below:
File name: Cargo.lock
81de5f1fb6to46947b78bf46947b78bfto4e359061074e35906107toc3916e6cddc3916e6cddtob69f6d6040b69f6d6040tob78ddf47c4b78ddf47c4to88577417bd88577417bdto21021ae07b21021ae07bto94f0a6016f94f0a6016fto8dc580eb0f8dc580eb0fto45a45cebfc45a45cebfcto9915e4c4369915e4c436to8ff14878bb8ff14878bbtof8048337a9f8048337a9to8e7e6ae5eeView command line instructions
Checkout
From your project repository, check out a new branch and test the changes.