You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Fix `Geometric::new` for small `p > 0` where `1 - p` rounds to 1 (#36)
21
-
- Use `direct-minimal-versions` (#38)
22
-
- Fix panic in `FisherF::new` on almost zero parameters (#39)
23
-
- Fix panic in `NormalInverseGaussian::new` with very large `alpha`; this is a Value-breaking change (#40)
24
-
- Fix hang and debug assertion in `Zipf::new` on invalid parameters (#41)
25
-
- Fix panic in `Binomial::sample` with `n ≥ 2^63`; this is a Value-breaking change (#43)
26
-
- Error instead of producing `-inf` output for `Exp` when `lambda` is `-0.0` (#44)
20
+
- Fix `Geometric::new` for small `p > 0` where `1 - p` rounds to 1 ([#36])
21
+
- Use `direct-minimal-versions` ([#38])
22
+
- Fix panic in `FisherF::new` on almost zero parameters ([#39])
23
+
- Fix panic in `NormalInverseGaussian::new` with very large `alpha`; this is a Value-breaking change ([#40])
24
+
- Fix hang and debug assertion in `Zipf::new` on invalid parameters ([#41])
25
+
- Fix panic in `Binomial::sample` with `n ≥ 2^63`; this is a Value-breaking change ([#43])
26
+
- Error instead of producing `-inf` output for `Exp` when `lambda` is `-0.0` ([#44])
27
27
28
28
## [0.5.2]
29
29
@@ -44,92 +44,91 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
44
44
## [0.5.0] - 2025-01-27
45
45
46
46
### Dependencies and features
47
-
- 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`
48
-
- Update to `rand` v0.9.0 (#1558)
49
-
- Rename feature `serde1` to `serde` (#1477)
47
+
- Bump the MSRV to 1.61.0 ([rand#1207], [rand#1246], [rand#1269], [rand#1341], [rand#1416]); note that 1.60.0 may work for dependents when using `--ignore-rust-version`
48
+
- Update to `rand` v0.9.0 ([rand#1558])
49
+
- Rename feature `serde1` to `serde` ([rand#1477])
50
50
51
51
### API changes
52
-
- Make distributions comparable with `PartialEq` (#1218)
53
-
-`Dirichlet` now uses `const` generics, which means that its size is required at compile time (#1292)
54
-
- The `Dirichlet::new_with_size` constructor was removed (#1292)
55
-
- Add `WeightedIndexTree` (#1372, #1444)
56
-
- Add `PertBuilder` to allow specification of `mean` or `mode` (#1452)
57
-
- Rename `Zeta`'s parameter `a` to `s` (#1466)
58
-
- Mark `WeightError`, `PoissonError`, `BinomialError` as `#[non_exhaustive]` (#1480)
59
-
- Remove support for usage of `isize` as a `WeightedAliasIndex` weight (#1487)
60
-
- Change parameter type of `Zipf::new`: `n` is now floating-point (#1518)
52
+
- Make distributions comparable with `PartialEq` ([rand#1218])
53
+
-`Dirichlet` now uses `const` generics, which means that its size is required at compile time ([rand#1292])
54
+
- The `Dirichlet::new_with_size` constructor was removed ([rand#1292])
- Fix Knuth's method so `Poisson` doesn't return -1.0 for small lambda (#1284)
75
-
- Fix `Poisson` distribution instantiation so it return an error if lambda is infinite (#1291)
76
-
- Fix Dirichlet sample for small alpha values to avoid NaN samples (#1209)
77
-
- Fix infinite loop in `Binomial` distribution (#1325)
78
-
- Fix `Pert` distribution where `mode` is close to `(min + max) / 2` (#1452)
79
-
- Fix panic in Binomial (#1484)
80
-
- Limit the maximal acceptable lambda for `Poisson` to solve (#1312) (#1498)
81
-
- Fix bug in `Hypergeometric`, this is a Value-breaking change (#1510)
74
+
- Fix Knuth's method so `Poisson` doesn't return -1.0 for small lambda ([rand#1284])
75
+
- Fix `Poisson` distribution instantiation so it return an error if lambda is infinite ([rand#1291])
76
+
- Fix Dirichlet sample for small alpha values to avoid NaN samples ([rand#1209])
77
+
- Fix infinite loop in `Binomial` distribution ([rand#1325])
78
+
- Fix `Pert` distribution where `mode` is close to `(min + max) / 2` ([rand#1452])
79
+
- Fix panic in Binomial ([rand#1484])
80
+
- Limit the maximal acceptable lambda for `Poisson` to solve ([rand#1312]) ([rand#1498])
81
+
- Fix bug in `Hypergeometric`, this is a Value-breaking change ([rand#1510])
82
82
83
83
### Other changes
84
-
- Remove unused fields from `Gamma`, `NormalInverseGaussian` and `Zipf` distributions (#1184)
84
+
- Remove unused fields from `Gamma`, `NormalInverseGaussian` and `Zipf` distributions ([rand#1184])
85
85
This breaks serialization compatibility with older versions.
86
-
- Add plots for `rand_distr` distributions to documentation (#1434)
87
-
- Move some of the computations in Binomial from `sample` to `new` (#1484)
88
-
- Reimplement `Poisson`'s rejection method to improve performance and correct sampling inaccuracies for large lambda values, this is a Value-breaking change (#1560)
86
+
- Add plots for `rand_distr` distributions to documentation ([rand#1434])
87
+
- Move some of the computations in Binomial from `sample` to `new` ([rand#1484])
88
+
- Reimplement `Poisson`'s rejection method to improve performance and correct sampling inaccuracies for large lambda values, this is a Value-breaking change ([rand#1560])
89
89
90
90
## [0.4.3] - 2021-12-30
91
-
- Fix `no_std` build (#1208)
91
+
- Fix `no_std` build ([rand#1208])
92
92
93
93
## [0.4.2] - 2021-09-18
94
-
- New `Zeta` and `Zipf` distributions (#1136)
95
-
- New `SkewNormal` distribution (#1149)
96
-
- New `Gumbel` and `Frechet` distributions (#1168, #1171)
94
+
- New `Zeta` and `Zipf` distributions ([rand#1136])
95
+
- New `SkewNormal` distribution ([rand#1149])
96
+
- New `Gumbel` and `Frechet` distributions ([rand#1168], [rand#1171])
97
97
98
98
## [0.4.1] - 2021-06-15
99
-
- Empirically test PDF of normal distribution (#1121)
100
-
- Correctly document `no_std` support (#1100)
101
-
- Add `std_math` feature to prefer `std` over `libm` for floating point math (#1100)
102
-
- Add mean and std_dev accessors to Normal (#1114)
103
-
- Make sure all distributions and their error types implement `Error`, `Display`, `Clone`,
104
-
`Copy`, `PartialEq` and `Eq` as appropriate (#1126)
105
-
- Port benchmarks to use Criterion crate (#1116)
106
-
- Support serde for distributions (#1141)
99
+
- Empirically test PDF of normal distribution ([rand#1121])
100
+
- Correctly document `no_std` support ([rand#1100])
101
+
- Add `std_math` feature to prefer `std` over `libm` for floating point math ([rand#1100])
102
+
- Add mean and std_dev accessors to Normal ([rand#1114])
103
+
- Make sure all distributions and their error types implement `Error`, `Display`, `Clone`, `Copy`, `PartialEq` and `Eq` as appropriate ([rand#1126])
104
+
- Port benchmarks to use Criterion crate ([rand#1116])
105
+
- Support serde for distributions ([rand#1141])
107
106
108
107
## [0.4.0] - 2020-12-18
109
108
- Bump `rand` to v0.8.0
110
-
- New `Geometric`, `StandardGeometric` and `Hypergeometric` distributions (#1062)
111
-
- New `Beta` sampling algorithm for improved performance and accuracy (#1000)
112
-
-`Normal` and `LogNormal` now support `from_mean_cv` and `from_zscore` (#1044)
113
-
- Variants of `NormalError` changed (#1044)
109
+
- New `Geometric`, `StandardGeometric` and `Hypergeometric` distributions ([rand#1062])
110
+
- New `Beta` sampling algorithm for improved performance and accuracy ([rand#1000])
111
+
-`Normal` and `LogNormal` now support `from_mean_cv` and `from_zscore` ([rand#1044])
112
+
- Variants of `NormalError` changed ([rand#1044])
114
113
115
114
## [0.3.0] - 2020-08-25
116
-
- Move alias method for `WeightedIndex` from `rand` (#945)
117
-
- Rename `WeightedIndex` to `WeightedAliasIndex` (#1008)
118
-
- Replace custom `Float` trait with `num-traits::Float` (#987)
119
-
- Enable `no_std` support via `num-traits` math functions (#987)
120
-
- Remove `Distribution<u64>` impl for `Poisson` (#987)
121
-
- Tweak `Dirichlet` and `alias_method` to use boxed slice instead of `Vec` (#987)
122
-
- Use whitelist for package contents, reducing size by 5kb (#983)
123
-
- Add case `lambda = 0` in the parametrization of `Exp` (#972)
124
-
- Implement inverse Gaussian distribution (#954)
125
-
- Reformatting and use of `rustfmt::skip` (#926)
126
-
- All error types now implement `std::error::Error` (#919)
0 commit comments