chore(deps): update cargo minor/patch updates - #1792
Open
renovate[bot] wants to merge 1 commit into
Open
Conversation
Contributor
Merge Protections🔴 1 of 6 protections blocking · waiting on 🤖 CI
🔴 🤖 Continuous IntegrationWaiting for
This rule is failing.
Show 5 satisfied protections🟢 👀 Review Requirements
🟢 Enforce conventional commitMake sure that we follow https://www.conventionalcommits.org/en/v1.0.0/
🟢 🔎 Reviews
🟢 📕 PR description
🟢 🚦 Auto-queueWhen all merge protections are satisfied, this pull request will be queued automatically. |
renovate
Bot
force-pushed
the
renovate/cargo-minorpatch-updates
branch
from
September 2, 2026 22:33
1b1cc8d to
86cc5da
Compare
Contributor
Author
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
0.49→0.520.53.0(+1)0.41→0.42Release Notes
Stranger6667/jsonschema (jsonschema)
v0.52.0Added
Evaluation::is_valid.Location::is_empty.DisplayforErrorEntry.ValidationOptions::offlineandcanonical::CanonicalizeOptions::offline, refusing to fetch references outside the registry.idnaCargo feature, enabled by default, gating theidn-hostnameandidn-emailformats. #1313--offlineflag ofjsonschema validate,jsonschema bundleandjsonschema dereference.Changed
ValidationErrors'Displaygained the instance path of each error.default-features = false, theidn-hostnameandidn-emailformats now require the newidnafeature. Without it they are unknown formats, which are accepted by default, or rejected at build time undershould_ignore_unknown_formats(false). Addidnato the feature list to keep the previous behavior.Fixed
patternProperties$refmatches a keypropertiesnames.is_validdisagreeing withvalidate,iter_errors, andevaluateon a schema that reaches its own$reftwice, one of them undernot.format: emailandformat: idn-emailrejecting an empty quoted string as the local part (it should be accepted).format: emailandformat: idn-emailrejecting an address literal whoseIPv6:tag is not written in that exact case (the tag is case-insensitive).format: emailaccepting a non-ASCII character in the local part (it should be rejected).ValidationOptions::with_draftgating keywords on the vocabularies of the$schemait overrides, so the validator accepted every instance.Performance
iter_errorscollects into a single buffer instead of allocating and re-boxing an iterator at every schema node.v0.51.0Added
ValidationOptions::with_vocabularyand thevocabulariesattribute onjsonschema::validator, declaring support for a vocabulary this crate does not implement.--vocabularyflag ofjsonschema validate.Changed
Vocabularygained theFormatAssertionvariant, which its Draft 2020-12 URI parses to instead ofVocabulary::Custom, and is markednon_exhaustive.Fixed
uniqueItemslength ceiling not reading anitemsorcontainsschema written as a$ref.formatrejects.formataccepted under a meta-schema requiring the Format-Assertion vocabulary (it should be rejected).trueread as an annotation, so a meta-schema requiring it accepted values itsformatrejects.https://json-schema.org/draft/2020-12/meta/format-assertionmeta-schema not declaring its vocabulary, so a schema written against it annotatedformatinstead of asserting it.$idkeeping its$vocabularyunread, so a schema written against it got every Draft 2020-12 vocabulary.$schemarejected as an unknown meta-schema (it should build).regexformat reading the Rust regex dialect (it should read the ECMA-262 dialect in Unicode mode).uri-templateformat rejecting an apostrophe in a literal (it should accept it, per RFC 6570 errata 6937).durationformat accepting weeks combined with a time part, such asP1WT1H(it should reject it).unevaluatedPropertiesorunevaluatedItemsbeside a$refthat cycles back to the node, written as#, through its$id, or through a chain of definitions.Performance
unevaluatedPropertiesorunevaluatedItemsover a deepallOfor$refchain costs its depth instead of its square.v0.50.1Changed
CanonicalSchema::satisfiabilityanswersYesfor a string whosepatternorformata matching value can be built from.CanonicalSchema::satisfiabilityanswersNowhere aformattakes no string of the length the schema asks for.Fixed
CanonicalSchema::negatetaking apart a union that reads a definition through its ownif, so a schema and its negation shared a value.CanonicalSchema::subtractdropping a Draft 4 array member an element demand partly takes.CanonicalSchema::coversansweringYeswhere a Draft 4 element demand refuses a member.maxLengthis0keeping apattern,format, or content facet unread, so the same constraints written in one object and written as anallOfreached different canonical forms.Performance
notover a wide object schema costs its branch count instead of its square.notover an object schema is linear in its property count, not quadratic.notover an object schema withadditionalProperties: falseno longer costs cubic time in its property count.v0.50.0Added
CanonicalSchema::unionandCanonicalSchema::subtract.CanonicalizationError::UnsupportedResult, reported where the canonical form does not support a set operation's result.OperandMismatch::DocumentRoots, reported where both operands read#and it names a different document on each side.jsonschema validate -i INSTANCEwithout aSCHEMAargument validates each instance against the schema named in its own$schemaproperty. #1470Changed
CanonicalSchema::is_satisfiableis nowCanonicalSchema::satisfiability, answeringYes,No, orUnknown-Yeswherever a value can be exhibited, not only for the forms listing their members.CanonicalSchema::coversdecides through the difference as well:Nowhere the argument keeps values the receiver rejects,Yeswhere nothing is left over.CanonicalSchema::is_subset_ofis nowCanonicalSchema::covers, answeringYes,No, orUnknownfor whether the receiver admits every value the argument admits.CanonicalSchema::negatereturnsResultrather thanOption.CanonicalizationError::UnmodeledOperandis nowCanonicalizationError::UnsupportedOperand, and means only that an operand is aRawpass-through.$reffolds through the body it names, so canonicalizing a document and combining its parts with the set operations reach one form; a document holding a reference cycle keeps the form it had.Fixed
$refto#at the combined result instead of the document it was written in, including one named by a definition the result keeps.$refwhose target istrueorfalse, which panicked.CanonicalSchema::coversansweringUnknownfor a schema against itself, where that schema is a$ref.CanonicalSchema::unionkeeping a$refbeside the schema it names, where the other three operations read through it.CanonicalSchema::coversandCanonicalSchema::subtractcancelling two nodes written the same way whose#names a different document.additionalPropertiesreaching a key the pattern map matches when a finite key constraint closes the map, which dropped values both operands accept.$defsentry read past a wider schema written out at every use, rather than kept as the pointer it was.$refas a pointer instead of reading through it, so a schema written with a$refdid not cancel against the same schema written out.CanonicalSchema::subtractasking for a complement where the difference is one of the operands or empty, declining on schemas it can subtract.$defsentries the result no longer references, which then showed up in the emitted schema.CanonicalSchema::uniondeclining over an approximated intersection, where the union itself is exact.$idcontains one. #1473unevaluatedPropertiesandunevaluatedItemsignoring an$idon a subschema they walk through, so a relative$refinside it resolved against the enclosing resource.Performance
tafia/quick-xml (quick-xml)
v0.42.0Compare Source
This is a large release. The primary change is an ergonomic improvement across the entire API -
quick_xml now makes use of
&strandStringtypes where possible instead of&[u8]andVec<u8>. This requires significant refactoring of downstream code,but should result in a net simplification as well as potential performance improvements,
and opens up additional opportunities in future releases.
The MSRV has been raised to 1.86. We now use Rust 2024 Edition.
Breaking Changes
Non-UTF-8 input passed to
Reader::from_reader()withoutDecodingReaderwill nowproduce
Error::Encodinginstead of silently passing through invalid bytes.Use
DecodingReaderto transcode non-UTF-8 sources.QName,LocalName,Prefix,Namespace,PrefixDeclaration)now wrap
&strinstead of&[u8].into_inner()returns&str, andAsRef<str>is implemented (
AsRef<[u8]>has been removed).ResolveResult::Unknownnow containsStringinstead of
Vec<u8>, andNamespaceErrorvariants containStringinstead ofVec<u8>.decoder: Decoderfield from event types (BytesStart,BytesText,BytesCData,BytesRef) andAttributes. Thedecoder()method is no longer availableon these types. Decode methods on events now always assume UTF-8 input.
Error::missed_end()no longer takes aDecoderparameter.BytesStart,BytesEnd,BytesText,BytesCData,BytesPI,BytesRef) now storeCow<str>internally instead ofCow<[u8]>.into_inner()onBytesText,BytesCData,BytesPI, andBytesRefnow returnsCow<str>.BytesStart::set_name()now takes&strinstead of&[u8].Eventenum now implementDeref<Target = str>instead of
Deref<Target = [u8]>. ExplicitAsRef<str>impls are provided toavoid ambiguity.
decode()methods fromBytesText,BytesCData, andBytesRef.Content is already available as
&strviaDeref. Thexml10_content(),xml11_content(),xml_content(), andhtml_content()methods now returnCow<str>directly instead ofResult<Cow<str>, EncodingError>.Attribute::valueis nowCow<'a, str>instead ofCow<'a, [u8]>.The
From<(&[u8], &[u8])>impl has been removed.BytesDecl::version(),encoding(), andstandalone()now returnCow<'_, str>instead ofCow<'_, [u8]>.Reader::decoder()method. UseReader::encoding()instead(available with the
encodingfeature). Removeddecoder()from theXmlReadserde trait. Removed all methods from
Decoder(the struct is kept only forbackward compatibility with deprecated
Attributemethods).NamespaceError::TooManyDeclarationshas been renamed toTooManyBindings,and
NamespaceResolver::set_max_declarations_per_elementhas been renamed toNamespaceResolver::set_max_namespace_bindings, and the semantic behavior haschanged slightly. The default maximum has also been reduced from 256 to 128.
DeError::UnexpectedStartrenamed toDeError::MixedContent. That erroris emitted when you try to deserialize boolean, number or string
fieldfromsomething like
<field>text <tag/> another text</field>.Bug Fixes
\r,\n, and\tin attribute valuesas
&#​13;,&#​10;, and&#​9;respectively, preventing silent data loss fromXML attribute-value normalization on round-trip. Likewise
Attribute::fromperforms the same transformation.
Deserializernow correctly handles namespaces. Previouslythe namespace bindings might be applied or removed before the event actually
was consumed which lead to a couple of bugs.
Attributes::newandAttributes::htmlnow return empty iterators whentheir starting position is past the end of the input instead of panicking.
NamespaceResolver::push(and hence everyNsReaderStart/Emptyevent) now returns the new
NamespaceError::TooDeeplyNestedwhen a documentnests elements deeper than
u16::MAX, instead of overflowing the internalu16depth counter. Previously the unguardednesting_level += 1panickedunder
overflow-checksbuilds and silently wrapped in release, corruptingnamespace-scope bookkeeping on deeply nested untrusted input.
NamespaceResolvernow caps the total number of in-scope namespacebindings (default 128, configurable via
set_max_namespace_bindings),replacing the previous per-element
max_declarations_per_elementlimit.Deserializernow enforces a configurable recursion-depthlimit (default 128, matching
serde_json). Deeply nested XML returnsDeError::TooDeeplyNestedinstead of overflowing the native call stack.Use
Deserializer::recursion_limit()to adjust.\rin text content is now escaped as&#​13;by the serde serializer,BytesText::new(),escape(),partial_escape(), andminimal_escape(),preventing silent conversion to
\nfrom XML end-of-line normalization onround-trip. Note that
\rcannot be preserved through CDATA serializationbecause character references are not permitted inside CDATA sections.
Misc Changes
getting_started,writer,serde_roundtrip,reader_patterns,visitor) and anexamples/README.mdguide on choosing between the serde and pull-reader/writer APIs.
Attributemethods that take aDecoderparameter, sinceattribute values are now always valid UTF-8:
decoded_and_normalized_value(),decoded_and_normalized_value_with(),decode_and_unescape_value(), anddecode_and_unescape_value_with(). Usenormalized_value()andnormalized_value_with()instead.NamespaceResolver::withthat allows temporary applying namespacebindings from the start tag for the scope of a provided closure F, without making any
persistent change to the resolver. It is useful to check a peeked event which is
not yet consumed in custom implementations of peekable reader.
Deserializer::resolverandDeserializer::resolver_mutmethodsto get a namespace resolver used by this deserializer, because it no longer uses
an
NsReaderinternally.Hash,PartialOrd, andOrdacross allBytes*types.Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ 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 was generated by Mend Renovate. View the repository job log.