Remove MicroCanonicalHMC.jl and update external sampler docs #628
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Several reasons:
MCHMC.jl is a reverse dependency of Turing (i.e., it depends on Turing). We previously agreed that it's not generally desirable to have reverse-deps in the docs repo (Remove Pathfinder code example from docs #576). The TL;DR is that reverse deps prevent us from releasing docs with new versions of Turing until and unless those reverse deps upgrade their Turing compat entries, and we can't control if or when that happens.
MCHMC.jl hasn't been updated in quite a while, in fact its latest release declares a Turing compat version of 0.34 which is almost a year old https://github.com/TuringLang/Turing.jl/releases/tag/v0.34.1.
Well, in that case how have the docs even been building for the last 5 minor releases of Turing? Turns out that old versions of MCHMC.jl have no compat bounds. So we have just been building with an old release of MCHMC that fortuitously didn't error, but which should really be yanked from the General registry. I've opened an issue on the MCHMC repo about this: Turing and other compat entries JaimeRZP/MicroCanonicalHMC.jl#27.
In its place I have put a link to SliceSampling.jl (which avoids problems (2) and (3)) but without any actual code (which avoids problem (1)).
In this PR I also took the opportunity to completely refresh the interface documentation for external samplers, which was quite outdated.