fix(deps): update all dependencies #19
Loading…
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.75
->1.0.95
1.0.75
->1.0.95
0.5.1
->0.5.3
5.0.9
->7.0.0
5.0.9
->7.0.0
0.1.73
->0.1.83
0.6.1
->0.7.0
0.6.18
->0.7.0
0.7.4
->0.9.0
0.5.0
->0.6.0
0.4.26
->0.4.39
4.3.23
->4.5.23
0.2
->1.0
0.13.0
->0.14.0
1.4.0
->1.5.0
0.5.1
->0.7.2
0.5.1
->0.7.2
0.5.1
->0.7.2
0.5.1
->0.7.2
0.5.1
->0.7.2
0.4.20
->0.4.22
4.4.1
->4.4.2
3.3.0
->3.5.0
14-alpine
->17-alpine
1.4.0
->1.4.1
1.0.0
->1.1.0
1.0.107
->1.0.134
1.0.105
->1.0.134
4
->5
0.6.2
->0.8.0
1
->2
1.33.0
->1.42.0
1.32.0
->1.42.0
0.4.13
->0.5.0
0.3.4
->0.6.0
0.4.0
->0.6.0
1.4.1
->1.11.0
3.3.1
->5.0.0
Release Notes
dtolnay/anyhow (anyhow)
v1.0.95
Compare Source
Error::from_boxed
(#401, #402)v1.0.94
Compare Source
v1.0.93
Compare Source
thiserror
v2v1.0.92
Compare Source
&raw const
and&raw mut
syntax insideensure!
(#390)v1.0.91
Compare Source
v1.0.90
Compare Source
v1.0.89
Compare Source
UnwindSafe
andRefUnwindSafe
impl consistently available between versions of Rust newer and older than 1.72 (#386)v1.0.88
Compare Source
v1.0.87
Compare Source
Error::new
andError::chain
, in no-std mode on Rust 1.81+ (#383)v1.0.86
Compare Source
ensure!
with non-literal after minus sign (#373)v1.0.85
Compare Source
ensure!
macro's rules to unblock some rustc pretty-printer improvements (#368, #371)v1.0.84
Compare Source
ensure!
through aNot
impl for a type that is notbool
(#367)v1.0.83
Compare Source
v1.0.82
Compare Source
v1.0.81
Compare Source
v1.0.80
Compare Source
v1.0.79
Compare Source
v1.0.78
Compare Source
v1.0.77
Compare Source
anyhow::Error::backtrace
available on stable Rust compilers 1.65+ (#293, thanks @LukasKalbertodt)v1.0.76
Compare Source
unsafe_op_in_unsafe_fn
lint (#329)RustCrypto/password-hashes (argon2)
v0.5.3
Compare Source
v0.5.2
Compare Source
async-graphql/async-graphql (async-graphql)
v7.0.13
Compare Source
v7.0.12
1.81.0
SimpleObject
.boxed-trait
feature #1641v7.0.11
v7.0.10
SchemeBuilder.limit_directives
method to set the maximum number of directives on a single field.From<T>
for [Error] set source #1561v7.0.9
on_ping
callback toWebSocket
v7.0.8
rejection
inasync_graphql_axum
#1571time
to3.36
, as it fixes a compilation error in rust1.80
#1572Debug
fordynamic::FieldValue
& Improve error messages for its methods #1582#[doc = ...]
attributes when generating descriptions #1581Websocket::keepalive_timeout
method to sets a timeout for receiving an acknowledgement of the keep-alive ping.v7.0.7
ARGUMENT_DEFINITION
is not being output at the appropriate location in SDL #1559v7.0.6
Interface
andOneofObject
on the same struct #1534v7.0.5
display
attribute for Enum macro #1518v7.0.3
type_name
ofEmptySubscription
fix #1435 #1475Request::set_parsed_query
method #1483NextExecute::run_with_data
method to attach context data before executionv7.0.2
#[derive(OneofObject)]
rejecting enums where the type comes from a macro subsitution #1473impl Future
instead ofasync-trait
in most traits. #1468base64
to0.21
#1466v7.0.1
v7.0.0
http1
v6.0.11
v0.21.x
#1422v6.0.10
0.20.0
#14060.5.0-rc.2
to0.5.0-rc.4
v6.0.9
@composeDirective
in Federation's_service
field and document#[TypeDirective]
#1400v6.0.7
v6.0.6
v6.0.5
ValueAccessor::as_value
andListAccessor::as_values_slice
methods #13531.70.0
v6.0.4
multipart/mixed
request. #1348GraphQL
handler.GraphQL
service.v6.0.3
XXXAccessor
return reference lifetimes that are smaller than expected.OutputType
implementation forstd::sync::Weak
#1334v6.0.1
v0.21.x
#1422v6.0.0
syn
from1.0
to2.0
darling
from0.14
to0.20
indexmap
from1.6.2
to2
guard
,process_with
,complexity
support expression or string as value #1295Dataloader::get_cached_values
method to the dataloader cache so that callers can access the contents of the cache without knowing the keys. #1326Breaking Changes
Since
syn 2.0
no longer supports keywords as meta path, rename the parameter used to specify interface field types fromtype
toty
.https://github.com/dtolnay/syn/issues/1458
https://github.com/TedDriggs/darling/issues/238
location
of the macroDirective
to PascalCasedtolnay/async-trait (async-trait)
v0.1.83
Compare Source
v0.1.82
Compare Source
v0.1.81
Compare Source
syn
dependency (#272, thanks @klensy)v0.1.80
Compare Source
!
(#265, thanks @de-vri-es)v0.1.79
Compare Source
v0.1.78
Compare Source
v0.1.77
Compare Source
v0.1.76
Compare Source
v0.1.75
Compare Source
v0.1.74
Compare Source
tokio-rs/axum (axum)
v0.7.9
: axum - v0.7.9Compare Source
v0.7.8
: axum - v0.7.8Compare Source
serde_json::RawValue
inEvent::json_data
(#2992)method_not_allowed_fallback
to set a fallback when a path matches but there is no handler for the given HTTP method (#2903)MethodFilter::CONNECT
,routing::connect[_service]
and
MethodRouter::connect[_service]
(#2961)NoContent
as a self-described shortcut forStatusCode::NO_CONTENT
(#2978)v0.7.7
: axum - v0.7.7Compare Source
rustdoc now generates tables of content in the sidebar (#2921)
v0.7.6
: axum - v0.7.6Compare Source
Arc
during deserialization ofPath
axum::serve::Serve::tcp_nodelay
andaxum::serve::WithGracefulShutdown::tcp_nodelay
(#2653)Router::has_routes
function (#2790)Serve::local_addr
andWithGracefulShutdown::local_addr
functions (#2881)v0.7.5
: axum - v0.7.5Compare Source
axum::serve
directly witha
Router
orMethodRouter
(#2586)h2
is no longer pulled as a dependency unless thehttp2
featureis enabled (#2605)
v0.7.4
: axum - v0.7.4Compare Source
debug_handler
on tuple response types (#2201)must_use
attribute toServe
andWithGracefulShutdown
(#2484)axum_core::body::BodyDataStream
from axumv0.7.3
: axum - v0.7.3Compare Source
Body
implementsFrom<()>
now (#2411)tracing
feature by default (#2460)serve
(#2398)RouterIntoService
implementsClone
(#2456)v0.7.2
: axum - v0.7.2Compare Source
axum::body::to_bytes
(#2373)serve
(#2400)v0.7.1
: axum - v0.7.1Compare Source
v0.7.0
: axum - v0.7.0Compare Source
WebSocketUpgrade::max_send_queue
(i.e. the
B
type param has been removed) (#1751 and #1789):FromRequestParts
FromRequest
HandlerService
HandlerWithoutStateExt
Handler
LayeredFuture
Layered
MethodRouter
Next
RequestExt
RouteFuture
Route
Router
hyper::Body
as that type is removedin hyper 1.0. Instead axum has its own body type at
axum::body::Body
(#1751)extract::BodyStream
has been removed asbody::Body
implements
Stream
andFromRequest
directly (#1751)sse::Event::json_data
to useaxum_core::Error
as its error type (#1762)DefaultOnFailedUpdgrade
toDefaultOnFailedUpgrade
(#1664)OnFailedUpdgrade
toOnFailedUpgrade
(#1664)TypedHeader
has been move toaxum-extra
(#1850)Empty
andFull
. Useaxum::body::Body::empty
andaxum::body::Body::from
respectively (#1789)IntoResponse::into_response
must useaxum::body::Body
as the body type.axum::response::Response
does this(#1789)
BoxBody
type alias and itsbox_body
constructor. Use
axum::body::Body::new
instead (#1789)RawBody
extractor.axum::body::Body
implementsFromRequest
directly (#1789)http-body
no longer implementIntoResponse
:Full
, useBody::from
insteadEmpty
, useBody::empty
insteadBoxBody
, useBody::new
insteadUnsyncBoxBody
, useBody::new
insteadMapData
, useBody::new
insteadMapErr
, useBody::new
insteadaxum::extract::Request
type alias where the body isaxum::body::Body
(#1789)Router::as_service
andRouter::into_service
to workaroundtype inference issues when calling
ServiceExt
methods on aRouter
(#1835)axum::Server
as it was removed in hyper 1.0. Insteaduse
axum::serve(listener, service)
or hyper/hyper-util for more configuration options (#1868)Router::nest
.Routers nested with
Router::nest_service
will no longer inherit fallbacks (#1956)Sec-WebSocket-Key
header inWebSocketUpgrade
(#1972)axum::extract::Query::try_from_uri
(#2058)IntoResponse
forBox<str>
andBox<[u8]>
([#2035])MethodFilter
. It no longer uses bitflags (#2073).source()
of composite rejections (#2030)#[debug_handler]
(#2014)IntoResponse
for(R,) where R: IntoResponse
(#2143)NestedPath
extractor (#1924)handle_error
function to existingServiceExt
trait (#2235)impl<T> IntoResponse(Parts) for Extension<T>
now requiresT: Clone
, as that is required by the http crate (#1882)axum::Json::from_bytes
(#2244)FromRequestParts
forhttp::request::Parts
(#2328)FromRequestParts
forhttp::Extensions
(#2328)DefaultBodyLimit
to individual routes (#2157)maxcountryman/axum-sessions (axum-sessions)
v0.6.1
Compare Source
v0.6.0
: Migration totower-sessions
Compare Source
chronotope/chrono (chrono)
v0.4.39
: 0.4.39Compare Source
What's Changed
from_timestamp_nanos()
by @sgoll in https://github.com/chronotope/chrono/pull/1591NaiveWeek
methods by @bragov4ik in https://github.com/chronotope/chrono/pull/1600PartialEq
,Eq
,Hash
,Copy
andClone
onNaiveWeek
by @DSeeLP in https://github.com/chronotope/chrono/pull/1618#[inline]
tonum_days
by @CommanderStorm in https://github.com/chronotope/chrono/pull/1627v0.4.38
Compare Source
This release bring a ca. 20% improvement to the performance of the formatting code, and a convenient
days_since
method for theWeekday
type.Chrono 0.4.38 also removes the long deprecated
rustc-serialize
feature. Support forrustc-serialize
will be soft-destabilized in the next Rust edition. Removing the feature will not break existing users of the feature; Cargo will just not update dependents that rely on it to newer versions of chrono.In chrono 0.4.36 we made an accidental breaking change by switching to
derive(Copy)
forDateTime
instead of a manual implementation. It is reverted in this release.Removals
rustc-serialize
feature (#1548, thanks @workingjubilee)Additions
Weekday::days_since
(#1249, based on #216 by @clarfonthey)TimeDelta::checked_mul
andTimeDelta::checked_div
(#1565, thanks @Zomtir)Fixes
Copy
forDateTime
if offset isCopy
(#1573)Internal
test_encodable_json
andtest_decodable_json
functions (#1550)cargo hack check
(#1553)Thanks to all contributors on behalf of the chrono team, @djc and @pitdicker!
v0.4.37
Compare Source
Version 0.4.36 introduced an unexpected breaking change and was yanked. In it
LocalResult
was renamed toMappedLocalTime
to avoid the impression that it is aResult
type were some of the results are errors. For backwards compatibility a type alias with the old name was added.As it turns out there is one case where a type alias behaves differently from the regular enum: you can't import enum variants from a type alias with
use chrono::LocalResult::*
. With 0.4.37 we make the new nameMappedLocalTime
the alias, but keep using it in function signatures and the documentation as much as possible.See also the release notes of chrono 0.4.36 from yesterday for the yanked release.
v0.4.36
Compare Source
This release un-deprecates the methods on
TimeDelta
that were deprecated with the 0.4.35 release because of the churn they are causing for the ecosystem.New is the
DateTime::with_time()
method. As an example of when it is useful:Additions
DateTime::with_time()
(#1510)Deprecations
TimeDelta
deprecations (#1543)TimeStamp::timestamp_subsec_nanos
, which was missed in the 0.4.35 release (#1486)Documentation
Internal
Copy
andSend
impls (#1492, thanks @erickt)NaiveDate
unit tests (#1500, thanks @Zomtir)LocalResult
toTzResolution
, add alias (#1501)NaiveDate::from_yof
(#1518)DateTime::date_naive
andNaiveDate::diff_months
(#1530)unwrap
in UnixLocal
type (#1533)Thanks to all contributors on behalf of the chrono team, @djc and @pitdicker!
v0.4.35
Compare Source
Most of our efforts have shifted to improving the API for a 0.5 release, for which cleanups and refactorings are landing on the 0.4.x branch.
The most significant changes in this release are two sets of deprecations.
We deprecated all timestamp-related methods on
NaiveDateTime
. The reason is that a timestamp is defined to be in UTC. TheNaiveDateTime
type doesn't know the offset from UTC, so it was technically wrong to have these methods. The alternative is to use the similar methods on theDateTime<Utc>
type, or from theTimeZone
trait.Converting from
NaiveDateTime
toDateTime<Utc>
is simple with.and_utc()
, and in the other direction with.naive_utc()
.The panicking constructors of
TimeDelta
(the new name of theDuration
type) are deprecated. This was the last part of chrono that defaulted to panicking on error, dating from before rust 1.0.A nice change is that
NaiveDate
now includes a niche. So nowOption<NaiveDate>
,Option<NaiveDateTime>
andOption<DateTime<Tz>>
are the same size as their base types.format::Numeric
andformat::Fixed
are marked asnon_exhaustive
. This will allow us to improve our formatting and parsing support, and we have reason to believe this breaking change will have little to no impact on users.Additions
DateTime::{from_timestamp_micros, from_timestamp_nanos}
(#1234)Parsed
(#1465)Deprecations
NaiveDateTime
(#1473)TimeDelta
(#1450)Changes/fixes
NonZeroI32
insideNaiveDate
(#1207)format::Numeric
andformat::Fixed
asnon_exhaustive
(#1430)Parsed
fixes to error values (#1439)overflowing_naive_local
inDateTime::checked_add*
(#1333)Parsed::set_*
(#1465)Documentation
Parsed
(#1439)Internal
internals
module (#1428, #1429, #1431, #1432, #1433, #1438)x86_64-unknown-illumos
instead of Solaris (#1437)cargo hack check
on Linux (#1442)parse_internal
(#1459)SerdeError
(#1458)NaiveDate::from_isoywd
a bit (#1464)Thanks to all contributors on behalf of the chrono team, @djc and @pitdicker!
v0.4.34
Compare Source
Notable changes
Duration
type toTimeDelta
. This removes the confusion between chrono's type and the laterDuration
type in the standard library. It will remain available under the old name as a type alias for compatibility.Local
is rewritten. The new version avoids panics when the date is outside of the range supported by windows (the years 1601 to 30828), and gives more accurate results during DST transitions.Display
format ofTimeDelta
is modified to conform better to ISO 8601. Previously it converted all values greater than 24 hours to a value with days. This is not correct, as doing so changes the duration from an 'accurate' to a 'nominal' representation to use ISO 8601 terms.Fixes
TimeDelta::milliseconds
(#1385, thanks @danwilliams)DurationExceedsTimestamp
inDurationRound
(#1403, thanks @joroKr21)%X
(https://github.com/chronotope/pure-rust-locales/pull/12, #1420)GetTimeZoneInformationForYear
(#1017)Additions
TimeDelta::try_milliseconds
(#1385, thanks @danwilliams)TimeDelta::new
(#1337)StrftimeItems::{parse, parse_to_owned}
and more documentation (#1184)format::Locale
(via https://github.com/chronotope/pure-rust-locales/pull/8)Changes
Duration
toTimeDelta
, add type alias (#1406)TimeDelta
methods const (#1337)NaiveDate
,NaiveWeek
,NaiveTime
andNaiveDateTime
const where possible (#1337)DateTime
const where possible (#1400)Display
format ofTimeDelta
conform better to ISO 8601 (#1328)Documentation
timestamp_micros
's Example doc (#1338 via #1386, thanks @emikitas)TimeDelta
constructors (#1385, thanks @danwilliams)Internal
main
branch, work on 0.5 happens in the0.5.x
branch (#1390, #1402).impl Arbitrary for DateTime
and set up CI test (#1336)codecov/codecov-action
from 3 to 4 (#1404)-0000
offset (#1411)TOO_LONG
error out ofparse_internal
(#1419)Thanks to all contributors on behalf of the chrono team, @djc and @pitdicker!
v0.4.33
Compare Source
This release fixes the broken docrs.rs build of chrono 0.4.32.
What's Changed
rkyv
feature implysize_32
(#1383)Duration::hours()
exception (#1384, thanks @danwilliams)v0.4.32
Compare Source
In this release we shipped part of the effort to reduce the number of methods that could unexpectedly panic, notably for the
DateTime
andDuration
types.Chrono internally stores the value of a
DateTime
in UTC, and transparently converts it to the local value as required. For example adding a second to aDateTime
needs to be done in UTC to get the correct result, but adding a day needs to be done in local time to be correct. What happens when the value is near the edge of the representable range, and the implicit conversions pushes it beyond the representable range? Many methods could panic on such inputs, including formatting the value forDebug
output.In chrono 0.4.32 the range of
NaiveDate
,NaiveDateTime
andDateTime
is made slightly smaller. This allows us to always do the implicit conversion, and in many cases return the expected result. Specifically the range is now from January 1, -262144 until December 31, 262143, one year less on both sides than before. We expect this may trip up tests if you hardcoded theMIN
andMAX
dates.Duration
had a similar issue. The range of this type was pretty arbitrary picked to match the range of ani64
in milliseconds. Negating ani64::MIN
pushes a value out of range, and in the same way negatingDuration::MIN
could push it out of our defined range and cause a panic. This turns out to be somewhat common and hidden behind many layers of abstraction. We adjusted the type to have a minimum value of-Duration::MAX
instead and prevent the panic case.Other highlights:
Duration
gained new fallible initialization methods.rkyv
.NaiveDateTime
are now const.DateTime
const in a future release.Complete list of changes:
Fixes
TimeZone::from_local_datetime
(#1071)DateTime
getters and setters (#1317, #1329)Additions
NaiveDateTime::checked_(add|sub)_offset
(#1313)DateTime::to_utc
(#1325)Default
forDuration
(#1327)Duration::subsec_nanos
(#1327)try_*
builders toDuration
(#1327)AddAssign
andSubAssign
forDuration
(#1327)NaiveDateTime
const where possible (#1286)clock
feature intoclock
andnow
(#1343, thanks @mmastrac)From<NaiveDate>
forNaiveDateTime
(#1355, thanks @dcechano)NaiveDateTime::from_timestamp_nanos
(#1357, thanks @Ali-Mirghasemi)Months::num_months()
andnum_years()
(#1373, thanks @danwilliams)DateTime<Utc>::from_timestamp_millis
(#1374, thanks @xmakro)Changes
Duration::MIN.abs()
(adjustDuration::MIN
by 1 millisecond) (#1334)Deprecations
format
functions (#1306)Documentation
doc_auto_cfg
(#1305, #1326)Add
/Sub
impls and useexpect
(#1316)TimeZone::datetime_from_str
(#1342, thanks @tmccombs)Datelike
impl forDateTime
(#1376, thanks @ElectrifyPro)Rkyv support
Archived*
types inrkyv
module (#1304)Archived*
types (#1271, thanks @Awpteamoose)Changes to unstable features
unstable-locales
imply thealloc
feature (#1307)format::{format_localized, format_item_localized}
(#1311)write_rfc2822_inner
, don't localize (#1322)Internal
DateTime::with_*
(#1309)*_DAYS_FROM_YEAR_0
calculation (#1312)NaiveTime::overflowing_(add|sub)_offset
(#1310)DateTime::overflowing_(add|sub)_offset
(#1069)set env LC_ALL
(#1315, thanks @jtmoon79)deny.toml
(#1320)with: node-version
(#1352, thanks @jtmoon79)toml
job (#1371, thanks @gibbz00)Thanks to all contributors on behalf of the chrono team, @djc and @pitdicker!
v0.4.31
Compare Source
Another maintenance release.
It was not a planned effort to improve our support for UNIX timestamps, yet most PRs seem related to this.
Deprecations
timestamp_nanos
in favor of the non-panickingtimestamp_nanos_opt
(#1275)Additions
DateTime::<Utc>::from_timestamp
(#1279, thanks @demurgos)TimeZone::timestamp_micros
(#1285, thanks @emikitas)DateTime<Tz>::timestamp_nanos_opt
andNaiveDateTime::timestamp_nanos_opt
(#1275)UNIX_EPOCH
constants (#1291)Fixes
This makes many methods a little more strict:
NaiveTime::from_hms_milli
NaiveTime::from_hms_milli_opt
NaiveTime::from_hms_micro
NaiveTime::from_hms_micro_opt
NaiveTime::from_hms_nano
NaiveTime::from_hms_nano_opt
NaiveTime::from_num_seconds_from_midnight
NaiveTime::from_num_seconds_from_midnight_opt
NaiveDate::and_hms_milli
NaiveDate::and_hms_milli_opt
NaiveDate::and_hms_micro
NaiveDate::and_hms_micro_opt
NaiveDate::and_hms_nano
NaiveDate::and_hms_nano_opt
NaiveDateTime::from_timestamp
NaiveDateTime::from_timestamp_opt
TimeZone::timestamp
TimeZone::timestamp_opt
NaiveDateTime::timestamp_nanos_opt
(#1294, thanks @crepererum)Documentation
Internal
__doctest
feature anddoc_comment
dependency (#1276)actions/checkout
from 3 to 4 (#1280)NaiveDate::add_days
for small values (#1214)pure-rust-locales
to 0.7.0 (#1288, thanks @jeremija wo did good improvements onpure-rust-locales
)Thanks to all contributors on behalf of the chrono team, @djc and @pitdicker!
v0.4.30
Compare Source
In this release, we have decided to swap out the
chrono::Duration
type (which has been a re-export of time 0.1Duration
type) with our own definition, which exposes a strict superset of thetime::Duration
API. This helps avoid warnings about the CVE-2020-26235 and RUSTSEC-2020-0071 advisories for downstream users and allows us to improve theDuration
API going forward.While this is technically a SemVer-breaking change, we expect the risk of downstream users experiencing actual incompatibility to be exceedingly limited (see our analysis of public code using a crater-like experiment), and not enough justification for the large ecosystem churn of a 0.5 release. If you have any feedback on these changes, please let us know in #1268.
Additions
NaiveDate::leap_year
(#1261)Documentation
Timelike::num_seconds_from_midnight
is a simple mapping (#1255)Relation between chrono and time 0.1
Rust first had a
time
module added tostd
in its 0.7 release. It later moved tolibextra
, and then to alibtime
library shipped alongside the standard library. In 2014 work on chrono started in order to provide a full-featured date and time library in Rust. Some improvements from chrono made it into the standard library; notably,chrono::Duration
was included asstd::time::Duration
(rust#15934) in 2014.In preparation of Rust 1.0 at the end of 2014
libtime
was moved out of the Rust distro and into thetime
crate to eventually be redesigned (rust#18832, rust#18858), like thenum
andrand
crates. Of course chrono kept its dependency on thistime
crate.time
started re-exportingstd::time::Duration
during this period. Later, the standard library was changed to have a more limited unsignedDuration
type (rust#24920, RFC 1040), while thetime
crate kept the full functionality withtime::Duration
.time::Duration
had been a part of chrono's public API.By 2016
time
0.1 lived under therust-lang-deprecated
organisation and was not actively maintained (time#136). chrono absorbed the platform functionality andDuration
type of thetime
crate in chrono#478 (the work started in chrono#286). In order to preserve compatibility with downstream crates depending ontime
andchrono
sharing aDuration
type, chrono kept depending on time 0.1. chrono offered the option to opt out of thetime
dependency by disabling theoldtime
feature (swapping it out for an effectively similar chrono type). In 2019, @jhpratt took over maintenance on thetime
crate and released what amounts to a new crate astime
0.2.Security advisories
In November of 2020 CVE-2020-26235 and RUSTSEC-2020-0071 were opened against the
time
crate. @quininer had found that calls tolocaltime_r
may be unsound (chrono#499). Eventually, almost a year later, this was also made into a security advisory against chrono as RUSTSEC-2020-0159, which had platform code similar totime
.On Unix-like systems a process is given a timezone id or description via the
TZ
environment variable. We need this timezone data to calculate the current local time from a value that is in UTC, such as the time from the system clock.time
0.1 and chrono used the POSIX functionlocaltime_r
to do the conversion to local time, which reads theTZ
variable.Rust assumes the environment to be writable and uses locks to access it from multiple threads. Some other programming languages and libraries use similar locking strategies, but these are typically not shared across languages. More importantly, POSIX declares modifying the environment in a multi-threaded process as unsafe, and
getenv
in libc can't be changed to take a lock because it returns a pointer to the data (see rust#27970 for more discussion).Since version 4.20 chrono no longer uses
localtime_r
, instead using Rust code to query the timezone (from theTZ
variable or viaiana-time-zone
as a fallback) and work with data from the system timezone database directly. The code for this was forked from the tz-rs crate by @x-hgg-x. As such, chrono now respects the Rust lock when reading theTZ
environment variable. In general, code should avoid modifying the environment.Removing time 0.1
Because time 0.1 has been unmaintained for years, however, the security advisory mentioned above has not been addressed. While chrono maintainers were careful not to break backwards compatibility with the
time::Duration
type, there has been a long stream of issues from users inquiring about the time 0.1 dependency with the vulnerability. We investigated the potential breakage of removing the time 0.1 dependency in chrono#1095 using a crater-like experiment and determined that the potential for breaking (public) dependencies is very low. We reached out to those few crates that did still depend on compatibility with time 0.1.As such, for chrono 0.4.30 we have decided to swap out the time 0.1
Duration
implementation for a local one that will offer a strict superset of the existing API going forward. This will prevent most downstream users from being affected by the security vulnerability in time 0.1 while minimizing the ecosystem impact of semver-incompatible version churn.Thanks to all contributors on behalf of the chrono team, @djc and @pitdicker!
v0.4.29
Compare Source
This release fixes a panic introduced in chrono 0.4.27 in
FromStr<DateTime<Utc>>
(#1253).Chrono now has a Discord channel.
Fixes
parse_rfc3339_relaxed
(#1254)Deprecations
TimeZone::datetime_from_str
(#1251)Documentation
FromStr
forWeekday
andMonth
(#1226, thanks @wfraser)Internal improvements
i686
andwasm32-wasi
(#1237)This allows us to upgrade the criterion dependency to 5.1 without changing our MSRV.
Thanks to all contributors on behalf of the chrono team, @djc and @pitdicker!
v0.4.28
Compare Source
This release fixes a test failure on 32-bit targets introduced with 0.4.27, see https://github.com/chronotope/chrono/issues/1234.
v0.4.27
Compare Source
This release bumps the MSRV from 1.56 to 1.57. This allows us to take advantage of the panicking in const feature. In this release most methods on
NaiveDate
andNaiveTime
are made const,NaiveDateTime
and others will follow in a later release.The parser for the
%+
formatting specifier and theRFC3339
formatting item is switched from a strict to a relaxed parser (see https://github.com/chronotope/chrono/pull/1145). This matches the existing documentation, and the parser used byDateTime::from_str
. If you need to validate the input, consider usingDateTime::from_rfc3339
.Deprecations
DateTime::{from_local, from_utc}
(https://github.com/chronotope/chrono/pull/1175)Additions
DateTime::signed_duration_since
take argument withBorrow
(https://github.com/chronotope/chrono/pull/1119)PartialOrd
forMonth
(https://github.com/chronotope/chrono/pull/999, thanks @Munksgaard)Ord
andEq
for types which already derivePartialOrd
andPartialEq
(https://github.com/chronotope/chrono/pull/1128, thanks @totikom)FusedIterator
forNaiveDateDaysIterator
andNaiveDateWeeksIterator
(https://github.com/chronotope/chrono/pull/1134)NaiveDateDaysIterator
andNaiveDateWeeksIterator
public (https://github.com/chronotope/chrono/pull/1134)FromStr
forFixedOffset
(https://github.com/chronotope/chrono/pull/1157, thanks @mcronce)Tz::Offset: Display
requirement fromDateTime::to_rfc*
(https://github.com/chronotope/chrono/pull/1160)StrftimeItems
withunstable-locales
work without allocating (https://github.com/chronotope/chrono/pull/1152)NaiveDate::from_ymd_opt
const (https://github.com/chronotope/chrono/pull/1172, thanks @kamadorueda)Error
trait forParseWeekdayError
andParseMonthError
(https://github.com/chronotope/chrono/pull/539, thanks @mike-kfed)NaiveTime
const, update MSRV to 1.57 (https://github.com/chronotope/chrono/pull/1080)NaiveDate
const (https://github.com/chronotope/chrono/pull/1205)core::time::Duration
onDateTime
types (https://github.com/chronotope/chrono/pull/1229)Fixes
timestamp_nanos
panics on overflow in release builds (https://github.com/chronotope/chrono/pull/1123)offset_from_local_datetime
forwasm_bindgen
(https://github.com/chronotope/chrono/pull/1131)%s
to be a timestamp in UTC (https://github.com/chronotope/chrono/pull/1136)%#z
(https://github.com/chronotope/chrono/pull/1140, thanks @domodwyer)%c
and%r
(https://github.com/chronotope/chrono/pull/1165)unstable-locales
feature (https://github.com/chronotope/chrono/pull/1168)Offset
'sDebug
impl when serializingDateTime
(https://github.com/chronotope/chrono/pull/1035)NaiveTime::from_str
(https://github.com/chronotope/chrono/pull/1181)android-tzdata
if theclock
feature is not enabled (https://github.com/chronotope/chrono/pull/1220, thanks @AlexTMjugador)Documentation
NaiveTime
doc typo (https://github.com/chronotope/chrono/pull/1146, thanks @zachs18)Datelike::with_*
(https://github.com/chronotope/chrono/pull/1199)Utc::now
andLocal::now
(https://github.com/chronotope/chrono/pull/1192)Weekday::num_days_from_monday
(https://github.com/chronotope/chrono/pull/1193)Internal improvements
DateTime::to_rfc_*
optimizations (https://github.com/chronotope/chrono/pull/1200)format/formatting.rs
(https://github.com/chronotope/chrono/pull/1156)saturating_abs
(https://github.com/chronotope/chrono/pull/1124)Makefile
(https://github.com/chronotope/chrono/pull/1133)wasm-bindgen
feature (https://github.com/chronotope/chrono/pull/1131)try_verify_against_date_command
(https://github.com/chronotope/chrono/pull/1161)no_std
(https://github.com/chronotope/chrono/pull/1166)test_parse
(https://github.com/chronotope/chrono/pull/1170)#![deny(dead_code)]
(https://github.com/chronotope/chrono/pull/1187)test_date_extreme_offset
(https://github.com/chronotope/chrono/pull/1195)features-check
(https://github.com/chronotope/chrono/pull/1216)Thanks to all contributors on behalf of the chrono team, @djc and @pitdicker!
clap-rs/clap (clap)
v4.5.23
Compare Source
Fixes
allow_negative_numbers
, allowE
againv4.5.22
Compare Source
Fixes
v4.5.21
Compare Source
Fixes
ignore_errors(true)
v4.5.20
Compare Source
Features
CommandExt
v4.5.19
Compare Source
Internal
v4.5.18
Compare Source
Features
Arg::get_display_order
andCommand::get_display_order
v4.5.17
Compare Source
Fixes
v4.5.16
Compare Source
Fixes
derive
feature is missingv4.5.15
Compare Source
Compatiblity
Arg::remove
changed return typesFixes
Arg::remove
return the removed itemv4.5.14
Compare Source
Features
Arg::add
for attaching arbitrary state, like completion hints, toArg
withoutArg
knowing about itv4.5.13
Compare Source
Fixes
#[flatten]
ing an optional#[group(skip)]
v4.5.12
Compare Source
v4.5.11
Compare Source
v4.5.10
Compare Source
v4.5.9
Compare Source
Fixes
v4.5.8
Compare Source
Fixes
v4.5.7
Compare Source
Fixes
num_args
v4.5.6
Compare Source
v4.5.5
Compare Source
Fixes
exclusive
to overriderequired_unless_present
,required_unless_present_any
,required_unless_present_all
v4.5.4
Compare Source
Fixes
#[arg(id)]
attributes againv4.5.3
Compare Source
Internal
heck
v4.5.2
Compare Source
Fixes
allow_negative_numbers
, allowE
againv4.5.1
Compare Source
Internal
v4.5.0
Compare Source
Compatibility
v4.4.18
Compare Source
Fixes
usage
feature, ensure the list of required arguments is uniquev4.4.17
Compare Source
Fixes
panic!
when mixingargs_conflicts_with_subcommands
withArgGroup
(which is implicit withderive
) introduced in 4.4.15v4.4.16
Compare Source
Fixes
v4.4.15
Compare Source
Fixes
args_conflicts_with_subcommands
args_conflicts_with_subcommands
when using subcommand short and long flagsv4.4.14
Compare Source
Documentation
find
cookbook entry to allow repeats of flags/optionsFeatures
num_args(0)
on options which allows making them emulate being a flag for position-tracking flagsv4.4.13
Compare Source
Documentation
v4.4.12
Compare Source
Performance
TypedValueParser
for possible values if neededv4.4.11
Compare Source
Features
Command::mut_group
v4.4.10
Compare Source
Documentation
v4.4.9
Compare Source
Fixes
Command::about
under flattened headingshide
when flattening subcommandsv4.4.8
Compare Source
Features
Command::flatten_help
to allowgit stash -h
like help for subcommandsv4.4.7
Compare Source
Performance
v4.4.6
Compare Source
Internal
anstream
v4.4.5
Compare Source
Fixes
name
orlong_flag
, allow ambiguous-looking matches that unambiguously map back to the same commandlong_flag
, don't panicv4.4.4
Compare Source
Internal
terminal_size
to 0.3v4.4.3
Compare Source
Documentation
v4.4.2
Compare Source
Performance
once_cell
dependencyv4.4.1
Compare Source
Fixes
usage
feature, ensure the list of required arguments is uniquev4.4.0
Compare Source
compatibility
v4.3.24
Compare Source
Fixes
--help
with custom templatesiamcodemaker/console_log (console_log)
v1.0.0
Compare Source
This is a re-release of v0.2.2. There have been no major code changes for over two years. Let's call it stable. 🎉
Full Changelog: https://github.com/iamcodemaker/console_log/compare/0.2.2...1.0.0
graphql-rust/graphql-client (graphql_client)
v0.14.0
Compare Source
extend type
directivegraphqls://
schemagenerate_module_token_stream_from_string
to allow custom macro wrappersrust-lang-nursery/lazy-static.rs (lazy_static)
v1.5.0
Compare Source
leptos-rs/leptos (leptos)
v0.7.2
Compare 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
popovertarget
andpopovertargetaction
for 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.1
Compare 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!Send
Actix APIs in server functions by @gbj in https://github.com/leptos-rs/leptos/pull/3326scroll
prop 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_children
docs. by @bicarlsen in https://github.com/leptos-rs/leptos/pull/3352usize
by @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-checks
on 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.0
Compare 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-leptos
version. 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
.await
on resources andasync
in<Suspense/>
Currently,
create_resource
allows you to synchronously access the value of some async data as eitherNone
orSome(_)
. However, it requires that you always access it this way. This has some drawbacks:Now, you can
.await
a resource, and you can useasync
blocks within a<Suspense/>
via theSuspend
wrapper, which makes it easier to chain two resources:Reference-counted signal types
One of the awkward edge cases of current Leptos is that our
Copy
arena 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 areClone
but notCopy
and manage their memory via reference counting, but can easily be converted into the copyableRwSignal
etc. This makes working with nested signal correctly much easier, without sacrificing ergonomics meaningfully. See the 0.7counters
example 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
Suspense
they will be passed through to whatever it returns.Improved
<ProtectedRoute/>
The current
ProtectedRoute
component 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 newProtectedRoute
is reactive and uses Suspense so you can use resources or reactive data. There are examples of this now inrouter
andssr_modes_axum
.Two-way binding with
bind:
syntaxTwo-way binding allows you to pass signals directly to inputs, rather than separately managing
prop:value
andon:input
to 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
Store
does 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
stores
example shows a complete use case.Support the View Transition API for router animations
The
Routes
/FlatRoutes
component now have atransition
prop. Setting this totrue
will 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-progress
while navigating,.router-back
during a back navigation, and.router-outlet-{n}
for the depth of the outlet that is being changed (0
for the root page changing,1
for the firstOutlet
, etc.) Therouter
example 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::components
andleptos_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_signal
tosignal
(likechannel
)create_rw_signal
toRwSignal::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
View
enum 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 theEither
enums 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 theEither
types should be preferred, butAnyView
is 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_configuration
is sync (remove the.await
).leptos_routes
no longer takesLeptosOptions
as 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.
fallback
is 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
router
andhackernews
examples.Send
/Sync
signalsBy 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 specifyLocalStorage
instead. Many APIs have_local()
alternatives to enable this.Custom
IntoView
andIntoAttribute
implementationsIf you currently have implementations of
IntoView
orIntoAttribute
for custom data types, in a way that allows you to use them directly in the view, you should replace those with implementations ofIntoRender
andIntoAttributeValue
, respectively. See this PR for examples.Minor Breaking Changes
Await
component now takes a plainFuture
for itsfuture
prop rather than aFn() -> Future
, because it uses an optimized resource implementationIntoRender
rather thanIntoView
(see discussion in #3062)ParamsMap
supports 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 keyStylesheet
component no longer automatically works with the file hashing feature ofcargo-leptos
. You can useHashedStylesheet
and pass it the appropriate props instead.<A>
component with aclass
prop that set theclass
on the<a>
element.) These have been replaced by the new attribute-spreading API, to reduce complexity of the components themselves.LeptosOptions
now usesArc<str>
for its fields that were formerlyString
, so that it is less expensive to clone. In practice, this usually only means using&field
orfield.as_ref()
in a few places that require&str
, and so on.experimental-islands
feature renamed toislands
batch
function 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 "someT
or 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() -> T
as 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
examples
directory 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
View
needed to beClone
for 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:
Clone
but 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
AnyView
type), 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.15
Compare 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-error
toproc-macro-error2
per RUSTSEC.What's Changed
proc-macro-error2
to 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.14
Compare 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-bindgen
andweb-sys
for 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.13
Compare 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
rkyv
feature interaction with Axum integration by @gbj in https://github.com/leptos-rs/leptos/pull/2631ToChildren
by @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
v0.6.12
Compare Source
This is mainly a maintenance release, but includes a couple new features that I want to point out:
impl Trait
in Component PropsYou can now use
impl Trait
syntax directly in component props, rather than explicitly specifying a generic and awhere
clausebefore
after
Support spreading dynamic attributes from one component to another
In the following code
Bar
doesn't currently inherit attributes fromFoo
when it spreads its attributes. PR #2534 fixes this.Complete Changelog
<ActionForm>
onformmethod="dialog"
submission (closes #2523) by @gbj in https://github.com/leptos-rs/leptos/pull/2531Oco
separately asoco_ref
crate so that it can be used elsewhere by @gbj in https://github.com/leptos-rs/leptos/pull/2536input_derive
parameter to#[server]
macro (closes #2544) by @luxalpa in https://github.com/leptos-rs/leptos/pull/2545empty_docs
warnings in#[component]
macro by @abusch in https://github.com/leptos-rs/leptos/pull/2574--release
) by @gbj in https://github.com/leptos-rs/leptos/pull/2587#[component]
now handlesimpl Trait
by converting to generic type params, fix #2274 by @MingweiSamuel in https://github.com/leptos-rs/leptos/pull/2599New Contributors
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.6.11...v0.6.12
v0.6.11
Compare Source
The primary purpose of this release is that it includes a fix for an unfortunate memory leak when using
leptos_router
on the server.Also included are
spread
example for the full set of possibilities)IntoView
directly forRc<str>
view
macroIt's important to me to say that all three of the new features above were implemented by community members. This release brings us to over 250 total contributors over time, not to mention everyone who's done work on docs, templates, or libraries that exist outside this repo. Thank you to everyone who's been involved in this project so far.
What's Changed
Location
header when usingleptos_actix::redirect()
without JS/WASM (closes #2506) by @gbj in https://github.com/leptos-rs/leptos/pull/2507counter_isomorphic
by @gbj in https://github.com/leptos-rs/leptos/pull/2510New Contributors
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.6.10...v0.6.11
v0.6.10
Compare Source
Mostly a patch release with a number of bugfixes, as well as some nice quality-of-life improvements:
#[prop(attrs)]
on slotson:
to dynamic children of components (i.e., when you do<MyComponent on:.../>
, the event listener is now applied correctly to more of the children of<MyComponent/>
)What's Changed
view! {}
in hot-reloading code (closes #2421) by @gbj in https://github.com/leptos-rs/leptos/pull/2478New Contributors
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.6.9...v0.6.10
v0.6.9
Compare Source
Mostly this release exists to fix imports in Cargo, as well as a few minor bug fixes
What's Changed
New Contributors
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.6.8...v0.6.9
v0.6.8
Compare Source
Mostly this release is to disable file hashing by default, and streamline it's use. It can now be enabled by setting
hash-files=true
in your Cargo.toml or setting theLEPTOS_HASH_FILES=true
env var when running cargo-leptos. If you're using Docker or moving the bin to a new folder, you need to copy the (by default)hash.txt
file fromtarget/{release_profile_name}
to the same folder as your binary, and make sure the env var or cargo.toml option is enabled. Also some minor bug fixesWhat's Changed
PartialEq
removed fromcreate_owning_memo
by @zroug in https://github.com/leptos-rs/leptos/pull/2394New Contributors
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.6.7...v0.6.8
v0.6.7
: 0.6.7Compare Source
Hello everyone! Some lovely changes in here. My favorite is the addition of version hashes to css,js, and wasm files to automatically invalidate browser caching issues. Be sure to update to the latest version of cargo leptos(v0.2.8) to test out this feature. As always, big thanks to our returning contributors and welcome to the new folks!
What's Changed
impl_from
argument to#[server]
proc_macro by @videobitva in https://github.com/leptos-rs/leptos/pull/2335FromUtf8Error
inoco.rs
by @zoomiti in https://github.com/leptos-rs/leptos/pull/2318New Contributors
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.6.6...v0.6.7
v0.6.6
Compare Source
Fixed some issues with examples, integrated a server macro for Spin, and improved a number of typos. Thanks to all that participated!
For general 0.6 release notes, see here.
What's Changed
cargo fmt
by @martinfrances107 in https://github.com/leptos-rs/leptos/pull/2254.into()
calls consistent by @blorbb in https://github.com/leptos-rs/leptos/pull/2249.dispatch()
an action immediately (closes #2225) by @gbj in https://github.com/leptos-rs/leptos/pull/2286server_fn
by @gbj in https://github.com/leptos-rs/leptos/pull/2320tailwind_axum
by @gbj in https://github.com/leptos-rs/leptos/pull/2324New Contributors
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.6.5...v0.6.6
v0.6.5
: 0.6.5Compare Source
This fixes a few bugs that have popped up since 0.6. For general 0.6 release notes, see here.
What's Changed
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.6.4...v0.6.5
v0.6.4
: 0.6.4Compare Source
This fixes a few bugs that have popped up since 0.6.3. For general 0.6 migration notes, see here.
What's Changed
edtion = "2021"
inrustfmt.toml
by @chrisp60 in https://github.com/leptos-rs/leptos/pull/2235create_local_resource
(closes #2237) by @gbj in https://github.com/leptos-rs/leptos/pull/2238Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.6.3...v0.6.4
v0.6.3
: 0.6.3Compare Source
This is release for our new server functions rewrite and Axum 0.7 support.
This should be a relatively feature-rich release, with limited breaking changes.
Migration
Actix
.handle_server_fns()
call in yourmain.rs
, as server functions are now handled in.leptos_routes()
extract
function has been removed, and replaced with a newextract
that has the same API as the currentextractor
. I think this API is strictly better, but please share feedback if you disagree.Axum
http
1.0 andtower_http
0.5.).handle_server_fns()
call in yourmain.rs
, as server functions are now handled in.leptos_routes()
extract
function has been removed, and replaced with a newextract
that has the same API as the currentextractor
. I think this API is strictly better, but please share feedback if you disagree.RequestParts
has been removed, ashttp::request::Parts
now implementsClone
: anyuse_context::<RequestParts>()
should be updated to useParts
directly instead.ServerFnError::new()
The addition of custom error types means that constructing
ServerFnError
inside server functions can cause type inference errors:As a result, we've added a helper
ServerFnError::new
which simply constructs aServerFnError::<NoCustomError>::ServerError
:This has the benefit of being more concise than the earlier pattern in any case.
Features
A rewritten server function system that is backwards-compatible, but reduces binary size and increases flexibility, specifically by allowing
.leptos_routes()
from the integrationsIntoReq
,FromReq
,IntoRes
, and/orFromRes
traits#[middleware]
macro to add per-server-function middleware from the Tower or Actix ecosystems (#1461)Note: The additional included encodings (
serde_lite
,rkyv
, multipart form data) are all enabled by additive features on theserver_fn
crate. If you want to use them you can just add that crate as a dependency and enable the required features.Example: You can find a comprehensive example of these new features in the new
server_fns_axum
example.Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.5.7...0.6.3
v0.6.2
Compare Source
This is release for our new server functions rewrite and Axum 0.7 support.
This should be a relatively feature-rich release, with limited breaking changes.
Migration
Actix
.handle_server_fns()
call in yourmain.rs
, as server functions are now handled in.leptos_routes()
extract
function has been removed, and replaced with a newextract
that has the same API as the currentextractor
. I think this API is strictly better, but please share feedback if you disagree.Axum
http
1.0 andtower_http
0.5.).handle_server_fns()
call in yourmain.rs
, as server functions are now handled in.leptos_routes()
extract
function has been removed, and replaced with a newextract
that has the same API as the currentextractor
. I think this API is strictly better, but please share feedback if you disagree.RequestParts
has been removed, ashttp::request::Parts
now implementsClone
: anyuse_context::<RequestParts>()
should be updated to useParts
directly instead.ServerFnError::new()
The addition of custom error types means that constructing
ServerFnError
inside server functions can cause type inference errors:As a result, we've added a helper
ServerFnError::new
which simply constructs aServerFnError::<NoCustomError>::ServerError
:This has the benefit of being more concise than the earlier pattern in any case.
Features
A rewritten server function system that is backwards-compatible, but reduces binary size and increases flexibility, specifically by allowing
.leptos_routes()
from the integrationsIntoReq
,FromReq
,IntoRes
, and/orFromRes
traits#[middleware]
macro to add per-server-function middleware from the Tower or Actix ecosystems (#1461)Note: The additional included encodings (
serde_lite
,rkyv
, multipart form data) are all enabled by additive features on theserver_fn
crate. If you want to use them you can just add that crate as a dependency and enable the required features.Example: You can find a comprehensive example of these new features in the new
server_fns_axum
example.Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.5.7...0.6.2
v0.6.1
: 0.6.1Compare Source
This is release for our new server functions rewrite and Axum 0.7 support.
This should be a relatively feature-rich release, with limited breaking changes.
Migration
Actix
.handle_server_fns()
call in yourmain.rs
, as server functions are now handled in.leptos_routes()
extract
function has been removed, and replaced with a newextract
that has the same API as the currentextractor
. I think this API is strictly better, but please share feedback if you disagree.Axum
.handle_server_fns()
call in yourmain.rs
, as server functions are now handled in.leptos_routes()
extract
function has been removed, and replaced with a newextract
that has the same API as the currentextractor
. I think this API is strictly better, but please share feedback if you disagree.RequestParts
has been removed, ashttp::request::Parts
now implementsClone
: anyuse_context::<RequestParts>()
should be updated to useParts
directly instead.ServerFnError::new()
The addition of custom error types means that constructing
ServerFnError
inside server functions can cause type inference errors:As a result, we've added a helper
ServerFnError::new
which simply constructs aServerFnError::<NoCustomError>::ServerError
:This has the benefit of being more concise than the earlier pattern in any case.
Features
A rewritten server function system that is backwards-compatible, but reduces binary size and increases flexibility, specifically by allowing
.leptos_routes()
from the integrationsIntoReq
,FromReq
,IntoRes
, and/orFromRes
traits#[middleware]
macro to add per-server-function middleware from the Tower or Actix ecosystems (#1461)Note: The additional included encodings (
serde_lite
,rkyv
, multipart form data) are all enabled by additive features on theserver_fn
crate. If you want to use them you can just add that crate as a dependency and enable the required features.Example: You can find a comprehensive example of these new features in the new
server_fns_axum
example.Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.5.6...v0.6.1
v0.5.7
Compare Source
This has been a rocky week for releases. While finalizing the work on 0.6.0, I intended to publish a final 0.5.5 that would contain all the remaining changes to the 0.5 series. Unfortunately, this release contained two serious issues:
trailing_slash
changes to the router in 0.5.5 broke the current routing behavior in several situations (see #2203 for details)Because some (many?) existing 0.5 apps would break with this new feature under 0.5 — and worse, because they would compile and then either panic or display the wrong page — I decide to revert the feature immediately. This meant a semver-breaking change between 0.5.6 and 0.5.7, so I have yanked 0.5.5 and 0.5.6 of all the crates.
We've added some appropriate regression tests for those issues. Apologies to anyone whose work was affected by this!
v0.5.6
Compare Source
Fix issue were doc comments on server functions caused an error. Sorry bout that!
What's Changed
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.5.5...v0.5.6
v0.5.5
Compare Source
This is a (mostly) bug fix and documentation improvements release. If you're interested in the full list, check out the full What's Changed list below.
What's New
Trailing Slash Changes
@NfNitLoop discovered that by default the leptos_router strips trailing slashes from routes, which might not be what users expect. By default, leptos_router drops the trailing slash on
/foo/
. He's added a new optional setting on Router that could allow you to keep the slashes and have routes for both/foo
and/foo/
or redirect from/foo/
to/foo
. Check out the docs for details: https://docs.rs/leptos_router/0.5.5/leptos_router/enum.TrailingSlash.htmlThanks @NfNitLoop!
Thanks to all our new and existing contributors, the 0.6 alpha will be coming out soon with fancy new server functions, so don't go away!
What's Changed
spawn_local
by @itowlson in https://github.com/leptos-rs/leptos/pull/2066<A/>
and<Form/>
(closes #2076) by @gbj in https://github.com/leptos-rs/leptos/pull/2096mount_to_body
acceptFnOnce
closures (closes #2115) by @NKID00 in https://github.com/leptos-rs/leptos/pull/2116<Transition/>
fallback should show on if client-rendered (closes #2123) by @gbj in https://github.com/leptos-rs/leptos/pull/2128#[component]
or#[island]
function signature (closes #2133) by @gbj in https://github.com/leptos-rs/leptos/pull/2134cargo-make
and examples (see #2141) by @gbj in https://github.com/leptos-rs/leptos/pull/2150trace
to reduce verbosity by @gbj in https://github.com/leptos-rs/leptos/pull/2176New Contributors
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.5.4...v0.5.5
v0.5.4
Compare Source
v0.5.4
v0.5.3
inadvertently introduced a regression in the<A/>
tag that broke[aria-current=page]
. Here's 0.5.4 with a fix!0.5.3 release notes below:
Along with the usual set of bugfixes and small improvements, there are two noteworthy additions in this release.
Improved rust-analyzer support in
#[component]
macro bodyGood LSP support for proc macros is hard, because proc macros depend on parsing a stream of input into a valid Rust syntax tree, but while typing you are constantly creating a stream of new, invalid trees. This release tweaks how the
#[component]
macro emits code in order to enable better rust-analyzer support within the body of components.If you've disabled rust-analyzer inside
#[component]
for better DX, try toggling that off and see if this is a better experience than it was before!Apologies for any regressions this causes. Please report any issues that arise.
Optional Context
<Provider/>
ComponentSince 0.5.0, there've been a couple instances of bugs or confusing behavior related to the fact that context now follows the reactive graph, not the component tree (see #1986, #2038).
This release includes a
<Provider/>
component that provides a certain value via context only to its children:provide_context
continues working as it has since 0.5.0, and if you're using it without problems you can ignore this, or use it if you prefer to aesthetics. If you're in a situation where you need to provide multiple context values of the same type and ensure that they are scoped correctly and that siblings do not overwrite one another, use<Provider/>
. If you have no idea what I mean, check the issues above for examples of the bugs this fixes.What's Changed
aria-current
attribute value by @alexisfontaine in https://github.com/leptos-rs/leptos/pull/2089Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.5.3...v0.5.4
v0.5.3
Compare Source
v0.5.3
Along with the usual set of bugfixes and small improvements, there are two noteworthy additions in this release.
Improved rust-analyzer support in
#[component]
macro bodyGood LSP support for proc macros is hard, because proc macros depend on parsing a stream of input into a valid Rust syntax tree, but while typing you are constantly creating a stream of new, invalid trees. This release tweaks how the
#[component]
macro emits code in order to enable better rust-analyzer support within the body of components.If you've disabled rust-analyzer inside
#[component]
for better DX, try toggling that off and see if this is a better experience than it was before!Apologies for any regressions this causes. Please report any issues that arise.
Optional Context
<Provider/>
ComponentSince 0.5.0, there've been a couple instances of bugs or confusing behavior related to the fact that context now follows the reactive graph, not the component tree (see #1986, #2038).
This release includes a
<Provider/>
component that provides a certain value via context only to its children:provide_context
continues working as it has since 0.5.0, and if you're using it without problems you can ignore this, or use it if you prefer to aesthetics. If you're in a situation where you need to provide multiple context values of the same type and ensure that they are scoped correctly and that siblings do not overwrite one another, use<Provider/>
. If you have no idea what I mean, check the issues above for examples of the bugs this fixes.Complete Changelog
'static
bound onas_child_of_current_owner
by @gbj in https://github.com/leptos-rs/leptos/pull/1955IntoView
andIntoAttribute
forstd::fmt::Arguments
improvements by @tqwewe in https://github.com/leptos-rs/leptos/pull/1947new
method toTrigger
by @tqwewe in https://github.com/leptos-rs/leptos/pull/1935IntoAttribute
forCow<'static, str>
by @tqwewe in https://github.com/leptos-rs/leptos/pull/1945leptos_axum::build_static_routes
(closes #1843) by @gbj in https://github.com/leptos-rs/leptos/pull/1855IntoAttribute
forTextProp
by @SleeplessOne1917 in https://github.com/leptos-rs/leptos/pull/1925login_with_token_csr_only
by @gbj in https://github.com/leptos-rs/leptos/pull/1965stable
tonightly
by @chrisp60 in https://github.com/leptos-rs/leptos/pull/1959leptos_router::params_map!
by @chrisp60 in https://github.com/leptos-rs/leptos/pull/1973leptos_server
docs.rs url to latest version. by @gibbz00 in https://github.com/leptos-rs/leptos/pull/1982hackernews_js_fetch
style.css
path (closes #1992) by @gbj in https://github.com/leptos-rs/leptos/pull/1994<ErrorBoundary/>
in a child so siblings don't collide (closes #1987) by @gbj in https://github.com/leptos-rs/leptos/pull/1991hackernews_js_fetch
example by @gbj in https://github.com/leptos-rs/leptos/pull/1997APP_ENVIRONMENT
variable by @gbj in https://github.com/leptos-rs/leptos/pull/2013Action::new
andAction::server
by @chrisp60 in https://github.com/leptos-rs/leptos/pull/1998leptos_reactive
by @gbj in https://github.com/leptos-rs/leptos/pull/2014Attribute
(closes #2023) by @gbj in https://github.com/leptos-rs/leptos/pull/2027create_effect
for<Portal/>
to avoid hydration issues (closes #2010) by @gbj in https://github.com/leptos-rs/leptos/pull/2029Default
forTextProp
by @blorbb in https://github.com/leptos-rs/leptos/pull/2016ActionForm
examples for complex arguments by @chrisp60 in https://github.com/leptos-rs/leptos/pull/2017<Provider/>
component to fix context shadowing (closes #2038) by @gbj in https://github.com/leptos-rs/leptos/pull/2040Fn
in attribute (see #2023) by @gbj in https://github.com/leptos-rs/leptos/pull/2045Trigger
as clean when it is re-tracked (closes #1948, #2048) by @gbj in https://github.com/leptos-rs/leptos/pull/2059#[component]
macro? by @gbj in https://github.com/leptos-rs/leptos/pull/2075New Contributors
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.5.2...v0.5.3
v0.5.2
Compare Source
This has a bunch of bugfixes, small docs improvements, etc. but there are actually a bunch of cool new features, mostly from our growing body of contributors. See the full changelog below, but here are some highlights (apologies if I missed anything big)
Features
extractor()
function with better APIThe
extract
API is awkward due to closure. This adds anextractor
function which is a little more ergonomic.<Portal/>
Adds a portal component that lets you render some view mounted in a location other than where it appears in the view tree.
Server Function Named Arguments
Now that we've made all server function arguments optional, this adds in the ability to pass in one or more named arguments:
Directives
Adds support for directive functions, which can be used with
use:
in the view:slice!()
macroMakes it easier to define slices. Expands to the same output as
create_slice
:What's Changed
leptos_reactive::Trigger
by @hiraginoyuki in https://github.com/leptos-rs/leptos/pull/1844extractor
functions with better API thanextract
by @gbj in https://github.com/leptos-rs/leptos/pull/1859.try_with_untracked
(closes #1880) by @gbj in https://github.com/leptos-rs/leptos/pull/1881#[must_use]
to avoid accidental()
rendering by @gbj in https://github.com/leptos-rs/leptos/pull/1885cargo make lint
forhackernews_js_fetch
by @gbj in https://github.com/leptos-rs/leptos/pull/1887ActionForm
in an island by @gbj in https://github.com/leptos-rs/leptos/pull/1888on_cleanup
(closes #1882) by @gbj in https://github.com/leptos-rs/leptos/pull/1889/
in splat routes (closes #1764) by @gbj in https://github.com/leptos-rs/leptos/pull/1890new
method toNodeRef
by @tqwewe in https://github.com/leptos-rs/leptos/pull/1896Clone
requirement onSignalWith
forResource
by @Xendergo in https://github.com/leptos-rs/leptos/pull/1895/
in more routes by @PianoPrinter in https://github.com/leptos-rs/leptos/pull/1900try_update()
andtry_set()
onResource
should not panic (closes #1915) by @gbj in https://github.com/leptos-rs/leptos/pull/1916default
andwasm
features onleptos_axum
(closes #1872) by @gbj in https://github.com/leptos-rs/leptos/pull/1883replace
property to form component by @koopa1338 in https://github.com/leptos-rs/leptos/pull/1923create_slice()
by @SadraMoh in https://github.com/leptos-rs/leptos/pull/1867wee_alloc
to make Dependabot happy by @gbj in https://github.com/leptos-rs/leptos/pull/1938</head>
tags in streaming responses (closes #1930) by @gbj in https://github.com/leptos-rs/leptos/pull/1932New Contributors
Full Changelog: https://github.com/leptos-rs/leptos/compare/v0.5.1...v0.5.2
rust-lang/log (log)
v0.4.22
Compare Source
v0.4.21
Compare Source
ramosbugs/oauth2-rs (oauth2)
v4.4.2
Compare Source
Bug Fixes
wasmbind
feature to fix panic in WASM environments (#230)Other Changes
ramosbugs/openidconnect-rs (openidconnect)
v3.5.0
Compare Source
New Features
UserInfoRequest::set_response_type
by @FabianLars in https://github.com/ramosbugs/openidconnect-rs/pull/146Bug Fixes
#[non_exhaustive]
fromLogoutProviderMetadata
(#150)Full Changelog: https://github.com/ramosbugs/openidconnect-rs/compare/3.4.0...3.5.0
v3.4.0
Compare Source
New Features
alg
field into account during key selection (#131). This change is gated by a non-defaultjwk-alg
feature flag, which was added to avoid introducing breaking changes. During a future major version, this feature flag will be removed and the functionality will be included unconditionally.Full Changelog: https://github.com/ramosbugs/openidconnect-rs/compare/3.3.1...3.4.0
v3.3.1
Compare Source
Bug Fixes
wasmbind
feature to fix panic in WASM environments (#127)rust-pretty-assertions/rust-pretty-assertions (pretty_assertions)
v1.4.1
Compare Source
Fixed
Internal
yansi
version to1.x
. Thanks to @SergioBenitez for the update, and maintaining this library! (#121)oknozor/sealed-test (sealed_test)
v1.1.0
What's Changed
New Contributors
Full Changelog: https://github.com/oknozor/sealed-test/commits/1.1.0
serde-rs/json (serde_json)
v1.0.134
Compare Source
RawValue
associated constants for literalnull
,true
,false
(#1221, thanks @bheylin)v1.0.133
Compare Source
v1.0.132
Compare Source
v1.0.131
Compare Source
Map<String, Value>
and&Map<String, Value>
(#1135, thanks @swlynch99)v1.0.130
Compare Source
Number
from i128 and u128 (#1141, thanks @druide)v1.0.129
Compare Source
serde_json::Map::sort_keys
andserde_json::Value::sort_all_objects
(#1199)v1.0.128
Compare Source
v1.0.127
Compare Source
v1.0.126
Compare Source
v1.0.125
Compare Source
v1.0.124
Compare Source
v1.0.123
Compare Source
v1.0.122
Compare Source
json!
in no-std crates (#1166)v1.0.121
Compare Source
v1.0.120
Compare Source
indexmap
dependency (#1152, thanks @cforycki)v1.0.119
Compare Source
serde_json::Map::shift_insert
(#1149, thanks @joshka)v1.0.118
Compare Source
v1.0.117
Compare Source
v1.0.116
Compare Source
v1.0.115
Compare Source
v1.0.114
Compare Source
v1.0.113
Compare Source
swap_remove
andshift_remove
methods on Map (#1109)v1.0.112
Compare Source
v1.0.111
Compare Source
v1.0.110
Compare Source
v1.0.109
Compare Source
v1.0.108
Compare Source
borntyping/rust-simple_logger (simple_logger)
v5.0.0
Compare Source
What's Changed
stderr
andcolors
features, logs will be printed in colour even when STDOUT is redirected.colors
feature, not thecolored
dependency.set_up_color_terminal
from the public API. This has been called byinit()
for a while now.New Contributors
Full Changelog: https://github.com/borntyping/rust-simple_logger/compare/v4.3.3...v5.0.0
v4.3.3
Compare Source
What's Changed
v4.3.1
).module_levels
is always sorted, so thatenabled()
correctly selects the most specific target. Fixes #90, thanks @nikarh.Full Changelog: https://github.com/borntyping/rust-simple_logger/compare/v4.3.0...v4.3.2
v4.3.0
Compare Source
What's Changed
windows-sys
from 0.42 to 0.48 by @iamjpotts in https://github.com/borntyping/rust-simple_logger/pull/83env_logger
reference from docs by @igortg in https://github.com/borntyping/rust-simple_logger/pull/87max_level
method, to enable users to own a valid configured instance before callingset_boxed_logger
by @twiby in https://github.com/borntyping/rust-simple_logger/pull/88wrap.rs
example showing how you might wrap the logger with your own.New Contributors
Full Changelog: https://github.com/borntyping/rust-simple_logger/compare/v4.2.0...v4.3.0
launchbadge/sqlx (sqlx)
v0.8.2
Compare Source
10 pull requests were merged this release cycle.
This release addresses a few regressions that have occurred, and refines SQLx's MSRV policy (see the FAQ).
Added
Changed
Fixed
v0.8.1
Compare Source
16 pull requests were merged this release cycle.
This release contains a fix for RUSTSEC-2024-0363.
Postgres users are advised to upgrade ASAP as a possible exploit has been demonstrated:
#3440 (comment)
MySQL and SQLite do not appear to be exploitable, but upgrading is recommended nonetheless.
Added
Changed
Fixed
v0.8.0
Compare Source
70 pull requests were merged this release cycle.
#2697 was merged the same day as release 0.7.4 and so was missed by the automatic CHANGELOG generation.
Breaking
Added
Changed
Fixed
clock
andstd
features ofworkspace.dependencies.chrono
.v0.7.4
Compare Source
38 pull requests were merged this release cycle.
This is officially the last release of the 0.7.x release cycle.
As of this release, development of 0.8.0 has begun on
main
and only high-priority bugfixes may be backported.Added
Changed
Fixed
v0.7.3
38 pull requests were merged this release cycle.
Added
Changed
Fixed
v0.7.2
23 pull requests were merged this release cycle.
Added
Changed
Fixed
v0.7.1
Compare Source
This release mainly addresses issues reported with the 0.7.0 release.
16 pull requests were merged this release cycle.
Added
Changed
Fixed
v0.7.0
Compare Source
At least 70 pull requests were merged this release cycle! (The exact count is muddied with pull requests for alpha
releases and such.) And we gained 43 new contributors! Thank you to everyone who helped make this release a reality.
Breaking
Many revisions were made to query analysis in the SQLite driver; these are all potentially breaking changes
as they can change the output of
sqlx::query!()
et al. We'd like to thank [[@tyrelr]] for their numerous PRs tothis area.
The MSSQL driver has been removed as it was not nearly at the same maturity level as the other drivers.
As previously announced, we have plans to introduce a fully featured replacement as a premium offering,
alongside drivers for other proprietary databases, with the goal to support full-time development on SQLx.
If interested, please email your inquiry to sqlx@launchbadge.com.
The offline mode for the queries has been changed to use a separate file per
query!()
invocation,which is intended to reduce the number of conflicts when merging branches in a project that both modified queries.
This means that CLI flag
--merged
is no longer supported. See [#2363] for details and make sure that yoursqlx-cli
version is in sync with thesqlx
version in your project.The type ascription override syntax for the query macros has been deprecated,
as parse support for it has been removed in
syn 2.0
, which we'll be upgrading to in the next breaking release.This can be replaced with type overrides using casting syntax (
as
).See [#2483] for details.
Added
Changed
Fixed
dtolnay/thiserror (thiserror)
v2.0.9
Compare Source
missing_inline_in_public_items
clippy restriction being triggered in macro-generated code (#404)v2.0.8
Compare Source
derive(Error)
call sites (#399)v2.0.7
Compare Source
v2.0.6
Compare Source
v2.0.5
Compare Source
v2.0.4
Compare Source
From
impls (#391, thanks @matt-phylum)v2.0.3
Compare Source
v2.0.2
Compare Source
v2.0.1
Compare Source
v2.0.0
Compare 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 thethiserror
crate 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#source
as 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_recursion
warning (#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
transparent
to supersede the enum-level message (#366)v1.0.69
Compare Source
v1.0.68
Compare Source
v1.0.67
Compare Source
v1.0.66
Compare Source
v1.0.65
Compare Source
v1.0.64
Compare Source
v1.0.63
Compare Source
v1.0.62
Compare Source
#[error("…", …)]
attribute (#309)v1.0.61
Compare Source
core::fmt
andcore::panic
to facilitateerror_in_core
support (#299, thanks @jordens)v1.0.60
Compare Source
v1.0.59
Compare Source
debug-fmt-detail
option (#297)v1.0.58
Compare Source
v1.0.57
Compare Source
Display
impl for error message which do not contain any interpolated value (#286, thanks @nyurik)v1.0.56
Compare Source
v1.0.55
Compare Source
v1.0.54
Compare Source
v1.0.53
Compare Source
v1.0.52
Compare Source
v1.0.51
Compare Source
Error
impl (#266)tokio-rs/tokio (tokio)
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->ptr
roundtrip in RegistrationSet (#6929)yield_now
insideblock_in_place
(#6999)Changes
Documented
tokio::net::unix::{pid_t, gid_t, uid_t}
(#6791)Instant
docs (#6982)v1.41.1
: Tokio v1.41.1Compare Source
1.41.1 (Nov 7th, 2024)
Fixed
net
requirement fornet::UdpSocket
in docs (#6938)TcpStream
internal 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)Id
apis (#6793, #6891)Added (unstable)
LocalRuntime
(#6808)Changed
#[must_use]
toNotified
(#6828)watch
cooperative (#6846)broadcast::Receiver
cooperative (#6870)cfg_fs
forwasi
target (#6822)Fixed
Documented
OwnedFd
withAsyncFd
(#6821)AsyncFd
methods (#6890)join
andtry_join
(#6814, #6841)TcpSocket::set_nodelay
andTcpSocket::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_buf
when possible (#6724)UnwindSafe
(#6783)Sleep
andBatchSemaphore
instrumentation explicit roots (#6727)NonZeroU64
fortask::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
AsyncSeek
forEmpty
(#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)Default
forwatch::Sender
(#6626)Clone
forAbortHandle
(#6621)consume_budget
(#6622)Changed
ReadBuf::put_slice()
(#6629)copy_bidirectional
andcopy
(#6532)num_cpus
withavailable_parallelism
(#6709)block_on
(#6692)IntoFuture
withtimeout
(#6666)IntoFuture
withjoin!
andselect!
(#6710)Fixed
Interval
(#6612)Added (unstable)
unhandled_panic
behavior for#[tokio::main]
and#[tokio::test]
(#6593)spawned_tasks_count
(#6114)worker_park_unpark_count
(#6696)Documented
tokio::io::stdout
documentation (#6674)join.rs
andtry_join.rs
(#6641)unhandled_panic
(#6660)JoinSet::try_join_next
when all tasks are running (#6671)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_up
while holding all the locks of sharded time wheels (#6683)v1.38.0
: Tokio v1.38.0Compare Source
This release marks the beginning of stabilization for runtime metrics. It
stabilizes
RuntimeMetrics::worker_count
. Future releases will continue tostabilize more metrics.
Added
File::create_new
(#6573)copy_bidirectional_with_sizes
(#6500)AsyncBufRead
forJoin
(#6449)Clone
forNamedPipeInfo
(#6586)Notify::notify_last
(#6520)mpsc::Receiver::{capacity,max_capacity}
(#6511)split
method to the semaphore permit (#6472, #6478)tokio::task::join_set::Builder::spawn_blocking
(#6578)Changed
#[tokio::test]
append#[test]
at the end of the attribute list (#6497)blocking_threads
count (#6551)RuntimeMetrics::worker_count
(#6556)lifo_slot
inblock_in_place
(#6596)global_queue_interval
is zero (#6445)Semaphore
for task dumps (#6499)LocalKey::get
work with Clone types (#6433)true_when
field inTimerShared
(#6563)Fixed
Interval::poll_tick
(#6487)is_empty
on mpsc block boundaries (#6603)Documented
stdin
documentation (#6581)ReadHalf::unsplit()
documentation (#6498)select!
(#6468)NamedPipeServer
example (#6590)SemaphorePermit
,OwnedSemaphorePermit
(#6477)Barrier::wait
is not cancel safe (#6494)watch::Sender::{subscribe,closed}
(#6490)spawn_blocking
tasks (#6571)LocalSet::run_until
(#6599)v1.37.0
: Tokio v1.37.0Compare Source
1.37.0 (March 28th, 2024)
Added
set_max_buf_size
totokio::fs::File
(#6411)try_new
andtry_with_interest
toAsyncFd
(#6345)forget_permits
method to semaphore (#6331)is_closed
,is_empty
, andlen
to mpsc receivers (#6348)rwlock()
method to ownedRwLock
guards (#6418)Clone
forwatch::Sender
(#6388)TaskLocalFuture::take_value
(#6340)FromIterator
forJoinSet
(#6300)Changed
io::split
use a mutex instead of a spinlock (#6403)Fixed
Documented
AsyncBufReadExt::fill_buf
(#6431)AsyncReadExt
's primitive read functions (#6337)Runtime
to#[tokio::main]
(#6366)enter
example deterministic (#6351)mpsc::Sender::downgrade
with#[must_use]
(#6326)const_new
beforenew_with
(#6392)Changed (unstable)
Id
in taskdumps (#6328)unhandled_panic
is enabled when not supported (#6410)v1.36.0
: Tokio v1.36.0Compare Source
1.36.0 (February 2nd, 2024)
Added
tokio::io::Join
(#6220)AsyncWrite
forEmpty
(#6235)UnixSocket
(#6290)TcpSocket
(#6311){Receiver,UnboundedReceiver}::poll_recv_many
(#6236)Sender::{try_,}reserve_many
(#6205)watch::Receiver::mark_unchanged
(#6252)JoinSet::try_join_next
(#6280)Changed
copy
cooperative (#6265)repeat
andsink
cooperative (#6254)Documented
clear_ready
docs (#6304)*Fd
traits onTcpSocket
are unix-only (#6294)tokio::sync::Mutex
(#6279)v1.35.1
: Tokio v1.35.1Compare Source
1.35.1 (December 19, 2023)
This is a forward part of a change that was backported to 1.25.3.
Fixed
tokio::runtime::io::registration::async_io
(#6221)v1.35.0
: Tokio v1.35.0Compare Source
1.35.0 (December 8th, 2023)
Added
Changed
Sized
requirements fromAsyncReadExt.read_buf
(#6169)Runtime
unwind safe (#6189)Fixed
--cfg docsrs
work without net feature (#6166)unsync_load
on miri (#6179)Documented
AsyncWriteExt
examples (#6149)LocalSet::run_until
(#6147)v1.34.0
: Tokio v1.34.0Compare Source
Fixed
clear_readiness
after io driver shutdown (#6067)take
(#6080)broadcast::channel
link (#6100)Changed
::core
qualified imports instead of::std
insidetokio::test
macro (#5973)Added
fs::read_dir
to includeaix
(#6075)mpsc::Receiver::recv_many
(#6010)tower-rs/tower (tower)
v0.5.2
: tower 0.5.2Compare Source
Added
BoxCloneSyncService
which is aClone + Send + Sync
boxedService
(#777)BoxCloneSyncServiceLayer
which is aClone + Send + Sync
boxedLayer
(#802)v0.5.1
: tower 0.5.1Compare Source
tower-layer
dependency (#787)v0.5.0
: tower 0.5.0Compare Source
Fixed
BoxService
is nowSync
(#702)Changed
ServiceExt::ready_and
method andReadyAnd
future (#652)
retry::Policy::retry
now accepts&mut Req
and&mut Res
instead of the previous mutable versions. Thisincreases the flexibility of the retry policy. To update, update your method signature to include
mut
for both parameters. (#584)Reconnect::new
(#755)Clone
for Change (#701)Clone
forAsyncFilterLayer
(#731)tower-rs/tower-http (tower-http)
v0.6.2
Compare Source
Changed:
CompressionBody<B>
now propagatesB
's size hint in itshttp_body::Body
implementation, if compression is disabled (#531)
content-length
to 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:
body
module is disabled except forcatch-panic
,decompression-*
,fs
, orlimit
features (BREAKING) (#477)tower
0.5 (#503)Fixed
v0.5.2
: v0.5.2Compare Source
Added:
vary: accept-encoding
header on compressed responses (#399)x-gzip
as equivalent togzip
inaccept-encoding
request header (#467)Fixed
v0.5.1
: v0.5.1Compare Source
zstd
inServeFile
ResponseBody
andResponseFuture
(#455)HttpMakeClassifier
andGrpcMakeClassifier
(#455)Fixed
ServeDir
now no longer redirects from/directory
to/directory/
if
append_index_html_on_directories
is disabled (#421)v0.5.0
: v0.5.0Compare Source
Changed
Fixed
http-range-header to
0.4
v0.4.4
: v0.4.4Compare Source
v0.4.3
: v0.4.3Compare Source
Fixed
v0.4.2
: v0.4.2Compare Source
Added
Default
forDecompressionBody
(#370)Changed
Fixed
v0.4.1
: v0.4.1Compare Source
Added
Default
forMakeRequestUuid
(#335)Default
forServeFileSystemResponseBody
(#336)Fixed
Accept-Encoding
request header (#220)multiple_members
forGzipDecoder
(#354)v0.4.0
: v0.4.0Compare Source
Added
RequestDecompression
middleware (#282)Default
forCompressionBody
(#323)Changed
ServeDir
andServeFile
's error types are nowInfallible
and any IO errorswill be converted into responses. Use
try_call
to generate error responses manually (BREAKING) (#283)ServeDir::fallback
andServeDir::not_found_service
now requiresthe fallback service to use
Infallible
as its error type (BREAKING) (#283)Removed
RequireAuthorization
in favor ofValidateRequest
(BREAKING) (#290)Fixed
ServeDir
, convertio::ErrorKind::NotADirectory
to404 Not Found
(#331)uuid-rs/uuid (uuid)
v1.11.0
Compare Source
What's Changed
New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/1.10.0...1.11.0
v1.10.0
Compare Source
Deprecations
This release deprecates and renames the following functions:
Builder::from_rfc4122_timestamp
->Builder::from_gregorian_timestamp
Builder::from_sorted_rfc4122_timestamp
->Builder::from_sorted_gregorian_timestamp
Timestamp::from_rfc4122
->Timestamp::from_gregorian
Timestamp::to_rfc4122
->Timestamp::to_gregorian
What's Changed
New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/1.9.1...1.10.0
v1.9.1
Compare Source
What's Changed
Full Changelog: https://github.com/uuid-rs/uuid/compare/1.9.0...1.9.1
v1.9.0
Compare Source
Uuid::now_v7()
is guaranteed to be monotonicBefore this release,
Uuid::now_v7()
would only use the millisecond-precision timestamp for ordering. It now also uses a global 42-bit counter that's re-initialized each millisecond so that the following will always pass:What's Changed
New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/1.8.0...1.9.0
v1.8.0
Compare Source
⚠️ Potential Breakage ⚠️
A new
impl AsRef<Uuid> for Uuid
bound has been added, which can break inference on code like:You can fix these by explicitly typing the result of the conversion:
or by calling
as_bytes
instead:What's Changed
wasm-bindgen
as a dependency onwasm32-unknown-unknown
by @emilk in https://github.com/uuid-rs/uuid/pull/738New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/1.7.0...1.8.0
v1.7.0
Compare Source
What's Changed
New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/1.6.1...1.7.0
v1.6.1
Compare Source
What's Changed
Full Changelog: https://github.com/uuid-rs/uuid/compare/1.6.0...1.6.1
v1.6.0
Compare Source
What's Changed
New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/1.5.0...1.6.0
v1.5.0
Compare Source
What's Changed
bytemuck
support by @John-Toohey in https://github.com/uuid-rs/uuid/pull/711New Contributors
Full Changelog: https://github.com/uuid-rs/uuid/compare/1.4.1...1.5.0
buehler/zitadel-rust (zitadel)
v5.3.2
Compare Source
Bug Fixes
v5.3.1
Compare Source
Bug Fixes
v5.2.0
Compare Source
Features
v5.1.0
Compare Source
Features
v5.0.0
Compare Source
Features
BREAKING CHANGES
have changed. Please update to the newest returned types
to use the client builder. This removed the ChainedInterceptor
which essentially has hidden the cloneable feature for
interceptors.
from the introspected user. It is possible to achieve the same
mechanism with the following work around:
v4.4.0
Compare Source
Features
v4.3.5
Compare Source
Bug Fixes
v4.3.4
Compare Source
Bug Fixes
v4.3.3
Compare Source
Bug Fixes
v4.3.2
Compare Source
Bug Fixes
v4.3.1
Compare Source
Bug Fixes
v4.3.0
Compare Source
Features
v4.2.5
Compare Source
Bug Fixes
v4.2.4
Compare Source
Bug Fixes
v4.2.3
Compare Source
Bug Fixes
v4.2.2
Compare Source
Bug Fixes
v4.2.1
Compare Source
Bug Fixes
v4.2.0
Compare Source
Features
v4.1.6
Compare Source
Bug Fixes
v4.1.5
Compare Source
Bug Fixes
v4.1.4
Compare Source
Bug Fixes
v4.1.3
Compare Source
Bug Fixes
v4.1.2
Compare Source
Bug Fixes
v4.1.1
Compare Source
Bug Fixes
v4.1.0
Compare Source
Features
v4.0.5
Compare Source
Bug Fixes
IntrospectionConfig
to facilitate creating Axum substates (#523) (f1133ad)v4.0.4
Compare Source
Bug Fixes
v4.0.3
Compare Source
Bug Fixes
v4.0.2
Compare Source
Bug Fixes
v4.0.1
Compare Source
Bug Fixes
v4.0.0
Compare Source
Features
BREAKING CHANGES
have changed. There is no module "with access token"
or "with service account" anymore. Instead, there is a
centralized
ClientBuilder
in the clients module of theapi to create and configure the gRPC clients. The new
builder allows configuring auth methods beforehand
and then create the according client out of it.
v3.5.1
Compare Source
Bug Fixes
v3.5.0
Compare Source
Features
v3.4.29
Compare Source
Bug Fixes
v3.4.28
Compare Source
Bug Fixes
v3.4.27
Compare Source
Bug Fixes
v3.4.26
Compare Source
Bug Fixes
v3.4.25
Compare Source
Bug Fixes
v3.4.24
Compare Source
Bug Fixes
v3.4.23
Compare Source
Bug Fixes
v3.4.22
Compare Source
Bug Fixes
v3.4.21
Compare Source
Bug Fixes
v3.4.20
Compare Source
Bug Fixes
v3.4.19
Compare Source
Bug Fixes
v3.4.18
Compare Source
Bug Fixes
v3.4.17
Compare Source
Bug Fixes
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, 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.
⚠ Artifact update problem
Renovate failed to update artifacts 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: crates/como_web/Cargo.lock
File name: Cargo.lock
File name: Cargo.lock
File name: Cargo.lock
42ce4ae524
toe8b6d17016
e8b6d17016
tobfe629cb99
bfe629cb99
to0f85a94cad
0f85a94cad
todde598d6b9
dde598d6b9
to9071a08f04
9071a08f04
tod2c874b724
d2c874b724
tod2057fcc57
d2057fcc57
to35676a1304
35676a1304
toee66c9b15b
ee66c9b15b
to128d8e4eba
128d8e4eba
todcca19df1a
dcca19df1a
to7b0e159d7c
7b0e159d7c
to84a9e11b8e
84a9e11b8e
tobd4caba331
bd4caba331
to5c21fb58d5
5c21fb58d5
to51a8855a1d
51a8855a1d
to188306f818
188306f818
to5fb6638f66
5fb6638f66
to3b1dabb55f
3b1dabb55f
tocae51e44cf
cae51e44cf
to91e2b4e31e
91e2b4e31e
to4eca72186c
4eca72186c
todf2052485b
df2052485b
tob2a4ec6c01
b2a4ec6c01
toeda649820b
eda649820b
to0b87299232
0b87299232
tocbeae30475
cbeae30475
to6f0183739a
6f0183739a
to83f4f90f6d
83f4f90f6d
to3ff454dd0d
3ff454dd0d
tob86d0f7eca
b86d0f7eca
to52e8ec3596
52e8ec3596
to543f729471
543f729471
to0747b7f022
0747b7f022
to23b90b1965
23b90b1965
tof477cc4923
f477cc4923
to76636b1611
76636b1611
to2c78659a0a
2c78659a0a
to71e077885f
71e077885f
to03afe6a569
03afe6a569
toa7b96b1c3d
a7b96b1c3d
to549dd4ecf0
549dd4ecf0
tof3b98159bf
f3b98159bf
to48dd882899
48dd882899
to3b8071f747
3b8071f747
tode19ac88dd
de19ac88dd
to13c5343379
13c5343379
to74d50cf158
74d50cf158
to6b6eabd67e
6b6eabd67e
to36e021e1c2
36e021e1c2
toc262825c38
c262825c38
toc44ece9b40
c44ece9b40
to6ed15dba7b
6ed15dba7b
to7c07a3e3ea
7c07a3e3ea
to31702a700e
31702a700e
to260ce9a4fc
260ce9a4fc
to858e3ac753
858e3ac753
to2c6459cbc8
2c6459cbc8
to425728e8fc
425728e8fc
to201f063111
201f063111
to51940fbc55
51940fbc55
to4de9681ee8
4de9681ee8
toa2c0db4a19
a2c0db4a19
to45dd1137bb
45dd1137bb
to6f3355d0b9
6f3355d0b9
tod49ece48d3
d49ece48d3
to022c1e4c5f
022c1e4c5f
tof96478a084
f96478a084
to711bdf384c
711bdf384c
toc5444e0a42
c5444e0a42
to4e5d5279e4
4e5d5279e4
tof7019e92b9
f7019e92b9
to34b3cc06e9
34b3cc06e9
tob0b27cff68
b0b27cff68
to2d3ec0239d
2d3ec0239d
to95bef2bfce
95bef2bfce
to36f65392a9
36f65392a9
to3822e8ad58
3822e8ad58
to9210f4aef7
9210f4aef7
to319ac17c74
319ac17c74
toba259d0b5f
ba259d0b5f
toe91c3701a1
e91c3701a1
to4986f0cedf
4986f0cedf
to3e6b6b88d2
chore(deps): update all dependenciesto fix(deps): update all dependencies3e6b6b88d2
toc6e42895db
c6e42895db
toa4fc2dee7e
a4fc2dee7e
tof3e6faa989
f3e6faa989
tobd34271808
bd34271808
to39d319ee62
39d319ee62
toebaf839263
ebaf839263
to1504225c3d
1504225c3d
to71ab3640f8
71ab3640f8
to40f0b2948a
40f0b2948a
to6909ab1723
6909ab1723
to74fc317835
74fc317835
to0113e5827a
0113e5827a
toa9ea496163
a9ea496163
to452c72d1e2
452c72d1e2
to9f63a86e1e
9f63a86e1e
to1a6663b066
1a6663b066
to3eb3562e6a
3eb3562e6a
tob2dfba4980
b2dfba4980
to6e8d2f9ee7
6e8d2f9ee7
tof123a156c2
f123a156c2
toa0ddb3e5dd
a0ddb3e5dd
toeec23de1ca
eec23de1ca
toe9e7061607
e9e7061607
to1a90260153
1a90260153
to5572849286
5572849286
to723b62fd01
723b62fd01
to5b8165b53f
5b8165b53f
to0e048d9232
0e048d9232
tod90a3336c2
d90a3336c2
to2a7d345cf3
2a7d345cf3
to3bc1515cd7
3bc1515cd7
toa33c5cc40b
a33c5cc40b
todbbb86a06e
dbbb86a06e
tob4e35bdec7
b4e35bdec7
toeb75658ccf
eb75658ccf
to056244fe1c
056244fe1c
to01b062234c
01b062234c
to2fe3f75e54
2fe3f75e54
to6a07b8dafa
6a07b8dafa
to54e42f397a
54e42f397a
to2fe87886a8
2fe87886a8
to7aaa736e82
7aaa736e82
to71a3bdb57a
71a3bdb57a
to0335fbe125
0335fbe125
to888e986363
888e986363
tof88afe4c4d
f88afe4c4d
tob9b91deb25
b9b91deb25
to57a8ff2ebf
57a8ff2ebf
to2c99365170
2c99365170
to1a8a81668c
1a8a81668c
to8c90b73bb5
8c90b73bb5
tof36c54c2a7
f36c54c2a7
toefd52817ca
efd52817ca
tof65a21ddef
f65a21ddef
tob875f268fd
b875f268fd
to2a955d447b
2a955d447b
to1dc39e3629
1dc39e3629
to7e2aec8cb5
7e2aec8cb5
to714a1a7e6d
714a1a7e6d
to0bad94aca7
0bad94aca7
tob188102169
b188102169
to8f9a94a91f
8f9a94a91f
to10229a8a8b
10229a8a8b
toa6b4260808
a6b4260808
toe618783887
e618783887
to76d8cb5188
76d8cb5188
toaa5670f40f
aa5670f40f
toefc3e2813b
efc3e2813b
to1be5c043e1
1be5c043e1
toe2414179af
e2414179af
todd98b2b5a6
dd98b2b5a6
to105f7ac17e
105f7ac17e
to1fa9b3389a
1fa9b3389a
to1c5c0028ba
1c5c0028ba
toc85ddbaad9
c85ddbaad9
todb15f3c3dd
db15f3c3dd
to180c0043ab
180c0043ab
toc466561b6a
c466561b6a
to68e9c9b047
68e9c9b047
toee386c874f
ee386c874f
to95939cbd76
95939cbd76
to293bb0c041
293bb0c041
tod5233eba15
d5233eba15
toe2faa9fb22
e2faa9fb22
tof54f238721
f54f238721
to2e509a532f
2e509a532f
to6e8807d78a
6e8807d78a
toa76ca15b9d
a76ca15b9d
to0460b29dff
0460b29dff
to3ac1de218e
3ac1de218e
to0157314a91
0157314a91
toabcea8f6bc
abcea8f6bc
to21b9da52b3
21b9da52b3
tocf2f8b5d1b
cf2f8b5d1b
to6532b7f46c
6532b7f46c
toc0f824fc22
c0f824fc22
to81cfa30357
81cfa30357
to1416df0b43
1416df0b43
todc51980c88
dc51980c88
to7392fd393e
7392fd393e
to1f294f860d
1f294f860d
to5a75edbeb2
5a75edbeb2
to5d827e33bd
5d827e33bd
to605790f4f7
605790f4f7
to2b3229231d
2b3229231d
to1903183c58
1903183c58
to90fd4da40b
90fd4da40b
toe22c016319
e22c016319
to961ac17653
961ac17653
tofd8ea779cd
fd8ea779cd
tofbbeafc4d4
fbbeafc4d4
to45f6effb92
45f6effb92
tof42a85e763
f42a85e763
toce9073c63a
ce9073c63a
to8fa31494e6
8fa31494e6
to1532ea6552
1532ea6552
toba8dd8eacb
ba8dd8eacb
tof7ec38aad3
f7ec38aad3
to3fc4152a9c
3fc4152a9c
toa7216ecd69
a7216ecd69
todab0ae79b5
dab0ae79b5
to44aaab5d40
44aaab5d40
tofb39594897
⚠️ Artifact update problem
Renovate failed to update artifacts 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
File name: crates/como_web/Cargo.lock
File name: Cargo.lock
File name: Cargo.lock
fb39594897
to74468446df
74468446df
to0acf52d540
0acf52d540
to3b790a877b
3b790a877b
to68004b9ba1
68004b9ba1
to4138a258d4
4138a258d4
to1874ea297d
1874ea297d
toacb30f1606
acb30f1606
to108b35b324
108b35b324
to7a77b88b9a
7a77b88b9a
to8a870fa9f4
8a870fa9f4
to456b9de80e
456b9de80e
to25f5649876
25f5649876
toa0e09bf350
a0e09bf350
to08748f62d6
08748f62d6
toceeeb662fb
ceeeb662fb
to507b677406
507b677406
to8b57731456
8b57731456
tof2d6ae70bb
f2d6ae70bb
to17d8d703aa
17d8d703aa
to6cc1406372
6cc1406372
to98f0bcd2e2
98f0bcd2e2
to6c61dce78b
6c61dce78b
to27df7419e6
27df7419e6
toe99bae1a15
e99bae1a15
toad5fb97473
ad5fb97473
to0772734e3c
0772734e3c
to9abeec0df2
9abeec0df2
tod90b20a060
d90b20a060
to57de8e30fd
57de8e30fd
to541aa9ac7a
541aa9ac7a
to04f3acff8f
04f3acff8f
to778101d85d
778101d85d
tod4f7442dbb
d4f7442dbb
tocd067b6d37
cd067b6d37
tof4c3e5b4e7
f4c3e5b4e7
to7b2e9163c7
7b2e9163c7
to22181f3d75
22181f3d75
to7dd4e5a86c
7dd4e5a86c
to25357788b7
25357788b7
to0f153a86d1
0f153a86d1
toa69ba140d4
a69ba140d4
to0fba3c10b0
0fba3c10b0
to6fb07b8733
6fb07b8733
to39520c6426
39520c6426
tobd8e3228eb
bd8e3228eb
to3dd53c4095
3dd53c4095
tofc92d7051a
fc92d7051a
to39566c274f
39566c274f
toe56c522673
e56c522673
tode05001772
de05001772
toe094425063
e094425063
to526775535d
526775535d
toe740b5cd87
e740b5cd87
to71462e065f
71462e065f
tob2f323f999
b2f323f999
to2bc9d50a03
2bc9d50a03
to3ec93edaaa
3ec93edaaa
toea08e03542
ea08e03542
to57d0c738d2
57d0c738d2
toe620fb1c00
e620fb1c00
to392aa48f01
392aa48f01
to2098bf3732
2098bf3732
to57e41f00d1
57e41f00d1
to434478a8f6
434478a8f6
to775e3e6885
775e3e6885
toa5981a70b3
a5981a70b3
to86648f842a
86648f842a
to9a26dd1aca
9a26dd1aca
to27520ff1f3
27520ff1f3
to92601e2dc2
92601e2dc2
to9e4e8f920b
9e4e8f920b
toad0ad339be
ad0ad339be
tod856917484
d856917484
to20bfa7e763
20bfa7e763
to59278076fa
59278076fa
to90ea20d34a
90ea20d34a
to6f83e61d68
6f83e61d68
to072395451c
072395451c
to58011a06ac
58011a06ac
tobb2e8844fa
bb2e8844fa
toaf4ab864e4
af4ab864e4
to2736e7fd3a
2736e7fd3a
to12d4b0d04f
12d4b0d04f
to96c3c2e11a
96c3c2e11a
to6963bc18d5
6963bc18d5
todb7421e7fa
db7421e7fa
tocc3eeaf222
cc3eeaf222
to936b4d41dd
936b4d41dd
to60449bd9e8
60449bd9e8
to2885df7090
2885df7090
toce151a544e
ce151a544e
to5e43440789
5e43440789
toaf2b32dcac
af2b32dcac
to83841bdc50
83841bdc50
toa81f90eb89
a81f90eb89
to1b4bfff9a5
1b4bfff9a5
to72df8153b2
72df8153b2
to119a1ae784
119a1ae784
to0184ae3584
0184ae3584
to1008acc90c
1008acc90c
to20626d963d
20626d963d
to593b2e12fa
593b2e12fa
to148ba63b96
148ba63b96
tof84c5f38c3
f84c5f38c3
to7bc5320a35
7bc5320a35
to76a73551d7
76a73551d7
to30b43f6bd5
30b43f6bd5
tobaa272bb1f
baa272bb1f
to2f9c6e51f0
2f9c6e51f0
to5520755f62
5520755f62
to7f991020a7
7f991020a7
to16e7a7c2ac
16e7a7c2ac
tof06782bcd7
f06782bcd7
to3fb11450c5
3fb11450c5
to7aba9707ce
7aba9707ce
tocd15e83e37
cd15e83e37
to76284e1d26
76284e1d26
tod37e3b37dd
d37e3b37dd
to0ea5a03b5f
0ea5a03b5f
tofe7f61ca16
fe7f61ca16
tofa2d5f81d6
fa2d5f81d6
to2c5b1f6c12
2c5b1f6c12
toe983d95eba
e983d95eba
tof0bbe7dc01
f0bbe7dc01
to8a2848ef75
8a2848ef75
tofb0b0664aa
fb0b0664aa
toa4c510f6b5
a4c510f6b5
tof760e8f50a
f760e8f50a
tobb23f7cfce
bb23f7cfce
tobca8faf6bf
bca8faf6bf
to313f933ab2
313f933ab2
to2addaeeeab
2addaeeeab
to70c930dbae
70c930dbae
to19c9f68ea3
19c9f68ea3
to8adfbb31f9
8adfbb31f9
tob4e9222e3e
b4e9222e3e
to0f883819ab
0f883819ab
to91caa893e9
91caa893e9
to8b0926a117
8b0926a117
to5842d5868c
5842d5868c
to51865b1af3
51865b1af3
to6459588bbf
6459588bbf
toee4a2db800
ee4a2db800
to135239773f
135239773f
to5085b91920
5085b91920
to9a334908f7
9a334908f7
tobb16cb639a
bb16cb639a
to9c2afb3022
9c2afb3022
to925777c2cc
925777c2cc
to642d8041d7
642d8041d7
to85089c568f
85089c568f
to4b90da1e92
4b90da1e92
to141366cf4a
141366cf4a
toe2b49d0ff2
e2b49d0ff2
tob78e15f539
b78e15f539
toaa458b21ca
aa458b21ca
tof49ba69300
f49ba69300
to512edecd45
512edecd45
to1d11254d22
1d11254d22
to01c1e67643
01c1e67643
tob1c1d88dbb
b1c1d88dbb
to5b01f4e1c7
5b01f4e1c7
to078a7a026c
078a7a026c
to1cfa9fd4f2
1cfa9fd4f2
to260244773d
260244773d
to84e6c672e3
84e6c672e3
to50288c9666
50288c9666
to4530d2b575
4530d2b575
to585c04d25e
585c04d25e
toc511ca44ce
c511ca44ce
toff648ba130
ff648ba130
tob3c0ff1a04
b3c0ff1a04
to7b440df87e
7b440df87e
tofc55173353
fc55173353
tob1234cb326
b1234cb326
toccfe629796
ccfe629796
tod9287805a2
d9287805a2
to0e6a98e975
0e6a98e975
to0aa922d64b
0aa922d64b
tod2e49e7e43
d2e49e7e43
to734c41a076
734c41a076
tod7295f8c4b
d7295f8c4b
to6316bbfc84
6316bbfc84
to14a1efef4f
14a1efef4f
to6c909e2a80
6c909e2a80
to8939115d39
8939115d39
tob1c6cb7f2e
b1c6cb7f2e
to06fc9b10cf
06fc9b10cf
toe372fd717a
e372fd717a
toda599d2014
da599d2014
to73c4a64ceb
73c4a64ceb
to1b7d07bdc6
1b7d07bdc6
to816de894b5
816de894b5
to830b9a4ddc
830b9a4ddc
to4b218a12bd
4b218a12bd
tofa88d2a2df
fa88d2a2df
toc3ab292f57
c3ab292f57
to25f3ba5eac
25f3ba5eac
tod8bb08da36
d8bb08da36
to08cb7a016f
08cb7a016f
toa2e765550e
a2e765550e
toef6486a71d
ef6486a71d
to191bb28dd8
191bb28dd8
to7518c5a0e2
7518c5a0e2
to773e5f66c7
773e5f66c7
to975c5dc249
975c5dc249
to32a74b2e66
32a74b2e66
toae16bbf1e4
ae16bbf1e4
to3931b0706c
3931b0706c
toca99342ddf
ca99342ddf
to3df198d532
3df198d532
to9ca6412fc3
9ca6412fc3
tob157a177d4
b157a177d4
toc7b9e4b15d
c7b9e4b15d
to0b9b24d3c5
0b9b24d3c5
to521941ede0
521941ede0
toc64e00ff4f
c64e00ff4f
to06d72b4a1d
06d72b4a1d
to2bb17407e0
2bb17407e0
toff72d5c98c
ff72d5c98c
to254c77c985
254c77c985
to2aba10aad8
2aba10aad8
tod59f7604cd
d59f7604cd
tof9ff070968
f9ff070968
to87c43fd1c2
87c43fd1c2
to12b186a763
12b186a763
tofccf20d2d9
fccf20d2d9
to0afc774d9d
0afc774d9d
to075b857e38
075b857e38
to004f0e9851
004f0e9851
to3e8eda2765
3e8eda2765
to680e1b5404
680e1b5404
to81aa842b7e
81aa842b7e
tobe97567cf1
be97567cf1
to167dcc0d63
167dcc0d63
toff67aefc89
ff67aefc89
to9c92b488eb
9c92b488eb
to0804597abc
0804597abc
toe0fdd6f348
e0fdd6f348
toedd7d52d51
edd7d52d51
to0a5569cdd4
0a5569cdd4
toa20d45db8f
a20d45db8f
toac6084b6d4
ac6084b6d4
todbaed750ff
dbaed750ff
to260e958efc
260e958efc
todbcdb0a614
dbcdb0a614
to03ef2664bd
03ef2664bd
tob4b04de000
b4b04de000
toe64243dacf
e64243dacf
to08bbaf5430
08bbaf5430
to8521c5471d
8521c5471d
to546ea6c862
546ea6c862
to00e5f6cafa
00e5f6cafa
toc65b0f1efa
c65b0f1efa
to55c7555757
55c7555757
tofe51ad69fc
fe51ad69fc
tod2c624f6a9
d2c624f6a9
to96e5af996f
96e5af996f
toea97e0060b
ea97e0060b
to4ddbe78c8f
4ddbe78c8f
to6ae9173501
6ae9173501
tocaac1d6fd6
caac1d6fd6
to9f6697a171
9f6697a171
to813f836200
813f836200
to5ee03975c0
5ee03975c0
to663769e0f0
663769e0f0
toeb0ea8892b
eb0ea8892b
tof9061c75e6
f9061c75e6
toefad10f7e9
efad10f7e9
to3a728ba06a
3a728ba06a
tob1b9fee4af
b1b9fee4af
to452eef1f5e
452eef1f5e
to29efa688b5
29efa688b5
to90d73bcd92
90d73bcd92
to9acc5ece86
9acc5ece86
tob98d0760d6
b98d0760d6
to968f1ac3a5
968f1ac3a5
to921fc35edd
921fc35edd
toff7d458ae5
ff7d458ae5
to1fb6717a88
1fb6717a88
to49d11d244b
49d11d244b
to92640baa69
92640baa69
to54a98055e9
54a98055e9
tocb65ea89ab
cb65ea89ab
tod4b0bbde6f
d4b0bbde6f
to6b464d62fd
6b464d62fd
to5112960631
5112960631
to19e1bbecc1
19e1bbecc1
to2f3311c20d
2f3311c20d
to7374d1bb76
7374d1bb76
tof4f91c42f6
f4f91c42f6
to949255e154
949255e154
to4166d3a4ae
4166d3a4ae
tob636e84eda
b636e84eda
to3a76219892
3a76219892
tocd9713fa18
cd9713fa18
toe13b67183b
e13b67183b
toa49781ac8e
a49781ac8e
to2e5cc25bf1
2e5cc25bf1
to451e010b19
451e010b19
to979ebb684c
979ebb684c
to55d3bb7a3e
55d3bb7a3e
tod2bba83a7f
d2bba83a7f
to7a9fa33f6f
7a9fa33f6f
toe281edfb6e
e281edfb6e
to44cb7132a7
44cb7132a7
to7d04053254
7d04053254
to323728244a
323728244a
tob0200e0752
b0200e0752
to78c103b7fe
78c103b7fe
to7dfb56cae8
7dfb56cae8
tocd069b61e9
cd069b61e9
toe3f887adee
e3f887adee
to08aba16025
08aba16025
to6a5b042977
6a5b042977
to503cd28d52
503cd28d52
to0cd80daad0
0cd80daad0
to12fedabfd1
12fedabfd1
to46d3f15dce
46d3f15dce
tofa108d858d
fa108d858d
tobbc0b94aac
Checkout
From your project repository, check out a new branch and test the changes.