@@ -4,29 +4,32 @@ All notable changes to this project will be documented in this file.
4
4
The format is based on [ Keep a Changelog] ( http://keepachangelog.com/en/1.0.0/ )
5
5
and this project adheres to [ Semantic Versioning] ( https://semver.org/spec/v2.0.0.html ) .
6
6
7
- ## [ 0.5.0-beta.3] - 2025-01-03
8
- - Bump ` rand ` version (#1547 )
7
+ ## [ 0.5.0] - 2025-01-27
8
+
9
+ ### Dependencies and features
10
+ - Bump the MSRV to 1.61.0 (#1207 , #1246 , #1269 , #1341 , #1416 ); note that 1.60.0 may work for dependents when using ` --ignore-rust-version `
11
+ - Update to ` rand ` v0.9.0 (#1558 )
12
+ - Rename feature ` serde1 ` to ` serde ` (#1477 )
13
+
14
+ ### API changes
15
+ - Make distributions comparable with ` PartialEq ` (#1218 )
16
+ - ` Dirichlet ` now uses ` const ` generics, which means that its size is required at compile time (#1292 )
17
+ - The ` Dirichlet::new_with_size ` constructor was removed (#1292 )
18
+ - Add ` WeightedIndexTree ` (#1372 , #1444 )
19
+ - Add ` PertBuilder ` to allow specification of ` mean ` or ` mode ` (#1452 )
20
+ - Rename ` Zeta ` 's parameter ` a ` to ` s ` (#1466 )
21
+ - Mark ` WeightError ` , ` PoissonError ` , ` BinomialError ` as ` #[non_exhaustive] ` (#1480 )
22
+ - Remove support for usage of ` isize ` as a ` WeightedAliasIndex ` weight (#1487 )
23
+ - Change parameter type of ` Zipf::new ` : ` n ` is now floating-point (#1518 )
24
+
25
+ ### API changes: renames
9
26
- Move ` Slice ` -> ` slice::Choose ` , ` EmptySlice ` -> ` slice::Empty ` (#1548 )
10
27
- Rename trait ` DistString ` -> ` SampleString ` (#1548 )
11
28
- Rename ` DistIter ` -> ` Iter ` , ` DistMap ` -> ` Map ` (#1548 )
12
29
- Move ` {Weight, WeightError, WeightedIndex} ` -> ` weighted::{Weight, Error, WeightedIndex} ` (#1548 )
13
30
- Move ` weighted_alias::{AliasableWeight, WeightedAliasIndex} ` -> ` weighted::{..} ` (#1548 )
14
31
- Move ` weighted_tree::WeightedTreeIndex ` -> ` weighted::WeightedTreeIndex ` (#1548 )
15
32
16
- ## [ 0.5.0-beta.2] - 2024-11-30
17
- - Bump ` rand ` version
18
-
19
- ## [ 0.5.0-beta.1] - 2024-11-27
20
- - Fix docs.rs build (#1539 )
21
-
22
- ## [ 0.5.0-beta.0] - 2024-11-25
23
- This is a pre-release. To depend on this version, use ` rand = "=0.9.0-beta.0" ` to prevent automatic updates (which can be expected to include breaking changes).
24
-
25
- ### Compilation options
26
- - Target ` rand ` version ` 0.9.0-beta.0 `
27
- - Bump the MSRV to 1.61.0 (#1207 , #1246 , #1269 , #1341 , #1416 ); note that 1.60.0 may work for dependents when using ` --ignore-rust-version `
28
- - The ` serde1 ` feature has been renamed ` serde ` (#1477 )
29
-
30
33
### Testing
31
34
- Add Kolmogorov Smirnov tests for distributions (#1494 , #1504 , #1525 , #1530 )
32
35
@@ -35,31 +38,16 @@ This is a pre-release. To depend on this version, use `rand = "=0.9.0-beta.0"` t
35
38
- Fix ` Poisson ` distribution instantiation so it return an error if lambda is infinite (#1291 )
36
39
- Fix Dirichlet sample for small alpha values to avoid NaN samples (#1209 )
37
40
- Fix infinite loop in ` Binomial ` distribution (#1325 )
41
+ - Fix ` Pert ` distribution where ` mode ` is close to ` (min + max) / 2 ` (#1452 )
38
42
- Fix panic in Binomial (#1484 )
39
43
- Limit the maximal acceptable lambda for ` Poisson ` to solve (#1312 ) (#1498 )
40
44
- Fix bug in ` Hypergeometric ` , this is a Value-breaking change (#1510 )
41
45
42
- ### Additions
43
- - Make distributions comparable with ` PartialEq ` (#1218 )
44
- - Add ` WeightedIndexTree ` (#1372 , #1444 )
45
-
46
- ### Changes
47
46
### Other changes
48
47
- Remove unused fields from ` Gamma ` , ` NormalInverseGaussian ` and ` Zipf ` distributions (#1184 )
49
48
This breaks serialization compatibility with older versions.
50
- - ` Dirichlet ` now uses ` const ` generics, which means that its size is required at compile time (#1292 )
51
- - The ` Dirichlet::new_with_size ` constructor was removed (#1292 )
52
- - Add ` PertBuilder ` , fix case where mode ≅ mean (#1452 )
53
- - Rename ` Zeta ` 's parameter ` a ` to ` s ` (#1466 )
54
- - Mark ` WeightError ` , ` PoissonError ` , ` BinomialError ` as ` #[non_exhaustive] ` (#1480 )
55
- - Remove support for usage of ` isize ` as a ` WeightedAliasIndex ` weight (#1487 )
56
- - Change parameter type of ` Zipf::new ` : ` n ` is now floating-point (#1518 )
57
-
58
- ### Optimizations
59
- - Move some of the computations in Binomial from ` sample ` to ` new ` (#1484 )
60
-
61
- ### Documentation
62
49
- Add plots for ` rand_distr ` distributions to documentation (#1434 )
50
+ - Move some of the computations in Binomial from ` sample ` to ` new ` (#1484 )
63
51
64
52
## [ 0.4.3] - 2021-12-30
65
53
- Fix ` no_std ` build (#1208 )
0 commit comments