• New citation("ctv"): Zeileis A, Bivand R, Eddelbuettel D, Hornik K, Vialaneix N (2023). “CRAN Task Views: The Next Generation.” arXiv 2305.17573, arXiv.org E-Print Archive. doi:10.48550/arXiv.2305.17573.

  • For CRAN web pages produce <span class="...">pkgname</pkg> for packages on CRAN, Bioconductor, GitHub, R-Forge, OmegaHat, etc., where the custom classes yield custom colors in the CRAN style.

  • Updated Bioconductor URLs from bioc("<pkgname>") tags to https://www.bioconductor.org/packages/<pkgname>.

  • Improved and extended documentation for CRAN task view maintainers in vignette("ctv-howto", package = "ctv").

  • CRAN information about packages and archivals is loaded from local files (rather than downloaded) if run on CRAN. Also, it is preserved between subsequent runs of read.ctv(..., cran = TRUE) (and hence also ctv2html(..., cran = TRUE) etc.).

  • read.ctv(..., cran = TRUE) now warns if a pkg() is not available from CRAN.

  • Add Facebook OpenGraph and Twitter tags in task view HTML pages.

  • New convenience function ctv() that obtains a single ctv object with information about a certain task view on CRAN with a given name.

  • New list element $citation in ctv objects containing a citation object inheriting from bibentry with information on how to cite a task view.

  • The auxiliary view() function gained a second argument so that specific sections in other task views can be referenced, e.g., view("Econometrics", "Instrumental variables").

  • Fix typo in task view header it should be install.views() and update.views() rather than install.packages() and update.packages().

  • Fix detection of “core” packages if the priority is not declared in the first pkg() call but in subsequent calls.

  • Improve HTML5 output from ctv2html().

  • Enhance handling of archived packages on CRAN when read.ctv(..., cran = TRUE) and ctv2html(..., cran = TRUE).

  • Further improvements in ctv2html(): Generate HTML5 with pandoc now, improve preservation of link breaks (--wrap=preserve).

  • Bug fix in read.ctv() when pkg(..., priority = "core") is used more than once on the same package name (reported by Rocio Joo).

  • Sorting the package list is done ignoring the case now.

  • Various improvements in ctv2html(): Include explicit citation in header table, include instructions for contributions and installation (if cran = TRUE), more compact layout of package list, handle task views without links section correctly.

  • Bug fix in read.ctv(file) when file is actually a full path and not just the name of file in the local working directory.

  • Make all examples of read.ctv() conditional on knitr and rmarkdown being available (or xml2 being available in case of the legacy XML format).

  • Various substantial changes to support the launch of the CRAN Task View Initiative: Development and maintenance of CRAN task views will be overseen by a team of CRAN Task View Editors who review and approve new task views and help maintainers with onbaording. Infrastructure for this is moved from R-Forge to GitHub (with only the maintenance of the ctv package remaining on R-Forge). The file format for task view files changes from the old XML-based format to a new leaner R-Markdown based format.

  • For the R package ctv itself there is now a pkgdown web page at: https://ctv.R-Forge.R-project.org/.

  • The vignette("ctv-howto", package = "ctv") has been completely rewritten, now describing the new R/Markdown-based format. (The vignette itself is now in HTML rather than in PDF format.)

  • For processing the legacy XML-based files the xml2 package is used now (instead of the XML package).

  • Added <doi> tag in the legacy XML format to add hyperlinks to DOIs, e.g., <doi>10.18637/jss.v067.i01</doi> will be turned into https://doi.org/10.18637/jss.v067.i01.

  • The <gcode> tag now explicitly resolves to https://code.google.com/archive/ (including the archive/ part) as Google Code has been archived in 2016.

  • The ctv-server tools now generate a somewhat more verbose index.html page that explains what task views are and how they could be extended.
  • <github> tag can now be used to refer to projects on GitHub using markup like <github>user/project</github>.

  • To support older versions of R (up to R 3.4.3), the server-side tools now explicitly use saveRDS(..., version = 2) to store task view information.

  • <ohat> packages are now at Omegahat.net rather than Omegahat.org.
  • There is a new optional tag <url> that can be used to display an official task view URL (and insert it into the metainformation tags). For CRAN task views the official URL is used by default.
  • Bug fix in check_ctv_packages(): Packages in <packagelist> but not in <info> were not computed correctly.
  • HTML generation improved. Now XHTML 1.0 is produced with both DublinCore and HighWire Press metainformation tags.
  • <br/> tags are preserved as such in the <info> section.
  • New function check_ctv_packages() for maintainers of CRAN task views. This checks whether <info> and <packagelist> are consistent and whether all packages are actually available in the repository.
  • Package depends on R >= 2.13.0 now in order to use only saveRDS()/readRDS() and not .saveRDS()/.readRDS().
  • update.views() gains a filter argument passed to available.packages(), so that the packages can be filtered with respect to operating system type or free and open-source license etc.
  • saveRDS() instead of .saveRDS() is now used in the server-side tools if available.
  • Avoid usage of &#8810; in Cluster.ctv because it is not processed correctly on all platforms

  • Further improvement to available.views() which now uses readRDS() if available.

  • Fixed available.views() for R 2.13.0 as the underlying .readRDS() needed to be changed.
  • Added download.views() function (as suggested by Peter Ruckdeschel).

  • Restructured internals of install.views() and update.views() so that all three functions can use the same code for determining the list of packages that is going to be installed/updated/downloaded.

  • update.views() was updated reflecting that bundles are not supported anymore.
  • Modified code to avoid non-standard evaluation in subset().
  • Simplified printing of warnings (with useFancyQuotes = FALSE).
  • grep(..., extended = FALSE) replaced by the more appropriate grep(..., fixed = TRUE).
  • The R-Forge links created from <rforge> are now forced to be in lower case.
  • Minor changes to improve generation of tidy HTML.
  • In .ctv files a new tag is allowed: <ohat> for links to Omegahat projects.

  • The tags <rforge> and <gcode> replace the previous <forge> and <googlecode>, respectively, in order to be more consistent with the terminology used in the CRAN Web pages.

  • Further improvements of server-side tools in order to provide tidy XHTML code.

  • The default style file included in the server-side tools is now CRAN_web.css (rather than R.css).

  • Added CITATION file.
  • New <googlecode> tag.
  • Temoved \itemize in .Rd files for new R-devel.
  • Enhanced support for R-Forge and Bioconductor links (new <bioc> tag, similar to <forge>).
  • Enhanced UTF-8 support.
  • Enabled UTF-8 support for character fields in CTV files.
  • Updated vignette to better reflect the latest changes.
  • Added new tags <code> and <forge> for CTV files.
  • New function update.views() which only installs the packages from a view that are not installed or not up-to-date.

  • Added infrastructure for view version/date and contact e-mail address of the maintainer.

  • Adapted the server-side tools to the new web-structure of CRAN.