Skip to content

Commit

Permalink
Merge branch 'main' into 2423-keyboard-shortcut-search
Browse files Browse the repository at this point in the history
  • Loading branch information
edavidaja authored Aug 16, 2024
2 parents 3ebae58 + f4e653a commit 5290c50
Show file tree
Hide file tree
Showing 10 changed files with 39 additions and 36 deletions.
8 changes: 2 additions & 6 deletions .github/workflows/R-CMD-check.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -44,13 +44,9 @@ jobs:
steps:
- uses: actions/checkout@v4

- uses: quarto-dev/quarto-actions/setup@v2
with:
tinytex: true
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- uses: r-lib/actions/setup-pandoc@v2

- uses: r-lib/actions/setup-tinytex@v2

- uses: r-lib/actions/setup-r@v2
with:
Expand Down
4 changes: 3 additions & 1 deletion .github/workflows/lint.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,13 @@ jobs:
- uses: r-lib/actions/setup-r@v2
with:
use-public-rspm: true

- uses: r-lib/actions/setup-r-dependencies@v2
with:
extra-packages: any::lintr, local::.
needs: lint

- uses: r-lib/actions/setup-tinytex@v2

- name: Lint
run: lintr::lint_package()
Expand Down
5 changes: 0 additions & 5 deletions .github/workflows/netlify.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,6 @@ jobs:

- uses: r-lib/actions/setup-pandoc@v2

- name: Set up Quarto
uses: quarto-dev/quarto-actions/setup@v2
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- uses: r-lib/actions/setup-r@v2
with:
use-public-rspm: true
Expand Down
8 changes: 2 additions & 6 deletions .github/workflows/pkgdown.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -26,12 +26,6 @@ jobs:
steps:
- uses: actions/checkout@v4

- uses: quarto-dev/quarto-actions/setup@v2
with:
tinytex: true
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- uses: r-lib/actions/setup-pandoc@v2

- uses: r-lib/actions/setup-r@v2
Expand All @@ -42,6 +36,8 @@ jobs:
with:
extra-packages: any::pkgdown, local::.
needs: website

- uses: r-lib/actions/setup-tinytex@v2

- name: Build site
run: pkgdown::build_site_github_pages(new_process = FALSE, install = FALSE)
Expand Down
8 changes: 2 additions & 6 deletions .github/workflows/test-coverage.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,12 +21,6 @@ jobs:

- uses: r-lib/actions/setup-pandoc@v2

- uses: quarto-dev/quarto-actions/setup@v2
with:
tinytex: true
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- uses: r-lib/actions/setup-r@v2
with:
use-public-rspm: true
Expand All @@ -35,6 +29,8 @@ jobs:
with:
extra-packages: any::covr, any::xml2
needs: coverage

- uses: r-lib/actions/setup-tinytex@v2

- name: Test coverage
run: |
Expand Down
2 changes: 2 additions & 0 deletions NEWS.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
# pkgdown (development version)

* Added keyboard shortcut, `/`, to focus search bar (#2423)
* The `BugReports` field can now be an email (@catalamarti, #2275).
* New `clean_cache()` function removes the contents of the cache directory (#2718).
* pkgdown now depends on R >= 4.0.0 (#2714)
* Updated GitHub Actions advice and workflows around Quarto install (@tanho63, #2743)

# pkgdown 2.1.0

Expand Down
15 changes: 10 additions & 5 deletions R/build-home-index.R
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,7 @@ data_home_sidebar <- function(pkg = ".", call = caller_env()) {
"home.sidebar.structure",
default = default_sidebar_structure(),
call = call
)
)

# compute all default sections
default_components <- list(
Expand All @@ -122,7 +122,7 @@ data_home_sidebar <- function(pkg = ".", call = caller_env()) {
)

needs_components <- setdiff(structure, names(default_components))
custom_yaml <- config_pluck_sidebar_components(pkg, needs_components, call = call)
custom_yaml <- config_pluck_sidebar_components(pkg, needs_components, call = call)
custom_components <- purrr::map(custom_yaml, function(x) {
sidebar_section(x$title, markdown_text_block(pkg, x$text))
})
Expand All @@ -140,11 +140,11 @@ default_sidebar_structure <- function() {
config_pluck_sidebar_components <- function(pkg, new_components, call = caller_env()) {
base_path <- "home.sidebar.components"
components <- config_pluck_list(pkg, base_path, has_names = new_components, call = call)

for (name in names(components)) {
component <- components[[name]]
component_path <- paste0(base_path, ".", name)

config_pluck_list(pkg, component_path, has_names = c("title", "text"), call = call)
config_pluck_string(pkg, paste0(component_path, ".title"), call = call)
config_pluck_string(pkg, paste0(component_path, ".text"), call = call)
Expand All @@ -158,10 +158,15 @@ data_home_sidebar_links <- function(pkg = ".") {
repo <- cran_link(pkg$package)
links <- config_pluck(pkg, "home.links")

bug_reports <- pkg$desc$get_field("BugReports", default = NULL)
if (grepl("@", bug_reports) && !startsWith(bug_reports, "http")) {
bug_reports <- paste0("mailto:", bug_reports)
}

links <- c(
link_url(sprintf(tr_("View on %s"), repo$repo), repo$url),
link_url(tr_("Browse source code"), repo_home(pkg)),
link_url(tr_("Report a bug"), pkg$desc$get_field("BugReports", default = NULL)),
link_url(tr_("Report a bug"), bug_reports),
purrr::map_chr(links, ~ link_url(.$text, .$href))
)

Expand Down
8 changes: 8 additions & 0 deletions tests/testthat/_snaps/build-home-index.md
Original file line number Diff line number Diff line change
Expand Up @@ -149,3 +149,11 @@
! In _pkgdown.yml, home.sidebar.components.fancy must have components "title" and "text".
2 missing components: "title" and "text".

# allow email in BugReports

Code
xpath_xml(html, ".//li/a")
Output
<a href="mailto:[email protected]">Report a bug</a>
<a href="authors.html#citation">Citing testpackage</a>

9 changes: 8 additions & 1 deletion tests/testthat/test-build-home-index.R
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ test_that("math is handled", {
expect_equal(xpath_length(html, ".//math"), 1)
})

test_that("data_home() validates yaml metadata", {
test_that("data_home() validates yaml metadata", {
data_home_ <- function(...) {
pkg <- local_pkgdown_site(meta = list(...))
data_home(pkg)
Expand Down Expand Up @@ -153,3 +153,10 @@ test_that("cran_unquote works", {
"Quoting is CRAN's thing."
)
})

test_that("allow email in BugReports", {
# currently desc throws a warning if BugReports is an email
pkg <- local_pkgdown_site(desc = list(BugReports = "[email protected]"))
html <- xml2::read_html(data_home_sidebar(pkg))
expect_snapshot(xpath_xml(html, ".//li/a"))
})
8 changes: 2 additions & 6 deletions vignettes/quarto.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -24,14 +24,10 @@ project:
render: ['*.qmd']
```
### GitHub actions
### GitHub Actions
Currently, you'll need to manually install Quarto in your GitHub actions. ([Hopefully this will change in the future](https://github.com/r-lib/actions/issues/866)). Add the following lines to install quarto:
The `setup-r-dependencies` action will [automatically](https://github.com/r-lib/actions/tree/v2-branch/setup-r-dependencies#usage) install Quarto in your GitHub Actions if a .qmd file is present in your repository (see the `install-quarto` parameter for more details).

```yaml
- name: Set up Quarto
uses: quarto-dev/quarto-actions/setup@v2
```

## Limitations

Expand Down

0 comments on commit 5290c50

Please sign in to comment.