The scripts folder is now deprecated. All the scripts that generated figures or were referred in the text are converted to notebooks and moved to the notebooks/book1 folder. Several scripts that are not directly used to create figures are helper scripts to the notebooks are moved to probml/probml-utils repo.
The notebooks/book1 folder contains chapter-wise notebooks used to generate figures or referred in text.
Figures generated by multiple notebooks point to a dummy notebook with the naming convention
fig_xx_yy.ipynb
wherexx
is chapter number andyy
is figure number. Furthermore, these dummy notebooks contain captions of figures and multiple notebook URLs. For example: https://code.probml.ai/book1/2.2How to maintain this in the future? Refer to this notebook to see the process.
Notebooks that are referred in multiple chapters are split into multiple replicas and kept in chapter-wise folders with the rule that only one of them has the source code, and others contain a single cell with a redirection link to that notebook. For example: 1) original; 2) dummy
How to maintain this in the future? We believe that this problem will occur when a notebook is mentioned in another chapter. A GitHub Actions workflow maintained on the
bookv2
repo will detect that the mentioned notebook is missing in thepyprobml
repo chapter-wise folder. Subsequently, one can manually create a dummy notebook to handle this case.
Automatic GitHub Actions workflow is active on this repo, which checks code style with
black
, statically checks imports, and then executes all the notebooks to check the errors. In the process, it also generates latexified images that are stored in the auto_generated_figures branch. In the end, workflow status is pushed to the workflow_testing_indicator branch, which contains logs and statistics of failing notebooks.