The data are built by this package, so a release is a package task rather than a separate pipeline. Everything below runs from a checkout.
library(taxadb)
td_build(taxadb_providers(), version = "2026")
Downloads roughly 1.8 GB of provider archives on a cold cache (kept in
build_dir() afterwards) and takes a few minutes. td_build() validates
each table as it finishes and warns if any rule is violated.
for (p in taxadb_providers())
for (s in c("dwc", "common"))
print(td_validate(p, s, version = "2026"))
Every rule must pass before publishing. td_validate() is the gate: a
violation here means a reader will hit the same problem.
Point TAXADB_HOME at file.path(build_dir(), "out") so this reads the
tables you just built rather than the published ones.
td_write_metadata("2026")
Writes manifest.csv and README.md next to the Parquet files. The
publish script refuses to upload without them.
export SOURCECOOP_KEY=...
export SOURCECOOP_SECRET=...
DRY_RUN=1 inst/scripts/publish-snapshot.sh 2026 # check the file list
inst/scripts/publish-snapshot.sh 2026
Publishing to an existing version overwrites it. People do read these URLs
directly -- the advice on ropensci/taxadb#123 pointed at
.../2026/dwc_col_part_0.parquet -- so overwriting changes data underneath
running code. Prefer a new version unless the point is to replace something
broken.
README.Rmd queries the published data, so its output only reflects a new
release after that release is up:
rmarkdown::render("README.Rmd")
Worth checking the diff: it is the quickest end-to-end confirmation that what you published is what you meant to.
taxonomicStatus.latest_dwca.zip, so its content depends on the build
date. The release it used is recorded in the manifest.build_ott(ott_version=); bump it when Open Tree
publishes a new one.Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.