-
Notifications
You must be signed in to change notification settings - Fork 494
Release steps
Albert Y. Kim edited this page Aug 24, 2019
·
1 revision
Copied from corresponding Google Doc (only the first part):
- Borders of all histograms should be white, making the binning structure easier to read.
- Use
computer font
for all computing concepts:function()
,data_frame
,variable_names
,package_name
. - Maybe? Consider using bold only for statistical concepts?
- Remove all
&
,%
, and_
infig.cap
for R chunk options since they break PDF build - Ensure no code exceeds 80 characters. While HTML code block outputs tolerate >80, PDF code block outputs do not.
- Ensure
skimr::skim()
code is not actually run, but all calls and outputs are hard-coded (withhist
preview removed and---
output cut down to 80 characters), since this will break allknitr::kable()
code for rest of book.
- Search for all broken references (search for @ref and ?? in html output)
- Maintain Chapter/Section/Subsection naming consistency
- As much as feasible, ensure index is up-to-date by adding
\index{<term>}
tags - Ensure all Figures & Tables are referenced.
- Remove all
load()
calls if possible - Ensure all CSV’s are loaded from moderndive.com and not other sites (our personal sites for example). See
index.Rmd
,set-options
R chunk, copy all needed csv files todocs/
- Create bit.ly links for all linked Google Docs
- Do it in RStudio.
- Scan over all changed content to make sure grammar is correct.
- Can be built using
source(“purl.R”)
- If time allows, go over all code blocks and ensure that
purl = FALSE
is set for all code chunks we don't want shared. - Requires the book published to moderndive.com to have links to moderndive.com/scripts
- Development version should link to moderndive.netlify.com/scripts since code may be updated in development causing problems if someone on moderndive.com is trying to look over all the code for what is there
- Ensure only Shutterstock licensed photos/images are used.
- Delete contents of
rds/
and rebuild all.rds
files in case any got stale.
- Update all R packages before one final build
- Change
.travis.yml
so thatinfer
andmoderndive
packages are NOT GitHub development.9000
versions but rather CRAN versions. - Relatedly, ensure
moderndive
package on CRAN is updated around same time as moderndive book version bump. - Build PDF version
Create dev-to-release-vX.X.X
branch to be used for pull request. See example commit on GitHub.
- YAML: Change
r format(Sys.time(), '%B %d, %Y')
to release date of form “January 1, 1970” - Remove “development branch” version warning block
- Current version information:
- Remove .9000 and bump version number
- Set date to release date: replace
format(Sys.time(), '%B %d, %Y')
with date of form “January 1, 1970”
- Latest release information:
- Update to release values
- CRAN packages needed:
- If possible, use CRAN versions
- Periodically: Do a search for use of all packages and remove those no longer used
- GitHub packages needed:
- Ensure they are installed from master branch. For ex, don’t do:
devtools::install_github("moderndive/moderndive", ref = "version_bump")
- Jump to .travis.yml -> r_github_packages -> remove @commit_number. For ex, don’t do:
andrewpbray/infer@83451d0caaa54eeb7f582d5889a6ec1597cd805e
- Ensure they are installed from master branch. For ex, don’t do:
- Latest published version: ensure info is correct
- Previous versions: Add previous version info
- Add previous version to
previous_version/
folder. Steps:- Go to
previous_versions/
and add new subfolder for soon-to-be previous version - Go to GitHub releases pages and download .zip of source code of soon-to-be previous version
- In
index.Rmd
- Uncomment notice about this being an out-of-date version
- Ensure comment is surrounded by
***
to highlight this note
- Build book
- Copy contents of
docs/
folder to the new subfolder inprevious_version/
- Go to
- All Chapter .Rmd files: Remove all install_github() package installations
- NEWS.md: Update with all significant changes from this TODO
-
.gitignore
: Removebib/packages.bib
- Merge
dev-to-release-vX.X.X
branch intomaster
- Merge
master
intorelease
via PR (trick to remember: right into left). Or consider doing this? - Rebuild
release/docs
and commit. You might need to removedocs/
from.gitignore
to be able to commit to release branch - Tag release on GitHub
Create release-to-dev
branch to be used for pull request. See example commit on GitHub to revert back to devel version by undoing all changes to:
- YAML: Change release date back to
r format(Sys.time(), '%B %d, %Y')
- Return “development branch” version warning block
- Current version information:
- Add .9000 to version number
- Set date to
r format(Sys.time(), '%B %d, %Y')
- NEWS.md: Add section for new dev version
- Add
bib/packages.bib
to.gitignore
- Revert
.travis.yml
so thatinfer
andmoderndive
packages are github dev versions