Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Version 2.1.0 triggers an error in deploy_to_branch() traced to pkgdown:::is_syntactic() #2727

Closed
lcolladotor opened this issue Jul 16, 2024 · 6 comments

Comments

@lcolladotor
Copy link
Contributor

lcolladotor commented Jul 16, 2024

Hi,

With pkgdown version 2.1.0, I'm running into the following error when using pkgdown::deploy_to_branch().

Error in `build_reference()`:
! Failed to parse Rd in vis_gene_p.Rd
Caused by error in `is_call(x) && !is_call(x, "=") && !is_syntactic(x[[1]])`:
! 'length = 3' in coercion to 'logical(1)'

I saw this on GitHub actions at https://github.com/LieberInstitute/spatialLIBD/actions/runs/9944998632/job/27472260912#step:26:256 but I've also reproduced it locally. I've also triggered the same error when I run pkgdown::build_reference() directly.

Here's my local deploy_to_branch() error and R session information.

> pkgdown::deploy_to_branch()
Running git remote set-branches --add origin gh-pages
Running git fetch origin gh-pages
From github.com:LieberInstitute/spatialLIBD
 * branch            gh-pages   -> FETCH_HEAD
Adding worktree
Running git worktree add --track -B gh-pages \
  /var/folders/_2/hqcmhc1d1bl3lqxgcrkpv8_00000gn/T/RtmpJGV7V5/file1f21769a99d \
  origin/gh-pages
Preparing worktree (resetting branch 'gh-pages'; was at ddbdd69)
branch 'gh-pages' set up to track 'origin/gh-pages'.
HEAD is now at ddbdd69 Built site for spatialLIBD@1.17.6:
── Cleaning files from old site ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Cleaning spatialLIBD pkgdown docs from /var/folders/_2/hqcmhc1d1bl3lqxgcrkpv8_00000gn/T/RtmpJGV7V5/file1f21769a99d
── Initialising site ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Copying <pkgdown>/BS3/assets/bootstrap-toc.css to bootstrap-toc.css
Copying <pkgdown>/BS3/assets/bootstrap-toc.js to bootstrap-toc.js
Copying <pkgdown>/BS3/assets/docsearch.css to docsearch.css
Copying <pkgdown>/BS3/assets/docsearch.js to docsearch.js
Copying <pkgdown>/BS3/assets/link.svg to link.svg
Copying <pkgdown>/BS3/assets/pkgdown.css to pkgdown.css
Copying <pkgdown>/BS3/assets/pkgdown.js to pkgdown.js
Copying pkgdown/extra.css to extra.css
Copying pkgdown/favicon/apple-touch-icon-120x120.png to apple-touch-icon-120x120.png
Copying pkgdown/favicon/apple-touch-icon-152x152.png to apple-touch-icon-152x152.png
Copying pkgdown/favicon/apple-touch-icon-180x180.png to apple-touch-icon-180x180.png
Copying pkgdown/favicon/apple-touch-icon-60x60.png to apple-touch-icon-60x60.png
Copying pkgdown/favicon/apple-touch-icon-76x76.png to apple-touch-icon-76x76.png
Copying pkgdown/favicon/apple-touch-icon.png to apple-touch-icon.png
Copying pkgdown/favicon/favicon-16x16.png to favicon-16x16.png
Copying pkgdown/favicon/favicon-32x32.png to favicon-32x32.png
Copying pkgdown/favicon/favicon.ico to favicon.ico
Copying logo.png
── Building pkgdown site for package spatialLIBD ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Reading from: /Users/leocollado/Dropbox/Code/spatialLIBD
Writing to: /var/folders/_2/hqcmhc1d1bl3lqxgcrkpv8_00000gn/T/RtmpJGV7V5/file1f21769a99d
── Sitrep ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
✖ Bootstrap 3 is deprecated; please switch to Bootstrap 5.Learn more at <https://www.tidyverse.org/blog/2021/12/pkgdown-2-0-0/#bootstrap-5>.URLs not ok.
  In _pkgdown.yml, url is missing.
  See details in `vignette(pkgdown::metadata)`.Favicons ok.Open graph metadata ok.Articles metadata ok.Reference metadata ok.
── Initialising site ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
── Building home ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Writing `authors.html`
Reading .github/CODE_OF_CONDUCT.md
Writing `CODE_OF_CONDUCT.html`
Reading .github/CONTRIBUTING.md
Writing `CONTRIBUTING.html`
Reading .github/SUPPORT.md
Writing `SUPPORT.html`
Reading README.md
Writing `index.html`
Writing `404.html`
── Building function reference ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Writing `reference/index.html`
Copying man/figures/README-access_data-1.png to reference/figures/README-access_data-1.png
Copying man/figures/logo.png to reference/figures/logo.png
Copying man/figures/paper_figure1.jpg to reference/figures/paper_figure1.jpg
Copying man/figures/spatial_registration.png to reference/figures/spatial_registration.png
Loading required package: SpatialExperiment
Loading required package: SingleCellExperiment
Loading required package: SummarizedExperiment
Loading required package: MatrixGenerics
Loading required package: matrixStats

Attaching package:MatrixGenericsThe following objects are masked frompackage:matrixStats:

    colAlls, colAnyNAs, colAnys, colAvgsPerRowSet, colCollapse,
    colCounts, colCummaxs, colCummins, colCumprods, colCumsums,
    colDiffs, colIQRDiffs, colIQRs, colLogSumExps, colMadDiffs,
    colMads, colMaxs, colMeans2, colMedians, colMins, colOrderStats,
    colProds, colQuantiles, colRanges, colRanks, colSdDiffs, colSds,
    colSums2, colTabulates, colVarDiffs, colVars, colWeightedMads,
    colWeightedMeans, colWeightedMedians, colWeightedSds,
    colWeightedVars, rowAlls, rowAnyNAs, rowAnys, rowAvgsPerColSet,
    rowCollapse, rowCounts, rowCummaxs, rowCummins, rowCumprods,
    rowCumsums, rowDiffs, rowIQRDiffs, rowIQRs, rowLogSumExps,
    rowMadDiffs, rowMads, rowMaxs, rowMeans2, rowMedians, rowMins,
    rowOrderStats, rowProds, rowQuantiles, rowRanges, rowRanks,
    rowSdDiffs, rowSds, rowSums2, rowTabulates, rowVarDiffs, rowVars,
    rowWeightedMads, rowWeightedMeans, rowWeightedMedians,
    rowWeightedSds, rowWeightedVars

Loading required package: GenomicRanges
Loading required package: stats4
Loading required package: BiocGenerics

Attaching package:BiocGenericsThe following objects are masked frompackage:stats:

    IQR, mad, sd, var, xtabs

The following objects are masked frompackage:base:

    anyDuplicated, aperm, append, as.data.frame, basename, cbind,
    colnames, dirname, do.call, duplicated, eval, evalq, Filter, Find,
    get, grep, grepl, intersect, is.unsorted, lapply, Map, mapply,
    match, mget, order, paste, pmax, pmax.int, pmin, pmin.int,
    Position, rank, rbind, Reduce, rownames, sapply, setdiff, table,
    tapply, union, unique, unsplit, which.max, which.min

Loading required package: S4Vectors

Attaching package:S4VectorsThe following object is masked frompackage:utils:

    findMatches

The following objects are masked frompackage:base:

    expand.grid, I, unname

Loading required package: IRanges
Loading required package: GenomeInfoDb
Loading required package: Biobase
Welcome to Bioconductor

    Vignettes contain introductory material; view with
    'browseVignettes()'. To cite Bioconductor, see
    'citation("Biobase")', and for packages 'citation("pkgname")'.


Attaching package:BiobaseThe following object is masked frompackage:MatrixGenerics:

    rowMedians

The following objects are masked frompackage:matrixStats:

    anyMissing, rowMedians

Reading man/add10xVisiumAnalysis.Rd
Writing `reference/add10xVisiumAnalysis.html`
Reading man/add_images.Rd
Writing `reference/add_images.html`
Reading man/add_key.Rd
Writing `reference/add_key.html`
Reading man/add_qc_metrics.Rd
Writing `reference/add_qc_metrics.html`
Reading man/annotate_registered_clusters.Rd
Writing `reference/annotate_registered_clusters.html`
Reading man/check_modeling_results.Rd
Writing `reference/check_modeling_results.html`
Reading man/check_sce.Rd
Writing `reference/check_sce.html`
Reading man/check_sce_layer.Rd
Writing `reference/check_sce_layer.html`
Reading man/check_spe.Rd
Writing `reference/check_spe.html`
Reading man/cluster_export.Rd
Writing `reference/cluster_export.html`
Reading man/cluster_import.Rd
Writing `reference/cluster_import.html`
Reading man/enough_ram.Rd
Writing `reference/enough_ram.html`
Reading man/fetch_data.Rd
Writing `reference/fetch_data.html`
Reading man/frame_limits.Rd
Writing `reference/frame_limits.html`
Reading man/gene_set_enrichment.Rd
Writing `reference/gene_set_enrichment.html`
Reading man/gene_set_enrichment_plot.Rd
Writing `reference/gene_set_enrichment_plot.html`
Reading man/geom_spatial.Rd
Writing `reference/geom_spatial.html`
Reading man/get_colors.Rd
Writing `reference/get_colors.html`
Reading man/img_edit.Rd
Writing `reference/img_edit.html`
Reading man/img_update.Rd
Writing `reference/img_update.html`
Reading man/img_update_all.Rd
Writing `reference/img_update_all.html`
Reading man/layer_boxplot.Rd
Writing `reference/layer_boxplot.html`
Reading man/layer_matrix_plot.Rd
Writing `reference/layer_matrix_plot.html`
Reading man/layer_stat_cor.Rd
Writing `reference/layer_stat_cor.html`
Reading man/layer_stat_cor_plot.Rd
Writing `reference/layer_stat_cor_plot.html`
Reading man/libd_layer_colors.Rd
Writing `reference/libd_layer_colors.html`
Reading man/locate_images.Rd
Writing `reference/locate_images.html`
Reading man/multi_gene_pca.Rd
Writing `reference/multi_gene_pca.html`
Reading man/multi_gene_sparsity.Rd
Writing `reference/multi_gene_sparsity.html`
Reading man/multi_gene_z_score.Rd
Writing `reference/multi_gene_z_score.html`
Reading man/prep_stitched_data.Rd
Writing `reference/prep_stitched_data.html`
Reading man/read10xVisiumAnalysis.Rd
Writing `reference/read10xVisiumAnalysis.html`
Reading man/read10xVisiumWrapper.Rd
Writing `reference/read10xVisiumWrapper.html`
Reading man/registration_block_cor.Rd
Writing `reference/registration_block_cor.html`
Reading man/registration_model.Rd
Writing `reference/registration_model.html`
Reading man/registration_pseudobulk.Rd
Writing `reference/registration_pseudobulk.html`
Reading man/registration_stats_anova.Rd
Writing `reference/registration_stats_anova.html`
Reading man/registration_stats_enrichment.Rd
Writing `reference/registration_stats_enrichment.html`
Reading man/registration_stats_pairwise.Rd
Writing `reference/registration_stats_pairwise.html`
Reading man/registration_wrapper.Rd
Writing `reference/registration_wrapper.html`
Reading man/run_app.Rd
Writing `reference/run_app.html`
Reading man/sce_to_spe.Rd
Writing `reference/sce_to_spe.html`
Reading man/sig_genes_extract.Rd
Writing `reference/sig_genes_extract.html`
Reading man/sig_genes_extract_all.Rd
Writing `reference/sig_genes_extract_all.html`
Reading man/sort_clusters.Rd
Writing `reference/sort_clusters.html`
Reading man/spatialLIBD-package.Rd
Writing `reference/spatialLIBD-package.html`
Reading man/tstats_Human_DLPFC_snRNAseq_Nguyen_topLayer.Rd
Writing `reference/tstats_Human_DLPFC_snRNAseq_Nguyen_topLayer.html`
Reading man/vis_clus.Rd
Writing `reference/vis_clus.html`
Reading man/vis_clus_p.Rd
Writing `reference/vis_clus_p.html`
Reading man/vis_gene.Rd
Writing `reference/vis_gene.html`
Reading man/vis_gene_p.Rd
Error in `build_reference()`:
! Failed to parse Rd in vis_gene_p.Rd
Caused by error in `is_call(x) && !is_call(x, "=") && !is_syntactic(x[[1]])`:
! 'length = 3' in coercion to 'logical(1)'
Run `rlang::last_trace()` to see where the error occurred.
Warning messages:
1: packageS4Vectorswas built under R version 4.4.1
2: packageIRangeswas built under R version 4.4.1
Removing worktree
Running git worktree remove \
  /var/folders/_2/hqcmhc1d1bl3lqxgcrkpv8_00000gn/T/RtmpJGV7V5/file1f21769a99d
gh-pages* > rlang::last_trace()
<error/rlang_error>
Error in `build_reference()`:
! Failed to parse Rd in vis_gene_p.Rd
Caused by error in `is_call(x) && !is_call(x, "=") && !is_syntactic(x[[1]])`:
! 'length = 3' in coercion to 'logical(1)'
---
Backtrace:1. └─pkgdown::deploy_to_branch()
  2.   └─pkgdown::build_site_github_pages(pkg, ..., clean = clean)
  3.     └─pkgdown::build_site(...)
  4.       └─pkgdown:::build_site_local(...)
  5.         └─pkgdown::build_reference(...)
  6.           ├─pkgdown:::unwrap_purrr_error(...)
  7.           │ └─base::withCallingHandlers(...)
  8.           └─purrr::map(...)
  9.             └─purrr:::map_("list", .x, .f, ..., .progress = .progress)
 10.               ├─purrr:::with_indexed_errors(...)
 11.               │ └─base::withCallingHandlers(...)
 12.               ├─purrr:::call_with_cleanup(...)
 13.               └─pkgdown (local) .f(.x[[i]], ...)
 14.                 ├─base::withCallingHandlers(...)
 15.                 └─pkgdown:::data_reference_topic(...)
 16.                   ├─pkgdown:::as_data(tags$tag_usage[[1]])
 17.                   └─pkgdown:::as_data.tag_usage(tags$tag_usage[[1]])
 18.                     └─base::vapply(parsed, needs_tweak, logical(1))
 19.                       └─pkgdown (local) FUN(X[[i]], ...)
Run rlang::last_trace(drop = FALSE) to see 4 hidden frames.
devel* > rlang::last_trace(drop = FALSE)
<error/rlang_error>
Error in `build_reference()`:
! Failed to parse Rd in vis_gene_p.Rd
Caused by error in `is_call(x) && !is_call(x, "=") && !is_syntactic(x[[1]])`:
! 'length = 3' in coercion to 'logical(1)'
---
Backtrace:1. ├─pkgdown::deploy_to_branch()
  2. │ └─pkgdown::build_site_github_pages(pkg, ..., clean = clean)
  3. │   └─pkgdown::build_site(...)
  4. │     └─pkgdown:::build_site_local(...)
  5. │       └─pkgdown::build_reference(...)
  6. │         ├─pkgdown:::unwrap_purrr_error(...)
  7. │         │ └─base::withCallingHandlers(...)
  8. │         └─purrr::map(...)
  9. │           └─purrr:::map_("list", .x, .f, ..., .progress = .progress)
 10. │             ├─purrr:::with_indexed_errors(...)
 11. │             │ └─base::withCallingHandlers(...)
 12. │             ├─purrr:::call_with_cleanup(...)
 13. │             └─pkgdown (local) .f(.x[[i]], ...)
 14. │               ├─base::withCallingHandlers(...)
 15. │               └─pkgdown:::data_reference_topic(...)
 16. │                 ├─pkgdown:::as_data(tags$tag_usage[[1]])
 17. │                 └─pkgdown:::as_data.tag_usage(tags$tag_usage[[1]])
 18. │                   └─base::vapply(parsed, needs_tweak, logical(1))
 19. │                     └─pkgdown (local) FUN(X[[i]], ...)
 20. └─base::.handleSimpleError(...)
 21.   └─pkgdown (local) h(simpleError(msg, call))
 22.     └─cli::cli_abort(...)
 23.       └─rlang::abort(...)
devel* >
devel* > options(width = 120)
devel > sessioninfo::session_info()
─ Session info ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
 setting  value
 version  R version 4.4.0 (2024-04-24)
 os       macOS Sonoma 14.5
 system   aarch64, darwin20
 ui       X11
 language (EN)
 collate  en_US.UTF-8
 ctype    en_US.UTF-8
 tz       America/New_York
 date     2024-07-16
 pandoc   3.2 @ /opt/homebrew/bin/ (via rmarkdown)

─ Packages ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
 package              * version    date (UTC) lib source
 abind                  1.4-5      2016-07-21 [1] CRAN (R 4.4.0)
 AnnotationDbi          1.66.0     2024-05-01 [1] Bioconductor 3.19 (R 4.4.0)
 AnnotationHub          3.12.0     2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 attempt                0.3.1      2020-05-03 [1] CRAN (R 4.4.0)
 beachmat               2.20.0     2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 beeswarm               0.4.0      2021-06-01 [1] CRAN (R 4.4.0)
 benchmarkme            1.0.8      2022-06-12 [1] CRAN (R 4.4.0)
 benchmarkmeData        1.0.4      2020-04-23 [1] CRAN (R 4.4.0)
 Biobase              * 2.64.0     2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 BiocFileCache          2.12.0     2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 BiocGenerics         * 0.50.0     2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 BiocIO                 1.14.0     2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 BiocManager            1.30.23    2024-05-04 [1] CRAN (R 4.4.0)
 BiocNeighbors          1.22.0     2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 BiocParallel           1.38.0     2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 BiocSingular           1.20.0     2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 BiocVersion            3.19.1     2024-04-22 [1] Bioconductor 3.19 (R 4.4.0)
 Biostrings             2.72.1     2024-06-02 [1] Bioconductor 3.19 (R 4.4.0)
 bit                    4.0.5      2022-11-15 [1] CRAN (R 4.4.0)
 bit64                  4.0.5      2020-08-30 [1] CRAN (R 4.4.0)
 bitops                 1.0-7      2021-04-24 [1] CRAN (R 4.4.0)
 blob                   1.2.4      2023-03-17 [1] CRAN (R 4.4.0)
 brio                   1.1.5      2024-04-24 [1] CRAN (R 4.4.0)
 bslib                  0.7.0      2024-03-29 [1] CRAN (R 4.4.0)
 cachem                 1.1.0      2024-05-16 [1] CRAN (R 4.4.0)
 callr                  3.7.6      2024-03-25 [1] CRAN (R 4.4.0)
 cli                    3.6.3      2024-06-21 [1] CRAN (R 4.4.0)
 codetools              0.2-20     2024-03-31 [1] CRAN (R 4.4.0)
 colorout             * 1.3-0.2    2024-05-03 [1] Github (jalvesaq/colorout@c6113a2)
 colorspace             2.1-0      2023-01-23 [1] CRAN (R 4.4.0)
 config                 0.3.2      2023-08-30 [1] CRAN (R 4.4.0)
 cowplot                1.1.3      2024-01-22 [1] CRAN (R 4.4.0)
 crayon                 1.5.3      2024-06-20 [1] CRAN (R 4.4.0)
 curl                   5.2.1      2024-03-01 [1] CRAN (R 4.4.0)
 data.table             1.15.4     2024-03-30 [1] CRAN (R 4.4.0)
 DBI                    1.2.3      2024-06-02 [1] CRAN (R 4.4.0)
 dbplyr                 2.5.0      2024-03-19 [1] CRAN (R 4.4.0)
 DelayedArray           0.30.1     2024-05-07 [1] Bioconductor 3.19 (R 4.4.0)
 DelayedMatrixStats     1.26.0     2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 desc                   1.4.3      2023-12-10 [1] CRAN (R 4.4.0)
 devtools             * 2.4.5      2022-10-11 [1] CRAN (R 4.4.0)
 digest                 0.6.36     2024-06-23 [1] CRAN (R 4.4.0)
 doParallel             1.0.17     2022-02-07 [1] CRAN (R 4.4.0)
 dotCall64              1.1-1      2023-11-28 [1] CRAN (R 4.4.0)
 downlit                0.4.4      2024-06-10 [1] CRAN (R 4.4.0)
 dplyr                  1.1.4      2023-11-17 [1] CRAN (R 4.4.0)
 DT                     0.33       2024-04-04 [1] CRAN (R 4.4.0)
 edgeR                  4.2.0      2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 ellipsis               0.3.2      2021-04-29 [1] CRAN (R 4.4.0)
 evaluate               0.24.0     2024-06-10 [1] CRAN (R 4.4.0)
 ExperimentHub          2.12.0     2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 fansi                  1.0.6      2023-12-08 [1] CRAN (R 4.4.0)
 farver                 2.1.2      2024-05-13 [1] CRAN (R 4.4.0)
 fastmap                1.2.0      2024-05-15 [1] CRAN (R 4.4.0)
 fields                 16.2       2024-06-27 [1] CRAN (R 4.4.0)
 filelock               1.0.3      2023-12-11 [1] CRAN (R 4.4.0)
 foreach                1.5.2      2022-02-02 [1] CRAN (R 4.4.0)
 fs                     1.6.4      2024-04-25 [1] CRAN (R 4.4.0)
 generics               0.1.3      2022-07-05 [1] CRAN (R 4.4.0)
 GenomeInfoDb         * 1.40.1     2024-06-16 [1] Bioconductor 3.19 (R 4.4.0)
 GenomeInfoDbData       1.2.12     2024-05-03 [1] Bioconductor
 GenomicAlignments      1.40.0     2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 GenomicRanges        * 1.56.1     2024-06-16 [1] Bioconductor 3.19 (R 4.4.0)
 ggbeeswarm             0.7.2      2023-04-29 [1] CRAN (R 4.4.0)
 ggplot2                3.5.1      2024-04-23 [1] CRAN (R 4.4.0)
 ggrepel                0.9.5      2024-01-10 [1] CRAN (R 4.4.0)
 glue                   1.7.0      2024-01-09 [1] CRAN (R 4.4.0)
 golem                  0.4.1      2023-06-05 [1] CRAN (R 4.4.0)
 gridExtra              2.3        2017-09-09 [1] CRAN (R 4.4.0)
 gtable                 0.3.5      2024-04-22 [1] CRAN (R 4.4.0)
 HDF5Array              1.32.0     2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 htmltools              0.5.8.1    2024-04-04 [1] CRAN (R 4.4.0)
 htmlwidgets            1.6.4      2023-12-06 [1] CRAN (R 4.4.0)
 httpuv                 1.6.15     2024-03-26 [1] CRAN (R 4.4.0)
 httr                   1.4.7      2023-08-15 [1] CRAN (R 4.4.0)
 httr2                  1.0.1      2024-04-01 [1] CRAN (R 4.4.0)
 IRanges              * 2.38.1     2024-07-03 [1] Bioconductor 3.19 (R 4.4.1)
 irlba                  2.3.5.1    2022-10-03 [1] CRAN (R 4.4.0)
 iterators              1.0.14     2022-02-05 [1] CRAN (R 4.4.0)
 jquerylib              0.1.4      2021-04-26 [1] CRAN (R 4.4.0)
 jsonlite               1.8.8      2023-12-04 [1] CRAN (R 4.4.0)
 KEGGREST               1.44.1     2024-06-19 [1] Bioconductor 3.19 (R 4.4.0)
 knitr                  1.48       2024-07-07 [1] CRAN (R 4.4.0)
 labeling               0.4.3      2023-08-29 [1] CRAN (R 4.4.0)
 later                  1.3.2      2023-12-06 [1] CRAN (R 4.4.0)
 lattice                0.22-6     2024-03-20 [1] CRAN (R 4.4.0)
 lazyeval               0.2.2      2019-03-15 [1] CRAN (R 4.4.0)
 lifecycle              1.0.4      2023-11-07 [1] CRAN (R 4.4.0)
 limma                  3.60.3     2024-06-16 [1] Bioconductor 3.19 (R 4.4.0)
 lobstr                 1.1.2      2022-06-22 [1] CRAN (R 4.4.0)
 locfit                 1.5-9.10   2024-06-24 [1] CRAN (R 4.4.0)
 magick                 2.8.3      2024-02-18 [1] CRAN (R 4.4.0)
 magrittr               2.0.3      2022-03-30 [1] CRAN (R 4.4.0)
 maps                   3.4.2      2023-12-15 [1] CRAN (R 4.4.0)
 Matrix                 1.7-0      2024-03-22 [1] CRAN (R 4.4.0)
 MatrixGenerics       * 1.16.0     2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 matrixStats          * 1.3.0      2024-04-11 [1] CRAN (R 4.4.0)
 memoise                2.0.1      2021-11-26 [1] CRAN (R 4.4.0)
 mime                   0.12       2021-09-28 [1] CRAN (R 4.4.0)
 miniUI                 0.1.1.1    2018-05-18 [1] CRAN (R 4.4.0)
 munsell                0.5.1      2024-04-01 [1] CRAN (R 4.4.0)
 paletteer              1.6.0      2024-01-21 [1] CRAN (R 4.4.0)
 pillar                 1.9.0      2023-03-22 [1] CRAN (R 4.4.0)
 pkgbuild               1.4.4      2024-03-17 [1] CRAN (R 4.4.0)
 pkgconfig              2.0.3      2019-09-22 [1] CRAN (R 4.4.0)
 pkgdown                2.1.0      2024-07-06 [1] CRAN (R 4.4.0)
 pkgload                1.4.0      2024-06-28 [1] CRAN (R 4.4.0)
 plotly                 4.10.4     2024-01-13 [1] CRAN (R 4.4.0)
 png                    0.1-8      2022-11-29 [1] CRAN (R 4.4.0)
 Polychrome             1.5.1      2022-05-03 [1] CRAN (R 4.4.0)
 prismatic              1.1.2      2024-04-10 [1] CRAN (R 4.4.0)
 processx               3.8.4      2024-03-16 [1] CRAN (R 4.4.0)
 profvis                0.3.8      2023-05-02 [1] CRAN (R 4.4.0)
 promises               1.3.0      2024-04-05 [1] CRAN (R 4.4.0)
 prompt                 1.0.2.9000 2024-05-03 [1] Github (gaborcsardi/prompt@17bd0e1)
 ps                     1.7.7      2024-07-02 [1] CRAN (R 4.4.0)
 purrr                  1.0.2      2023-08-10 [1] CRAN (R 4.4.0)
 R6                     2.5.1      2021-08-19 [1] CRAN (R 4.4.0)
 ragg                   1.3.2      2024-05-15 [1] CRAN (R 4.4.0)
 rappdirs               0.3.3      2021-01-31 [1] CRAN (R 4.4.0)
 RColorBrewer           1.1-3      2022-04-03 [1] CRAN (R 4.4.0)
 Rcpp                   1.0.12     2024-01-09 [1] CRAN (R 4.4.0)
 RCurl                  1.98-1.16  2024-07-11 [1] CRAN (R 4.4.0)
 rematch2               2.1.2      2020-05-01 [1] CRAN (R 4.4.0)
 remotes                2.5.0      2024-03-17 [1] CRAN (R 4.4.0)
 restfulr               0.0.15     2022-06-16 [1] CRAN (R 4.4.0)
 rhdf5                  2.48.0     2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 rhdf5filters           1.16.0     2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 Rhdf5lib               1.26.0     2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 rjson                  0.2.21     2022-01-09 [1] CRAN (R 4.4.0)
 rlang                  1.1.4      2024-06-04 [1] CRAN (R 4.4.0)
 rmarkdown              2.27       2024-05-17 [1] CRAN (R 4.4.0)
 Rsamtools              2.20.0     2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 RSQLite                2.3.7      2024-05-27 [1] CRAN (R 4.4.0)
 rsthemes               0.4.0      2024-05-03 [1] Github (gadenbuie/rsthemes@34a55a4)
 rstudioapi             0.16.0     2024-03-24 [1] CRAN (R 4.4.0)
 rsvd                   1.0.5      2021-04-16 [1] CRAN (R 4.4.0)
 rtracklayer            1.64.0     2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 S4Arrays               1.4.1      2024-05-30 [1] Bioconductor 3.19 (R 4.4.0)
 S4Vectors            * 0.42.1     2024-07-03 [1] Bioconductor 3.19 (R 4.4.1)
 sass                   0.4.9.9000 2024-05-03 [1] Github (rstudio/sass@9228fcf)
 ScaledMatrix           1.12.0     2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 scales                 1.3.0      2023-11-28 [1] CRAN (R 4.4.0)
 scater                 1.32.0     2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 scatterplot3d          0.3-44     2023-05-05 [1] CRAN (R 4.4.0)
 scuttle                1.14.0     2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 sessioninfo            1.2.2      2021-12-06 [1] CRAN (R 4.4.0)
 shiny                  1.8.1.1    2024-04-02 [1] CRAN (R 4.4.0)
 shinyWidgets           0.8.6      2024-04-24 [1] CRAN (R 4.4.0)
 SingleCellExperiment * 1.26.0     2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 spam                   2.10-0     2023-10-23 [1] CRAN (R 4.4.0)
 SparseArray            1.4.8      2024-05-30 [1] Bioconductor 3.19 (R 4.4.0)
 sparseMatrixStats      1.16.0     2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 SpatialExperiment    * 1.14.0     2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 spatialLIBD          * 1.17.6     2024-07-16 [1] Bioconductor
 statmod                1.5.0      2023-01-06 [1] CRAN (R 4.4.0)
 stringi                1.8.4      2024-05-06 [1] CRAN (R 4.4.0)
 stringr                1.5.1      2023-11-14 [1] CRAN (R 4.4.0)
 SummarizedExperiment * 1.34.0     2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 systemfonts            1.1.0      2024-05-15 [1] CRAN (R 4.4.0)
 testthat             * 3.2.1.1    2024-04-14 [1] CRAN (R 4.4.0)
 textshaping            0.4.0      2024-05-24 [1] CRAN (R 4.4.0)
 tibble                 3.2.1      2023-03-20 [1] CRAN (R 4.4.0)
 tidyr                  1.3.1      2024-01-24 [1] CRAN (R 4.4.0)
 tidyselect             1.2.1      2024-03-11 [1] CRAN (R 4.4.0)
 UCSC.utils             1.0.0      2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 urlchecker             1.0.1      2021-11-30 [1] CRAN (R 4.4.0)
 usethis              * 2.2.3      2024-02-19 [1] CRAN (R 4.4.0)
 utf8                   1.2.4      2023-10-22 [1] CRAN (R 4.4.0)
 vctrs                  0.6.5      2023-12-01 [1] CRAN (R 4.4.0)
 vipor                  0.4.7      2023-12-18 [1] CRAN (R 4.4.0)
 viridis                0.6.5      2024-01-29 [1] CRAN (R 4.4.0)
 viridisLite          * 0.4.2      2023-05-02 [1] CRAN (R 4.4.0)
 whisker                0.4.1      2022-12-05 [1] CRAN (R 4.4.0)
 withr                  3.0.0      2024-01-16 [1] CRAN (R 4.4.0)
 xfun                   0.45       2024-06-16 [1] CRAN (R 4.4.0)
 XML                    3.99-0.17  2024-06-25 [1] CRAN (R 4.4.0)
 xml2                   1.3.6      2023-12-04 [1] CRAN (R 4.4.0)
 xtable                 1.8-4      2019-04-21 [1] CRAN (R 4.4.0)
 XVector                0.44.0     2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)
 yaml                   2.3.9      2024-07-05 [1] CRAN (R 4.4.0)
 zlibbioc               1.50.0     2024-04-30 [1] Bioconductor 3.19 (R 4.4.0)

 [1] /Library/Frameworks/R.framework/Versions/4.4-arm64/Resources/library

────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

This is happening with https://github.com/LieberInstitute/spatialLIBD and the error message points to https://github.com/LieberInstitute/spatialLIBD/blob/devel/man/vis_gene_p.Rd. If I delete https://github.com/LieberInstitute/spatialLIBD/blob/devel/man/vis_gene_p.Rd manually, then pkgdown::deploy_to_branch() does work as shown below.

devel* > pkgdown::deploy_to_branch()
Running git remote set-branches --add origin gh-pages
Running git fetch origin gh-pages
From github.com:LieberInstitute/spatialLIBD
 * branch            gh-pages   -> FETCH_HEAD
Adding worktree
Running git worktree add --track -B gh-pages \
  /var/folders/_2/hqcmhc1d1bl3lqxgcrkpv8_00000gn/T/RtmpyUe1HH/file181865c07ecd8 \
  origin/gh-pages
Preparing worktree (resetting branch 'gh-pages'; was at 33d9044)
branch 'gh-pages' set up to track 'origin/gh-pages'.
HEAD is now at 33d9044 cli-85346-1570
── Cleaning files from old site ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Cleaning spatialLIBD pkgdown docs from /var/folders/_2/hqcmhc1d1bl3lqxgcrkpv8_00000gn/T/RtmpyUe1HH/file181865c07ecd8
── Initialising site ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Copying <pkgdown>/BS3/assets/bootstrap-toc.css to bootstrap-toc.css
Copying <pkgdown>/BS3/assets/bootstrap-toc.js to bootstrap-toc.js
Copying <pkgdown>/BS3/assets/docsearch.css to docsearch.css
Copying <pkgdown>/BS3/assets/docsearch.js to docsearch.js
Copying <pkgdown>/BS3/assets/link.svg to link.svg
Copying <pkgdown>/BS3/assets/pkgdown.css to pkgdown.css
Copying <pkgdown>/BS3/assets/pkgdown.js to pkgdown.js
Copying pkgdown/extra.css to extra.css
Copying pkgdown/favicon/apple-touch-icon-120x120.png to apple-touch-icon-120x120.png
Copying pkgdown/favicon/apple-touch-icon-152x152.png to apple-touch-icon-152x152.png
Copying pkgdown/favicon/apple-touch-icon-180x180.png to apple-touch-icon-180x180.png
Copying pkgdown/favicon/apple-touch-icon-60x60.png to apple-touch-icon-60x60.png
Copying pkgdown/favicon/apple-touch-icon-76x76.png to apple-touch-icon-76x76.png
Copying pkgdown/favicon/apple-touch-icon.png to apple-touch-icon.png
Copying pkgdown/favicon/favicon-16x16.png to favicon-16x16.png
Copying pkgdown/favicon/favicon-32x32.png to favicon-32x32.png
Copying pkgdown/favicon/favicon.ico to favicon.ico
Copying logo.png
── Building pkgdown site for package spatialLIBD ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Reading from: /Users/leocollado/Dropbox/Code/spatialLIBD
Writing to: /var/folders/_2/hqcmhc1d1bl3lqxgcrkpv8_00000gn/T/RtmpyUe1HH/file181865c07ecd8
── Sitrep ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
✖ Bootstrap 3 is deprecated; please switch to Bootstrap 5.Learn more at <https://www.tidyverse.org/blog/2021/12/pkgdown-2-0-0/#bootstrap-5>.URLs not ok.
  In _pkgdown.yml, url is missing.
  See details in `vignette(pkgdown::metadata)`.Favicons ok.Open graph metadata ok.Articles metadata ok.Reference metadata ok.
── Initialising site ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
── Building home ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Writing `authors.html`
Reading .github/CODE_OF_CONDUCT.md
Writing `CODE_OF_CONDUCT.html`
Reading .github/CONTRIBUTING.md
Writing `CONTRIBUTING.html`
Reading .github/SUPPORT.md
Writing `SUPPORT.html`
Reading README.md
Writing `index.html`
Writing `404.html`
── Building function reference ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Writing `reference/index.html`
Copying man/figures/README-access_data-1.png to reference/figures/README-access_data-1.png
Copying man/figures/logo.png to reference/figures/logo.png
Copying man/figures/paper_figure1.jpg to reference/figures/paper_figure1.jpg
Copying man/figures/spatial_registration.png to reference/figures/spatial_registration.png
Loading required package: SpatialExperiment
Loading required package: SingleCellExperiment
Loading required package: SummarizedExperiment
Loading required package: MatrixGenerics
Loading required package: matrixStats

Attaching package:MatrixGenericsThe following objects are masked frompackage:matrixStats:

    colAlls, colAnyNAs, colAnys, colAvgsPerRowSet, colCollapse,
    colCounts, colCummaxs, colCummins, colCumprods, colCumsums,
    colDiffs, colIQRDiffs, colIQRs, colLogSumExps, colMadDiffs,
    colMads, colMaxs, colMeans2, colMedians, colMins, colOrderStats,
    colProds, colQuantiles, colRanges, colRanks, colSdDiffs, colSds,
    colSums2, colTabulates, colVarDiffs, colVars, colWeightedMads,
    colWeightedMeans, colWeightedMedians, colWeightedSds,
    colWeightedVars, rowAlls, rowAnyNAs, rowAnys, rowAvgsPerColSet,
    rowCollapse, rowCounts, rowCummaxs, rowCummins, rowCumprods,
    rowCumsums, rowDiffs, rowIQRDiffs, rowIQRs, rowLogSumExps,
    rowMadDiffs, rowMads, rowMaxs, rowMeans2, rowMedians, rowMins,
    rowOrderStats, rowProds, rowQuantiles, rowRanges, rowRanks,
    rowSdDiffs, rowSds, rowSums2, rowTabulates, rowVarDiffs, rowVars,
    rowWeightedMads, rowWeightedMeans, rowWeightedMedians,
    rowWeightedSds, rowWeightedVars

Loading required package: GenomicRanges
Loading required package: stats4
Loading required package: BiocGenerics

Attaching package:BiocGenericsThe following objects are masked frompackage:stats:

    IQR, mad, sd, var, xtabs

The following objects are masked frompackage:base:

    anyDuplicated, aperm, append, as.data.frame, basename, cbind,
    colnames, dirname, do.call, duplicated, eval, evalq, Filter, Find,
    get, grep, grepl, intersect, is.unsorted, lapply, Map, mapply,
    match, mget, order, paste, pmax, pmax.int, pmin, pmin.int,
    Position, rank, rbind, Reduce, rownames, sapply, setdiff, table,
    tapply, union, unique, unsplit, which.max, which.min

Loading required package: S4Vectors

Attaching package:S4VectorsThe following object is masked frompackage:utils:

    findMatches

The following objects are masked frompackage:base:

    expand.grid, I, unname

Loading required package: IRanges
Loading required package: GenomeInfoDb
Loading required package: Biobase
Welcome to Bioconductor

    Vignettes contain introductory material; view with
    'browseVignettes()'. To cite Bioconductor, see
    'citation("Biobase")', and for packages 'citation("pkgname")'.


Attaching package:BiobaseThe following object is masked frompackage:MatrixGenerics:

    rowMedians

The following objects are masked frompackage:matrixStats:

    anyMissing, rowMedians

Reading man/add10xVisiumAnalysis.Rd
Writing `reference/add10xVisiumAnalysis.html`
Reading man/add_images.Rd
Writing `reference/add_images.html`
Reading man/add_key.Rd
Writing `reference/add_key.html`
Reading man/add_qc_metrics.Rd
Writing `reference/add_qc_metrics.html`
Reading man/annotate_registered_clusters.Rd
Writing `reference/annotate_registered_clusters.html`
Reading man/check_modeling_results.Rd
Writing `reference/check_modeling_results.html`
Reading man/check_sce.Rd
Writing `reference/check_sce.html`
Reading man/check_sce_layer.Rd
Writing `reference/check_sce_layer.html`
Reading man/check_spe.Rd
Writing `reference/check_spe.html`
Reading man/cluster_export.Rd
Writing `reference/cluster_export.html`
Reading man/cluster_import.Rd
Writing `reference/cluster_import.html`
Reading man/enough_ram.Rd
Writing `reference/enough_ram.html`
Reading man/fetch_data.Rd
Writing `reference/fetch_data.html`
Reading man/frame_limits.Rd
Writing `reference/frame_limits.html`
Reading man/gene_set_enrichment.Rd
Writing `reference/gene_set_enrichment.html`
Reading man/gene_set_enrichment_plot.Rd
Writing `reference/gene_set_enrichment_plot.html`
Reading man/geom_spatial.Rd
Writing `reference/geom_spatial.html`
Reading man/get_colors.Rd
Writing `reference/get_colors.html`
Reading man/img_edit.Rd
Writing `reference/img_edit.html`
Reading man/img_update.Rd
Writing `reference/img_update.html`
Reading man/img_update_all.Rd
Writing `reference/img_update_all.html`
Reading man/layer_boxplot.Rd
Writing `reference/layer_boxplot.html`
Reading man/layer_matrix_plot.Rd
Writing `reference/layer_matrix_plot.html`
Reading man/layer_stat_cor.Rd
Writing `reference/layer_stat_cor.html`
Reading man/layer_stat_cor_plot.Rd
Writing `reference/layer_stat_cor_plot.html`
Reading man/libd_layer_colors.Rd
Writing `reference/libd_layer_colors.html`
Reading man/locate_images.Rd
Writing `reference/locate_images.html`
Reading man/multi_gene_pca.Rd
Writing `reference/multi_gene_pca.html`
Reading man/multi_gene_sparsity.Rd
Writing `reference/multi_gene_sparsity.html`
Reading man/multi_gene_z_score.Rd
Writing `reference/multi_gene_z_score.html`
Reading man/prep_stitched_data.Rd
Writing `reference/prep_stitched_data.html`
Reading man/read10xVisiumAnalysis.Rd
Writing `reference/read10xVisiumAnalysis.html`
Reading man/read10xVisiumWrapper.Rd
Writing `reference/read10xVisiumWrapper.html`
Reading man/registration_block_cor.Rd
Writing `reference/registration_block_cor.html`
Reading man/registration_model.Rd
Writing `reference/registration_model.html`
Reading man/registration_pseudobulk.Rd
Writing `reference/registration_pseudobulk.html`
Reading man/registration_stats_anova.Rd
Writing `reference/registration_stats_anova.html`
Reading man/registration_stats_enrichment.Rd
Writing `reference/registration_stats_enrichment.html`
Reading man/registration_stats_pairwise.Rd
Writing `reference/registration_stats_pairwise.html`
Reading man/registration_wrapper.Rd
Writing `reference/registration_wrapper.html`
Reading man/run_app.Rd
Writing `reference/run_app.html`
Reading man/sce_to_spe.Rd
Writing `reference/sce_to_spe.html`
Reading man/sig_genes_extract.Rd
Writing `reference/sig_genes_extract.html`
Reading man/sig_genes_extract_all.Rd
Writing `reference/sig_genes_extract_all.html`
Reading man/sort_clusters.Rd
Writing `reference/sort_clusters.html`
Reading man/spatialLIBD-package.Rd
Writing `reference/spatialLIBD-package.html`
Reading man/tstats_Human_DLPFC_snRNAseq_Nguyen_topLayer.Rd
Writing `reference/tstats_Human_DLPFC_snRNAseq_Nguyen_topLayer.html`
Reading man/vis_clus.Rd
Writing `reference/vis_clus.html`
Reading man/vis_clus_p.Rd
Writing `reference/vis_clus_p.html`
Reading man/vis_gene.Rd
Writing `reference/vis_gene.html`
Reading man/vis_grid_clus.Rd
Writing `reference/vis_grid_clus.html`
Reading man/vis_grid_gene.Rd
Writing `reference/vis_grid_gene.html`
── Building articles ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Writing `articles/index.html`
Reading vignettes/guide_to_spatial_registration.Rmd
Writing `articles/guide_to_spatial_registration.html`Missing alt-text in vignettes/guide_to_spatial_registration.Rmdguide_to_spatial_registration_files/figure-html/layer_cor_plot-1.pngLearn more in `vignette(pkgdown::accessibility)`.
Reading vignettes/multi_gene_plots.Rmd
Writing `articles/multi_gene_plots.html`Missing alt-text in vignettes/multi_gene_plots.Rmdmulti_gene_plots_files/figure-html/single_gene-1.pngmulti_gene_plots_files/figure-html/histology_only-1.pngmulti_gene_plots_files/figure-html/GFAP_boxplot-1.pngmulti_gene_plots_files/figure-html/multi_gene_z-1.pngmulti_gene_plots_files/figure-html/multi_gene_pca-1.pngmulti_gene_plots_files/figure-html/multi_gene_sparsity-1.pngmulti_gene_plots_files/figure-html/multi_gene_z_score_top_enriched-1.pngmulti_gene_plots_files/figure-html/multi_gene_z_score_top_enriched-2.pngmulti_gene_plots_files/figure-html/multi_gene_pca_top_enriched-1.pngmulti_gene_plots_files/figure-html/multi_gene_pca_top_enriched-2.pngmulti_gene_plots_files/figure-html/multi_gene_sparsity_top_enriched-1.pngmulti_gene_plots_files/figure-html/multi_gene_sparsity_top_enriched-2.pngmulti_gene_plots_files/figure-html/colData_example-1.pngmulti_gene_plots_files/figure-html/colData_plus_gene-1.pngmulti_gene_plots_files/figure-html/colData_plus_gene-2.pngLearn more in `vignette(pkgdown::accessibility)`.
Reading vignettes/spatialLIBD.Rmd
Writing `articles/spatialLIBD.html`Missing alt-text in vignettes/spatialLIBD.Rmdhttp://research.libd.org/spatialLIBD/reference/figures/paper_figure1.jpgspatialLIBD_files/figure-html/vis_clus-1.pngspatialLIBD_files/figure-html/vis_clus_no_spatial-1.pngspatialLIBD_files/figure-html/vis_gene-1.pngspatialLIBD_files/figure-html/vis_gene-2.pngspatialLIBD_files/figure-html/vis_gene-3.pngspatialLIBD_files/figure-html/layer_boxplot-1.pngspatialLIBD_files/figure-html/layer_boxplot-2.pngspatialLIBD_files/figure-html/layer_boxplot-3.pngspatialLIBD_files/figure-html/layer_stat_cor_plot-1.pngspatialLIBD_files/figure-html/sfari_enrichment_plot-1.pngLearn more in `vignette(pkgdown::accessibility)`.
Reading vignettes/TenX_data_download.Rmd
Writing `articles/TenX_data_download.html`Missing alt-text in vignettes/TenX_data_download.RmdTenX_data_download_files/figure-html/test_visualizations-1.pngTenX_data_download_files/figure-html/test_visualizations-2.pngLearn more in `vignette(pkgdown::accessibility)`.
── Building news ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Writing `news/index.html`
── Building sitemap ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Writing `sitemap.xml`
── Checking for problems ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
✖ Missing alt-text in README.mdreference/figures/logo.pngreference/figures/paper_figure1.jpgreference/figures/README-access_data-1.pnghttp://lcolladotor.github.io/img/LIBD_logo.jpgLearn more in `vignette(pkgdown::accessibility)`.
── Finished building pkgdown site for package spatialLIBD ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
── Extra files for GitHub pages ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Commiting updated site
Running git add -A .
Running git commit --allow-empty -m 'Built site for spatialLIBD@1.17.6: '
[gh-pages ddbdd69] Built site for spatialLIBD@1.17.6:
 76 files changed, 1529 insertions(+), 1946 deletions(-)
 delete mode 100644 reference/vis_gene_p-1.png
 delete mode 100644 reference/vis_gene_p.htmlDeploying to GitHub Pages
Running git remote -v
origin	git@github.com:LieberInstitute/spatialLIBD.git (fetch)
origin	git@github.com:LieberInstitute/spatialLIBD.git (push)
upstream	git@git.bioconductor.org:packages/spatialLIBD.git (fetch)
upstream	git@git.bioconductor.org:packages/spatialLIBD.git (push)
Running git push --force origin 'HEAD:gh-pages'
To github.com:LieberInstitute/spatialLIBD.git
   33d9044..ddbdd69  HEAD -> gh-pages
Removing worktree
Running git worktree remove \
  /var/folders/_2/hqcmhc1d1bl3lqxgcrkpv8_00000gn/T/RtmpyUe1HH/file181865c07ecd8
Warning messages:
1: packageS4Vectorswas built under R version 4.4.1
2: packageIRangeswas built under R version 4.4.1
devel* >

Initial error

Going back to the error, here's the rlang::last_trace() output again (it's included in the first details section):

> rlang::last_trace(drop = FALSE)
<error/rlang_error>
Error in `build_reference()`:
! Failed to parse Rd in vis_gene_p.Rd
Caused by error in `is_call(x) && !is_call(x, "=") && !is_syntactic(x[[1]])`:
! 'length = 3' in coercion to 'logical(1)'
---
Backtrace:1. ├─pkgdown::deploy_to_branch()
  2. │ └─pkgdown::build_site_github_pages(pkg, ..., clean = clean)
  3. │   └─pkgdown::build_site(...)
  4. │     └─pkgdown:::build_site_local(...)
  5. │       └─pkgdown::build_reference(...)
  6. │         ├─pkgdown:::unwrap_purrr_error(...)
  7. │         │ └─base::withCallingHandlers(...)
  8. │         └─purrr::map(...)
  9. │           └─purrr:::map_("list", .x, .f, ..., .progress = .progress)
 10. │             ├─purrr:::with_indexed_errors(...)
 11. │             │ └─base::withCallingHandlers(...)
 12. │             ├─purrr:::call_with_cleanup(...)
 13. │             └─pkgdown (local) .f(.x[[i]], ...)
 14. │               ├─base::withCallingHandlers(...)
 15. │               └─pkgdown:::data_reference_topic(...)
 16. │                 ├─pkgdown:::as_data(tags$tag_usage[[1]])
 17. │                 └─pkgdown:::as_data.tag_usage(tags$tag_usage[[1]])
 18. │                   └─base::vapply(parsed, needs_tweak, logical(1))
 19. │                     └─pkgdown (local) FUN(X[[i]], ...)
 20. └─base::.handleSimpleError(...)
 21.   └─pkgdown (local) h(simpleError(msg, call))
 22.     └─cli::cli_abort(...)
 23.       └─rlang::abort(...)
 24. 

The rlang::last_trace() output is pointing to

pkgdown/R/usage.R

Lines 14 to 24 in 2841c0f

# Look for single line calls to non-syntactic functions (except for `=`
# since that's probably a single argument on its own line) and then use
# deparse1 to convert to standard style. We want to avoid reparsing
# any other lines to avoid losing whitespace, comments etc. (These
# are not generated by roxygen but can be added by the user.)
lines <- strsplit(text, "\n", fixed = TRUE)[[1]]
parsed <- lapply(lines, function(x) tryCatch(parse(text = x)[[1]], error = function(e) NULL))
needs_tweak <- function(x) {
is_call(x) && !is_call(x, "=") && !is_syntactic(x[[1]])
}
to_tweak <- vapply(parsed, needs_tweak, logical(1))
, which I see are recent (1 month or so) changes https://github.com/r-lib/pkgdown/blame/main/R/usage.R#L14-L24.

Looking at

pkgdown/R/build-reference.R

Lines 280 to 294 in 2841c0f

data <- withCallingHandlers(
data_reference_topic(
topic,
pkg,
examples_env = examples_env,
run_dont_run = run_dont_run
),
error = function(err) {
cli::cli_abort(
"Failed to parse Rd in {.file {topic$file_in}}",
parent = err,
call = quote(build_reference())
)
}
)
and

pkgdown/R/build-reference.R

Lines 161 to 195 in 2841c0f

pkg <- section_init(pkg, "reference", override = override)
check_bool(lazy)
check_bool(examples)
check_bool(run_dont_run)
check_number_whole(seed, allow_null = TRUE)
check_bool(devel)
check_character(topics, allow_null = TRUE)
cli::cli_rule("Building function reference")
build_reference_index(pkg)
copy_figures(pkg)
if (examples) {
examples_env <- examples_env(pkg, seed = seed, devel = devel)
} else {
examples_env <- NULL
}
if (!is.null(topics)) {
topics <- purrr::transpose(pkg$topics[pkg$topics$name %in% topics, ])
lazy <- FALSE
preview <- FALSE
} else {
topics <- purrr::transpose(pkg$topics)
}
unwrap_purrr_error(purrr::map(
topics,
build_reference_topic,
pkg = pkg,
lazy = lazy,
examples_env = examples_env,
run_dont_run = run_dont_run
))
, I ran the following:

pkg <- pkgdown:::section_init(".", "reference", override = list())
examples_env <- pkgdown:::examples_env(pkg, seed = 1014L, devel = TRUE)
topics <- purrr::transpose(pkg$topics)
pkgdown:::data_reference_topic(
      topic = topics$vis_gene_p.Rd,
      pkg = pkg,
      examples_env = examples_env,
      run_dont_run = FALSE
)

That leads to:

>  pkgdown:::data_reference_topic(
+       topic = topics$vis_gene_p.Rd,
+       pkg = pkg,
+       examples_env = examples_env,
+       run_dont_run = FALSE
+     )
Error in is_call(x) && !is_call(x, "=") && !is_syntactic(x[[1]]) : 
  'length = 3' in coercion to 'logical(1)'
devel > traceback()
5: FUN(X[[i]], ...)
4: vapply(parsed, needs_tweak, logical(1))
3: as_data.tag_usage(tags$tag_usage[[1]])
2: as_data(tags$tag_usage[[1]])
1: pkgdown:::data_reference_topic(topic = topics$vis_gene_p.Rd, 
       pkg = pkg, examples_env = examples_env, run_dont_run = FALSE)

Further diving into the code of

pkgdown/R/build-reference.R

Lines 328 to 361 in 2841c0f

data_reference_topic <- function(topic,
pkg,
examples_env = globalenv(),
run_dont_run = FALSE) {
local_context_eval(pkg$figures, pkg$src_path)
withr::local_options(list(downlit.rdname = get_rdname(topic)))
tag_names <- purrr::map_chr(topic$rd, ~ class(.)[[1]])
tags <- split(topic$rd, tag_names)
out <- list()
# Single top-level converted to string
out$name <- flatten_text(tags$tag_name[[1]][[1]])
out$title <- extract_title(tags$tag_title)
out$pagetitle <- paste0(strip_html_tags(out$title), " \u2014 ", out$name)
# File source
out$source <- repo_source(pkg, topic$source)
out$filename <- topic$file_in
# Multiple top-level converted to string
out$author <- purrr::map_chr(tags$tag_author %||% list(), flatten_para)
out$aliases <- purrr::map_chr(tags$tag_alias %||% list(), flatten_text)
out$keywords <- purrr::map_chr(tags$tag_keyword %||% list(), flatten_text)
# Sections that contain arbitrary text and need cross-referencing
out$description <- as_data(tags$tag_description[[1]])
out$opengraph <- list(description = strip_html_tags(out$description$contents))
if (length(tags$tag_usage[[1]])) {
out$usage <- list(
title = tr_("Usage"),
contents = as_data(tags$tag_usage[[1]])
, I ran:

topic <- topics$vis_gene_p.Rd

pkgdown:::local_context_eval(pkg$figures, pkg$src_path)
withr::local_options(list(downlit.rdname = pkgdown:::get_rdname(topic)))

tag_names <- purrr::map_chr(topic$rd, ~ class(.)[[1]])
tags <- split(topic$rd, tag_names)

That leads to:

> tags$tag_usage
{
vis_gene_p(
  spe,
  d,
  sampleid = unique(spe$sample_id)[1],
  spatial,
  title,
  viridis = TRUE,
  image_id = "lowres",
  alpha = NA,
  cont_colors = if (viridis) {
     viridisLite::viridis(21)
 } else {
    
    c("aquamarine4", "springgreen", "goldenrod", "red")
 },
  point_size = 2,
  auto_crop = TRUE,
  na_color = "#CCCCCC40",
  legend_title = ""
)
}devel > tags$tag_usage[[1]]
List of 21
 $ : 'RCODE' chr "\n"
 $ : 'RCODE' chr "vis_gene_p(\n"
 $ : 'RCODE' chr "  spe,\n"
 $ : 'RCODE' chr "  d,\n"
 $ : 'RCODE' chr "  sampleid = unique(spe$sample_id)[1],\n"
 $ : 'RCODE' chr "  spatial,\n"
 $ : 'RCODE' chr "  title,\n"
 $ : 'RCODE' chr "  viridis = TRUE,\n"
 $ : 'RCODE' chr "  image_id = \"lowres\",\n"
 $ : 'RCODE' chr "  alpha = NA,\n"
 $ : 'RCODE' chr "  cont_colors = if (viridis) {\n"
 $ : 'RCODE' chr "     viridisLite::viridis(21)\n"
 $ : 'RCODE' chr " } else {\n"
 $ : 'RCODE' chr "    \n"
 $ : 'RCODE' chr "    c(\"aquamarine4\", \"springgreen\", \"goldenrod\", \"red\")\n"
 $ : 'RCODE' chr " },\n"
 $ : 'RCODE' chr "  point_size = 2,\n"
 $ : 'RCODE' chr "  auto_crop = TRUE,\n"
 $ : 'RCODE' chr "  na_color = \"#CCCCCC40\",\n"
 $ : 'RCODE' chr "  legend_title = \"\"\n"
 $ : 'RCODE' chr ")\n"
 - attr(*, "class")= chr [1:2] "tag_usage" "tag"
devel > pkgdown:::as_data(tags$tag_usage[[1]])
Error in is_call(x) && !is_call(x, "=") && !is_syntactic(x[[1]]) : 
  'length = 3' in coercion to 'logical(1)'
devel > traceback()
4: FUN(X[[i]], ...)
3: vapply(parsed, needs_tweak, logical(1))
2: as_data.tag_usage(tags$tag_usage[[1]])
1: pkgdown:::as_data(tags$tag_usage[[1]])

Small reproducible code

So, as a small piece of reproducible code, here is:

## dput(tags$tag_usage[[1]])

x <- structure(list(structure("\n", class = c("RCODE", "tag")), structure("vis_gene_p(\n", class = c("RCODE", 
"tag")), structure("  spe,\n", class = c("RCODE", "tag")), structure("  d,\n", class = c("RCODE", 
"tag")), structure("  sampleid = unique(spe$sample_id)[1],\n", class = c("RCODE", 
"tag")), structure("  spatial,\n", class = c("RCODE", "tag")), 
    structure("  title,\n", class = c("RCODE", "tag")), structure("  viridis = TRUE,\n", class = c("RCODE", 
    "tag")), structure("  image_id = \"lowres\",\n", class = c("RCODE", 
    "tag")), structure("  alpha = NA,\n", class = c("RCODE", 
    "tag")), structure("  cont_colors = if (viridis) {\n", class = c("RCODE", 
    "tag")), structure("     viridisLite::viridis(21)\n", class = c("RCODE", 
    "tag")), structure(" } else {\n", class = c("RCODE", "tag"
    )), structure("    \n", class = c("RCODE", "tag")), structure("    c(\"aquamarine4\", \"springgreen\", \"goldenrod\", \"red\")\n", class = c("RCODE", 
    "tag")), structure(" },\n", class = c("RCODE", "tag")), structure("  point_size = 2,\n", class = c("RCODE", 
    "tag")), structure("  auto_crop = TRUE,\n", class = c("RCODE", 
    "tag")), structure("  na_color = \"#CCCCCC40\",\n", class = c("RCODE", 
    "tag")), structure("  legend_title = \"\"\n", class = c("RCODE", 
    "tag")), structure(")\n", class = c("RCODE", "tag"))), class = c("tag_usage", 
"tag"))

pkgdown:::as_data(x)
# Error in is_call(x) && !is_call(x, "=") && !is_syntactic(x[[1]]) : 
#  'length = 3' in coercion to 'logical(1)'

Even smaller reproducible code

Re-running parts of

pkgdown/R/usage.R

Lines 10 to 24 in 2841c0f

as_data.tag_usage <- function(x, ...) {
text <- paste(flatten_text(x, ..., escape = FALSE), collapse = "\n")
text <- str_trim(text)
# Look for single line calls to non-syntactic functions (except for `=`
# since that's probably a single argument on its own line) and then use
# deparse1 to convert to standard style. We want to avoid reparsing
# any other lines to avoid losing whitespace, comments etc. (These
# are not generated by roxygen but can be added by the user.)
lines <- strsplit(text, "\n", fixed = TRUE)[[1]]
parsed <- lapply(lines, function(x) tryCatch(parse(text = x)[[1]], error = function(e) NULL))
needs_tweak <- function(x) {
is_call(x) && !is_call(x, "=") && !is_syntactic(x[[1]])
}
to_tweak <- vapply(parsed, needs_tweak, logical(1))
, specifically:

text <- paste(pkgdown:::flatten_text(x, escape = FALSE), collapse = "\n")
text <- stringr::str_trim(text)
lines <- strsplit(text, "\n", fixed = TRUE)[[1]]
parsed <- lapply(lines, function(x) tryCatch(parse(text = x)[[1]], error = function(e) NULL))

needs_tweak <- function(x) {
    rlang::is_call(x) && !rlang::is_call(x, "=") && !pkgdown:::is_syntactic(x[[1]])
}

## Errors out as expected
to_tweak <- vapply(parsed, needs_tweak, logical(1))

I'm able to get to the error again.

> to_tweak <- vapply(parsed, needs_tweak, logical(1))
Error in rlang::is_call(x) && !rlang::is_call(x, "=") && !pkgdown:::is_syntactic(x[[1]]) : 
  'length = 3' in coercion to 'logical(1)'
devel > traceback()
2: FUN(X[[i]], ...)
1: vapply(parsed, needs_tweak, logical(1))

Diving further, I see that the issue is element 11 of parsed.

devel > parsed
[[1]]
NULL

[[2]]
NULL

[[3]]
NULL

[[4]]
NULL

[[5]]
NULL

[[6]]
NULL

[[7]]
NULL

[[8]]
NULL

[[9]]
NULL

[[10]]
NULL

[[11]]
viridisLite::viridis(21)

[[12]]
NULL

[[13]]
NULL

[[14]]
c("aquamarine4", "springgreen", "goldenrod", "red")

[[15]]
NULL

[[16]]
NULL

[[17]]
NULL

[[18]]
NULL

[[19]]
legend_title = ""

[[20]]
NULL

devel > ## Works with the first 10 elements
devel > lapply(parsed[1:10], needs_tweak)
[[1]]
[1] FALSE

[[2]]
[1] FALSE

[[3]]
[1] FALSE

[[4]]
[1] FALSE

[[5]]
[1] FALSE

[[6]]
[1] FALSE

[[7]]
[1] FALSE

[[8]]
[1] FALSE

[[9]]
[1] FALSE

[[10]]
[1] FALSE

devel > ## Doesn't worked with element 11
devel > lapply(parsed[1:11], needs_tweak)
Error in rlang::is_call(x) && !rlang::is_call(x, "=") && !pkgdown:::is_syntactic(x[[1]]) : 
  'length = 3' in coercion to 'logical(1)'
devel > parsed[[11]]
viridisLite::viridis(21)
devel > needs_tweak(parsed[[11]])
Error in rlang::is_call(x) && !rlang::is_call(x, "=") && !pkgdown:::is_syntactic(x[[1]]) : 
  'length = 3' in coercion to 'logical(1)'

This 11th element has the pkg::function(number) structure. It's viridisLite::viridis(21) in particular.

I see that it actually leads to a 3 length logical vector output for pkgdown:::is_syntactic().

devel > rlang::is_call(parsed[[11]])
[1] TRUE
devel > !rlang::is_call(parsed[[11]], "=")
[1] TRUE
devel > parsed[[11]][[1]]
viridisLite::viridis
devel > !pkgdown:::is_syntactic(parsed[[11]][[1]])
[1] TRUE TRUE TRUE

## Note
devel > lines[[11]]
[1] "     viridisLite::viridis(21)"

From the above information, the smallest reproducible error I can make is this one:

xx <- parse(text = "viridisLite::viridis(21)")[[1]]
!pkgdown:::is_syntactic(xx[[1]])
needs_tweak(xx)
> xx <- parse(text = "viridisLite::viridis(21)")[[1]]
devel > !pkgdown:::is_syntactic(xx[[1]])
[1] TRUE TRUE TRUE
devel > needs_tweak(xx)
Error in rlang::is_call(x) && !rlang::is_call(x, "=") && !pkgdown:::is_syntactic(x[[1]]) : 
  'length = 3' in coercion to 'logical(1)'
devel > traceback()
1: needs_tweak(xx)

Solutions?

I know that pkgdown:::is_syntactic() is defined at

is_syntactic <- function(x) x == make.names(x)
. From https://github.com/r-lib/pkgdown/blame/main/R/utils.R, that function was last touched 6 years ago which indicates to me that it has been stable for quite a long time.

So hmm, I have no obvious solutions to propose here. The only one that comes to mind is to change

pkgdown/R/usage.R

Lines 21 to 23 in 2841c0f

needs_tweak <- function(x) {
is_call(x) && !is_call(x, "=") && !is_syntactic(x[[1]])
}
to add an any() to is_syntactic() as shown below:

needs_tweak <- function(x) {
  is_call(x) && !is_call(x, "=") && !any(is_syntactic(x[[1]]))
}

roxygen2 differences

Having said all the above, I don't understand why https://github.com/LieberInstitute/spatialLIBD/blob/59b0af4f0491bd66f9b04ed8e30c2a0d2aa38d28/man/vis_gene.Rd#L17-L18 doesn't trigger the error since that help file has the exact same documented argument cont_colors as https://github.com/LieberInstitute/spatialLIBD/blob/59b0af4f0491bd66f9b04ed8e30c2a0d2aa38d28/man/vis_gene_p.Rd#L16-L21. Maybe it's because roxygen2 writes out that argument in different formats on both Rd files. It's the same argument as vis_gene_p() inherits it from vis_gene() https://github.com/LieberInstitute/spatialLIBD/blob/59b0af4f0491bd66f9b04ed8e30c2a0d2aa38d28/R/vis_gene_p.R#L15. So maybe this is not a pkgdown issue but a roxygen2 one?

Best,
Leo

lcolladotor added a commit to LieberInstitute/spatialLIBD that referenced this issue Jul 16, 2024
@hadley
Copy link
Member

hadley commented Jul 17, 2024

Thanks for the detailed exploration!

Without thinking the problem through at all, but just thinking about the structure of R calls, I suspect it should be something like this:

is_call(x) && !is_call(x, "=") && (is_name(x[[1]]) && !is_syntactic(x[[1]]))

lcolladotor added a commit to LieberInstitute/spatialLIBD that referenced this issue Jul 17, 2024
@lcolladotor
Copy link
Contributor Author

Hi,

No problem, I'm glad that you found it useful =)

Your tentative solution does work for the smallest reproducible case I reported. Note that I think that you meant rlang::is_named() and not is_name() since I couldn't find is_name() elsewhere. Here's my quick test:

needs_tweak <- function(x) {
    rlang::is_call(x) && !rlang::is_call(x, "=") && (rlang::is_named(x[[1]]) && !pkgdown:::is_syntactic(x[[1]]))
}
x <- parse(text = "viridisLite::viridis(21)")[[1]]
needs_tweak(x)
devel > needs_tweak <- function(x) {
+     rlang::is_call(x) && !rlang::is_call(x, "=") && (rlang::is_named(x[[1]]) && !pkgdown:::is_syntactic(x[[1]]))
+ }
devel > x <- parse(text = "viridisLite::viridis(21)")[[1]]
devel > needs_tweak(x)
[1] FALSE

Workaround for spatialLIBD::vis_gene_p()

In case it's relevant, I found a workaround for https://github.com/LieberInstitute/spatialLIBD/blob/devel/man/vis_gene_p.Rd. At LieberInstitute/spatialLIBD@6f168a3 I used the same function definition for the cont_colors argument that I have used at vis_gene(). That is, no curly brackets on the if statements. That is, replace:

cont_colors = if (viridis) {
            viridisLite::viridis(21)
        } else {
            c("aquamarine4", "springgreen", "goldenrod", "red")
        },

with

cont_colors = if (viridis) viridisLite::viridis(21) else c("aquamarine4", "springgreen", "goldenrod", "red"),

Then devtools::document() (aka roxygen2) creates an Rd file that no longer triggers this issue. But well, I assume that from the pkgdown perspective, it'd be best to make a change to needs_tweak() so the edge case ** I reported is supported.

** I think that it's an edge case, though you might have seen it elsewhere too.

Best,
Leo

@hadley
Copy link
Member

hadley commented Jul 17, 2024

Sorry I meant is_symbol() (I got confused with the base is.name())

@lcolladotor
Copy link
Contributor Author

I see, thanks!


needs_tweak <- function(x) {
    rlang::is_call(x) && !rlang::is_call(x, "=") && (rlang::is_symbol(x[[1]]) && !pkgdown:::is_syntactic(x[[1]]))
}
x <- parse(text = "viridisLite::viridis(21)")[[1]]
needs_tweak(x)
devel > needs_tweak <- function(x) {
+     rlang::is_call(x) && !rlang::is_call(x, "=") && (rlang::is_symbol(x[[1]]) && !pkgdown:::is_syntactic(x[[1]]))
+ }
devel > x <- parse(text = "viridisLite::viridis(21)")[[1]]
devel > needs_tweak(x)
[1] FALSE

@hadley
Copy link
Member

hadley commented Jul 17, 2024

The other place you'll see this type of problem is foo()(), which is rare, but valid R code.

Since you've done the exploration and figured out a solution do you want to close the loop with a PR?

lcolladotor added a commit to lcolladotor/pkgdown that referenced this issue Jul 18, 2024
This commit implements the change @hadley proposed at r-lib#2727 (comment) to the internal function `needs_tweak()`. This does resolve the small reproducible example I described, though I ignore if there are other situations where it wouldn't work for.
@lcolladotor
Copy link
Contributor Author

I see, thanks.

I just submitted the PR (#2728). Thanks again Hadley for providing the solution to the issue!

Best,
Leo

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants