Если я использую devtools::use_vignette("my-vignette")
в моей упаковке, работает devtools::build_vignette()
работает нормально.devtools build_vignette не может найти функции
Однако, как только я добавляю вызов ко всему из своего пакета, он перестает работать с ошибкой could not find function "myfunc"
. Если я добавлю звонок library(mypackage)
, я получу ошибку there is no package called 'mypackage'
.
(я должен отметить, что мои чеки пакета, строит & устанавливает совершенно чисто [без каких-либо виньеток], и работает devtools::load_all()
также отлично работает для интерактивных сессий.)
Я знаю, что если я построю & установить мой пакет, Затем я смогу создать виньетки. Это кажется действительно неэффективным и опасным способом развития; по сути, заставляя меня перестраивать и переустанавливать весь пакет при каждом фиксации, чтобы проверить, что виньетка не сломается.
Есть ли другой способ получить виньетку для распознавания пакета в процессе?
FWIW: У меня были подобные проблемы и я понял, что не экспортирую свои функции (используя @export в .R-файле, а затем с помощью roxygen, генерирующего NAMESPACE с командами экспорта). Файл NAMESPACE экспортирует функцию, которая не может быть найдена при создании виньетки? – swihart