-
Notifications
You must be signed in to change notification settings - Fork 0
/
CHANGES
70 lines (55 loc) · 3.92 KB
/
CHANGES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
[0.6.0]
- [LARGE, SEED BREAKING] Calling nextInt or nextSignedInt on any EnhancedRandom with two parameters now uses a different, more efficient algorithm. This also changes other bounded int generation, including in shuffling methods.
- [SEED BREAKING] FlowRandom is seeded differently now, in a way that's more consistent with other generators.
- 32-bit-native generators that were super-sourced on GWT had some issues; these are fixed. Affects Bear32Random, ChopRandom, Jsf32Random, Respite32Random, and Xoshiro128PlusRandom.
- Fix ReverseWrapper.shuffle() when it is given one parameter (an array or List).
[0.5.0]
- [SEED BREAKING, POTENTIALLY] When the EnhancedRandom object isn't specified, Distribution types, DistributedRandom, and InterpolatedRandom now default to AceRandom instead of WhiskerRandom. This happens even if a seed is specified, but only when no EnhancedRandom was provided.
- Deserializer was missing some registrations; these are where they should be now.
[0.4.3]
- Add FlowRandom to non-testing generators, since it passes PractRand testing flawlessly.
- Fix LineWobble on GWT, usually by using BitConversion.imul().
- Add trobble() to LineWobble; it's a trigonometric wobble.
[0.4.2]
- Update digital dependency to 0.4.3, which allows Juniper to be used on GWT again.
[0.4.1]
- Add Respite32Random (this is a 32-bit generator).
- Update digital dependency to 0.4.2 .
[0.4.0]
- Added PouchRandom; this is currently the fastest generator here, but has some state constraints that other generators don't require.
- Added Crand64Random.
- Added Sfc64Random.
- Added Jsf32Random (this is a 32-bit generator, unlike the others added in this release, which are 64-bit).
- Update digital dependency to 0.4.1 .
[0.3.9]
- Updated dependency on digital to 0.4.0 .
- Updated LineWobble with several new methods, such as splobble(), quobble(), and hobble().
[0.3.8]
- Updated dependency on digital to 0.3.7 .
- InterpolatedRandom is new.
[0.3.7]
- [SEED BREAKING CHANGE] Ziggurat had its outputs change in some rare cases, which should now make it more "fair." This only affects Gaussian and/or normal-distributed variables, or things that consume them.
- Added Xoshiro256MX3Random .
- Add a cipher, SpeckCipher, as a learning exercise; don't use it please!
- Add leap() to some random number generators.
[0.3.6]
- Immediately replaced by 0.3.7 .
[0.3.5]
- Updated dependency on digital to one that will work on GWT (digital 0.3.3).
[0.3.4]
- Fixed ArchivalWrapper serialization.
- Fixed Distribution.equals() in the presence of unused parameters, which are NaN.
[0.3.3]
- Fixed deserialization for ZipfianDistribution and made it use double for its alpha parameter (since it could only be set by giving a double).
[0.3.2]
- [SEED BREAKING CHANGE] AceRandom and ScruffRandom's `setSeed(long)` method now have much less correlation between the seed and the first few outputs of the generator. This does change the results of `setSeed(long)` and the constructor with one long that calls it.
- [BREAKING CHANGE] TupleQuasiRandom now uses a Weyl sequence (the same as GoldenQuasiRandom) instead of a simple counter that only adds 1. This changes all results, especially with small seeds.
- ArchivalWrapper's deserialization works now when a Base is specified.
- LongSequence.with() had a severe bug relating to resizing the backing array, which should be fixed now.
[0.3.1]
- Added ReverseWrapper, which wraps another generator and makes calls to nextLong() become calls to previousLong() and vice versa.
- Added LongSequence, KnownSequenceRandom, and ArchivalWrapper, which are all closely-related.
- Added ScruffRandom, which has 256 bits of state, a guaranteed minimum period of 2 to the 64, and is quite fast/high-quality. It does use multiplication, like WhiskerRandom.
- Added TupleQuasiRandom, which cycles through 1024 different multipliers that it applies to the upper bits of a counter. I am not sure what it might be useful for just yet.
[The Before Times]
- Lots of stuff.