0.4.0
#79: changed the way that rate is calculated for small numbers. In some edge cases, people might try to calculate a rate based on minutes or hours, and end up with a silly small decimal (like 67/60). This resulted in tests getting stuck and running for a long time. Some other decimals might result in bursts of tests with long intervals in between, which is not great for the thing you are testing and the results you receive. In those cases, grandma will now fudge the rate a little bit to get more consistent test runs.
Here are some examples:
| Input | Real value used |
|---|---|
1.1166666666666667 or 67/60 |
1.278772378516624 |
1.12345633464574 |
1.2853470437017993 |
2.56 |
2.5641025641025643 |
3.14 |
3.205128205128205 |
These values may not seem awfully different on the surface, but the latter value is actually much easier to handle at runtime than the former.
Bonus: A preview of #74 is included in this release. You will be able to see estimates of both rate and concurrency calculated from the actual results of the tests. For now, you can access it only on the JSON reporter, by using the --estimates CLI flag. This is currently undocumented, and you are the only one that knows about it!