Render and (re)publish RELEASE_NOTES.md for a version
Source:R/release_notes.R
publish_release_notes.RdNotes-only: renders from RELEASES.md + the version's local sidecars,
writes dir_releases/{version}/RELEASE_NOTES.md, and uploads it and
RELEASES.md to the bucket with cache-control: no-cache. Safe to run for
any version at any time — it never touches data or latest.txt.
Usage
publish_release_notes(
version,
releases_md,
dir_releases,
bucket = "calcofi-db",
pkg_versions = NULL,
prefix = "ducklake/releases",
zenodo = !is.null(bucket),
release_policy = NULL,
fetch = NULL
)Arguments
- version
the release.
- releases_md
path to RELEASES.md.
- dir_releases
the local
data/releasesdirectory.- bucket
GCS bucket (default
"calcofi-db");NULLto skip upload.- pkg_versions
- prefix
the release prefix on the bucket (a staging run passes
ducklake-staging/releases).- zenodo
look the version's DOI up on Zenodo (default: when uploading).
- release_policy
path to
metadata/release_policy.yml, whoseconsolidatedlistbuild_versions_json()stamps whenversions.jsonis rebuilt; default: besidereleases_md.- fetch
the HTTP function passed to
zenodo_doi_for_tag()(tests).
Details
The one exception is the release's DOI. Zenodo mints it minutes after the
GitHub release is tagged, so when zenodo = TRUE this asks
zenodo_doi_for_tag() for it and, the first time it answers, writes it into
the local and published catalog.json (doi + citation, via
add_release_citation(); the objects are untouched) and rebuilds
versions.json so the version's record carries doi — the notes then cite
the DOI. Nothing changes when Zenodo has no record yet or already agrees.