Skip to content
Snippets Groups Projects
Kristen Kozak's avatar
kristenk authored
hackage-benchmark uses the environment variable CABAL_CONFIG to specify the
location of the config file. cabal started requiring the config file to exist in
that case in 6942e7e8, so this commit runs
"cabal user-config init".
0ab660a1
History
Code owners
Assign users and groups as approvers for specific file changes. Learn more.

Dependency Solver Benchmarks

hackage-benchmark

The goal of this benchmark is to find examples of packages that show a difference in behavior between two versions of cabal. It doesn't try to determine which version of cabal performs better.

hackage-benchmark compares two cabal commands by running each one on each package in a list. The list is either the package index or a list of packages provided on the command line. In order to save time, the benchmark initially only runs one trial for each package. If the results (solution, no solution, timeout, etc.) are the same and the times are too similar, it skips the package. Otherwise, it runs more trials and prints the results if they are significant.