Roxygen: экспортно-импортная функция - PullRequest
0 голосов
/ 07 июня 2019

У меня пакет R, который становился слишком большим, поэтому я выделил его в новый пакет.

Я хочу предоставить период устаревания для пользователей, которые могли полагаться на эти функции, поэтому я сделал это:

##' Blah blah function
##'
##' Deprecated - use `newpack::blah` instead.
##' @export
blah <- newpack::blah

Один недостаток состоит в том, что R CMD CHECK предупреждения, вызванные newpack::blah, теперь являются предупреждениями в этом пакете:

Undocumented arguments in documentation object 'blah'
    ‘x’ ‘...’

Какой способ лучше?

1 Ответ

1 голос
/ 07 июня 2019

Из-за глубокой семантики копирования R, выполнение blah <- newpack::blah на самом деле глубоко копирует функцию newpack::blah в текущий пакет, а не просто ссылается на нее по имени.

Вместо копирования из одного пространства имен в другое, импортируйте blah и повторно экспортируйте его:

##' Blah blah function
##'
##' Deprecated - use `newpack::blah` instead.
##' @importFrom newpack blah
##' @export blah
##' @name blah
NULL
...