* Remove hardcoded --stack-yaml and upstream/master assumption
* support Cabal in bench suite
* add benchmark run to CI
Even if the time measurements are unreliable in a shared CI environment, the
memory usage will be an accurate indicator of space leaks
* Update bench/README
* use origin/master
* default to stack in benchmarks (for CI)
* ignore ghcide-bench and ghcide-preprocessor binaries too
* Review feedbacks
* Add the v0.3.0 tag in bench/hist.yaml
commented out to keep the CI time as tight as possible
* Add .artifactignore file to avoid publishing binaries in azure bench pipeline
* use default stack.yaml
* send WorkDoneProgressEnd only when work done
* Progress reporting now spans over multiple overlapping kicks
* Repurpose benchmark experiments as tests
Fixes#650
* use stack to fetch from Hackage
* benchmark tests run with the same lsp-test config as other tests
* Fix stack cradle in benchmark
* Make stack unpack --silent
* Fix issues in "code actions after edit" experiment
- Repeated breaking edits make ghc run out of suggestions
- Diagnostics seem to come and go in-between edits, which leads to a timing
issue when asking for code actions. The fix is to wait for diagnostics to be
present before asking for code actions
* Fix stack.yaml generation in example project
* Fix getDefinition in GHC 8.4
Did it break before 0.2.0 or after?
* better naming for the progress event TVar
* stop progress reporting in shakeShut
https://github.com/digital-asset/ghcide/pull/649#discussion_r443408884
* hlint
* benchmark history script
* if HEAD no need to rebuild worktree
* add bench/README.md
* Enable all experiments
* Fix dependency tracking for git branches
* hlints
* Add stack84 extra-deps
* Identify failed experiments in graphs
* Filter our failed benchmarks from aggregate graphs
Otherwise they tend to distort the axis
* Improve graphs (more and easier to see colors)
* update cradles
* customizable output folder
* Cache the config for the duration of the script
Otherwise the script is vulnerable to config edits
* Allow omitting the git: field
* Ignore bench-hist intermediate artifacts
Handy for including bench-hist results in a branch while avoiding the
intermediate artifacts