Commit f9661f6
authored
fix(deps): update all non-major dependencies (#325)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [prost](https://redirect.github.com/tokio-rs/prost) | dependencies |
minor | `0.12.3` -> `0.13.0` |
| [rand](https://rust-random.github.io/book)
([source](https://redirect.github.com/rust-random/rand)) |
dev-dependencies | minor | `0.8.5` -> `0.9.0` |
---
### Release Notes
<details>
<summary>tokio-rs/prost (prost)</summary>
###
[`v0.13.5`](https://redirect.github.com/tokio-rs/prost/blob/HEAD/CHANGELOG.md#Prost-version-0135)
[Compare
Source](https://redirect.github.com/tokio-rs/prost/compare/v0.13.4...v0.13.5)
*PROST!* is a [Protocol
Buffers](https://developers.google.com/protocol-buffers/) implementation
for the [Rust Language](https://www.rust-lang.org/). `prost` generates
simple, idiomatic Rust code from `proto2` and `proto3` files.
#### Features
- prost-types: Derive Arbitrary
([#​1188](https://redirect.github.com/tokio-rs/prost/issues/1188))
#### Documentation
- Use intra doc links instead of HTML tags
([#​1219](https://redirect.github.com/tokio-rs/prost/issues/1219))
#### Dependencies
- Update pulldown-cmark-to-cmark requirement from >=16, <=19 to >=16,
<=20
([#​1206](https://redirect.github.com/tokio-rs/prost/issues/1206))
- Update itertools requirement from >=0.10, <=0.13 to >=0.10, <=0.14
([#​1222](https://redirect.github.com/tokio-rs/prost/issues/1222))
- Update petgraph requirement to include 0.7
([#​1226](https://redirect.github.com/tokio-rs/prost/issues/1226))
- Update rand requirement from 0.8 to 0.9
([#​1233](https://redirect.github.com/tokio-rs/prost/issues/1233))
- Bump clippy to 1.83
([#​1220](https://redirect.github.com/tokio-rs/prost/issues/1220))
- Update flake.lock
([#​1216](https://redirect.github.com/tokio-rs/prost/issues/1216))
#### Styling
- Replace unnecessary `map_or`
([#​1221](https://redirect.github.com/tokio-rs/prost/issues/1221))
- prost-build: Use enum getter
([#​1238](https://redirect.github.com/tokio-rs/prost/issues/1238))
#### Testing
- default_enum_value: Move tests to separate module
([#​1198](https://redirect.github.com/tokio-rs/prost/issues/1198))
- nesting: Move tests to separate module
([#​1218](https://redirect.github.com/tokio-rs/prost/issues/1218))
- recursive_oneof: Move tests to separate module
([#​1225](https://redirect.github.com/tokio-rs/prost/issues/1225))
- boxed_field: Box an oneof field
([#​1235](https://redirect.github.com/tokio-rs/prost/issues/1235))
- groups: Move tests to separate module
([#​1234](https://redirect.github.com/tokio-rs/prost/issues/1234))
- default_string_escape: Move tests to separate module
([#​1239](https://redirect.github.com/tokio-rs/prost/issues/1239))
- Move DecodeError tests closer to the implementation
([#​1227](https://redirect.github.com/tokio-rs/prost/issues/1227))
###
[`v0.13.4`](https://redirect.github.com/tokio-rs/prost/blob/HEAD/CHANGELOG.md#Prost-version-0134)
[Compare
Source](https://redirect.github.com/tokio-rs/prost/compare/v0.13.3...v0.13.4)
*PROST!* is a [Protocol
Buffers](https://developers.google.com/protocol-buffers/) implementation
for the [Rust Language](https://www.rust-lang.org/). `prost` generates
simple, idiomatic Rust code from `proto2` and `proto3` files.
#### Features
- Impl Name for Protobuf well-known wrapper types
([#​1174](https://redirect.github.com/tokio-rs/prost/issues/1174))
#### Performance
- NonZeroU64 to optimize encoded_len_varint
([#​1192](https://redirect.github.com/tokio-rs/prost/issues/1192))
#### Dependencies
- Remove unused `bytes` dependency from `prost-build`
([#​1169](https://redirect.github.com/tokio-rs/prost/issues/1169))
- Update pulldown-cmark-to-cmark requirement from >=16, <=17 to >=16,
<=18
([#​1173](https://redirect.github.com/tokio-rs/prost/issues/1173))
- Update pulldown-cmark-to-cmark requirement from >=16, <=18 to >=16,
<=19
([#​1195](https://redirect.github.com/tokio-rs/prost/issues/1195))
- Update protobuf to v25.3
([#​1165](https://redirect.github.com/tokio-rs/prost/issues/1165))
- Update protobuf to v25.4
([#​1176](https://redirect.github.com/tokio-rs/prost/issues/1176))
#### Styling
- Remove explicit lifetimes
([#​1180](https://redirect.github.com/tokio-rs/prost/issues/1180))
- Remove unnecessary empty line after document
([#​1181](https://redirect.github.com/tokio-rs/prost/issues/1181))
#### Testing
- *(boxed_field)* Confirm `Foo::bar` is boxed
([#​1168](https://redirect.github.com/tokio-rs/prost/issues/1168))
- Move build.rs to standard location
([#​1167](https://redirect.github.com/tokio-rs/prost/issues/1167))
- *(custom_debug)* Merge `skip_debug` into `custom_debug`
([#​1178](https://redirect.github.com/tokio-rs/prost/issues/1178))
- Rename `invalid_doctest` to `disable_comments`
([#​1183](https://redirect.github.com/tokio-rs/prost/issues/1183))
- *(custom_attributes)* Move module to separate file
([#​1187](https://redirect.github.com/tokio-rs/prost/issues/1187))
#### Build
- Bump clippy version to 1.82
([#​1182](https://redirect.github.com/tokio-rs/prost/issues/1182))
- Restrict permissions of `GITHUB_TOKEN`
([#​1189](https://redirect.github.com/tokio-rs/prost/issues/1189))
###
[`v0.13.3`](https://redirect.github.com/tokio-rs/prost/blob/HEAD/CHANGELOG.md#Prost-version-0133)
[Compare
Source](https://redirect.github.com/tokio-rs/prost/compare/v0.13.2...v0.13.3)
*PROST!* is a [Protocol
Buffers](https://developers.google.com/protocol-buffers/) implementation
for the [Rust Language](https://www.rust-lang.org/). `prost` generates
simple, idiomatic Rust code from `proto2` and `proto3` files.
##### Features
- *(prost-types)* Add `normalized` functions
([#​1158](https://redirect.github.com/tokio-rs/prost/issues/1158))
##### Bug Fixes
- *(prost-build)* Remove `derived(Copy)` on boxed fields
([#​1157](https://redirect.github.com/tokio-rs/prost/issues/1157))
##### Documentation
- *(prost-types)* Add description of using Any
([#​1141](https://redirect.github.com/tokio-rs/prost/issues/1141))
- *(prost-build)* Use `cargo add` in example
([#​1149](https://redirect.github.com/tokio-rs/prost/issues/1149))
##### Styling
- Use `Path::display()` when printing a path
([#​1150](https://redirect.github.com/tokio-rs/prost/issues/1150))
- `MessageGraph::new()` can't actually fail
([#​1151](https://redirect.github.com/tokio-rs/prost/issues/1151))
- *(generated-code)* Use `Self` in `as_str_name`
([#​1154](https://redirect.github.com/tokio-rs/prost/issues/1154))
##### Testing
- Actually test `skip_debug` for `prost::Oneof`
([#​1148](https://redirect.github.com/tokio-rs/prost/issues/1148))
- *(prost-build)* Validate error texts
([#​1152](https://redirect.github.com/tokio-rs/prost/issues/1152))
- *(prost-build)* Fix error texts
([#​1156](https://redirect.github.com/tokio-rs/prost/issues/1156))
##### Build
- Increase MSRV to 1.71.1
([#​1135](https://redirect.github.com/tokio-rs/prost/issues/1135))
- *(deps)* Update pulldown-cmark to 0.12 and pulldown-cmark-to-cmark to
16
([#​1144](https://redirect.github.com/tokio-rs/prost/issues/1144))
- *(protobuf)* Compile and install protoc on Windows
([#​1145](https://redirect.github.com/tokio-rs/prost/issues/1145))
- *(protobuf)* Use same `protoc` from same repo as .proto-files
([#​1136](https://redirect.github.com/tokio-rs/prost/issues/1136))
- *(deps)* Update pulldown-cmark-to-cmark from 16 to 17
([#​1155](https://redirect.github.com/tokio-rs/prost/issues/1155))
- Unify assert on fixtures
([#​1142](https://redirect.github.com/tokio-rs/prost/issues/1142))
###
[`v0.13.2`](https://redirect.github.com/tokio-rs/prost/blob/HEAD/CHANGELOG.md#Prost-version-0132)
[Compare
Source](https://redirect.github.com/tokio-rs/prost/compare/v0.13.1...v0.13.2)
*PROST!* is a [Protocol
Buffers](https://developers.google.com/protocol-buffers/) implementation
for the [Rust Language](https://www.rust-lang.org/). `prost` generates
simple, idiomatic Rust code from `proto2` and `proto3` files.
#### Features
- prost-build: Add protoc executable path to Config
([#​1126](https://redirect.github.com/tokio-rs/prost/issues/1126))
- prost-build: Extract file descriptor loading from compile_protos()
([#​1067](https://redirect.github.com/tokio-rs/prost/issues/1067))
#### Bug Fixes
- prost-types: Fix date-time parsing
([#​1096](https://redirect.github.com/tokio-rs/prost/issues/1096))
- prost-types: '+' is not a numeric digit
([#​1104](https://redirect.github.com/tokio-rs/prost/issues/1104))
- prost-types: Converting DateTime to Timestamp is fallible
([#​1095](https://redirect.github.com/tokio-rs/prost/issues/1095))
- prost-types: Parse timestamp with long second fraction
([#​1106](https://redirect.github.com/tokio-rs/prost/issues/1106))
- prost-types: Format negative fractional duration
([#​1110](https://redirect.github.com/tokio-rs/prost/issues/1110))
- prost-types: Allow unknown local time offset
([#​1109](https://redirect.github.com/tokio-rs/prost/issues/1109))
#### Styling
- Remove use of legacy numeric constants
([#​1089](https://redirect.github.com/tokio-rs/prost/issues/1089))
- Move encoding functions into separate modules
([#​1111](https://redirect.github.com/tokio-rs/prost/issues/1111))
- Remove needless borrow
([#​1122](https://redirect.github.com/tokio-rs/prost/issues/1122))
#### Testing
- Add tests for public interface of DecodeError
([#​1120](https://redirect.github.com/tokio-rs/prost/issues/1120))
- Add `parse_date` fuzzing target
([#​1127](https://redirect.github.com/tokio-rs/prost/issues/1127))
- Fix build without std
([#​1134](https://redirect.github.com/tokio-rs/prost/issues/1134))
- Change some proptest to kani proofs
([#​1133](https://redirect.github.com/tokio-rs/prost/issues/1133))
- Add `parse_duration` fuzzing target
([#​1129](https://redirect.github.com/tokio-rs/prost/issues/1129))
- fuzz: Fix building of fuzzing targets
([#​1107](https://redirect.github.com/tokio-rs/prost/issues/1107))
- fuzz: Add fuzz targets to workspace
([#​1117](https://redirect.github.com/tokio-rs/prost/issues/1117))
#### Miscellaneous Tasks
- Move old protobuf benchmark into prost
([#​1100](https://redirect.github.com/tokio-rs/prost/issues/1100))
- Remove allow clippy::derive_partial_eq_without_eq
([#​1115](https://redirect.github.com/tokio-rs/prost/issues/1115))
- Run `cargo test` without `all-targets`
([#​1118](https://redirect.github.com/tokio-rs/prost/issues/1118))
- dependabot: Add github actions
([#​1121](https://redirect.github.com/tokio-rs/prost/issues/1121))
- Update to cargo clippy version 1.80
([#​1128](https://redirect.github.com/tokio-rs/prost/issues/1128))
#### Build
- Use `proc-macro` in Cargo.toml
([#​1102](https://redirect.github.com/tokio-rs/prost/issues/1102))
- Ignore missing features in `tests` crates
([#​1101](https://redirect.github.com/tokio-rs/prost/issues/1101))
- Use separated build directory for protobuf
([#​1103](https://redirect.github.com/tokio-rs/prost/issues/1103))
- protobuf: Don't install unused test proto
([#​1116](https://redirect.github.com/tokio-rs/prost/issues/1116))
- protobuf: Use crate `cmake`
([#​1137](https://redirect.github.com/tokio-rs/prost/issues/1137))
- deps: Update devcontainer to Debian Bookworm release
([#​1114](https://redirect.github.com/tokio-rs/prost/issues/1114))
- deps: Bump actions/upload-artifact from 3 to 4
([#​1123](https://redirect.github.com/tokio-rs/prost/issues/1123))
- deps: Bump baptiste0928/cargo-install from 2 to 3
([#​1124](https://redirect.github.com/tokio-rs/prost/issues/1124))
- deps: bump model-checking/kani-github-action from 0.32 to 1.1
([#​1125](https://redirect.github.com/tokio-rs/prost/issues/1125))
###
[`v0.13.1`](https://redirect.github.com/tokio-rs/prost/blob/HEAD/CHANGELOG.md#Prost-version-0131)
[Compare
Source](https://redirect.github.com/tokio-rs/prost/compare/v0.13.0...v0.13.1)
*PROST!* is a [Protocol
Buffers](https://developers.google.com/protocol-buffers/) implementation
for the [Rust Language](https://www.rust-lang.org/). `prost` generates
simple, idiomatic Rust code from `proto2` and `proto3` files.
#### Bug fixes
- Enum variant named Error causes ambiguous item
([#​1098](https://redirect.github.com/tokio-rs/prost/issues/1098))
###
[`v0.13.0`](https://redirect.github.com/tokio-rs/prost/blob/HEAD/CHANGELOG.md#PROST-version-0130)
[Compare
Source](https://redirect.github.com/tokio-rs/prost/compare/v0.12.6...v0.13.0)
**note**: this version was yanked in favor of 0.13.1
*PROST!* is a [Protocol
Buffers](https://developers.google.com/protocol-buffers/) implementation
for the [Rust Language](https://www.rust-lang.org/). `prost` generates
simple, idiomatic Rust code from `proto2` and `proto3` files.
This major update brings new features and fixes:
#### Breaking changes
- derive Copy trait for messages where possible
([#​950](https://redirect.github.com/tokio-rs/prost/issues/950))
`prost-build` will automatically derive `trait Copy` for some messages.
If you manually implement `Copy` you should remove your implementation.
- Change generated functions signatures to remove type parameters
([#​1045](https://redirect.github.com/tokio-rs/prost/issues/1045))
The function signature of `trait Message` is changed to use `impl Buf`
instead of a named generic type. If you implement `trait Message`, you
should change the function signature.
- Lightweight error value in TryFrom<i32> for enums
([#​1010](https://redirect.github.com/tokio-rs/prost/issues/1010))
When a `impl TryFrom<i32>` is generated by `prost` derive macros, it
will now return the error type `UnknownEnumValue` instead of
`DecodeError`. The new error can be used to retreive the integer value
that failed to convert.
#### Features
- fix: Only touch include file if contents is changed
([#​1058](https://redirect.github.com/tokio-rs/prost/issues/1058))
Most generated files are untouched when the contents doesn't change. Use
the same mechanism for include file as well.
#### Dependencies
- update env_logger requirement from 0.10 to 0.11
([#​1074](https://redirect.github.com/tokio-rs/prost/issues/1074))
- update criterion requirement from 0.4 to 0.5
([#​1071](https://redirect.github.com/tokio-rs/prost/issues/1071))
- Remove unused libz-sys
([#​1077](https://redirect.github.com/tokio-rs/prost/issues/1077))
- build(deps): update itertools requirement from >=0.10, <=0.12 to
>=0.10, <=0.13
([#​1070](https://redirect.github.com/tokio-rs/prost/issues/1070))
#### Documentation
- better checking of tag duplicates, avoid discarding invalid variant
errs
([#​951](https://redirect.github.com/tokio-rs/prost/issues/951))
- docs: Fix broken link warnings
([#​1056](https://redirect.github.com/tokio-rs/prost/issues/1056))
- Add missing LICENSE symlink
([#​1086](https://redirect.github.com/tokio-rs/prost/issues/1086))
#### Internal
- workspace package metadata
([#​1036](https://redirect.github.com/tokio-rs/prost/issues/1036))
- fix: Build error due to merge conflict
([#​1068](https://redirect.github.com/tokio-rs/prost/issues/1068))
- build: Fix release scripts
([#​1055](https://redirect.github.com/tokio-rs/prost/issues/1055))
- chore: Add ci to check MSRV
([#​1057](https://redirect.github.com/tokio-rs/prost/issues/1057))
- ci: Add all tests pass job
([#​1069](https://redirect.github.com/tokio-rs/prost/issues/1069))
- ci: Add Dependabot
([#​957](https://redirect.github.com/tokio-rs/prost/issues/957))
- ci: Ensure both README are the same and prost version is correct
([#​1078](https://redirect.github.com/tokio-rs/prost/issues/1078))
- ci: Set rust version of clippy job to a fixed version
([#​1090](https://redirect.github.com/tokio-rs/prost/issues/1090))
###
[`v0.12.6`](https://redirect.github.com/tokio-rs/prost/releases/tag/v0.12.6)
[Compare
Source](https://redirect.github.com/tokio-rs/prost/compare/v0.12.5...v0.12.6)
*PROST!* is a [Protocol
Buffers](https://developers.google.com/protocol-buffers/) implementation
for the [Rust Language](https://www.rust-lang.org/). `prost` generates
simple, idiomatic Rust code from `proto2` and `proto3` files.
This patch update fixes a regression:
- fix(prost-build): re-export `error_message_protoc_not_found`,
`protoc_from_env` & `protoc_include_from_env`
([#​1063](https://redirect.github.com/tokio-rs/prost/issues/1063))
###
[`v0.12.5`](https://redirect.github.com/tokio-rs/prost/releases/tag/v0.12.5)
[Compare
Source](https://redirect.github.com/tokio-rs/prost/compare/v0.12.4...v0.12.5)
*PROST!* is a [Protocol
Buffers](https://developers.google.com/protocol-buffers/) implementation
for the [Rust Language](https://www.rust-lang.org/). `prost` generates
simple, idiomatic Rust code from `proto2` and `proto3` files.
This patch update brings new fixes:
- fix: include_file should handle proto without package
([#​1002](https://redirect.github.com/tokio-rs/prost/issues/1002))
- Place Config::format behind the format feature flag
- Handle keyword `Self` after stripping enum type prefix
([#​998](https://redirect.github.com/tokio-rs/prost/issues/998))
#### Documentation
- fix(readme): fix the link and badge for CI
([#​1049](https://redirect.github.com/tokio-rs/prost/issues/1049))
#### Internal
- style(codegen): `Syntax` to a separate file
([#​1029](https://redirect.github.com/tokio-rs/prost/issues/1029))
- chore(codegen): extract c string escaping to a separate file
([#​1028](https://redirect.github.com/tokio-rs/prost/issues/1028))
- style(prost-build): `CodeGenerator::boxed` method
([#​1019](https://redirect.github.com/tokio-rs/prost/issues/1019))
- style(prost-build): Consolidate field data into struct
([#​1017](https://redirect.github.com/tokio-rs/prost/issues/1017))
- style(prost-build): `BytesType and MapType` into a `collections`
module.
([#​1030](https://redirect.github.com/tokio-rs/prost/issues/1030))
- style(prost-build): Split `Config` and `Module` into a separate module
and files
([#​1020](https://redirect.github.com/tokio-rs/prost/issues/1020))
- style(prost-build): prost_path helper
([#​1018](https://redirect.github.com/tokio-rs/prost/issues/1018))
- style: Fix toml indent
([#​1048](https://redirect.github.com/tokio-rs/prost/issues/1048))
- style: Fix clippy warnings and enable clippy in CI
([#​1008](https://redirect.github.com/tokio-rs/prost/issues/1008))
- build: Use git submodule to download protobuf sources
([#​1014](https://redirect.github.com/tokio-rs/prost/issues/1014))
- ci: Add TOML validation with `taplo`
([#​1034](https://redirect.github.com/tokio-rs/prost/issues/1034))
- tests: Create a separate tempdir for each test
([#​1044](https://redirect.github.com/tokio-rs/prost/issues/1044))
- tests: Remove GoogleMessage3 and GoogleMessage4 benchmarks
([#​1037](https://redirect.github.com/tokio-rs/prost/issues/1037))
- chore: Update internal crates to Rust edition 2021
([#​1039](https://redirect.github.com/tokio-rs/prost/issues/1039))
- chore: Update crate descriptions
([#​1038](https://redirect.github.com/tokio-rs/prost/issues/1038))
- chore: Fix clippy checks in CI
([#​1032](https://redirect.github.com/tokio-rs/prost/issues/1032))
- chore: Add Casper Meijn as author
([#​1025](https://redirect.github.com/tokio-rs/prost/issues/1025))
###
[`v0.12.4`](https://redirect.github.com/tokio-rs/prost/releases/tag/v0.12.4)
[Compare
Source](https://redirect.github.com/tokio-rs/prost/compare/v0.12.3...v0.12.4)
*PROST!* is a [Protocol
Buffers](https://developers.google.com/protocol-buffers/) implementation
for the [Rust Language](https://www.rust-lang.org/). `prost` generates
simple, idiomatic Rust code from `proto2` and `proto3` files.
This patch update brings new features and fixes:
- Bump MSRV to 1.70 (minimum supported Rust version)
- Rename cargo feature `prost-derive` to `derive`
([#​992](https://redirect.github.com/tokio-rs/prost/issues/992))
- Add [@​generated](https://redirect.github.com/generated) comment
on top of generated files
([#​935](https://redirect.github.com/tokio-rs/prost/issues/935))
- Optimize implementation of prost::Name when generated by prost-build
([#​956](https://redirect.github.com/tokio-rs/prost/issues/956))
#### Dependencies
- build(deps): Allow itertools 0.12
([#​948](https://redirect.github.com/tokio-rs/prost/issues/948))
- build(deps): Allow heck 0.5
([#​1012](https://redirect.github.com/tokio-rs/prost/issues/1012))
- build(deps): Allow multimap 0.10
([#​1013](https://redirect.github.com/tokio-rs/prost/issues/1013))
#### Documentation
- Improve protoc not found error message
([#​937](https://redirect.github.com/tokio-rs/prost/issues/937))
- build: Add development container config
([#​949](https://redirect.github.com/tokio-rs/prost/issues/949))
- docs: Fixed README typos
([#​952](https://redirect.github.com/tokio-rs/prost/issues/952) /
[#​967](https://redirect.github.com/tokio-rs/prost/issues/967) /
[#​970](https://redirect.github.com/tokio-rs/prost/issues/970))
#### Internal
- chore: Fix minimal versions
([#​920](https://redirect.github.com/tokio-rs/prost/issues/920))
- fix: fq_message_name should begin with one dot
([#​981](https://redirect.github.com/tokio-rs/prost/issues/981))
- improve encode_varint performance by bounding its loop
([#​940](https://redirect.github.com/tokio-rs/prost/issues/940))
- style: Remove duplicate function call
([#​989](https://redirect.github.com/tokio-rs/prost/issues/989))
- test: Improve test decode_varint_slow
([#​977](https://redirect.github.com/tokio-rs/prost/issues/977))
- chore: Add dep: prefix to feature dependencies
([#​919](https://redirect.github.com/tokio-rs/prost/issues/919))
- Minor clippy lint fixes.
([#​1006](https://redirect.github.com/tokio-rs/prost/issues/1006))
- chore: Use taiki-e/install-action to setup cargo-machete
([#​909](https://redirect.github.com/tokio-rs/prost/issues/909))
- chore: Remove which dependency.
([#​962](https://redirect.github.com/tokio-rs/prost/issues/962))
- chore: Update to actions/checkout@v4
([#​910](https://redirect.github.com/tokio-rs/prost/issues/910))
</details>
<details>
<summary>rust-random/rand (rand)</summary>
###
[`v0.9.0`](https://redirect.github.com/rust-random/rand/blob/HEAD/CHANGELOG.md#090---2025-01-27)
[Compare
Source](https://redirect.github.com/rust-random/rand/compare/0.8.5...0.9.0)
##### Security and unsafe
- Policy: "rand is not a crypto library"
([#​1514](https://redirect.github.com/rust-random/rand/issues/1514))
- Remove fork-protection from `ReseedingRng` and `ThreadRng`. Instead,
it is recommended to call `ThreadRng::reseed` on fork.
([#​1379](https://redirect.github.com/rust-random/rand/issues/1379))
- Use `zerocopy` to replace some `unsafe` code
([#​1349](https://redirect.github.com/rust-random/rand/issues/1349),
[#​1393](https://redirect.github.com/rust-random/rand/issues/1393),
[#​1446](https://redirect.github.com/rust-random/rand/issues/1446),
[#​1502](https://redirect.github.com/rust-random/rand/issues/1502))
##### Dependencies
- Bump the MSRV to 1.63.0
([#​1207](https://redirect.github.com/rust-random/rand/issues/1207),
[#​1246](https://redirect.github.com/rust-random/rand/issues/1246),
[#​1269](https://redirect.github.com/rust-random/rand/issues/1269),
[#​1341](https://redirect.github.com/rust-random/rand/issues/1341),
[#​1416](https://redirect.github.com/rust-random/rand/issues/1416),
[#​1536](https://redirect.github.com/rust-random/rand/issues/1536));
note that 1.60.0 may work for dependents when using
`--ignore-rust-version`
- Update to `rand_core` v0.9.0
([#​1558](https://redirect.github.com/rust-random/rand/issues/1558))
##### Features
- Support `std` feature without `getrandom` or `rand_chacha`
([#​1354](https://redirect.github.com/rust-random/rand/issues/1354))
- Enable feature `small_rng` by default
([#​1455](https://redirect.github.com/rust-random/rand/issues/1455))
- Remove implicit feature `rand_chacha`; use `std_rng` instead.
([#​1473](https://redirect.github.com/rust-random/rand/issues/1473))
- Rename feature `serde1` to `serde`
([#​1477](https://redirect.github.com/rust-random/rand/issues/1477))
- Rename feature `getrandom` to `os_rng`
([#​1537](https://redirect.github.com/rust-random/rand/issues/1537))
- Add feature `thread_rng`
([#​1547](https://redirect.github.com/rust-random/rand/issues/1547))
##### API changes: rand_core traits
- Add fn `RngCore::read_adapter` implementing `std::io::Read`
([#​1267](https://redirect.github.com/rust-random/rand/issues/1267))
- Add trait `CryptoBlockRng: BlockRngCore`; make `trait CryptoRng:
RngCore`
([#​1273](https://redirect.github.com/rust-random/rand/issues/1273))
- Add traits `TryRngCore`, `TryCryptoRng`
([#​1424](https://redirect.github.com/rust-random/rand/issues/1424),
[#​1499](https://redirect.github.com/rust-random/rand/issues/1499))
- Rename `fn SeedableRng::from_rng` -> `try_from_rng` and add infallible
variant `fn from_rng`
([#​1424](https://redirect.github.com/rust-random/rand/issues/1424))
- Rename `fn SeedableRng::from_entropy` -> `from_os_rng` and add
fallible variant `fn try_from_os_rng`
([#​1424](https://redirect.github.com/rust-random/rand/issues/1424))
- Add bounds `Clone` and `AsRef` to associated type `SeedableRng::Seed`
([#​1491](https://redirect.github.com/rust-random/rand/issues/1491))
##### API changes: Rng trait and top-level fns
- Rename fn `rand::thread_rng()` to `rand::rng()` and remove from the
prelude
([#​1506](https://redirect.github.com/rust-random/rand/issues/1506))
- Remove fn `rand::random()` from the prelude
([#​1506](https://redirect.github.com/rust-random/rand/issues/1506))
- Add top-level fns `random_iter`, `random_range`, `random_bool`,
`random_ratio`, `fill`
([#​1488](https://redirect.github.com/rust-random/rand/issues/1488))
- Re-introduce fn `Rng::gen_iter` as `random_iter`
([#​1305](https://redirect.github.com/rust-random/rand/issues/1305),
[#​1500](https://redirect.github.com/rust-random/rand/issues/1500))
- Rename fn `Rng::gen` to `random` to avoid conflict with the new `gen`
keyword in Rust 2024
([#​1438](https://redirect.github.com/rust-random/rand/issues/1438))
- Rename fns `Rng::gen_range` to `random_range`, `gen_bool` to
`random_bool`, `gen_ratio` to `random_ratio`
([#​1505](https://redirect.github.com/rust-random/rand/issues/1505))
- Annotate panicking methods with `#[track_caller]`
([#​1442](https://redirect.github.com/rust-random/rand/issues/1442),
[#​1447](https://redirect.github.com/rust-random/rand/issues/1447))
##### API changes: RNGs
- Fix `<SmallRng as SeedableRng>::Seed` size to 256 bits
([#​1455](https://redirect.github.com/rust-random/rand/issues/1455))
- Remove first parameter (`rng`) of `ReseedingRng::new`
([#​1533](https://redirect.github.com/rust-random/rand/issues/1533))
##### API changes: Sequences
- Split trait `SliceRandom` into `IndexedRandom`, `IndexedMutRandom`,
`SliceRandom`
([#​1382](https://redirect.github.com/rust-random/rand/issues/1382))
- Add `IndexedRandom::choose_multiple_array`, `index::sample_array`
([#​1453](https://redirect.github.com/rust-random/rand/issues/1453),
[#​1469](https://redirect.github.com/rust-random/rand/issues/1469))
##### API changes: Distributions: renames
- Rename module `rand::distributions` to `rand::distr`
([#​1470](https://redirect.github.com/rust-random/rand/issues/1470))
- Rename distribution `Standard` to `StandardUniform`
([#​1526](https://redirect.github.com/rust-random/rand/issues/1526))
- Move `distr::Slice` -> `distr::slice::Choose`, `distr::EmptySlice` ->
`distr::slice::Empty`
([#​1548](https://redirect.github.com/rust-random/rand/issues/1548))
- Rename trait `distr::DistString` -> `distr::SampleString`
([#​1548](https://redirect.github.com/rust-random/rand/issues/1548))
- Rename `distr::DistIter` -> `distr::Iter`, `distr::DistMap` ->
`distr::Map`
([#​1548](https://redirect.github.com/rust-random/rand/issues/1548))
##### API changes: Distributions
- Relax `Sized` bound on `Distribution<T> for &D`
([#​1278](https://redirect.github.com/rust-random/rand/issues/1278))
- Remove impl of `Distribution<Option<T>>` for `StandardUniform`
([#​1526](https://redirect.github.com/rust-random/rand/issues/1526))
- Let distribution `StandardUniform` support all `NonZero*` types
([#​1332](https://redirect.github.com/rust-random/rand/issues/1332))
- Fns `{Uniform, UniformSampler}::{new, new_inclusive}` return a
`Result` (instead of potentially panicking)
([#​1229](https://redirect.github.com/rust-random/rand/issues/1229))
- Distribution `Uniform` implements `TryFrom` instead of `From` for
ranges
([#​1229](https://redirect.github.com/rust-random/rand/issues/1229))
- Add `UniformUsize`
([#​1487](https://redirect.github.com/rust-random/rand/issues/1487))
- Remove support for generating `isize` and `usize` values with
`StandardUniform`, `Uniform` (except via `UniformUsize`) and `Fill` and
usage as a `WeightedAliasIndex` weight
([#​1487](https://redirect.github.com/rust-random/rand/issues/1487))
- Add impl `DistString` for distributions `Slice<char>` and
`Uniform<char>`
([#​1315](https://redirect.github.com/rust-random/rand/issues/1315))
- Add fn `Slice::num_choices`
([#​1402](https://redirect.github.com/rust-random/rand/issues/1402))
- Add fn `p()` for distribution `Bernoulli` to access probability
([#​1481](https://redirect.github.com/rust-random/rand/issues/1481))
##### API changes: Weighted distributions
- Add `pub` module `rand::distr::weighted`, moving `WeightedIndex` there
([#​1548](https://redirect.github.com/rust-random/rand/issues/1548))
- Add trait `weighted::Weight`, allowing `WeightedIndex` to trap
overflow
([#​1353](https://redirect.github.com/rust-random/rand/issues/1353))
- Add fns `weight, weights, total_weight` to distribution
`WeightedIndex`
([#​1420](https://redirect.github.com/rust-random/rand/issues/1420))
- Rename enum `WeightedError` to `weighted::Error`, revising variants
([#​1382](https://redirect.github.com/rust-random/rand/issues/1382))
and mark as `#[non_exhaustive]`
([#​1480](https://redirect.github.com/rust-random/rand/issues/1480))
##### API changes: SIMD
- Switch to `std::simd`, expand SIMD & docs
([#​1239](https://redirect.github.com/rust-random/rand/issues/1239))
##### Reproducibility-breaking changes
- Make `ReseedingRng::reseed` discard remaining data from the last block
generated
([#​1379](https://redirect.github.com/rust-random/rand/issues/1379))
- Change fn `SmallRng::seed_from_u64` implementation
([#​1203](https://redirect.github.com/rust-random/rand/issues/1203))
- Allow `UniformFloat::new` samples and `UniformFloat::sample_single` to
yield `high`
([#​1462](https://redirect.github.com/rust-random/rand/issues/1462))
- Fix portability of distribution `Slice`
([#​1469](https://redirect.github.com/rust-random/rand/issues/1469))
- Make `Uniform` for `usize` portable via `UniformUsize`
([#​1487](https://redirect.github.com/rust-random/rand/issues/1487))
- Fix `IndexdRandom::choose_multiple_weighted` for very small seeds and
optimize for large input length / low memory
([#​1530](https://redirect.github.com/rust-random/rand/issues/1530))
##### Reproducibility-breaking optimisations
- Optimize fn `sample_floyd`, affecting output of
`rand::seq::index::sample` and `rand::seq::SliceRandom::choose_multiple`
([#​1277](https://redirect.github.com/rust-random/rand/issues/1277))
- New, faster algorithms for `IteratorRandom::choose` and
`choose_stable`
([#​1268](https://redirect.github.com/rust-random/rand/issues/1268))
- New, faster algorithms for `SliceRandom::shuffle` and
`partial_shuffle`
([#​1272](https://redirect.github.com/rust-random/rand/issues/1272))
- Optimize distribution `Uniform`: use Canon's method (single sampling)
/ Lemire's method (distribution sampling) for faster sampling (breaks
value stability;
[#​1287](https://redirect.github.com/rust-random/rand/issues/1287))
- Optimize fn `sample_single_inclusive` for floats (+~20% perf)
([#​1289](https://redirect.github.com/rust-random/rand/issues/1289))
##### Other optimisations
- Improve `SmallRng` initialization performance
([#​1482](https://redirect.github.com/rust-random/rand/issues/1482))
- Optimise SIMD widening multiply
([#​1247](https://redirect.github.com/rust-random/rand/issues/1247))
##### Other
- Add `Cargo.lock.msrv` file
([#​1275](https://redirect.github.com/rust-random/rand/issues/1275))
- Reformat with `rustfmt` and enforce
([#​1448](https://redirect.github.com/rust-random/rand/issues/1448))
- Apply Clippy suggestions and enforce
([#​1448](https://redirect.github.com/rust-random/rand/issues/1448),
[#​1474](https://redirect.github.com/rust-random/rand/issues/1474))
- Move all benchmarks to new `benches` crate
([#​1329](https://redirect.github.com/rust-random/rand/issues/1329),
[#​1439](https://redirect.github.com/rust-random/rand/issues/1439))
and migrate to Criterion
([#​1490](https://redirect.github.com/rust-random/rand/issues/1490))
##### Documentation
- Improve `ThreadRng` related docs
([#​1257](https://redirect.github.com/rust-random/rand/issues/1257))
- Docs: enable experimental `--generate-link-to-definition` feature
([#​1327](https://redirect.github.com/rust-random/rand/issues/1327))
- Better doc of crate features, use `doc_auto_cfg`
([#​1411](https://redirect.github.com/rust-random/rand/issues/1411),
[#​1450](https://redirect.github.com/rust-random/rand/issues/1450))
</details>
---
### 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 is behind base branch, or you tick the
rebase/retry checkbox.
👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config
help](https://redirect.github.com/renovatebot/renovate/discussions) if
that's undesired.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/get-eventually/eventually-rs).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMDcuMSIsInVwZGF0ZWRJblZlciI6IjM5LjIwNy4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>1 parent 229d1c2 commit f9661f6
2 files changed
+2
-2
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
35 | 35 | | |
36 | 36 | | |
37 | 37 | | |
38 | | - | |
| 38 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
28 | 28 | | |
29 | 29 | | |
30 | 30 | | |
31 | | - | |
| 31 | + | |
32 | 32 | | |
33 | 33 | | |
34 | 34 | | |
| |||
0 commit comments