Changelog for criterion-measurement-0.1.2.0
0.1.2.0
- Ensure that
Criterion.Measurement.Types.Internal
is always compiled with optimizations, even if thecriterion-measurement
library itself happens to be built with-O0
or-fprof-auto
. This is necessary to ensure that the inner benchmarking loop of criterion always finishes in a timely manner, even if the rest of the library is not fully optimized.
0.1.1.0
- Add
nfAppIO
andwhnfAppIO
functions, which take a function and its argument separately likenf
/whnf
, but whose function returnsIO
likenfIO
/whnfIO
. This is useful for benchmarking functions in which the bulk of the work is not bound by IO, but by pure computations that might otherwise be optimized away if the argument is known statically.
0.1.0.0
-
This is the first release of
criterion-measurement
. The changelog notes below are copied from the notes for the correspondingcriterion
release,criterion-1.5.0.0
. -
Move the measurement functionality of
criterion
into a standalone package,criterion-measurement
. In particular,cbits/
andCriterion.Measurement
are now incriterion-measurement
, along with the relevant definitions ofCriterion.Types
andCriterion.Types.Internal
(both of which are now under theCriterion.Measurement.*
namespace). Consequently,criterion
now depends oncriterion-measurement
.This will let other libraries (e.g. alternative statistical analysis front-ends) to import the measurement functionality alone as a lightweight dependency.
-
Fix a bug on macOS and Windows where using
runAndAnalyse
and other lower-level benchmarking functions would result in an infinite loop.