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

fix(deps): update rust crate uuid to v1 #37

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Aug 17, 2023

Mend Renovate logo banner

This PR contains the following updates:

Package Type Update Change
uuid dependencies major 0.8 -> 1.6

Release Notes

uuid-rs/uuid (uuid)

v1.6.1

Compare Source

What's Changed

Full Changelog: uuid-rs/uuid@1.6.0...1.6.1

v1.6.0

Compare Source

What's Changed

New Contributors

Full Changelog: uuid-rs/uuid@1.5.0...1.6.0

v1.5.0

Compare Source

What's Changed

New Contributors

Full Changelog: uuid-rs/uuid@1.4.1...1.5.0

v1.4.1

Compare Source

What's Changed

New Contributors

Full Changelog: uuid-rs/uuid@1.4.0...1.4.1

v1.4.0

Compare Source

What's Changed

New Contributors

Full Changelog: uuid-rs/uuid@1.3.4...1.4.0

v1.3.4

Compare Source

What's Changed

New Contributors

Full Changelog: uuid-rs/uuid@1.3.3...1.3.4

v1.3.3

Compare Source

What's Changed

Full Changelog: uuid-rs/uuid@1.3.2...1.3.3

v1.3.2

Compare Source

What's Changed
New Contributors

Full Changelog: uuid-rs/uuid@1.3.1...1.3.2

v1.3.1

Compare Source

What's Changed

Full Changelog: uuid-rs/uuid@1.3.0...1.3.1

v1.3.0

Compare Source

What's Changed
New Contributors

Full Changelog: uuid-rs/uuid@1.2.2...1.3.0

v1.2.2

Compare Source

What's Changed

Full Changelog: uuid-rs/uuid@1.2.1...1.2.2

v1.2.1

Compare Source

What's Changed

Full Changelog: uuid-rs/uuid@1.2.0...1.2.1

v1.2.0

Compare Source

What's Changed

New Contributors

Full Changelog: uuid-rs/uuid@1.1.2...1.2.0

v1.1.2

Compare Source

What's Changed

New Contributors

Full Changelog: uuid-rs/uuid@1.1.1...1.1.2

v1.1.1

Compare Source

What's Changed

New Contributors

Full Changelog: uuid-rs/uuid@1.1.0...1.1.1

v1.1.0

Compare Source

What's Changed

New Contributors

Full Changelog: uuid-rs/uuid@1.0.0...1.1.0

v1.0.0

Compare Source

This release includes a huge amount of work from a lot of contributors. These notes are duplicated from 1.0.0-alpha.1 since they're relevant for anybody moving from 0.8.2 to 1.0.0.

Changes since the last release

Contributions since the last release

@​Gaelan @​hecsalazarf @​Expyron @​saiintbrisson @​tshepang @​Tehnix @​Takashiidobe @​A248 @​clehner

With a special thanks to:

@​kinggoesgaming @​QnnOkabayashi @​Nugine

Highlights

Parsing and formatting methods are now much faster, and work in const too! On my i9 9900K Windows desktop, the difference looks something like this:

Case | 1.0.0-alpha.1 | 0.8.3
----------------------- | ------------------ | ------------------
parse_invalid_character | 40 ns/iter (+/- 0) | 39 ns/iter (+/- 1)
parse_invalid_group_len | 47 ns/iter (+/- 1) | 52 ns/iter (+/- 5)
parse_invalid_groups | 58 ns/iter (+/- 1) | 58 ns/iter (+/- 0)
parse_invalid_len | 57 ns/iter (+/- 2) | 6 ns/iter (+/- 0)
parse_nil | 16 ns/iter (+/- 0) | 50 ns/iter (+/- 4)
parse_nil_hyphenated | 17 ns/iter (+/- 0) | 59 ns/iter (+/- 2)
parse_random | 16 ns/iter (+/- 0) | 42 ns/iter (+/- 1)
parse_random_hyphenated | 18 ns/iter (+/- 0) | 51 ns/iter (+/- 2)
parse_urn | 18 ns/iter (+/- 0) | 51 ns/iter (+/- 1)

You can go one step further and look at the uuid-simd library for vectorized UUID parsing. It's fast!

You can create UUIDs at compile time using the uuid! macro:

#[macro_use]
extern crate uuid;

use uuid::Uuid;

const ID: Uuid = uuid!("67e55044-10b1-426f-9247-bb680e5fe0c8");

Enable the macro-diagnostics crate feature to get better diagnostics from uuid! using a procedural macro.

Breaking changes

Relocation of adapter::compact

This module can now be found in serde::compact. It can be combined with #[serde(with)] to serialize a Uuid using a more compact representation. We originally moved to this representation directly, but discovered it comes with its own drawbacks that aren't suitable for all formats.

Infallible constructors

The following methods have been changed to accept a &[u8; N] instead of a &[u8], making them infallible instead of returning a Result:

  • Uuid::from_fields
  • Uuid::from_fields_le
  • Uuid::new_v1
  • Builder::from_fields
  • Builder::from_fields_le

Infallible get_variant

The Uuid::get_variant method now returns a Variant instead of an Option<Varaint>, because it's not actually possible for it to ever be None.

Uuid::to_timestamp is now Uuid::get_timestamp

The Uuid::to_timestamp method has been renamed to Uuid::get_timestamp to make it more consistent with Uuid::get_version and Uuid::get_variant.

Changes to formatting methods

The following methods that produce formatting adapters have been renamed:

  • Uuid::to_hyphenated -> Uuid::hyphenated
  • Uuid::to_simple -> Uuid::simple
  • Uuid::to_urn -> Uuid::urn

The following types have been removed:

  • HyphenatedRef
  • SimpleRef
  • UrnRef

The following methods have been changed to return a &<AdapterType> instead of an <AtapterType>Ref:

  • Uuid::to_hyphenated_ref -> Uuid::as_hyphenated
  • Uuid::to_simple_ref -> Uuid::as_simple
  • Uuid::to_urn_ref -> Uuid::as_urn

Builder method consistency

The Builder::build method has been renamed to Builder::into_uuid, to complement the <AdapterType>::into_uuid methods. It also gets an equivalent Builder::as_uuid method.

Version and Variant are non-exhaustive

The #[non_exhaustive] attribute has been added to Version and Variant. There are already active proposals for new UUID versions, so these are likely to continue evolving in the future.

Removed winapi support

The Uuid::to_guid and Uuid::from_guid methods have been removed. This was done for two reasons:

  • We need to avoid unstable winapi types in the stable uuid public API.
  • Whether or not GUID fields need to be flipped to convert into a UUID depends on the source of the GUID, so we can't really offer a single pair of methods to convert a GUID into a UUID.

There are some examples in the repository root that demonstrate how to convert GUIDs into UUIDs as a replacement.

Building with --all-features

Now that uuid includes unstable features, if you're building with --all-features (such as in package manager scenarios), you'll also need to pass RUSTFLAGS="--cfg uuid_unstable", or you'll end up with compilation errors. If this strategy becomes problematic for users we can change unstable features to silently no-op instead of cause compilation failures if the corresponding cfg is not also supplied. Please reach out if that affects you!

Stability commitment

With uuid 1.0 we'll try to stay on that version "forever". There won't be a 2.0 unless there's a very compelling need for it. That means you should feel safe depending on Uuid in the public API of your libraries if you want to.

v0.8.2: uuid 0.8.2: API and feature cleanups

Compare Source

This release includes a large number of internal refactorings and changes to dependencies.

The 0.8.x releases are now tracked on the 0.8.x branch of uuid. The main branch now contains breaking changes.

Contributions

  • Update md5 to 0.7 (#​442)
  • Use getrandom instead of rand (#​447)
  • Remove dependency on serde_derive (#​478)
  • Add WASI support (#​477)
  • Fix some links in the docs (#​471)
  • Make Uuid #[repr(transparent)] (#​468)
  • Fix the example in the readme (#​467)
  • Clarify documentation around rand crate (#​489)
  • Fix an incorrect date mentioned in the docs (#​496)
  • Update getrandom to 0.2.0 (#​501)
  • Improve deserialization error message (#​505)
  • Update docs on wasm features (#​506)

v0.8.1: uuid 0.8.1: Docs

Compare Source

This release doesn't contain any source changes, it fixes up errors in the docs, adds clarification and more examples.

Contributions


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.


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

This PR has been generated by Mend Renovate. View repository job log here.

@renovate renovate bot force-pushed the renovate/uuid-1.x branch 3 times, most recently from 2eec266 to c0515df Compare August 21, 2023 11:09
@renovate renovate bot force-pushed the renovate/uuid-1.x branch 9 times, most recently from c887b5f to 3aef239 Compare August 31, 2023 07:10
@renovate renovate bot force-pushed the renovate/uuid-1.x branch 5 times, most recently from 1a9f1c0 to 86f1fd2 Compare September 11, 2023 03:43
@renovate renovate bot force-pushed the renovate/uuid-1.x branch 5 times, most recently from 183b09d to 956a97d Compare September 15, 2023 19:49
@renovate renovate bot force-pushed the renovate/uuid-1.x branch 3 times, most recently from 25d0be1 to 7e14079 Compare September 23, 2023 04:29
@renovate renovate bot force-pushed the renovate/uuid-1.x branch 4 times, most recently from 3f32953 to 3f76820 Compare October 16, 2023 17:18
@renovate renovate bot force-pushed the renovate/uuid-1.x branch 5 times, most recently from 637c89e to cb2211f Compare October 22, 2023 01:30
@renovate renovate bot force-pushed the renovate/uuid-1.x branch 4 times, most recently from 94ad291 to 9ca705e Compare October 30, 2023 18:44
@renovate renovate bot force-pushed the renovate/uuid-1.x branch 3 times, most recently from 9f01194 to 8fb30dc Compare November 7, 2023 07:19
@renovate renovate bot force-pushed the renovate/uuid-1.x branch 3 times, most recently from bf15f15 to a2ace58 Compare November 13, 2023 23:14
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.

0 participants