Отзыв о выпуске пакета CRAN: вы пишете на консоль информационные сообщения, которые нелегко подавить. - PullRequest
1 голос
/ 01 августа 2020

Я получил отзыв от CRAN о выпуске пакета.

А что означает подавлено ?

Отзыв:

Вы пишете информационные сообщения на консоль, которые нелегко подавить. Вместо print () / cat () используйте message () / warning () или if (verbose) cat (..) (или, возможно, stop ()), если вам действительно нужно писать текст в консоль. (кроме печати, сводки, интерактивных функций)

1 Ответ

3 голосов
/ 01 августа 2020

Мы не можем видеть ваш код, поскольку вы не предоставили воспроизводимый пример --- так что есть некоторые предположения с моей стороны --- но это, вероятно, означает, что у вас есть один из

print()
cat()

в вашем код, как и сказано в тексте. И вместо cat("Hello to my package\n") вы также можете сказать packageStartupMessage("Hello to my package\n"), для которого соответствующая функция suppressPackageStartupMessages() может использоваться для подавления.

Например:

> packageStartupMessage("Welcome to my package")  
Welcome to my package      
> suppressPackageStartupMessages(packageStartupMessage("Welcome ..."))    
>   

Вторая функция подавляется , первый - нет. Вам нужно найти, что выводится на консоль в вашем пакете (или в любой библиотеке, которую он использует), и изменить это.

Точно так же message() можно подавить, а warning() можно контролировать с помощью уровней предупреждений.

Список r-package-devel - отличное место для этих вопросов, и в архивах списков тоже есть примеры этого.

...