Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update Rust crate serde_yaml to 0.9.0 #9

Closed
wants to merge 1 commit into from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Jul 8, 2022

This PR contains the following updates:

Package Type Update Change
serde_yaml dependencies minor 0.8.24 -> 0.9.0

Warning

Some dependencies could not be looked up. Check the warning logs for more information.


Release Notes

dtolnay/serde-yaml (serde_yaml)

v0.9.34

Compare Source

As of this release, I am not planning to publish further versions of serde_yaml as none of my projects have been using YAML for a long time, so I have archived the GitHub repo and marked the crate deprecated in the version number. An official replacement isn't designated for those who still need to work with YAML, but https://crates.io/search?q=yaml\&sort=relevance and https://crates.io/keywords/yaml has a number of reasonable-looking options available.

v0.9.33

Compare Source

v0.9.32

Compare Source

  • Fix unused_imports warnings when compiled by rustc 1.78

v0.9.31

Compare Source

  • Add swap_remove and shift_remove methods on Mapping (#​408)

v0.9.30

Compare Source

  • Update proc-macro2 to fix caching issue when using a rustc-wrapper such as sccache

v0.9.29

Compare Source

  • Turn on deny(unsafe_op_in_unsafe_fn) lint

v0.9.28

Compare Source

  • Update unsafe-libyaml dependency to pull in unaligned write fix

v0.9.27

Compare Source

  • Always serialize serde_yaml::Number containing NaN as a positive NaN (#​394)

v0.9.26

Compare Source

  • Guarantee that .nan is deserialized as a positive NaN (#​392, #​393)

v0.9.25

Compare Source

  • Serialize using quoted style around scalar that has digits with leading zero (#​347)

v0.9.24

Compare Source

  • Implement FromStr for serde_yaml::Number (#​381)

v0.9.23

Compare Source

  • Documentation improvements

v0.9.22

Compare Source

  • Update indexmap dependency to version 2

v0.9.21

Compare Source

  • Make Tag::new panic if given empty string, since YAML has no syntax for an empty tag

v0.9.20

Compare Source

  • Allow an empty YAML document to deserialize to None or Value::Null, in addition to the previously supported empty vector, empty map, and struct with no required fields

v0.9.19

Compare Source

  • Fix message duplication between serde_yaml::Error's Display and source() (#​359, #​360)

v0.9.18

Compare Source

  • Add support for emitting Unicode characters over codepoint U+FFFF (#​356)

v0.9.17

Compare Source

  • Improve Debug representation of some error messages

v0.9.16

Compare Source

  • Opt out of -Zrustdoc-scrape-examples on docs.rs for now

v0.9.15

Compare Source

  • Documentation improvements

v0.9.14

Compare Source

  • Implement Deserializer for TaggedValue and &TaggedValue (#​339)

v0.9.13

Compare Source

  • Recognize True, TRUE, False, FALSE as booleans, Null, NULL as null (#​330)

v0.9.12

Compare Source

  • Support deserializing tagged literal scalar into primitive (#​327)

    "foo": !!int |-
      7200

v0.9.11

Compare Source

  • Serialize strings on a single line when they do not already contain a newline character, regardless of string length (#​321, #​322)

v0.9.10

Compare Source

  • Make Display for Number produce the same representation as serializing (#​316)

v0.9.9

Compare Source

v0.9.8

Compare Source

  • Fix serialization of TaggedValue when used with to_value (#​313)

v0.9.7

Compare Source

  • Allow an empty plain scalar to deserialize as an empty map or seq (#​304)

v0.9.6

Compare Source

  • Fix tag not getting serialized in certain map values (#​302)

v0.9.5

Compare Source

v0.9.4

Compare Source

  • Add serde_yaml::with::singleton_map for serialization of enums as a 1-entry map (#​300)
  • Reject duplicate keys when deserializing Mapping or Value (#​301)

v0.9.3

Compare Source

  • Add categories to crates.io metadata
  • Add keywords to crates.io metadata

v0.9.2

Compare Source

  • Improve Debug representation of serde_yaml::Error

v0.9.1

Compare Source

  • Fix panic on some documents containing syntax error (#​293)
  • Improve error messages that used to contain duplicative line/column information (#​294)

v0.9.0

Compare Source

API documentation: https://docs.rs/serde_yaml/0.9

Highlights
  • The serde_yaml::Value enum gains a Tagged variant which represents the deserialization of YAML's !Tag syntax. Tagged scalars, sequences, and mappings are all supported.

  • An empty YAML input (or document containing only comments) will deserialize successfully to an empty map, empty sequence, or Serde struct as long as the struct has only optional fields. Previously this would error.

  • A new .apply_merge() method on Value implements YAML's << merge key convention.

  • The Debug representation of serde_yaml::Value has gotten vastly better (https://github.com/dtolnay/serde-yaml/pull/287).

  • Deserialization of borrowed strings now works.

    #[derive(Deserialize, Debug)]
    struct Struct<'a> {
        borrowed: &'a str,
    }
    
    let yaml = "borrowed: 'kölcsönzött'\n";
    let value: Struct = serde_yaml::from_str(yaml)?;
    println!("{:#?}", value);
  • Value's and Mapping's methods get and get_mut have been generalized to support a &str argument, as opposed to requiring you to allocate and construct a Value::String for indexing into another existing Value.

  • Mapping exposes more APIs that have become conventional on map data structures, such as .keys(), .values(), .into_keys(), .into_values(), .values_mut(), and .retain(|k, v| …).

Breaking changes
  • Serialization no longer produces leading ---\n on the serialized output. You can prepend this yourself if your use case demands it.

  • Serialization of enum variants is now based on YAML's !Tag syntax, rather than JSON-style singleton maps.

    #[derive(Serialize, Deserialize)]
    enum Enum {
        Newtype(usize),
        Tuple(usize, usize, usize),
        Struct { x: f64, y: f64 },
    }
    - !Newtype 1
    - !Tuple [0, 0, 0]
    - !Struct {x: 1.0, y: 2.0}
  • A bunch of non-base-10 edge cases in number parsing have been resolved. For example 0x+1 and ++0x1 are now parsed as strings, whereas they used to be incorrectly treated as numbers.

  • Deserializers obtained through iteration can no longer be iterated further:

    let deserializer = serde_yaml::Deserializer::from_str(multiple_documents);
    for de in deserializer {
        // correct:
        let myvalue = T::deserialize(de)?;
    
        // incorrect: used to produce some questionable result, now produces 0 sub-documents
        for questionable in de {
            let wat = T::deserialize(questionable)?;
        }
    }
  • The abandoned yaml-rust crate is no longer used as the YAML backend. The new libyaml-based backend surely has different edge cases and quirks than yaml-rust.

  • Some excessive PartialEq impls have been eliminated.

  • The serde_yaml::to_vec function has been removed. Use serde_yaml::to_writer for doing I/O, or use serde_yaml::to_string + .into_bytes() on the resulting String.

  • The serde_yaml::seed module has been removed. Now that a serde_yaml::Deserializer is publicly available, the same use cases can be addressed via seed.deserialize(Deserializer::from_str(…)) instead.

Bugfixes
  • Empty values in a mapping are supported, and deserialize to empty string when the corresponding struct field is of type string. Previously they would deserialize to "~" which makes no sense.

  • 128-bit integer deserialization now supports hex and octal input.

  • Serde_yaml now includes a mitigation against a "billion laughs" attack in which malicious input involving YAML anchors and aliases is used to consume an amount of processing or memory that is exponential in the size of the input document. Serde_yaml will quickly produce an error in this situation instead.

v0.8.26

Compare Source

v0.8.25

Compare Source

  • Add to "encoding" category on crates.io (#​246)

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.


  • If you want to rebase/retry this PR, check this box

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

@renovate renovate bot force-pushed the renovate/serde_yaml-0.x branch from 752f111 to 6f373d5 Compare July 16, 2022 10:48
@renovate renovate bot changed the title Update Rust crate serde_yaml to 0.8.25 Update Rust crate serde_yaml to 0.8.26 Jul 16, 2022
@renovate renovate bot force-pushed the renovate/serde_yaml-0.x branch from 6f373d5 to c3cdc37 Compare July 28, 2022 20:56
@renovate renovate bot changed the title Update Rust crate serde_yaml to 0.8.26 Update Rust crate serde_yaml to 0.9.0 Jul 28, 2022
@renovate renovate bot force-pushed the renovate/serde_yaml-0.x branch from c3cdc37 to 7169770 Compare July 29, 2022 12:51
@renovate renovate bot changed the title Update Rust crate serde_yaml to 0.9.0 Update Rust crate serde_yaml to 0.9.1 Jul 29, 2022
@renovate renovate bot force-pushed the renovate/serde_yaml-0.x branch 3 times, most recently from 029a617 to 83eb27e Compare July 30, 2022 06:19
@renovate renovate bot changed the title Update Rust crate serde_yaml to 0.9.1 Update Rust crate serde_yaml to 0.9.2 Jul 30, 2022
@renovate renovate bot force-pushed the renovate/serde_yaml-0.x branch from 83eb27e to 4dd3d00 Compare August 2, 2022 21:44
@renovate renovate bot changed the title Update Rust crate serde_yaml to 0.9.2 Update Rust crate serde_yaml to 0.9.3 Aug 2, 2022
@renovate renovate bot force-pushed the renovate/serde_yaml-0.x branch from 4dd3d00 to ca514cd Compare August 3, 2022 02:08
@renovate renovate bot changed the title Update Rust crate serde_yaml to 0.9.3 Update Rust crate serde_yaml to 0.9.4 Aug 3, 2022
@renovate renovate bot changed the title Update Rust crate serde_yaml to 0.9.4 Update Rust crate serde_yaml to 0.9.6 Aug 13, 2022
@renovate renovate bot changed the title Update Rust crate serde_yaml to 0.9.6 Update Rust crate serde_yaml to 0.9.7 Aug 13, 2022
@renovate renovate bot changed the title Update Rust crate serde_yaml to 0.9.7 Update Rust crate serde_yaml to 0.9.8 Aug 13, 2022
@renovate renovate bot changed the title Update Rust crate serde_yaml to 0.9.8 Update Rust crate serde_yaml to 0.9.9 Aug 14, 2022
@renovate renovate bot changed the title Update Rust crate serde_yaml to 0.9.9 Update Rust crate serde_yaml to 0.9.10 Aug 21, 2022
@renovate renovate bot changed the title Update Rust crate serde_yaml to 0.9.10 Update Rust crate serde_yaml to 0.9.11 Sep 2, 2022
@renovate renovate bot changed the title Update Rust crate serde_yaml to 0.9.11 Update Rust crate serde_yaml to 0.9.12 Sep 14, 2022
@renovate renovate bot changed the title Update Rust crate serde_yaml to 0.9.12 Update Rust crate serde_yaml to 0.9.13 Sep 14, 2022
@renovate renovate bot changed the title Update Rust crate serde_yaml to 0.9.22 Update Rust crate serde_yaml to 0.9.23 Jul 15, 2023
@renovate renovate bot force-pushed the renovate/serde_yaml-0.x branch from fcb9ff7 to 9dfc325 Compare July 15, 2023 22:05
@renovate renovate bot changed the title Update Rust crate serde_yaml to 0.9.23 Update Rust crate serde_yaml to 0.9.24 Jul 18, 2023
@renovate renovate bot force-pushed the renovate/serde_yaml-0.x branch from 9dfc325 to 15a37f1 Compare July 18, 2023 00:39
@renovate renovate bot changed the title Update Rust crate serde_yaml to 0.9.24 Update Rust crate serde_yaml to 0.9.25 Jul 21, 2023
@renovate renovate bot force-pushed the renovate/serde_yaml-0.x branch from 15a37f1 to c1b1c6e Compare July 21, 2023 00:13
@renovate renovate bot changed the title Update Rust crate serde_yaml to 0.9.25 Update Rust crate serde_yaml to 0.9.26 Oct 26, 2023
@renovate renovate bot changed the title Update Rust crate serde_yaml to 0.9.26 Update Rust crate serde_yaml to 0.9.27 Oct 26, 2023
@renovate renovate bot changed the title Update Rust crate serde_yaml to 0.9.27 Update Rust crate serde_yaml to 0.9.28 Dec 20, 2023
@renovate renovate bot force-pushed the renovate/serde_yaml-0.x branch 2 times, most recently from fa16cef to 55d5616 Compare December 21, 2023 21:47
@renovate renovate bot changed the title Update Rust crate serde_yaml to 0.9.28 Update Rust crate serde_yaml to 0.9.29 Dec 21, 2023
@renovate renovate bot changed the title Update Rust crate serde_yaml to 0.9.29 Update Rust crate serde_yaml to 0.9.30 Jan 2, 2024
@renovate renovate bot changed the title Update Rust crate serde_yaml to 0.9.30 Update Rust crate serde_yaml to 0.9.31 Jan 29, 2024
@renovate renovate bot changed the title Update Rust crate serde_yaml to 0.9.31 Update Rust crate serde_yaml to 0.9.32 Feb 19, 2024
@renovate renovate bot force-pushed the renovate/serde_yaml-0.x branch from ff9ac1a to 4c6d681 Compare March 17, 2024 06:08
@renovate renovate bot changed the title Update Rust crate serde_yaml to 0.9.32 Update Rust crate serde_yaml to 0.9.33 Mar 17, 2024
@renovate renovate bot force-pushed the renovate/serde_yaml-0.x branch from 4c6d681 to 9e6ff5f Compare March 25, 2024 04:57
Copy link
Contributor Author

renovate bot commented Mar 25, 2024

⚠ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: Cargo.lock
Command failed: cargo update --config net.git-fetch-with-cli=true --manifest-path Cargo.toml --package serde_yaml@0.8.24 --precise 0.9.34
error: package ID specification `serde_yaml@0.8.24` did not match any packages
Did you mean one of these?

  serde_yaml@0.9.25

@renovate renovate bot changed the title Update Rust crate serde_yaml to 0.9.33 Update Rust crate serde_yaml to 0.9.34 Mar 25, 2024
@renovate renovate bot changed the title Update Rust crate serde_yaml to 0.9.34 Update Rust crate serde_yaml to 0.9.0 May 5, 2024
@renovate renovate bot force-pushed the renovate/serde_yaml-0.x branch from 9e6ff5f to 94b4e4f Compare May 5, 2024 11:17
@lilioid lilioid closed this Oct 22, 2024
@lilioid lilioid deleted the renovate/serde_yaml-0.x branch October 22, 2024 07:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant