NoneCovr ::package_coverage сообщает "Нет такого файла или каталога"

Я пытаюсь увидеть покрытие кода sumbose / iRF, поэтому я сделал git clone, начал сеанс R внутри каталога, и

> library(covr)
> package_coverage()
Error in file(con, "r") : cannot open the connection
In addition: Warning messages:
1: In utils::install.packages(repos = NULL, lib = tmp_lib, pkg$path,  :
  installation of package ‘/private/tmp/iRF’ had non-zero exit status
2: In file(con, "r") :
  cannot open file '/private/var/folders/ny/f06ns0d568bgf6s559z8j_9m0000gn/T/RtmpAr8dLV/R_LIBS168866d1ef32f/iRF/R/iRF': No such file or directory

Тем не менее, оба R CMD INSTALL iRF а также install.packages('iRF', repos = NULL) устанавливает пакет, как и ожидалось.

1 ответ

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

      ... /pkgname/R/pkgname': No such file or directory

куда это имя пакета.

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

Я обнаружил, что по неизвестным причинам эта ошибка исчезала, если я запускал сеанс R и не запускал . Мне не нужно было (и, возможно, не нужно) загружать пакет. нормально работал в этом сеансе без загрузки пакета.

Если бы я звонил после того, как я звонил, а затем звонил снова, в том же сеансе произошел бы сбой.

Поэтому я думаю, что решение простое, хотя и немного нелогичное:

Вызов сеанса, в котором пакет не загружен .

Я мог звонить несколько раз в этой сессии без проблем. Изменения, которые я внес в файлы, были правильно отражены в выводе , без необходимости загрузки пакета.

Я использовал covr 3.5.1, R 4.2.0 в Windows.

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