Нет видимого определения глобальной функции/нет видимой привязки для глобальной переменной в проекте?

Я работаю с R в VS Code, используя расширение R. Почти всю работу над проектом я выполняю с использованием target , а это означает, что импорт и функции моего пакета обычно находятся в отдельных файлах.

Простым примером будет работа в папке, которая выглядит как

      project
│   packages.R
│   README.md
│   _targets.R
│
├───R
│       functions.R

У меня проблема в том, что я получаю предупреждения от {lintr} для определений глобальных функций для функций (специальных esp), загруженных из packages.R(или из tar_option_set(packages=c(...))). У меня похожая проблема: lintr не распознает имена столбцов, вместо этого считая их отсутствующими переменными. Например, функция в functions.Rможет выглядеть так:

Если бы я разрабатывал пакет, решением (описанным здесь и в других местах) было бы включение функции в пространство имен. Но я не думаю, что каждый быстрый анализ требует пакета. Как еще мне избежать этих предупреждений? Единственный другой вариант исключить эти линтеры в /.lintr?

1 ответ

Вы можете отключить линтер использования объектов в своем проекте. Пример: https://github.com/ropensci/targets/blob/8c42336a228874889c9ee99dd154c567b4eee91a/.lintr#L4 . Подробнее о линтерах: https://github.com/r-lib/lintr#available-linters

Другие вопросы по тегам