Skip to content

adds the _freeze dir to the repo / remove renv#436

Merged
tomjemmett merged 4 commits intomainfrom
add_freeze_dir
Apr 24, 2026
Merged

adds the _freeze dir to the repo / remove renv#436
tomjemmett merged 4 commits intomainfrom
add_freeze_dir

Conversation

@tomjemmett
Copy link
Copy Markdown
Member

previously we were recomputing all code chunks on github actions, but caching the _freeze dir.

this PR adds the _freeze dir to version control, with the expectation that all users run their code locally and add _freeze changes. this eliminates the need to run the r/python code on the action runner

previously we were recomputing all code chunks on github actions, but caching the _freeze dir.

this PR adds the _freeze dir to version control, with the expectation that all users run their code locally and add _freeze changes. this eliminates the need to run the r/python code on the action runner
Copilot AI review requested due to automatic review settings April 21, 2026 08:37
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 21, 2026

PR Preview Action v1.4.8
Preview removed because the pull request was closed.
2026-04-24 08:39 UTC

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR shifts the Quarto site build strategy from “execute on GitHub Actions + cache _freeze/” to “commit _freeze/ and avoid executing code in CI”, while removing the renv-based dependency management scaffolding previously used across posts/presentations.

Changes:

  • Remove renv configuration/lockfiles and all per-page renv::use(lockfile=...) chunks.
  • Commit _freeze/ artifacts and set site-wide execute.freeze: true to rely on frozen results.
  • Simplify presentations/index.qmd to use Quarto listing: metadata instead of an R-generated table; trim CI workflows accordingly.

Reviewed changes

Copilot reviewed 54 out of 163 changed files in this pull request and generated no comments.

Show a summary per file
File Description
renv/settings.json Removed renv project settings as part of decommissioning renv.
renv/.gitignore Removed renv ignore rules since renv/ is being removed.
renv.lock Removed root renv lockfile.
presentations/index.qmd Replaced custom R-generated listing with Quarto listing:.
presentations/2026-03-12_managing-your-environment/renv.lock Removed per-presentation lockfile.
presentations/2025-12-04_whose_application/renv.lock Removed per-presentation lockfile.
presentations/2025-12-04_multidisciplinary_pipelines/renv.lock Removed per-presentation lockfile.
presentations/2025-11-13_nhsrpysoc-2025-word/renv.lock Removed per-presentation lockfile.
presentations/2025-11-05_case-example/renv.lock Removed per-presentation lockfile.
presentations/2025-09-11_efficient-coding/index.qmd Updated YAML metadata (author/date) and removed renv::use() chunk.
presentations/2025-09-04_demand-presentation/renv.lock Removed per-presentation lockfile.
presentations/2025-03-13_sconn-r-pkg-databricks/renv.lock Removed per-presentation lockfile.
presentations/2025-02-27_word-not-quarto/renv.lock Removed per-presentation lockfile.
presentations/2025-02-27_nhp-deployment/renv.lock Removed per-presentation lockfile.
presentations/2025-01-16_c-and-c-databricks/renv.lock Removed per-presentation lockfile.
presentations/2024-12-04_what-the-heck/renv.lock Removed per-presentation lockfile.
presentations/2024-12-02_dhsc/renv.lock Removed per-presentation lockfile.
presentations/2024-11-27_text-mining/renv.lock Removed per-presentation lockfile.
presentations/2024-11-26_text-mining-yh/renv.lock Removed per-presentation lockfile.
presentations/2024-11-22_github-team-sport-rpysoc/index.qmd Removed renv::use() chunk.
presentations/2024-11-21_agile_project_management/renv.lock Removed per-presentation lockfile.
presentations/2024-10-10_what-is-ai-yiwen/renv.lock Removed per-presentation lockfile.
presentations/2024-10-10_what-is-ai-tom/index.qmd Removed renv::use() chunk; minor R formatting tweaks.
presentations/2024-10-10_what-is-ai-matt/renv.lock Removed per-presentation lockfile.
presentations/2024-10-09-rap-cautionary-tales/renv.lock Removed per-presentation lockfile.
presentations/2024-09-05_earl-nhp/renv.lock Removed per-presentation lockfile.
presentations/2024-08-22_agile-and-scrum/renv.lock Removed per-presentation lockfile.
presentations/2024-05-30_open-source-licensing/index.qmd Removed renv::use() chunk.
presentations/2024-05-23_github-team-sport/index.qmd Removed renv::use() chunk.
presentations/2024-05-16_store-data-safely/index.qmd Removed renv::use() chunk.
presentations/2024-01-25_coffee-and-coding/index.qmd Removed renv::use() chunk.
presentations/2023-10-17_conference-check-in-app/index.qmd Removed renv::use() chunk.
presentations/2023-10-09_nhs-r_conf_sd_in_health_social_care/index.qmd Removed renv::use() chunk; whitespace/formatting cleanup.
presentations/2023-09-07_coffee_and_coding_functions/index.qmd Removed renv::use() chunk; formatting cleanup and function example refactor.
presentations/2023-08-24_coffee-and-coding_geospatial/index.qmd Removed renv::use() chunk; updated leaflet tile provider; formatting cleanup.
presentations/2023-08-23_nhs-r_unit-testing/index.qmd Removed renv::use() chunk; formatting cleanup in examples.
presentations/2023-08-02_mlcsu-ksn-meeting/index.qmd Removed renv::use() chunk.
presentations/2023-07-11_haca-nhp-demand-model/index.qmd Removed renv::use() chunk.
presentations/2023-05-23_data-science-for-good/index.qmd Removed renv::use() chunk.
presentations/2023-05-15_text-mining/index.qmd Removed renv::use() chunk.
presentations/2023-03-23_collaborative-working/index.qmd Removed renv::use() chunk.
presentations/2023-03-23_coffee-and-coding/index.qmd Removed renv::use() chunk; formatting cleanup.
presentations/2023-03-09_midlands-analyst-rap/index.qmd Removed renv::use() chunk.
presentations/2023-03-09_coffee-and-coding/index.qmd Removed renv::use() chunk.
presentations/2023-02-23_coffee-and-coding/index.qmd Removed renv::use() chunk.
presentations/2023-02-01_what-is-data-science/index.qmd Removed renv::use() chunk.
index.qmd Removed a setup chunk that loaded packages for rendering.
blogs/posts/2025-04-30_using-github-apps-for-authentication/index.qmd Removed execute.enabled: false; replaced Quarto code-fold options with HTML <details> wrappers and plain code fences.
blogs/posts/2024-12-04-gha-branch-preview/renv.lock Removed per-post lockfile.
blogs/posts/2024-12-04-gha-branch-preview/index.qmd Removed renv::use() chunk.
blogs/posts/2024-11-29-mapping-my-r-learning/renv.lock Removed per-post lockfile.
blogs/posts/2024-11-29-mapping-my-r-learning/index.qmd Removed renv::use() chunk.
blogs/posts/2024-11-12_coffee-coding-github-planner/renv.lock Removed per-post lockfile.
blogs/posts/2024-11-12_coffee-coding-github-planner/index.qmd Removed renv::use() chunk.
blogs/posts/2024-08-08_map-and-nest/index.qmd Removed lockfile chunk; formatting/indentation improvements in examples.
blogs/posts/2024-05-22_storing-data-safely/index.qmd Removed renv::use() chunk; formatting cleanup in examples.
blogs/posts/2024-05-13_one-year-coffee-code/index.qmd Removed renv::use() chunk.
blogs/posts/2024-03-21_rstudio-tips/index.qmd Removed renv::use() chunk; minor whitespace cleanup.
blogs/posts/2024-02-28_sankey_plot/index.qmd Removed renv::use() chunk; made file loading more robust; formatting cleanup.
blogs/posts/2024-01-17_nearest_neighbour/index.qmd Removed renv::use() chunk; formatting cleanup.
blogs/posts/2024-01-10_advent-of-code-and-test-driven-development/index.qmd Removed renv::use() chunk.
blogs/posts/2023-04-26_reinstalling-r-packages/index.qmd Removed renv::use() chunk.
blogs/posts/2023-04-26_alternative_remotes/index.qmd Removed renv::use() chunk.
blogs/posts/2023-03-24_hotfix-with-git/index.qmd Removed renv::use() chunk.
_quarto.yml Changed execute.freeze from auto to true to rely on committed freeze outputs.
_freeze/presentations/2025-11-13_error_messages_with_cli/index/execute-results/html.json Added frozen execution output for a presentation.
_freeze/presentations/2025-07-17_deploy-to-connect/index/execute-results/html.json Added frozen execution output for a presentation.
_freeze/presentations/2024-10-10_what-is-ai-tom/index/execute-results/html.json Added frozen execution output for a presentation.
_freeze/presentations/2024-10-10_what-is-ai-matt/index/execute-results/html.json Added frozen execution output for a presentation.
_freeze/presentations/2024-10-10_what-is-ai-chris/index/execute-results/html.json Added frozen execution output for a presentation.
_freeze/presentations/2024-08-22_agile-and-scrum/index/execute-results/html.json Added frozen execution output for a presentation.
_freeze/presentations/2024-05-30_open-source-licensing/index/execute-results/html.json Added frozen execution output for a presentation.
_freeze/presentations/2024-01-25_coffee-and-coding/index/execute-results/html.json Added frozen execution output for a presentation.
_freeze/presentations/2023-09-07_coffee_and_coding_functions/index/execute-results/html.json Added frozen execution output for a presentation.
_freeze/presentations/2023-03-23_coffee-and-coding/index/execute-results/html.json Added frozen execution output for a presentation.
_freeze/presentations/2023-03-09_coffee-and-coding/index/execute-results/html.json Added frozen execution output for a presentation.
_freeze/blogs/posts/2024-08-08_map-and-nest/index/execute-results/html.json Added frozen execution output for a blog post.
_freeze/blogs/posts/2024-05-22_storing-data-safely/index/execute-results/html.json Added frozen execution output for a blog post.
_freeze/blogs/posts/2024-03-21_rstudio-tips/index/execute-results/html.json Added frozen execution output for a blog post.
_freeze/blogs/posts/2024-01-10_advent-of-code-and-test-driven-development/index/execute-results/html.json Added frozen execution output for a blog post.
_freeze/blogs/posts/2023-04-26_reinstalling-r-packages/index/execute-results/html.json Added frozen execution output for a blog post.
_freeze/blogs/posts/2023-04-26_alternative_remotes/index/execute-results/html.json Added frozen execution output for a blog post.
_freeze/blogs/posts/2023-03-24_hotfix-with-git/index/execute-results/html.json Added frozen execution output for a blog post.
README.md Removed the standalone {renv} section; adjusted contributor instructions (but still contains stale renv guidance elsewhere).
.renvignore Removed renv ignore configuration.
.gitignore Stopped ignoring _freeze/ so frozen outputs can be committed.
.github/workflows/renew_cache.yaml Removed workflow that refreshed cached _freeze/.
.github/workflows/rebuild_system_dependencies.r Removed script that computed apt sysreqs from renv.lock.
.github/workflows/publish.yaml Removed R/Python/renv setup and caching steps; updated checkout action version (currently invalid).
.github/workflows/preview.yml Removed R/Python/renv setup and caching steps; updated checkout action version (currently invalid).
.github/workflows/install_system_deps.sh Removed system dependency installation script for CI.
.Rprofile Removed renv activation hook.
Comments suppressed due to low confidence (1)

README.md:37

  • This README section still instructs contributors to use renv::snapshot() and add renv::use(lockfile = "renv.lock"), but this PR removes renv from the repo. Update the blogpost/presentation contribution instructions to reflect the new workflow (e.g., how to render locally and commit _freeze outputs) so new contributors don’t follow broken steps.
### How to create a new blogpost 

1. Navigate to the `blogs/posts` folder
2. Create a folder for your blogpost, following the naming convention `YYYY-MM-DD_title-of-post`
3. Copy a previous blogpost index.qmd file into your folder and use that as your template
4. Write your blogpost. To preview changes, run `quarto preview path/to/index.qmd` in terminal.
5. If your blogpost requires any specific packages, capture them with `renv::snapshot("PATH_TO_THE_FOLDER")` and ensure that you include in the top of your .qmd file (after the yaml) the following code chunk, without the hashes (#)

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@tomjemmett
Copy link
Copy Markdown
Member Author

closing #434 because this removes the need for that PR

@tomjemmett tomjemmett mentioned this pull request Apr 21, 2026
@yiwen-h
Copy link
Copy Markdown
Member

yiwen-h commented Apr 21, 2026

Should we add to README about the need to commit _freeze as well? From Slack:

add _freeze to version control: you will need to have run your code before pushing to github, and include _freeze in the commits
remove renv entirely - don't bother capturing the package versions used (maybe add a session info to end of all posts though in a <details> box?
avoid certain quarto features: turns out if you add any of the code folding stuff to a specific chunk it's going to force partial recomputation and installation of rmarkdown and knitr...
change the presentations index page: from memory early quarto didn't like us using a blog style listen page for the presentations folder, because the subitems weren't posts. but it does work now, eliminating the need to do any computation
remove setup-r from the actions - this will ensure you have _freeze'd your stuff

@tomjemmett
Copy link
Copy Markdown
Member Author

@yiwen-h should have addressed this in 65fac6e

@tomjemmett tomjemmett merged commit 453d21f into main Apr 24, 2026
1 check passed
@tomjemmett tomjemmett deleted the add_freeze_dir branch April 24, 2026 08:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants