Функция build_site пакета pkgdown R приводит к невозможности загрузки зависимых пакетов

Я использую pkgdown пакет для генерации элегантной и статической страницы руководства для пакета R (называемый RTCGA). Когда я запускаю код для создания статической документации в качестве веб-сайта, я использую следующие команды

> pkgdown::build_site()
Initialising site -------------------------------------------------------------------------------------
Copying '/home/mkosinski/R/x86_64-pc-linux-gnu-library/3.3/pkgdown/assets/jquery.sticky-kit.min.js'
Copying '/home/mkosinski/R/x86_64-pc-linux-gnu-library/3.3/pkgdown/assets/link.svg'
Copying '/home/mkosinski/R/x86_64-pc-linux-gnu-library/3.3/pkgdown/assets/pkgdown.css'
Copying '/home/mkosinski/R/x86_64-pc-linux-gnu-library/3.3/pkgdown/assets/pkgdown.js'
Building home -----------------------------------------------------------------------------------------
Writing '/home/mkosinski/GitHub/RTCGA/docs/index.html'
Building function reference ---------------------------------------------------------------------------
Loading RTCGA
Welcome to the RTCGA (version: 1.5.1).
trying URL 'http://gdac.broadinstitute.org/runs/stddata__2015_11_01/data/ACC/20151101/gdac.broadinstitute.org_ACC.Merge_mirnaseq__illuminahiseq_mirnaseq__bcgsc_ca__Level_3__miR_gene_expression__data.Level_3.2015110100.0.0.tar.gz'
Content type 'unknown' length 309876 bytes (302 KB)
==================================================
downloaded 302 KB

Warning: Topics missing from index: RTCGA-package, theme_RTCGA
Building articles -------------------------------------------------------------------------------------
Building article 'RTCGA_Workflow.html'
Building article 'Web_Applications.html'

Этот код оценивается в корне RTCGA пакет проекта и дает информацию о том, что RTCGA был загружен и документация была создана.

Но я нашел ошибку в документации на большинстве страниц - есть ошибка, сообщающая

Ошибка: пакет 'RTCGA', требуемый для 'RTCGA.rnaseq', не найден

Так что ни один из примеров не может быть запущен. Более того, когда я бегу library(RTCGA.rnaseq) после того как я использовал build_site Я не могу загрузить зависимый RTCGA пакет больше

> library(RTCGA)
> library(RTCGA.rnaseq)
Error: package ‘RTCGA’ required by ‘RTCGA.rnaseq’ could not be found

Когда я бегу library(RTCGA.rnaseq) в новой сессии без вызова pkgdown::build_site зависимый RTCGA пакет загружается нормально без предупреждений.

Я подозреваю, что это вызвано любыми настройками, которые build_site выполняет, но я понятия не имею, как их решить и как создать надлежащую статическую документацию с использованием pkgdown пакет.

Любые комментарии?

1 ответ

Решение

Похоже, я нашел неприятный обходной путь.RTCGA Программный пакет использует 8 пакетов данных в своих примерах. Каждый пакет данных требует загрузки RTCGA. pkgdown::build_site() использования devtools::load_all() который странно загружает только объекты из RTCGA, но не позволяет загрузить этот пакет во время выполнения примеров.

Я удалил RTCGA от Depends пакетов данных путем изменения мета-информации этих пакетов, таких как

packages_to_remove_RTCGA_from_Depends <- 
  c("RTCGA.clinical",
    "RTCGA.mutations",
    "RTCGA.rnaseq",
    "RTCGA.RPPA",
    "RTCGA.mRNA",
    "RTCGA.miRNASeq",
    "RTCGA.methylation",
    "RTCGA.CNV")

sapply(packages_to_remove_RTCGA_from_Depends, function(data_package){
  Meta <- readRDS(file.path(.libPaths()[1], data_package, "Meta", "package.rds"))
  Meta$Depends <- list()
  saveRDS(Meta, file.path(.libPaths()[1], data_package, "Meta", "package.rds"))
})
Другие вопросы по тегам