diff --git a/CITATION.cff b/CITATION.cff index 50833e9f..de97f00f 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -61,7 +61,7 @@ references: title: pkgdown abstract: 'pkgdown: Make Static HTML Documentation for a Package' notes: Imports - url: https://pkgdown.r-lib.org + url: https://pkgdown.r-lib.org/ repository: https://CRAN.R-project.org/package=pkgdown authors: - family-names: Wickham @@ -74,6 +74,11 @@ references: - family-names: Salmon given-names: Maëlle orcid: https://orcid.org/0000-0002-2815-0399 + - family-names: Roy + given-names: Olivier + - family-names: Brüggemann + given-names: Salim + orcid: https://orcid.org/0000-0002-5329-5987 year: '2024' version: '>= 2.0.8' - type: software diff --git a/DESCRIPTION b/DESCRIPTION index 70aaa189..ef462d75 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -30,5 +30,5 @@ Config/testthat/edition: 3 Encoding: UTF-8 Language: es_ES Roxygen: list(markdown = TRUE) -RoxygenNote: 7.3.1 +RoxygenNote: 7.3.2 X-schema.org-isPartOf: https://ropenspain.es/ diff --git a/codemeta.json b/codemeta.json index 20c83da9..cdcf1aa5 100644 --- a/codemeta.json +++ b/codemeta.json @@ -14,7 +14,7 @@ "name": "R", "url": "https://r-project.org" }, - "runtimePlatform": "R version 4.4.0 (2024-04-24 ucrt)", + "runtimePlatform": "R version 4.4.1 (2024-06-14)", "author": [ { "@type": "Person", @@ -146,7 +146,7 @@ "SystemRequirements": null }, "isPartOf": "https://ropenspain.es/", - "fileSize": "221.3KB", + "fileSize": "219.251KB", "citation": [ { "@type": "SoftwareSourceCode", diff --git a/inst/schemaorg.json b/inst/schemaorg.json index 3057d02b..efb77195 100644 --- a/inst/schemaorg.json +++ b/inst/schemaorg.json @@ -22,7 +22,7 @@ "name": "R", "url": "https://r-project.org" }, - "runtimePlatform": "R version 4.4.0 (2024-04-24 ucrt)", + "runtimePlatform": "R version 4.4.1 (2024-06-14)", "version": "0.2.0" }, { diff --git a/man/ros_build.Rd b/man/ros_build.Rd index 96723b48..19040fbe 100644 --- a/man/ros_build.Rd +++ b/man/ros_build.Rd @@ -40,7 +40,6 @@ This enhances reproducibility by ensuring nothing that you have loaded in the current process affects the build process.} \item{\code{install}}{If \code{TRUE}, will install the package in a temporary library so it is available for vignettes.} - \item{\code{document}}{\strong{Deprecated} Use \code{devel} instead.} }} } \description{ diff --git a/vignettes/articles/descargas.Rmd b/vignettes/articles/descargas.Rmd index 8721564f..8e5b4251 100644 --- a/vignettes/articles/descargas.Rmd +++ b/vignettes/articles/descargas.Rmd @@ -52,18 +52,7 @@ dwn <- lapply(mypaks, cranlogs::cran_downloads, from = "2016-01-01") dwn <- dwn %>% bind_rows() %>% - tidyr::drop_na() %>% - filter(count > 0) - -# By month -library(lubridate) - - -dwn_m <- dwn %>% - mutate(m = lubridate::ceiling_date(dwn$date, "month") - 1) %>% - group_by(package, m) %>% - summarise(downloads = sum(count)) - + as_tibble() # First date on CRAN @@ -89,6 +78,23 @@ first_date_on_cran <- function(pkg) { fechas <- lapply(unique(dwn$package), first_date_on_cran) %>% bind_rows() +dwn <- dwn %>% + left_join(fechas %>% select(package, d_cran = date)) %>% + filter(date >= d_cran) %>% + select(-d_cran) %>% + tidyr::replace_na(list(count = 0)) %>% + filter(date < Sys.Date()) + +# By month +library(lubridate) + + +dwn_m <- dwn %>% + mutate(m = lubridate::ceiling_date(dwn$date, "month") - 1) %>% + group_by(package, m) %>% + summarise(downloads = sum(count)) + + # factors by first date on CRAN fact <- fechas %>% arrange(date) %>% @@ -178,7 +184,7 @@ lastweek <- dwn %>% summarise(last_week = sum(count, na.rm = TRUE)) last_day <- dwn %>% - filter(date == max(dwn$date, na.rm = TRUE)) %>% + filter(date == max(dwn$date, na.rm = TRUE) - 1) %>% select(package, last_day = count) avg_daily <- dwn %>% @@ -188,7 +194,6 @@ avg_daily <- dwn %>% avg_daily_all <- dwn %>% summarise(avg = round(mean(count, na.rm = TRUE), 1)) - # Une todo y da nombres end <- fechas %>% diff --git a/vignettes/plot-1.png b/vignettes/plot-1.png index 6d7b769c..4c555e38 100644 Binary files a/vignettes/plot-1.png and b/vignettes/plot-1.png differ diff --git a/vignettes/rostemplate.Rmd b/vignettes/rostemplate.Rmd index 6aed4ba6..5ff91bf7 100644 --- a/vignettes/rostemplate.Rmd +++ b/vignettes/rostemplate.Rmd @@ -1,151 +1,21 @@ ---- -title: "Usando rostemplate" -output: rmarkdown::html_vignette -vignette: > - %\VignetteIndexEntry{Usando rostemplate} - %\VignetteEngine{knitr::rmarkdown} - %\VignetteEncoding{UTF-8} ---- - -Esta librería es una plantilla **pkgdown** adaptada al sitio web de -[rOpenSpain](https://ropenspain.es/). - -Esta plantilla es una plantilla privada para uso exclusivo de los paquetes de -**rOpenSpain**. Por favor, no la uses para otros paquetes. - -## Introducción - -Este paquete proporciona una plantilla de **pkgdown** adaptada a la empleada por -la comunidad [rOpenSpain](https://ropenspain.es/), que a su vez es una -adaptación de la plantilla -[Universal](https://bootstrapious.com/p/universal-business-e-commerce-template) -creada por -[Bootstrapius](https://bootstrapious.com/p/universal-business-e-commerce-template) -con la variación de color **violet**. - -## Configuración previa - -En la raíz del proyecto ha de existir un archivo `_pkgdown.yml` con al menos las -siguientes líneas: - -``` yaml -template: - bootstrap: 5 - package: rostemplate - # No pongas la siguiente línea! - default_assets: false -``` - -Puedes encontrar información sobre cómo configurar otras opciones en -`_pkgdown.yml` [aquí](https://pkgdown.r-lib.org/articles/pkgdown.html). - -Adicionalmente, es necesario añadir al archivo `.Rbuildignore` las siguientes -líneas: - -``` default -^\.github$ -^docs$ -^_pkgdown\.yml$ -``` - -## Uso de la plantilla - -Esta sección detalla diferentes opciones para generar un sitio estático para el -paquete deseado con el formato definido por esta plantilla. El resultado de este -paso es la generación de un sitio estático compuesto de los archivos `html`, -`css`, etc. basados en el paquete de **R** para el que se está generando el -sitio. - -### Con GitHub actions - CI - -GitHub Actions permite automatizar procesos cuando se activa un *trigger*. En -este caso se han preparado dos acciones que actualizan el sitio estático cada -vez que se añade un *commit* al repositorio. - -Los flujos de trabajo consisten en archivos con extensión `.yaml`. La acción -[rostemplate-docs.yaml](https://github.com/ropenspain/rostemplate/blob/main/inst/yaml/rostemplate-docs.yaml) -crea el sitio estático en la carpeta `./docs` mientras que -[rostemplate-gh-pages.yaml](https://github.com/ropenspain/rostemplate/blob/main/inst/yaml/rostemplate-gh-pages.yaml) -crea el sitio estático en el branch `gh-pages`. - -Para configurar esta opción, es necesario disponer en el repositorio de una -carpeta en la ruta `.github/workflows` y copiar la acción deseada en dicha -carpeta. - -#### Alternativa usando las funciones de rostemplate - -Aunque el uso del paquete **rostemplate** en si no es necesario con GitHub -actions, se han desarrollado dos funciones que automatizan esta configuración de -manera automática. Estas funciones simplemente crean el directorio -`.github/workflows` si no existiera previamente y copian los archivos -solicitados en la ruta correspondiente. Adicionalmente, crean los archivos -`.Rbuildignore` y `.github/.gitignore`, que ignoran ciertos archivos cuando se -compila el paquete: - -```{r eval=FALSE} -# Instalación via r-universe - -install.packages("rostemplate", - repos = c("https://ropenspain.r-universe.dev", "https://cloud.r-project.org") -) - -# Deploy to gh-branch - -rostemplate::ros_actions_pkgdown_branch() - - -# Deploy to docs folder -rostemplate::ros_actions_pkgdown_docs() -``` - -Es posible cambiar el evento que desencadena la actualización del sitio: - -``` yaml -# Actualiza en cada commit - por defecto -on: - push: - branches: - - main - - master - -# Actualiza cuando se modifica un archivo específico: _pkgdown.yaml - -on: - push: - paths: - - '_pkgdown.yaml' -``` - -Más información sobre cómo adaptar los *triggers* de la acción -[aquí](https://docs.github.com/es/free-pro-team@latest/actions/reference/events-that-trigger-workflows). - -### RStudio - manual - -El sitio estático se puede generar igualmente desde una sesión local en -**RStudio**. Para ello, es necesario instalar este paquete: - -```{r eval=FALSE} -install.packages("rostemplate", - repos = c("https://ropenspain.r-universe.dev", "https://cloud.r-project.org") -) -``` - -Una vez instalado, se ha de ejecutar este script: - -```{r eval=FALSE} -rostemplate::ros_build() -``` - -La función `rostemplate::ros_build()` no es más que un alias de -`pkgdown::build_site()`, aportando únicamente un control sobre la configuración -del archivo `_pkgdown.yml` - -Una vez generado el sitio, es necesario actualizar el repositorio remoto en -GitHub mediante un *commit*. - -## GitHub Pages - -Una vez generado el sitio estático y subido al repositorio en GitHub, el último -paso es activar el sitio web a través de los *Settings* de nuestro repositorio -(*Setting\>GitHub Pages*), seleccionando el origen deseado (`gh-pages`, -`main/docs`, etc.). +--- +title: "Ejemplo" +output: rmarkdown::html_vignette +vignette: > + %\VignetteIndexEntry{Ejemplo} + %\VignetteEngine{knitr::rmarkdown} + %\VignetteEncoding{UTF-8} +--- + +```{r, include = FALSE} +knitr::opts_chunk$set( + collapse = TRUE, + comment = "#>" +) +``` + +```{r setup} +library(rostemplate) +``` + +Plantilla de ejemplo.