statnett / quick-xmltodict

Efficient XML-to-dict conversion backed by Rust
MIT License
2 stars 0 forks source link

Update Rust crate quick-xml to v0.36.1 #15

Open renovate[bot] opened 3 months ago

renovate[bot] commented 3 months ago

This PR contains the following updates:

Package Type Update Change
quick-xml dependencies minor 0.31.0 -> 0.36.1

Release Notes

tafia/quick-xml (quick-xml) ### [`v0.36.1`](https://redirect.github.com/tafia/quick-xml/blob/HEAD/Changelog.md#0361----2024-07-23) [Compare Source](https://redirect.github.com/tafia/quick-xml/compare/v0.36.0...v0.36.1) ##### New Features - [#​623]: Added `Reader::stream()` that can be used to read arbitrary data from the inner reader while track position for XML reader. [#​623]: https://redirect.github.com/tafia/quick-xml/issues/623 ### [`v0.36.0`](https://redirect.github.com/tafia/quick-xml/blob/HEAD/Changelog.md#0360----2024-07-08) [Compare Source](https://redirect.github.com/tafia/quick-xml/compare/v0.35.0...v0.36.0) ##### Bug Fixes - [#​781]: Fix conditions to start CDATA section. Only uppercase `` readers. ##### Misc Changes - [#​760]: `Attribute::decode_and_unescape_value` and `Attribute::decode_and_unescape_value_with` now accepts `Decoder` instead of `Reader`. Use `Reader::decoder()` to get it. - [#​760]: `Writer::write_event` now consumes event. Use `Event::borrow()` if you want to keep ownership. - [#​751]: Type of `Reader::error_position()` and `Reader::buffer_position()` changed from `usize` to `u64`. - [#​751]: Type alias `Span` changed from `Range` to `Range`. [#​751]: https://redirect.github.com/tafia/quick-xml/issues/751 [#​760]: https://redirect.github.com/tafia/quick-xml/pull/760 ### [`v0.33.0`](https://redirect.github.com/tafia/quick-xml/blob/HEAD/Changelog.md#0330----2024-06-21) [Compare Source](https://redirect.github.com/tafia/quick-xml/compare/v0.32.0...v0.33.0) ##### New Features - [#​758]: Implemented `From` for `BytesStart` and `BytesEnd`. ##### Bug Fixes - [#​755]: Fix incorrect missing of trimming all-space text events when `trim_text_start = false` and `trim_text_end = true`. ##### Misc Changes - [#​650]: Change the type of `Event::PI` to a new dedicated `BytesPI` type. - [#​759]: Make `const` as much functions as possible: - `resolve_html5_entity()` - `resolve_predefined_entity()` - `resolve_xml_entity()` - `Attr::key()` - `Attr::value()` - `Attributes::html()` - `Attributes::new()` - `BytesDecl::from_start()` - `Decoder::encoding()` - `Deserializer::get_ref()` - `IoReader::get_ref()` - `LocalName::into_inner()` - `Namespace::into_inner()` - `NsReader::config()` - `NsReader::prefixes()` - `Prefix::into_inner()` - `QName::into_inner()` - `Reader::buffer_position()` - `Reader::config()` - `Reader::decoder()` - `Reader::error_position()` - `Reader::get_ref()` - `SliceReader::get_ref()` - `Writer::get_ref()` - `Writer::new()` - [#​763]: Hide `quick_xml::escape::resolve_html5_entity` under `escape-html` feature again. This function has significant influence to the compilation time (10+ seconds or 5x times) [#​650]: https://redirect.github.com/tafia/quick-xml/issues/650 [#​755]: https://redirect.github.com/tafia/quick-xml/pull/755 [#​758]: https://redirect.github.com/tafia/quick-xml/pull/758 [#​759]: https://redirect.github.com/tafia/quick-xml/pull/759 [#​763]: https://redirect.github.com/tafia/quick-xml/issues/763 ### [`v0.32.0`](https://redirect.github.com/tafia/quick-xml/blob/HEAD/Changelog.md#0320----2024-06-10) [Compare Source](https://redirect.github.com/tafia/quick-xml/compare/v0.31.0...v0.32.0) The way to configure parser is changed. Now all configuration is contained in the `Config` struct and can be applied at once. When `serde-types` feature is enabled, configuration is serializable. The method of reporting positions of errors has changed - use `error_position()` to get an offset of the error position. For `SyntaxError`s the range `error_position()..buffer_position()` also will represent a span of error. The way of resolve entities with `unescape_with` are changed. Those methods no longer resolve predefined entities. ##### New Features - [#​513]: Allow to continue parsing after getting new `Error::IllFormed`. - [#​677]: Added methods `config()` and `config_mut()` to inspect and change the parser configuration. Previous builder methods on `Reader` / `NsReader` was replaced by direct access to fields of config using `reader.config_mut().<...>`. - [#​684]: Added a method `Config::enable_all_checks` to turn on or off all well-formedness checks. - [#​362]: Added `escape::minimal_escape()` which escapes only `&` and `<`. - [#​362]: Added `BytesCData::minimal_escape()` which escapes only `&` and `<`. - [#​362]: Added `Serializer::set_quote_level()` which allow to set desired level of escaping. - [#​705]: Added `NsReader::prefixes()` to list all the prefixes currently declared. - [#​629]: Added a default case to `impl_deserialize_for_internally_tagged_enum` macro so that it can handle every attribute that does not match existing cases within an enum variant. - [#​722]: Allow to pass owned strings to `Writer::create_element`. This is breaking change! - [#​275]: Added `ElementWriter::new_line()` which enables pretty printing elements with multiple attributes. - [#​743]: Added `Deserializer::get_ref()` to get XML Reader from serde Deserializer - [#​734]: Added helper functions to resolve predefined XML and HTML5 entities: - `quick_xml::escape::resolve_predefined_entity` - `quick_xml::escape::resolve_xml_entity` - `quick_xml::escape::resolve_html5_entity` - [#​753]: Added parser for processing instructions: `quick_xml::reader::PiParser`. - [#​754]: Added parser for elements: `quick_xml::reader::ElementParser`. ##### Bug Fixes - [#​622]: Fix wrong disregarding of not closed markup, such as lone `<`. - [#​684]: Fix incorrect position reported for `Error::IllFormed(DoubleHyphenInComment)`. - [#​684]: Fix incorrect position reported for `Error::IllFormed(MissingDoctypeName)`. - [#​704]: Fix empty tags with attributes not being expanded when `expand_empty_elements` is set to true. - [#​683]: Use local tag name when check tag name against possible names for field. - [#​753]: Correctly determine end of processing instructions and XML declaration. ##### Misc Changes - [#​675]: Minimum supported version of serde raised to 1.0.139 - [#​675]: Rework the `quick_xml::Error` type to provide more accurate information: - `Error::EndEventMismatch` replaced by `IllFormedError::MismatchedEndTag` in some cases - `Error::EndEventMismatch` replaced by `IllFormedError::UnmatchedEndTag` in some cases - `Error::TextNotFound` was removed because not used - `Error::UnexpectedBang` replaced by `SyntaxError` - `Error::UnexpectedEof` replaced by `SyntaxError` in some cases - `Error::UnexpectedEof` replaced by `IllFormedError` in some cases - `Error::UnexpectedToken` replaced by `IllFormedError::DoubleHyphenInComment` - `Error::XmlDeclWithoutVersion` replaced by `IllFormedError::MissingDeclVersion` (in [#​684]) - `Error::EmptyDocType` replaced by `IllFormedError::MissingDoctypeName` (in [#​684]) - [#​684]: Changed positions reported for `SyntaxError`s: now they are always points to the start of markup (i. e. to the `<` character) with error. Use `error_position()` for that. - [#​684]: Now `` parsed as `Event::PI` with empty content instead of raising syntax error. - [#​684]: Now `` parsed as `Event::Decl` instead of `Event::PI`. - [#​362]: Now default quote level is `QuoteLevel::Partial` when using serde serializer. - [#​689]: `buffer_position()` now always report the position the parser last seen. To get an error position use `error_position()`. - [#​738]: Add an example of how to deserialize XML elements into Rust enums using an intermediate custom deserializer. - [#​748]: Implement `Clone` for [`DeEvent`][DeEvent], [`PayloadEvent`][PayloadEvent] and [`Text`][Text]. - [#​734]: Rename `NoEntityResolver` to `PredefinedEntityResolver`. - [#​734]: No longer resolve predefined entities (`lt`, `gt`, `apos`, `quot`, `amp`) in `unescape_with` family of methods. You should do that by yourself using the methods listed above. [#​275]: https://redirect.github.com/tafia/quick-xml/issues/275 [#​362]: https://redirect.github.com/tafia/quick-xml/issues/362 [#​513]: https://redirect.github.com/tafia/quick-xml/issues/513 [#​622]: https://redirect.github.com/tafia/quick-xml/issues/622 [#​629]: https://redirect.github.com/tafia/quick-xml/issues/629 [#​675]: https://redirect.github.com/tafia/quick-xml/pull/675 [#​677]: https://redirect.github.com/tafia/quick-xml/pull/677 [#​683]: https://redirect.github.com/tafia/quick-xml/issues/683 [#​684]: https://redirect.github.com/tafia/quick-xml/pull/684 [#​689]: https://redirect.github.com/tafia/quick-xml/pull/689 [#​704]: https://redirect.github.com/tafia/quick-xml/pull/704 [#​705]: https://redirect.github.com/tafia/quick-xml/pull/705 [#​722]: https://redirect.github.com/tafia/quick-xml/pull/722 [#​734]: https://redirect.github.com/tafia/quick-xml/pull/734 [#​738]: https://redirect.github.com/tafia/quick-xml/pull/738 [#​743]: https://redirect.github.com/tafia/quick-xml/pull/743 [#​748]: https://redirect.github.com/tafia/quick-xml/pull/748 [#​753]: https://redirect.github.com/tafia/quick-xml/pull/753 [#​754]: https://redirect.github.com/tafia/quick-xml/pull/754 [`DeEvent`]: https://docs.rs/quick-xml/latest/quick_xml/de/enum.DeEvent.html [`PayloadEvent`]: https://docs.rs/quick-xml/latest/quick_xml/de/enum.PayloadEvent.html [`Text`]: https://docs.rs/quick-xml/latest/quick_xml/de/struct.Text.html

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.



This PR was generated by Mend Renovate. View the repository job log.