= Package RWsearch (Patrice Kiener) =



RWsearch 4.8.0 - 2020-04-20 - sent to CRAN
==========================================
- v-4.7.8 with a new version number


RWsearch 4.7.8 - 2020-04-20
===========================
- DESCRIPTION -> 'explore' replaces the mis-spelled word 'exlore'
- p_down() in examples: dir <- file.path(tempdir(), ...) ; list.files() to pass CRAN check --run-donttest
- f_pdf(..., dir = tempdir()) is not feasible as going back to the current directory is impossible
- f_pdf() in examples: if (FALSE) used to by-pass CRAN check (and donttest{} removed)
- zcrandb.rda, ztvdb.rda, zCRAN-archive.html refreshed to CRAN at 2020-04-19
- new aabb/zcheck_results.rds -> a small checkdb in .GlobalEnv
- zcrandb.rda, zcheck_results.rds -> UTF-8 characters changed to ASCII
- checkdb.R: example added
- tvdb.R: examples rewritten. The large crandb file is not downloaded anymore
- s_tvdb.R in examples: line tvdb_dfr() added
- s_sos.R: example simplified
- s_hs.R: example removed as it digs to deep in the computer and takes too much time
- s_scrandb_tvb.R: example simplified
- p_text2pdf.R in examples: remove the slow p_text(rmd) example (and copy it in W165*.R)
- p_text2pdf.R, p_table2pdf.R in examples: dir <- file.path(tempdir(), "ptext/ppdf")
- p_html.R in examples: p_html(RWsearch) replaces p_html(pacman) 
- p_graph.R: examples rewritten with (RWsearch, visNetwork) et (actuar, fitdistrplus)
- p_down.R in examples: system.time(p_down(lst, ...)). 32 files in 27 seconds
- p_display.R in examples:  p_display(RWsearch, ..., brew, dir = tempdir())
- p_deps.R: examples rewritten with (RWsearch, visNetwork) et (actuar, fitdistrplus)
- p_check.R in examples: p_checkdeps_lst(igraph,...) and RWsearch replaces pacman
- p_archive.R in examples: brew replaces pacman
- f_args.R in examples: brew complements sos
- e_check.R in examples: christophe.dutang replaces francois.michonneau
- crandb.R: last example rearranged
- archivedb.R: last example rewritten with 2 histograms


RWsearch 4.7.7 - 2020-04-15
===========================
- h_yahoofin() -> add '/' in the address (bug)
- p_vers()
- Shift to R 4.0.0 beta for R CMD build/check/INSTALL and use --run-donttest
- a_intro.R: archivedb_load(system.file("aabb", ...)) -> "aabb" replaces "zarchive" (bug)
- h_Rnews(), h_Rversions() rewritten with separate repos and *.html (and no more Zurich repo)
- p_down.R, p_archive.R: parameter 'before' -> canonical form CRAN.R-project rather than cloud.r-project
- h_R.R in examples: h_crantv(repos = "https://cloud.r-project.org") replaces h_cranbydate() (forgot repos = bug)
- p_check.R in examples: crandb_load(..., zcrandb) replaces crandb_load(..., crandb) (forgot minifile = bug)
- p_down.R in examples: targz_down() replaces targz_downarch() which does not exist (bug)


RWsearch 4.7.6 - 2020-03-23
===========================
- p_inun(), p_inun_crandb() simplified -> Intermediate lst and return() removed 
- p_graphF(), p_graphS() accept list of packages and open html pages as per the list


RWsearch 4.7.5 - 2020-03-20
===========================
- p_check_lst() -> gsub() pour Tinstall -> T_install, Tcheck -> T_check, Ttotal -> T_total
- New file checkdb.R
- checkdb_down(), checkdb_load()
- p_check_lst() now requires checkdb preloaded if number_of(pkgs) > npkgs. Much faster
- p_checkdeps_lst() exclpkgs are now reported in p_check_lst()


RWsearch 4.7.4 - 2020-03-08
===========================
- crandb_down(method = "libcurl"). Before was default
- p_archive() moved to new file p_archive.R
- p_archive_lst()
- l_targz()
- p_downarch() moved from file archivedb.R to file p_down.R
- p_downarch(option = "before")
- Before, only the version cited at the last line was downloaded (not necessary the last version = bug) 
- targz_down() 


RWsearch 4.7.2 - 2020-02-21
===========================
- crandb_down(method = "libcurl"). Before was default
- DESCRIPTION -> rewrite the Description section
- file n_graph.R renamed p_graph.R
- p_network() moved from file p_deps.R to file p_graph.R
- p_graphF()
- p_graphS()
- Corresponding documentation rewritten


RWsearch 4.7.1 - 2020-02-17
===========================
- Suppress the verbose option in p_deps(), p_depsrev(), p_deps_inpkgs(), p_deps_unpkgs(), p_deps_inun()
- new file p_check.R 
- p_check() and p_check_lst() moved from file p_html.R to file p_check.R 
- Messages in p_check() (unknown date, does not exist) added to p_check_lst()
- p_checkdeps()
- p_checkdeps_lst()
- p_deps_count()


RWsearch 4.7.0 - 2020-02-14 - sent to CRAN
==========================================
- v-4.6.9 with a new version number


RWsearch 4.6.9 - 2020-02-14
===========================
- p_network(recursive = TRUE) new argument. 
- recursive = FALSE reduces the size of the network when reverse = TRUE
- h_etz()
- h_cranchecks()
- p_check(substr(subdate, 1, 4), "/") -> add the year directory to archived packages (CRAN novelty) 
- p_check_lst() -> print as a list, not in the browser
- cloud.r-project.org replaces cran.univ-paris1.fr which has been discontinued


RWsearch 4.6.8 - 2020-01-11
===========================
- hexagonal logo stored in man/figures/logo.png and used in
- README.md with logo and video about RWsearch at useR! 2019 in Toulouse
- h_doi()
- h_Rnews()
- h_Rversions()
- New version number to fix the date and the version. vignettes updated


RWsearch 4.6.6 - 2019-11-23
===========================
- h_biocstats()
- h_crancheckwindows()
- tryconurl() -> hidden function
- p_check() displays the check results of regular packages AND packages moved to CRAN archive
- archivedb_rempkgs() -> Documentation updated with a reference to p_check(). Example added
- archivedb_down() and trydownloadurl() updated with tryconurl()
- p_downh() -> grep("ReadMe",..., invert = TRUE) 
- p_texth() -> grep("ReadMe",..., invert = TRUE) 


RWsearch 4.6.5 - 2019-11-14
===========================
- p_texth() rewritten. It now extracts readme, news, vignette from index.html
- p_downh() rewritten. It now extracts readme, news, vignette from index.html
- trydownloadurl() now returns invisible 0 and invisible 1 as per utils::download.file() (before was NULL)
- trydownloadurl() is vectorized
- p_deps_inun(), p_inun() -> text rewritten
- DESCRIPTION -> suggests xfun


RWsearch 4.6.4 - 2019-11-11
===========================
- p_deps_unpkgs(), p_deps_inpkgs(), p_deps_inun() return the dependencies installed 
- or not installed in the computer, available or not available in current CRAN (crandb).
- p_down(binary = FALSE, type = "binary") downloads Mac OSX and Windows binaries 
- New example in cnscinfun()


RWsearch 4.6.3 - 2019-11-05
===========================
- cranmirrors_down()
- h_collins()
- h_googletranslate()
- h_interglot()
- h_promt()
- h_systran()
- h_cpan()
- h_ctan()


RWsearch 4.6.2 - 2019-08-19 - in CRAN archive
=============================================
- datalist rewritten as per KH recommendation (zcrandb: crandb  ztvdb: tvdb)


RWsearch 4.6.1 - 2019-08-19
===========================
- h_cranstatus()
- h_orcid()
- h_yahoofin()
- archivedb_list() explicitely returns a (long) list. Before, was invisible(lst).
- \donttest{p_downarch()} (in example)
- datalist: crandb, tvdb rather than zcrandb, ztvdb (request from kh_@_CRAN)


RWsearch 4.6.0 - 2019-05-29 - in CRAN archive
=============================================
- p_incrandb()
- p_inun_crandb() replaces p_inun_cran(). Names in the output list are adjusted accordingly:
- in_incrandb (in_incrandb), in_notincrandb (in_notincrandb), un_incrandb (un_incrandb), un_notincrandb (n_notincrandb)
- p_texth(), table_pdfh() -> file(open = "w+") replaces "wt". "w+" is the default in the documentation
- close_libcurl() -> nc[num] rather than num (bug 'connection does not exist')
- funreadme(), funnews(), funvignettes() -> move close_libcurl() in p_texth()


RWsearch 4.5.9 - 2019-05-21
===========================
- p_network() -> exclpkgs deals with intermediate packages (nodes somewhere in the middle of the graph) 
- for both direct and reverse dependencies. Before, NA appeared in the table and n_graphF crashed
- Today, ILB organized a conference for Nicole El Karoui 75 years anniversary 
- and Women in Science: https://www.louisbachelier.org/evenement/wise/


RWsearch 4.5.8 - 2019-05-20
===========================
- one single directory (before 3): inst/aabb includes assets, template.brew, zCRAN-archive.html
- e_check() -> names(sapply()) rather than lapply() returns nice urls.
- h_gepuro() -> 67153+ packages listed. See also 
- https://github.com/gepuro/rpkg/blob/master/index.html
- https://github.com/gepuro/addin4githubinstall
- p_deps() -> pkgs not in crandb -> warning() rather than stop()
- p_deps() -> lst[pkgs] to keep the order in case of NULL (when pkg is not in crandb)
- p_network() ->  pkgs[!(pkgs %in% exclpkgs)] everywhere
- use package "goodpractice" -> missing end line in archivedb.R -> add 4 lines


RWsearch 4.5.7 - 2019-05-11
===========================
- DESCRIPTION -> Imports networkD3
- p_network()
- n_graphF()
- n_graphS()
- close_libcurl() 
- close_libcurl() replaces closeAllConnections() in p_down(), p_text2pdf() -> Much better
- if (closecon) -> suppressed
- p_text(pkgs)  -> much better: all Readme, news, vignettes found, but tempfile is open
- p_text() -> editor() et pager() moved from p_texth() to p_text()


RWsearch 4.5.6 - 2019-05-03
===========================
- p_deps(), p_depsrev() -> c(list.files(.libPaths()), crandb[, "Package"])


RWsearch 4.5.5 - 2019-05-02
===========================
- RStudio substitutes getOption("editor") with its own function, at least in Windows
- p_texth() -> edit(name = NULL) replaces file.edit() to avoid this subtitution
- p_text(), p_table2pdf() -> make.names(nom) replaces next line make.names(filename2) 
-   Example: filename 2019-0502-file.txt stays unchanged (before, it became X20190502file.txt)
- p_display(), p_down(), table_pdf(), p_text() -> gsub(".", "_") replaces gsub(".", "")
-   Example: pkg/filename/directory "R.oo" is changed to "R_oo" rather than "Roo"


RWsearch 4.5.4 - 2019-04-30
===========================
- trydownloadurl(), p_downh(in vignettes) -> download code is simplified. TC replaces con
- new files archivedb.R, zCRAN-archive.html and new functions
- archivedb_down(), archivedb_load(), archivedb_npkgs()
- archivedb_pkgs(), archivedb_rempkgs(), archivedb_list()
- p_downarch() + mention in the documentation related to p_down()
- DESCRIPTION -> Imports XML + mention of CRAN archive
- a_intro.R   -> @importFrom XML readHTMLTable


RWsearch 4.5.3 - 2019-04-28
===========================
- p_depsrev() -> p_deps(reverse = TRUE)
- h_arxiv()
- h_arxivpdf()
- h_ssrn()
- h_ssrnauth()
- crandb_comp() -> odfile more recent than oldfile -> warning rather than stop


RWsearch 4.5.2 - 2019-04-17
===========================
- crandb_down(bydate, rev) -> new arguments bydate and rev.
- h_evene()
- h_yacy()
- p_deps() -> a wrapper of tools::package_dependencies()


RWsearch 4.5.1 - 2019-03-30
===========================
- crandb_down() -> save(compress = "xz", compression_level = 6). Gain over gzip is 45 % 
- zcrandb.rda -> accents on names are removed. 7 UTF-8 glyphs are transformed to pure ASCII
- s_tvdb()
- h_ecosia() -> Ecosia rather than DuckDuckGo


RWsearch 4.5 - 2019-03-27 - in CRAN archive
===========================================
- page h_ttp.R split in 3 pages as in the vignette: h_direct.R, h_R.R, h_ttp.R
- typo in h_ttp() example
- h_academie()
- spurious UTF-8 characters are removed
- File dates are set to a commonvalue
- Submitted to CRAN


RWsearch 4.4.3 - 2019-03-23
===========================
- p_text(README = TRUE, NEWS = TRUE, vignettes = TRUE) reset to TRUE (when set to FALSE ?)
- funreadme(), funnews(), funvignettes() -> tryCatch(condition = ) replaces try(silent = )
- funreadme(), funnews(), funvignettes() + tryCatch() -> options("warn" = 0) (before suppression)
- funreadme(), funnews(), funvignettes() -> (method = libcurl)
- p_text() -> capabilities("libcurl")
- p_text(closecon), p_text2md(closecon), p_text2tex(closecon), p_text2pdf(closecon)
- closecon => Close all unused-ghost connections (README, NEWS) but also the used ones (unfortunately)
- DESCRIPTION -> latexpdf replaces latexpdf (>= 0.1.5) since a warning is issued if older version


RWsearch 4.4 - 2019-03-17
=========================
- Back to tvdb_pkgs(gR, Genetics) in tvdb examples
- NEWS RWsearch replaces Cherche
- Submitted to CRAN but fails (spurious UTF-8 characters)


RWsearch 4.3.6 - 2019-03-17
===========================
- .htmltable() -> normalizePath to print the html file address
- p_display(verbose), p_display5(verbose), p_display7(verbose), .htmltable(verbose)
- p_display() -> loop replaces mapply
- tvdb_pkgs(Genetics) replaces tvdb_pkgs(gR, Genetics) in tvdb examples


RWsearch 4.3.5 - 2019-03-17
===========================
- All examples in the documentation include dir = file.path(tempdir(), "subdir")
- p_table2pdf(cleantex), table_pdfh(cleantex)
- table_pdfh() -> gsub(".tex", ".pdf", filename, fixed = TRUE)
- p_text2pdf() -> gsub(".tex", ".pdf", filename, fixed = TRUE)
- crandb_down(dir = tempdir(), repos = "https://cran.univ-paris1.fr") in examples 
  crandb.R and tvdb.R
- s_sos(try(sos::finFn())
- Examples in zcrandb.rda and ztvdb.rda
- dir = tempdir() in p_display() p_display5() and p_display7() examples


RWsearch 4.3.4 - 2019-03-16
===========================
- 4.3.0 CRAN censors request an argument (dir = ...) for all functions that write on disk
- All *.R files renamed
- Commented examples are suppressed
- DESCRIPTION -> Language: en-GB used by package 'spelling'
- 4.3.1 (dir = ".") in crandb_down(), tvdb_down(), p_down(), p_down0()
- 4.3.2 (dir = ".") in p_pdf(), table_pdf(), p_table2pdf()
- p_html -> writepkg2pdf(), openpdffile()
- 4.3.3 (dir = ".") in p_text2pdf(), p_text2md(), p_text2pdf(). New p_text2tex()
- logical replaces boolean
- 4.3.4 p_text2pdf(setwd(dir2)) for pdf generation 


RWsearch 4.2.1 - 2019-03-08
===========================
- 4.2.1 sent to CRAN. Three dices but not accepted. 
- CRAN says too many \dontrun
- 4.2.3 \dontrun and \donttest optimal. --run-donttest is successfull
- 4.2.4 \donttest{} everywhere. --run-donttest crashes. Sent to CRAN
- 4.2.4 CRAN censors request an argument (dir = ...) for all functions that write on disk


RWsearch 4.1.11 - 2019-03-07
============================
- Windows + Debian
- 4.1.8 Debian Many corrections in the examples to cope with the check under Debian
- 4.1.9 Back on Windows => OK
- 4.2 sent to CRAN. NOTE on examples 10-60" => \donttest{} is recommanded
- 4.1.10 Windows \donttest{} rather than \dontrun{} to get meaningful example()
- p_text2pdf() 43" but --run-donttest crashes (vim).
- 4.1.11 Windows \donttest{} rather than \dontrun{} to get meaningful example()
- no example > 5" but --run-donttest crashes (vim).
- 4.1.12 Debian
- 4.1.14 Debian. \dontrun{} everywhere.


RWsearch 4.1.4 - 2019-03-04
===========================
- New computer with Debian. OK in user mode without Texlive (not yet installed)
- Explains well that xdg-open/firefox is not allowed in super-user mode (which is used 
  by CRAN to check packages)
- explains well all previous failures from v4.0 (except p_down())
- \dontrun{} rather than ==don't run in the examples should effectively by-pass the 
  calls to the browser
  

RWsearch 4.1.3 - 2019-03-04
===========================
- s_sos() example desactivated
- CRAN has returned 2 NOTES on Debian and 3 NOTES on Windows.


RWsearch 4.1.2 - 2019-03-04
===========================
- ERROR on Debian in s_sos()
- /usr/bin/xdg-open: 870: /usr/bin/xdg-open: konqueror: not found
- Error in file(file, if (append) "a" else "w") : 
-   all connections are in use
- Calls: <Anonymous> ... print.findFn -> <Anonymous> -> brew.cached -> sink -> file
- Execution halted
- It seems that CRAN Debian computer has no defined browser 
- and the numerous tries to find one crash it. 


RWsearch 4.1.1 - 2019-03-04
===========================
- trydownloadurl() => open = "rb" hard-coded inside the function 
- gsub(".", "", make.names(word), fixed = TRUE) added in functions:
- table_pdf(), p_text(list=)
- p_text(), p_display() => stop ("pkgs is a list with no names.") as in p_down()
- p_display() => names(pkgs) <- gsub(".", "", make.names(names(pkgs)), fixed = TRUE)


RWsearch 4.1 - 2019-03-03 - sent to CRAN
========================================
- ERROR on Debian in table_pdf() 


RWsearch 4.0.7 - 2019-03-03=
==========================
- p_down() entirely rewritten. Uses home-made trydownloadurl()
- trydownloadurl(open = "r", method = "libcurl")
- (open = "") creates real connections for non-existing links and is very bad!
- (open = "r")  for most files
- (open = "rb") for "rb" for .gz, .bz2, .xz, .tgz, .zip, .rda, .rds, .RData
- (method = "default") creates real connections for non-existing links. libcurl is ok
 

RWsearch 4.0.6 - 2019-03-02
===========================
- ERROR on Debian in p_down() 
- p_down() => gsub(".", "", make.names(mot), fixed = TRUE)
- example in intro: s_crandb_list(thermodynamic, "chemical reaction", "gas")
- example in p_down(): s_crandb_list(searchr, probability)


RWsearch 4.0.5 - 2019-03-01
===========================
- ERROR on Debian in p_down()
- p_down() => create directories with no space (and point is replaced by _)
- gsub(".", "_", gsub(" ", "", mot), fixed = TRUE)
- and only if it does not exist already
- if (!dir.exists(path)) dir.create(path)
- f_pdf() => shorter example
- s_crandb_tvdb() => p_display7(lst[c("inTV", "notinTV")]) in example
- protect many http examples to reduce call to the web at CRAN check


RWsearch 4.0 - 2019-03-01 - sent to CRAN
========================================
- ERROR on Debian -> p_down() generates too many connections
- all search engines generate xdg-open errors. Here h_so()
- /usr/bin/xdg-open: 870: /usr/bin/xdg-open: w3m: not found
- and similar lines for: konqueror, chromium, chromium-browser, google-chrome, firefox,
- x-www-browser, www-browser, firefox, links2, iceweasel, elinks, lynx, w3m, seamonkey
- xdg-open: no method available for opening 'https://stackoverflow.com/search?q=R+deep+neural+network'
- /usr/bin/xdg-open: 870: /usr/bin/xdg-open: mozilla: not found
- /usr/bin/xdg-open: 870: /usr/bin/xdg-open: epiphany: not found
- and similar lines for: konqueror, chromium, chromium-browser, google-chrome, firefox,
- x-www-browser, www-browser, firefox, links2, iceweasel, elinks, lynx, w3m, seamonkey

RWsearch 3.8.1 - 2019-03-01
===========================
- h_nabble, h_rbloggers, h_rdoc, h_rdoctv, h_rdrr, h_rseek 
- moved from h_engine to h_ttp to put all R related links together
- DESCRIPTION => Date corrected


RWsearch 3.8 - 2019-03-01
=========================
- Check before release


RWsearch 3.7 - 2019-02-27
=========================
- Vignette 4
- fme(), fbr() => "words" replaces "mots"
- h_framasoft() + h_framasoft0()
- h_lexilogos() replaces h_lexi()


RWsearch 3.6 - 2019-02-27
=========================
- Vignettes 1, 2, 3


RWsearch 3.5 - 2019-02-22
=========================
- Welcome to RWsearch!
- RWsearch is the new name of this package. Meaning is: Search in R and in the Web.
- The former name was 'Cherche' (Search in French), never publicly released
- Previous NEWS related to 'Cherche' are deleted to avoid any conflict with the version numbers
- Some examples are simplified
- h_cranbydate(), h_cranbyname()


