Skip to content

Commit 824ab4a

Browse files
Add and propagate quiet arg to build_site() (#2899)
Closes #2330
1 parent f950aed commit 824ab4a

File tree

5 files changed

+60
-9
lines changed

5 files changed

+60
-9
lines changed

DESCRIPTION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ Config/Needs/website: usethis, servr
7070
Config/potools/style: explicit
7171
Config/testthat/edition: 3
7272
Config/testthat/parallel: true
73-
Config/testthat/start-first: build-article, build-quarto-article, build-reference
73+
Config/testthat/start-first: build-article, build-quarto-article, build-reference, build
7474
Encoding: UTF-8
7575
Roxygen: list(markdown = TRUE)
7676
SystemRequirements: pandoc

NEWS.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
# pkgdown (development version)
22

3+
* `build_site()` gained a `quiet` argument, which is propagated to other functions
4+
(e.g., `build_articles()`) and is useful for debugging build errors on GH actions.
5+
36
# pkgdown 2.1.3
47

58
* Menu items can now set `class` and `id`.

R/build.R

Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -301,6 +301,8 @@
301301
#' in the current process affects the build process.
302302
#' @param install If `TRUE`, will install the package in a temporary library
303303
#' so it is available for vignettes.
304+
#' @param quiet If `FALSE`, generate build messages for build functions that
305+
#' take `quiet` arguments.
304306
#' @export
305307
#' @examples
306308
#' \dontrun{
@@ -318,7 +320,8 @@ build_site <- function(
318320
preview = NA,
319321
devel = FALSE,
320322
new_process = !devel,
321-
install = !devel
323+
install = !devel,
324+
quiet = TRUE
322325
) {
323326
pkg <- as_pkgdown(pkg, override = override)
324327
check_bool(devel)
@@ -352,7 +355,8 @@ build_site <- function(
352355
lazy = lazy,
353356
override = override,
354357
preview = preview,
355-
devel = devel
358+
devel = devel,
359+
quiet = quiet
356360
)
357361
} else {
358362
build_site_local(
@@ -363,7 +367,8 @@ build_site <- function(
363367
lazy = lazy,
364368
override = override,
365369
preview = preview,
366-
devel = devel
370+
devel = devel,
371+
quiet = quiet
367372
)
368373
}
369374
}
@@ -376,7 +381,8 @@ build_site_external <- function(
376381
lazy = FALSE,
377382
override = list(),
378383
preview = NA,
379-
devel = TRUE
384+
devel = TRUE,
385+
quiet = TRUE
380386
) {
381387
pkg <- as_pkgdown(pkg, override = override)
382388
args <- list(
@@ -390,6 +396,7 @@ build_site_external <- function(
390396
preview = FALSE,
391397
new_process = FALSE,
392398
devel = devel,
399+
quiet = quiet,
393400
cli_colors = cli::num_ansi_colors(),
394401
hyperlinks = cli::ansi_has_hyperlink_support()
395402
)
@@ -422,7 +429,8 @@ build_site_local <- function(
422429
lazy = FALSE,
423430
override = list(),
424431
preview = NA,
425-
devel = TRUE
432+
devel = TRUE,
433+
quiet = TRUE
426434
) {
427435
pkg <- section_init(pkg, override = override)
428436

@@ -438,7 +446,7 @@ build_site_local <- function(
438446
init_site(pkg, override)
439447
}
440448

441-
build_home(pkg, override = override, preview = FALSE)
449+
build_home(pkg, override = override, quiet = quiet, preview = FALSE)
442450
build_reference(
443451
pkg,
444452
lazy = lazy,
@@ -449,7 +457,13 @@ build_site_local <- function(
449457
preview = FALSE,
450458
devel = devel
451459
)
452-
build_articles(pkg, lazy = lazy, override = override, preview = FALSE)
460+
build_articles(
461+
pkg,
462+
lazy = lazy,
463+
override = override,
464+
quiet = quiet,
465+
preview = FALSE
466+
)
453467
build_tutorials(pkg, override = override, preview = FALSE)
454468
build_news(pkg, override = override, preview = FALSE)
455469
build_sitemap(pkg)

man/build_site.Rd

Lines changed: 5 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

tests/testthat/test-build.R

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,33 @@
11
test_that("both versions of build_site have same arguments", {
22
expect_equal(formals(build_site_local), formals(build_site_external))
33
})
4+
5+
test_that("build_site can be made unquiet", {
6+
skip_if_no_pandoc()
7+
8+
# `quiet = FALSE` from build_site() should get passed to
9+
# build_articles(), which will include some rmarkdown build out in the
10+
# messages, including "pandoc", which won't be there normally
11+
pkg <- local_pkgdown_site(test_path("assets/figure"))
12+
output_unquiet <- suppressMessages(
13+
capture.output(
14+
build_site(
15+
pkg,
16+
quiet = FALSE,
17+
preview = FALSE
18+
)
19+
)
20+
)
21+
expect_match(paste(output_unquiet, collapse = ""), "pandoc")
22+
23+
output_quiet <- suppressMessages(
24+
capture.output(
25+
build_site(
26+
pkg,
27+
preview = FALSE
28+
)
29+
)
30+
)
31+
32+
expect_no_match(paste(output_quiet, collapse = ""), "pandoc")
33+
})

0 commit comments

Comments
 (0)