2017-12-20 288 views
9

Czyniąc kontrole końcowe na złożenie pakietu CRAN, to UWAGA podchodzi:CRAN zauważa, że ​​pliki nie mogą być sprawdzane bez „pandoc” instalowany

* checking top-level files ... NOTE 
Files ‘README.md’ or ‘NEWS.md’ cannot be checked without ‘pandoc’ being installed. 

Jednak pandoc jest zdecydowanie zainstalowany jako używam go regularnie, a ten pakiet często używa go w dokumentacji przy użyciu pkgdown.

> rmarkdown::pandoc_available() 
[1] TRUE 
> rmarkdown::pandoc_version() 
[1] ‘1.19.2.1’ 

chcę uniknąć instalowania pandoc ze źródła, ponieważ najnowsza wersja pandoc supercedes zainstalowanego z innymi pakietami R wersję i causes weird output.

istnieje podobna sprawa z few years back ale rozwiązania są albo :

  • Zainstaluj pandoc ze źródła lub poprzez pakiet installr, a już mam zainstalowany pandoc; i,
  • Umieść dwa pliki w .Rbuildignore, jednak oba powinny być teraz akceptowane z wnioskami CRAN.

Ta notatka pochodzi tylko po sprawdzeniu za pomocą devtools::release() i przy użyciu devtools::check(check_version = TRUE), które w przeciwnym razie przechodzi bez ostrzeżenia lub notatek.

RStudio instalacja Pandoc:

Sys.getenv('RSTUDIO_PANDOC') 
[1] "/Applications/RStudio.app/Contents/MacOS/pandoc" 

które miałem wcześniej exported do mojego ~/.bash_profile:

export PATH="$PATH:/Applications/Rstudio.app/Contents/MacOS/pandoc" 

pomysłów?

> sessionInfo() 
R version 3.4.3 (2017-11-30) 
Platform: x86_64-apple-darwin15.6.0 (64-bit) 
Running under: macOS High Sierra 10.13.2 

Matrix products: default 
BLAS: /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib 
LAPACK: /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libRlapack.dylib 

locale: 
[1] en_CA.UTF-8/en_CA.UTF-8/en_CA.UTF-8/C/en_CA.UTF-8/en_CA.UTF-8 

attached base packages: 
[1] stats  graphics grDevices utils  datasets methods base  

other attached packages: 
[1] cancensus_0.1.6 

loaded via a namespace (and not attached): 
[1] Rcpp_0.12.14  rstudioapi_0.7 knitr_1.17  bindr_0.1  
[5] xml2_1.1.1  magrittr_1.5  roxygen2_6.0.1 devtools_1.13.4 
[9] R6_2.2.2   rlang_0.1.6  httr_1.3.1  stringr_1.2.0 
[13] dplyr_0.7.4  tools_3.4.3  hunspell_2.9  git2r_0.20.0  
[17] withr_2.1.1  htmltools_0.3.6 rversions_1.0.3 commonmark_1.4 
[21] rprojroot_1.2 yaml_2.1.14  digest_0.6.13 assertthat_0.2.0 
[25] tibble_1.3.4  crayon_1.3.4  bindrcpp_0.2  curl_3.1   
[29] evaluate_0.10.1 memoise_1.1.0 glue_1.2.0  rmarkdown_1.8 
[33] stringi_1.1.5 compiler_3.4.3 backports_1.1.0 desc_1.1.1  
[37] jsonlite_1.5  pkgconfig_2.0.1 
+0

Sprawdzanie na moim komputerze mam dwie wersje z zainstalowanym jednym spakowany w Rstudio 'C pandoc: \ Program Files \ RStudio \ bin \ pandoc' (Jestem w systemie Windows). rmarkdown :: pandoc_version() * sprawdza systemową zmienną środowiskową PATH, a także wersję pandoc dostarczaną z RStudio i używa najwyższej dostępnej wersji *. Spróbuj zainstalować pandoc? – Cedric

+0

Wypróbuj 'installr :: install.pandoc()' –

+0

Czy to nie problem ogrodniczy '$ PATH'? –

Odpowiedz

1

Dzieje się tak dlatego devtools::release połączeń devtools::check z check_version = TRUE.

Można również uruchomić devtools::check(check_version = TRUE), aby uruchomić tę samą notatkę.

Myślę, że do tej części potrzebujesz pandoc na twojej PATH.

(rzeczywiście, po dodaniu istniejącego ... \ RStudio \ bin \ pandoc na mojej ścieżce uwaga is gone)

+0

Mogę replikować to, jak to opisałeś, z 'devtools :: check (check_version = true' notatka jest uruchamiana, jednak uważam, że mam pandoc Rstudio w mojej PATH już w ~/.bash_profile' export PATH = "$ PATH: /Applications/Rstudio.app/Contents/MacOS/pandoc "' – dshkol

+0

Zastanawiam się, czy to jest źródło twojego ~/.bash_profile, czy może powinieneś używać ~/.profile lub nawet ~/.bashrc? Ciężko powiedzieć stąd i nie jestem nawet użytkownikiem Maca ... – RolandASc