Skip to content

Commit 69bfe59

Browse files
authored
Merge pull request #321 from pitdicker/changelog_0.5
Update changelog
2 parents b2f19d3 + 6127739 commit 69bfe59

File tree

2 files changed

+124
-3
lines changed

2 files changed

+124
-3
lines changed

CHANGELOG.md

Lines changed: 101 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,100 @@ All notable changes to this project will be documented in this file.
44
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
55
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
66

7-
## [0.4.2] - 2018-01-05
7+
8+
## [0.5.0] - Unreleased
9+
10+
### Crate features and organisation
11+
- Minimum Rust version update: 1.22.0. (#239)
12+
- Create a seperate `rand-core` crate. (#288)
13+
- Deprecate `rand_derive`. (#256)
14+
- Add `log` feature. Logging is now available in `JitterRng`, `OsRng`, `EntropyRng` and `ReseedingRng`. (#246)
15+
- Add `serde-1` feature for some PRNGs. (#189)
16+
17+
### `Rng` trait
18+
- Split `Rng` in `RngCore` and `Rng` extension trait.
19+
`next_u32`, `next_u64` and `fill_bytes` are now part of `RngCore`. (#265)
20+
- Add `Rng::sample`. (#256)
21+
- Deprecate `Rng::gen_weighted_bool`. (#308)
22+
- Add `Rng::gen_bool`. (#308)
23+
- Remove `Rng::next_f32` and `Rng::next_f64`. (#273)
24+
- Add optimized `Rng::fill` and `Rng::try_fill` methods. (#247)
25+
- Deprecate `Rng::gen_iter`. (#286)
26+
- Deprecate `Rng::gen_ascii_chars`. (#279)
27+
28+
### `rand-core` crate
29+
(changes included here because they greatly influence the Rand crate)
30+
- `RngCore` and `SeedableRng` are now part of `rand-core`. (#288)
31+
- Add modules to help implementing RNGs `impl` and `le`. (#209, #228)
32+
- Add `Error` and `ErrorKind`. (#225)
33+
- Add `CryptoRng` marker trait. (#273)
34+
- Add `BlockRngCore` trait. (#281)
35+
- Add `BlockRng` wrapper to help implementations. (#281)
36+
- Revise the `SeedableRng` trait. (#233)
37+
- Remove default implementations for `RngCore::next_u64` and `RngCore::fill_bytes`. (#288)
38+
- Add `RngCore::try_fill_bytes`. (#225)
39+
40+
### Other traits and types
41+
- Add `NewRng` trait. (#233)
42+
- Add `SmallRng` wrapper. (#296)
43+
- Rewrite `ReseedingRng` to only work with `BlockRngCore` (substantial performance improvement). (#281)
44+
- Deprecate `weak_rng`. Use `SmallRng` instead. (#296)
45+
- Deprecate `random`. (#296)
46+
- Deprecate `AsciiGenerator`. (#279)
47+
48+
### Random number generators
49+
- Switch `StdRng` and `thread_rng` to HC-128. (#277)
50+
- Change `thread_rng` reseeding threshold to 32 MiB. (#277)
51+
- PRNGs no longer implement `Copy`. (#209)
52+
- `Debug` implementations no longer show internals. (#209)
53+
- Implement serialisation for `XorShiftRng`, `IsaacRng` and `Isaac64Rng` under the `serde-1` feature. (#189)
54+
- Implement `BlockRngCore` for `ChaChaCore` and `Hc128Core`. (#281)
55+
- All PRNGs are now portable across big- and little-endian architectures. (#209)
56+
- `Isaac64Rng::next_u32` no longer throws away half the results. (#209)
57+
- Add `IsaacRng::new_from_u64` and `Isaac64Rng::new_from_u64`. (#209)
58+
- Remove `IsaacWordRng` wrapper. (#277)
59+
- Add the HC-128 CSPRNG `Hc128Rng`. (#210)
60+
- Add `ChaChaRng::set_rounds` method. (#243)
61+
- Changes to `JitterRng` to get its size down from 2112 to 24 bytes. (#251)
62+
- Various performance improvements to all PRNGs.
63+
64+
### Platform support and `OsRng`
65+
- Add support for CloudABI. (#224)
66+
- Remove support for NaCl. (#225)
67+
- Replace stubs with proper WASM support in `OsRng`. (#272)
68+
- On systems that do not have a syscall interface, only keep a single file descriptor open for `OsRng`. (#239)
69+
- Better error handling and reporting in `OsRng` (using new error type). (#225)
70+
- `OsRng` now uses non-blocking when available. (#225)
71+
- Add `EntropyRng`, which provides `OsRng`, but has `JitterRng` as a fallback. (#235)
72+
73+
### Distributions
74+
- New `Distribution` trait. (#256)
75+
- Deprecate `Rand`, `Sample` and `IndependentSample` traits. (#256)
76+
- Add a `Uniform` distribution (replaces most `Rand` implementations). (#256)
77+
- Add `Binomial` and `Poisson` distributions. (#96)
78+
- Add `Alphanumeric` distribution. (#279)
79+
- Remove `Open01` and `Closed01` distributions, use `Uniform` instead (open distribution). (#274)
80+
- Rework `Range` type, making it possible to implement it for user types. (#274)
81+
- Add `Range::new_inclusive` for inclusive ranges. (#274)
82+
- Add `Range::sample_single` to allow for optimized implementations. (#274)
83+
- Use widening multiply method for much faster integer range reduction. (#274)
84+
- `Uniform` distributions for `bool` uses `Range`. (#274)
85+
- `Uniform` distributions for `bool` uses sign test. (#274)
86+
- Add `HighPrecision01` distribution. (#320)
87+
88+
89+
## [0.4.2] - 2018-01-06
890
### Changed
9-
- Use winapi on Windows
91+
- Use `winapi` on Windows
1092
- Update for Fuchsia OS
1193
- Remove dev-dependency on `log`
1294

95+
1396
## [0.4.1] - 2017-12-17
1497
### Added
1598
- `no_std` support
1699

100+
17101
## [0.4.0-pre.0] - 2017-12-11
18102
### Added
19103
- `JitterRng` added as a high-quality alternative entropy source using the
@@ -29,6 +113,20 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
29113
### Deprecated
30114
- `sample` function deprecated (replaced by `sample_iter`)
31115

116+
117+
## [0.3.20] - 2018-01-06
118+
### Changed
119+
- Remove dev-dependency on `log`
120+
- Update `fuchsia-zircon` dependency to 0.3.2
121+
122+
123+
## [0.3.19] - 2017-12-27
124+
### Changed
125+
- Require `log <= 0.3.8` for dev builds
126+
- Update `fuchsia-zircon` dependency to 0.3
127+
- Fix broken links in docs (to unblock compiler docs testing CI)
128+
129+
32130
## [0.3.18] - 2017-11-06
33131
### Changed
34132
- `thread_rng` is seeded from the system time if `OsRng` fails
@@ -223,7 +321,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
223321
- `Rng::gen_ascii_chars()` which will return an infinite stream of random ascii characters
224322

225323
### Changed
226-
- Now only depends on libcore! 2adf5363f88ffe06f6d2ea5c338d1b186d47f4a1
324+
- Now only depends on libcore!
227325
- Remove `Rng.choose()`, rename `Rng.choose_option()` to `.choose()`
228326
- Rename OSRng to OsRng
229327
- The WeightedChoice structure is no longer built with a `Vec<Weighted<T>>`,

rand-core/CHANGELOG.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# Changelog
2+
All notable changes to this project will be documented in this file.
3+
4+
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
5+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6+
7+
8+
## [0.1.0] - Unreleased
9+
10+
### `rand-core` crate
11+
(Split out of the Rand crate, changes here are relative to rand 0.4.2)
12+
- `RngCore` and `SeedableRng` are now part of `rand-core`. (#288)
13+
- Add modules to help implementing RNGs `impl` and `le`. (#209, #228)
14+
- Add `Error` and `ErrorKind`. (#225)
15+
- Add `CryptoRng` marker trait. (#273)
16+
- Add `BlockRngCore` trait. (#281)
17+
- Add `BlockRng` wrapper to help implemtations. (#281)
18+
- Revise the `SeedableRng` trait. (#233)
19+
- Remove default implementations for `RngCore::next_u64` and `RngCore::fill_bytes`. (#288)
20+
- Add `RngCore::try_fill_bytes`. (#225)
21+
22+
## [0.0.1] - 2017-09-14
23+
Experimental version as part of the rand crate refactor.

0 commit comments

Comments
 (0)