Description
The Manifest.toml
files on the master branch still point to 0.32.0 of Turing, which leads to e.g. this UndefVarError
: https://turinglang.org/docs/tutorials/docs-12-using-turing-guide/#maximum-likelihood-and-maximum-a-posterior-estimates
docs/tutorials/docs-12-using-turing-guide/Manifest.toml
Lines 1882 to 1886 in 1f797b7
I notice that there used to be a weekly GitHub Action to update the manifests, which was removed as part of #441. So a quick fix would be to re-enable that workflow and run it.
However, I think a more robust solution for the long term would be to:
-
Use a single environment for building all the docs, rather than one environment per notebook. I don't think there is any use case for having separate environments, and even if there were I think that it would not be the right thing to do — it would be very confusing to the user if the code on separate pages could not be run in the same environment.
-
Pin the version of Turing with a
[compat]
block in theProject.toml
file (on both the master and backport branches) -
In the main documentation workflow (using
on: push
), add a check to make sure that the version of Turing specified inProject.toml
matches the version specified in_quarto.yml
-
Gitignore the manifest, only regenerating it when building the docs. IMO it makes more sense to let Julia resolve to the latest compatible versions (e.g. in order to use the latest bugfix version of Turing; and after all, a user reading the docs and running the code is, in all likelihood, going to fetch the latest versions anyway instead of looking for the manifest in this repo). Also, this spares us this issue of having to update the manifest when a new version of Turing is released.
Overall, this proposal means that when a new version of Turing is launched, only three files (_quarto.yml
, Project.toml
, and Manifest.toml
) need to be changed; and GitHub will tell you right away if you forget to change one of them. (Of course, the list of old versions will also need to be updated, but that is a separate matter, unrelated to this issue.)