docs: index all 14 exports in pkgdown, set the site url

The reference index covered 6 of 14 exports, so pkgdown errored on the
eight missing topics and the docs site did not build at all. Adds a
Comparison & aggregation section and a Corpus metadata section, lists both
vignettes as articles, and sets url so canonical links and search resolve.

build_site() now completes clean: reference metadata ok, no problems.
This commit is contained in:
2026-08-08 17:49:10 -04:00
parent 013af5b0d2
commit 5582c6cb57
2 changed files with 35 additions and 5 deletions
+21 -5
View File
@@ -1,4 +1,5 @@
url: ~ url: https://civilytics.r-universe.dev/uscogdata
template: template:
bootstrap: 5 bootstrap: 5
@@ -15,11 +16,26 @@ reference:
- cog_gov_search - cog_gov_search
- cog_basket_resolution - cog_basket_resolution
- cog_basket_unresolved - cog_basket_unresolved
- title: Session - title: Comparison & aggregation
desc: Peer cohorts and geographic aggregates.
contents: contents:
- has_keyword("internal") - cog_find_peers
- cog_peer_compare
- cog_geographic_rollup
- title: Corpus metadata
desc: >
What the corpus contains, where a given result came from, and how to
hold a local copy of it.
contents:
- cog_categories
- cog_recipes
- cog_manifest
- cog_explain
- cog_mirror
articles: articles:
- title: Getting started - title: Concepts
navbar: ~ navbar: ~
contents: [] contents:
- total-spending
- population-denominators
+14
View File
@@ -131,3 +131,17 @@ test_that("vignettes are not excluded from the build", {
# r-universe and GitHub Actions. It must never be excluded. # r-universe and GitHub Actions. It must never be excluded.
expect_false(any(grepl("fixture_corpus", ignore, fixed = TRUE))) expect_false(any(grepl("fixture_corpus", ignore, fixed = TRUE)))
}) })
test_that("_pkgdown.yml indexes every exported topic", {
skip_if_no_source_tree("_pkgdown.yml", "NAMESPACE")
exports <- grep("^export\\(", readLines(source_tree_path("NAMESPACE"), warn = FALSE),
value = TRUE)
exports <- sub("^export\\((.*)\\)$", "\\1", exports)
yml <- paste(readLines(source_tree_path("_pkgdown.yml"), warn = FALSE), collapse = "\n")
missing <- exports[!vapply(exports,
function(e) grepl(paste0("\\b", e, "\\b"), yml),
logical(1))]
# pkgdown errors on topics missing from the index, so an unlisted export
# means the docs site does not build at all.
expect_equal(missing, character(0))
})