Skip to content

Commit 86796bd

Browse files
committed
fixup incorrect table of content entries (thanks pre-commit hook)
1 parent 022e55f commit 86796bd

File tree

2 files changed

+28
-3
lines changed

2 files changed

+28
-3
lines changed

notebooks/table_of_contents_examples.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ Gallery.contents = {
1414
"generalized_linear_models/GLM-logistic": "(Generalized) Linear and Hierarchical Linear Models",
1515
"generalized_linear_models/GLM-hierarchical-binominal-model": "(Generalized) Linear and Hierarchical Linear Models",
1616
"generalized_linear_models/GLM-hierarchical": "(Generalized) Linear and Hierarchical Linear Models",
17-
"case/studies/hierarchical_partial_pooling": "(Generalized) Linear and Hierarchical Linear Models",
17+
"case_studies/hierarchical_partial_pooling": "(Generalized) Linear and Hierarchical Linear Models",
1818
"generalized_linear_models/GLM-model-selection": "(Generalized) Linear and Hierarchical Linear Models",
1919
"generalized_linear_models/GLM-negative-binomial-regression": "(Generalized) Linear and Hierarchical Linear Models",
2020
"generalized_linear_models/GLM-poisson-regression": "(Generalized) Linear and Hierarchical Linear Models",
@@ -39,7 +39,7 @@ Gallery.contents = {
3939
"mixture_models/dp_mix": "Mixture Models",
4040
"variational_inference/gaussian-mixture-model-advi": "Mixture Models",
4141
"mixture_models/gaussian_mixture_model": "Mixture Models",
42-
"marginalized_gaussian_mixture_model": "Mixture Models",
42+
"mixture_models/marginalized_gaussian_mixture_model": "Mixture Models",
4343
"samplers/SMC2_gaussians": "Simulation-based Inference",
4444
"samplers/SMC-ABC_Lotka-Volterra_example": "Simulation-based Inference",
4545
"survival_analysis/bayes_param_survival_pymc3": "Survival Analysis",
@@ -48,7 +48,7 @@ Gallery.contents = {
4848
"survival_analysis/weibull_aft": "Survival Analysis",
4949
"survival_analysis/cox_model": "Survival Analysis",
5050
"time_series/MvGaussianRandomWalk_demo": "Time Series",
51-
"time_series/R": "Time Series",
51+
"time_series/AR": "Time Series",
5252
"time_series/Euler-Maruyama_and_SDEs": "Time Series",
5353
"variational_inference/bayesian_neural_network_advi": "Variational Inference",
5454
"variational_inference/convolutional_vae_keras_advi": "Variational Inference",

scripts/check_toc_is_complete.py

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
"""
2+
Check that given Jupyter notebooks all appear in the table of contents.
3+
4+
This is intended to be used as a pre-commit hook, see `.pre-commit-config.yaml`.
5+
You can run it manually with `pre-commit run check-toc --all`.
6+
"""
7+
8+
import argparse
9+
import ast
10+
11+
from pathlib import Path
12+
13+
if __name__ == "__main__":
14+
toc_examples = (Path("notebooks") / "table_of_contents_examples.js").read_text()
15+
toc_tutorials = (Path("notebooks") / "table_of_contents_tutorials.js").read_text()
16+
toc_keys = {
17+
**ast.literal_eval(toc_examples[toc_examples.find("{") :]),
18+
**ast.literal_eval(toc_tutorials[toc_tutorials.find("{") :]),
19+
}.keys()
20+
parser = argparse.ArgumentParser()
21+
parser.add_argument("paths", nargs="*", type=Path)
22+
args = parser.parse_args()
23+
for path in args.paths:
24+
notebook_name = path.relative_to('notebooks').with_suffix('').as_posix()
25+
assert notebook_name in toc_keys, f"Notebook '{notebook_name}' not added to table of contents!"

0 commit comments

Comments
 (0)